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 39 : #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_global {
21 : ulong activated_at;
22 : uchar has_activated_at;
23 : };
24 : typedef struct fd_feature_global fd_feature_global_t;
25 : #define FD_FEATURE_GLOBAL_FOOTPRINT sizeof(fd_feature_global_t)
26 : #define FD_FEATURE_GLOBAL_ALIGN (8UL)
27 :
28 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/fee_calculator.rs#L9 */
29 : /* Encoded Size: Fixed (8 bytes) */
30 : struct __attribute__((aligned(8UL))) fd_fee_calculator {
31 : ulong lamports_per_signature;
32 : };
33 : typedef struct fd_fee_calculator fd_fee_calculator_t;
34 0 : #define FD_FEE_CALCULATOR_FOOTPRINT sizeof(fd_fee_calculator_t)
35 0 : #define FD_FEE_CALCULATOR_ALIGN (8UL)
36 :
37 : struct __attribute__((aligned(8UL))) fd_fee_calculator_global {
38 : ulong lamports_per_signature;
39 : };
40 : typedef struct fd_fee_calculator_global fd_fee_calculator_global_t;
41 : #define FD_FEE_CALCULATOR_GLOBAL_FOOTPRINT sizeof(fd_fee_calculator_global_t)
42 : #define FD_FEE_CALCULATOR_GLOBAL_ALIGN (8UL)
43 :
44 : /* Encoded Size: Fixed (24 bytes) */
45 : struct __attribute__((aligned(8UL))) fd_hash_age {
46 : fd_fee_calculator_t fee_calculator;
47 : ulong hash_index;
48 : ulong timestamp;
49 : };
50 : typedef struct fd_hash_age fd_hash_age_t;
51 0 : #define FD_HASH_AGE_FOOTPRINT sizeof(fd_hash_age_t)
52 0 : #define FD_HASH_AGE_ALIGN (8UL)
53 :
54 : struct __attribute__((aligned(8UL))) fd_hash_age_global {
55 : fd_fee_calculator_t fee_calculator;
56 : ulong hash_index;
57 : ulong timestamp;
58 : };
59 : typedef struct fd_hash_age_global fd_hash_age_global_t;
60 : #define FD_HASH_AGE_GLOBAL_FOOTPRINT sizeof(fd_hash_age_global_t)
61 : #define FD_HASH_AGE_GLOBAL_ALIGN (8UL)
62 :
63 : /* Encoded Size: Fixed (56 bytes) */
64 : struct __attribute__((aligned(8UL))) fd_hash_hash_age_pair {
65 : fd_hash_t key;
66 : fd_hash_age_t val;
67 : };
68 : typedef struct fd_hash_hash_age_pair fd_hash_hash_age_pair_t;
69 0 : #define FD_HASH_HASH_AGE_PAIR_FOOTPRINT sizeof(fd_hash_hash_age_pair_t)
70 0 : #define FD_HASH_HASH_AGE_PAIR_ALIGN (8UL)
71 :
72 : struct __attribute__((aligned(8UL))) fd_hash_hash_age_pair_global {
73 : fd_hash_t key;
74 : fd_hash_age_t val;
75 : };
76 : typedef struct fd_hash_hash_age_pair_global fd_hash_hash_age_pair_global_t;
77 : #define FD_HASH_HASH_AGE_PAIR_GLOBAL_FOOTPRINT sizeof(fd_hash_hash_age_pair_global_t)
78 : #define FD_HASH_HASH_AGE_PAIR_GLOBAL_ALIGN (8UL)
79 :
80 : /* Encoded Size: Dynamic */
81 : struct __attribute__((aligned(8UL))) fd_block_hash_vec {
82 : ulong last_hash_index;
83 : fd_hash_t * last_hash;
84 : ulong ages_len;
85 : fd_hash_hash_age_pair_t * ages;
86 : ulong max_age;
87 : };
88 : typedef struct fd_block_hash_vec fd_block_hash_vec_t;
89 0 : #define FD_BLOCK_HASH_VEC_FOOTPRINT sizeof(fd_block_hash_vec_t)
90 0 : #define FD_BLOCK_HASH_VEC_ALIGN (8UL)
91 :
92 : struct __attribute__((aligned(8UL))) fd_block_hash_vec_global {
93 : ulong last_hash_index;
94 : ulong last_hash_gaddr;
95 : ulong ages_len;
96 : ulong ages_gaddr;
97 : ulong max_age;
98 : };
99 : typedef struct fd_block_hash_vec_global fd_block_hash_vec_global_t;
100 : #define FD_BLOCK_HASH_VEC_GLOBAL_FOOTPRINT sizeof(fd_block_hash_vec_global_t)
101 : #define FD_BLOCK_HASH_VEC_GLOBAL_ALIGN (8UL)
102 :
103 : typedef struct fd_hash_hash_age_pair_t_mapnode fd_hash_hash_age_pair_t_mapnode_t;
104 : #define REDBLK_T fd_hash_hash_age_pair_t_mapnode_t
105 : #define REDBLK_NAME fd_hash_hash_age_pair_t_map
106 : #define REDBLK_IMPL_STYLE 1
107 : #include "../../util/tmpl/fd_redblack.c"
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 9 : fd_hash_hash_age_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
117 9 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
118 9 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_hash_hash_age_pair_t_map_align() );
119 9 : void * map_mem = *alloc_mem;
120 9 : *alloc_mem = (uchar *)*alloc_mem + fd_hash_hash_age_pair_t_map_footprint( len );
121 9 : return fd_hash_hash_age_pair_t_map_join( fd_hash_hash_age_pair_t_map_new( map_mem, len ) );
122 9 : }
123 : /* Encoded Size: Dynamic */
124 : struct __attribute__((aligned(8UL))) fd_block_hash_queue {
125 : ulong last_hash_index;
126 : fd_hash_t * last_hash;
127 : fd_hash_hash_age_pair_t_mapnode_t * ages_pool;
128 : fd_hash_hash_age_pair_t_mapnode_t * ages_root;
129 : ulong max_age;
130 : };
131 : typedef struct fd_block_hash_queue fd_block_hash_queue_t;
132 0 : #define FD_BLOCK_HASH_QUEUE_FOOTPRINT sizeof(fd_block_hash_queue_t)
133 0 : #define FD_BLOCK_HASH_QUEUE_ALIGN (8UL)
134 :
135 : struct __attribute__((aligned(8UL))) fd_block_hash_queue_global {
136 : ulong last_hash_index;
137 : ulong last_hash_gaddr;
138 : ulong ages_pool_gaddr;
139 : ulong ages_root_gaddr;
140 : ulong max_age;
141 : };
142 : typedef struct fd_block_hash_queue_global fd_block_hash_queue_global_t;
143 : #define FD_BLOCK_HASH_QUEUE_GLOBAL_FOOTPRINT sizeof(fd_block_hash_queue_global_t)
144 : #define FD_BLOCK_HASH_QUEUE_GLOBAL_ALIGN (8UL)
145 :
146 : /* Encoded Size: Fixed (33 bytes) */
147 : struct __attribute__((aligned(8UL))) fd_fee_rate_governor {
148 : ulong target_lamports_per_signature;
149 : ulong target_signatures_per_slot;
150 : ulong min_lamports_per_signature;
151 : ulong max_lamports_per_signature;
152 : uchar burn_percent;
153 : };
154 : typedef struct fd_fee_rate_governor fd_fee_rate_governor_t;
155 0 : #define FD_FEE_RATE_GOVERNOR_FOOTPRINT sizeof(fd_fee_rate_governor_t)
156 0 : #define FD_FEE_RATE_GOVERNOR_ALIGN (8UL)
157 :
158 : struct __attribute__((aligned(8UL))) fd_fee_rate_governor_global {
159 : ulong target_lamports_per_signature;
160 : ulong target_signatures_per_slot;
161 : ulong min_lamports_per_signature;
162 : ulong max_lamports_per_signature;
163 : uchar burn_percent;
164 : };
165 : typedef struct fd_fee_rate_governor_global fd_fee_rate_governor_global_t;
166 : #define FD_FEE_RATE_GOVERNOR_GLOBAL_FOOTPRINT sizeof(fd_fee_rate_governor_global_t)
167 : #define FD_FEE_RATE_GOVERNOR_GLOBAL_ALIGN (8UL)
168 :
169 : /* Encoded Size: Fixed (16 bytes) */
170 : struct __attribute__((aligned(8UL))) fd_slot_pair {
171 : ulong slot;
172 : ulong val;
173 : };
174 : typedef struct fd_slot_pair fd_slot_pair_t;
175 69 : #define FD_SLOT_PAIR_FOOTPRINT sizeof(fd_slot_pair_t)
176 15 : #define FD_SLOT_PAIR_ALIGN (8UL)
177 :
178 : struct __attribute__((aligned(8UL))) fd_slot_pair_global {
179 : ulong slot;
180 : ulong val;
181 : };
182 : typedef struct fd_slot_pair_global fd_slot_pair_global_t;
183 : #define FD_SLOT_PAIR_GLOBAL_FOOTPRINT sizeof(fd_slot_pair_global_t)
184 : #define FD_SLOT_PAIR_GLOBAL_ALIGN (8UL)
185 :
186 : /* Encoded Size: Dynamic */
187 : struct __attribute__((aligned(8UL))) fd_hard_forks {
188 : ulong hard_forks_len;
189 : fd_slot_pair_t * hard_forks;
190 : };
191 : typedef struct fd_hard_forks fd_hard_forks_t;
192 0 : #define FD_HARD_FORKS_FOOTPRINT sizeof(fd_hard_forks_t)
193 0 : #define FD_HARD_FORKS_ALIGN (8UL)
194 :
195 : struct __attribute__((aligned(8UL))) fd_hard_forks_global {
196 : ulong hard_forks_len;
197 : ulong hard_forks_gaddr;
198 : };
199 : typedef struct fd_hard_forks_global fd_hard_forks_global_t;
200 : #define FD_HARD_FORKS_GLOBAL_FOOTPRINT sizeof(fd_hard_forks_global_t)
201 : #define FD_HARD_FORKS_GLOBAL_ALIGN (8UL)
202 :
203 : /* Encoded Size: Fixed (48 bytes) */
204 : struct __attribute__((aligned(8UL))) fd_inflation {
205 : double initial;
206 : double terminal;
207 : double taper;
208 : double foundation;
209 : double foundation_term;
210 : double unused;
211 : };
212 : typedef struct fd_inflation fd_inflation_t;
213 0 : #define FD_INFLATION_FOOTPRINT sizeof(fd_inflation_t)
214 0 : #define FD_INFLATION_ALIGN (8UL)
215 :
216 : struct __attribute__((aligned(8UL))) fd_inflation_global {
217 : double initial;
218 : double terminal;
219 : double taper;
220 : double foundation;
221 : double foundation_term;
222 : double unused;
223 : };
224 : typedef struct fd_inflation_global fd_inflation_global_t;
225 : #define FD_INFLATION_GLOBAL_FOOTPRINT sizeof(fd_inflation_global_t)
226 : #define FD_INFLATION_GLOBAL_ALIGN (8UL)
227 :
228 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/rent.rs#L11 */
229 : /* Encoded Size: Fixed (17 bytes) */
230 : struct __attribute__((aligned(8UL))) fd_rent {
231 : ulong lamports_per_uint8_year;
232 : double exemption_threshold;
233 : uchar burn_percent;
234 : };
235 : typedef struct fd_rent fd_rent_t;
236 0 : #define FD_RENT_FOOTPRINT sizeof(fd_rent_t)
237 0 : #define FD_RENT_ALIGN (8UL)
238 :
239 : struct __attribute__((aligned(8UL))) fd_rent_global {
240 : ulong lamports_per_uint8_year;
241 : double exemption_threshold;
242 : uchar burn_percent;
243 : };
244 : typedef struct fd_rent_global fd_rent_global_t;
245 : #define FD_RENT_GLOBAL_FOOTPRINT sizeof(fd_rent_global_t)
246 : #define FD_RENT_GLOBAL_ALIGN (8UL)
247 :
248 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/epoch_schedule.rs#L26 */
249 : /* Encoded Size: Fixed (33 bytes) */
250 : struct __attribute__((aligned(1UL))) fd_epoch_schedule {
251 : ulong slots_per_epoch;
252 : ulong leader_schedule_slot_offset;
253 : uchar warmup;
254 : ulong first_normal_epoch;
255 : ulong first_normal_slot;
256 : };
257 : typedef struct fd_epoch_schedule fd_epoch_schedule_t;
258 0 : #define FD_EPOCH_SCHEDULE_FOOTPRINT sizeof(fd_epoch_schedule_t)
259 0 : #define FD_EPOCH_SCHEDULE_ALIGN (1UL)
260 :
261 : struct __attribute__((aligned(1UL))) fd_epoch_schedule_global {
262 : ulong slots_per_epoch;
263 : ulong leader_schedule_slot_offset;
264 : uchar warmup;
265 : ulong first_normal_epoch;
266 : ulong first_normal_slot;
267 : };
268 : typedef struct fd_epoch_schedule_global fd_epoch_schedule_global_t;
269 : #define FD_EPOCH_SCHEDULE_GLOBAL_FOOTPRINT sizeof(fd_epoch_schedule_global_t)
270 : #define FD_EPOCH_SCHEDULE_GLOBAL_ALIGN (1UL)
271 :
272 : /* Encoded Size: Fixed (66 bytes) */
273 : struct __attribute__((aligned(8UL))) fd_rent_collector {
274 : ulong epoch;
275 : fd_epoch_schedule_t epoch_schedule;
276 : double slots_per_year;
277 : fd_rent_t rent;
278 : };
279 : typedef struct fd_rent_collector fd_rent_collector_t;
280 0 : #define FD_RENT_COLLECTOR_FOOTPRINT sizeof(fd_rent_collector_t)
281 0 : #define FD_RENT_COLLECTOR_ALIGN (8UL)
282 :
283 : struct __attribute__((aligned(8UL))) fd_rent_collector_global {
284 : ulong epoch;
285 : fd_epoch_schedule_t epoch_schedule;
286 : double slots_per_year;
287 : fd_rent_t rent;
288 : };
289 : typedef struct fd_rent_collector_global fd_rent_collector_global_t;
290 : #define FD_RENT_COLLECTOR_GLOBAL_FOOTPRINT sizeof(fd_rent_collector_global_t)
291 : #define FD_RENT_COLLECTOR_GLOBAL_ALIGN (8UL)
292 :
293 : /* Encoded Size: Fixed (32 bytes) */
294 : struct __attribute__((aligned(8UL))) fd_stake_history_entry {
295 : ulong epoch;
296 : ulong effective;
297 : ulong activating;
298 : ulong deactivating;
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_global {
305 : ulong epoch;
306 : ulong effective;
307 : ulong activating;
308 : ulong deactivating;
309 : };
310 : typedef struct fd_stake_history_entry_global fd_stake_history_entry_global_t;
311 : #define FD_STAKE_HISTORY_ENTRY_GLOBAL_FOOTPRINT sizeof(fd_stake_history_entry_global_t)
312 : #define FD_STAKE_HISTORY_ENTRY_GLOBAL_ALIGN (8UL)
313 :
314 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake_history.rs#L12-L75 */
315 : /* Encoded Size: Dynamic */
316 : struct __attribute__((aligned(8UL))) fd_stake_history {
317 : ulong fd_stake_history_len;
318 : ulong fd_stake_history_size;
319 : ulong fd_stake_history_offset;
320 : fd_stake_history_entry_t fd_stake_history[512];
321 : };
322 : typedef struct fd_stake_history fd_stake_history_t;
323 0 : #define FD_STAKE_HISTORY_FOOTPRINT sizeof(fd_stake_history_t)
324 0 : #define FD_STAKE_HISTORY_ALIGN (8UL)
325 :
326 : struct __attribute__((aligned(8UL))) fd_stake_history_global {
327 : ulong fd_stake_history_len;
328 : ulong fd_stake_history_size;
329 : ulong fd_stake_history_offset;
330 : fd_stake_history_entry_global_t fd_stake_history[512];
331 : };
332 : typedef struct fd_stake_history_global fd_stake_history_global_t;
333 : #define FD_STAKE_HISTORY_GLOBAL_FOOTPRINT sizeof(fd_stake_history_global_t)
334 : #define FD_STAKE_HISTORY_GLOBAL_ALIGN (8UL)
335 :
336 : /* https://github.com/anza-xyz/agave/blob/6ac4fe32e28d8ceb4085072b61fa0c6cb09baac1/sdk/src/account.rs#L37 */
337 : /* Encoded Size: Dynamic */
338 : struct __attribute__((aligned(8UL))) fd_solana_account {
339 : ulong lamports;
340 : ulong data_len;
341 : uchar* data;
342 : fd_pubkey_t owner;
343 : uchar executable;
344 : ulong rent_epoch;
345 : };
346 : typedef struct fd_solana_account fd_solana_account_t;
347 0 : #define FD_SOLANA_ACCOUNT_FOOTPRINT sizeof(fd_solana_account_t)
348 0 : #define FD_SOLANA_ACCOUNT_ALIGN (8UL)
349 :
350 : struct __attribute__((aligned(8UL))) fd_solana_account_global {
351 : ulong lamports;
352 : ulong data_len;
353 : ulong data_gaddr;
354 : fd_pubkey_t owner;
355 : uchar executable;
356 : ulong rent_epoch;
357 : };
358 : typedef struct fd_solana_account_global fd_solana_account_global_t;
359 : #define FD_SOLANA_ACCOUNT_GLOBAL_FOOTPRINT sizeof(fd_solana_account_global_t)
360 : #define FD_SOLANA_ACCOUNT_GLOBAL_ALIGN (8UL)
361 :
362 : /* Encoded Size: Fixed (48 bytes) */
363 : struct __attribute__((packed)) fd_solana_account_stored_meta {
364 : ulong write_version_obsolete;
365 : ulong data_len;
366 : uchar pubkey[32];
367 : };
368 : typedef struct fd_solana_account_stored_meta fd_solana_account_stored_meta_t;
369 : #define FD_SOLANA_ACCOUNT_STORED_META_FOOTPRINT sizeof(fd_solana_account_stored_meta_t)
370 : #define FD_SOLANA_ACCOUNT_STORED_META_ALIGN (8UL)
371 :
372 : struct __attribute__((packed)) fd_solana_account_stored_meta_global {
373 : ulong write_version_obsolete;
374 : ulong data_len;
375 : uchar pubkey[32];
376 : };
377 : typedef struct fd_solana_account_stored_meta_global fd_solana_account_stored_meta_global_t;
378 : #define FD_SOLANA_ACCOUNT_STORED_META_GLOBAL_FOOTPRINT sizeof(fd_solana_account_stored_meta_global_t)
379 : #define FD_SOLANA_ACCOUNT_STORED_META_GLOBAL_ALIGN (8UL)
380 :
381 : /* Encoded Size: Fixed (52 bytes) */
382 : struct __attribute__((packed)) fd_solana_account_meta {
383 : ulong lamports;
384 : ulong rent_epoch;
385 : uchar owner[32];
386 : uchar executable;
387 : uchar padding[3];
388 : };
389 : typedef struct fd_solana_account_meta fd_solana_account_meta_t;
390 : #define FD_SOLANA_ACCOUNT_META_FOOTPRINT sizeof(fd_solana_account_meta_t)
391 : #define FD_SOLANA_ACCOUNT_META_ALIGN (8UL)
392 :
393 : struct __attribute__((packed)) fd_solana_account_meta_global {
394 : ulong lamports;
395 : ulong rent_epoch;
396 : uchar owner[32];
397 : uchar executable;
398 : uchar padding[3];
399 : };
400 : typedef struct fd_solana_account_meta_global fd_solana_account_meta_global_t;
401 : #define FD_SOLANA_ACCOUNT_META_GLOBAL_FOOTPRINT sizeof(fd_solana_account_meta_global_t)
402 : #define FD_SOLANA_ACCOUNT_META_GLOBAL_ALIGN (8UL)
403 :
404 : /* Encoded Size: Fixed (136 bytes) */
405 : struct __attribute__((packed)) fd_solana_account_hdr {
406 : fd_solana_account_stored_meta_t meta;
407 : fd_solana_account_meta_t info;
408 : uchar padding[4];
409 : fd_hash_t hash;
410 : };
411 : typedef struct fd_solana_account_hdr fd_solana_account_hdr_t;
412 : #define FD_SOLANA_ACCOUNT_HDR_FOOTPRINT sizeof(fd_solana_account_hdr_t)
413 : #define FD_SOLANA_ACCOUNT_HDR_ALIGN (8UL)
414 :
415 : struct __attribute__((packed)) fd_solana_account_hdr_global {
416 : fd_solana_account_stored_meta_t meta;
417 : fd_solana_account_meta_t info;
418 : uchar padding[4];
419 : fd_hash_t hash;
420 : };
421 : typedef struct fd_solana_account_hdr_global fd_solana_account_hdr_global_t;
422 : #define FD_SOLANA_ACCOUNT_HDR_GLOBAL_FOOTPRINT sizeof(fd_solana_account_hdr_global_t)
423 : #define FD_SOLANA_ACCOUNT_HDR_GLOBAL_ALIGN (8UL)
424 :
425 : /* Encoded Size: Fixed (104 bytes) */
426 : struct __attribute__((packed)) fd_account_meta {
427 : ushort magic;
428 : ushort hlen;
429 : ulong dlen;
430 : uchar hash[32];
431 : ulong slot;
432 : fd_solana_account_meta_t info;
433 : };
434 : typedef struct fd_account_meta fd_account_meta_t;
435 0 : #define FD_ACCOUNT_META_FOOTPRINT sizeof(fd_account_meta_t)
436 : #define FD_ACCOUNT_META_ALIGN (8UL)
437 :
438 : struct __attribute__((packed)) fd_account_meta_global {
439 : ushort magic;
440 : ushort hlen;
441 : ulong dlen;
442 : uchar hash[32];
443 : ulong slot;
444 : fd_solana_account_meta_t info;
445 : };
446 : typedef struct fd_account_meta_global fd_account_meta_global_t;
447 : #define FD_ACCOUNT_META_GLOBAL_FOOTPRINT sizeof(fd_account_meta_global_t)
448 : #define FD_ACCOUNT_META_GLOBAL_ALIGN (8UL)
449 :
450 : /* Encoded Size: Dynamic */
451 : struct __attribute__((aligned(8UL))) fd_vote_accounts_pair {
452 : fd_pubkey_t key;
453 : ulong stake;
454 : fd_solana_account_t value;
455 : };
456 : typedef struct fd_vote_accounts_pair fd_vote_accounts_pair_t;
457 0 : #define FD_VOTE_ACCOUNTS_PAIR_FOOTPRINT sizeof(fd_vote_accounts_pair_t)
458 0 : #define FD_VOTE_ACCOUNTS_PAIR_ALIGN (8UL)
459 :
460 : struct __attribute__((aligned(8UL))) fd_vote_accounts_pair_global {
461 : fd_pubkey_t key;
462 : ulong stake;
463 : fd_solana_account_global_t value;
464 : };
465 : typedef struct fd_vote_accounts_pair_global fd_vote_accounts_pair_global_t;
466 : #define FD_VOTE_ACCOUNTS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_vote_accounts_pair_global_t)
467 : #define FD_VOTE_ACCOUNTS_PAIR_GLOBAL_ALIGN (8UL)
468 :
469 : typedef struct fd_vote_accounts_pair_t_mapnode fd_vote_accounts_pair_t_mapnode_t;
470 : #define REDBLK_T fd_vote_accounts_pair_t_mapnode_t
471 : #define REDBLK_NAME fd_vote_accounts_pair_t_map
472 : #define REDBLK_IMPL_STYLE 1
473 : #include "../../util/tmpl/fd_redblack.c"
474 : struct fd_vote_accounts_pair_t_mapnode {
475 : fd_vote_accounts_pair_t elem;
476 : ulong redblack_parent;
477 : ulong redblack_left;
478 : ulong redblack_right;
479 : int redblack_color;
480 : };
481 : static inline fd_vote_accounts_pair_t_mapnode_t *
482 15 : fd_vote_accounts_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
483 15 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
484 15 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_vote_accounts_pair_t_map_align() );
485 15 : void * map_mem = *alloc_mem;
486 15 : *alloc_mem = (uchar *)*alloc_mem + fd_vote_accounts_pair_t_map_footprint( len );
487 15 : return fd_vote_accounts_pair_t_map_join( fd_vote_accounts_pair_t_map_new( map_mem, len ) );
488 15 : }
489 : /* Encoded Size: Dynamic */
490 : struct __attribute__((aligned(8UL))) fd_vote_accounts {
491 : fd_vote_accounts_pair_t_mapnode_t * vote_accounts_pool;
492 : fd_vote_accounts_pair_t_mapnode_t * vote_accounts_root;
493 : };
494 : typedef struct fd_vote_accounts fd_vote_accounts_t;
495 0 : #define FD_VOTE_ACCOUNTS_FOOTPRINT sizeof(fd_vote_accounts_t)
496 0 : #define FD_VOTE_ACCOUNTS_ALIGN (8UL)
497 :
498 : struct __attribute__((aligned(8UL))) fd_vote_accounts_global {
499 : ulong vote_accounts_pool_gaddr;
500 : ulong vote_accounts_root_gaddr;
501 : };
502 : typedef struct fd_vote_accounts_global fd_vote_accounts_global_t;
503 : #define FD_VOTE_ACCOUNTS_GLOBAL_FOOTPRINT sizeof(fd_vote_accounts_global_t)
504 : #define FD_VOTE_ACCOUNTS_GLOBAL_ALIGN (8UL)
505 :
506 : /* Encoded Size: Fixed (33 bytes) */
507 : struct __attribute__((aligned(8UL))) fd_account_keys_pair {
508 : fd_pubkey_t key;
509 : uchar exists;
510 : };
511 : typedef struct fd_account_keys_pair fd_account_keys_pair_t;
512 0 : #define FD_ACCOUNT_KEYS_PAIR_FOOTPRINT sizeof(fd_account_keys_pair_t)
513 0 : #define FD_ACCOUNT_KEYS_PAIR_ALIGN (8UL)
514 :
515 : struct __attribute__((aligned(8UL))) fd_account_keys_pair_global {
516 : fd_pubkey_t key;
517 : uchar exists;
518 : };
519 : typedef struct fd_account_keys_pair_global fd_account_keys_pair_global_t;
520 : #define FD_ACCOUNT_KEYS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_account_keys_pair_global_t)
521 : #define FD_ACCOUNT_KEYS_PAIR_GLOBAL_ALIGN (8UL)
522 :
523 : typedef struct fd_account_keys_pair_t_mapnode fd_account_keys_pair_t_mapnode_t;
524 : #define REDBLK_T fd_account_keys_pair_t_mapnode_t
525 : #define REDBLK_NAME fd_account_keys_pair_t_map
526 : #define REDBLK_IMPL_STYLE 1
527 : #include "../../util/tmpl/fd_redblack.c"
528 : struct fd_account_keys_pair_t_mapnode {
529 : fd_account_keys_pair_t elem;
530 : ulong redblack_parent;
531 : ulong redblack_left;
532 : ulong redblack_right;
533 : int redblack_color;
534 : };
535 : static inline fd_account_keys_pair_t_mapnode_t *
536 18 : fd_account_keys_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
537 18 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
538 18 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_account_keys_pair_t_map_align() );
539 18 : void * map_mem = *alloc_mem;
540 18 : *alloc_mem = (uchar *)*alloc_mem + fd_account_keys_pair_t_map_footprint( len );
541 18 : return fd_account_keys_pair_t_map_join( fd_account_keys_pair_t_map_new( map_mem, len ) );
542 18 : }
543 : /* Encoded Size: Dynamic */
544 : struct __attribute__((aligned(8UL))) fd_account_keys {
545 : fd_account_keys_pair_t_mapnode_t * account_keys_pool;
546 : fd_account_keys_pair_t_mapnode_t * account_keys_root;
547 : };
548 : typedef struct fd_account_keys fd_account_keys_t;
549 0 : #define FD_ACCOUNT_KEYS_FOOTPRINT sizeof(fd_account_keys_t)
550 0 : #define FD_ACCOUNT_KEYS_ALIGN (8UL)
551 :
552 : struct __attribute__((aligned(8UL))) fd_account_keys_global {
553 : ulong account_keys_pool_gaddr;
554 : ulong account_keys_root_gaddr;
555 : };
556 : typedef struct fd_account_keys_global fd_account_keys_global_t;
557 : #define FD_ACCOUNT_KEYS_GLOBAL_FOOTPRINT sizeof(fd_account_keys_global_t)
558 : #define FD_ACCOUNT_KEYS_GLOBAL_ALIGN (8UL)
559 :
560 : /* fd_stake_weight_t assigns an Ed25519 public key (node identity) a stake weight number measured in lamports */
561 : /* Encoded Size: Fixed (40 bytes) */
562 : struct __attribute__((aligned(8UL))) fd_stake_weight {
563 : fd_pubkey_t key;
564 : ulong stake;
565 : };
566 : typedef struct fd_stake_weight fd_stake_weight_t;
567 0 : #define FD_STAKE_WEIGHT_FOOTPRINT sizeof(fd_stake_weight_t)
568 0 : #define FD_STAKE_WEIGHT_ALIGN (8UL)
569 :
570 : struct __attribute__((aligned(8UL))) fd_stake_weight_global {
571 : fd_pubkey_t key;
572 : ulong stake;
573 : };
574 : typedef struct fd_stake_weight_global fd_stake_weight_global_t;
575 : #define FD_STAKE_WEIGHT_GLOBAL_FOOTPRINT sizeof(fd_stake_weight_global_t)
576 : #define FD_STAKE_WEIGHT_GLOBAL_ALIGN (8UL)
577 :
578 : typedef struct fd_stake_weight_t_mapnode fd_stake_weight_t_mapnode_t;
579 : #define REDBLK_T fd_stake_weight_t_mapnode_t
580 : #define REDBLK_NAME fd_stake_weight_t_map
581 : #define REDBLK_IMPL_STYLE 1
582 : #include "../../util/tmpl/fd_redblack.c"
583 : struct fd_stake_weight_t_mapnode {
584 : fd_stake_weight_t elem;
585 : ulong redblack_parent;
586 : ulong redblack_left;
587 : ulong redblack_right;
588 : int redblack_color;
589 : };
590 : static inline fd_stake_weight_t_mapnode_t *
591 0 : fd_stake_weight_t_map_join_new( void * * alloc_mem, ulong len ) {
592 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
593 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_stake_weight_t_map_align() );
594 0 : void * map_mem = *alloc_mem;
595 0 : *alloc_mem = (uchar *)*alloc_mem + fd_stake_weight_t_map_footprint( len );
596 0 : return fd_stake_weight_t_map_join( fd_stake_weight_t_map_new( map_mem, len ) );
597 0 : }
598 : /* Encoded Size: Dynamic */
599 : struct __attribute__((aligned(8UL))) fd_stake_weights {
600 : fd_stake_weight_t_mapnode_t * stake_weights_pool;
601 : fd_stake_weight_t_mapnode_t * stake_weights_root;
602 : };
603 : typedef struct fd_stake_weights fd_stake_weights_t;
604 0 : #define FD_STAKE_WEIGHTS_FOOTPRINT sizeof(fd_stake_weights_t)
605 0 : #define FD_STAKE_WEIGHTS_ALIGN (8UL)
606 :
607 : struct __attribute__((aligned(8UL))) fd_stake_weights_global {
608 : ulong stake_weights_pool_gaddr;
609 : ulong stake_weights_root_gaddr;
610 : };
611 : typedef struct fd_stake_weights_global fd_stake_weights_global_t;
612 : #define FD_STAKE_WEIGHTS_GLOBAL_FOOTPRINT sizeof(fd_stake_weights_global_t)
613 : #define FD_STAKE_WEIGHTS_GLOBAL_ALIGN (8UL)
614 :
615 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L303 */
616 : /* Encoded Size: Fixed (64 bytes) */
617 : struct __attribute__((aligned(8UL))) fd_delegation {
618 : fd_pubkey_t voter_pubkey;
619 : ulong stake;
620 : ulong activation_epoch;
621 : ulong deactivation_epoch;
622 : double warmup_cooldown_rate;
623 : };
624 : typedef struct fd_delegation fd_delegation_t;
625 0 : #define FD_DELEGATION_FOOTPRINT sizeof(fd_delegation_t)
626 0 : #define FD_DELEGATION_ALIGN (8UL)
627 :
628 : struct __attribute__((aligned(8UL))) fd_delegation_global {
629 : fd_pubkey_t voter_pubkey;
630 : ulong stake;
631 : ulong activation_epoch;
632 : ulong deactivation_epoch;
633 : double warmup_cooldown_rate;
634 : };
635 : typedef struct fd_delegation_global fd_delegation_global_t;
636 : #define FD_DELEGATION_GLOBAL_FOOTPRINT sizeof(fd_delegation_global_t)
637 : #define FD_DELEGATION_GLOBAL_ALIGN (8UL)
638 :
639 : /* Encoded Size: Fixed (96 bytes) */
640 : struct __attribute__((aligned(8UL))) fd_delegation_pair {
641 : fd_pubkey_t account;
642 : fd_delegation_t delegation;
643 : };
644 : typedef struct fd_delegation_pair fd_delegation_pair_t;
645 0 : #define FD_DELEGATION_PAIR_FOOTPRINT sizeof(fd_delegation_pair_t)
646 0 : #define FD_DELEGATION_PAIR_ALIGN (8UL)
647 :
648 : struct __attribute__((aligned(8UL))) fd_delegation_pair_global {
649 : fd_pubkey_t account;
650 : fd_delegation_t delegation;
651 : };
652 : typedef struct fd_delegation_pair_global fd_delegation_pair_global_t;
653 : #define FD_DELEGATION_PAIR_GLOBAL_FOOTPRINT sizeof(fd_delegation_pair_global_t)
654 : #define FD_DELEGATION_PAIR_GLOBAL_ALIGN (8UL)
655 :
656 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L539 */
657 : /* Encoded Size: Fixed (72 bytes) */
658 : struct __attribute__((aligned(8UL))) fd_stake {
659 : fd_delegation_t delegation;
660 : ulong credits_observed;
661 : };
662 : typedef struct fd_stake fd_stake_t;
663 0 : #define FD_STAKE_FOOTPRINT sizeof(fd_stake_t)
664 0 : #define FD_STAKE_ALIGN (8UL)
665 :
666 : struct __attribute__((aligned(8UL))) fd_stake_global {
667 : fd_delegation_t delegation;
668 : ulong credits_observed;
669 : };
670 : typedef struct fd_stake_global fd_stake_global_t;
671 : #define FD_STAKE_GLOBAL_FOOTPRINT sizeof(fd_stake_global_t)
672 : #define FD_STAKE_GLOBAL_ALIGN (8UL)
673 :
674 : /* Encoded Size: Fixed (104 bytes) */
675 : struct __attribute__((aligned(8UL))) fd_stake_pair {
676 : fd_pubkey_t account;
677 : fd_stake_t stake;
678 : };
679 : typedef struct fd_stake_pair fd_stake_pair_t;
680 0 : #define FD_STAKE_PAIR_FOOTPRINT sizeof(fd_stake_pair_t)
681 0 : #define FD_STAKE_PAIR_ALIGN (8UL)
682 :
683 : struct __attribute__((aligned(8UL))) fd_stake_pair_global {
684 : fd_pubkey_t account;
685 : fd_stake_t stake;
686 : };
687 : typedef struct fd_stake_pair_global fd_stake_pair_global_t;
688 : #define FD_STAKE_PAIR_GLOBAL_FOOTPRINT sizeof(fd_stake_pair_global_t)
689 : #define FD_STAKE_PAIR_GLOBAL_ALIGN (8UL)
690 :
691 : typedef struct fd_delegation_pair_t_mapnode fd_delegation_pair_t_mapnode_t;
692 : #define REDBLK_T fd_delegation_pair_t_mapnode_t
693 : #define REDBLK_NAME fd_delegation_pair_t_map
694 : #define REDBLK_IMPL_STYLE 1
695 : #include "../../util/tmpl/fd_redblack.c"
696 : struct fd_delegation_pair_t_mapnode {
697 : fd_delegation_pair_t elem;
698 : ulong redblack_parent;
699 : ulong redblack_left;
700 : ulong redblack_right;
701 : int redblack_color;
702 : };
703 : static inline fd_delegation_pair_t_mapnode_t *
704 6 : fd_delegation_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
705 6 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
706 6 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_delegation_pair_t_map_align() );
707 6 : void * map_mem = *alloc_mem;
708 6 : *alloc_mem = (uchar *)*alloc_mem + fd_delegation_pair_t_map_footprint( len );
709 6 : return fd_delegation_pair_t_map_join( fd_delegation_pair_t_map_new( map_mem, len ) );
710 6 : }
711 : /* https://github.com/anza-xyz/agave/blob/beb3f582f784a96e59e06ef8f34e855258bcd98c/runtime/src/stakes.rs#L202 */
712 : /* Encoded Size: Dynamic */
713 : struct __attribute__((aligned(8UL))) fd_stakes {
714 : fd_vote_accounts_t vote_accounts;
715 : fd_delegation_pair_t_mapnode_t * stake_delegations_pool;
716 : fd_delegation_pair_t_mapnode_t * stake_delegations_root;
717 : ulong unused;
718 : ulong epoch;
719 : fd_stake_history_t stake_history;
720 : };
721 : typedef struct fd_stakes fd_stakes_t;
722 0 : #define FD_STAKES_FOOTPRINT sizeof(fd_stakes_t)
723 0 : #define FD_STAKES_ALIGN (8UL)
724 :
725 : struct __attribute__((aligned(8UL))) fd_stakes_global {
726 : fd_vote_accounts_global_t vote_accounts;
727 : ulong stake_delegations_pool_gaddr;
728 : ulong stake_delegations_root_gaddr;
729 : ulong unused;
730 : ulong epoch;
731 : fd_stake_history_global_t stake_history;
732 : };
733 : typedef struct fd_stakes_global fd_stakes_global_t;
734 : #define FD_STAKES_GLOBAL_FOOTPRINT sizeof(fd_stakes_global_t)
735 : #define FD_STAKES_GLOBAL_ALIGN (8UL)
736 :
737 : typedef struct fd_stake_pair_t_mapnode fd_stake_pair_t_mapnode_t;
738 : #define REDBLK_T fd_stake_pair_t_mapnode_t
739 : #define REDBLK_NAME fd_stake_pair_t_map
740 : #define REDBLK_IMPL_STYLE 1
741 : #include "../../util/tmpl/fd_redblack.c"
742 : struct fd_stake_pair_t_mapnode {
743 : fd_stake_pair_t elem;
744 : ulong redblack_parent;
745 : ulong redblack_left;
746 : ulong redblack_right;
747 : int redblack_color;
748 : };
749 : static inline fd_stake_pair_t_mapnode_t *
750 0 : fd_stake_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
751 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
752 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_stake_pair_t_map_align() );
753 0 : void * map_mem = *alloc_mem;
754 0 : *alloc_mem = (uchar *)*alloc_mem + fd_stake_pair_t_map_footprint( len );
755 0 : return fd_stake_pair_t_map_join( fd_stake_pair_t_map_new( map_mem, len ) );
756 0 : }
757 : /* https://github.com/anza-xyz/agave/blob/beb3f582f784a96e59e06ef8f34e855258bcd98c/runtime/src/stakes.rs#L202 */
758 : /* Encoded Size: Dynamic */
759 : struct __attribute__((aligned(8UL))) fd_stakes_stake {
760 : fd_vote_accounts_t vote_accounts;
761 : fd_stake_pair_t_mapnode_t * stake_delegations_pool;
762 : fd_stake_pair_t_mapnode_t * stake_delegations_root;
763 : ulong unused;
764 : ulong epoch;
765 : fd_stake_history_t stake_history;
766 : };
767 : typedef struct fd_stakes_stake fd_stakes_stake_t;
768 0 : #define FD_STAKES_STAKE_FOOTPRINT sizeof(fd_stakes_stake_t)
769 0 : #define FD_STAKES_STAKE_ALIGN (8UL)
770 :
771 : struct __attribute__((aligned(8UL))) fd_stakes_stake_global {
772 : fd_vote_accounts_global_t vote_accounts;
773 : ulong stake_delegations_pool_gaddr;
774 : ulong stake_delegations_root_gaddr;
775 : ulong unused;
776 : ulong epoch;
777 : fd_stake_history_global_t stake_history;
778 : };
779 : typedef struct fd_stakes_stake_global fd_stakes_stake_global_t;
780 : #define FD_STAKES_STAKE_GLOBAL_FOOTPRINT sizeof(fd_stakes_stake_global_t)
781 : #define FD_STAKES_STAKE_GLOBAL_ALIGN (8UL)
782 :
783 : /* Encoded Size: Fixed (88 bytes) */
784 : struct __attribute__((aligned(8UL))) fd_bank_incremental_snapshot_persistence {
785 : ulong full_slot;
786 : fd_hash_t full_hash;
787 : ulong full_capitalization;
788 : fd_hash_t incremental_hash;
789 : ulong incremental_capitalization;
790 : };
791 : typedef struct fd_bank_incremental_snapshot_persistence fd_bank_incremental_snapshot_persistence_t;
792 0 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_FOOTPRINT sizeof(fd_bank_incremental_snapshot_persistence_t)
793 0 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_ALIGN (8UL)
794 :
795 : struct __attribute__((aligned(8UL))) fd_bank_incremental_snapshot_persistence_global {
796 : ulong full_slot;
797 : fd_hash_t full_hash;
798 : ulong full_capitalization;
799 : fd_hash_t incremental_hash;
800 : ulong incremental_capitalization;
801 : };
802 : typedef struct fd_bank_incremental_snapshot_persistence_global fd_bank_incremental_snapshot_persistence_global_t;
803 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_GLOBAL_FOOTPRINT sizeof(fd_bank_incremental_snapshot_persistence_global_t)
804 : #define FD_BANK_INCREMENTAL_SNAPSHOT_PERSISTENCE_GLOBAL_ALIGN (8UL)
805 :
806 : /* Encoded Size: Dynamic */
807 : struct __attribute__((aligned(8UL))) fd_node_vote_accounts {
808 : ulong vote_accounts_len;
809 : fd_pubkey_t * vote_accounts;
810 : ulong total_stake;
811 : };
812 : typedef struct fd_node_vote_accounts fd_node_vote_accounts_t;
813 0 : #define FD_NODE_VOTE_ACCOUNTS_FOOTPRINT sizeof(fd_node_vote_accounts_t)
814 0 : #define FD_NODE_VOTE_ACCOUNTS_ALIGN (8UL)
815 :
816 : struct __attribute__((aligned(8UL))) fd_node_vote_accounts_global {
817 : ulong vote_accounts_len;
818 : ulong vote_accounts_gaddr;
819 : ulong total_stake;
820 : };
821 : typedef struct fd_node_vote_accounts_global fd_node_vote_accounts_global_t;
822 : #define FD_NODE_VOTE_ACCOUNTS_GLOBAL_FOOTPRINT sizeof(fd_node_vote_accounts_global_t)
823 : #define FD_NODE_VOTE_ACCOUNTS_GLOBAL_ALIGN (8UL)
824 :
825 : /* Encoded Size: Dynamic */
826 : struct __attribute__((aligned(8UL))) fd_pubkey_node_vote_accounts_pair {
827 : fd_pubkey_t key;
828 : fd_node_vote_accounts_t value;
829 : };
830 : typedef struct fd_pubkey_node_vote_accounts_pair fd_pubkey_node_vote_accounts_pair_t;
831 0 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_FOOTPRINT sizeof(fd_pubkey_node_vote_accounts_pair_t)
832 0 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_ALIGN (8UL)
833 :
834 : struct __attribute__((aligned(8UL))) fd_pubkey_node_vote_accounts_pair_global {
835 : fd_pubkey_t key;
836 : fd_node_vote_accounts_global_t value;
837 : };
838 : typedef struct fd_pubkey_node_vote_accounts_pair_global fd_pubkey_node_vote_accounts_pair_global_t;
839 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_pubkey_node_vote_accounts_pair_global_t)
840 : #define FD_PUBKEY_NODE_VOTE_ACCOUNTS_PAIR_GLOBAL_ALIGN (8UL)
841 :
842 : /* Encoded Size: Fixed (64 bytes) */
843 : struct __attribute__((aligned(8UL))) fd_pubkey_pubkey_pair {
844 : fd_pubkey_t key;
845 : fd_pubkey_t value;
846 : };
847 : typedef struct fd_pubkey_pubkey_pair fd_pubkey_pubkey_pair_t;
848 0 : #define FD_PUBKEY_PUBKEY_PAIR_FOOTPRINT sizeof(fd_pubkey_pubkey_pair_t)
849 0 : #define FD_PUBKEY_PUBKEY_PAIR_ALIGN (8UL)
850 :
851 : struct __attribute__((aligned(8UL))) fd_pubkey_pubkey_pair_global {
852 : fd_pubkey_t key;
853 : fd_pubkey_t value;
854 : };
855 : typedef struct fd_pubkey_pubkey_pair_global fd_pubkey_pubkey_pair_global_t;
856 : #define FD_PUBKEY_PUBKEY_PAIR_GLOBAL_FOOTPRINT sizeof(fd_pubkey_pubkey_pair_global_t)
857 : #define FD_PUBKEY_PUBKEY_PAIR_GLOBAL_ALIGN (8UL)
858 :
859 : /* Encoded Size: Dynamic */
860 : struct __attribute__((aligned(8UL))) fd_epoch_stakes {
861 : fd_stakes_t stakes;
862 : ulong total_stake;
863 : ulong node_id_to_vote_accounts_len;
864 : fd_pubkey_node_vote_accounts_pair_t * node_id_to_vote_accounts;
865 : ulong epoch_authorized_voters_len;
866 : fd_pubkey_pubkey_pair_t * epoch_authorized_voters;
867 : };
868 : typedef struct fd_epoch_stakes fd_epoch_stakes_t;
869 0 : #define FD_EPOCH_STAKES_FOOTPRINT sizeof(fd_epoch_stakes_t)
870 0 : #define FD_EPOCH_STAKES_ALIGN (8UL)
871 :
872 : struct __attribute__((aligned(8UL))) fd_epoch_stakes_global {
873 : fd_stakes_global_t stakes;
874 : ulong total_stake;
875 : ulong node_id_to_vote_accounts_len;
876 : ulong node_id_to_vote_accounts_gaddr;
877 : ulong epoch_authorized_voters_len;
878 : ulong epoch_authorized_voters_gaddr;
879 : };
880 : typedef struct fd_epoch_stakes_global fd_epoch_stakes_global_t;
881 : #define FD_EPOCH_STAKES_GLOBAL_FOOTPRINT sizeof(fd_epoch_stakes_global_t)
882 : #define FD_EPOCH_STAKES_GLOBAL_ALIGN (8UL)
883 :
884 : /* Encoded Size: Dynamic */
885 : struct __attribute__((aligned(8UL))) fd_epoch_epoch_stakes_pair {
886 : ulong key;
887 : fd_epoch_stakes_t value;
888 : };
889 : typedef struct fd_epoch_epoch_stakes_pair fd_epoch_epoch_stakes_pair_t;
890 0 : #define FD_EPOCH_EPOCH_STAKES_PAIR_FOOTPRINT sizeof(fd_epoch_epoch_stakes_pair_t)
891 0 : #define FD_EPOCH_EPOCH_STAKES_PAIR_ALIGN (8UL)
892 :
893 : struct __attribute__((aligned(8UL))) fd_epoch_epoch_stakes_pair_global {
894 : ulong key;
895 : fd_epoch_stakes_global_t value;
896 : };
897 : typedef struct fd_epoch_epoch_stakes_pair_global fd_epoch_epoch_stakes_pair_global_t;
898 : #define FD_EPOCH_EPOCH_STAKES_PAIR_GLOBAL_FOOTPRINT sizeof(fd_epoch_epoch_stakes_pair_global_t)
899 : #define FD_EPOCH_EPOCH_STAKES_PAIR_GLOBAL_ALIGN (8UL)
900 :
901 : /* Encoded Size: Fixed (40 bytes) */
902 : struct __attribute__((aligned(8UL))) fd_pubkey_u64_pair {
903 : fd_pubkey_t _0;
904 : ulong _1;
905 : };
906 : typedef struct fd_pubkey_u64_pair fd_pubkey_u64_pair_t;
907 0 : #define FD_PUBKEY_U64_PAIR_FOOTPRINT sizeof(fd_pubkey_u64_pair_t)
908 0 : #define FD_PUBKEY_U64_PAIR_ALIGN (8UL)
909 :
910 : struct __attribute__((aligned(8UL))) fd_pubkey_u64_pair_global {
911 : fd_pubkey_t _0;
912 : ulong _1;
913 : };
914 : typedef struct fd_pubkey_u64_pair_global fd_pubkey_u64_pair_global_t;
915 : #define FD_PUBKEY_U64_PAIR_GLOBAL_FOOTPRINT sizeof(fd_pubkey_u64_pair_global_t)
916 : #define FD_PUBKEY_U64_PAIR_GLOBAL_ALIGN (8UL)
917 :
918 : /* Encoded Size: Dynamic */
919 : struct __attribute__((aligned(8UL))) fd_unused_accounts {
920 : ulong unused1_len;
921 : fd_pubkey_t * unused1;
922 : ulong unused2_len;
923 : fd_pubkey_t * unused2;
924 : ulong unused3_len;
925 : fd_pubkey_u64_pair_t * unused3;
926 : };
927 : typedef struct fd_unused_accounts fd_unused_accounts_t;
928 0 : #define FD_UNUSED_ACCOUNTS_FOOTPRINT sizeof(fd_unused_accounts_t)
929 0 : #define FD_UNUSED_ACCOUNTS_ALIGN (8UL)
930 :
931 : struct __attribute__((aligned(8UL))) fd_unused_accounts_global {
932 : ulong unused1_len;
933 : ulong unused1_gaddr;
934 : ulong unused2_len;
935 : ulong unused2_gaddr;
936 : ulong unused3_len;
937 : ulong unused3_gaddr;
938 : };
939 : typedef struct fd_unused_accounts_global fd_unused_accounts_global_t;
940 : #define FD_UNUSED_ACCOUNTS_GLOBAL_FOOTPRINT sizeof(fd_unused_accounts_global_t)
941 : #define FD_UNUSED_ACCOUNTS_GLOBAL_ALIGN (8UL)
942 :
943 : /* https://github.com/solana-labs/solana/blob/88aeaa82a856fc807234e7da0b31b89f2dc0e091/runtime/src/bank.rs#L967 */
944 : /* Encoded Size: Dynamic */
945 : struct __attribute__((aligned(16UL))) fd_versioned_bank {
946 : fd_block_hash_vec_t blockhash_queue;
947 : ulong ancestors_len;
948 : fd_slot_pair_t * ancestors;
949 : fd_hash_t hash;
950 : fd_hash_t parent_hash;
951 : ulong parent_slot;
952 : fd_hard_forks_t hard_forks;
953 : ulong transaction_count;
954 : ulong tick_height;
955 : ulong signature_count;
956 : ulong capitalization;
957 : ulong max_tick_height;
958 : ulong* hashes_per_tick;
959 : ulong ticks_per_slot;
960 : uint128 ns_per_slot;
961 : ulong genesis_creation_time;
962 : double slots_per_year;
963 : ulong accounts_data_len;
964 : ulong slot;
965 : ulong epoch;
966 : ulong block_height;
967 : fd_pubkey_t collector_id;
968 : ulong collector_fees;
969 : fd_fee_calculator_t fee_calculator;
970 : fd_fee_rate_governor_t fee_rate_governor;
971 : ulong collected_rent;
972 : fd_rent_collector_t rent_collector;
973 : fd_epoch_schedule_t epoch_schedule;
974 : fd_inflation_t inflation;
975 : fd_stakes_t stakes;
976 : fd_unused_accounts_t unused_accounts;
977 : ulong epoch_stakes_len;
978 : fd_epoch_epoch_stakes_pair_t * epoch_stakes;
979 : uchar is_delta;
980 : };
981 : typedef struct fd_versioned_bank fd_versioned_bank_t;
982 0 : #define FD_VERSIONED_BANK_FOOTPRINT sizeof(fd_versioned_bank_t)
983 0 : #define FD_VERSIONED_BANK_ALIGN (16UL)
984 :
985 : struct __attribute__((aligned(16UL))) fd_versioned_bank_global {
986 : fd_block_hash_vec_global_t blockhash_queue;
987 : ulong ancestors_len;
988 : ulong ancestors_gaddr;
989 : fd_hash_t hash;
990 : fd_hash_t parent_hash;
991 : ulong parent_slot;
992 : fd_hard_forks_global_t hard_forks;
993 : ulong transaction_count;
994 : ulong tick_height;
995 : ulong signature_count;
996 : ulong capitalization;
997 : ulong max_tick_height;
998 : ulong hashes_per_tick_gaddr;
999 : ulong ticks_per_slot;
1000 : uint128 ns_per_slot;
1001 : ulong genesis_creation_time;
1002 : double slots_per_year;
1003 : ulong accounts_data_len;
1004 : ulong slot;
1005 : ulong epoch;
1006 : ulong block_height;
1007 : fd_pubkey_t collector_id;
1008 : ulong collector_fees;
1009 : fd_fee_calculator_t fee_calculator;
1010 : fd_fee_rate_governor_t fee_rate_governor;
1011 : ulong collected_rent;
1012 : fd_rent_collector_t rent_collector;
1013 : fd_epoch_schedule_t epoch_schedule;
1014 : fd_inflation_t inflation;
1015 : fd_stakes_global_t stakes;
1016 : fd_unused_accounts_global_t unused_accounts;
1017 : ulong epoch_stakes_len;
1018 : ulong epoch_stakes_gaddr;
1019 : uchar is_delta;
1020 : };
1021 : typedef struct fd_versioned_bank_global fd_versioned_bank_global_t;
1022 : #define FD_VERSIONED_BANK_GLOBAL_FOOTPRINT sizeof(fd_versioned_bank_global_t)
1023 : #define FD_VERSIONED_BANK_GLOBAL_ALIGN (16UL)
1024 :
1025 : /* Encoded Size: Fixed (40 bytes) */
1026 : struct __attribute__((aligned(8UL))) fd_bank_hash_stats {
1027 : ulong num_updated_accounts;
1028 : ulong num_removed_accounts;
1029 : ulong num_lamports_stored;
1030 : ulong total_data_len;
1031 : ulong num_executable_accounts;
1032 : };
1033 : typedef struct fd_bank_hash_stats fd_bank_hash_stats_t;
1034 0 : #define FD_BANK_HASH_STATS_FOOTPRINT sizeof(fd_bank_hash_stats_t)
1035 0 : #define FD_BANK_HASH_STATS_ALIGN (8UL)
1036 :
1037 : struct __attribute__((aligned(8UL))) fd_bank_hash_stats_global {
1038 : ulong num_updated_accounts;
1039 : ulong num_removed_accounts;
1040 : ulong num_lamports_stored;
1041 : ulong total_data_len;
1042 : ulong num_executable_accounts;
1043 : };
1044 : typedef struct fd_bank_hash_stats_global fd_bank_hash_stats_global_t;
1045 : #define FD_BANK_HASH_STATS_GLOBAL_FOOTPRINT sizeof(fd_bank_hash_stats_global_t)
1046 : #define FD_BANK_HASH_STATS_GLOBAL_ALIGN (8UL)
1047 :
1048 : /* Encoded Size: Fixed (104 bytes) */
1049 : struct __attribute__((aligned(8UL))) fd_bank_hash_info {
1050 : fd_hash_t accounts_delta_hash;
1051 : fd_hash_t accounts_hash;
1052 : fd_bank_hash_stats_t stats;
1053 : };
1054 : typedef struct fd_bank_hash_info fd_bank_hash_info_t;
1055 0 : #define FD_BANK_HASH_INFO_FOOTPRINT sizeof(fd_bank_hash_info_t)
1056 0 : #define FD_BANK_HASH_INFO_ALIGN (8UL)
1057 :
1058 : struct __attribute__((aligned(8UL))) fd_bank_hash_info_global {
1059 : fd_hash_t accounts_delta_hash;
1060 : fd_hash_t accounts_hash;
1061 : fd_bank_hash_stats_t stats;
1062 : };
1063 : typedef struct fd_bank_hash_info_global fd_bank_hash_info_global_t;
1064 : #define FD_BANK_HASH_INFO_GLOBAL_FOOTPRINT sizeof(fd_bank_hash_info_global_t)
1065 : #define FD_BANK_HASH_INFO_GLOBAL_ALIGN (8UL)
1066 :
1067 : /* Encoded Size: Fixed (40 bytes) */
1068 : struct __attribute__((aligned(8UL))) fd_slot_map_pair {
1069 : ulong slot;
1070 : fd_hash_t hash;
1071 : };
1072 : typedef struct fd_slot_map_pair fd_slot_map_pair_t;
1073 0 : #define FD_SLOT_MAP_PAIR_FOOTPRINT sizeof(fd_slot_map_pair_t)
1074 0 : #define FD_SLOT_MAP_PAIR_ALIGN (8UL)
1075 :
1076 : struct __attribute__((aligned(8UL))) fd_slot_map_pair_global {
1077 : ulong slot;
1078 : fd_hash_t hash;
1079 : };
1080 : typedef struct fd_slot_map_pair_global fd_slot_map_pair_global_t;
1081 : #define FD_SLOT_MAP_PAIR_GLOBAL_FOOTPRINT sizeof(fd_slot_map_pair_global_t)
1082 : #define FD_SLOT_MAP_PAIR_GLOBAL_ALIGN (8UL)
1083 :
1084 : /* Encoded Size: Fixed (16 bytes) */
1085 : struct __attribute__((aligned(8UL))) fd_snapshot_acc_vec {
1086 : ulong id;
1087 : ulong file_sz;
1088 : };
1089 : typedef struct fd_snapshot_acc_vec fd_snapshot_acc_vec_t;
1090 0 : #define FD_SNAPSHOT_ACC_VEC_FOOTPRINT sizeof(fd_snapshot_acc_vec_t)
1091 0 : #define FD_SNAPSHOT_ACC_VEC_ALIGN (8UL)
1092 :
1093 : struct __attribute__((aligned(8UL))) fd_snapshot_acc_vec_global {
1094 : ulong id;
1095 : ulong file_sz;
1096 : };
1097 : typedef struct fd_snapshot_acc_vec_global fd_snapshot_acc_vec_global_t;
1098 : #define FD_SNAPSHOT_ACC_VEC_GLOBAL_FOOTPRINT sizeof(fd_snapshot_acc_vec_global_t)
1099 : #define FD_SNAPSHOT_ACC_VEC_GLOBAL_ALIGN (8UL)
1100 :
1101 : /* Encoded Size: Dynamic */
1102 : struct __attribute__((aligned(8UL))) fd_snapshot_slot_acc_vecs {
1103 : ulong slot;
1104 : ulong account_vecs_len;
1105 : fd_snapshot_acc_vec_t * account_vecs;
1106 : };
1107 : typedef struct fd_snapshot_slot_acc_vecs fd_snapshot_slot_acc_vecs_t;
1108 0 : #define FD_SNAPSHOT_SLOT_ACC_VECS_FOOTPRINT sizeof(fd_snapshot_slot_acc_vecs_t)
1109 0 : #define FD_SNAPSHOT_SLOT_ACC_VECS_ALIGN (8UL)
1110 :
1111 : struct __attribute__((aligned(8UL))) fd_snapshot_slot_acc_vecs_global {
1112 : ulong slot;
1113 : ulong account_vecs_len;
1114 : ulong account_vecs_gaddr;
1115 : };
1116 : typedef struct fd_snapshot_slot_acc_vecs_global fd_snapshot_slot_acc_vecs_global_t;
1117 : #define FD_SNAPSHOT_SLOT_ACC_VECS_GLOBAL_FOOTPRINT sizeof(fd_snapshot_slot_acc_vecs_global_t)
1118 : #define FD_SNAPSHOT_SLOT_ACC_VECS_GLOBAL_ALIGN (8UL)
1119 :
1120 : union fd_reward_type_inner {
1121 : uchar nonempty; /* Hack to support enums with no inner structures */
1122 : };
1123 : typedef union fd_reward_type_inner fd_reward_type_inner_t;
1124 :
1125 : union fd_reward_type_inner_global {
1126 : uchar nonempty; /* Hack to support enums with no inner structures */
1127 : };
1128 : typedef union fd_reward_type_inner_global fd_reward_type_inner_global_t;
1129 :
1130 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/sdk/src/reward_type.rs#L7 */
1131 : struct fd_reward_type {
1132 : uint discriminant;
1133 : fd_reward_type_inner_t inner;
1134 : };
1135 : typedef struct fd_reward_type fd_reward_type_t;
1136 0 : #define FD_REWARD_TYPE_FOOTPRINT sizeof(fd_reward_type_t)
1137 0 : #define FD_REWARD_TYPE_ALIGN (8UL)
1138 : struct fd_reward_type_global {
1139 : uint discriminant;
1140 : fd_reward_type_inner_global_t inner;
1141 : };
1142 : typedef struct fd_reward_type_global fd_reward_type_global_t;
1143 : #define FD_REWARD_TYPE_GLOBAL_FOOTPRINT sizeof(fd_reward_type_global_t)
1144 : #define FD_REWARD_TYPE_GLOBAL_ALIGN (8UL)
1145 :
1146 : /* Accounts DB related fields in a snapshot */
1147 : /* Encoded Size: Dynamic */
1148 : struct __attribute__((aligned(8UL))) fd_solana_accounts_db_fields {
1149 : ulong storages_len;
1150 : fd_snapshot_slot_acc_vecs_t * storages;
1151 : ulong version;
1152 : ulong slot;
1153 : fd_bank_hash_info_t bank_hash_info;
1154 : ulong historical_roots_len;
1155 : ulong* historical_roots;
1156 : ulong historical_roots_with_hash_len;
1157 : fd_slot_map_pair_t * historical_roots_with_hash;
1158 : };
1159 : typedef struct fd_solana_accounts_db_fields fd_solana_accounts_db_fields_t;
1160 0 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_FOOTPRINT sizeof(fd_solana_accounts_db_fields_t)
1161 0 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_ALIGN (8UL)
1162 :
1163 : struct __attribute__((aligned(8UL))) fd_solana_accounts_db_fields_global {
1164 : ulong storages_len;
1165 : ulong storages_gaddr;
1166 : ulong version;
1167 : ulong slot;
1168 : fd_bank_hash_info_t bank_hash_info;
1169 : ulong historical_roots_len;
1170 : ulong historical_roots_gaddr;
1171 : ulong historical_roots_with_hash_len;
1172 : ulong historical_roots_with_hash_gaddr;
1173 : };
1174 : typedef struct fd_solana_accounts_db_fields_global fd_solana_accounts_db_fields_global_t;
1175 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_GLOBAL_FOOTPRINT sizeof(fd_solana_accounts_db_fields_global_t)
1176 : #define FD_SOLANA_ACCOUNTS_DB_FIELDS_GLOBAL_ALIGN (8UL)
1177 :
1178 : /* Encoded Size: Dynamic */
1179 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_current {
1180 : fd_stakes_stake_t stakes;
1181 : ulong total_stake;
1182 : ulong node_id_to_vote_accounts_len;
1183 : fd_pubkey_node_vote_accounts_pair_t * node_id_to_vote_accounts;
1184 : ulong epoch_authorized_voters_len;
1185 : fd_pubkey_pubkey_pair_t * epoch_authorized_voters;
1186 : };
1187 : typedef struct fd_versioned_epoch_stakes_current fd_versioned_epoch_stakes_current_t;
1188 0 : #define FD_VERSIONED_EPOCH_STAKES_CURRENT_FOOTPRINT sizeof(fd_versioned_epoch_stakes_current_t)
1189 0 : #define FD_VERSIONED_EPOCH_STAKES_CURRENT_ALIGN (8UL)
1190 :
1191 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_current_global {
1192 : fd_stakes_stake_global_t stakes;
1193 : ulong total_stake;
1194 : ulong node_id_to_vote_accounts_len;
1195 : ulong node_id_to_vote_accounts_gaddr;
1196 : ulong epoch_authorized_voters_len;
1197 : ulong epoch_authorized_voters_gaddr;
1198 : };
1199 : typedef struct fd_versioned_epoch_stakes_current_global fd_versioned_epoch_stakes_current_global_t;
1200 : #define FD_VERSIONED_EPOCH_STAKES_CURRENT_GLOBAL_FOOTPRINT sizeof(fd_versioned_epoch_stakes_current_global_t)
1201 : #define FD_VERSIONED_EPOCH_STAKES_CURRENT_GLOBAL_ALIGN (8UL)
1202 :
1203 : union fd_versioned_epoch_stakes_inner {
1204 : fd_versioned_epoch_stakes_current_t Current;
1205 : };
1206 : typedef union fd_versioned_epoch_stakes_inner fd_versioned_epoch_stakes_inner_t;
1207 :
1208 : union fd_versioned_epoch_stakes_inner_global {
1209 : fd_versioned_epoch_stakes_current_global_t Current;
1210 : };
1211 : typedef union fd_versioned_epoch_stakes_inner_global fd_versioned_epoch_stakes_inner_global_t;
1212 :
1213 : struct fd_versioned_epoch_stakes {
1214 : uint discriminant;
1215 : fd_versioned_epoch_stakes_inner_t inner;
1216 : };
1217 : typedef struct fd_versioned_epoch_stakes fd_versioned_epoch_stakes_t;
1218 0 : #define FD_VERSIONED_EPOCH_STAKES_FOOTPRINT sizeof(fd_versioned_epoch_stakes_t)
1219 0 : #define FD_VERSIONED_EPOCH_STAKES_ALIGN (8UL)
1220 : struct fd_versioned_epoch_stakes_global {
1221 : uint discriminant;
1222 : fd_versioned_epoch_stakes_inner_global_t inner;
1223 : };
1224 : typedef struct fd_versioned_epoch_stakes_global fd_versioned_epoch_stakes_global_t;
1225 : #define FD_VERSIONED_EPOCH_STAKES_GLOBAL_FOOTPRINT sizeof(fd_versioned_epoch_stakes_global_t)
1226 : #define FD_VERSIONED_EPOCH_STAKES_GLOBAL_ALIGN (8UL)
1227 :
1228 : /* Encoded Size: Dynamic */
1229 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_pair {
1230 : ulong epoch;
1231 : fd_versioned_epoch_stakes_t val;
1232 : };
1233 : typedef struct fd_versioned_epoch_stakes_pair fd_versioned_epoch_stakes_pair_t;
1234 0 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_FOOTPRINT sizeof(fd_versioned_epoch_stakes_pair_t)
1235 0 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_ALIGN (8UL)
1236 :
1237 : struct __attribute__((aligned(8UL))) fd_versioned_epoch_stakes_pair_global {
1238 : ulong epoch;
1239 : fd_versioned_epoch_stakes_global_t val;
1240 : };
1241 : typedef struct fd_versioned_epoch_stakes_pair_global fd_versioned_epoch_stakes_pair_global_t;
1242 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_GLOBAL_FOOTPRINT sizeof(fd_versioned_epoch_stakes_pair_global_t)
1243 : #define FD_VERSIONED_EPOCH_STAKES_PAIR_GLOBAL_ALIGN (8UL)
1244 :
1245 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/sdk/src/reward_info.rs#L5 */
1246 : /* Encoded Size: Fixed (28 bytes) */
1247 : struct __attribute__((aligned(8UL))) fd_reward_info {
1248 : fd_reward_type_t reward_type;
1249 : ulong lamports;
1250 : ulong post_balance;
1251 : ulong commission;
1252 : };
1253 : typedef struct fd_reward_info fd_reward_info_t;
1254 0 : #define FD_REWARD_INFO_FOOTPRINT sizeof(fd_reward_info_t)
1255 0 : #define FD_REWARD_INFO_ALIGN (8UL)
1256 :
1257 : struct __attribute__((aligned(8UL))) fd_reward_info_global {
1258 : fd_reward_type_t reward_type;
1259 : ulong lamports;
1260 : ulong post_balance;
1261 : ulong commission;
1262 : };
1263 : typedef struct fd_reward_info_global fd_reward_info_global_t;
1264 : #define FD_REWARD_INFO_GLOBAL_FOOTPRINT sizeof(fd_reward_info_global_t)
1265 : #define FD_REWARD_INFO_GLOBAL_ALIGN (8UL)
1266 :
1267 : /* You can cast this to a (fd_lthash_value_t *) and use it directly since the alignment is preserved */
1268 : /* Encoded Size: Fixed (2048 bytes) */
1269 : struct __attribute__((aligned(128UL))) fd_slot_lthash {
1270 : uchar lthash[2048];
1271 : };
1272 : typedef struct fd_slot_lthash fd_slot_lthash_t;
1273 0 : #define FD_SLOT_LTHASH_FOOTPRINT sizeof(fd_slot_lthash_t)
1274 0 : #define FD_SLOT_LTHASH_ALIGN (128UL)
1275 :
1276 : struct __attribute__((aligned(128UL))) fd_slot_lthash_global {
1277 : uchar lthash[2048];
1278 : };
1279 : typedef struct fd_slot_lthash_global fd_slot_lthash_global_t;
1280 : #define FD_SLOT_LTHASH_GLOBAL_FOOTPRINT sizeof(fd_slot_lthash_global_t)
1281 : #define FD_SLOT_LTHASH_GLOBAL_ALIGN (128UL)
1282 :
1283 : /* Encoded Size: Dynamic */
1284 : struct __attribute__((aligned(16UL))) fd_solana_manifest {
1285 : fd_versioned_bank_t bank;
1286 : fd_solana_accounts_db_fields_t accounts_db;
1287 : ulong lamports_per_signature;
1288 : fd_bank_incremental_snapshot_persistence_t * bank_incremental_snapshot_persistence;
1289 : fd_hash_t * epoch_account_hash;
1290 : ulong versioned_epoch_stakes_len;
1291 : fd_versioned_epoch_stakes_pair_t * versioned_epoch_stakes;
1292 : fd_slot_lthash_t * lthash;
1293 : };
1294 : typedef struct fd_solana_manifest fd_solana_manifest_t;
1295 0 : #define FD_SOLANA_MANIFEST_FOOTPRINT sizeof(fd_solana_manifest_t)
1296 6 : #define FD_SOLANA_MANIFEST_ALIGN (16UL)
1297 :
1298 : struct __attribute__((aligned(16UL))) fd_solana_manifest_global {
1299 : fd_versioned_bank_global_t bank;
1300 : fd_solana_accounts_db_fields_global_t accounts_db;
1301 : ulong lamports_per_signature;
1302 : ulong bank_incremental_snapshot_persistence_gaddr;
1303 : ulong epoch_account_hash_gaddr;
1304 : ulong versioned_epoch_stakes_len;
1305 : ulong versioned_epoch_stakes_gaddr;
1306 : ulong lthash_gaddr;
1307 : };
1308 : typedef struct fd_solana_manifest_global fd_solana_manifest_global_t;
1309 : #define FD_SOLANA_MANIFEST_GLOBAL_FOOTPRINT sizeof(fd_solana_manifest_global_t)
1310 : #define FD_SOLANA_MANIFEST_GLOBAL_ALIGN (16UL)
1311 :
1312 : /* Encoded Size: Fixed (12 bytes) */
1313 : struct __attribute__((aligned(8UL))) fd_rust_duration {
1314 : ulong seconds;
1315 : uint nanoseconds;
1316 : };
1317 : typedef struct fd_rust_duration fd_rust_duration_t;
1318 0 : #define FD_RUST_DURATION_FOOTPRINT sizeof(fd_rust_duration_t)
1319 0 : #define FD_RUST_DURATION_ALIGN (8UL)
1320 :
1321 : struct __attribute__((aligned(8UL))) fd_rust_duration_global {
1322 : ulong seconds;
1323 : uint nanoseconds;
1324 : };
1325 : typedef struct fd_rust_duration_global fd_rust_duration_global_t;
1326 : #define FD_RUST_DURATION_GLOBAL_FOOTPRINT sizeof(fd_rust_duration_global_t)
1327 : #define FD_RUST_DURATION_GLOBAL_ALIGN (8UL)
1328 :
1329 : /* Encoded Size: Dynamic */
1330 : struct __attribute__((aligned(8UL))) fd_poh_config {
1331 : fd_rust_duration_t target_tick_duration;
1332 : ulong* target_tick_count;
1333 : ulong hashes_per_tick;
1334 : uchar has_hashes_per_tick;
1335 : };
1336 : typedef struct fd_poh_config fd_poh_config_t;
1337 0 : #define FD_POH_CONFIG_FOOTPRINT sizeof(fd_poh_config_t)
1338 0 : #define FD_POH_CONFIG_ALIGN (8UL)
1339 :
1340 : struct __attribute__((aligned(8UL))) fd_poh_config_global {
1341 : fd_rust_duration_t target_tick_duration;
1342 : ulong target_tick_count_gaddr;
1343 : ulong hashes_per_tick;
1344 : uchar has_hashes_per_tick;
1345 : };
1346 : typedef struct fd_poh_config_global fd_poh_config_global_t;
1347 : #define FD_POH_CONFIG_GLOBAL_FOOTPRINT sizeof(fd_poh_config_global_t)
1348 : #define FD_POH_CONFIG_GLOBAL_ALIGN (8UL)
1349 :
1350 : /* Encoded Size: Dynamic */
1351 : struct __attribute__((aligned(8UL))) fd_string_pubkey_pair {
1352 : ulong string_len;
1353 : uchar* string;
1354 : fd_pubkey_t pubkey;
1355 : };
1356 : typedef struct fd_string_pubkey_pair fd_string_pubkey_pair_t;
1357 0 : #define FD_STRING_PUBKEY_PAIR_FOOTPRINT sizeof(fd_string_pubkey_pair_t)
1358 0 : #define FD_STRING_PUBKEY_PAIR_ALIGN (8UL)
1359 :
1360 : struct __attribute__((aligned(8UL))) fd_string_pubkey_pair_global {
1361 : ulong string_len;
1362 : ulong string_gaddr;
1363 : fd_pubkey_t pubkey;
1364 : };
1365 : typedef struct fd_string_pubkey_pair_global fd_string_pubkey_pair_global_t;
1366 : #define FD_STRING_PUBKEY_PAIR_GLOBAL_FOOTPRINT sizeof(fd_string_pubkey_pair_global_t)
1367 : #define FD_STRING_PUBKEY_PAIR_GLOBAL_ALIGN (8UL)
1368 :
1369 : /* Encoded Size: Dynamic */
1370 : struct __attribute__((aligned(8UL))) fd_pubkey_account_pair {
1371 : fd_pubkey_t key;
1372 : fd_solana_account_t account;
1373 : };
1374 : typedef struct fd_pubkey_account_pair fd_pubkey_account_pair_t;
1375 0 : #define FD_PUBKEY_ACCOUNT_PAIR_FOOTPRINT sizeof(fd_pubkey_account_pair_t)
1376 0 : #define FD_PUBKEY_ACCOUNT_PAIR_ALIGN (8UL)
1377 :
1378 : struct __attribute__((aligned(8UL))) fd_pubkey_account_pair_global {
1379 : fd_pubkey_t key;
1380 : fd_solana_account_global_t account;
1381 : };
1382 : typedef struct fd_pubkey_account_pair_global fd_pubkey_account_pair_global_t;
1383 : #define FD_PUBKEY_ACCOUNT_PAIR_GLOBAL_FOOTPRINT sizeof(fd_pubkey_account_pair_global_t)
1384 : #define FD_PUBKEY_ACCOUNT_PAIR_GLOBAL_ALIGN (8UL)
1385 :
1386 : /* Encoded Size: Dynamic */
1387 : struct __attribute__((aligned(8UL))) fd_genesis_solana {
1388 : ulong creation_time;
1389 : ulong accounts_len;
1390 : fd_pubkey_account_pair_t * accounts;
1391 : ulong native_instruction_processors_len;
1392 : fd_string_pubkey_pair_t * native_instruction_processors;
1393 : ulong rewards_pools_len;
1394 : fd_pubkey_account_pair_t * rewards_pools;
1395 : ulong ticks_per_slot;
1396 : ulong unused;
1397 : fd_poh_config_t poh_config;
1398 : ulong __backwards_compat_with_v0_23;
1399 : fd_fee_rate_governor_t fee_rate_governor;
1400 : fd_rent_t rent;
1401 : fd_inflation_t inflation;
1402 : fd_epoch_schedule_t epoch_schedule;
1403 : uint cluster_type;
1404 : };
1405 : typedef struct fd_genesis_solana fd_genesis_solana_t;
1406 0 : #define FD_GENESIS_SOLANA_FOOTPRINT sizeof(fd_genesis_solana_t)
1407 0 : #define FD_GENESIS_SOLANA_ALIGN (8UL)
1408 :
1409 : struct __attribute__((aligned(8UL))) fd_genesis_solana_global {
1410 : ulong creation_time;
1411 : ulong accounts_len;
1412 : ulong accounts_gaddr;
1413 : ulong native_instruction_processors_len;
1414 : ulong native_instruction_processors_gaddr;
1415 : ulong rewards_pools_len;
1416 : ulong rewards_pools_gaddr;
1417 : ulong ticks_per_slot;
1418 : ulong unused;
1419 : fd_poh_config_global_t poh_config;
1420 : ulong __backwards_compat_with_v0_23;
1421 : fd_fee_rate_governor_t fee_rate_governor;
1422 : fd_rent_t rent;
1423 : fd_inflation_t inflation;
1424 : fd_epoch_schedule_t epoch_schedule;
1425 : uint cluster_type;
1426 : };
1427 : typedef struct fd_genesis_solana_global fd_genesis_solana_global_t;
1428 : #define FD_GENESIS_SOLANA_GLOBAL_FOOTPRINT sizeof(fd_genesis_solana_global_t)
1429 : #define FD_GENESIS_SOLANA_GLOBAL_ALIGN (8UL)
1430 :
1431 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/clock.rs#L114 */
1432 : /* Encoded Size: Fixed (40 bytes) */
1433 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_clock {
1434 : ulong slot;
1435 : long epoch_start_timestamp;
1436 : ulong epoch;
1437 : ulong leader_schedule_epoch;
1438 : long unix_timestamp;
1439 : };
1440 : typedef struct fd_sol_sysvar_clock fd_sol_sysvar_clock_t;
1441 0 : #define FD_SOL_SYSVAR_CLOCK_FOOTPRINT sizeof(fd_sol_sysvar_clock_t)
1442 0 : #define FD_SOL_SYSVAR_CLOCK_ALIGN (8UL)
1443 :
1444 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_clock_global {
1445 : ulong slot;
1446 : long epoch_start_timestamp;
1447 : ulong epoch;
1448 : ulong leader_schedule_epoch;
1449 : long unix_timestamp;
1450 : };
1451 : typedef struct fd_sol_sysvar_clock_global fd_sol_sysvar_clock_global_t;
1452 : #define FD_SOL_SYSVAR_CLOCK_GLOBAL_FOOTPRINT sizeof(fd_sol_sysvar_clock_global_t)
1453 : #define FD_SOL_SYSVAR_CLOCK_GLOBAL_ALIGN (8UL)
1454 :
1455 : /* https://github.com/solana-labs/solana/blob/30531d7a5b74f914dde53bfbb0bc2144f2ac92bb/sdk/program/src/last_restart_slot.rs#L7 */
1456 : /* Encoded Size: Fixed (8 bytes) */
1457 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_last_restart_slot {
1458 : ulong slot;
1459 : };
1460 : typedef struct fd_sol_sysvar_last_restart_slot fd_sol_sysvar_last_restart_slot_t;
1461 0 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_FOOTPRINT sizeof(fd_sol_sysvar_last_restart_slot_t)
1462 0 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_ALIGN (8UL)
1463 :
1464 : struct __attribute__((aligned(8UL))) fd_sol_sysvar_last_restart_slot_global {
1465 : ulong slot;
1466 : };
1467 : typedef struct fd_sol_sysvar_last_restart_slot_global fd_sol_sysvar_last_restart_slot_global_t;
1468 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_GLOBAL_FOOTPRINT sizeof(fd_sol_sysvar_last_restart_slot_global_t)
1469 : #define FD_SOL_SYSVAR_LAST_RESTART_SLOT_GLOBAL_ALIGN (8UL)
1470 :
1471 : /* Encoded Size: Fixed (12 bytes) */
1472 : struct __attribute__((aligned(8UL))) fd_vote_lockout {
1473 : ulong slot;
1474 : uint confirmation_count;
1475 : };
1476 : typedef struct fd_vote_lockout fd_vote_lockout_t;
1477 0 : #define FD_VOTE_LOCKOUT_FOOTPRINT sizeof(fd_vote_lockout_t)
1478 0 : #define FD_VOTE_LOCKOUT_ALIGN (8UL)
1479 :
1480 : struct __attribute__((aligned(8UL))) fd_vote_lockout_global {
1481 : ulong slot;
1482 : uint confirmation_count;
1483 : };
1484 : typedef struct fd_vote_lockout_global fd_vote_lockout_global_t;
1485 : #define FD_VOTE_LOCKOUT_GLOBAL_FOOTPRINT sizeof(fd_vote_lockout_global_t)
1486 : #define FD_VOTE_LOCKOUT_GLOBAL_ALIGN (8UL)
1487 :
1488 : /* Encoded Size: Dynamic */
1489 : struct __attribute__((aligned(8UL))) fd_lockout_offset {
1490 : ulong offset;
1491 : uchar confirmation_count;
1492 : };
1493 : typedef struct fd_lockout_offset fd_lockout_offset_t;
1494 0 : #define FD_LOCKOUT_OFFSET_FOOTPRINT sizeof(fd_lockout_offset_t)
1495 0 : #define FD_LOCKOUT_OFFSET_ALIGN (8UL)
1496 :
1497 : struct __attribute__((aligned(8UL))) fd_lockout_offset_global {
1498 : ulong offset;
1499 : uchar confirmation_count;
1500 : };
1501 : typedef struct fd_lockout_offset_global fd_lockout_offset_global_t;
1502 : #define FD_LOCKOUT_OFFSET_GLOBAL_FOOTPRINT sizeof(fd_lockout_offset_global_t)
1503 : #define FD_LOCKOUT_OFFSET_GLOBAL_ALIGN (8UL)
1504 :
1505 : /* https://github.com/firedancer-io/solana/blob/da470eef4652b3b22598a1f379cacfe82bd5928d/sdk/program/src/vote/authorized_voters.rs#L9 */
1506 : /* Encoded Size: Fixed (40 bytes) */
1507 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voter {
1508 : ulong epoch;
1509 : fd_pubkey_t pubkey;
1510 : ulong parent;
1511 : ulong left;
1512 : ulong right;
1513 : ulong prio;
1514 : };
1515 : typedef struct fd_vote_authorized_voter fd_vote_authorized_voter_t;
1516 0 : #define FD_VOTE_AUTHORIZED_VOTER_FOOTPRINT sizeof(fd_vote_authorized_voter_t)
1517 0 : #define FD_VOTE_AUTHORIZED_VOTER_ALIGN (8UL)
1518 :
1519 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voter_global {
1520 : ulong epoch;
1521 : fd_pubkey_t pubkey;
1522 : ulong parent;
1523 : ulong left;
1524 : ulong right;
1525 : ulong prio;
1526 : };
1527 : typedef struct fd_vote_authorized_voter_global fd_vote_authorized_voter_global_t;
1528 : #define FD_VOTE_AUTHORIZED_VOTER_GLOBAL_FOOTPRINT sizeof(fd_vote_authorized_voter_global_t)
1529 : #define FD_VOTE_AUTHORIZED_VOTER_GLOBAL_ALIGN (8UL)
1530 :
1531 : /* Encoded Size: Fixed (48 bytes) */
1532 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter {
1533 : fd_pubkey_t pubkey;
1534 : ulong epoch_start;
1535 : ulong epoch_end;
1536 : };
1537 : typedef struct fd_vote_prior_voter fd_vote_prior_voter_t;
1538 0 : #define FD_VOTE_PRIOR_VOTER_FOOTPRINT sizeof(fd_vote_prior_voter_t)
1539 0 : #define FD_VOTE_PRIOR_VOTER_ALIGN (8UL)
1540 :
1541 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_global {
1542 : fd_pubkey_t pubkey;
1543 : ulong epoch_start;
1544 : ulong epoch_end;
1545 : };
1546 : typedef struct fd_vote_prior_voter_global fd_vote_prior_voter_global_t;
1547 : #define FD_VOTE_PRIOR_VOTER_GLOBAL_FOOTPRINT sizeof(fd_vote_prior_voter_global_t)
1548 : #define FD_VOTE_PRIOR_VOTER_GLOBAL_ALIGN (8UL)
1549 :
1550 : /* Encoded Size: Fixed (56 bytes) */
1551 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_0_23_5 {
1552 : fd_pubkey_t pubkey;
1553 : ulong epoch_start;
1554 : ulong epoch_end;
1555 : ulong slot;
1556 : };
1557 : typedef struct fd_vote_prior_voter_0_23_5 fd_vote_prior_voter_0_23_5_t;
1558 0 : #define FD_VOTE_PRIOR_VOTER_0_23_5_FOOTPRINT sizeof(fd_vote_prior_voter_0_23_5_t)
1559 0 : #define FD_VOTE_PRIOR_VOTER_0_23_5_ALIGN (8UL)
1560 :
1561 : struct __attribute__((aligned(8UL))) fd_vote_prior_voter_0_23_5_global {
1562 : fd_pubkey_t pubkey;
1563 : ulong epoch_start;
1564 : ulong epoch_end;
1565 : ulong slot;
1566 : };
1567 : typedef struct fd_vote_prior_voter_0_23_5_global fd_vote_prior_voter_0_23_5_global_t;
1568 : #define FD_VOTE_PRIOR_VOTER_0_23_5_GLOBAL_FOOTPRINT sizeof(fd_vote_prior_voter_0_23_5_global_t)
1569 : #define FD_VOTE_PRIOR_VOTER_0_23_5_GLOBAL_ALIGN (8UL)
1570 :
1571 : /* Encoded Size: Fixed (24 bytes) */
1572 : struct __attribute__((aligned(8UL))) fd_vote_epoch_credits {
1573 : ulong epoch;
1574 : ulong credits;
1575 : ulong prev_credits;
1576 : };
1577 : typedef struct fd_vote_epoch_credits fd_vote_epoch_credits_t;
1578 0 : #define FD_VOTE_EPOCH_CREDITS_FOOTPRINT sizeof(fd_vote_epoch_credits_t)
1579 0 : #define FD_VOTE_EPOCH_CREDITS_ALIGN (8UL)
1580 :
1581 : struct __attribute__((aligned(8UL))) fd_vote_epoch_credits_global {
1582 : ulong epoch;
1583 : ulong credits;
1584 : ulong prev_credits;
1585 : };
1586 : typedef struct fd_vote_epoch_credits_global fd_vote_epoch_credits_global_t;
1587 : #define FD_VOTE_EPOCH_CREDITS_GLOBAL_FOOTPRINT sizeof(fd_vote_epoch_credits_global_t)
1588 : #define FD_VOTE_EPOCH_CREDITS_GLOBAL_ALIGN (8UL)
1589 :
1590 : /* Encoded Size: Fixed (16 bytes) */
1591 : struct __attribute__((aligned(8UL))) fd_vote_block_timestamp {
1592 : ulong slot;
1593 : long timestamp;
1594 : };
1595 : typedef struct fd_vote_block_timestamp fd_vote_block_timestamp_t;
1596 0 : #define FD_VOTE_BLOCK_TIMESTAMP_FOOTPRINT sizeof(fd_vote_block_timestamp_t)
1597 0 : #define FD_VOTE_BLOCK_TIMESTAMP_ALIGN (8UL)
1598 :
1599 : struct __attribute__((aligned(8UL))) fd_vote_block_timestamp_global {
1600 : ulong slot;
1601 : long timestamp;
1602 : };
1603 : typedef struct fd_vote_block_timestamp_global fd_vote_block_timestamp_global_t;
1604 : #define FD_VOTE_BLOCK_TIMESTAMP_GLOBAL_FOOTPRINT sizeof(fd_vote_block_timestamp_global_t)
1605 : #define FD_VOTE_BLOCK_TIMESTAMP_GLOBAL_ALIGN (8UL)
1606 :
1607 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1608 : /* Encoded Size: Fixed (1545 bytes) */
1609 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters {
1610 : fd_vote_prior_voter_t buf[32];
1611 : ulong idx;
1612 : uchar is_empty;
1613 : };
1614 : typedef struct fd_vote_prior_voters fd_vote_prior_voters_t;
1615 0 : #define FD_VOTE_PRIOR_VOTERS_FOOTPRINT sizeof(fd_vote_prior_voters_t)
1616 0 : #define FD_VOTE_PRIOR_VOTERS_ALIGN (8UL)
1617 :
1618 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_global {
1619 : fd_vote_prior_voter_t buf[32];
1620 : ulong idx;
1621 : uchar is_empty;
1622 : };
1623 : typedef struct fd_vote_prior_voters_global fd_vote_prior_voters_global_t;
1624 : #define FD_VOTE_PRIOR_VOTERS_GLOBAL_FOOTPRINT sizeof(fd_vote_prior_voters_global_t)
1625 : #define FD_VOTE_PRIOR_VOTERS_GLOBAL_ALIGN (8UL)
1626 :
1627 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1628 : /* Encoded Size: Fixed (1800 bytes) */
1629 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_0_23_5 {
1630 : fd_vote_prior_voter_0_23_5_t buf[32];
1631 : ulong idx;
1632 : };
1633 : typedef struct fd_vote_prior_voters_0_23_5 fd_vote_prior_voters_0_23_5_t;
1634 0 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_FOOTPRINT sizeof(fd_vote_prior_voters_0_23_5_t)
1635 0 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_ALIGN (8UL)
1636 :
1637 : struct __attribute__((aligned(8UL))) fd_vote_prior_voters_0_23_5_global {
1638 : fd_vote_prior_voter_0_23_5_t buf[32];
1639 : ulong idx;
1640 : };
1641 : typedef struct fd_vote_prior_voters_0_23_5_global fd_vote_prior_voters_0_23_5_global_t;
1642 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_GLOBAL_FOOTPRINT sizeof(fd_vote_prior_voters_0_23_5_global_t)
1643 : #define FD_VOTE_PRIOR_VOTERS_0_23_5_GLOBAL_ALIGN (8UL)
1644 :
1645 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L268 */
1646 : /* Encoded Size: Fixed (13 bytes) */
1647 : struct __attribute__((aligned(8UL))) fd_landed_vote {
1648 : uchar latency;
1649 : fd_vote_lockout_t lockout;
1650 : };
1651 : typedef struct fd_landed_vote fd_landed_vote_t;
1652 0 : #define FD_LANDED_VOTE_FOOTPRINT sizeof(fd_landed_vote_t)
1653 0 : #define FD_LANDED_VOTE_ALIGN (8UL)
1654 :
1655 : struct __attribute__((aligned(8UL))) fd_landed_vote_global {
1656 : uchar latency;
1657 : fd_vote_lockout_t lockout;
1658 : };
1659 : typedef struct fd_landed_vote_global fd_landed_vote_global_t;
1660 : #define FD_LANDED_VOTE_GLOBAL_FOOTPRINT sizeof(fd_landed_vote_global_t)
1661 : #define FD_LANDED_VOTE_GLOBAL_ALIGN (8UL)
1662 :
1663 : #define DEQUE_NAME deq_fd_vote_lockout_t
1664 0 : #define DEQUE_T fd_vote_lockout_t
1665 : #include "../../util/tmpl/fd_deque_dynamic.c"
1666 : #undef DEQUE_NAME
1667 : #undef DEQUE_T
1668 : #undef DEQUE_MAX
1669 : static inline fd_vote_lockout_t *
1670 0 : deq_fd_vote_lockout_t_join_new( void * * alloc_mem, ulong max ) {
1671 0 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1672 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_vote_lockout_t_align() );
1673 0 : void * deque_mem = *alloc_mem;
1674 0 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_vote_lockout_t_footprint( max );
1675 0 : return deq_fd_vote_lockout_t_join( deq_fd_vote_lockout_t_new( deque_mem, max ) );
1676 0 : }
1677 : #define DEQUE_NAME deq_fd_vote_epoch_credits_t
1678 585 : #define DEQUE_T fd_vote_epoch_credits_t
1679 : #include "../../util/tmpl/fd_deque_dynamic.c"
1680 : #undef DEQUE_NAME
1681 : #undef DEQUE_T
1682 : #undef DEQUE_MAX
1683 : static inline fd_vote_epoch_credits_t *
1684 18 : deq_fd_vote_epoch_credits_t_join_new( void * * alloc_mem, ulong max ) {
1685 18 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1686 18 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_vote_epoch_credits_t_align() );
1687 18 : void * deque_mem = *alloc_mem;
1688 18 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_vote_epoch_credits_t_footprint( max );
1689 18 : return deq_fd_vote_epoch_credits_t_join( deq_fd_vote_epoch_credits_t_new( deque_mem, max ) );
1690 18 : }
1691 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/vote_state_0_23_5.rs#L6 */
1692 : /* Encoded Size: Dynamic */
1693 : struct __attribute__((aligned(8UL))) fd_vote_state_0_23_5 {
1694 : fd_pubkey_t node_pubkey;
1695 : fd_pubkey_t authorized_voter;
1696 : ulong authorized_voter_epoch;
1697 : fd_vote_prior_voters_0_23_5_t prior_voters;
1698 : fd_pubkey_t authorized_withdrawer;
1699 : uchar commission;
1700 : fd_vote_lockout_t * votes; /* fd_deque_dynamic (min cnt 32) */
1701 : ulong root_slot;
1702 : uchar has_root_slot;
1703 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1704 : fd_vote_block_timestamp_t last_timestamp;
1705 : };
1706 : typedef struct fd_vote_state_0_23_5 fd_vote_state_0_23_5_t;
1707 0 : #define FD_VOTE_STATE_0_23_5_FOOTPRINT sizeof(fd_vote_state_0_23_5_t)
1708 0 : #define FD_VOTE_STATE_0_23_5_ALIGN (8UL)
1709 :
1710 : struct __attribute__((aligned(8UL))) fd_vote_state_0_23_5_global {
1711 : fd_pubkey_t node_pubkey;
1712 : fd_pubkey_t authorized_voter;
1713 : ulong authorized_voter_epoch;
1714 : fd_vote_prior_voters_0_23_5_t prior_voters;
1715 : fd_pubkey_t authorized_withdrawer;
1716 : uchar commission;
1717 : ulong votes_gaddr; /* fd_deque_dynamic (min cnt 32) */
1718 : ulong root_slot;
1719 : uchar has_root_slot;
1720 : ulong epoch_credits_gaddr; /* fd_deque_dynamic (min cnt 64) */
1721 : fd_vote_block_timestamp_t last_timestamp;
1722 : };
1723 : typedef struct fd_vote_state_0_23_5_global fd_vote_state_0_23_5_global_t;
1724 : #define FD_VOTE_STATE_0_23_5_GLOBAL_FOOTPRINT sizeof(fd_vote_state_0_23_5_global_t)
1725 : #define FD_VOTE_STATE_0_23_5_GLOBAL_ALIGN (8UL)
1726 :
1727 30 : #define FD_VOTE_AUTHORIZED_VOTERS_MIN 64
1728 : #define POOL_NAME fd_vote_authorized_voters_pool
1729 66 : #define POOL_T fd_vote_authorized_voter_t
1730 1194 : #define POOL_NEXT parent
1731 : #include "../../util/tmpl/fd_pool.c"
1732 : static inline fd_vote_authorized_voter_t *
1733 18 : fd_vote_authorized_voters_pool_join_new( void * * alloc_mem, ulong num ) {
1734 18 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
1735 18 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_vote_authorized_voters_pool_align() );
1736 18 : void * pool_mem = *alloc_mem;
1737 18 : *alloc_mem = (uchar *)*alloc_mem + fd_vote_authorized_voters_pool_footprint( num );
1738 18 : return fd_vote_authorized_voters_pool_join( fd_vote_authorized_voters_pool_new( pool_mem, num ) );
1739 18 : }
1740 : #define TREAP_NAME fd_vote_authorized_voters_treap
1741 : #define TREAP_T fd_vote_authorized_voter_t
1742 : #define TREAP_QUERY_T ulong
1743 0 : #define TREAP_CMP(q,e) ( (q == (e)->epoch) ? 0 : ( (q < (e)->epoch) ? -1 : 1 ) )
1744 0 : #define TREAP_LT(e0,e1) ((e0)->epoch<(e1)->epoch)
1745 : #include "../../util/tmpl/fd_treap.c"
1746 : static inline fd_vote_authorized_voters_treap_t *
1747 18 : fd_vote_authorized_voters_treap_join_new( void * * alloc_mem, ulong num ) {
1748 18 : if( FD_UNLIKELY( 0 == num ) ) num = 1; // prevent underflow
1749 18 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_vote_authorized_voters_treap_align() );
1750 18 : void * treap_mem = *alloc_mem;
1751 18 : *alloc_mem = (uchar *)*alloc_mem + fd_vote_authorized_voters_treap_footprint( num );
1752 18 : return fd_vote_authorized_voters_treap_join( fd_vote_authorized_voters_treap_new( treap_mem, num ) );
1753 18 : }
1754 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1755 : /* Encoded Size: Dynamic */
1756 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voters {
1757 : fd_vote_authorized_voter_t * pool;
1758 : fd_vote_authorized_voters_treap_t * treap;
1759 : };
1760 : typedef struct fd_vote_authorized_voters fd_vote_authorized_voters_t;
1761 0 : #define FD_VOTE_AUTHORIZED_VOTERS_FOOTPRINT sizeof(fd_vote_authorized_voters_t)
1762 0 : #define FD_VOTE_AUTHORIZED_VOTERS_ALIGN (8UL)
1763 :
1764 : struct __attribute__((aligned(8UL))) fd_vote_authorized_voters_global {
1765 : ulong pool_gaddr;
1766 : ulong treap_gaddr;
1767 : };
1768 : typedef struct fd_vote_authorized_voters_global fd_vote_authorized_voters_global_t;
1769 : #define FD_VOTE_AUTHORIZED_VOTERS_GLOBAL_FOOTPRINT sizeof(fd_vote_authorized_voters_global_t)
1770 : #define FD_VOTE_AUTHORIZED_VOTERS_GLOBAL_ALIGN (8UL)
1771 :
1772 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1773 : /* Encoded Size: Dynamic */
1774 : struct __attribute__((aligned(8UL))) fd_vote_state_1_14_11 {
1775 : fd_pubkey_t node_pubkey;
1776 : fd_pubkey_t authorized_withdrawer;
1777 : uchar commission;
1778 : fd_vote_lockout_t * votes; /* fd_deque_dynamic (min cnt 32) */
1779 : ulong root_slot;
1780 : uchar has_root_slot;
1781 : fd_vote_authorized_voters_t authorized_voters;
1782 : fd_vote_prior_voters_t prior_voters;
1783 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1784 : fd_vote_block_timestamp_t last_timestamp;
1785 : };
1786 : typedef struct fd_vote_state_1_14_11 fd_vote_state_1_14_11_t;
1787 0 : #define FD_VOTE_STATE_1_14_11_FOOTPRINT sizeof(fd_vote_state_1_14_11_t)
1788 0 : #define FD_VOTE_STATE_1_14_11_ALIGN (8UL)
1789 :
1790 : struct __attribute__((aligned(8UL))) fd_vote_state_1_14_11_global {
1791 : fd_pubkey_t node_pubkey;
1792 : fd_pubkey_t authorized_withdrawer;
1793 : uchar commission;
1794 : ulong votes_gaddr; /* fd_deque_dynamic (min cnt 32) */
1795 : ulong root_slot;
1796 : uchar has_root_slot;
1797 : fd_vote_authorized_voters_global_t authorized_voters;
1798 : fd_vote_prior_voters_t prior_voters;
1799 : ulong epoch_credits_gaddr; /* fd_deque_dynamic (min cnt 64) */
1800 : fd_vote_block_timestamp_t last_timestamp;
1801 : };
1802 : typedef struct fd_vote_state_1_14_11_global fd_vote_state_1_14_11_global_t;
1803 : #define FD_VOTE_STATE_1_14_11_GLOBAL_FOOTPRINT sizeof(fd_vote_state_1_14_11_global_t)
1804 : #define FD_VOTE_STATE_1_14_11_GLOBAL_ALIGN (8UL)
1805 :
1806 : #define DEQUE_NAME deq_fd_landed_vote_t
1807 288 : #define DEQUE_T fd_landed_vote_t
1808 : #include "../../util/tmpl/fd_deque_dynamic.c"
1809 : #undef DEQUE_NAME
1810 : #undef DEQUE_T
1811 : #undef DEQUE_MAX
1812 : static inline fd_landed_vote_t *
1813 18 : deq_fd_landed_vote_t_join_new( void * * alloc_mem, ulong max ) {
1814 18 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1815 18 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_landed_vote_t_align() );
1816 18 : void * deque_mem = *alloc_mem;
1817 18 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_landed_vote_t_footprint( max );
1818 18 : return deq_fd_landed_vote_t_join( deq_fd_landed_vote_t_new( deque_mem, max ) );
1819 18 : }
1820 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L310 */
1821 : /* Encoded Size: Dynamic */
1822 : struct __attribute__((aligned(8UL))) fd_vote_state {
1823 : fd_pubkey_t node_pubkey;
1824 : fd_pubkey_t authorized_withdrawer;
1825 : uchar commission;
1826 : fd_landed_vote_t * votes; /* fd_deque_dynamic (min cnt 32) */
1827 : ulong root_slot;
1828 : uchar has_root_slot;
1829 : fd_vote_authorized_voters_t authorized_voters;
1830 : fd_vote_prior_voters_t prior_voters;
1831 : fd_vote_epoch_credits_t * epoch_credits; /* fd_deque_dynamic (min cnt 64) */
1832 : fd_vote_block_timestamp_t last_timestamp;
1833 : };
1834 : typedef struct fd_vote_state fd_vote_state_t;
1835 0 : #define FD_VOTE_STATE_FOOTPRINT sizeof(fd_vote_state_t)
1836 0 : #define FD_VOTE_STATE_ALIGN (8UL)
1837 :
1838 : struct __attribute__((aligned(8UL))) fd_vote_state_global {
1839 : fd_pubkey_t node_pubkey;
1840 : fd_pubkey_t authorized_withdrawer;
1841 : uchar commission;
1842 : ulong votes_gaddr; /* fd_deque_dynamic (min cnt 32) */
1843 : ulong root_slot;
1844 : uchar has_root_slot;
1845 : fd_vote_authorized_voters_global_t authorized_voters;
1846 : fd_vote_prior_voters_t prior_voters;
1847 : ulong epoch_credits_gaddr; /* fd_deque_dynamic (min cnt 64) */
1848 : fd_vote_block_timestamp_t last_timestamp;
1849 : };
1850 : typedef struct fd_vote_state_global fd_vote_state_global_t;
1851 : #define FD_VOTE_STATE_GLOBAL_FOOTPRINT sizeof(fd_vote_state_global_t)
1852 : #define FD_VOTE_STATE_GLOBAL_ALIGN (8UL)
1853 :
1854 : union fd_vote_state_versioned_inner {
1855 : fd_vote_state_0_23_5_t v0_23_5;
1856 : fd_vote_state_1_14_11_t v1_14_11;
1857 : fd_vote_state_t current;
1858 : };
1859 : typedef union fd_vote_state_versioned_inner fd_vote_state_versioned_inner_t;
1860 :
1861 : union fd_vote_state_versioned_inner_global {
1862 : fd_vote_state_0_23_5_global_t v0_23_5;
1863 : fd_vote_state_1_14_11_global_t v1_14_11;
1864 : fd_vote_state_global_t current;
1865 : };
1866 : typedef union fd_vote_state_versioned_inner_global fd_vote_state_versioned_inner_global_t;
1867 :
1868 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/vote_state_versions.rs#L4 */
1869 : struct fd_vote_state_versioned {
1870 : uint discriminant;
1871 : fd_vote_state_versioned_inner_t inner;
1872 : };
1873 : typedef struct fd_vote_state_versioned fd_vote_state_versioned_t;
1874 6 : #define FD_VOTE_STATE_VERSIONED_FOOTPRINT sizeof(fd_vote_state_versioned_t)
1875 30 : #define FD_VOTE_STATE_VERSIONED_ALIGN (8UL)
1876 : struct fd_vote_state_versioned_global {
1877 : uint discriminant;
1878 : fd_vote_state_versioned_inner_global_t inner;
1879 : };
1880 : typedef struct fd_vote_state_versioned_global fd_vote_state_versioned_global_t;
1881 : #define FD_VOTE_STATE_VERSIONED_GLOBAL_FOOTPRINT sizeof(fd_vote_state_versioned_global_t)
1882 : #define FD_VOTE_STATE_VERSIONED_GLOBAL_ALIGN (8UL)
1883 :
1884 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L185 */
1885 : /* Encoded Size: Dynamic */
1886 : struct __attribute__((aligned(8UL))) fd_vote_state_update {
1887 : fd_vote_lockout_t * lockouts; /* fd_deque_dynamic (min cnt 32) */
1888 : ulong root;
1889 : uchar has_root;
1890 : fd_hash_t hash;
1891 : long timestamp;
1892 : uchar has_timestamp;
1893 : };
1894 : typedef struct fd_vote_state_update fd_vote_state_update_t;
1895 0 : #define FD_VOTE_STATE_UPDATE_FOOTPRINT sizeof(fd_vote_state_update_t)
1896 0 : #define FD_VOTE_STATE_UPDATE_ALIGN (8UL)
1897 :
1898 : struct __attribute__((aligned(8UL))) fd_vote_state_update_global {
1899 : ulong lockouts_gaddr; /* fd_deque_dynamic (min cnt 32) */
1900 : ulong root;
1901 : uchar has_root;
1902 : fd_hash_t hash;
1903 : long timestamp;
1904 : uchar has_timestamp;
1905 : };
1906 : typedef struct fd_vote_state_update_global fd_vote_state_update_global_t;
1907 : #define FD_VOTE_STATE_UPDATE_GLOBAL_FOOTPRINT sizeof(fd_vote_state_update_global_t)
1908 : #define FD_VOTE_STATE_UPDATE_GLOBAL_ALIGN (8UL)
1909 :
1910 : /* Encoded Size: Dynamic */
1911 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update {
1912 : ulong root;
1913 : ushort lockouts_len;
1914 : fd_lockout_offset_t * lockouts;
1915 : fd_hash_t hash;
1916 : long timestamp;
1917 : uchar has_timestamp;
1918 : };
1919 : typedef struct fd_compact_vote_state_update fd_compact_vote_state_update_t;
1920 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_FOOTPRINT sizeof(fd_compact_vote_state_update_t)
1921 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_ALIGN (8UL)
1922 :
1923 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_global {
1924 : ulong root;
1925 : ushort lockouts_len;
1926 : ulong lockouts_gaddr;
1927 : fd_hash_t hash;
1928 : long timestamp;
1929 : uchar has_timestamp;
1930 : };
1931 : typedef struct fd_compact_vote_state_update_global fd_compact_vote_state_update_global_t;
1932 : #define FD_COMPACT_VOTE_STATE_UPDATE_GLOBAL_FOOTPRINT sizeof(fd_compact_vote_state_update_global_t)
1933 : #define FD_COMPACT_VOTE_STATE_UPDATE_GLOBAL_ALIGN (8UL)
1934 :
1935 : /* https://github.com/solana-labs/solana/blob/252438e28fbfb2c695fe1215171b83456e4b761c/programs/vote/src/vote_instruction.rs#L143 */
1936 : /* Encoded Size: Dynamic */
1937 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_switch {
1938 : fd_compact_vote_state_update_t compact_vote_state_update;
1939 : fd_hash_t hash;
1940 : };
1941 : typedef struct fd_compact_vote_state_update_switch fd_compact_vote_state_update_switch_t;
1942 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_FOOTPRINT sizeof(fd_compact_vote_state_update_switch_t)
1943 0 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_ALIGN (8UL)
1944 :
1945 : struct __attribute__((aligned(8UL))) fd_compact_vote_state_update_switch_global {
1946 : fd_compact_vote_state_update_global_t compact_vote_state_update;
1947 : fd_hash_t hash;
1948 : };
1949 : typedef struct fd_compact_vote_state_update_switch_global fd_compact_vote_state_update_switch_global_t;
1950 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_GLOBAL_FOOTPRINT sizeof(fd_compact_vote_state_update_switch_global_t)
1951 : #define FD_COMPACT_VOTE_STATE_UPDATE_SWITCH_GLOBAL_ALIGN (8UL)
1952 :
1953 : #define DEQUE_NAME deq_fd_lockout_offset_t
1954 0 : #define DEQUE_T fd_lockout_offset_t
1955 : #include "../../util/tmpl/fd_deque_dynamic.c"
1956 : #undef DEQUE_NAME
1957 : #undef DEQUE_T
1958 : #undef DEQUE_MAX
1959 : static inline fd_lockout_offset_t *
1960 0 : deq_fd_lockout_offset_t_join_new( void * * alloc_mem, ulong max ) {
1961 0 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
1962 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_lockout_offset_t_align() );
1963 0 : void * deque_mem = *alloc_mem;
1964 0 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_lockout_offset_t_footprint( max );
1965 0 : return deq_fd_lockout_offset_t_join( deq_fd_lockout_offset_t_new( deque_mem, max ) );
1966 0 : }
1967 : /* https://github.com/anza-xyz/agave/blob/20ee70cd1829cd414d09040460defecf9792a370/sdk/program/src/vote/state/mod.rs#L990 */
1968 : /* Encoded Size: Dynamic */
1969 : struct __attribute__((aligned(8UL))) fd_compact_tower_sync {
1970 : ulong root;
1971 : fd_lockout_offset_t * lockout_offsets; /* fd_deque_dynamic (min cnt 32) */
1972 : fd_hash_t hash;
1973 : long timestamp;
1974 : uchar has_timestamp;
1975 : fd_hash_t block_id;
1976 : };
1977 : typedef struct fd_compact_tower_sync fd_compact_tower_sync_t;
1978 0 : #define FD_COMPACT_TOWER_SYNC_FOOTPRINT sizeof(fd_compact_tower_sync_t)
1979 0 : #define FD_COMPACT_TOWER_SYNC_ALIGN (8UL)
1980 :
1981 : struct __attribute__((aligned(8UL))) fd_compact_tower_sync_global {
1982 : ulong root;
1983 : ulong lockout_offsets_gaddr; /* fd_deque_dynamic (min cnt 32) */
1984 : fd_hash_t hash;
1985 : long timestamp;
1986 : uchar has_timestamp;
1987 : fd_hash_t block_id;
1988 : };
1989 : typedef struct fd_compact_tower_sync_global fd_compact_tower_sync_global_t;
1990 : #define FD_COMPACT_TOWER_SYNC_GLOBAL_FOOTPRINT sizeof(fd_compact_tower_sync_global_t)
1991 : #define FD_COMPACT_TOWER_SYNC_GLOBAL_ALIGN (8UL)
1992 :
1993 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L185 */
1994 : /* Encoded Size: Dynamic */
1995 : struct __attribute__((aligned(8UL))) fd_tower_sync {
1996 : fd_vote_lockout_t * lockouts; /* fd_deque_dynamic */
1997 : ulong lockouts_cnt;
1998 : ulong root;
1999 : uchar has_root;
2000 : fd_hash_t hash;
2001 : long timestamp;
2002 : uchar has_timestamp;
2003 : fd_hash_t block_id;
2004 : };
2005 : typedef struct fd_tower_sync fd_tower_sync_t;
2006 0 : #define FD_TOWER_SYNC_FOOTPRINT sizeof(fd_tower_sync_t)
2007 0 : #define FD_TOWER_SYNC_ALIGN (8UL)
2008 :
2009 : struct __attribute__((aligned(8UL))) fd_tower_sync_global {
2010 : ulong lockouts_gaddr; /* fd_deque_dynamic */
2011 : ulong lockouts_cnt;
2012 : ulong root;
2013 : uchar has_root;
2014 : fd_hash_t hash;
2015 : long timestamp;
2016 : uchar has_timestamp;
2017 : fd_hash_t block_id;
2018 : };
2019 : typedef struct fd_tower_sync_global fd_tower_sync_global_t;
2020 : #define FD_TOWER_SYNC_GLOBAL_FOOTPRINT sizeof(fd_tower_sync_global_t)
2021 : #define FD_TOWER_SYNC_GLOBAL_ALIGN (8UL)
2022 :
2023 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L104 */
2024 : /* Encoded Size: Dynamic */
2025 : struct __attribute__((aligned(8UL))) fd_tower_sync_switch {
2026 : fd_tower_sync_t tower_sync;
2027 : fd_hash_t hash;
2028 : };
2029 : typedef struct fd_tower_sync_switch fd_tower_sync_switch_t;
2030 0 : #define FD_TOWER_SYNC_SWITCH_FOOTPRINT sizeof(fd_tower_sync_switch_t)
2031 0 : #define FD_TOWER_SYNC_SWITCH_ALIGN (8UL)
2032 :
2033 : struct __attribute__((aligned(8UL))) fd_tower_sync_switch_global {
2034 : fd_tower_sync_global_t tower_sync;
2035 : fd_hash_t hash;
2036 : };
2037 : typedef struct fd_tower_sync_switch_global fd_tower_sync_switch_global_t;
2038 : #define FD_TOWER_SYNC_SWITCH_GLOBAL_FOOTPRINT sizeof(fd_tower_sync_switch_global_t)
2039 : #define FD_TOWER_SYNC_SWITCH_GLOBAL_ALIGN (8UL)
2040 :
2041 : /* Encoded Size: Dynamic */
2042 : struct __attribute__((aligned(8UL))) fd_slot_history_inner {
2043 : ulong blocks_len;
2044 : ulong* blocks;
2045 : };
2046 : typedef struct fd_slot_history_inner fd_slot_history_inner_t;
2047 0 : #define FD_SLOT_HISTORY_INNER_FOOTPRINT sizeof(fd_slot_history_inner_t)
2048 0 : #define FD_SLOT_HISTORY_INNER_ALIGN (8UL)
2049 :
2050 : struct __attribute__((aligned(8UL))) fd_slot_history_inner_global {
2051 : ulong blocks_len;
2052 : ulong blocks_gaddr;
2053 : };
2054 : typedef struct fd_slot_history_inner_global fd_slot_history_inner_global_t;
2055 : #define FD_SLOT_HISTORY_INNER_GLOBAL_FOOTPRINT sizeof(fd_slot_history_inner_global_t)
2056 : #define FD_SLOT_HISTORY_INNER_GLOBAL_ALIGN (8UL)
2057 :
2058 : /* https://github.com/tov/bv-rs/blob/107be3e9c45324e55844befa4c4239d4d3d092c6/src/bit_vec/inner.rs#L8 */
2059 : /* Encoded Size: Dynamic */
2060 : struct __attribute__((aligned(8UL))) fd_slot_history_bitvec {
2061 : fd_slot_history_inner_t * bits;
2062 : ulong len;
2063 : };
2064 : typedef struct fd_slot_history_bitvec fd_slot_history_bitvec_t;
2065 0 : #define FD_SLOT_HISTORY_BITVEC_FOOTPRINT sizeof(fd_slot_history_bitvec_t)
2066 0 : #define FD_SLOT_HISTORY_BITVEC_ALIGN (8UL)
2067 :
2068 : struct __attribute__((aligned(8UL))) fd_slot_history_bitvec_global {
2069 : ulong bits_gaddr;
2070 : ulong len;
2071 : };
2072 : typedef struct fd_slot_history_bitvec_global fd_slot_history_bitvec_global_t;
2073 : #define FD_SLOT_HISTORY_BITVEC_GLOBAL_FOOTPRINT sizeof(fd_slot_history_bitvec_global_t)
2074 : #define FD_SLOT_HISTORY_BITVEC_GLOBAL_ALIGN (8UL)
2075 :
2076 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/slot_history.rs#L11 */
2077 : /* Encoded Size: Dynamic */
2078 : struct __attribute__((aligned(8UL))) fd_slot_history {
2079 : fd_slot_history_bitvec_t bits;
2080 : ulong next_slot;
2081 : };
2082 : typedef struct fd_slot_history fd_slot_history_t;
2083 0 : #define FD_SLOT_HISTORY_FOOTPRINT sizeof(fd_slot_history_t)
2084 0 : #define FD_SLOT_HISTORY_ALIGN (8UL)
2085 :
2086 : struct __attribute__((aligned(8UL))) fd_slot_history_global {
2087 : fd_slot_history_bitvec_global_t bits;
2088 : ulong next_slot;
2089 : };
2090 : typedef struct fd_slot_history_global fd_slot_history_global_t;
2091 : #define FD_SLOT_HISTORY_GLOBAL_FOOTPRINT sizeof(fd_slot_history_global_t)
2092 : #define FD_SLOT_HISTORY_GLOBAL_ALIGN (8UL)
2093 :
2094 : /* Encoded Size: Fixed (40 bytes) */
2095 : struct __attribute__((aligned(8UL))) fd_slot_hash {
2096 : ulong slot;
2097 : fd_hash_t hash;
2098 : };
2099 : typedef struct fd_slot_hash fd_slot_hash_t;
2100 6 : #define FD_SLOT_HASH_FOOTPRINT sizeof(fd_slot_hash_t)
2101 6 : #define FD_SLOT_HASH_ALIGN (8UL)
2102 :
2103 : struct __attribute__((aligned(8UL))) fd_slot_hash_global {
2104 : ulong slot;
2105 : fd_hash_t hash;
2106 : };
2107 : typedef struct fd_slot_hash_global fd_slot_hash_global_t;
2108 : #define FD_SLOT_HASH_GLOBAL_FOOTPRINT sizeof(fd_slot_hash_global_t)
2109 : #define FD_SLOT_HASH_GLOBAL_ALIGN (8UL)
2110 :
2111 : #define DEQUE_NAME deq_fd_slot_hash_t
2112 0 : #define DEQUE_T fd_slot_hash_t
2113 : #include "../../util/tmpl/fd_deque_dynamic.c"
2114 : #undef DEQUE_NAME
2115 : #undef DEQUE_T
2116 : #undef DEQUE_MAX
2117 : static inline fd_slot_hash_t *
2118 0 : deq_fd_slot_hash_t_join_new( void * * alloc_mem, ulong max ) {
2119 0 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2120 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_slot_hash_t_align() );
2121 0 : void * deque_mem = *alloc_mem;
2122 0 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_slot_hash_t_footprint( max );
2123 0 : return deq_fd_slot_hash_t_join( deq_fd_slot_hash_t_new( deque_mem, max ) );
2124 0 : }
2125 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/slot_hashes.rs#L31 */
2126 : /* Encoded Size: Dynamic */
2127 : struct __attribute__((aligned(8UL))) fd_slot_hashes {
2128 : fd_slot_hash_t * hashes; /* fd_deque_dynamic (min cnt 512) */
2129 : };
2130 : typedef struct fd_slot_hashes fd_slot_hashes_t;
2131 0 : #define FD_SLOT_HASHES_FOOTPRINT sizeof(fd_slot_hashes_t)
2132 0 : #define FD_SLOT_HASHES_ALIGN (8UL)
2133 :
2134 : struct __attribute__((aligned(8UL))) fd_slot_hashes_global {
2135 : ulong hashes_gaddr; /* fd_deque_dynamic (min cnt 512) */
2136 : };
2137 : typedef struct fd_slot_hashes_global fd_slot_hashes_global_t;
2138 : #define FD_SLOT_HASHES_GLOBAL_FOOTPRINT sizeof(fd_slot_hashes_global_t)
2139 : #define FD_SLOT_HASHES_GLOBAL_ALIGN (8UL)
2140 :
2141 : /* Encoded Size: Fixed (40 bytes) */
2142 : struct __attribute__((aligned(8UL))) fd_block_block_hash_entry {
2143 : fd_hash_t blockhash;
2144 : fd_fee_calculator_t fee_calculator;
2145 : };
2146 : typedef struct fd_block_block_hash_entry fd_block_block_hash_entry_t;
2147 0 : #define FD_BLOCK_BLOCK_HASH_ENTRY_FOOTPRINT sizeof(fd_block_block_hash_entry_t)
2148 0 : #define FD_BLOCK_BLOCK_HASH_ENTRY_ALIGN (8UL)
2149 :
2150 : struct __attribute__((aligned(8UL))) fd_block_block_hash_entry_global {
2151 : fd_hash_t blockhash;
2152 : fd_fee_calculator_t fee_calculator;
2153 : };
2154 : typedef struct fd_block_block_hash_entry_global fd_block_block_hash_entry_global_t;
2155 : #define FD_BLOCK_BLOCK_HASH_ENTRY_GLOBAL_FOOTPRINT sizeof(fd_block_block_hash_entry_global_t)
2156 : #define FD_BLOCK_BLOCK_HASH_ENTRY_GLOBAL_ALIGN (8UL)
2157 :
2158 : #define DEQUE_NAME deq_fd_block_block_hash_entry_t
2159 0 : #define DEQUE_T fd_block_block_hash_entry_t
2160 : #include "../../util/tmpl/fd_deque_dynamic.c"
2161 : #undef DEQUE_NAME
2162 : #undef DEQUE_T
2163 : #undef DEQUE_MAX
2164 : static inline fd_block_block_hash_entry_t *
2165 0 : deq_fd_block_block_hash_entry_t_join_new( void * * alloc_mem, ulong max ) {
2166 0 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2167 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_fd_block_block_hash_entry_t_align() );
2168 0 : void * deque_mem = *alloc_mem;
2169 0 : *alloc_mem = (uchar *)*alloc_mem + deq_fd_block_block_hash_entry_t_footprint( max );
2170 0 : return deq_fd_block_block_hash_entry_t_join( deq_fd_block_block_hash_entry_t_new( deque_mem, max ) );
2171 0 : }
2172 : /* Encoded Size: Dynamic */
2173 : struct __attribute__((aligned(8UL))) fd_recent_block_hashes {
2174 : fd_block_block_hash_entry_t * hashes; /* fd_deque_dynamic (min cnt 151) */
2175 : };
2176 : typedef struct fd_recent_block_hashes fd_recent_block_hashes_t;
2177 0 : #define FD_RECENT_BLOCK_HASHES_FOOTPRINT sizeof(fd_recent_block_hashes_t)
2178 0 : #define FD_RECENT_BLOCK_HASHES_ALIGN (8UL)
2179 :
2180 : struct __attribute__((aligned(8UL))) fd_recent_block_hashes_global {
2181 : ulong hashes_gaddr; /* fd_deque_dynamic (min cnt 151) */
2182 : };
2183 : typedef struct fd_recent_block_hashes_global fd_recent_block_hashes_global_t;
2184 : #define FD_RECENT_BLOCK_HASHES_GLOBAL_FOOTPRINT sizeof(fd_recent_block_hashes_global_t)
2185 : #define FD_RECENT_BLOCK_HASHES_GLOBAL_ALIGN (8UL)
2186 :
2187 : /* Encoded Size: Dynamic */
2188 : struct __attribute__((aligned(8UL))) fd_slot_meta {
2189 : ulong slot;
2190 : ulong consumed;
2191 : ulong received;
2192 : long first_shred_timestamp;
2193 : ulong last_index;
2194 : ulong parent_slot;
2195 : ulong next_slot_len;
2196 : ulong* next_slot;
2197 : uchar is_connected;
2198 : ulong entry_end_indexes_len;
2199 : uint* entry_end_indexes;
2200 : };
2201 : typedef struct fd_slot_meta fd_slot_meta_t;
2202 0 : #define FD_SLOT_META_FOOTPRINT sizeof(fd_slot_meta_t)
2203 0 : #define FD_SLOT_META_ALIGN (8UL)
2204 :
2205 : struct __attribute__((aligned(8UL))) fd_slot_meta_global {
2206 : ulong slot;
2207 : ulong consumed;
2208 : ulong received;
2209 : long first_shred_timestamp;
2210 : ulong last_index;
2211 : ulong parent_slot;
2212 : ulong next_slot_len;
2213 : ulong next_slot_gaddr;
2214 : uchar is_connected;
2215 : ulong entry_end_indexes_len;
2216 : ulong entry_end_indexes_gaddr;
2217 : };
2218 : typedef struct fd_slot_meta_global fd_slot_meta_global_t;
2219 : #define FD_SLOT_META_GLOBAL_FOOTPRINT sizeof(fd_slot_meta_global_t)
2220 : #define FD_SLOT_META_GLOBAL_ALIGN (8UL)
2221 :
2222 : /* A validator timestamp oracle vote received from a voting node */
2223 : /* Encoded Size: Fixed (48 bytes) */
2224 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_vote {
2225 : fd_pubkey_t pubkey;
2226 : long timestamp;
2227 : ulong slot;
2228 : };
2229 : typedef struct fd_clock_timestamp_vote fd_clock_timestamp_vote_t;
2230 0 : #define FD_CLOCK_TIMESTAMP_VOTE_FOOTPRINT sizeof(fd_clock_timestamp_vote_t)
2231 0 : #define FD_CLOCK_TIMESTAMP_VOTE_ALIGN (8UL)
2232 :
2233 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_vote_global {
2234 : fd_pubkey_t pubkey;
2235 : long timestamp;
2236 : ulong slot;
2237 : };
2238 : typedef struct fd_clock_timestamp_vote_global fd_clock_timestamp_vote_global_t;
2239 : #define FD_CLOCK_TIMESTAMP_VOTE_GLOBAL_FOOTPRINT sizeof(fd_clock_timestamp_vote_global_t)
2240 : #define FD_CLOCK_TIMESTAMP_VOTE_GLOBAL_ALIGN (8UL)
2241 :
2242 : typedef struct fd_clock_timestamp_vote_t_mapnode fd_clock_timestamp_vote_t_mapnode_t;
2243 : #define REDBLK_T fd_clock_timestamp_vote_t_mapnode_t
2244 : #define REDBLK_NAME fd_clock_timestamp_vote_t_map
2245 : #define REDBLK_IMPL_STYLE 1
2246 : #include "../../util/tmpl/fd_redblack.c"
2247 : struct fd_clock_timestamp_vote_t_mapnode {
2248 : fd_clock_timestamp_vote_t elem;
2249 : ulong redblack_parent;
2250 : ulong redblack_left;
2251 : ulong redblack_right;
2252 : int redblack_color;
2253 : };
2254 : static inline fd_clock_timestamp_vote_t_mapnode_t *
2255 9 : fd_clock_timestamp_vote_t_map_join_new( void * * alloc_mem, ulong len ) {
2256 9 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
2257 9 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_clock_timestamp_vote_t_map_align() );
2258 9 : void * map_mem = *alloc_mem;
2259 9 : *alloc_mem = (uchar *)*alloc_mem + fd_clock_timestamp_vote_t_map_footprint( len );
2260 9 : return fd_clock_timestamp_vote_t_map_join( fd_clock_timestamp_vote_t_map_new( map_mem, len ) );
2261 9 : }
2262 : /* Validator timestamp oracle votes received from voting nodes. TODO: make this a map */
2263 : /* Encoded Size: Dynamic */
2264 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_votes {
2265 : fd_clock_timestamp_vote_t_mapnode_t * votes_pool;
2266 : fd_clock_timestamp_vote_t_mapnode_t * votes_root;
2267 : };
2268 : typedef struct fd_clock_timestamp_votes fd_clock_timestamp_votes_t;
2269 0 : #define FD_CLOCK_TIMESTAMP_VOTES_FOOTPRINT sizeof(fd_clock_timestamp_votes_t)
2270 0 : #define FD_CLOCK_TIMESTAMP_VOTES_ALIGN (8UL)
2271 :
2272 : struct __attribute__((aligned(8UL))) fd_clock_timestamp_votes_global {
2273 : ulong votes_pool_gaddr;
2274 : ulong votes_root_gaddr;
2275 : };
2276 : typedef struct fd_clock_timestamp_votes_global fd_clock_timestamp_votes_global_t;
2277 : #define FD_CLOCK_TIMESTAMP_VOTES_GLOBAL_FOOTPRINT sizeof(fd_clock_timestamp_votes_global_t)
2278 : #define FD_CLOCK_TIMESTAMP_VOTES_GLOBAL_ALIGN (8UL)
2279 :
2280 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/sysvar/fees.rs#L21 */
2281 : /* Encoded Size: Fixed (8 bytes) */
2282 : struct __attribute__((aligned(8UL))) fd_sysvar_fees {
2283 : fd_fee_calculator_t fee_calculator;
2284 : };
2285 : typedef struct fd_sysvar_fees fd_sysvar_fees_t;
2286 0 : #define FD_SYSVAR_FEES_FOOTPRINT sizeof(fd_sysvar_fees_t)
2287 0 : #define FD_SYSVAR_FEES_ALIGN (8UL)
2288 :
2289 : struct __attribute__((aligned(8UL))) fd_sysvar_fees_global {
2290 : fd_fee_calculator_t fee_calculator;
2291 : };
2292 : typedef struct fd_sysvar_fees_global fd_sysvar_fees_global_t;
2293 : #define FD_SYSVAR_FEES_GLOBAL_FOOTPRINT sizeof(fd_sysvar_fees_global_t)
2294 : #define FD_SYSVAR_FEES_GLOBAL_ALIGN (8UL)
2295 :
2296 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/sdk/program/src/epoch_rewards.rs#L14 */
2297 : /* Encoded Size: Fixed (81 bytes) */
2298 : struct __attribute__((aligned(16UL))) fd_sysvar_epoch_rewards {
2299 : ulong distribution_starting_block_height;
2300 : ulong num_partitions;
2301 : fd_hash_t parent_blockhash;
2302 : uint128 total_points;
2303 : ulong total_rewards;
2304 : ulong distributed_rewards;
2305 : uchar active;
2306 : };
2307 : typedef struct fd_sysvar_epoch_rewards fd_sysvar_epoch_rewards_t;
2308 0 : #define FD_SYSVAR_EPOCH_REWARDS_FOOTPRINT sizeof(fd_sysvar_epoch_rewards_t)
2309 0 : #define FD_SYSVAR_EPOCH_REWARDS_ALIGN (16UL)
2310 :
2311 : struct __attribute__((aligned(16UL))) fd_sysvar_epoch_rewards_global {
2312 : ulong distribution_starting_block_height;
2313 : ulong num_partitions;
2314 : fd_hash_t parent_blockhash;
2315 : uint128 total_points;
2316 : ulong total_rewards;
2317 : ulong distributed_rewards;
2318 : uchar active;
2319 : };
2320 : typedef struct fd_sysvar_epoch_rewards_global fd_sysvar_epoch_rewards_global_t;
2321 : #define FD_SYSVAR_EPOCH_REWARDS_GLOBAL_FOOTPRINT sizeof(fd_sysvar_epoch_rewards_global_t)
2322 : #define FD_SYSVAR_EPOCH_REWARDS_GLOBAL_ALIGN (16UL)
2323 :
2324 : /* Encoded Size: Fixed (33 bytes) */
2325 : struct __attribute__((aligned(8UL))) fd_config_keys_pair {
2326 : fd_pubkey_t key;
2327 : uchar signer;
2328 : };
2329 : typedef struct fd_config_keys_pair fd_config_keys_pair_t;
2330 0 : #define FD_CONFIG_KEYS_PAIR_FOOTPRINT sizeof(fd_config_keys_pair_t)
2331 0 : #define FD_CONFIG_KEYS_PAIR_ALIGN (8UL)
2332 :
2333 : struct __attribute__((aligned(8UL))) fd_config_keys_pair_global {
2334 : fd_pubkey_t key;
2335 : uchar signer;
2336 : };
2337 : typedef struct fd_config_keys_pair_global fd_config_keys_pair_global_t;
2338 : #define FD_CONFIG_KEYS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_config_keys_pair_global_t)
2339 : #define FD_CONFIG_KEYS_PAIR_GLOBAL_ALIGN (8UL)
2340 :
2341 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/config.rs#L14 */
2342 : /* Encoded Size: Dynamic */
2343 : struct __attribute__((aligned(8UL))) fd_stake_config {
2344 : ushort config_keys_len;
2345 : fd_config_keys_pair_t * config_keys;
2346 : double warmup_cooldown_rate;
2347 : uchar slash_penalty;
2348 : };
2349 : typedef struct fd_stake_config fd_stake_config_t;
2350 0 : #define FD_STAKE_CONFIG_FOOTPRINT sizeof(fd_stake_config_t)
2351 0 : #define FD_STAKE_CONFIG_ALIGN (8UL)
2352 :
2353 : struct __attribute__((aligned(8UL))) fd_stake_config_global {
2354 : ushort config_keys_len;
2355 : ulong config_keys_gaddr;
2356 : double warmup_cooldown_rate;
2357 : uchar slash_penalty;
2358 : };
2359 : typedef struct fd_stake_config_global fd_stake_config_global_t;
2360 : #define FD_STAKE_CONFIG_GLOBAL_FOOTPRINT sizeof(fd_stake_config_global_t)
2361 : #define FD_STAKE_CONFIG_GLOBAL_ALIGN (8UL)
2362 :
2363 : /* Encoded Size: Dynamic */
2364 : struct __attribute__((aligned(8UL))) fd_feature_entry {
2365 : fd_pubkey_t pubkey;
2366 : ulong description_len;
2367 : uchar* description;
2368 : ulong since_slot;
2369 : };
2370 : typedef struct fd_feature_entry fd_feature_entry_t;
2371 0 : #define FD_FEATURE_ENTRY_FOOTPRINT sizeof(fd_feature_entry_t)
2372 0 : #define FD_FEATURE_ENTRY_ALIGN (8UL)
2373 :
2374 : struct __attribute__((aligned(8UL))) fd_feature_entry_global {
2375 : fd_pubkey_t pubkey;
2376 : ulong description_len;
2377 : ulong description_gaddr;
2378 : ulong since_slot;
2379 : };
2380 : typedef struct fd_feature_entry_global fd_feature_entry_global_t;
2381 : #define FD_FEATURE_ENTRY_GLOBAL_FOOTPRINT sizeof(fd_feature_entry_global_t)
2382 : #define FD_FEATURE_ENTRY_GLOBAL_ALIGN (8UL)
2383 :
2384 : /* Encoded Size: Dynamic */
2385 : struct __attribute__((aligned(16UL))) fd_firedancer_bank {
2386 : fd_stakes_t stakes;
2387 : fd_recent_block_hashes_t recent_block_hashes;
2388 : fd_clock_timestamp_votes_t timestamp_votes;
2389 : ulong slot;
2390 : ulong prev_slot;
2391 : fd_hash_t poh;
2392 : fd_hash_t banks_hash;
2393 : fd_fee_rate_governor_t fee_rate_governor;
2394 : ulong capitalization;
2395 : ulong block_height;
2396 : ulong lamports_per_signature;
2397 : ulong hashes_per_tick;
2398 : ulong ticks_per_slot;
2399 : uint128 ns_per_slot;
2400 : ulong genesis_creation_time;
2401 : double slots_per_year;
2402 : ulong max_tick_height;
2403 : fd_inflation_t inflation;
2404 : fd_epoch_schedule_t epoch_schedule;
2405 : fd_rent_t rent;
2406 : ulong collected_fees;
2407 : ulong collected_rent;
2408 : fd_vote_accounts_t epoch_stakes;
2409 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2410 : };
2411 : typedef struct fd_firedancer_bank fd_firedancer_bank_t;
2412 0 : #define FD_FIREDANCER_BANK_FOOTPRINT sizeof(fd_firedancer_bank_t)
2413 0 : #define FD_FIREDANCER_BANK_ALIGN (16UL)
2414 :
2415 : struct __attribute__((aligned(16UL))) fd_firedancer_bank_global {
2416 : fd_stakes_global_t stakes;
2417 : fd_recent_block_hashes_global_t recent_block_hashes;
2418 : fd_clock_timestamp_votes_global_t timestamp_votes;
2419 : ulong slot;
2420 : ulong prev_slot;
2421 : fd_hash_t poh;
2422 : fd_hash_t banks_hash;
2423 : fd_fee_rate_governor_t fee_rate_governor;
2424 : ulong capitalization;
2425 : ulong block_height;
2426 : ulong lamports_per_signature;
2427 : ulong hashes_per_tick;
2428 : ulong ticks_per_slot;
2429 : uint128 ns_per_slot;
2430 : ulong genesis_creation_time;
2431 : double slots_per_year;
2432 : ulong max_tick_height;
2433 : fd_inflation_t inflation;
2434 : fd_epoch_schedule_t epoch_schedule;
2435 : fd_rent_t rent;
2436 : ulong collected_fees;
2437 : ulong collected_rent;
2438 : fd_vote_accounts_global_t epoch_stakes;
2439 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2440 : };
2441 : typedef struct fd_firedancer_bank_global fd_firedancer_bank_global_t;
2442 : #define FD_FIREDANCER_BANK_GLOBAL_FOOTPRINT sizeof(fd_firedancer_bank_global_t)
2443 : #define FD_FIREDANCER_BANK_GLOBAL_ALIGN (16UL)
2444 :
2445 : union fd_cluster_type_inner {
2446 : uchar nonempty; /* Hack to support enums with no inner structures */
2447 : };
2448 : typedef union fd_cluster_type_inner fd_cluster_type_inner_t;
2449 :
2450 : union fd_cluster_type_inner_global {
2451 : uchar nonempty; /* Hack to support enums with no inner structures */
2452 : };
2453 : typedef union fd_cluster_type_inner_global fd_cluster_type_inner_global_t;
2454 :
2455 : struct fd_cluster_type {
2456 : uint discriminant;
2457 : fd_cluster_type_inner_t inner;
2458 : };
2459 : typedef struct fd_cluster_type fd_cluster_type_t;
2460 0 : #define FD_CLUSTER_TYPE_FOOTPRINT sizeof(fd_cluster_type_t)
2461 0 : #define FD_CLUSTER_TYPE_ALIGN (8UL)
2462 : struct fd_cluster_type_global {
2463 : uint discriminant;
2464 : fd_cluster_type_inner_global_t inner;
2465 : };
2466 : typedef struct fd_cluster_type_global fd_cluster_type_global_t;
2467 : #define FD_CLUSTER_TYPE_GLOBAL_FOOTPRINT sizeof(fd_cluster_type_global_t)
2468 : #define FD_CLUSTER_TYPE_GLOBAL_ALIGN (8UL)
2469 :
2470 : /* Encoded Size: Dynamic */
2471 : struct __attribute__((aligned(16UL))) fd_epoch_bank {
2472 : fd_stakes_t stakes;
2473 : ulong hashes_per_tick;
2474 : ulong ticks_per_slot;
2475 : uint128 ns_per_slot;
2476 : ulong genesis_creation_time;
2477 : double slots_per_year;
2478 : ulong max_tick_height;
2479 : fd_inflation_t inflation;
2480 : fd_epoch_schedule_t epoch_schedule;
2481 : fd_rent_t rent;
2482 : ulong eah_start_slot;
2483 : ulong eah_stop_slot;
2484 : ulong eah_interval;
2485 : fd_hash_t genesis_hash;
2486 : uint cluster_type;
2487 : uint cluster_version[3];
2488 : fd_vote_accounts_t next_epoch_stakes;
2489 : fd_epoch_schedule_t rent_epoch_schedule;
2490 : };
2491 : typedef struct fd_epoch_bank fd_epoch_bank_t;
2492 0 : #define FD_EPOCH_BANK_FOOTPRINT sizeof(fd_epoch_bank_t)
2493 0 : #define FD_EPOCH_BANK_ALIGN (16UL)
2494 :
2495 : struct __attribute__((aligned(16UL))) fd_epoch_bank_global {
2496 : fd_stakes_global_t stakes;
2497 : ulong hashes_per_tick;
2498 : ulong ticks_per_slot;
2499 : uint128 ns_per_slot;
2500 : ulong genesis_creation_time;
2501 : double slots_per_year;
2502 : ulong max_tick_height;
2503 : fd_inflation_t inflation;
2504 : fd_epoch_schedule_t epoch_schedule;
2505 : fd_rent_t rent;
2506 : ulong eah_start_slot;
2507 : ulong eah_stop_slot;
2508 : ulong eah_interval;
2509 : fd_hash_t genesis_hash;
2510 : uint cluster_type;
2511 : uint cluster_version[3];
2512 : fd_vote_accounts_global_t next_epoch_stakes;
2513 : fd_epoch_schedule_t rent_epoch_schedule;
2514 : };
2515 : typedef struct fd_epoch_bank_global fd_epoch_bank_global_t;
2516 : #define FD_EPOCH_BANK_GLOBAL_FOOTPRINT sizeof(fd_epoch_bank_global_t)
2517 : #define FD_EPOCH_BANK_GLOBAL_ALIGN (16UL)
2518 :
2519 : /* Encoded Size: Dynamic */
2520 : struct __attribute__((aligned(128UL))) fd_slot_bank {
2521 : fd_clock_timestamp_votes_t timestamp_votes;
2522 : ulong slot;
2523 : ulong prev_slot;
2524 : fd_hash_t poh;
2525 : fd_hash_t banks_hash;
2526 : fd_hash_t epoch_account_hash;
2527 : fd_fee_rate_governor_t fee_rate_governor;
2528 : ulong capitalization;
2529 : ulong block_height;
2530 : ulong max_tick_height;
2531 : ulong collected_execution_fees;
2532 : ulong collected_priority_fees;
2533 : ulong collected_rent;
2534 : fd_vote_accounts_t epoch_stakes;
2535 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2536 : fd_account_keys_t stake_account_keys;
2537 : fd_account_keys_t vote_account_keys;
2538 : ulong lamports_per_signature;
2539 : ulong transaction_count;
2540 : fd_slot_lthash_t lthash;
2541 : fd_block_hash_queue_t block_hash_queue;
2542 : fd_hash_t prev_banks_hash;
2543 : ulong parent_signature_cnt;
2544 : ulong tick_height;
2545 : ulong use_preceeding_epoch_stakes;
2546 : uchar has_use_preceeding_epoch_stakes;
2547 : fd_hard_forks_t hard_forks;
2548 : };
2549 : typedef struct fd_slot_bank fd_slot_bank_t;
2550 3 : #define FD_SLOT_BANK_FOOTPRINT sizeof(fd_slot_bank_t)
2551 15 : #define FD_SLOT_BANK_ALIGN (128UL)
2552 :
2553 : struct __attribute__((aligned(128UL))) fd_slot_bank_global {
2554 : fd_clock_timestamp_votes_global_t timestamp_votes;
2555 : ulong slot;
2556 : ulong prev_slot;
2557 : fd_hash_t poh;
2558 : fd_hash_t banks_hash;
2559 : fd_hash_t epoch_account_hash;
2560 : fd_fee_rate_governor_t fee_rate_governor;
2561 : ulong capitalization;
2562 : ulong block_height;
2563 : ulong max_tick_height;
2564 : ulong collected_execution_fees;
2565 : ulong collected_priority_fees;
2566 : ulong collected_rent;
2567 : fd_vote_accounts_global_t epoch_stakes;
2568 : fd_sol_sysvar_last_restart_slot_t last_restart_slot;
2569 : fd_account_keys_global_t stake_account_keys;
2570 : fd_account_keys_global_t vote_account_keys;
2571 : ulong lamports_per_signature;
2572 : ulong transaction_count;
2573 : fd_slot_lthash_t lthash;
2574 : fd_block_hash_queue_global_t block_hash_queue;
2575 : fd_hash_t prev_banks_hash;
2576 : ulong parent_signature_cnt;
2577 : ulong tick_height;
2578 : ulong use_preceeding_epoch_stakes;
2579 : uchar has_use_preceeding_epoch_stakes;
2580 : fd_hard_forks_global_t hard_forks;
2581 : };
2582 : typedef struct fd_slot_bank_global fd_slot_bank_global_t;
2583 : #define FD_SLOT_BANK_GLOBAL_FOOTPRINT sizeof(fd_slot_bank_global_t)
2584 : #define FD_SLOT_BANK_GLOBAL_ALIGN (128UL)
2585 :
2586 : /* Encoded Size: Fixed (32 bytes) */
2587 : struct __attribute__((aligned(8UL))) fd_prev_epoch_inflation_rewards {
2588 : ulong validator_rewards;
2589 : double prev_epoch_duration_in_years;
2590 : double validator_rate;
2591 : double foundation_rate;
2592 : };
2593 : typedef struct fd_prev_epoch_inflation_rewards fd_prev_epoch_inflation_rewards_t;
2594 0 : #define FD_PREV_EPOCH_INFLATION_REWARDS_FOOTPRINT sizeof(fd_prev_epoch_inflation_rewards_t)
2595 0 : #define FD_PREV_EPOCH_INFLATION_REWARDS_ALIGN (8UL)
2596 :
2597 : struct __attribute__((aligned(8UL))) fd_prev_epoch_inflation_rewards_global {
2598 : ulong validator_rewards;
2599 : double prev_epoch_duration_in_years;
2600 : double validator_rate;
2601 : double foundation_rate;
2602 : };
2603 : typedef struct fd_prev_epoch_inflation_rewards_global fd_prev_epoch_inflation_rewards_global_t;
2604 : #define FD_PREV_EPOCH_INFLATION_REWARDS_GLOBAL_FOOTPRINT sizeof(fd_prev_epoch_inflation_rewards_global_t)
2605 : #define FD_PREV_EPOCH_INFLATION_REWARDS_GLOBAL_ALIGN (8UL)
2606 :
2607 : #define DEQUE_NAME deq_ulong
2608 0 : #define DEQUE_T ulong
2609 : #include "../../util/tmpl/fd_deque_dynamic.c"
2610 : #undef DEQUE_NAME
2611 : #undef DEQUE_T
2612 : #undef DEQUE_MAX
2613 : static inline ulong *
2614 0 : deq_ulong_join_new( void * * alloc_mem, ulong max ) {
2615 0 : if( FD_UNLIKELY( 0 == max ) ) max = 1; // prevent underflow
2616 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, deq_ulong_align() );
2617 0 : void * deque_mem = *alloc_mem;
2618 0 : *alloc_mem = (uchar *)*alloc_mem + deq_ulong_footprint( max );
2619 0 : return deq_ulong_join( deq_ulong_new( deque_mem, max ) );
2620 0 : }
2621 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L133 */
2622 : /* Encoded Size: Dynamic */
2623 : struct __attribute__((aligned(8UL))) fd_vote {
2624 : ulong * slots; /* fd_deque_dynamic */
2625 : fd_hash_t hash;
2626 : long* timestamp;
2627 : };
2628 : typedef struct fd_vote fd_vote_t;
2629 0 : #define FD_VOTE_FOOTPRINT sizeof(fd_vote_t)
2630 0 : #define FD_VOTE_ALIGN (8UL)
2631 :
2632 : struct __attribute__((aligned(8UL))) fd_vote_global {
2633 : ulong slots_gaddr; /* fd_deque_dynamic */
2634 : fd_hash_t hash;
2635 : ulong timestamp_gaddr;
2636 : };
2637 : typedef struct fd_vote_global fd_vote_global_t;
2638 : #define FD_VOTE_GLOBAL_FOOTPRINT sizeof(fd_vote_global_t)
2639 : #define FD_VOTE_GLOBAL_ALIGN (8UL)
2640 :
2641 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L230 */
2642 : /* Encoded Size: Fixed (97 bytes) */
2643 : struct __attribute__((aligned(8UL))) fd_vote_init {
2644 : fd_pubkey_t node_pubkey;
2645 : fd_pubkey_t authorized_voter;
2646 : fd_pubkey_t authorized_withdrawer;
2647 : uchar commission;
2648 : };
2649 : typedef struct fd_vote_init fd_vote_init_t;
2650 0 : #define FD_VOTE_INIT_FOOTPRINT sizeof(fd_vote_init_t)
2651 0 : #define FD_VOTE_INIT_ALIGN (8UL)
2652 :
2653 : struct __attribute__((aligned(8UL))) fd_vote_init_global {
2654 : fd_pubkey_t node_pubkey;
2655 : fd_pubkey_t authorized_voter;
2656 : fd_pubkey_t authorized_withdrawer;
2657 : uchar commission;
2658 : };
2659 : typedef struct fd_vote_init_global fd_vote_init_global_t;
2660 : #define FD_VOTE_INIT_GLOBAL_FOOTPRINT sizeof(fd_vote_init_global_t)
2661 : #define FD_VOTE_INIT_GLOBAL_ALIGN (8UL)
2662 :
2663 : union fd_vote_authorize_inner {
2664 : uchar nonempty; /* Hack to support enums with no inner structures */
2665 : };
2666 : typedef union fd_vote_authorize_inner fd_vote_authorize_inner_t;
2667 :
2668 : union fd_vote_authorize_inner_global {
2669 : uchar nonempty; /* Hack to support enums with no inner structures */
2670 : };
2671 : typedef union fd_vote_authorize_inner_global fd_vote_authorize_inner_global_t;
2672 :
2673 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L238 */
2674 : struct fd_vote_authorize {
2675 : uint discriminant;
2676 : fd_vote_authorize_inner_t inner;
2677 : };
2678 : typedef struct fd_vote_authorize fd_vote_authorize_t;
2679 0 : #define FD_VOTE_AUTHORIZE_FOOTPRINT sizeof(fd_vote_authorize_t)
2680 0 : #define FD_VOTE_AUTHORIZE_ALIGN (8UL)
2681 : struct fd_vote_authorize_global {
2682 : uint discriminant;
2683 : fd_vote_authorize_inner_global_t inner;
2684 : };
2685 : typedef struct fd_vote_authorize_global fd_vote_authorize_global_t;
2686 : #define FD_VOTE_AUTHORIZE_GLOBAL_FOOTPRINT sizeof(fd_vote_authorize_global_t)
2687 : #define FD_VOTE_AUTHORIZE_GLOBAL_ALIGN (8UL)
2688 :
2689 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L37 */
2690 : /* Encoded Size: Fixed (36 bytes) */
2691 : struct __attribute__((aligned(8UL))) fd_vote_authorize_pubkey {
2692 : fd_pubkey_t pubkey;
2693 : fd_vote_authorize_t vote_authorize;
2694 : };
2695 : typedef struct fd_vote_authorize_pubkey fd_vote_authorize_pubkey_t;
2696 0 : #define FD_VOTE_AUTHORIZE_PUBKEY_FOOTPRINT sizeof(fd_vote_authorize_pubkey_t)
2697 0 : #define FD_VOTE_AUTHORIZE_PUBKEY_ALIGN (8UL)
2698 :
2699 : struct __attribute__((aligned(8UL))) fd_vote_authorize_pubkey_global {
2700 : fd_pubkey_t pubkey;
2701 : fd_vote_authorize_t vote_authorize;
2702 : };
2703 : typedef struct fd_vote_authorize_pubkey_global fd_vote_authorize_pubkey_global_t;
2704 : #define FD_VOTE_AUTHORIZE_PUBKEY_GLOBAL_FOOTPRINT sizeof(fd_vote_authorize_pubkey_global_t)
2705 : #define FD_VOTE_AUTHORIZE_PUBKEY_GLOBAL_ALIGN (8UL)
2706 :
2707 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L78 */
2708 : /* Encoded Size: Dynamic */
2709 : struct __attribute__((aligned(8UL))) fd_vote_switch {
2710 : fd_vote_t vote;
2711 : fd_hash_t hash;
2712 : };
2713 : typedef struct fd_vote_switch fd_vote_switch_t;
2714 0 : #define FD_VOTE_SWITCH_FOOTPRINT sizeof(fd_vote_switch_t)
2715 0 : #define FD_VOTE_SWITCH_ALIGN (8UL)
2716 :
2717 : struct __attribute__((aligned(8UL))) fd_vote_switch_global {
2718 : fd_vote_global_t vote;
2719 : fd_hash_t hash;
2720 : };
2721 : typedef struct fd_vote_switch_global fd_vote_switch_global_t;
2722 : #define FD_VOTE_SWITCH_GLOBAL_FOOTPRINT sizeof(fd_vote_switch_global_t)
2723 : #define FD_VOTE_SWITCH_GLOBAL_ALIGN (8UL)
2724 :
2725 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_instruction.rs#L104 */
2726 : /* Encoded Size: Dynamic */
2727 : struct __attribute__((aligned(8UL))) fd_update_vote_state_switch {
2728 : fd_vote_state_update_t vote_state_update;
2729 : fd_hash_t hash;
2730 : };
2731 : typedef struct fd_update_vote_state_switch fd_update_vote_state_switch_t;
2732 0 : #define FD_UPDATE_VOTE_STATE_SWITCH_FOOTPRINT sizeof(fd_update_vote_state_switch_t)
2733 0 : #define FD_UPDATE_VOTE_STATE_SWITCH_ALIGN (8UL)
2734 :
2735 : struct __attribute__((aligned(8UL))) fd_update_vote_state_switch_global {
2736 : fd_vote_state_update_global_t vote_state_update;
2737 : fd_hash_t hash;
2738 : };
2739 : typedef struct fd_update_vote_state_switch_global fd_update_vote_state_switch_global_t;
2740 : #define FD_UPDATE_VOTE_STATE_SWITCH_GLOBAL_FOOTPRINT sizeof(fd_update_vote_state_switch_global_t)
2741 : #define FD_UPDATE_VOTE_STATE_SWITCH_GLOBAL_ALIGN (8UL)
2742 :
2743 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L244 */
2744 : /* Encoded Size: Dynamic */
2745 : struct __attribute__((aligned(8UL))) fd_vote_authorize_with_seed_args {
2746 : fd_vote_authorize_t authorization_type;
2747 : fd_pubkey_t current_authority_derived_key_owner;
2748 : ulong current_authority_derived_key_seed_len;
2749 : uchar* current_authority_derived_key_seed;
2750 : fd_pubkey_t new_authority;
2751 : };
2752 : typedef struct fd_vote_authorize_with_seed_args fd_vote_authorize_with_seed_args_t;
2753 0 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_vote_authorize_with_seed_args_t)
2754 0 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_ALIGN (8UL)
2755 :
2756 : struct __attribute__((aligned(8UL))) fd_vote_authorize_with_seed_args_global {
2757 : fd_vote_authorize_t authorization_type;
2758 : fd_pubkey_t current_authority_derived_key_owner;
2759 : ulong current_authority_derived_key_seed_len;
2760 : ulong current_authority_derived_key_seed_gaddr;
2761 : fd_pubkey_t new_authority;
2762 : };
2763 : typedef struct fd_vote_authorize_with_seed_args_global fd_vote_authorize_with_seed_args_global_t;
2764 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_GLOBAL_FOOTPRINT sizeof(fd_vote_authorize_with_seed_args_global_t)
2765 : #define FD_VOTE_AUTHORIZE_WITH_SEED_ARGS_GLOBAL_ALIGN (8UL)
2766 :
2767 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/programs/vote/src/vote_state/mod.rs#L252 */
2768 : /* Encoded Size: Dynamic */
2769 : struct __attribute__((aligned(8UL))) fd_vote_authorize_checked_with_seed_args {
2770 : fd_vote_authorize_t authorization_type;
2771 : fd_pubkey_t current_authority_derived_key_owner;
2772 : ulong current_authority_derived_key_seed_len;
2773 : uchar* current_authority_derived_key_seed;
2774 : };
2775 : typedef struct fd_vote_authorize_checked_with_seed_args fd_vote_authorize_checked_with_seed_args_t;
2776 0 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_vote_authorize_checked_with_seed_args_t)
2777 0 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_ALIGN (8UL)
2778 :
2779 : struct __attribute__((aligned(8UL))) fd_vote_authorize_checked_with_seed_args_global {
2780 : fd_vote_authorize_t authorization_type;
2781 : fd_pubkey_t current_authority_derived_key_owner;
2782 : ulong current_authority_derived_key_seed_len;
2783 : ulong current_authority_derived_key_seed_gaddr;
2784 : };
2785 : typedef struct fd_vote_authorize_checked_with_seed_args_global fd_vote_authorize_checked_with_seed_args_global_t;
2786 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_GLOBAL_FOOTPRINT sizeof(fd_vote_authorize_checked_with_seed_args_global_t)
2787 : #define FD_VOTE_AUTHORIZE_CHECKED_WITH_SEED_ARGS_GLOBAL_ALIGN (8UL)
2788 :
2789 : union fd_vote_instruction_inner {
2790 : fd_vote_init_t initialize_account;
2791 : fd_vote_authorize_pubkey_t authorize;
2792 : fd_vote_t vote;
2793 : ulong withdraw;
2794 : uchar update_commission;
2795 : fd_vote_switch_t vote_switch;
2796 : fd_vote_authorize_t authorize_checked;
2797 : fd_vote_state_update_t update_vote_state;
2798 : fd_update_vote_state_switch_t update_vote_state_switch;
2799 : fd_vote_authorize_with_seed_args_t authorize_with_seed;
2800 : fd_vote_authorize_checked_with_seed_args_t authorize_checked_with_seed;
2801 : fd_compact_vote_state_update_t compact_update_vote_state;
2802 : fd_compact_vote_state_update_switch_t compact_update_vote_state_switch;
2803 : fd_tower_sync_t tower_sync;
2804 : fd_tower_sync_switch_t tower_sync_switch;
2805 : };
2806 : typedef union fd_vote_instruction_inner fd_vote_instruction_inner_t;
2807 :
2808 : union fd_vote_instruction_inner_global {
2809 : fd_vote_init_t initialize_account;
2810 : fd_vote_authorize_pubkey_t authorize;
2811 : fd_vote_global_t vote;
2812 : ulong withdraw;
2813 : uchar update_commission;
2814 : fd_vote_switch_global_t vote_switch;
2815 : fd_vote_authorize_t authorize_checked;
2816 : fd_vote_state_update_global_t update_vote_state;
2817 : fd_update_vote_state_switch_global_t update_vote_state_switch;
2818 : fd_vote_authorize_with_seed_args_global_t authorize_with_seed;
2819 : fd_vote_authorize_checked_with_seed_args_global_t authorize_checked_with_seed;
2820 : fd_compact_vote_state_update_global_t compact_update_vote_state;
2821 : fd_compact_vote_state_update_switch_global_t compact_update_vote_state_switch;
2822 : fd_tower_sync_global_t tower_sync;
2823 : fd_tower_sync_switch_global_t tower_sync_switch;
2824 : };
2825 : typedef union fd_vote_instruction_inner_global fd_vote_instruction_inner_global_t;
2826 :
2827 : /* https://github.com/firedancer-io/solana/blob/53a4e5d6c58b2ffe89b09304e4437f8ca198dadd/programs/vote/src/vote_instruction.rs#L21 */
2828 : struct fd_vote_instruction {
2829 : uint discriminant;
2830 : fd_vote_instruction_inner_t inner;
2831 : };
2832 : typedef struct fd_vote_instruction fd_vote_instruction_t;
2833 0 : #define FD_VOTE_INSTRUCTION_FOOTPRINT sizeof(fd_vote_instruction_t)
2834 0 : #define FD_VOTE_INSTRUCTION_ALIGN (8UL)
2835 : struct fd_vote_instruction_global {
2836 : uint discriminant;
2837 : fd_vote_instruction_inner_global_t inner;
2838 : };
2839 : typedef struct fd_vote_instruction_global fd_vote_instruction_global_t;
2840 : #define FD_VOTE_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_vote_instruction_global_t)
2841 : #define FD_VOTE_INSTRUCTION_GLOBAL_ALIGN (8UL)
2842 :
2843 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L158 */
2844 : /* Encoded Size: Fixed (48 bytes) */
2845 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account {
2846 : ulong lamports;
2847 : ulong space;
2848 : fd_pubkey_t owner;
2849 : };
2850 : typedef struct fd_system_program_instruction_create_account fd_system_program_instruction_create_account_t;
2851 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_FOOTPRINT sizeof(fd_system_program_instruction_create_account_t)
2852 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_ALIGN (8UL)
2853 :
2854 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_global {
2855 : ulong lamports;
2856 : ulong space;
2857 : fd_pubkey_t owner;
2858 : };
2859 : typedef struct fd_system_program_instruction_create_account_global fd_system_program_instruction_create_account_global_t;
2860 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_create_account_global_t)
2861 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_GLOBAL_ALIGN (8UL)
2862 :
2863 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L193 */
2864 : /* Encoded Size: Dynamic */
2865 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_with_seed {
2866 : fd_pubkey_t base;
2867 : ulong seed_len;
2868 : uchar* seed;
2869 : ulong lamports;
2870 : ulong space;
2871 : fd_pubkey_t owner;
2872 : };
2873 : typedef struct fd_system_program_instruction_create_account_with_seed fd_system_program_instruction_create_account_with_seed_t;
2874 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_create_account_with_seed_t)
2875 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_ALIGN (8UL)
2876 :
2877 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_create_account_with_seed_global {
2878 : fd_pubkey_t base;
2879 : ulong seed_len;
2880 : ulong seed_gaddr;
2881 : ulong lamports;
2882 : ulong space;
2883 : fd_pubkey_t owner;
2884 : };
2885 : typedef struct fd_system_program_instruction_create_account_with_seed_global fd_system_program_instruction_create_account_with_seed_global_t;
2886 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_create_account_with_seed_global_t)
2887 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_CREATE_ACCOUNT_WITH_SEED_GLOBAL_ALIGN (8UL)
2888 :
2889 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L269 */
2890 : /* Encoded Size: Dynamic */
2891 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_allocate_with_seed {
2892 : fd_pubkey_t base;
2893 : ulong seed_len;
2894 : uchar* seed;
2895 : ulong space;
2896 : fd_pubkey_t owner;
2897 : };
2898 : typedef struct fd_system_program_instruction_allocate_with_seed fd_system_program_instruction_allocate_with_seed_t;
2899 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_allocate_with_seed_t)
2900 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_ALIGN (8UL)
2901 :
2902 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_allocate_with_seed_global {
2903 : fd_pubkey_t base;
2904 : ulong seed_len;
2905 : ulong seed_gaddr;
2906 : ulong space;
2907 : fd_pubkey_t owner;
2908 : };
2909 : typedef struct fd_system_program_instruction_allocate_with_seed_global fd_system_program_instruction_allocate_with_seed_global_t;
2910 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_allocate_with_seed_global_t)
2911 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALLOCATE_WITH_SEED_GLOBAL_ALIGN (8UL)
2912 :
2913 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L288 */
2914 : /* Encoded Size: Dynamic */
2915 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_assign_with_seed {
2916 : fd_pubkey_t base;
2917 : ulong seed_len;
2918 : uchar* seed;
2919 : fd_pubkey_t owner;
2920 : };
2921 : typedef struct fd_system_program_instruction_assign_with_seed fd_system_program_instruction_assign_with_seed_t;
2922 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_assign_with_seed_t)
2923 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_ALIGN (8UL)
2924 :
2925 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_assign_with_seed_global {
2926 : fd_pubkey_t base;
2927 : ulong seed_len;
2928 : ulong seed_gaddr;
2929 : fd_pubkey_t owner;
2930 : };
2931 : typedef struct fd_system_program_instruction_assign_with_seed_global fd_system_program_instruction_assign_with_seed_global_t;
2932 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_assign_with_seed_global_t)
2933 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ASSIGN_WITH_SEED_GLOBAL_ALIGN (8UL)
2934 :
2935 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L288 */
2936 : /* Encoded Size: Dynamic */
2937 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_transfer_with_seed {
2938 : ulong lamports;
2939 : ulong from_seed_len;
2940 : uchar* from_seed;
2941 : fd_pubkey_t from_owner;
2942 : };
2943 : typedef struct fd_system_program_instruction_transfer_with_seed fd_system_program_instruction_transfer_with_seed_t;
2944 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_FOOTPRINT sizeof(fd_system_program_instruction_transfer_with_seed_t)
2945 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_ALIGN (8UL)
2946 :
2947 : struct __attribute__((aligned(8UL))) fd_system_program_instruction_transfer_with_seed_global {
2948 : ulong lamports;
2949 : ulong from_seed_len;
2950 : ulong from_seed_gaddr;
2951 : fd_pubkey_t from_owner;
2952 : };
2953 : typedef struct fd_system_program_instruction_transfer_with_seed_global fd_system_program_instruction_transfer_with_seed_global_t;
2954 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_transfer_with_seed_global_t)
2955 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_TRANSFER_WITH_SEED_GLOBAL_ALIGN (8UL)
2956 :
2957 : union fd_system_program_instruction_inner {
2958 : fd_system_program_instruction_create_account_t create_account;
2959 : fd_pubkey_t assign;
2960 : ulong transfer;
2961 : fd_system_program_instruction_create_account_with_seed_t create_account_with_seed;
2962 : ulong withdraw_nonce_account;
2963 : fd_pubkey_t initialize_nonce_account;
2964 : fd_pubkey_t authorize_nonce_account;
2965 : ulong allocate;
2966 : fd_system_program_instruction_allocate_with_seed_t allocate_with_seed;
2967 : fd_system_program_instruction_assign_with_seed_t assign_with_seed;
2968 : fd_system_program_instruction_transfer_with_seed_t transfer_with_seed;
2969 : };
2970 : typedef union fd_system_program_instruction_inner fd_system_program_instruction_inner_t;
2971 :
2972 : union fd_system_program_instruction_inner_global {
2973 : fd_system_program_instruction_create_account_t create_account;
2974 : fd_pubkey_t assign;
2975 : ulong transfer;
2976 : fd_system_program_instruction_create_account_with_seed_global_t create_account_with_seed;
2977 : ulong withdraw_nonce_account;
2978 : fd_pubkey_t initialize_nonce_account;
2979 : fd_pubkey_t authorize_nonce_account;
2980 : ulong allocate;
2981 : fd_system_program_instruction_allocate_with_seed_global_t allocate_with_seed;
2982 : fd_system_program_instruction_assign_with_seed_global_t assign_with_seed;
2983 : fd_system_program_instruction_transfer_with_seed_global_t transfer_with_seed;
2984 : };
2985 : typedef union fd_system_program_instruction_inner_global fd_system_program_instruction_inner_global_t;
2986 :
2987 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L152 */
2988 : struct fd_system_program_instruction {
2989 : uint discriminant;
2990 : fd_system_program_instruction_inner_t inner;
2991 : };
2992 : typedef struct fd_system_program_instruction fd_system_program_instruction_t;
2993 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_system_program_instruction_t)
2994 0 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_ALIGN (8UL)
2995 : struct fd_system_program_instruction_global {
2996 : uint discriminant;
2997 : fd_system_program_instruction_inner_global_t inner;
2998 : };
2999 : typedef struct fd_system_program_instruction_global fd_system_program_instruction_global_t;
3000 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_system_program_instruction_global_t)
3001 : #define FD_SYSTEM_PROGRAM_INSTRUCTION_GLOBAL_ALIGN (8UL)
3002 :
3003 : union fd_system_error_inner {
3004 : uchar nonempty; /* Hack to support enums with no inner structures */
3005 : };
3006 : typedef union fd_system_error_inner fd_system_error_inner_t;
3007 :
3008 : union fd_system_error_inner_global {
3009 : uchar nonempty; /* Hack to support enums with no inner structures */
3010 : };
3011 : typedef union fd_system_error_inner_global fd_system_error_inner_global_t;
3012 :
3013 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/system_instruction.rs#L16 */
3014 : struct fd_system_error {
3015 : uint discriminant;
3016 : fd_system_error_inner_t inner;
3017 : };
3018 : typedef struct fd_system_error fd_system_error_t;
3019 0 : #define FD_SYSTEM_ERROR_FOOTPRINT sizeof(fd_system_error_t)
3020 0 : #define FD_SYSTEM_ERROR_ALIGN (8UL)
3021 : struct fd_system_error_global {
3022 : uint discriminant;
3023 : fd_system_error_inner_global_t inner;
3024 : };
3025 : typedef struct fd_system_error_global fd_system_error_global_t;
3026 : #define FD_SYSTEM_ERROR_GLOBAL_FOOTPRINT sizeof(fd_system_error_global_t)
3027 : #define FD_SYSTEM_ERROR_GLOBAL_ALIGN (8UL)
3028 :
3029 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L169 */
3030 : /* Encoded Size: Fixed (64 bytes) */
3031 : struct __attribute__((aligned(8UL))) fd_stake_authorized {
3032 : fd_pubkey_t staker;
3033 : fd_pubkey_t withdrawer;
3034 : };
3035 : typedef struct fd_stake_authorized fd_stake_authorized_t;
3036 0 : #define FD_STAKE_AUTHORIZED_FOOTPRINT sizeof(fd_stake_authorized_t)
3037 0 : #define FD_STAKE_AUTHORIZED_ALIGN (8UL)
3038 :
3039 : struct __attribute__((aligned(8UL))) fd_stake_authorized_global {
3040 : fd_pubkey_t staker;
3041 : fd_pubkey_t withdrawer;
3042 : };
3043 : typedef struct fd_stake_authorized_global fd_stake_authorized_global_t;
3044 : #define FD_STAKE_AUTHORIZED_GLOBAL_FOOTPRINT sizeof(fd_stake_authorized_global_t)
3045 : #define FD_STAKE_AUTHORIZED_GLOBAL_ALIGN (8UL)
3046 :
3047 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L135 */
3048 : /* Encoded Size: Fixed (48 bytes) */
3049 : struct __attribute__((aligned(8UL))) fd_stake_lockup {
3050 : long unix_timestamp;
3051 : ulong epoch;
3052 : fd_pubkey_t custodian;
3053 : };
3054 : typedef struct fd_stake_lockup fd_stake_lockup_t;
3055 0 : #define FD_STAKE_LOCKUP_FOOTPRINT sizeof(fd_stake_lockup_t)
3056 0 : #define FD_STAKE_LOCKUP_ALIGN (8UL)
3057 :
3058 : struct __attribute__((aligned(8UL))) fd_stake_lockup_global {
3059 : long unix_timestamp;
3060 : ulong epoch;
3061 : fd_pubkey_t custodian;
3062 : };
3063 : typedef struct fd_stake_lockup_global fd_stake_lockup_global_t;
3064 : #define FD_STAKE_LOCKUP_GLOBAL_FOOTPRINT sizeof(fd_stake_lockup_global_t)
3065 : #define FD_STAKE_LOCKUP_GLOBAL_ALIGN (8UL)
3066 :
3067 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L68 */
3068 : /* Encoded Size: Fixed (112 bytes) */
3069 : struct __attribute__((aligned(8UL))) fd_stake_instruction_initialize {
3070 : fd_stake_authorized_t authorized;
3071 : fd_stake_lockup_t lockup;
3072 : };
3073 : typedef struct fd_stake_instruction_initialize fd_stake_instruction_initialize_t;
3074 0 : #define FD_STAKE_INSTRUCTION_INITIALIZE_FOOTPRINT sizeof(fd_stake_instruction_initialize_t)
3075 0 : #define FD_STAKE_INSTRUCTION_INITIALIZE_ALIGN (8UL)
3076 :
3077 : struct __attribute__((aligned(8UL))) fd_stake_instruction_initialize_global {
3078 : fd_stake_authorized_t authorized;
3079 : fd_stake_lockup_t lockup;
3080 : };
3081 : typedef struct fd_stake_instruction_initialize_global fd_stake_instruction_initialize_global_t;
3082 : #define FD_STAKE_INSTRUCTION_INITIALIZE_GLOBAL_FOOTPRINT sizeof(fd_stake_instruction_initialize_global_t)
3083 : #define FD_STAKE_INSTRUCTION_INITIALIZE_GLOBAL_ALIGN (8UL)
3084 :
3085 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L78 */
3086 : /* Encoded Size: Dynamic */
3087 : struct __attribute__((aligned(8UL))) fd_stake_lockup_custodian_args {
3088 : fd_stake_lockup_t lockup;
3089 : fd_sol_sysvar_clock_t clock;
3090 : fd_pubkey_t * custodian;
3091 : };
3092 : typedef struct fd_stake_lockup_custodian_args fd_stake_lockup_custodian_args_t;
3093 0 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_FOOTPRINT sizeof(fd_stake_lockup_custodian_args_t)
3094 0 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_ALIGN (8UL)
3095 :
3096 : struct __attribute__((aligned(8UL))) fd_stake_lockup_custodian_args_global {
3097 : fd_stake_lockup_t lockup;
3098 : fd_sol_sysvar_clock_t clock;
3099 : ulong custodian_gaddr;
3100 : };
3101 : typedef struct fd_stake_lockup_custodian_args_global fd_stake_lockup_custodian_args_global_t;
3102 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_GLOBAL_FOOTPRINT sizeof(fd_stake_lockup_custodian_args_global_t)
3103 : #define FD_STAKE_LOCKUP_CUSTODIAN_ARGS_GLOBAL_ALIGN (8UL)
3104 :
3105 : union fd_stake_authorize_inner {
3106 : uchar nonempty; /* Hack to support enums with no inner structures */
3107 : };
3108 : typedef union fd_stake_authorize_inner fd_stake_authorize_inner_t;
3109 :
3110 : union fd_stake_authorize_inner_global {
3111 : uchar nonempty; /* Hack to support enums with no inner structures */
3112 : };
3113 : typedef union fd_stake_authorize_inner_global fd_stake_authorize_inner_global_t;
3114 :
3115 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L117 */
3116 : struct fd_stake_authorize {
3117 : uint discriminant;
3118 : fd_stake_authorize_inner_t inner;
3119 : };
3120 : typedef struct fd_stake_authorize fd_stake_authorize_t;
3121 0 : #define FD_STAKE_AUTHORIZE_FOOTPRINT sizeof(fd_stake_authorize_t)
3122 0 : #define FD_STAKE_AUTHORIZE_ALIGN (8UL)
3123 : struct fd_stake_authorize_global {
3124 : uint discriminant;
3125 : fd_stake_authorize_inner_global_t inner;
3126 : };
3127 : typedef struct fd_stake_authorize_global fd_stake_authorize_global_t;
3128 : #define FD_STAKE_AUTHORIZE_GLOBAL_FOOTPRINT sizeof(fd_stake_authorize_global_t)
3129 : #define FD_STAKE_AUTHORIZE_GLOBAL_ALIGN (8UL)
3130 :
3131 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L78 */
3132 : /* Encoded Size: Fixed (36 bytes) */
3133 : struct __attribute__((aligned(8UL))) fd_stake_instruction_authorize {
3134 : fd_pubkey_t pubkey;
3135 : fd_stake_authorize_t stake_authorize;
3136 : };
3137 : typedef struct fd_stake_instruction_authorize fd_stake_instruction_authorize_t;
3138 0 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_FOOTPRINT sizeof(fd_stake_instruction_authorize_t)
3139 0 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_ALIGN (8UL)
3140 :
3141 : struct __attribute__((aligned(8UL))) fd_stake_instruction_authorize_global {
3142 : fd_pubkey_t pubkey;
3143 : fd_stake_authorize_t stake_authorize;
3144 : };
3145 : typedef struct fd_stake_instruction_authorize_global fd_stake_instruction_authorize_global_t;
3146 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_GLOBAL_FOOTPRINT sizeof(fd_stake_instruction_authorize_global_t)
3147 : #define FD_STAKE_INSTRUCTION_AUTHORIZE_GLOBAL_ALIGN (8UL)
3148 :
3149 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L241 */
3150 : /* Encoded Size: Dynamic */
3151 : struct __attribute__((aligned(8UL))) fd_authorize_with_seed_args {
3152 : fd_pubkey_t new_authorized_pubkey;
3153 : fd_stake_authorize_t stake_authorize;
3154 : ulong authority_seed_len;
3155 : uchar* authority_seed;
3156 : fd_pubkey_t authority_owner;
3157 : };
3158 : typedef struct fd_authorize_with_seed_args fd_authorize_with_seed_args_t;
3159 0 : #define FD_AUTHORIZE_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_authorize_with_seed_args_t)
3160 0 : #define FD_AUTHORIZE_WITH_SEED_ARGS_ALIGN (8UL)
3161 :
3162 : struct __attribute__((aligned(8UL))) fd_authorize_with_seed_args_global {
3163 : fd_pubkey_t new_authorized_pubkey;
3164 : fd_stake_authorize_t stake_authorize;
3165 : ulong authority_seed_len;
3166 : ulong authority_seed_gaddr;
3167 : fd_pubkey_t authority_owner;
3168 : };
3169 : typedef struct fd_authorize_with_seed_args_global fd_authorize_with_seed_args_global_t;
3170 : #define FD_AUTHORIZE_WITH_SEED_ARGS_GLOBAL_FOOTPRINT sizeof(fd_authorize_with_seed_args_global_t)
3171 : #define FD_AUTHORIZE_WITH_SEED_ARGS_GLOBAL_ALIGN (8UL)
3172 :
3173 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L249 */
3174 : /* Encoded Size: Dynamic */
3175 : struct __attribute__((aligned(8UL))) fd_authorize_checked_with_seed_args {
3176 : fd_stake_authorize_t stake_authorize;
3177 : ulong authority_seed_len;
3178 : uchar* authority_seed;
3179 : fd_pubkey_t authority_owner;
3180 : };
3181 : typedef struct fd_authorize_checked_with_seed_args fd_authorize_checked_with_seed_args_t;
3182 0 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_FOOTPRINT sizeof(fd_authorize_checked_with_seed_args_t)
3183 0 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_ALIGN (8UL)
3184 :
3185 : struct __attribute__((aligned(8UL))) fd_authorize_checked_with_seed_args_global {
3186 : fd_stake_authorize_t stake_authorize;
3187 : ulong authority_seed_len;
3188 : ulong authority_seed_gaddr;
3189 : fd_pubkey_t authority_owner;
3190 : };
3191 : typedef struct fd_authorize_checked_with_seed_args_global fd_authorize_checked_with_seed_args_global_t;
3192 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_GLOBAL_FOOTPRINT sizeof(fd_authorize_checked_with_seed_args_global_t)
3193 : #define FD_AUTHORIZE_CHECKED_WITH_SEED_ARGS_GLOBAL_ALIGN (8UL)
3194 :
3195 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L235 */
3196 : /* Encoded Size: Dynamic */
3197 : struct __attribute__((aligned(8UL))) fd_lockup_checked_args {
3198 : long* unix_timestamp;
3199 : ulong* epoch;
3200 : };
3201 : typedef struct fd_lockup_checked_args fd_lockup_checked_args_t;
3202 0 : #define FD_LOCKUP_CHECKED_ARGS_FOOTPRINT sizeof(fd_lockup_checked_args_t)
3203 0 : #define FD_LOCKUP_CHECKED_ARGS_ALIGN (8UL)
3204 :
3205 : struct __attribute__((aligned(8UL))) fd_lockup_checked_args_global {
3206 : ulong unix_timestamp_gaddr;
3207 : ulong epoch_gaddr;
3208 : };
3209 : typedef struct fd_lockup_checked_args_global fd_lockup_checked_args_global_t;
3210 : #define FD_LOCKUP_CHECKED_ARGS_GLOBAL_FOOTPRINT sizeof(fd_lockup_checked_args_global_t)
3211 : #define FD_LOCKUP_CHECKED_ARGS_GLOBAL_ALIGN (8UL)
3212 :
3213 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/instruction.rs#L228 */
3214 : /* Encoded Size: Dynamic */
3215 : struct __attribute__((aligned(8UL))) fd_lockup_args {
3216 : long* unix_timestamp;
3217 : ulong* epoch;
3218 : fd_pubkey_t * custodian;
3219 : };
3220 : typedef struct fd_lockup_args fd_lockup_args_t;
3221 0 : #define FD_LOCKUP_ARGS_FOOTPRINT sizeof(fd_lockup_args_t)
3222 0 : #define FD_LOCKUP_ARGS_ALIGN (8UL)
3223 :
3224 : struct __attribute__((aligned(8UL))) fd_lockup_args_global {
3225 : ulong unix_timestamp_gaddr;
3226 : ulong epoch_gaddr;
3227 : ulong custodian_gaddr;
3228 : };
3229 : typedef struct fd_lockup_args_global fd_lockup_args_global_t;
3230 : #define FD_LOCKUP_ARGS_GLOBAL_FOOTPRINT sizeof(fd_lockup_args_global_t)
3231 : #define FD_LOCKUP_ARGS_GLOBAL_ALIGN (8UL)
3232 :
3233 : union fd_stake_instruction_inner {
3234 : fd_stake_instruction_initialize_t initialize;
3235 : fd_stake_instruction_authorize_t authorize;
3236 : ulong split;
3237 : ulong withdraw;
3238 : fd_lockup_args_t set_lockup;
3239 : fd_authorize_with_seed_args_t authorize_with_seed;
3240 : fd_stake_authorize_t authorize_checked;
3241 : fd_authorize_checked_with_seed_args_t authorize_checked_with_seed;
3242 : fd_lockup_checked_args_t set_lockup_checked;
3243 : ulong move_stake;
3244 : ulong move_lamports;
3245 : };
3246 : typedef union fd_stake_instruction_inner fd_stake_instruction_inner_t;
3247 :
3248 : union fd_stake_instruction_inner_global {
3249 : fd_stake_instruction_initialize_t initialize;
3250 : fd_stake_instruction_authorize_t authorize;
3251 : ulong split;
3252 : ulong withdraw;
3253 : fd_lockup_args_global_t set_lockup;
3254 : fd_authorize_with_seed_args_global_t authorize_with_seed;
3255 : fd_stake_authorize_t authorize_checked;
3256 : fd_authorize_checked_with_seed_args_global_t authorize_checked_with_seed;
3257 : fd_lockup_checked_args_global_t set_lockup_checked;
3258 : ulong move_stake;
3259 : ulong move_lamports;
3260 : };
3261 : typedef union fd_stake_instruction_inner_global fd_stake_instruction_inner_global_t;
3262 :
3263 : /* https://github.com/anza-xyz/agave/blob/cdff19c7807b006dd63429114fb1d9573bf74172/sdk/program/src/stake/instruction.rs#L96 */
3264 : struct fd_stake_instruction {
3265 : uint discriminant;
3266 : fd_stake_instruction_inner_t inner;
3267 : };
3268 : typedef struct fd_stake_instruction fd_stake_instruction_t;
3269 0 : #define FD_STAKE_INSTRUCTION_FOOTPRINT sizeof(fd_stake_instruction_t)
3270 0 : #define FD_STAKE_INSTRUCTION_ALIGN (8UL)
3271 : struct fd_stake_instruction_global {
3272 : uint discriminant;
3273 : fd_stake_instruction_inner_global_t inner;
3274 : };
3275 : typedef struct fd_stake_instruction_global fd_stake_instruction_global_t;
3276 : #define FD_STAKE_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_stake_instruction_global_t)
3277 : #define FD_STAKE_INSTRUCTION_GLOBAL_ALIGN (8UL)
3278 :
3279 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/stake/state.rs#L248 */
3280 : /* Encoded Size: Fixed (120 bytes) */
3281 : struct __attribute__((aligned(8UL))) fd_stake_meta {
3282 : ulong rent_exempt_reserve;
3283 : fd_stake_authorized_t authorized;
3284 : fd_stake_lockup_t lockup;
3285 : };
3286 : typedef struct fd_stake_meta fd_stake_meta_t;
3287 0 : #define FD_STAKE_META_FOOTPRINT sizeof(fd_stake_meta_t)
3288 0 : #define FD_STAKE_META_ALIGN (8UL)
3289 :
3290 : struct __attribute__((aligned(8UL))) fd_stake_meta_global {
3291 : ulong rent_exempt_reserve;
3292 : fd_stake_authorized_t authorized;
3293 : fd_stake_lockup_t lockup;
3294 : };
3295 : typedef struct fd_stake_meta_global fd_stake_meta_global_t;
3296 : #define FD_STAKE_META_GLOBAL_FOOTPRINT sizeof(fd_stake_meta_global_t)
3297 : #define FD_STAKE_META_GLOBAL_ALIGN (8UL)
3298 :
3299 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/stake_flags.rs#L21 */
3300 : /* Encoded Size: Fixed (1 bytes) */
3301 : struct __attribute__((aligned(8UL))) fd_stake_flags {
3302 : uchar bits;
3303 : };
3304 : typedef struct fd_stake_flags fd_stake_flags_t;
3305 0 : #define FD_STAKE_FLAGS_FOOTPRINT sizeof(fd_stake_flags_t)
3306 0 : #define FD_STAKE_FLAGS_ALIGN (8UL)
3307 :
3308 : struct __attribute__((aligned(8UL))) fd_stake_flags_global {
3309 : uchar bits;
3310 : };
3311 : typedef struct fd_stake_flags_global fd_stake_flags_global_t;
3312 : #define FD_STAKE_FLAGS_GLOBAL_FOOTPRINT sizeof(fd_stake_flags_global_t)
3313 : #define FD_STAKE_FLAGS_GLOBAL_ALIGN (8UL)
3314 :
3315 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L135 */
3316 : /* Encoded Size: Fixed (120 bytes) */
3317 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_initialized {
3318 : fd_stake_meta_t meta;
3319 : };
3320 : typedef struct fd_stake_state_v2_initialized fd_stake_state_v2_initialized_t;
3321 0 : #define FD_STAKE_STATE_V2_INITIALIZED_FOOTPRINT sizeof(fd_stake_state_v2_initialized_t)
3322 0 : #define FD_STAKE_STATE_V2_INITIALIZED_ALIGN (8UL)
3323 :
3324 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_initialized_global {
3325 : fd_stake_meta_t meta;
3326 : };
3327 : typedef struct fd_stake_state_v2_initialized_global fd_stake_state_v2_initialized_global_t;
3328 : #define FD_STAKE_STATE_V2_INITIALIZED_GLOBAL_FOOTPRINT sizeof(fd_stake_state_v2_initialized_global_t)
3329 : #define FD_STAKE_STATE_V2_INITIALIZED_GLOBAL_ALIGN (8UL)
3330 :
3331 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L136 */
3332 : /* Encoded Size: Fixed (193 bytes) */
3333 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_stake {
3334 : fd_stake_meta_t meta;
3335 : fd_stake_t stake;
3336 : fd_stake_flags_t stake_flags;
3337 : };
3338 : typedef struct fd_stake_state_v2_stake fd_stake_state_v2_stake_t;
3339 0 : #define FD_STAKE_STATE_V2_STAKE_FOOTPRINT sizeof(fd_stake_state_v2_stake_t)
3340 0 : #define FD_STAKE_STATE_V2_STAKE_ALIGN (8UL)
3341 :
3342 : struct __attribute__((aligned(8UL))) fd_stake_state_v2_stake_global {
3343 : fd_stake_meta_t meta;
3344 : fd_stake_t stake;
3345 : fd_stake_flags_t stake_flags;
3346 : };
3347 : typedef struct fd_stake_state_v2_stake_global fd_stake_state_v2_stake_global_t;
3348 : #define FD_STAKE_STATE_V2_STAKE_GLOBAL_FOOTPRINT sizeof(fd_stake_state_v2_stake_global_t)
3349 : #define FD_STAKE_STATE_V2_STAKE_GLOBAL_ALIGN (8UL)
3350 :
3351 : union fd_stake_state_v2_inner {
3352 : fd_stake_state_v2_initialized_t initialized;
3353 : fd_stake_state_v2_stake_t stake;
3354 : };
3355 : typedef union fd_stake_state_v2_inner fd_stake_state_v2_inner_t;
3356 :
3357 : union fd_stake_state_v2_inner_global {
3358 : fd_stake_state_v2_initialized_t initialized;
3359 : fd_stake_state_v2_stake_t stake;
3360 : };
3361 : typedef union fd_stake_state_v2_inner_global fd_stake_state_v2_inner_global_t;
3362 :
3363 : /* https://github.com/firedancer-io/solana/blob/v1.17/sdk/program/src/stake/state.rs#L132 */
3364 : struct fd_stake_state_v2 {
3365 : uint discriminant;
3366 : fd_stake_state_v2_inner_t inner;
3367 : };
3368 : typedef struct fd_stake_state_v2 fd_stake_state_v2_t;
3369 0 : #define FD_STAKE_STATE_V2_FOOTPRINT sizeof(fd_stake_state_v2_t)
3370 0 : #define FD_STAKE_STATE_V2_ALIGN (8UL)
3371 : struct fd_stake_state_v2_global {
3372 : uint discriminant;
3373 : fd_stake_state_v2_inner_global_t inner;
3374 : };
3375 : typedef struct fd_stake_state_v2_global fd_stake_state_v2_global_t;
3376 : #define FD_STAKE_STATE_V2_GLOBAL_FOOTPRINT sizeof(fd_stake_state_v2_global_t)
3377 : #define FD_STAKE_STATE_V2_GLOBAL_ALIGN (8UL)
3378 :
3379 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/current.rs#L17 */
3380 : /* Encoded Size: Fixed (72 bytes) */
3381 : struct __attribute__((aligned(8UL))) fd_nonce_data {
3382 : fd_pubkey_t authority;
3383 : fd_hash_t durable_nonce;
3384 : fd_fee_calculator_t fee_calculator;
3385 : };
3386 : typedef struct fd_nonce_data fd_nonce_data_t;
3387 0 : #define FD_NONCE_DATA_FOOTPRINT sizeof(fd_nonce_data_t)
3388 0 : #define FD_NONCE_DATA_ALIGN (8UL)
3389 :
3390 : struct __attribute__((aligned(8UL))) fd_nonce_data_global {
3391 : fd_pubkey_t authority;
3392 : fd_hash_t durable_nonce;
3393 : fd_fee_calculator_t fee_calculator;
3394 : };
3395 : typedef struct fd_nonce_data_global fd_nonce_data_global_t;
3396 : #define FD_NONCE_DATA_GLOBAL_FOOTPRINT sizeof(fd_nonce_data_global_t)
3397 : #define FD_NONCE_DATA_GLOBAL_ALIGN (8UL)
3398 :
3399 : union fd_nonce_state_inner {
3400 : fd_nonce_data_t initialized;
3401 : };
3402 : typedef union fd_nonce_state_inner fd_nonce_state_inner_t;
3403 :
3404 : union fd_nonce_state_inner_global {
3405 : fd_nonce_data_t initialized;
3406 : };
3407 : typedef union fd_nonce_state_inner_global fd_nonce_state_inner_global_t;
3408 :
3409 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/current.rs#L65 */
3410 : struct fd_nonce_state {
3411 : uint discriminant;
3412 : fd_nonce_state_inner_t inner;
3413 : };
3414 : typedef struct fd_nonce_state fd_nonce_state_t;
3415 0 : #define FD_NONCE_STATE_FOOTPRINT sizeof(fd_nonce_state_t)
3416 0 : #define FD_NONCE_STATE_ALIGN (8UL)
3417 : struct fd_nonce_state_global {
3418 : uint discriminant;
3419 : fd_nonce_state_inner_global_t inner;
3420 : };
3421 : typedef struct fd_nonce_state_global fd_nonce_state_global_t;
3422 : #define FD_NONCE_STATE_GLOBAL_FOOTPRINT sizeof(fd_nonce_state_global_t)
3423 : #define FD_NONCE_STATE_GLOBAL_ALIGN (8UL)
3424 :
3425 : union fd_nonce_state_versions_inner {
3426 : fd_nonce_state_t legacy;
3427 : fd_nonce_state_t current;
3428 : };
3429 : typedef union fd_nonce_state_versions_inner fd_nonce_state_versions_inner_t;
3430 :
3431 : union fd_nonce_state_versions_inner_global {
3432 : fd_nonce_state_global_t legacy;
3433 : fd_nonce_state_global_t current;
3434 : };
3435 : typedef union fd_nonce_state_versions_inner_global fd_nonce_state_versions_inner_global_t;
3436 :
3437 : /* https://github.com/solana-labs/solana/blob/8f2c8b8388a495d2728909e30460aa40dcc5d733/sdk/program/src/nonce/state/mod.rs#L9 */
3438 : struct fd_nonce_state_versions {
3439 : uint discriminant;
3440 : fd_nonce_state_versions_inner_t inner;
3441 : };
3442 : typedef struct fd_nonce_state_versions fd_nonce_state_versions_t;
3443 0 : #define FD_NONCE_STATE_VERSIONS_FOOTPRINT sizeof(fd_nonce_state_versions_t)
3444 0 : #define FD_NONCE_STATE_VERSIONS_ALIGN (8UL)
3445 : struct fd_nonce_state_versions_global {
3446 : uint discriminant;
3447 : fd_nonce_state_versions_inner_global_t inner;
3448 : };
3449 : typedef struct fd_nonce_state_versions_global fd_nonce_state_versions_global_t;
3450 : #define FD_NONCE_STATE_VERSIONS_GLOBAL_FOOTPRINT sizeof(fd_nonce_state_versions_global_t)
3451 : #define FD_NONCE_STATE_VERSIONS_GLOBAL_ALIGN (8UL)
3452 :
3453 : /* https://github.com/solana-labs/solana/blob/6c520396cd76807f6227a7973f7373b37894251c/sdk/src/compute_budget.rs#L28 */
3454 : /* Encoded Size: Fixed (8 bytes) */
3455 : struct __attribute__((aligned(8UL))) fd_compute_budget_program_instruction_request_units_deprecated {
3456 : uint units;
3457 : uint additional_fee;
3458 : };
3459 : typedef struct fd_compute_budget_program_instruction_request_units_deprecated fd_compute_budget_program_instruction_request_units_deprecated_t;
3460 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_FOOTPRINT sizeof(fd_compute_budget_program_instruction_request_units_deprecated_t)
3461 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_ALIGN (8UL)
3462 :
3463 : struct __attribute__((aligned(8UL))) fd_compute_budget_program_instruction_request_units_deprecated_global {
3464 : uint units;
3465 : uint additional_fee;
3466 : };
3467 : typedef struct fd_compute_budget_program_instruction_request_units_deprecated_global fd_compute_budget_program_instruction_request_units_deprecated_global_t;
3468 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_GLOBAL_FOOTPRINT sizeof(fd_compute_budget_program_instruction_request_units_deprecated_global_t)
3469 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_REQUEST_UNITS_DEPRECATED_GLOBAL_ALIGN (8UL)
3470 :
3471 : union fd_compute_budget_program_instruction_inner {
3472 : fd_compute_budget_program_instruction_request_units_deprecated_t request_units_deprecated;
3473 : uint request_heap_frame;
3474 : uint set_compute_unit_limit;
3475 : ulong set_compute_unit_price;
3476 : uint set_loaded_accounts_data_size_limit;
3477 : };
3478 : typedef union fd_compute_budget_program_instruction_inner fd_compute_budget_program_instruction_inner_t;
3479 :
3480 : union fd_compute_budget_program_instruction_inner_global {
3481 : fd_compute_budget_program_instruction_request_units_deprecated_t request_units_deprecated;
3482 : uint request_heap_frame;
3483 : uint set_compute_unit_limit;
3484 : ulong set_compute_unit_price;
3485 : uint set_loaded_accounts_data_size_limit;
3486 : };
3487 : typedef union fd_compute_budget_program_instruction_inner_global fd_compute_budget_program_instruction_inner_global_t;
3488 :
3489 : /* https://github.com/solana-labs/solana/blob/6c520396cd76807f6227a7973f7373b37894251c/sdk/src/compute_budget.rs#L25 */
3490 : struct fd_compute_budget_program_instruction {
3491 : uint discriminant;
3492 : fd_compute_budget_program_instruction_inner_t inner;
3493 : };
3494 : typedef struct fd_compute_budget_program_instruction fd_compute_budget_program_instruction_t;
3495 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_compute_budget_program_instruction_t)
3496 0 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_ALIGN (8UL)
3497 : struct fd_compute_budget_program_instruction_global {
3498 : uint discriminant;
3499 : fd_compute_budget_program_instruction_inner_global_t inner;
3500 : };
3501 : typedef struct fd_compute_budget_program_instruction_global fd_compute_budget_program_instruction_global_t;
3502 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_compute_budget_program_instruction_global_t)
3503 : #define FD_COMPUTE_BUDGET_PROGRAM_INSTRUCTION_GLOBAL_ALIGN (8UL)
3504 :
3505 : /* https://github.com/solana-labs/solana/blob/a03ae63daff987912c48ee286eb8ee7e8a84bf01/programs/config/src/lib.rs#L32 */
3506 : /* Encoded Size: Dynamic */
3507 : struct __attribute__((aligned(8UL))) fd_config_keys {
3508 : ushort keys_len;
3509 : fd_config_keys_pair_t * keys;
3510 : };
3511 : typedef struct fd_config_keys fd_config_keys_t;
3512 0 : #define FD_CONFIG_KEYS_FOOTPRINT sizeof(fd_config_keys_t)
3513 0 : #define FD_CONFIG_KEYS_ALIGN (8UL)
3514 :
3515 : struct __attribute__((aligned(8UL))) fd_config_keys_global {
3516 : ushort keys_len;
3517 : ulong keys_gaddr;
3518 : };
3519 : typedef struct fd_config_keys_global fd_config_keys_global_t;
3520 : #define FD_CONFIG_KEYS_GLOBAL_FOOTPRINT sizeof(fd_config_keys_global_t)
3521 : #define FD_CONFIG_KEYS_GLOBAL_ALIGN (8UL)
3522 :
3523 : /* */
3524 : /* Encoded Size: Dynamic */
3525 : struct __attribute__((aligned(8UL))) fd_bpf_loader_program_instruction_write {
3526 : uint offset;
3527 : ulong bytes_len;
3528 : uchar* bytes;
3529 : };
3530 : typedef struct fd_bpf_loader_program_instruction_write fd_bpf_loader_program_instruction_write_t;
3531 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_write_t)
3532 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3533 :
3534 : struct __attribute__((aligned(8UL))) fd_bpf_loader_program_instruction_write_global {
3535 : uint offset;
3536 : ulong bytes_len;
3537 : ulong bytes_gaddr;
3538 : };
3539 : typedef struct fd_bpf_loader_program_instruction_write_global fd_bpf_loader_program_instruction_write_global_t;
3540 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_GLOBAL_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_write_global_t)
3541 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_WRITE_GLOBAL_ALIGN (8UL)
3542 :
3543 : union fd_bpf_loader_program_instruction_inner {
3544 : fd_bpf_loader_program_instruction_write_t write;
3545 : };
3546 : typedef union fd_bpf_loader_program_instruction_inner fd_bpf_loader_program_instruction_inner_t;
3547 :
3548 : union fd_bpf_loader_program_instruction_inner_global {
3549 : fd_bpf_loader_program_instruction_write_global_t write;
3550 : };
3551 : typedef union fd_bpf_loader_program_instruction_inner_global fd_bpf_loader_program_instruction_inner_global_t;
3552 :
3553 : /* */
3554 : struct fd_bpf_loader_program_instruction {
3555 : uint discriminant;
3556 : fd_bpf_loader_program_instruction_inner_t inner;
3557 : };
3558 : typedef struct fd_bpf_loader_program_instruction fd_bpf_loader_program_instruction_t;
3559 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_t)
3560 0 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_ALIGN (8UL)
3561 : struct fd_bpf_loader_program_instruction_global {
3562 : uint discriminant;
3563 : fd_bpf_loader_program_instruction_inner_global_t inner;
3564 : };
3565 : typedef struct fd_bpf_loader_program_instruction_global fd_bpf_loader_program_instruction_global_t;
3566 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_bpf_loader_program_instruction_global_t)
3567 : #define FD_BPF_LOADER_PROGRAM_INSTRUCTION_GLOBAL_ALIGN (8UL)
3568 :
3569 : /* https://github.com/anza-xyz/agave/blob/007194391ca8313b2854d523769d0bedf040ef92/sdk/program/src/loader_v4_instruction.rs#L11-L17 */
3570 : /* Encoded Size: Dynamic */
3571 : struct __attribute__((aligned(8UL))) fd_loader_v4_program_instruction_write {
3572 : uint offset;
3573 : ulong bytes_len;
3574 : uchar* bytes;
3575 : };
3576 : typedef struct fd_loader_v4_program_instruction_write fd_loader_v4_program_instruction_write_t;
3577 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_loader_v4_program_instruction_write_t)
3578 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3579 :
3580 : struct __attribute__((aligned(8UL))) fd_loader_v4_program_instruction_write_global {
3581 : uint offset;
3582 : ulong bytes_len;
3583 : ulong bytes_gaddr;
3584 : };
3585 : typedef struct fd_loader_v4_program_instruction_write_global fd_loader_v4_program_instruction_write_global_t;
3586 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_GLOBAL_FOOTPRINT sizeof(fd_loader_v4_program_instruction_write_global_t)
3587 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_WRITE_GLOBAL_ALIGN (8UL)
3588 :
3589 : /* https://github.com/anza-xyz/agave/blob/007194391ca8313b2854d523769d0bedf040ef92/sdk/program/src/loader_v4_instruction.rs#L33-L36 */
3590 : /* Encoded Size: Fixed (4 bytes) */
3591 : struct __attribute__((aligned(8UL))) fd_loader_v4_program_instruction_truncate {
3592 : uint new_size;
3593 : };
3594 : typedef struct fd_loader_v4_program_instruction_truncate fd_loader_v4_program_instruction_truncate_t;
3595 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_TRUNCATE_FOOTPRINT sizeof(fd_loader_v4_program_instruction_truncate_t)
3596 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_TRUNCATE_ALIGN (8UL)
3597 :
3598 : struct __attribute__((aligned(8UL))) fd_loader_v4_program_instruction_truncate_global {
3599 : uint new_size;
3600 : };
3601 : typedef struct fd_loader_v4_program_instruction_truncate_global fd_loader_v4_program_instruction_truncate_global_t;
3602 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_TRUNCATE_GLOBAL_FOOTPRINT sizeof(fd_loader_v4_program_instruction_truncate_global_t)
3603 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_TRUNCATE_GLOBAL_ALIGN (8UL)
3604 :
3605 : union fd_loader_v4_program_instruction_inner {
3606 : fd_loader_v4_program_instruction_write_t write;
3607 : fd_loader_v4_program_instruction_truncate_t truncate;
3608 : };
3609 : typedef union fd_loader_v4_program_instruction_inner fd_loader_v4_program_instruction_inner_t;
3610 :
3611 : union fd_loader_v4_program_instruction_inner_global {
3612 : fd_loader_v4_program_instruction_write_global_t write;
3613 : fd_loader_v4_program_instruction_truncate_t truncate;
3614 : };
3615 : typedef union fd_loader_v4_program_instruction_inner_global fd_loader_v4_program_instruction_inner_global_t;
3616 :
3617 : /* https://github.com/anza-xyz/agave/blob/007194391ca8313b2854d523769d0bedf040ef92/sdk/program/src/loader_v4_instruction.rs#L5 */
3618 : struct fd_loader_v4_program_instruction {
3619 : uint discriminant;
3620 : fd_loader_v4_program_instruction_inner_t inner;
3621 : };
3622 : typedef struct fd_loader_v4_program_instruction fd_loader_v4_program_instruction_t;
3623 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_loader_v4_program_instruction_t)
3624 0 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_ALIGN (8UL)
3625 : struct fd_loader_v4_program_instruction_global {
3626 : uint discriminant;
3627 : fd_loader_v4_program_instruction_inner_global_t inner;
3628 : };
3629 : typedef struct fd_loader_v4_program_instruction_global fd_loader_v4_program_instruction_global_t;
3630 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_loader_v4_program_instruction_global_t)
3631 : #define FD_LOADER_V4_PROGRAM_INSTRUCTION_GLOBAL_ALIGN (8UL)
3632 :
3633 : /* */
3634 : /* Encoded Size: Dynamic */
3635 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_write {
3636 : uint offset;
3637 : ulong bytes_len;
3638 : uchar* bytes;
3639 : };
3640 : typedef struct fd_bpf_upgradeable_loader_program_instruction_write fd_bpf_upgradeable_loader_program_instruction_write_t;
3641 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_write_t)
3642 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_ALIGN (8UL)
3643 :
3644 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_write_global {
3645 : uint offset;
3646 : ulong bytes_len;
3647 : ulong bytes_gaddr;
3648 : };
3649 : typedef struct fd_bpf_upgradeable_loader_program_instruction_write_global fd_bpf_upgradeable_loader_program_instruction_write_global_t;
3650 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_write_global_t)
3651 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_WRITE_GLOBAL_ALIGN (8UL)
3652 :
3653 : /* */
3654 : /* Encoded Size: Fixed (8 bytes) */
3655 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len {
3656 : ulong max_data_len;
3657 : };
3658 : 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;
3659 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)
3660 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_ALIGN (8UL)
3661 :
3662 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_global {
3663 : ulong max_data_len;
3664 : };
3665 : typedef struct fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_global fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_global_t;
3666 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_global_t)
3667 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_DEPLOY_WITH_MAX_DATA_LEN_GLOBAL_ALIGN (8UL)
3668 :
3669 : /* */
3670 : /* Encoded Size: Fixed (4 bytes) */
3671 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_extend_program {
3672 : uint additional_bytes;
3673 : };
3674 : typedef struct fd_bpf_upgradeable_loader_program_instruction_extend_program fd_bpf_upgradeable_loader_program_instruction_extend_program_t;
3675 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_extend_program_t)
3676 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_ALIGN (8UL)
3677 :
3678 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_program_instruction_extend_program_global {
3679 : uint additional_bytes;
3680 : };
3681 : typedef struct fd_bpf_upgradeable_loader_program_instruction_extend_program_global fd_bpf_upgradeable_loader_program_instruction_extend_program_global_t;
3682 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_extend_program_global_t)
3683 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_EXTEND_PROGRAM_GLOBAL_ALIGN (8UL)
3684 :
3685 : union fd_bpf_upgradeable_loader_program_instruction_inner {
3686 : fd_bpf_upgradeable_loader_program_instruction_write_t write;
3687 : fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t deploy_with_max_data_len;
3688 : fd_bpf_upgradeable_loader_program_instruction_extend_program_t extend_program;
3689 : };
3690 : typedef union fd_bpf_upgradeable_loader_program_instruction_inner fd_bpf_upgradeable_loader_program_instruction_inner_t;
3691 :
3692 : union fd_bpf_upgradeable_loader_program_instruction_inner_global {
3693 : fd_bpf_upgradeable_loader_program_instruction_write_global_t write;
3694 : fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t deploy_with_max_data_len;
3695 : fd_bpf_upgradeable_loader_program_instruction_extend_program_t extend_program;
3696 : };
3697 : typedef union fd_bpf_upgradeable_loader_program_instruction_inner_global fd_bpf_upgradeable_loader_program_instruction_inner_global_t;
3698 :
3699 : /* */
3700 : struct fd_bpf_upgradeable_loader_program_instruction {
3701 : uint discriminant;
3702 : fd_bpf_upgradeable_loader_program_instruction_inner_t inner;
3703 : };
3704 : typedef struct fd_bpf_upgradeable_loader_program_instruction fd_bpf_upgradeable_loader_program_instruction_t;
3705 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_t)
3706 0 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_ALIGN (8UL)
3707 : struct fd_bpf_upgradeable_loader_program_instruction_global {
3708 : uint discriminant;
3709 : fd_bpf_upgradeable_loader_program_instruction_inner_global_t inner;
3710 : };
3711 : typedef struct fd_bpf_upgradeable_loader_program_instruction_global fd_bpf_upgradeable_loader_program_instruction_global_t;
3712 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_program_instruction_global_t)
3713 : #define FD_BPF_UPGRADEABLE_LOADER_PROGRAM_INSTRUCTION_GLOBAL_ALIGN (8UL)
3714 :
3715 : /* */
3716 : /* Encoded Size: Dynamic */
3717 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_buffer {
3718 : fd_pubkey_t * authority_address;
3719 : };
3720 : typedef struct fd_bpf_upgradeable_loader_state_buffer fd_bpf_upgradeable_loader_state_buffer_t;
3721 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_buffer_t)
3722 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_ALIGN (8UL)
3723 :
3724 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_buffer_global {
3725 : ulong authority_address_gaddr;
3726 : };
3727 : typedef struct fd_bpf_upgradeable_loader_state_buffer_global fd_bpf_upgradeable_loader_state_buffer_global_t;
3728 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_buffer_global_t)
3729 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_BUFFER_GLOBAL_ALIGN (8UL)
3730 :
3731 : /* */
3732 : /* Encoded Size: Fixed (32 bytes) */
3733 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program {
3734 : fd_pubkey_t programdata_address;
3735 : };
3736 : typedef struct fd_bpf_upgradeable_loader_state_program fd_bpf_upgradeable_loader_state_program_t;
3737 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_t)
3738 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_ALIGN (8UL)
3739 :
3740 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_global {
3741 : fd_pubkey_t programdata_address;
3742 : };
3743 : typedef struct fd_bpf_upgradeable_loader_state_program_global fd_bpf_upgradeable_loader_state_program_global_t;
3744 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_global_t)
3745 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_GLOBAL_ALIGN (8UL)
3746 :
3747 : /* */
3748 : /* Encoded Size: Dynamic */
3749 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_data {
3750 : ulong slot;
3751 : fd_pubkey_t * upgrade_authority_address;
3752 : };
3753 : typedef struct fd_bpf_upgradeable_loader_state_program_data fd_bpf_upgradeable_loader_state_program_data_t;
3754 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_data_t)
3755 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_ALIGN (8UL)
3756 :
3757 : struct __attribute__((aligned(8UL))) fd_bpf_upgradeable_loader_state_program_data_global {
3758 : ulong slot;
3759 : ulong upgrade_authority_address_gaddr;
3760 : };
3761 : typedef struct fd_bpf_upgradeable_loader_state_program_data_global fd_bpf_upgradeable_loader_state_program_data_global_t;
3762 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_program_data_global_t)
3763 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_PROGRAM_DATA_GLOBAL_ALIGN (8UL)
3764 :
3765 : union fd_bpf_upgradeable_loader_state_inner {
3766 : fd_bpf_upgradeable_loader_state_buffer_t buffer;
3767 : fd_bpf_upgradeable_loader_state_program_t program;
3768 : fd_bpf_upgradeable_loader_state_program_data_t program_data;
3769 : };
3770 : typedef union fd_bpf_upgradeable_loader_state_inner fd_bpf_upgradeable_loader_state_inner_t;
3771 :
3772 : union fd_bpf_upgradeable_loader_state_inner_global {
3773 : fd_bpf_upgradeable_loader_state_buffer_global_t buffer;
3774 : fd_bpf_upgradeable_loader_state_program_t program;
3775 : fd_bpf_upgradeable_loader_state_program_data_global_t program_data;
3776 : };
3777 : typedef union fd_bpf_upgradeable_loader_state_inner_global fd_bpf_upgradeable_loader_state_inner_global_t;
3778 :
3779 : /* */
3780 : struct fd_bpf_upgradeable_loader_state {
3781 : uint discriminant;
3782 : fd_bpf_upgradeable_loader_state_inner_t inner;
3783 : };
3784 : typedef struct fd_bpf_upgradeable_loader_state fd_bpf_upgradeable_loader_state_t;
3785 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_t)
3786 0 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_ALIGN (8UL)
3787 : struct fd_bpf_upgradeable_loader_state_global {
3788 : uint discriminant;
3789 : fd_bpf_upgradeable_loader_state_inner_global_t inner;
3790 : };
3791 : typedef struct fd_bpf_upgradeable_loader_state_global fd_bpf_upgradeable_loader_state_global_t;
3792 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_GLOBAL_FOOTPRINT sizeof(fd_bpf_upgradeable_loader_state_global_t)
3793 : #define FD_BPF_UPGRADEABLE_LOADER_STATE_GLOBAL_ALIGN (8UL)
3794 :
3795 : /* https://github.com/anza-xyz/agave/blob/v2.1.4/sdk/program/src/loader_v4.rs#L33-L43 */
3796 : /* Encoded Size: Fixed (48 bytes) */
3797 : struct __attribute__((aligned(8UL))) fd_loader_v4_state {
3798 : ulong slot;
3799 : fd_pubkey_t authority_address_or_next_version;
3800 : ulong status;
3801 : };
3802 : typedef struct fd_loader_v4_state fd_loader_v4_state_t;
3803 0 : #define FD_LOADER_V4_STATE_FOOTPRINT sizeof(fd_loader_v4_state_t)
3804 0 : #define FD_LOADER_V4_STATE_ALIGN (8UL)
3805 :
3806 : struct __attribute__((aligned(8UL))) fd_loader_v4_state_global {
3807 : ulong slot;
3808 : fd_pubkey_t authority_address_or_next_version;
3809 : ulong status;
3810 : };
3811 : typedef struct fd_loader_v4_state_global fd_loader_v4_state_global_t;
3812 : #define FD_LOADER_V4_STATE_GLOBAL_FOOTPRINT sizeof(fd_loader_v4_state_global_t)
3813 : #define FD_LOADER_V4_STATE_GLOBAL_ALIGN (8UL)
3814 :
3815 : /* https://github.com/firedancer-io/solana/blob/f4b7c54f9e021b40cfc7cbd32dc12b19dedbe791/ledger/src/blockstore_meta.rs#L178 */
3816 : /* Encoded Size: Fixed (33 bytes) */
3817 : struct __attribute__((aligned(8UL))) fd_frozen_hash_status {
3818 : fd_hash_t frozen_hash;
3819 : uchar is_duplicate_confirmed;
3820 : };
3821 : typedef struct fd_frozen_hash_status fd_frozen_hash_status_t;
3822 0 : #define FD_FROZEN_HASH_STATUS_FOOTPRINT sizeof(fd_frozen_hash_status_t)
3823 0 : #define FD_FROZEN_HASH_STATUS_ALIGN (8UL)
3824 :
3825 : struct __attribute__((aligned(8UL))) fd_frozen_hash_status_global {
3826 : fd_hash_t frozen_hash;
3827 : uchar is_duplicate_confirmed;
3828 : };
3829 : typedef struct fd_frozen_hash_status_global fd_frozen_hash_status_global_t;
3830 : #define FD_FROZEN_HASH_STATUS_GLOBAL_FOOTPRINT sizeof(fd_frozen_hash_status_global_t)
3831 : #define FD_FROZEN_HASH_STATUS_GLOBAL_ALIGN (8UL)
3832 :
3833 : union fd_frozen_hash_versioned_inner {
3834 : fd_frozen_hash_status_t current;
3835 : };
3836 : typedef union fd_frozen_hash_versioned_inner fd_frozen_hash_versioned_inner_t;
3837 :
3838 : union fd_frozen_hash_versioned_inner_global {
3839 : fd_frozen_hash_status_t current;
3840 : };
3841 : typedef union fd_frozen_hash_versioned_inner_global fd_frozen_hash_versioned_inner_global_t;
3842 :
3843 : /* https://github.com/firedancer-io/solana/blob/f4b7c54f9e021b40cfc7cbd32dc12b19dedbe791/ledger/src/blockstore_meta.rs#L157 */
3844 : struct fd_frozen_hash_versioned {
3845 : uint discriminant;
3846 : fd_frozen_hash_versioned_inner_t inner;
3847 : };
3848 : typedef struct fd_frozen_hash_versioned fd_frozen_hash_versioned_t;
3849 0 : #define FD_FROZEN_HASH_VERSIONED_FOOTPRINT sizeof(fd_frozen_hash_versioned_t)
3850 0 : #define FD_FROZEN_HASH_VERSIONED_ALIGN (8UL)
3851 : struct fd_frozen_hash_versioned_global {
3852 : uint discriminant;
3853 : fd_frozen_hash_versioned_inner_global_t inner;
3854 : };
3855 : typedef struct fd_frozen_hash_versioned_global fd_frozen_hash_versioned_global_t;
3856 : #define FD_FROZEN_HASH_VERSIONED_GLOBAL_FOOTPRINT sizeof(fd_frozen_hash_versioned_global_t)
3857 : #define FD_FROZEN_HASH_VERSIONED_GLOBAL_ALIGN (8UL)
3858 :
3859 : /* */
3860 : /* Encoded Size: Dynamic */
3861 : struct __attribute__((aligned(8UL))) fd_lookup_table_meta {
3862 : ulong deactivation_slot;
3863 : ulong last_extended_slot;
3864 : uchar last_extended_slot_start_index;
3865 : fd_pubkey_t authority;
3866 : uchar has_authority;
3867 : ushort _padding;
3868 : };
3869 : typedef struct fd_lookup_table_meta fd_lookup_table_meta_t;
3870 0 : #define FD_LOOKUP_TABLE_META_FOOTPRINT sizeof(fd_lookup_table_meta_t)
3871 0 : #define FD_LOOKUP_TABLE_META_ALIGN (8UL)
3872 :
3873 : struct __attribute__((aligned(8UL))) fd_lookup_table_meta_global {
3874 : ulong deactivation_slot;
3875 : ulong last_extended_slot;
3876 : uchar last_extended_slot_start_index;
3877 : fd_pubkey_t authority;
3878 : uchar has_authority;
3879 : ushort _padding;
3880 : };
3881 : typedef struct fd_lookup_table_meta_global fd_lookup_table_meta_global_t;
3882 : #define FD_LOOKUP_TABLE_META_GLOBAL_FOOTPRINT sizeof(fd_lookup_table_meta_global_t)
3883 : #define FD_LOOKUP_TABLE_META_GLOBAL_ALIGN (8UL)
3884 :
3885 : /* */
3886 : /* Encoded Size: Dynamic */
3887 : struct __attribute__((aligned(8UL))) fd_address_lookup_table {
3888 : fd_lookup_table_meta_t meta;
3889 : };
3890 : typedef struct fd_address_lookup_table fd_address_lookup_table_t;
3891 0 : #define FD_ADDRESS_LOOKUP_TABLE_FOOTPRINT sizeof(fd_address_lookup_table_t)
3892 0 : #define FD_ADDRESS_LOOKUP_TABLE_ALIGN (8UL)
3893 :
3894 : struct __attribute__((aligned(8UL))) fd_address_lookup_table_global {
3895 : fd_lookup_table_meta_global_t meta;
3896 : };
3897 : typedef struct fd_address_lookup_table_global fd_address_lookup_table_global_t;
3898 : #define FD_ADDRESS_LOOKUP_TABLE_GLOBAL_FOOTPRINT sizeof(fd_address_lookup_table_global_t)
3899 : #define FD_ADDRESS_LOOKUP_TABLE_GLOBAL_ALIGN (8UL)
3900 :
3901 : union fd_address_lookup_table_state_inner {
3902 : fd_address_lookup_table_t lookup_table;
3903 : };
3904 : typedef union fd_address_lookup_table_state_inner fd_address_lookup_table_state_inner_t;
3905 :
3906 : union fd_address_lookup_table_state_inner_global {
3907 : fd_address_lookup_table_global_t lookup_table;
3908 : };
3909 : typedef union fd_address_lookup_table_state_inner_global fd_address_lookup_table_state_inner_global_t;
3910 :
3911 : /* */
3912 : struct fd_address_lookup_table_state {
3913 : uint discriminant;
3914 : fd_address_lookup_table_state_inner_t inner;
3915 : };
3916 : typedef struct fd_address_lookup_table_state fd_address_lookup_table_state_t;
3917 0 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_FOOTPRINT sizeof(fd_address_lookup_table_state_t)
3918 0 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_ALIGN (8UL)
3919 : struct fd_address_lookup_table_state_global {
3920 : uint discriminant;
3921 : fd_address_lookup_table_state_inner_global_t inner;
3922 : };
3923 : typedef struct fd_address_lookup_table_state_global fd_address_lookup_table_state_global_t;
3924 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_GLOBAL_FOOTPRINT sizeof(fd_address_lookup_table_state_global_t)
3925 : #define FD_ADDRESS_LOOKUP_TABLE_STATE_GLOBAL_ALIGN (8UL)
3926 :
3927 : /* Encoded Size: Dynamic */
3928 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_inner {
3929 : ulong vec_len;
3930 : uchar* vec;
3931 : };
3932 : typedef struct fd_gossip_bitvec_u8_inner fd_gossip_bitvec_u8_inner_t;
3933 0 : #define FD_GOSSIP_BITVEC_U8_INNER_FOOTPRINT sizeof(fd_gossip_bitvec_u8_inner_t)
3934 0 : #define FD_GOSSIP_BITVEC_U8_INNER_ALIGN (8UL)
3935 :
3936 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_inner_global {
3937 : ulong vec_len;
3938 : ulong vec_gaddr;
3939 : };
3940 : typedef struct fd_gossip_bitvec_u8_inner_global fd_gossip_bitvec_u8_inner_global_t;
3941 : #define FD_GOSSIP_BITVEC_U8_INNER_GLOBAL_FOOTPRINT sizeof(fd_gossip_bitvec_u8_inner_global_t)
3942 : #define FD_GOSSIP_BITVEC_U8_INNER_GLOBAL_ALIGN (8UL)
3943 :
3944 : /* Encoded Size: Dynamic */
3945 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8 {
3946 : fd_gossip_bitvec_u8_inner_t bits;
3947 : uchar has_bits;
3948 : ulong len;
3949 : };
3950 : typedef struct fd_gossip_bitvec_u8 fd_gossip_bitvec_u8_t;
3951 0 : #define FD_GOSSIP_BITVEC_U8_FOOTPRINT sizeof(fd_gossip_bitvec_u8_t)
3952 0 : #define FD_GOSSIP_BITVEC_U8_ALIGN (8UL)
3953 :
3954 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u8_global {
3955 : fd_gossip_bitvec_u8_inner_t bits;
3956 : uchar has_bits;
3957 : ulong len;
3958 : };
3959 : typedef struct fd_gossip_bitvec_u8_global fd_gossip_bitvec_u8_global_t;
3960 : #define FD_GOSSIP_BITVEC_U8_GLOBAL_FOOTPRINT sizeof(fd_gossip_bitvec_u8_global_t)
3961 : #define FD_GOSSIP_BITVEC_U8_GLOBAL_ALIGN (8UL)
3962 :
3963 : /* Encoded Size: Dynamic */
3964 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_inner {
3965 : ulong vec_len;
3966 : ulong* vec;
3967 : };
3968 : typedef struct fd_gossip_bitvec_u64_inner fd_gossip_bitvec_u64_inner_t;
3969 0 : #define FD_GOSSIP_BITVEC_U64_INNER_FOOTPRINT sizeof(fd_gossip_bitvec_u64_inner_t)
3970 0 : #define FD_GOSSIP_BITVEC_U64_INNER_ALIGN (8UL)
3971 :
3972 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_inner_global {
3973 : ulong vec_len;
3974 : ulong vec_gaddr;
3975 : };
3976 : typedef struct fd_gossip_bitvec_u64_inner_global fd_gossip_bitvec_u64_inner_global_t;
3977 : #define FD_GOSSIP_BITVEC_U64_INNER_GLOBAL_FOOTPRINT sizeof(fd_gossip_bitvec_u64_inner_global_t)
3978 : #define FD_GOSSIP_BITVEC_U64_INNER_GLOBAL_ALIGN (8UL)
3979 :
3980 : /* Encoded Size: Dynamic */
3981 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64 {
3982 : fd_gossip_bitvec_u64_inner_t bits;
3983 : uchar has_bits;
3984 : ulong len;
3985 : };
3986 : typedef struct fd_gossip_bitvec_u64 fd_gossip_bitvec_u64_t;
3987 0 : #define FD_GOSSIP_BITVEC_U64_FOOTPRINT sizeof(fd_gossip_bitvec_u64_t)
3988 0 : #define FD_GOSSIP_BITVEC_U64_ALIGN (8UL)
3989 :
3990 : struct __attribute__((aligned(8UL))) fd_gossip_bitvec_u64_global {
3991 : fd_gossip_bitvec_u64_inner_t bits;
3992 : uchar has_bits;
3993 : ulong len;
3994 : };
3995 : typedef struct fd_gossip_bitvec_u64_global fd_gossip_bitvec_u64_global_t;
3996 : #define FD_GOSSIP_BITVEC_U64_GLOBAL_FOOTPRINT sizeof(fd_gossip_bitvec_u64_global_t)
3997 : #define FD_GOSSIP_BITVEC_U64_GLOBAL_ALIGN (8UL)
3998 :
3999 : /* https://github.com/solana-labs/solana/blob/52616cf7aa424a80f770e5ec3f2cd49d1cfeb845/gossip/src/ping_pong.rs#L22 */
4000 : /* Encoded Size: Fixed (128 bytes) */
4001 : struct __attribute__((aligned(8UL))) fd_gossip_ping {
4002 : fd_pubkey_t from;
4003 : fd_hash_t token;
4004 : fd_signature_t signature;
4005 : };
4006 : typedef struct fd_gossip_ping fd_gossip_ping_t;
4007 0 : #define FD_GOSSIP_PING_FOOTPRINT sizeof(fd_gossip_ping_t)
4008 0 : #define FD_GOSSIP_PING_ALIGN (8UL)
4009 :
4010 : struct __attribute__((aligned(8UL))) fd_gossip_ping_global {
4011 : fd_pubkey_t from;
4012 : fd_hash_t token;
4013 : fd_signature_t signature;
4014 : };
4015 : typedef struct fd_gossip_ping_global fd_gossip_ping_global_t;
4016 : #define FD_GOSSIP_PING_GLOBAL_FOOTPRINT sizeof(fd_gossip_ping_global_t)
4017 : #define FD_GOSSIP_PING_GLOBAL_ALIGN (8UL)
4018 :
4019 : union fd_gossip_ip_addr_inner {
4020 : fd_gossip_ip4_addr_t ip4;
4021 : fd_gossip_ip6_addr_t ip6;
4022 : };
4023 : typedef union fd_gossip_ip_addr_inner fd_gossip_ip_addr_inner_t;
4024 :
4025 : union fd_gossip_ip_addr_inner_global {
4026 : fd_gossip_ip4_addr_global_t ip4;
4027 : fd_gossip_ip6_addr_global_t ip6;
4028 : };
4029 : typedef union fd_gossip_ip_addr_inner_global fd_gossip_ip_addr_inner_global_t;
4030 :
4031 : /* Unnecessary and sad wrapper type. IPv4 addresses could have been mapped to IPv6 */
4032 : struct fd_gossip_ip_addr {
4033 : uint discriminant;
4034 : fd_gossip_ip_addr_inner_t inner;
4035 : };
4036 : typedef struct fd_gossip_ip_addr fd_gossip_ip_addr_t;
4037 6 : #define FD_GOSSIP_IP_ADDR_FOOTPRINT sizeof(fd_gossip_ip_addr_t)
4038 6 : #define FD_GOSSIP_IP_ADDR_ALIGN (8UL)
4039 : struct fd_gossip_ip_addr_global {
4040 : uint discriminant;
4041 : fd_gossip_ip_addr_inner_global_t inner;
4042 : };
4043 : typedef struct fd_gossip_ip_addr_global fd_gossip_ip_addr_global_t;
4044 : #define FD_GOSSIP_IP_ADDR_GLOBAL_FOOTPRINT sizeof(fd_gossip_ip_addr_global_t)
4045 : #define FD_GOSSIP_IP_ADDR_GLOBAL_ALIGN (8UL)
4046 :
4047 : /* Encoded Size: Dynamic */
4048 : struct __attribute__((aligned(8UL))) fd_gossip_prune_data {
4049 : fd_pubkey_t pubkey;
4050 : ulong prunes_len;
4051 : fd_pubkey_t * prunes;
4052 : fd_signature_t signature;
4053 : fd_pubkey_t destination;
4054 : ulong wallclock;
4055 : };
4056 : typedef struct fd_gossip_prune_data fd_gossip_prune_data_t;
4057 0 : #define FD_GOSSIP_PRUNE_DATA_FOOTPRINT sizeof(fd_gossip_prune_data_t)
4058 0 : #define FD_GOSSIP_PRUNE_DATA_ALIGN (8UL)
4059 :
4060 : struct __attribute__((aligned(8UL))) fd_gossip_prune_data_global {
4061 : fd_pubkey_t pubkey;
4062 : ulong prunes_len;
4063 : ulong prunes_gaddr;
4064 : fd_signature_t signature;
4065 : fd_pubkey_t destination;
4066 : ulong wallclock;
4067 : };
4068 : typedef struct fd_gossip_prune_data_global fd_gossip_prune_data_global_t;
4069 : #define FD_GOSSIP_PRUNE_DATA_GLOBAL_FOOTPRINT sizeof(fd_gossip_prune_data_global_t)
4070 : #define FD_GOSSIP_PRUNE_DATA_GLOBAL_ALIGN (8UL)
4071 :
4072 : /* Encoded Size: Dynamic */
4073 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data {
4074 : fd_pubkey_t pubkey;
4075 : ulong prunes_len;
4076 : fd_pubkey_t * prunes;
4077 : fd_pubkey_t destination;
4078 : ulong wallclock;
4079 : };
4080 : typedef struct fd_gossip_prune_sign_data fd_gossip_prune_sign_data_t;
4081 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_FOOTPRINT sizeof(fd_gossip_prune_sign_data_t)
4082 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_ALIGN (8UL)
4083 :
4084 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data_global {
4085 : fd_pubkey_t pubkey;
4086 : ulong prunes_len;
4087 : ulong prunes_gaddr;
4088 : fd_pubkey_t destination;
4089 : ulong wallclock;
4090 : };
4091 : typedef struct fd_gossip_prune_sign_data_global fd_gossip_prune_sign_data_global_t;
4092 : #define FD_GOSSIP_PRUNE_SIGN_DATA_GLOBAL_FOOTPRINT sizeof(fd_gossip_prune_sign_data_global_t)
4093 : #define FD_GOSSIP_PRUNE_SIGN_DATA_GLOBAL_ALIGN (8UL)
4094 :
4095 : /* Encoded Size: Dynamic */
4096 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data_with_prefix {
4097 : ulong prefix_len;
4098 : uchar* prefix;
4099 : fd_gossip_prune_sign_data_t data;
4100 : };
4101 : typedef struct fd_gossip_prune_sign_data_with_prefix fd_gossip_prune_sign_data_with_prefix_t;
4102 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_WITH_PREFIX_FOOTPRINT sizeof(fd_gossip_prune_sign_data_with_prefix_t)
4103 0 : #define FD_GOSSIP_PRUNE_SIGN_DATA_WITH_PREFIX_ALIGN (8UL)
4104 :
4105 : struct __attribute__((aligned(8UL))) fd_gossip_prune_sign_data_with_prefix_global {
4106 : ulong prefix_len;
4107 : ulong prefix_gaddr;
4108 : fd_gossip_prune_sign_data_global_t data;
4109 : };
4110 : typedef struct fd_gossip_prune_sign_data_with_prefix_global fd_gossip_prune_sign_data_with_prefix_global_t;
4111 : #define FD_GOSSIP_PRUNE_SIGN_DATA_WITH_PREFIX_GLOBAL_FOOTPRINT sizeof(fd_gossip_prune_sign_data_with_prefix_global_t)
4112 : #define FD_GOSSIP_PRUNE_SIGN_DATA_WITH_PREFIX_GLOBAL_ALIGN (8UL)
4113 :
4114 : /* Encoded Size: Dynamic */
4115 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_old {
4116 : fd_gossip_ip_addr_t addr;
4117 : ushort port;
4118 : };
4119 : typedef struct fd_gossip_socket_addr_old fd_gossip_socket_addr_old_t;
4120 0 : #define FD_GOSSIP_SOCKET_ADDR_OLD_FOOTPRINT sizeof(fd_gossip_socket_addr_old_t)
4121 0 : #define FD_GOSSIP_SOCKET_ADDR_OLD_ALIGN (8UL)
4122 :
4123 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_old_global {
4124 : fd_gossip_ip_addr_global_t addr;
4125 : ushort port;
4126 : };
4127 : typedef struct fd_gossip_socket_addr_old_global fd_gossip_socket_addr_old_global_t;
4128 : #define FD_GOSSIP_SOCKET_ADDR_OLD_GLOBAL_FOOTPRINT sizeof(fd_gossip_socket_addr_old_global_t)
4129 : #define FD_GOSSIP_SOCKET_ADDR_OLD_GLOBAL_ALIGN (8UL)
4130 :
4131 : /* Encoded Size: Dynamic */
4132 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_ip4 {
4133 : fd_gossip_ip4_addr_t addr;
4134 : ushort port;
4135 : };
4136 : typedef struct fd_gossip_socket_addr_ip4 fd_gossip_socket_addr_ip4_t;
4137 0 : #define FD_GOSSIP_SOCKET_ADDR_IP4_FOOTPRINT sizeof(fd_gossip_socket_addr_ip4_t)
4138 0 : #define FD_GOSSIP_SOCKET_ADDR_IP4_ALIGN (8UL)
4139 :
4140 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_ip4_global {
4141 : fd_gossip_ip4_addr_global_t addr;
4142 : ushort port;
4143 : };
4144 : typedef struct fd_gossip_socket_addr_ip4_global fd_gossip_socket_addr_ip4_global_t;
4145 : #define FD_GOSSIP_SOCKET_ADDR_IP4_GLOBAL_FOOTPRINT sizeof(fd_gossip_socket_addr_ip4_global_t)
4146 : #define FD_GOSSIP_SOCKET_ADDR_IP4_GLOBAL_ALIGN (8UL)
4147 :
4148 : /* Encoded Size: Dynamic */
4149 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_ip6 {
4150 : fd_gossip_ip6_addr_t addr;
4151 : ushort port;
4152 : uint flowinfo;
4153 : uint scope_id;
4154 : };
4155 : typedef struct fd_gossip_socket_addr_ip6 fd_gossip_socket_addr_ip6_t;
4156 0 : #define FD_GOSSIP_SOCKET_ADDR_IP6_FOOTPRINT sizeof(fd_gossip_socket_addr_ip6_t)
4157 0 : #define FD_GOSSIP_SOCKET_ADDR_IP6_ALIGN (8UL)
4158 :
4159 : struct __attribute__((aligned(8UL))) fd_gossip_socket_addr_ip6_global {
4160 : fd_gossip_ip6_addr_global_t addr;
4161 : ushort port;
4162 : uint flowinfo;
4163 : uint scope_id;
4164 : };
4165 : typedef struct fd_gossip_socket_addr_ip6_global fd_gossip_socket_addr_ip6_global_t;
4166 : #define FD_GOSSIP_SOCKET_ADDR_IP6_GLOBAL_FOOTPRINT sizeof(fd_gossip_socket_addr_ip6_global_t)
4167 : #define FD_GOSSIP_SOCKET_ADDR_IP6_GLOBAL_ALIGN (8UL)
4168 :
4169 : union fd_gossip_socket_addr_inner {
4170 : fd_gossip_socket_addr_ip4_t ip4;
4171 : fd_gossip_socket_addr_ip6_t ip6;
4172 : };
4173 : typedef union fd_gossip_socket_addr_inner fd_gossip_socket_addr_inner_t;
4174 :
4175 : union fd_gossip_socket_addr_inner_global {
4176 : fd_gossip_socket_addr_ip4_global_t ip4;
4177 : fd_gossip_socket_addr_ip6_global_t ip6;
4178 : };
4179 : typedef union fd_gossip_socket_addr_inner_global fd_gossip_socket_addr_inner_global_t;
4180 :
4181 : struct fd_gossip_socket_addr {
4182 : uint discriminant;
4183 : fd_gossip_socket_addr_inner_t inner;
4184 : };
4185 : typedef struct fd_gossip_socket_addr fd_gossip_socket_addr_t;
4186 0 : #define FD_GOSSIP_SOCKET_ADDR_FOOTPRINT sizeof(fd_gossip_socket_addr_t)
4187 0 : #define FD_GOSSIP_SOCKET_ADDR_ALIGN (8UL)
4188 : struct fd_gossip_socket_addr_global {
4189 : uint discriminant;
4190 : fd_gossip_socket_addr_inner_global_t inner;
4191 : };
4192 : typedef struct fd_gossip_socket_addr_global fd_gossip_socket_addr_global_t;
4193 : #define FD_GOSSIP_SOCKET_ADDR_GLOBAL_FOOTPRINT sizeof(fd_gossip_socket_addr_global_t)
4194 : #define FD_GOSSIP_SOCKET_ADDR_GLOBAL_ALIGN (8UL)
4195 :
4196 : /* Encoded Size: Dynamic */
4197 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v1 {
4198 : fd_pubkey_t id;
4199 : fd_gossip_socket_addr_t gossip;
4200 : fd_gossip_socket_addr_t tvu;
4201 : fd_gossip_socket_addr_t tvu_fwd;
4202 : fd_gossip_socket_addr_t repair;
4203 : fd_gossip_socket_addr_t tpu;
4204 : fd_gossip_socket_addr_t tpu_fwd;
4205 : fd_gossip_socket_addr_t tpu_vote;
4206 : fd_gossip_socket_addr_t rpc;
4207 : fd_gossip_socket_addr_t rpc_pubsub;
4208 : fd_gossip_socket_addr_t serve_repair;
4209 : ulong wallclock;
4210 : ushort shred_version;
4211 : };
4212 : typedef struct fd_gossip_contact_info_v1 fd_gossip_contact_info_v1_t;
4213 0 : #define FD_GOSSIP_CONTACT_INFO_V1_FOOTPRINT sizeof(fd_gossip_contact_info_v1_t)
4214 0 : #define FD_GOSSIP_CONTACT_INFO_V1_ALIGN (8UL)
4215 :
4216 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v1_global {
4217 : fd_pubkey_t id;
4218 : fd_gossip_socket_addr_global_t gossip;
4219 : fd_gossip_socket_addr_global_t tvu;
4220 : fd_gossip_socket_addr_global_t tvu_fwd;
4221 : fd_gossip_socket_addr_global_t repair;
4222 : fd_gossip_socket_addr_global_t tpu;
4223 : fd_gossip_socket_addr_global_t tpu_fwd;
4224 : fd_gossip_socket_addr_global_t tpu_vote;
4225 : fd_gossip_socket_addr_global_t rpc;
4226 : fd_gossip_socket_addr_global_t rpc_pubsub;
4227 : fd_gossip_socket_addr_global_t serve_repair;
4228 : ulong wallclock;
4229 : ushort shred_version;
4230 : };
4231 : typedef struct fd_gossip_contact_info_v1_global fd_gossip_contact_info_v1_global_t;
4232 : #define FD_GOSSIP_CONTACT_INFO_V1_GLOBAL_FOOTPRINT sizeof(fd_gossip_contact_info_v1_global_t)
4233 : #define FD_GOSSIP_CONTACT_INFO_V1_GLOBAL_ALIGN (8UL)
4234 :
4235 : /* Encoded Size: Dynamic */
4236 : struct __attribute__((aligned(8UL))) fd_gossip_vote {
4237 : uchar index;
4238 : fd_pubkey_t from;
4239 : fd_flamenco_txn_t txn;
4240 : ulong wallclock;
4241 : };
4242 : typedef struct fd_gossip_vote fd_gossip_vote_t;
4243 0 : #define FD_GOSSIP_VOTE_FOOTPRINT sizeof(fd_gossip_vote_t)
4244 0 : #define FD_GOSSIP_VOTE_ALIGN (8UL)
4245 :
4246 : struct __attribute__((aligned(8UL))) fd_gossip_vote_global {
4247 : uchar index;
4248 : fd_pubkey_t from;
4249 : fd_flamenco_txn_global_t txn;
4250 : ulong wallclock;
4251 : };
4252 : typedef struct fd_gossip_vote_global fd_gossip_vote_global_t;
4253 : #define FD_GOSSIP_VOTE_GLOBAL_FOOTPRINT sizeof(fd_gossip_vote_global_t)
4254 : #define FD_GOSSIP_VOTE_GLOBAL_ALIGN (8UL)
4255 :
4256 : /* Encoded Size: Dynamic */
4257 : struct __attribute__((aligned(8UL))) fd_gossip_lowest_slot {
4258 : uchar u8;
4259 : fd_pubkey_t from;
4260 : ulong root;
4261 : ulong lowest;
4262 : ulong slots_len;
4263 : ulong* slots;
4264 : ulong i_dont_know;
4265 : ulong wallclock;
4266 : };
4267 : typedef struct fd_gossip_lowest_slot fd_gossip_lowest_slot_t;
4268 0 : #define FD_GOSSIP_LOWEST_SLOT_FOOTPRINT sizeof(fd_gossip_lowest_slot_t)
4269 0 : #define FD_GOSSIP_LOWEST_SLOT_ALIGN (8UL)
4270 :
4271 : struct __attribute__((aligned(8UL))) fd_gossip_lowest_slot_global {
4272 : uchar u8;
4273 : fd_pubkey_t from;
4274 : ulong root;
4275 : ulong lowest;
4276 : ulong slots_len;
4277 : ulong slots_gaddr;
4278 : ulong i_dont_know;
4279 : ulong wallclock;
4280 : };
4281 : typedef struct fd_gossip_lowest_slot_global fd_gossip_lowest_slot_global_t;
4282 : #define FD_GOSSIP_LOWEST_SLOT_GLOBAL_FOOTPRINT sizeof(fd_gossip_lowest_slot_global_t)
4283 : #define FD_GOSSIP_LOWEST_SLOT_GLOBAL_ALIGN (8UL)
4284 :
4285 : /* Encoded Size: Dynamic */
4286 : struct __attribute__((aligned(8UL))) fd_gossip_slot_hashes {
4287 : fd_pubkey_t from;
4288 : ulong hashes_len;
4289 : fd_slot_hash_t * hashes;
4290 : ulong wallclock;
4291 : };
4292 : typedef struct fd_gossip_slot_hashes fd_gossip_slot_hashes_t;
4293 0 : #define FD_GOSSIP_SLOT_HASHES_FOOTPRINT sizeof(fd_gossip_slot_hashes_t)
4294 0 : #define FD_GOSSIP_SLOT_HASHES_ALIGN (8UL)
4295 :
4296 : struct __attribute__((aligned(8UL))) fd_gossip_slot_hashes_global {
4297 : fd_pubkey_t from;
4298 : ulong hashes_len;
4299 : ulong hashes_gaddr;
4300 : ulong wallclock;
4301 : };
4302 : typedef struct fd_gossip_slot_hashes_global fd_gossip_slot_hashes_global_t;
4303 : #define FD_GOSSIP_SLOT_HASHES_GLOBAL_FOOTPRINT sizeof(fd_gossip_slot_hashes_global_t)
4304 : #define FD_GOSSIP_SLOT_HASHES_GLOBAL_ALIGN (8UL)
4305 :
4306 : /* Encoded Size: Dynamic */
4307 : struct __attribute__((aligned(8UL))) fd_gossip_slots {
4308 : ulong first_slot;
4309 : ulong num;
4310 : fd_gossip_bitvec_u8_t slots;
4311 : };
4312 : typedef struct fd_gossip_slots fd_gossip_slots_t;
4313 0 : #define FD_GOSSIP_SLOTS_FOOTPRINT sizeof(fd_gossip_slots_t)
4314 0 : #define FD_GOSSIP_SLOTS_ALIGN (8UL)
4315 :
4316 : struct __attribute__((aligned(8UL))) fd_gossip_slots_global {
4317 : ulong first_slot;
4318 : ulong num;
4319 : fd_gossip_bitvec_u8_global_t slots;
4320 : };
4321 : typedef struct fd_gossip_slots_global fd_gossip_slots_global_t;
4322 : #define FD_GOSSIP_SLOTS_GLOBAL_FOOTPRINT sizeof(fd_gossip_slots_global_t)
4323 : #define FD_GOSSIP_SLOTS_GLOBAL_ALIGN (8UL)
4324 :
4325 : /* Encoded Size: Dynamic */
4326 : struct __attribute__((aligned(8UL))) fd_gossip_flate2_slots {
4327 : ulong first_slot;
4328 : ulong num;
4329 : ulong compressed_len;
4330 : uchar* compressed;
4331 : };
4332 : typedef struct fd_gossip_flate2_slots fd_gossip_flate2_slots_t;
4333 0 : #define FD_GOSSIP_FLATE2_SLOTS_FOOTPRINT sizeof(fd_gossip_flate2_slots_t)
4334 0 : #define FD_GOSSIP_FLATE2_SLOTS_ALIGN (8UL)
4335 :
4336 : struct __attribute__((aligned(8UL))) fd_gossip_flate2_slots_global {
4337 : ulong first_slot;
4338 : ulong num;
4339 : ulong compressed_len;
4340 : ulong compressed_gaddr;
4341 : };
4342 : typedef struct fd_gossip_flate2_slots_global fd_gossip_flate2_slots_global_t;
4343 : #define FD_GOSSIP_FLATE2_SLOTS_GLOBAL_FOOTPRINT sizeof(fd_gossip_flate2_slots_global_t)
4344 : #define FD_GOSSIP_FLATE2_SLOTS_GLOBAL_ALIGN (8UL)
4345 :
4346 : union fd_gossip_slots_enum_inner {
4347 : fd_gossip_flate2_slots_t flate2;
4348 : fd_gossip_slots_t uncompressed;
4349 : };
4350 : typedef union fd_gossip_slots_enum_inner fd_gossip_slots_enum_inner_t;
4351 :
4352 : union fd_gossip_slots_enum_inner_global {
4353 : fd_gossip_flate2_slots_global_t flate2;
4354 : fd_gossip_slots_global_t uncompressed;
4355 : };
4356 : typedef union fd_gossip_slots_enum_inner_global fd_gossip_slots_enum_inner_global_t;
4357 :
4358 : struct fd_gossip_slots_enum {
4359 : uint discriminant;
4360 : fd_gossip_slots_enum_inner_t inner;
4361 : };
4362 : typedef struct fd_gossip_slots_enum fd_gossip_slots_enum_t;
4363 0 : #define FD_GOSSIP_SLOTS_ENUM_FOOTPRINT sizeof(fd_gossip_slots_enum_t)
4364 0 : #define FD_GOSSIP_SLOTS_ENUM_ALIGN (8UL)
4365 : struct fd_gossip_slots_enum_global {
4366 : uint discriminant;
4367 : fd_gossip_slots_enum_inner_global_t inner;
4368 : };
4369 : typedef struct fd_gossip_slots_enum_global fd_gossip_slots_enum_global_t;
4370 : #define FD_GOSSIP_SLOTS_ENUM_GLOBAL_FOOTPRINT sizeof(fd_gossip_slots_enum_global_t)
4371 : #define FD_GOSSIP_SLOTS_ENUM_GLOBAL_ALIGN (8UL)
4372 :
4373 : /* Encoded Size: Dynamic */
4374 : struct __attribute__((aligned(8UL))) fd_gossip_epoch_slots {
4375 : uchar u8;
4376 : fd_pubkey_t from;
4377 : ulong slots_len;
4378 : fd_gossip_slots_enum_t * slots;
4379 : ulong wallclock;
4380 : };
4381 : typedef struct fd_gossip_epoch_slots fd_gossip_epoch_slots_t;
4382 0 : #define FD_GOSSIP_EPOCH_SLOTS_FOOTPRINT sizeof(fd_gossip_epoch_slots_t)
4383 0 : #define FD_GOSSIP_EPOCH_SLOTS_ALIGN (8UL)
4384 :
4385 : struct __attribute__((aligned(8UL))) fd_gossip_epoch_slots_global {
4386 : uchar u8;
4387 : fd_pubkey_t from;
4388 : ulong slots_len;
4389 : ulong slots_gaddr;
4390 : ulong wallclock;
4391 : };
4392 : typedef struct fd_gossip_epoch_slots_global fd_gossip_epoch_slots_global_t;
4393 : #define FD_GOSSIP_EPOCH_SLOTS_GLOBAL_FOOTPRINT sizeof(fd_gossip_epoch_slots_global_t)
4394 : #define FD_GOSSIP_EPOCH_SLOTS_GLOBAL_ALIGN (8UL)
4395 :
4396 : /* Encoded Size: Dynamic */
4397 : struct __attribute__((aligned(8UL))) fd_gossip_version_v1 {
4398 : fd_pubkey_t from;
4399 : ulong wallclock;
4400 : ushort major;
4401 : ushort minor;
4402 : ushort patch;
4403 : uint commit;
4404 : uchar has_commit;
4405 : };
4406 : typedef struct fd_gossip_version_v1 fd_gossip_version_v1_t;
4407 0 : #define FD_GOSSIP_VERSION_V1_FOOTPRINT sizeof(fd_gossip_version_v1_t)
4408 0 : #define FD_GOSSIP_VERSION_V1_ALIGN (8UL)
4409 :
4410 : struct __attribute__((aligned(8UL))) fd_gossip_version_v1_global {
4411 : fd_pubkey_t from;
4412 : ulong wallclock;
4413 : ushort major;
4414 : ushort minor;
4415 : ushort patch;
4416 : uint commit;
4417 : uchar has_commit;
4418 : };
4419 : typedef struct fd_gossip_version_v1_global fd_gossip_version_v1_global_t;
4420 : #define FD_GOSSIP_VERSION_V1_GLOBAL_FOOTPRINT sizeof(fd_gossip_version_v1_global_t)
4421 : #define FD_GOSSIP_VERSION_V1_GLOBAL_ALIGN (8UL)
4422 :
4423 : /* Encoded Size: Dynamic */
4424 : struct __attribute__((aligned(8UL))) fd_gossip_version_v2 {
4425 : fd_pubkey_t from;
4426 : ulong wallclock;
4427 : ushort major;
4428 : ushort minor;
4429 : ushort patch;
4430 : uint commit;
4431 : uchar has_commit;
4432 : uint feature_set;
4433 : };
4434 : typedef struct fd_gossip_version_v2 fd_gossip_version_v2_t;
4435 0 : #define FD_GOSSIP_VERSION_V2_FOOTPRINT sizeof(fd_gossip_version_v2_t)
4436 0 : #define FD_GOSSIP_VERSION_V2_ALIGN (8UL)
4437 :
4438 : struct __attribute__((aligned(8UL))) fd_gossip_version_v2_global {
4439 : fd_pubkey_t from;
4440 : ulong wallclock;
4441 : ushort major;
4442 : ushort minor;
4443 : ushort patch;
4444 : uint commit;
4445 : uchar has_commit;
4446 : uint feature_set;
4447 : };
4448 : typedef struct fd_gossip_version_v2_global fd_gossip_version_v2_global_t;
4449 : #define FD_GOSSIP_VERSION_V2_GLOBAL_FOOTPRINT sizeof(fd_gossip_version_v2_global_t)
4450 : #define FD_GOSSIP_VERSION_V2_GLOBAL_ALIGN (8UL)
4451 :
4452 : /* Encoded Size: Dynamic */
4453 : struct __attribute__((aligned(8UL))) fd_gossip_version_v3 {
4454 : ushort major;
4455 : ushort minor;
4456 : ushort patch;
4457 : uint commit;
4458 : uint feature_set;
4459 : ushort client;
4460 : };
4461 : typedef struct fd_gossip_version_v3 fd_gossip_version_v3_t;
4462 0 : #define FD_GOSSIP_VERSION_V3_FOOTPRINT sizeof(fd_gossip_version_v3_t)
4463 0 : #define FD_GOSSIP_VERSION_V3_ALIGN (8UL)
4464 :
4465 : struct __attribute__((aligned(8UL))) fd_gossip_version_v3_global {
4466 : ushort major;
4467 : ushort minor;
4468 : ushort patch;
4469 : uint commit;
4470 : uint feature_set;
4471 : ushort client;
4472 : };
4473 : typedef struct fd_gossip_version_v3_global fd_gossip_version_v3_global_t;
4474 : #define FD_GOSSIP_VERSION_V3_GLOBAL_FOOTPRINT sizeof(fd_gossip_version_v3_global_t)
4475 : #define FD_GOSSIP_VERSION_V3_GLOBAL_ALIGN (8UL)
4476 :
4477 : /* Encoded Size: Fixed (56 bytes) */
4478 : struct __attribute__((aligned(8UL))) fd_gossip_node_instance {
4479 : fd_pubkey_t from;
4480 : ulong wallclock;
4481 : long timestamp;
4482 : ulong token;
4483 : };
4484 : typedef struct fd_gossip_node_instance fd_gossip_node_instance_t;
4485 0 : #define FD_GOSSIP_NODE_INSTANCE_FOOTPRINT sizeof(fd_gossip_node_instance_t)
4486 0 : #define FD_GOSSIP_NODE_INSTANCE_ALIGN (8UL)
4487 :
4488 : struct __attribute__((aligned(8UL))) fd_gossip_node_instance_global {
4489 : fd_pubkey_t from;
4490 : ulong wallclock;
4491 : long timestamp;
4492 : ulong token;
4493 : };
4494 : typedef struct fd_gossip_node_instance_global fd_gossip_node_instance_global_t;
4495 : #define FD_GOSSIP_NODE_INSTANCE_GLOBAL_FOOTPRINT sizeof(fd_gossip_node_instance_global_t)
4496 : #define FD_GOSSIP_NODE_INSTANCE_GLOBAL_ALIGN (8UL)
4497 :
4498 : /* Encoded Size: Dynamic */
4499 : struct __attribute__((aligned(8UL))) fd_gossip_duplicate_shred {
4500 : ushort duplicate_shred_index;
4501 : fd_pubkey_t from;
4502 : ulong wallclock;
4503 : ulong slot;
4504 : uint _unused;
4505 : uchar _unused_shred_type;
4506 : uchar num_chunks;
4507 : uchar chunk_index;
4508 : ulong chunk_len;
4509 : uchar* chunk;
4510 : };
4511 : typedef struct fd_gossip_duplicate_shred fd_gossip_duplicate_shred_t;
4512 0 : #define FD_GOSSIP_DUPLICATE_SHRED_FOOTPRINT sizeof(fd_gossip_duplicate_shred_t)
4513 0 : #define FD_GOSSIP_DUPLICATE_SHRED_ALIGN (8UL)
4514 :
4515 : struct __attribute__((aligned(8UL))) fd_gossip_duplicate_shred_global {
4516 : ushort duplicate_shred_index;
4517 : fd_pubkey_t from;
4518 : ulong wallclock;
4519 : ulong slot;
4520 : uint _unused;
4521 : uchar _unused_shred_type;
4522 : uchar num_chunks;
4523 : uchar chunk_index;
4524 : ulong chunk_len;
4525 : ulong chunk_gaddr;
4526 : };
4527 : typedef struct fd_gossip_duplicate_shred_global fd_gossip_duplicate_shred_global_t;
4528 : #define FD_GOSSIP_DUPLICATE_SHRED_GLOBAL_FOOTPRINT sizeof(fd_gossip_duplicate_shred_global_t)
4529 : #define FD_GOSSIP_DUPLICATE_SHRED_GLOBAL_ALIGN (8UL)
4530 :
4531 : /* Encoded Size: Dynamic */
4532 : struct __attribute__((aligned(8UL))) fd_gossip_incremental_snapshot_hashes {
4533 : fd_pubkey_t from;
4534 : fd_slot_hash_t base_hash;
4535 : ulong hashes_len;
4536 : fd_slot_hash_t * hashes;
4537 : ulong wallclock;
4538 : };
4539 : typedef struct fd_gossip_incremental_snapshot_hashes fd_gossip_incremental_snapshot_hashes_t;
4540 0 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_FOOTPRINT sizeof(fd_gossip_incremental_snapshot_hashes_t)
4541 0 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_ALIGN (8UL)
4542 :
4543 : struct __attribute__((aligned(8UL))) fd_gossip_incremental_snapshot_hashes_global {
4544 : fd_pubkey_t from;
4545 : fd_slot_hash_t base_hash;
4546 : ulong hashes_len;
4547 : ulong hashes_gaddr;
4548 : ulong wallclock;
4549 : };
4550 : typedef struct fd_gossip_incremental_snapshot_hashes_global fd_gossip_incremental_snapshot_hashes_global_t;
4551 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_GLOBAL_FOOTPRINT sizeof(fd_gossip_incremental_snapshot_hashes_global_t)
4552 : #define FD_GOSSIP_INCREMENTAL_SNAPSHOT_HASHES_GLOBAL_ALIGN (8UL)
4553 :
4554 : /* Encoded Size: Dynamic */
4555 : struct __attribute__((aligned(8UL))) fd_gossip_socket_entry {
4556 : uchar key;
4557 : uchar index;
4558 : ushort offset;
4559 : };
4560 : typedef struct fd_gossip_socket_entry fd_gossip_socket_entry_t;
4561 6 : #define FD_GOSSIP_SOCKET_ENTRY_FOOTPRINT sizeof(fd_gossip_socket_entry_t)
4562 6 : #define FD_GOSSIP_SOCKET_ENTRY_ALIGN (8UL)
4563 :
4564 : struct __attribute__((aligned(8UL))) fd_gossip_socket_entry_global {
4565 : uchar key;
4566 : uchar index;
4567 : ushort offset;
4568 : };
4569 : typedef struct fd_gossip_socket_entry_global fd_gossip_socket_entry_global_t;
4570 : #define FD_GOSSIP_SOCKET_ENTRY_GLOBAL_FOOTPRINT sizeof(fd_gossip_socket_entry_global_t)
4571 : #define FD_GOSSIP_SOCKET_ENTRY_GLOBAL_ALIGN (8UL)
4572 :
4573 : /* Encoded Size: Dynamic */
4574 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v2 {
4575 : fd_pubkey_t from;
4576 : ulong wallclock;
4577 : ulong outset;
4578 : ushort shred_version;
4579 : fd_gossip_version_v3_t version;
4580 : ushort addrs_len;
4581 : fd_gossip_ip_addr_t * addrs;
4582 : ushort sockets_len;
4583 : fd_gossip_socket_entry_t * sockets;
4584 : ushort extensions_len;
4585 : uint* extensions;
4586 : };
4587 : typedef struct fd_gossip_contact_info_v2 fd_gossip_contact_info_v2_t;
4588 0 : #define FD_GOSSIP_CONTACT_INFO_V2_FOOTPRINT sizeof(fd_gossip_contact_info_v2_t)
4589 0 : #define FD_GOSSIP_CONTACT_INFO_V2_ALIGN (8UL)
4590 :
4591 : struct __attribute__((aligned(8UL))) fd_gossip_contact_info_v2_global {
4592 : fd_pubkey_t from;
4593 : ulong wallclock;
4594 : ulong outset;
4595 : ushort shred_version;
4596 : fd_gossip_version_v3_global_t version;
4597 : ushort addrs_len;
4598 : ulong addrs_gaddr;
4599 : ushort sockets_len;
4600 : ulong sockets_gaddr;
4601 : ushort extensions_len;
4602 : ulong extensions_gaddr;
4603 : };
4604 : typedef struct fd_gossip_contact_info_v2_global fd_gossip_contact_info_v2_global_t;
4605 : #define FD_GOSSIP_CONTACT_INFO_V2_GLOBAL_FOOTPRINT sizeof(fd_gossip_contact_info_v2_global_t)
4606 : #define FD_GOSSIP_CONTACT_INFO_V2_GLOBAL_ALIGN (8UL)
4607 :
4608 : /* Encoded Size: Dynamic */
4609 : struct __attribute__((aligned(8UL))) fd_restart_run_length_encoding_inner {
4610 : ushort bits;
4611 : };
4612 : typedef struct fd_restart_run_length_encoding_inner fd_restart_run_length_encoding_inner_t;
4613 0 : #define FD_RESTART_RUN_LENGTH_ENCODING_INNER_FOOTPRINT sizeof(fd_restart_run_length_encoding_inner_t)
4614 0 : #define FD_RESTART_RUN_LENGTH_ENCODING_INNER_ALIGN (8UL)
4615 :
4616 : struct __attribute__((aligned(8UL))) fd_restart_run_length_encoding_inner_global {
4617 : ushort bits;
4618 : };
4619 : typedef struct fd_restart_run_length_encoding_inner_global fd_restart_run_length_encoding_inner_global_t;
4620 : #define FD_RESTART_RUN_LENGTH_ENCODING_INNER_GLOBAL_FOOTPRINT sizeof(fd_restart_run_length_encoding_inner_global_t)
4621 : #define FD_RESTART_RUN_LENGTH_ENCODING_INNER_GLOBAL_ALIGN (8UL)
4622 :
4623 : /* Encoded Size: Dynamic */
4624 : struct __attribute__((aligned(8UL))) fd_restart_run_length_encoding {
4625 : ulong offsets_len;
4626 : fd_restart_run_length_encoding_inner_t * offsets;
4627 : };
4628 : typedef struct fd_restart_run_length_encoding fd_restart_run_length_encoding_t;
4629 0 : #define FD_RESTART_RUN_LENGTH_ENCODING_FOOTPRINT sizeof(fd_restart_run_length_encoding_t)
4630 0 : #define FD_RESTART_RUN_LENGTH_ENCODING_ALIGN (8UL)
4631 :
4632 : struct __attribute__((aligned(8UL))) fd_restart_run_length_encoding_global {
4633 : ulong offsets_len;
4634 : ulong offsets_gaddr;
4635 : };
4636 : typedef struct fd_restart_run_length_encoding_global fd_restart_run_length_encoding_global_t;
4637 : #define FD_RESTART_RUN_LENGTH_ENCODING_GLOBAL_FOOTPRINT sizeof(fd_restart_run_length_encoding_global_t)
4638 : #define FD_RESTART_RUN_LENGTH_ENCODING_GLOBAL_ALIGN (8UL)
4639 :
4640 : /* Encoded Size: Dynamic */
4641 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets_bitvec_u8_inner {
4642 : ulong bits_len;
4643 : uchar* bits;
4644 : };
4645 : typedef struct fd_restart_raw_offsets_bitvec_u8_inner fd_restart_raw_offsets_bitvec_u8_inner_t;
4646 0 : #define FD_RESTART_RAW_OFFSETS_BITVEC_U8_INNER_FOOTPRINT sizeof(fd_restart_raw_offsets_bitvec_u8_inner_t)
4647 0 : #define FD_RESTART_RAW_OFFSETS_BITVEC_U8_INNER_ALIGN (8UL)
4648 :
4649 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets_bitvec_u8_inner_global {
4650 : ulong bits_len;
4651 : ulong bits_gaddr;
4652 : };
4653 : typedef struct fd_restart_raw_offsets_bitvec_u8_inner_global fd_restart_raw_offsets_bitvec_u8_inner_global_t;
4654 : #define FD_RESTART_RAW_OFFSETS_BITVEC_U8_INNER_GLOBAL_FOOTPRINT sizeof(fd_restart_raw_offsets_bitvec_u8_inner_global_t)
4655 : #define FD_RESTART_RAW_OFFSETS_BITVEC_U8_INNER_GLOBAL_ALIGN (8UL)
4656 :
4657 : /* Encoded Size: Dynamic */
4658 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets_bitvec {
4659 : fd_restart_raw_offsets_bitvec_u8_inner_t bits;
4660 : uchar has_bits;
4661 : ulong len;
4662 : };
4663 : typedef struct fd_restart_raw_offsets_bitvec fd_restart_raw_offsets_bitvec_t;
4664 0 : #define FD_RESTART_RAW_OFFSETS_BITVEC_FOOTPRINT sizeof(fd_restart_raw_offsets_bitvec_t)
4665 0 : #define FD_RESTART_RAW_OFFSETS_BITVEC_ALIGN (8UL)
4666 :
4667 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets_bitvec_global {
4668 : fd_restart_raw_offsets_bitvec_u8_inner_t bits;
4669 : uchar has_bits;
4670 : ulong len;
4671 : };
4672 : typedef struct fd_restart_raw_offsets_bitvec_global fd_restart_raw_offsets_bitvec_global_t;
4673 : #define FD_RESTART_RAW_OFFSETS_BITVEC_GLOBAL_FOOTPRINT sizeof(fd_restart_raw_offsets_bitvec_global_t)
4674 : #define FD_RESTART_RAW_OFFSETS_BITVEC_GLOBAL_ALIGN (8UL)
4675 :
4676 : /* Encoded Size: Dynamic */
4677 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets {
4678 : fd_restart_raw_offsets_bitvec_t offsets;
4679 : };
4680 : typedef struct fd_restart_raw_offsets fd_restart_raw_offsets_t;
4681 0 : #define FD_RESTART_RAW_OFFSETS_FOOTPRINT sizeof(fd_restart_raw_offsets_t)
4682 0 : #define FD_RESTART_RAW_OFFSETS_ALIGN (8UL)
4683 :
4684 : struct __attribute__((aligned(8UL))) fd_restart_raw_offsets_global {
4685 : fd_restart_raw_offsets_bitvec_global_t offsets;
4686 : };
4687 : typedef struct fd_restart_raw_offsets_global fd_restart_raw_offsets_global_t;
4688 : #define FD_RESTART_RAW_OFFSETS_GLOBAL_FOOTPRINT sizeof(fd_restart_raw_offsets_global_t)
4689 : #define FD_RESTART_RAW_OFFSETS_GLOBAL_ALIGN (8UL)
4690 :
4691 : union fd_restart_slots_offsets_inner {
4692 : fd_restart_run_length_encoding_t run_length_encoding;
4693 : fd_restart_raw_offsets_t raw_offsets;
4694 : };
4695 : typedef union fd_restart_slots_offsets_inner fd_restart_slots_offsets_inner_t;
4696 :
4697 : union fd_restart_slots_offsets_inner_global {
4698 : fd_restart_run_length_encoding_global_t run_length_encoding;
4699 : fd_restart_raw_offsets_global_t raw_offsets;
4700 : };
4701 : typedef union fd_restart_slots_offsets_inner_global fd_restart_slots_offsets_inner_global_t;
4702 :
4703 : struct fd_restart_slots_offsets {
4704 : uint discriminant;
4705 : fd_restart_slots_offsets_inner_t inner;
4706 : };
4707 : typedef struct fd_restart_slots_offsets fd_restart_slots_offsets_t;
4708 0 : #define FD_RESTART_SLOTS_OFFSETS_FOOTPRINT sizeof(fd_restart_slots_offsets_t)
4709 0 : #define FD_RESTART_SLOTS_OFFSETS_ALIGN (8UL)
4710 : struct fd_restart_slots_offsets_global {
4711 : uint discriminant;
4712 : fd_restart_slots_offsets_inner_global_t inner;
4713 : };
4714 : typedef struct fd_restart_slots_offsets_global fd_restart_slots_offsets_global_t;
4715 : #define FD_RESTART_SLOTS_OFFSETS_GLOBAL_FOOTPRINT sizeof(fd_restart_slots_offsets_global_t)
4716 : #define FD_RESTART_SLOTS_OFFSETS_GLOBAL_ALIGN (8UL)
4717 :
4718 : /* Encoded Size: Dynamic */
4719 : struct __attribute__((aligned(8UL))) fd_gossip_restart_last_voted_fork_slots {
4720 : fd_pubkey_t from;
4721 : ulong wallclock;
4722 : fd_restart_slots_offsets_t offsets;
4723 : ulong last_voted_slot;
4724 : fd_hash_t last_voted_hash;
4725 : ushort shred_version;
4726 : };
4727 : typedef struct fd_gossip_restart_last_voted_fork_slots fd_gossip_restart_last_voted_fork_slots_t;
4728 0 : #define FD_GOSSIP_RESTART_LAST_VOTED_FORK_SLOTS_FOOTPRINT sizeof(fd_gossip_restart_last_voted_fork_slots_t)
4729 0 : #define FD_GOSSIP_RESTART_LAST_VOTED_FORK_SLOTS_ALIGN (8UL)
4730 :
4731 : struct __attribute__((aligned(8UL))) fd_gossip_restart_last_voted_fork_slots_global {
4732 : fd_pubkey_t from;
4733 : ulong wallclock;
4734 : fd_restart_slots_offsets_global_t offsets;
4735 : ulong last_voted_slot;
4736 : fd_hash_t last_voted_hash;
4737 : ushort shred_version;
4738 : };
4739 : typedef struct fd_gossip_restart_last_voted_fork_slots_global fd_gossip_restart_last_voted_fork_slots_global_t;
4740 : #define FD_GOSSIP_RESTART_LAST_VOTED_FORK_SLOTS_GLOBAL_FOOTPRINT sizeof(fd_gossip_restart_last_voted_fork_slots_global_t)
4741 : #define FD_GOSSIP_RESTART_LAST_VOTED_FORK_SLOTS_GLOBAL_ALIGN (8UL)
4742 :
4743 : /* Encoded Size: Fixed (90 bytes) */
4744 : struct __attribute__((aligned(8UL))) fd_gossip_restart_heaviest_fork {
4745 : fd_pubkey_t from;
4746 : ulong wallclock;
4747 : ulong last_slot;
4748 : fd_hash_t last_slot_hash;
4749 : ulong observed_stake;
4750 : ushort shred_version;
4751 : };
4752 : typedef struct fd_gossip_restart_heaviest_fork fd_gossip_restart_heaviest_fork_t;
4753 0 : #define FD_GOSSIP_RESTART_HEAVIEST_FORK_FOOTPRINT sizeof(fd_gossip_restart_heaviest_fork_t)
4754 0 : #define FD_GOSSIP_RESTART_HEAVIEST_FORK_ALIGN (8UL)
4755 :
4756 : struct __attribute__((aligned(8UL))) fd_gossip_restart_heaviest_fork_global {
4757 : fd_pubkey_t from;
4758 : ulong wallclock;
4759 : ulong last_slot;
4760 : fd_hash_t last_slot_hash;
4761 : ulong observed_stake;
4762 : ushort shred_version;
4763 : };
4764 : typedef struct fd_gossip_restart_heaviest_fork_global fd_gossip_restart_heaviest_fork_global_t;
4765 : #define FD_GOSSIP_RESTART_HEAVIEST_FORK_GLOBAL_FOOTPRINT sizeof(fd_gossip_restart_heaviest_fork_global_t)
4766 : #define FD_GOSSIP_RESTART_HEAVIEST_FORK_GLOBAL_ALIGN (8UL)
4767 :
4768 : union fd_crds_data_inner {
4769 : fd_gossip_contact_info_v1_t contact_info_v1;
4770 : fd_gossip_vote_t vote;
4771 : fd_gossip_lowest_slot_t lowest_slot;
4772 : fd_gossip_slot_hashes_t snapshot_hashes;
4773 : fd_gossip_slot_hashes_t accounts_hashes;
4774 : fd_gossip_epoch_slots_t epoch_slots;
4775 : fd_gossip_version_v1_t version_v1;
4776 : fd_gossip_version_v2_t version_v2;
4777 : fd_gossip_node_instance_t node_instance;
4778 : fd_gossip_duplicate_shred_t duplicate_shred;
4779 : fd_gossip_incremental_snapshot_hashes_t incremental_snapshot_hashes;
4780 : fd_gossip_contact_info_v2_t contact_info_v2;
4781 : fd_gossip_restart_last_voted_fork_slots_t restart_last_voted_fork_slots;
4782 : fd_gossip_restart_heaviest_fork_t restart_heaviest_fork;
4783 : };
4784 : typedef union fd_crds_data_inner fd_crds_data_inner_t;
4785 :
4786 : union fd_crds_data_inner_global {
4787 : fd_gossip_contact_info_v1_global_t contact_info_v1;
4788 : fd_gossip_vote_global_t vote;
4789 : fd_gossip_lowest_slot_global_t lowest_slot;
4790 : fd_gossip_slot_hashes_global_t snapshot_hashes;
4791 : fd_gossip_slot_hashes_global_t accounts_hashes;
4792 : fd_gossip_epoch_slots_global_t epoch_slots;
4793 : fd_gossip_version_v1_global_t version_v1;
4794 : fd_gossip_version_v2_global_t version_v2;
4795 : fd_gossip_node_instance_t node_instance;
4796 : fd_gossip_duplicate_shred_global_t duplicate_shred;
4797 : fd_gossip_incremental_snapshot_hashes_global_t incremental_snapshot_hashes;
4798 : fd_gossip_contact_info_v2_global_t contact_info_v2;
4799 : fd_gossip_restart_last_voted_fork_slots_global_t restart_last_voted_fork_slots;
4800 : fd_gossip_restart_heaviest_fork_t restart_heaviest_fork;
4801 : };
4802 : typedef union fd_crds_data_inner_global fd_crds_data_inner_global_t;
4803 :
4804 : struct fd_crds_data {
4805 : uint discriminant;
4806 : fd_crds_data_inner_t inner;
4807 : };
4808 : typedef struct fd_crds_data fd_crds_data_t;
4809 0 : #define FD_CRDS_DATA_FOOTPRINT sizeof(fd_crds_data_t)
4810 0 : #define FD_CRDS_DATA_ALIGN (8UL)
4811 : struct fd_crds_data_global {
4812 : uint discriminant;
4813 : fd_crds_data_inner_global_t inner;
4814 : };
4815 : typedef struct fd_crds_data_global fd_crds_data_global_t;
4816 : #define FD_CRDS_DATA_GLOBAL_FOOTPRINT sizeof(fd_crds_data_global_t)
4817 : #define FD_CRDS_DATA_GLOBAL_ALIGN (8UL)
4818 :
4819 : /* Encoded Size: Dynamic */
4820 : struct __attribute__((aligned(8UL))) fd_crds_bloom {
4821 : ulong keys_len;
4822 : ulong* keys;
4823 : fd_gossip_bitvec_u64_t bits;
4824 : ulong num_bits_set;
4825 : };
4826 : typedef struct fd_crds_bloom fd_crds_bloom_t;
4827 0 : #define FD_CRDS_BLOOM_FOOTPRINT sizeof(fd_crds_bloom_t)
4828 0 : #define FD_CRDS_BLOOM_ALIGN (8UL)
4829 :
4830 : struct __attribute__((aligned(8UL))) fd_crds_bloom_global {
4831 : ulong keys_len;
4832 : ulong keys_gaddr;
4833 : fd_gossip_bitvec_u64_global_t bits;
4834 : ulong num_bits_set;
4835 : };
4836 : typedef struct fd_crds_bloom_global fd_crds_bloom_global_t;
4837 : #define FD_CRDS_BLOOM_GLOBAL_FOOTPRINT sizeof(fd_crds_bloom_global_t)
4838 : #define FD_CRDS_BLOOM_GLOBAL_ALIGN (8UL)
4839 :
4840 : /* Encoded Size: Dynamic */
4841 : struct __attribute__((aligned(8UL))) fd_crds_filter {
4842 : fd_crds_bloom_t filter;
4843 : ulong mask;
4844 : uint mask_bits;
4845 : };
4846 : typedef struct fd_crds_filter fd_crds_filter_t;
4847 0 : #define FD_CRDS_FILTER_FOOTPRINT sizeof(fd_crds_filter_t)
4848 0 : #define FD_CRDS_FILTER_ALIGN (8UL)
4849 :
4850 : struct __attribute__((aligned(8UL))) fd_crds_filter_global {
4851 : fd_crds_bloom_global_t filter;
4852 : ulong mask;
4853 : uint mask_bits;
4854 : };
4855 : typedef struct fd_crds_filter_global fd_crds_filter_global_t;
4856 : #define FD_CRDS_FILTER_GLOBAL_FOOTPRINT sizeof(fd_crds_filter_global_t)
4857 : #define FD_CRDS_FILTER_GLOBAL_ALIGN (8UL)
4858 :
4859 : /* Encoded Size: Dynamic */
4860 : struct __attribute__((aligned(8UL))) fd_crds_value {
4861 : fd_signature_t signature;
4862 : fd_crds_data_t data;
4863 : };
4864 : typedef struct fd_crds_value fd_crds_value_t;
4865 36 : #define FD_CRDS_VALUE_FOOTPRINT sizeof(fd_crds_value_t)
4866 36 : #define FD_CRDS_VALUE_ALIGN (8UL)
4867 :
4868 : struct __attribute__((aligned(8UL))) fd_crds_value_global {
4869 : fd_signature_t signature;
4870 : fd_crds_data_global_t data;
4871 : };
4872 : typedef struct fd_crds_value_global fd_crds_value_global_t;
4873 : #define FD_CRDS_VALUE_GLOBAL_FOOTPRINT sizeof(fd_crds_value_global_t)
4874 : #define FD_CRDS_VALUE_GLOBAL_ALIGN (8UL)
4875 :
4876 : /* Encoded Size: Dynamic */
4877 : struct __attribute__((aligned(8UL))) fd_gossip_pull_req {
4878 : fd_crds_filter_t filter;
4879 : fd_crds_value_t value;
4880 : };
4881 : typedef struct fd_gossip_pull_req fd_gossip_pull_req_t;
4882 0 : #define FD_GOSSIP_PULL_REQ_FOOTPRINT sizeof(fd_gossip_pull_req_t)
4883 0 : #define FD_GOSSIP_PULL_REQ_ALIGN (8UL)
4884 :
4885 : struct __attribute__((aligned(8UL))) fd_gossip_pull_req_global {
4886 : fd_crds_filter_global_t filter;
4887 : fd_crds_value_global_t value;
4888 : };
4889 : typedef struct fd_gossip_pull_req_global fd_gossip_pull_req_global_t;
4890 : #define FD_GOSSIP_PULL_REQ_GLOBAL_FOOTPRINT sizeof(fd_gossip_pull_req_global_t)
4891 : #define FD_GOSSIP_PULL_REQ_GLOBAL_ALIGN (8UL)
4892 :
4893 : /* Encoded Size: Dynamic */
4894 : struct __attribute__((aligned(8UL))) fd_gossip_pull_resp {
4895 : fd_pubkey_t pubkey;
4896 : ulong crds_len;
4897 : fd_crds_value_t * crds;
4898 : };
4899 : typedef struct fd_gossip_pull_resp fd_gossip_pull_resp_t;
4900 0 : #define FD_GOSSIP_PULL_RESP_FOOTPRINT sizeof(fd_gossip_pull_resp_t)
4901 0 : #define FD_GOSSIP_PULL_RESP_ALIGN (8UL)
4902 :
4903 : struct __attribute__((aligned(8UL))) fd_gossip_pull_resp_global {
4904 : fd_pubkey_t pubkey;
4905 : ulong crds_len;
4906 : ulong crds_gaddr;
4907 : };
4908 : typedef struct fd_gossip_pull_resp_global fd_gossip_pull_resp_global_t;
4909 : #define FD_GOSSIP_PULL_RESP_GLOBAL_FOOTPRINT sizeof(fd_gossip_pull_resp_global_t)
4910 : #define FD_GOSSIP_PULL_RESP_GLOBAL_ALIGN (8UL)
4911 :
4912 : /* Encoded Size: Dynamic */
4913 : struct __attribute__((aligned(8UL))) fd_gossip_push_msg {
4914 : fd_pubkey_t pubkey;
4915 : ulong crds_len;
4916 : fd_crds_value_t * crds;
4917 : };
4918 : typedef struct fd_gossip_push_msg fd_gossip_push_msg_t;
4919 0 : #define FD_GOSSIP_PUSH_MSG_FOOTPRINT sizeof(fd_gossip_push_msg_t)
4920 0 : #define FD_GOSSIP_PUSH_MSG_ALIGN (8UL)
4921 :
4922 : struct __attribute__((aligned(8UL))) fd_gossip_push_msg_global {
4923 : fd_pubkey_t pubkey;
4924 : ulong crds_len;
4925 : ulong crds_gaddr;
4926 : };
4927 : typedef struct fd_gossip_push_msg_global fd_gossip_push_msg_global_t;
4928 : #define FD_GOSSIP_PUSH_MSG_GLOBAL_FOOTPRINT sizeof(fd_gossip_push_msg_global_t)
4929 : #define FD_GOSSIP_PUSH_MSG_GLOBAL_ALIGN (8UL)
4930 :
4931 : /* Encoded Size: Dynamic */
4932 : struct __attribute__((aligned(8UL))) fd_gossip_prune_msg {
4933 : fd_pubkey_t pubkey;
4934 : fd_gossip_prune_data_t data;
4935 : };
4936 : typedef struct fd_gossip_prune_msg fd_gossip_prune_msg_t;
4937 0 : #define FD_GOSSIP_PRUNE_MSG_FOOTPRINT sizeof(fd_gossip_prune_msg_t)
4938 0 : #define FD_GOSSIP_PRUNE_MSG_ALIGN (8UL)
4939 :
4940 : struct __attribute__((aligned(8UL))) fd_gossip_prune_msg_global {
4941 : fd_pubkey_t pubkey;
4942 : fd_gossip_prune_data_global_t data;
4943 : };
4944 : typedef struct fd_gossip_prune_msg_global fd_gossip_prune_msg_global_t;
4945 : #define FD_GOSSIP_PRUNE_MSG_GLOBAL_FOOTPRINT sizeof(fd_gossip_prune_msg_global_t)
4946 : #define FD_GOSSIP_PRUNE_MSG_GLOBAL_ALIGN (8UL)
4947 :
4948 : union fd_gossip_msg_inner {
4949 : fd_gossip_pull_req_t pull_req;
4950 : fd_gossip_pull_resp_t pull_resp;
4951 : fd_gossip_push_msg_t push_msg;
4952 : fd_gossip_prune_msg_t prune_msg;
4953 : fd_gossip_ping_t ping;
4954 : fd_gossip_ping_t pong;
4955 : };
4956 : typedef union fd_gossip_msg_inner fd_gossip_msg_inner_t;
4957 :
4958 : union fd_gossip_msg_inner_global {
4959 : fd_gossip_pull_req_global_t pull_req;
4960 : fd_gossip_pull_resp_global_t pull_resp;
4961 : fd_gossip_push_msg_global_t push_msg;
4962 : fd_gossip_prune_msg_global_t prune_msg;
4963 : fd_gossip_ping_t ping;
4964 : fd_gossip_ping_t pong;
4965 : };
4966 : typedef union fd_gossip_msg_inner_global fd_gossip_msg_inner_global_t;
4967 :
4968 : /* UDP payloads of the Solana gossip protocol */
4969 : struct fd_gossip_msg {
4970 : uint discriminant;
4971 : fd_gossip_msg_inner_t inner;
4972 : };
4973 : typedef struct fd_gossip_msg fd_gossip_msg_t;
4974 0 : #define FD_GOSSIP_MSG_FOOTPRINT sizeof(fd_gossip_msg_t)
4975 21 : #define FD_GOSSIP_MSG_ALIGN (8UL)
4976 : struct fd_gossip_msg_global {
4977 : uint discriminant;
4978 : fd_gossip_msg_inner_global_t inner;
4979 : };
4980 : typedef struct fd_gossip_msg_global fd_gossip_msg_global_t;
4981 : #define FD_GOSSIP_MSG_GLOBAL_FOOTPRINT sizeof(fd_gossip_msg_global_t)
4982 : #define FD_GOSSIP_MSG_GLOBAL_ALIGN (8UL)
4983 :
4984 : /* Encoded Size: Fixed (9 bytes) */
4985 : struct __attribute__((aligned(8UL))) fd_addrlut_create {
4986 : ulong recent_slot;
4987 : uchar bump_seed;
4988 : };
4989 : typedef struct fd_addrlut_create fd_addrlut_create_t;
4990 0 : #define FD_ADDRLUT_CREATE_FOOTPRINT sizeof(fd_addrlut_create_t)
4991 0 : #define FD_ADDRLUT_CREATE_ALIGN (8UL)
4992 :
4993 : struct __attribute__((aligned(8UL))) fd_addrlut_create_global {
4994 : ulong recent_slot;
4995 : uchar bump_seed;
4996 : };
4997 : typedef struct fd_addrlut_create_global fd_addrlut_create_global_t;
4998 : #define FD_ADDRLUT_CREATE_GLOBAL_FOOTPRINT sizeof(fd_addrlut_create_global_t)
4999 : #define FD_ADDRLUT_CREATE_GLOBAL_ALIGN (8UL)
5000 :
5001 : /* Encoded Size: Dynamic */
5002 : struct __attribute__((aligned(8UL))) fd_addrlut_extend {
5003 : ulong new_addrs_len;
5004 : fd_pubkey_t * new_addrs;
5005 : };
5006 : typedef struct fd_addrlut_extend fd_addrlut_extend_t;
5007 0 : #define FD_ADDRLUT_EXTEND_FOOTPRINT sizeof(fd_addrlut_extend_t)
5008 0 : #define FD_ADDRLUT_EXTEND_ALIGN (8UL)
5009 :
5010 : struct __attribute__((aligned(8UL))) fd_addrlut_extend_global {
5011 : ulong new_addrs_len;
5012 : ulong new_addrs_gaddr;
5013 : };
5014 : typedef struct fd_addrlut_extend_global fd_addrlut_extend_global_t;
5015 : #define FD_ADDRLUT_EXTEND_GLOBAL_FOOTPRINT sizeof(fd_addrlut_extend_global_t)
5016 : #define FD_ADDRLUT_EXTEND_GLOBAL_ALIGN (8UL)
5017 :
5018 : union fd_addrlut_instruction_inner {
5019 : fd_addrlut_create_t create_lut;
5020 : fd_addrlut_extend_t extend_lut;
5021 : };
5022 : typedef union fd_addrlut_instruction_inner fd_addrlut_instruction_inner_t;
5023 :
5024 : union fd_addrlut_instruction_inner_global {
5025 : fd_addrlut_create_t create_lut;
5026 : fd_addrlut_extend_global_t extend_lut;
5027 : };
5028 : typedef union fd_addrlut_instruction_inner_global fd_addrlut_instruction_inner_global_t;
5029 :
5030 : /* https://github.com/solana-labs/solana/blob/fb80288f885a62bcd923f4c9579fd0edeafaff9b/sdk/program/src/address_lookup_table/instruction.rs#L13 */
5031 : struct fd_addrlut_instruction {
5032 : uint discriminant;
5033 : fd_addrlut_instruction_inner_t inner;
5034 : };
5035 : typedef struct fd_addrlut_instruction fd_addrlut_instruction_t;
5036 0 : #define FD_ADDRLUT_INSTRUCTION_FOOTPRINT sizeof(fd_addrlut_instruction_t)
5037 0 : #define FD_ADDRLUT_INSTRUCTION_ALIGN (8UL)
5038 : struct fd_addrlut_instruction_global {
5039 : uint discriminant;
5040 : fd_addrlut_instruction_inner_global_t inner;
5041 : };
5042 : typedef struct fd_addrlut_instruction_global fd_addrlut_instruction_global_t;
5043 : #define FD_ADDRLUT_INSTRUCTION_GLOBAL_FOOTPRINT sizeof(fd_addrlut_instruction_global_t)
5044 : #define FD_ADDRLUT_INSTRUCTION_GLOBAL_ALIGN (8UL)
5045 :
5046 : /* Encoded Size: Fixed (140 bytes) */
5047 : struct __attribute__((aligned(8UL))) fd_repair_request_header {
5048 : fd_signature_t signature;
5049 : fd_pubkey_t sender;
5050 : fd_pubkey_t recipient;
5051 : long timestamp;
5052 : uint nonce;
5053 : };
5054 : typedef struct fd_repair_request_header fd_repair_request_header_t;
5055 0 : #define FD_REPAIR_REQUEST_HEADER_FOOTPRINT sizeof(fd_repair_request_header_t)
5056 0 : #define FD_REPAIR_REQUEST_HEADER_ALIGN (8UL)
5057 :
5058 : struct __attribute__((aligned(8UL))) fd_repair_request_header_global {
5059 : fd_signature_t signature;
5060 : fd_pubkey_t sender;
5061 : fd_pubkey_t recipient;
5062 : long timestamp;
5063 : uint nonce;
5064 : };
5065 : typedef struct fd_repair_request_header_global fd_repair_request_header_global_t;
5066 : #define FD_REPAIR_REQUEST_HEADER_GLOBAL_FOOTPRINT sizeof(fd_repair_request_header_global_t)
5067 : #define FD_REPAIR_REQUEST_HEADER_GLOBAL_ALIGN (8UL)
5068 :
5069 : /* Encoded Size: Fixed (156 bytes) */
5070 : struct __attribute__((aligned(8UL))) fd_repair_window_index {
5071 : fd_repair_request_header_t header;
5072 : ulong slot;
5073 : ulong shred_index;
5074 : };
5075 : typedef struct fd_repair_window_index fd_repair_window_index_t;
5076 0 : #define FD_REPAIR_WINDOW_INDEX_FOOTPRINT sizeof(fd_repair_window_index_t)
5077 0 : #define FD_REPAIR_WINDOW_INDEX_ALIGN (8UL)
5078 :
5079 : struct __attribute__((aligned(8UL))) fd_repair_window_index_global {
5080 : fd_repair_request_header_t header;
5081 : ulong slot;
5082 : ulong shred_index;
5083 : };
5084 : typedef struct fd_repair_window_index_global fd_repair_window_index_global_t;
5085 : #define FD_REPAIR_WINDOW_INDEX_GLOBAL_FOOTPRINT sizeof(fd_repair_window_index_global_t)
5086 : #define FD_REPAIR_WINDOW_INDEX_GLOBAL_ALIGN (8UL)
5087 :
5088 : /* Encoded Size: Fixed (156 bytes) */
5089 : struct __attribute__((aligned(8UL))) fd_repair_highest_window_index {
5090 : fd_repair_request_header_t header;
5091 : ulong slot;
5092 : ulong shred_index;
5093 : };
5094 : typedef struct fd_repair_highest_window_index fd_repair_highest_window_index_t;
5095 0 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_FOOTPRINT sizeof(fd_repair_highest_window_index_t)
5096 0 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_ALIGN (8UL)
5097 :
5098 : struct __attribute__((aligned(8UL))) fd_repair_highest_window_index_global {
5099 : fd_repair_request_header_t header;
5100 : ulong slot;
5101 : ulong shred_index;
5102 : };
5103 : typedef struct fd_repair_highest_window_index_global fd_repair_highest_window_index_global_t;
5104 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_GLOBAL_FOOTPRINT sizeof(fd_repair_highest_window_index_global_t)
5105 : #define FD_REPAIR_HIGHEST_WINDOW_INDEX_GLOBAL_ALIGN (8UL)
5106 :
5107 : /* Encoded Size: Fixed (148 bytes) */
5108 : struct __attribute__((aligned(8UL))) fd_repair_orphan {
5109 : fd_repair_request_header_t header;
5110 : ulong slot;
5111 : };
5112 : typedef struct fd_repair_orphan fd_repair_orphan_t;
5113 0 : #define FD_REPAIR_ORPHAN_FOOTPRINT sizeof(fd_repair_orphan_t)
5114 0 : #define FD_REPAIR_ORPHAN_ALIGN (8UL)
5115 :
5116 : struct __attribute__((aligned(8UL))) fd_repair_orphan_global {
5117 : fd_repair_request_header_t header;
5118 : ulong slot;
5119 : };
5120 : typedef struct fd_repair_orphan_global fd_repair_orphan_global_t;
5121 : #define FD_REPAIR_ORPHAN_GLOBAL_FOOTPRINT sizeof(fd_repair_orphan_global_t)
5122 : #define FD_REPAIR_ORPHAN_GLOBAL_ALIGN (8UL)
5123 :
5124 : /* Encoded Size: Fixed (148 bytes) */
5125 : struct __attribute__((aligned(8UL))) fd_repair_ancestor_hashes {
5126 : fd_repair_request_header_t header;
5127 : ulong slot;
5128 : };
5129 : typedef struct fd_repair_ancestor_hashes fd_repair_ancestor_hashes_t;
5130 0 : #define FD_REPAIR_ANCESTOR_HASHES_FOOTPRINT sizeof(fd_repair_ancestor_hashes_t)
5131 0 : #define FD_REPAIR_ANCESTOR_HASHES_ALIGN (8UL)
5132 :
5133 : struct __attribute__((aligned(8UL))) fd_repair_ancestor_hashes_global {
5134 : fd_repair_request_header_t header;
5135 : ulong slot;
5136 : };
5137 : typedef struct fd_repair_ancestor_hashes_global fd_repair_ancestor_hashes_global_t;
5138 : #define FD_REPAIR_ANCESTOR_HASHES_GLOBAL_FOOTPRINT sizeof(fd_repair_ancestor_hashes_global_t)
5139 : #define FD_REPAIR_ANCESTOR_HASHES_GLOBAL_ALIGN (8UL)
5140 :
5141 : union fd_repair_protocol_inner {
5142 : fd_gossip_ping_t pong;
5143 : fd_repair_window_index_t window_index;
5144 : fd_repair_highest_window_index_t highest_window_index;
5145 : fd_repair_orphan_t orphan;
5146 : fd_repair_ancestor_hashes_t ancestor_hashes;
5147 : };
5148 : typedef union fd_repair_protocol_inner fd_repair_protocol_inner_t;
5149 :
5150 : union fd_repair_protocol_inner_global {
5151 : fd_gossip_ping_t pong;
5152 : fd_repair_window_index_t window_index;
5153 : fd_repair_highest_window_index_t highest_window_index;
5154 : fd_repair_orphan_t orphan;
5155 : fd_repair_ancestor_hashes_t ancestor_hashes;
5156 : };
5157 : typedef union fd_repair_protocol_inner_global fd_repair_protocol_inner_global_t;
5158 :
5159 : struct fd_repair_protocol {
5160 : uint discriminant;
5161 : fd_repair_protocol_inner_t inner;
5162 : };
5163 : typedef struct fd_repair_protocol fd_repair_protocol_t;
5164 0 : #define FD_REPAIR_PROTOCOL_FOOTPRINT sizeof(fd_repair_protocol_t)
5165 0 : #define FD_REPAIR_PROTOCOL_ALIGN (8UL)
5166 : struct fd_repair_protocol_global {
5167 : uint discriminant;
5168 : fd_repair_protocol_inner_global_t inner;
5169 : };
5170 : typedef struct fd_repair_protocol_global fd_repair_protocol_global_t;
5171 : #define FD_REPAIR_PROTOCOL_GLOBAL_FOOTPRINT sizeof(fd_repair_protocol_global_t)
5172 : #define FD_REPAIR_PROTOCOL_GLOBAL_ALIGN (8UL)
5173 :
5174 : union fd_repair_response_inner {
5175 : fd_gossip_ping_t ping;
5176 : };
5177 : typedef union fd_repair_response_inner fd_repair_response_inner_t;
5178 :
5179 : union fd_repair_response_inner_global {
5180 : fd_gossip_ping_t ping;
5181 : };
5182 : typedef union fd_repair_response_inner_global fd_repair_response_inner_global_t;
5183 :
5184 : struct fd_repair_response {
5185 : uint discriminant;
5186 : fd_repair_response_inner_t inner;
5187 : };
5188 : typedef struct fd_repair_response fd_repair_response_t;
5189 0 : #define FD_REPAIR_RESPONSE_FOOTPRINT sizeof(fd_repair_response_t)
5190 0 : #define FD_REPAIR_RESPONSE_ALIGN (8UL)
5191 : struct fd_repair_response_global {
5192 : uint discriminant;
5193 : fd_repair_response_inner_global_t inner;
5194 : };
5195 : typedef struct fd_repair_response_global fd_repair_response_global_t;
5196 : #define FD_REPAIR_RESPONSE_GLOBAL_FOOTPRINT sizeof(fd_repair_response_global_t)
5197 : #define FD_REPAIR_RESPONSE_GLOBAL_ALIGN (8UL)
5198 :
5199 : union fd_instr_error_enum_inner {
5200 : uint custom;
5201 : char* borsh_io_error;
5202 : };
5203 : typedef union fd_instr_error_enum_inner fd_instr_error_enum_inner_t;
5204 :
5205 : union fd_instr_error_enum_inner_global {
5206 : uint custom;
5207 : char* borsh_io_error;
5208 : };
5209 : typedef union fd_instr_error_enum_inner_global fd_instr_error_enum_inner_global_t;
5210 :
5211 : struct fd_instr_error_enum {
5212 : uint discriminant;
5213 : fd_instr_error_enum_inner_t inner;
5214 : };
5215 : typedef struct fd_instr_error_enum fd_instr_error_enum_t;
5216 0 : #define FD_INSTR_ERROR_ENUM_FOOTPRINT sizeof(fd_instr_error_enum_t)
5217 0 : #define FD_INSTR_ERROR_ENUM_ALIGN (8UL)
5218 : struct fd_instr_error_enum_global {
5219 : uint discriminant;
5220 : fd_instr_error_enum_inner_global_t inner;
5221 : };
5222 : typedef struct fd_instr_error_enum_global fd_instr_error_enum_global_t;
5223 : #define FD_INSTR_ERROR_ENUM_GLOBAL_FOOTPRINT sizeof(fd_instr_error_enum_global_t)
5224 : #define FD_INSTR_ERROR_ENUM_GLOBAL_ALIGN (8UL)
5225 :
5226 : /* Encoded Size: Dynamic */
5227 : struct __attribute__((aligned(8UL))) fd_txn_instr_error {
5228 : uchar instr_idx;
5229 : fd_instr_error_enum_t error;
5230 : };
5231 : typedef struct fd_txn_instr_error fd_txn_instr_error_t;
5232 0 : #define FD_TXN_INSTR_ERROR_FOOTPRINT sizeof(fd_txn_instr_error_t)
5233 0 : #define FD_TXN_INSTR_ERROR_ALIGN (8UL)
5234 :
5235 : struct __attribute__((aligned(8UL))) fd_txn_instr_error_global {
5236 : uchar instr_idx;
5237 : fd_instr_error_enum_global_t error;
5238 : };
5239 : typedef struct fd_txn_instr_error_global fd_txn_instr_error_global_t;
5240 : #define FD_TXN_INSTR_ERROR_GLOBAL_FOOTPRINT sizeof(fd_txn_instr_error_global_t)
5241 : #define FD_TXN_INSTR_ERROR_GLOBAL_ALIGN (8UL)
5242 :
5243 : union fd_txn_error_enum_inner {
5244 : fd_txn_instr_error_t instruction_error;
5245 : uchar duplicate_instruction;
5246 : uchar insufficient_funds_for_rent;
5247 : uchar program_execution_temporarily_restricted;
5248 : };
5249 : typedef union fd_txn_error_enum_inner fd_txn_error_enum_inner_t;
5250 :
5251 : union fd_txn_error_enum_inner_global {
5252 : fd_txn_instr_error_global_t instruction_error;
5253 : uchar duplicate_instruction;
5254 : uchar insufficient_funds_for_rent;
5255 : uchar program_execution_temporarily_restricted;
5256 : };
5257 : typedef union fd_txn_error_enum_inner_global fd_txn_error_enum_inner_global_t;
5258 :
5259 : struct fd_txn_error_enum {
5260 : uint discriminant;
5261 : fd_txn_error_enum_inner_t inner;
5262 : };
5263 : typedef struct fd_txn_error_enum fd_txn_error_enum_t;
5264 0 : #define FD_TXN_ERROR_ENUM_FOOTPRINT sizeof(fd_txn_error_enum_t)
5265 0 : #define FD_TXN_ERROR_ENUM_ALIGN (8UL)
5266 : struct fd_txn_error_enum_global {
5267 : uint discriminant;
5268 : fd_txn_error_enum_inner_global_t inner;
5269 : };
5270 : typedef struct fd_txn_error_enum_global fd_txn_error_enum_global_t;
5271 : #define FD_TXN_ERROR_ENUM_GLOBAL_FOOTPRINT sizeof(fd_txn_error_enum_global_t)
5272 : #define FD_TXN_ERROR_ENUM_GLOBAL_ALIGN (8UL)
5273 :
5274 : union fd_txn_result_inner {
5275 : fd_txn_error_enum_t error;
5276 : };
5277 : typedef union fd_txn_result_inner fd_txn_result_inner_t;
5278 :
5279 : union fd_txn_result_inner_global {
5280 : fd_txn_error_enum_global_t error;
5281 : };
5282 : typedef union fd_txn_result_inner_global fd_txn_result_inner_global_t;
5283 :
5284 : struct fd_txn_result {
5285 : uint discriminant;
5286 : fd_txn_result_inner_t inner;
5287 : };
5288 : typedef struct fd_txn_result fd_txn_result_t;
5289 0 : #define FD_TXN_RESULT_FOOTPRINT sizeof(fd_txn_result_t)
5290 0 : #define FD_TXN_RESULT_ALIGN (8UL)
5291 : struct fd_txn_result_global {
5292 : uint discriminant;
5293 : fd_txn_result_inner_global_t inner;
5294 : };
5295 : typedef struct fd_txn_result_global fd_txn_result_global_t;
5296 : #define FD_TXN_RESULT_GLOBAL_FOOTPRINT sizeof(fd_txn_result_global_t)
5297 : #define FD_TXN_RESULT_GLOBAL_ALIGN (8UL)
5298 :
5299 : /* Encoded Size: Dynamic */
5300 : struct __attribute__((aligned(8UL))) fd_cache_status {
5301 : uchar key_slice[20];
5302 : fd_txn_result_t result;
5303 : };
5304 : typedef struct fd_cache_status fd_cache_status_t;
5305 9 : #define FD_CACHE_STATUS_FOOTPRINT sizeof(fd_cache_status_t)
5306 9 : #define FD_CACHE_STATUS_ALIGN (8UL)
5307 :
5308 : struct __attribute__((aligned(8UL))) fd_cache_status_global {
5309 : uchar key_slice[20];
5310 : fd_txn_result_global_t result;
5311 : };
5312 : typedef struct fd_cache_status_global fd_cache_status_global_t;
5313 : #define FD_CACHE_STATUS_GLOBAL_FOOTPRINT sizeof(fd_cache_status_global_t)
5314 : #define FD_CACHE_STATUS_GLOBAL_ALIGN (8UL)
5315 :
5316 : /* Encoded Size: Dynamic */
5317 : struct __attribute__((aligned(8UL))) fd_status_value {
5318 : ulong txn_idx;
5319 : ulong statuses_len;
5320 : fd_cache_status_t * statuses;
5321 : };
5322 : typedef struct fd_status_value fd_status_value_t;
5323 0 : #define FD_STATUS_VALUE_FOOTPRINT sizeof(fd_status_value_t)
5324 0 : #define FD_STATUS_VALUE_ALIGN (8UL)
5325 :
5326 : struct __attribute__((aligned(8UL))) fd_status_value_global {
5327 : ulong txn_idx;
5328 : ulong statuses_len;
5329 : ulong statuses_gaddr;
5330 : };
5331 : typedef struct fd_status_value_global fd_status_value_global_t;
5332 : #define FD_STATUS_VALUE_GLOBAL_FOOTPRINT sizeof(fd_status_value_global_t)
5333 : #define FD_STATUS_VALUE_GLOBAL_ALIGN (8UL)
5334 :
5335 : /* Encoded Size: Dynamic */
5336 : struct __attribute__((aligned(8UL))) fd_status_pair {
5337 : fd_hash_t hash;
5338 : fd_status_value_t value;
5339 : };
5340 : typedef struct fd_status_pair fd_status_pair_t;
5341 9 : #define FD_STATUS_PAIR_FOOTPRINT sizeof(fd_status_pair_t)
5342 9 : #define FD_STATUS_PAIR_ALIGN (8UL)
5343 :
5344 : struct __attribute__((aligned(8UL))) fd_status_pair_global {
5345 : fd_hash_t hash;
5346 : fd_status_value_global_t value;
5347 : };
5348 : typedef struct fd_status_pair_global fd_status_pair_global_t;
5349 : #define FD_STATUS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_status_pair_global_t)
5350 : #define FD_STATUS_PAIR_GLOBAL_ALIGN (8UL)
5351 :
5352 : /* Encoded Size: Dynamic */
5353 : struct __attribute__((aligned(8UL))) fd_slot_delta {
5354 : ulong slot;
5355 : uchar is_root;
5356 : ulong slot_delta_vec_len;
5357 : fd_status_pair_t * slot_delta_vec;
5358 : };
5359 : typedef struct fd_slot_delta fd_slot_delta_t;
5360 12 : #define FD_SLOT_DELTA_FOOTPRINT sizeof(fd_slot_delta_t)
5361 12 : #define FD_SLOT_DELTA_ALIGN (8UL)
5362 :
5363 : struct __attribute__((aligned(8UL))) fd_slot_delta_global {
5364 : ulong slot;
5365 : uchar is_root;
5366 : ulong slot_delta_vec_len;
5367 : ulong slot_delta_vec_gaddr;
5368 : };
5369 : typedef struct fd_slot_delta_global fd_slot_delta_global_t;
5370 : #define FD_SLOT_DELTA_GLOBAL_FOOTPRINT sizeof(fd_slot_delta_global_t)
5371 : #define FD_SLOT_DELTA_GLOBAL_ALIGN (8UL)
5372 :
5373 : /* Encoded Size: Dynamic */
5374 : struct __attribute__((aligned(8UL))) fd_bank_slot_deltas {
5375 : ulong slot_deltas_len;
5376 : fd_slot_delta_t * slot_deltas;
5377 : };
5378 : typedef struct fd_bank_slot_deltas fd_bank_slot_deltas_t;
5379 0 : #define FD_BANK_SLOT_DELTAS_FOOTPRINT sizeof(fd_bank_slot_deltas_t)
5380 3 : #define FD_BANK_SLOT_DELTAS_ALIGN (8UL)
5381 :
5382 : struct __attribute__((aligned(8UL))) fd_bank_slot_deltas_global {
5383 : ulong slot_deltas_len;
5384 : ulong slot_deltas_gaddr;
5385 : };
5386 : typedef struct fd_bank_slot_deltas_global fd_bank_slot_deltas_global_t;
5387 : #define FD_BANK_SLOT_DELTAS_GLOBAL_FOOTPRINT sizeof(fd_bank_slot_deltas_global_t)
5388 : #define FD_BANK_SLOT_DELTAS_GLOBAL_ALIGN (8UL)
5389 :
5390 : /* https://github.com/anza-xyz/agave/blob/7117ed9653ce19e8b2dea108eff1f3eb6a3378a7/runtime/src/bank/partitioned_epoch_rewards/mod.rs#L85 */
5391 : /* Encoded Size: Fixed (60 bytes) */
5392 : struct __attribute__((aligned(8UL))) fd_pubkey_rewardinfo_pair {
5393 : fd_pubkey_t pubkey;
5394 : fd_reward_info_t reward_info;
5395 : };
5396 : typedef struct fd_pubkey_rewardinfo_pair fd_pubkey_rewardinfo_pair_t;
5397 0 : #define FD_PUBKEY_REWARDINFO_PAIR_FOOTPRINT sizeof(fd_pubkey_rewardinfo_pair_t)
5398 0 : #define FD_PUBKEY_REWARDINFO_PAIR_ALIGN (8UL)
5399 :
5400 : struct __attribute__((aligned(8UL))) fd_pubkey_rewardinfo_pair_global {
5401 : fd_pubkey_t pubkey;
5402 : fd_reward_info_t reward_info;
5403 : };
5404 : typedef struct fd_pubkey_rewardinfo_pair_global fd_pubkey_rewardinfo_pair_global_t;
5405 : #define FD_PUBKEY_REWARDINFO_PAIR_GLOBAL_FOOTPRINT sizeof(fd_pubkey_rewardinfo_pair_global_t)
5406 : #define FD_PUBKEY_REWARDINFO_PAIR_GLOBAL_ALIGN (8UL)
5407 :
5408 : /* Encoded Size: Dynamic */
5409 : struct __attribute__((aligned(8UL))) fd_optional_account {
5410 : fd_solana_account_t * account;
5411 : };
5412 : typedef struct fd_optional_account fd_optional_account_t;
5413 0 : #define FD_OPTIONAL_ACCOUNT_FOOTPRINT sizeof(fd_optional_account_t)
5414 0 : #define FD_OPTIONAL_ACCOUNT_ALIGN (8UL)
5415 :
5416 : struct __attribute__((aligned(8UL))) fd_optional_account_global {
5417 : ulong account_gaddr;
5418 : };
5419 : typedef struct fd_optional_account_global fd_optional_account_global_t;
5420 : #define FD_OPTIONAL_ACCOUNT_GLOBAL_FOOTPRINT sizeof(fd_optional_account_global_t)
5421 : #define FD_OPTIONAL_ACCOUNT_GLOBAL_ALIGN (8UL)
5422 :
5423 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/programs/stake/src/points.rs#L27 */
5424 : /* Encoded Size: Fixed (25 bytes) */
5425 : struct __attribute__((aligned(8UL))) fd_calculated_stake_points {
5426 : uint128 points;
5427 : ulong new_credits_observed;
5428 : uchar force_credits_update_with_skipped_reward;
5429 : };
5430 : typedef struct fd_calculated_stake_points fd_calculated_stake_points_t;
5431 0 : #define FD_CALCULATED_STAKE_POINTS_FOOTPRINT sizeof(fd_calculated_stake_points_t)
5432 0 : #define FD_CALCULATED_STAKE_POINTS_ALIGN (8UL)
5433 :
5434 : struct __attribute__((aligned(8UL))) fd_calculated_stake_points_global {
5435 : uint128 points;
5436 : ulong new_credits_observed;
5437 : uchar force_credits_update_with_skipped_reward;
5438 : };
5439 : typedef struct fd_calculated_stake_points_global fd_calculated_stake_points_global_t;
5440 : #define FD_CALCULATED_STAKE_POINTS_GLOBAL_FOOTPRINT sizeof(fd_calculated_stake_points_global_t)
5441 : #define FD_CALCULATED_STAKE_POINTS_GLOBAL_ALIGN (8UL)
5442 :
5443 : /* https://github.com/anza-xyz/agave/blob/cbc8320d35358da14d79ebcada4dfb6756ffac79/programs/stake/src/rewards.rs#L24 */
5444 : /* Encoded Size: Fixed (24 bytes) */
5445 : struct __attribute__((aligned(8UL))) fd_calculated_stake_rewards {
5446 : ulong staker_rewards;
5447 : ulong voter_rewards;
5448 : ulong new_credits_observed;
5449 : };
5450 : typedef struct fd_calculated_stake_rewards fd_calculated_stake_rewards_t;
5451 0 : #define FD_CALCULATED_STAKE_REWARDS_FOOTPRINT sizeof(fd_calculated_stake_rewards_t)
5452 0 : #define FD_CALCULATED_STAKE_REWARDS_ALIGN (8UL)
5453 :
5454 : struct __attribute__((aligned(8UL))) fd_calculated_stake_rewards_global {
5455 : ulong staker_rewards;
5456 : ulong voter_rewards;
5457 : ulong new_credits_observed;
5458 : };
5459 : typedef struct fd_calculated_stake_rewards_global fd_calculated_stake_rewards_global_t;
5460 : #define FD_CALCULATED_STAKE_REWARDS_GLOBAL_FOOTPRINT sizeof(fd_calculated_stake_rewards_global_t)
5461 : #define FD_CALCULATED_STAKE_REWARDS_GLOBAL_ALIGN (8UL)
5462 :
5463 : /* https://github.com/anza-xyz/agave/blob/v2.0.3/ledger/src/blockstore_meta.rs#L150-L156 */
5464 : /* Encoded Size: Dynamic */
5465 : struct __attribute__((aligned(8UL))) fd_duplicate_slot_proof {
5466 : ulong shred1_len;
5467 : uchar* shred1;
5468 : ulong shred2_len;
5469 : uchar* shred2;
5470 : };
5471 : typedef struct fd_duplicate_slot_proof fd_duplicate_slot_proof_t;
5472 0 : #define FD_DUPLICATE_SLOT_PROOF_FOOTPRINT sizeof(fd_duplicate_slot_proof_t)
5473 0 : #define FD_DUPLICATE_SLOT_PROOF_ALIGN (8UL)
5474 :
5475 : struct __attribute__((aligned(8UL))) fd_duplicate_slot_proof_global {
5476 : ulong shred1_len;
5477 : ulong shred1_gaddr;
5478 : ulong shred2_len;
5479 : ulong shred2_gaddr;
5480 : };
5481 : typedef struct fd_duplicate_slot_proof_global fd_duplicate_slot_proof_global_t;
5482 : #define FD_DUPLICATE_SLOT_PROOF_GLOBAL_FOOTPRINT sizeof(fd_duplicate_slot_proof_global_t)
5483 : #define FD_DUPLICATE_SLOT_PROOF_GLOBAL_ALIGN (8UL)
5484 :
5485 : /* Encoded Size: Fixed (104 bytes) */
5486 : struct __attribute__((aligned(8UL))) fd_epoch_info_pair {
5487 : fd_pubkey_t account;
5488 : fd_stake_t stake;
5489 : };
5490 : typedef struct fd_epoch_info_pair fd_epoch_info_pair_t;
5491 0 : #define FD_EPOCH_INFO_PAIR_FOOTPRINT sizeof(fd_epoch_info_pair_t)
5492 0 : #define FD_EPOCH_INFO_PAIR_ALIGN (8UL)
5493 :
5494 : struct __attribute__((aligned(8UL))) fd_epoch_info_pair_global {
5495 : fd_pubkey_t account;
5496 : fd_stake_t stake;
5497 : };
5498 : typedef struct fd_epoch_info_pair_global fd_epoch_info_pair_global_t;
5499 : #define FD_EPOCH_INFO_PAIR_GLOBAL_FOOTPRINT sizeof(fd_epoch_info_pair_global_t)
5500 : #define FD_EPOCH_INFO_PAIR_GLOBAL_ALIGN (8UL)
5501 :
5502 : /* Encoded Size: Dynamic */
5503 : struct __attribute__((aligned(8UL))) fd_vote_info_pair {
5504 : fd_pubkey_t account;
5505 : fd_vote_state_versioned_t state;
5506 : };
5507 : typedef struct fd_vote_info_pair fd_vote_info_pair_t;
5508 0 : #define FD_VOTE_INFO_PAIR_FOOTPRINT sizeof(fd_vote_info_pair_t)
5509 0 : #define FD_VOTE_INFO_PAIR_ALIGN (8UL)
5510 :
5511 : struct __attribute__((aligned(8UL))) fd_vote_info_pair_global {
5512 : fd_pubkey_t account;
5513 : fd_vote_state_versioned_global_t state;
5514 : };
5515 : typedef struct fd_vote_info_pair_global fd_vote_info_pair_global_t;
5516 : #define FD_VOTE_INFO_PAIR_GLOBAL_FOOTPRINT sizeof(fd_vote_info_pair_global_t)
5517 : #define FD_VOTE_INFO_PAIR_GLOBAL_ALIGN (8UL)
5518 :
5519 : typedef struct fd_vote_info_pair_t_mapnode fd_vote_info_pair_t_mapnode_t;
5520 : #define REDBLK_T fd_vote_info_pair_t_mapnode_t
5521 : #define REDBLK_NAME fd_vote_info_pair_t_map
5522 : #define REDBLK_IMPL_STYLE 1
5523 : #include "../../util/tmpl/fd_redblack.c"
5524 : struct fd_vote_info_pair_t_mapnode {
5525 : fd_vote_info_pair_t elem;
5526 : ulong redblack_parent;
5527 : ulong redblack_left;
5528 : ulong redblack_right;
5529 : int redblack_color;
5530 : };
5531 : static inline fd_vote_info_pair_t_mapnode_t *
5532 0 : fd_vote_info_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
5533 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
5534 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_vote_info_pair_t_map_align() );
5535 0 : void * map_mem = *alloc_mem;
5536 0 : *alloc_mem = (uchar *)*alloc_mem + fd_vote_info_pair_t_map_footprint( len );
5537 0 : return fd_vote_info_pair_t_map_join( fd_vote_info_pair_t_map_new( map_mem, len ) );
5538 0 : }
5539 : /* Encoded Size: Dynamic */
5540 : struct __attribute__((aligned(8UL))) fd_epoch_info {
5541 : ulong stake_infos_len;
5542 : fd_epoch_info_pair_t * stake_infos;
5543 : fd_vote_info_pair_t_mapnode_t * vote_states_pool;
5544 : fd_vote_info_pair_t_mapnode_t * vote_states_root;
5545 : ulong stake_infos_new_keys_start_idx;
5546 : };
5547 : typedef struct fd_epoch_info fd_epoch_info_t;
5548 0 : #define FD_EPOCH_INFO_FOOTPRINT sizeof(fd_epoch_info_t)
5549 0 : #define FD_EPOCH_INFO_ALIGN (8UL)
5550 :
5551 : struct __attribute__((aligned(8UL))) fd_epoch_info_global {
5552 : ulong stake_infos_len;
5553 : ulong stake_infos_gaddr;
5554 : ulong vote_states_pool_gaddr;
5555 : ulong vote_states_root_gaddr;
5556 : ulong stake_infos_new_keys_start_idx;
5557 : };
5558 : typedef struct fd_epoch_info_global fd_epoch_info_global_t;
5559 : #define FD_EPOCH_INFO_GLOBAL_FOOTPRINT sizeof(fd_epoch_info_global_t)
5560 : #define FD_EPOCH_INFO_GLOBAL_ALIGN (8UL)
5561 :
5562 : /* https://github.com/anza-xyz/agave/blob/v2.2.0/cost-model/src/transaction_cost.rs#L153-L161 */
5563 : /* Encoded Size: Fixed (48 bytes) */
5564 : struct __attribute__((aligned(8UL))) fd_usage_cost_details {
5565 : ulong signature_cost;
5566 : ulong write_lock_cost;
5567 : ulong data_bytes_cost;
5568 : ulong programs_execution_cost;
5569 : ulong loaded_accounts_data_size_cost;
5570 : ulong allocated_accounts_data_size;
5571 : };
5572 : typedef struct fd_usage_cost_details fd_usage_cost_details_t;
5573 0 : #define FD_USAGE_COST_DETAILS_FOOTPRINT sizeof(fd_usage_cost_details_t)
5574 0 : #define FD_USAGE_COST_DETAILS_ALIGN (8UL)
5575 :
5576 : struct __attribute__((aligned(8UL))) fd_usage_cost_details_global {
5577 : ulong signature_cost;
5578 : ulong write_lock_cost;
5579 : ulong data_bytes_cost;
5580 : ulong programs_execution_cost;
5581 : ulong loaded_accounts_data_size_cost;
5582 : ulong allocated_accounts_data_size;
5583 : };
5584 : typedef struct fd_usage_cost_details_global fd_usage_cost_details_global_t;
5585 : #define FD_USAGE_COST_DETAILS_GLOBAL_FOOTPRINT sizeof(fd_usage_cost_details_global_t)
5586 : #define FD_USAGE_COST_DETAILS_GLOBAL_ALIGN (8UL)
5587 :
5588 : union fd_transaction_cost_inner {
5589 : fd_usage_cost_details_t transaction;
5590 : };
5591 : typedef union fd_transaction_cost_inner fd_transaction_cost_inner_t;
5592 :
5593 : union fd_transaction_cost_inner_global {
5594 : fd_usage_cost_details_t transaction;
5595 : };
5596 : typedef union fd_transaction_cost_inner_global fd_transaction_cost_inner_global_t;
5597 :
5598 : /* https://github.com/anza-xyz/agave/blob/v2.2.0/cost-model/src/transaction_cost.rs#L20-L23 */
5599 : struct fd_transaction_cost {
5600 : uint discriminant;
5601 : fd_transaction_cost_inner_t inner;
5602 : };
5603 : typedef struct fd_transaction_cost fd_transaction_cost_t;
5604 0 : #define FD_TRANSACTION_COST_FOOTPRINT sizeof(fd_transaction_cost_t)
5605 0 : #define FD_TRANSACTION_COST_ALIGN (8UL)
5606 : struct fd_transaction_cost_global {
5607 : uint discriminant;
5608 : fd_transaction_cost_inner_global_t inner;
5609 : };
5610 : typedef struct fd_transaction_cost_global fd_transaction_cost_global_t;
5611 : #define FD_TRANSACTION_COST_GLOBAL_FOOTPRINT sizeof(fd_transaction_cost_global_t)
5612 : #define FD_TRANSACTION_COST_GLOBAL_ALIGN (8UL)
5613 :
5614 : /* Encoded Size: Fixed (40 bytes) */
5615 : struct __attribute__((aligned(8UL))) fd_account_costs_pair {
5616 : fd_pubkey_t key;
5617 : ulong cost;
5618 : };
5619 : typedef struct fd_account_costs_pair fd_account_costs_pair_t;
5620 0 : #define FD_ACCOUNT_COSTS_PAIR_FOOTPRINT sizeof(fd_account_costs_pair_t)
5621 0 : #define FD_ACCOUNT_COSTS_PAIR_ALIGN (8UL)
5622 :
5623 : struct __attribute__((aligned(8UL))) fd_account_costs_pair_global {
5624 : fd_pubkey_t key;
5625 : ulong cost;
5626 : };
5627 : typedef struct fd_account_costs_pair_global fd_account_costs_pair_global_t;
5628 : #define FD_ACCOUNT_COSTS_PAIR_GLOBAL_FOOTPRINT sizeof(fd_account_costs_pair_global_t)
5629 : #define FD_ACCOUNT_COSTS_PAIR_GLOBAL_ALIGN (8UL)
5630 :
5631 : typedef struct fd_account_costs_pair_t_mapnode fd_account_costs_pair_t_mapnode_t;
5632 : #define REDBLK_T fd_account_costs_pair_t_mapnode_t
5633 : #define REDBLK_NAME fd_account_costs_pair_t_map
5634 : #define REDBLK_IMPL_STYLE 1
5635 : #include "../../util/tmpl/fd_redblack.c"
5636 : struct fd_account_costs_pair_t_mapnode {
5637 : fd_account_costs_pair_t elem;
5638 : ulong redblack_parent;
5639 : ulong redblack_left;
5640 : ulong redblack_right;
5641 : int redblack_color;
5642 : };
5643 : static inline fd_account_costs_pair_t_mapnode_t *
5644 0 : fd_account_costs_pair_t_map_join_new( void * * alloc_mem, ulong len ) {
5645 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
5646 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_account_costs_pair_t_map_align() );
5647 0 : void * map_mem = *alloc_mem;
5648 0 : *alloc_mem = (uchar *)*alloc_mem + fd_account_costs_pair_t_map_footprint( len );
5649 0 : return fd_account_costs_pair_t_map_join( fd_account_costs_pair_t_map_new( map_mem, len ) );
5650 0 : }
5651 : /* Encoded Size: Dynamic */
5652 : struct __attribute__((aligned(8UL))) fd_account_costs {
5653 : fd_account_costs_pair_t_mapnode_t * account_costs_pool;
5654 : fd_account_costs_pair_t_mapnode_t * account_costs_root;
5655 : };
5656 : typedef struct fd_account_costs fd_account_costs_t;
5657 0 : #define FD_ACCOUNT_COSTS_FOOTPRINT sizeof(fd_account_costs_t)
5658 0 : #define FD_ACCOUNT_COSTS_ALIGN (8UL)
5659 :
5660 : struct __attribute__((aligned(8UL))) fd_account_costs_global {
5661 : ulong account_costs_pool_gaddr;
5662 : ulong account_costs_root_gaddr;
5663 : };
5664 : typedef struct fd_account_costs_global fd_account_costs_global_t;
5665 : #define FD_ACCOUNT_COSTS_GLOBAL_FOOTPRINT sizeof(fd_account_costs_global_t)
5666 : #define FD_ACCOUNT_COSTS_GLOBAL_ALIGN (8UL)
5667 :
5668 : /* https://github.com/anza-xyz/agave/blob/v2.2.0/cost-model/src/cost_tracker.rs#L62-L79 */
5669 : /* Encoded Size: Dynamic */
5670 : struct __attribute__((aligned(8UL))) fd_cost_tracker {
5671 : ulong account_cost_limit;
5672 : ulong block_cost_limit;
5673 : ulong vote_cost_limit;
5674 : fd_account_costs_t cost_by_writable_accounts;
5675 : ulong block_cost;
5676 : ulong vote_cost;
5677 : ulong transaction_count;
5678 : ulong allocated_accounts_data_size;
5679 : ulong transaction_signature_count;
5680 : ulong secp256k1_instruction_signature_count;
5681 : ulong ed25519_instruction_signature_count;
5682 : ulong secp256r1_instruction_signature_count;
5683 : };
5684 : typedef struct fd_cost_tracker fd_cost_tracker_t;
5685 0 : #define FD_COST_TRACKER_FOOTPRINT sizeof(fd_cost_tracker_t)
5686 0 : #define FD_COST_TRACKER_ALIGN (8UL)
5687 :
5688 : struct __attribute__((aligned(8UL))) fd_cost_tracker_global {
5689 : ulong account_cost_limit;
5690 : ulong block_cost_limit;
5691 : ulong vote_cost_limit;
5692 : fd_account_costs_global_t cost_by_writable_accounts;
5693 : ulong block_cost;
5694 : ulong vote_cost;
5695 : ulong transaction_count;
5696 : ulong allocated_accounts_data_size;
5697 : ulong transaction_signature_count;
5698 : ulong secp256k1_instruction_signature_count;
5699 : ulong ed25519_instruction_signature_count;
5700 : ulong secp256r1_instruction_signature_count;
5701 : };
5702 : typedef struct fd_cost_tracker_global fd_cost_tracker_global_t;
5703 : #define FD_COST_TRACKER_GLOBAL_FOOTPRINT sizeof(fd_cost_tracker_global_t)
5704 : #define FD_COST_TRACKER_GLOBAL_ALIGN (8UL)
5705 :
5706 : /* Encoded Size: Fixed (32 bytes) */
5707 : struct __attribute__((aligned(8UL))) fd_pubkey_node {
5708 : fd_pubkey_t pubkey;
5709 : };
5710 : typedef struct fd_pubkey_node fd_pubkey_node_t;
5711 0 : #define FD_PUBKEY_NODE_FOOTPRINT sizeof(fd_pubkey_node_t)
5712 0 : #define FD_PUBKEY_NODE_ALIGN (8UL)
5713 :
5714 : struct __attribute__((aligned(8UL))) fd_pubkey_node_global {
5715 : fd_pubkey_t pubkey;
5716 : };
5717 : typedef struct fd_pubkey_node_global fd_pubkey_node_global_t;
5718 : #define FD_PUBKEY_NODE_GLOBAL_FOOTPRINT sizeof(fd_pubkey_node_global_t)
5719 : #define FD_PUBKEY_NODE_GLOBAL_ALIGN (8UL)
5720 :
5721 : typedef struct fd_pubkey_node_t_mapnode fd_pubkey_node_t_mapnode_t;
5722 : #define REDBLK_T fd_pubkey_node_t_mapnode_t
5723 : #define REDBLK_NAME fd_pubkey_node_t_map
5724 : #define REDBLK_IMPL_STYLE 1
5725 : #include "../../util/tmpl/fd_redblack.c"
5726 : struct fd_pubkey_node_t_mapnode {
5727 : fd_pubkey_node_t elem;
5728 : ulong redblack_parent;
5729 : ulong redblack_left;
5730 : ulong redblack_right;
5731 : int redblack_color;
5732 : };
5733 : static inline fd_pubkey_node_t_mapnode_t *
5734 0 : fd_pubkey_node_t_map_join_new( void * * alloc_mem, ulong len ) {
5735 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
5736 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_pubkey_node_t_map_align() );
5737 0 : void * map_mem = *alloc_mem;
5738 0 : *alloc_mem = (uchar *)*alloc_mem + fd_pubkey_node_t_map_footprint( len );
5739 0 : return fd_pubkey_node_t_map_join( fd_pubkey_node_t_map_new( map_mem, len ) );
5740 0 : }
5741 : /* Encoded Size: Dynamic */
5742 : struct __attribute__((aligned(8UL))) fd_rent_fresh_accounts_partition {
5743 : ulong partition;
5744 : fd_pubkey_node_t_mapnode_t * accounts_pool;
5745 : fd_pubkey_node_t_mapnode_t * accounts_root;
5746 : };
5747 : typedef struct fd_rent_fresh_accounts_partition fd_rent_fresh_accounts_partition_t;
5748 0 : #define FD_RENT_FRESH_ACCOUNTS_PARTITION_FOOTPRINT sizeof(fd_rent_fresh_accounts_partition_t)
5749 0 : #define FD_RENT_FRESH_ACCOUNTS_PARTITION_ALIGN (8UL)
5750 :
5751 : struct __attribute__((aligned(8UL))) fd_rent_fresh_accounts_partition_global {
5752 : ulong partition;
5753 : ulong accounts_pool_gaddr;
5754 : ulong accounts_root_gaddr;
5755 : };
5756 : typedef struct fd_rent_fresh_accounts_partition_global fd_rent_fresh_accounts_partition_global_t;
5757 : #define FD_RENT_FRESH_ACCOUNTS_PARTITION_GLOBAL_FOOTPRINT sizeof(fd_rent_fresh_accounts_partition_global_t)
5758 : #define FD_RENT_FRESH_ACCOUNTS_PARTITION_GLOBAL_ALIGN (8UL)
5759 :
5760 : typedef struct fd_rent_fresh_accounts_partition_t_mapnode fd_rent_fresh_accounts_partition_t_mapnode_t;
5761 : #define REDBLK_T fd_rent_fresh_accounts_partition_t_mapnode_t
5762 : #define REDBLK_NAME fd_rent_fresh_accounts_partition_t_map
5763 : #define REDBLK_IMPL_STYLE 1
5764 : #include "../../util/tmpl/fd_redblack.c"
5765 : struct fd_rent_fresh_accounts_partition_t_mapnode {
5766 : fd_rent_fresh_accounts_partition_t elem;
5767 : ulong redblack_parent;
5768 : ulong redblack_left;
5769 : ulong redblack_right;
5770 : int redblack_color;
5771 : };
5772 : static inline fd_rent_fresh_accounts_partition_t_mapnode_t *
5773 0 : fd_rent_fresh_accounts_partition_t_map_join_new( void * * alloc_mem, ulong len ) {
5774 0 : if( FD_UNLIKELY( 0 == len ) ) len = 1; // prevent underflow
5775 0 : *alloc_mem = (void*)fd_ulong_align_up( (ulong)*alloc_mem, fd_rent_fresh_accounts_partition_t_map_align() );
5776 0 : void * map_mem = *alloc_mem;
5777 0 : *alloc_mem = (uchar *)*alloc_mem + fd_rent_fresh_accounts_partition_t_map_footprint( len );
5778 0 : return fd_rent_fresh_accounts_partition_t_map_join( fd_rent_fresh_accounts_partition_t_map_new( map_mem, len ) );
5779 0 : }
5780 : /* Encoded Size: Dynamic */
5781 : struct __attribute__((aligned(8UL))) fd_rent_fresh_accounts {
5782 : ulong total_count;
5783 : fd_rent_fresh_accounts_partition_t_mapnode_t * partitions_pool;
5784 : fd_rent_fresh_accounts_partition_t_mapnode_t * partitions_root;
5785 : };
5786 : typedef struct fd_rent_fresh_accounts fd_rent_fresh_accounts_t;
5787 0 : #define FD_RENT_FRESH_ACCOUNTS_FOOTPRINT sizeof(fd_rent_fresh_accounts_t)
5788 0 : #define FD_RENT_FRESH_ACCOUNTS_ALIGN (8UL)
5789 :
5790 : struct __attribute__((aligned(8UL))) fd_rent_fresh_accounts_global {
5791 : ulong total_count;
5792 : ulong partitions_pool_gaddr;
5793 : ulong partitions_root_gaddr;
5794 : };
5795 : typedef struct fd_rent_fresh_accounts_global fd_rent_fresh_accounts_global_t;
5796 : #define FD_RENT_FRESH_ACCOUNTS_GLOBAL_FOOTPRINT sizeof(fd_rent_fresh_accounts_global_t)
5797 : #define FD_RENT_FRESH_ACCOUNTS_GLOBAL_ALIGN (8UL)
5798 :
5799 :
5800 : FD_PROTOTYPES_BEGIN
5801 :
5802 : void fd_hash_new( fd_hash_t * self );
5803 : int fd_hash_encode( fd_hash_t const * self, fd_bincode_encode_ctx_t * ctx );
5804 : void fd_hash_destroy( fd_hash_t * self );
5805 : void fd_hash_walk( void * w, fd_hash_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
5806 : ulong fd_hash_size( fd_hash_t const * self );
5807 : ulong fd_hash_footprint( void );
5808 : ulong fd_hash_align( void );
5809 : int fd_hash_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5810 : int fd_hash_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5811 : void * fd_hash_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5812 : void fd_hash_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5813 : void * fd_hash_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5814 : void fd_hash_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5815 : int fd_hash_convert_global_to_local( void const * global_self, fd_hash_t * self, fd_bincode_decode_ctx_t * ctx );
5816 :
5817 : void fd_signature_new( fd_signature_t * self );
5818 : int fd_signature_encode( fd_signature_t const * self, fd_bincode_encode_ctx_t * ctx );
5819 : void fd_signature_destroy( fd_signature_t * self );
5820 : void fd_signature_walk( void * w, fd_signature_t const * self, fd_types_walk_fn_t fun, const char * name, uint level );
5821 : ulong fd_signature_size( fd_signature_t const * self );
5822 : ulong fd_signature_footprint( void );
5823 : ulong fd_signature_align( void );
5824 : int fd_signature_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5825 : int fd_signature_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5826 : void * fd_signature_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5827 : void fd_signature_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5828 : void * fd_signature_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5829 : void fd_signature_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5830 : int fd_signature_convert_global_to_local( void const * global_self, fd_signature_t * self, fd_bincode_decode_ctx_t * ctx );
5831 :
5832 : void fd_gossip_ip4_addr_new( fd_gossip_ip4_addr_t * self );
5833 : int fd_gossip_ip4_addr_encode( fd_gossip_ip4_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
5834 : void fd_gossip_ip4_addr_destroy( fd_gossip_ip4_addr_t * self );
5835 : 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 );
5836 : ulong fd_gossip_ip4_addr_size( fd_gossip_ip4_addr_t const * self );
5837 : ulong fd_gossip_ip4_addr_footprint( void );
5838 : ulong fd_gossip_ip4_addr_align( void );
5839 : int fd_gossip_ip4_addr_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5840 : int fd_gossip_ip4_addr_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5841 : void * fd_gossip_ip4_addr_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5842 : void fd_gossip_ip4_addr_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5843 : void * fd_gossip_ip4_addr_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5844 : void fd_gossip_ip4_addr_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5845 : int fd_gossip_ip4_addr_convert_global_to_local( void const * global_self, fd_gossip_ip4_addr_t * self, fd_bincode_decode_ctx_t * ctx );
5846 :
5847 : void fd_gossip_ip6_addr_new( fd_gossip_ip6_addr_t * self );
5848 : int fd_gossip_ip6_addr_encode( fd_gossip_ip6_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
5849 : void fd_gossip_ip6_addr_destroy( fd_gossip_ip6_addr_t * self );
5850 : 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 );
5851 : ulong fd_gossip_ip6_addr_size( fd_gossip_ip6_addr_t const * self );
5852 : ulong fd_gossip_ip6_addr_footprint( void );
5853 : ulong fd_gossip_ip6_addr_align( void );
5854 : int fd_gossip_ip6_addr_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5855 : int fd_gossip_ip6_addr_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5856 : void * fd_gossip_ip6_addr_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5857 : void fd_gossip_ip6_addr_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5858 : void * fd_gossip_ip6_addr_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5859 : void fd_gossip_ip6_addr_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5860 : int fd_gossip_ip6_addr_convert_global_to_local( void const * global_self, fd_gossip_ip6_addr_t * self, fd_bincode_decode_ctx_t * ctx );
5861 :
5862 : void fd_feature_new( fd_feature_t * self );
5863 : int fd_feature_encode( fd_feature_t const * self, fd_bincode_encode_ctx_t * ctx );
5864 : void fd_feature_destroy( fd_feature_t * self );
5865 : void fd_feature_walk( void * w, fd_feature_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5866 : ulong fd_feature_size( fd_feature_t const * self );
5867 : ulong fd_feature_footprint( void );
5868 : ulong fd_feature_align( void );
5869 : int fd_feature_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5870 : int fd_feature_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5871 : void * fd_feature_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5872 : void fd_feature_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5873 : void * fd_feature_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5874 : void fd_feature_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5875 : int fd_feature_convert_global_to_local( void const * global_self, fd_feature_t * self, fd_bincode_decode_ctx_t * ctx );
5876 :
5877 : void fd_fee_calculator_new( fd_fee_calculator_t * self );
5878 : int fd_fee_calculator_encode( fd_fee_calculator_t const * self, fd_bincode_encode_ctx_t * ctx );
5879 : void fd_fee_calculator_destroy( fd_fee_calculator_t * self );
5880 : void fd_fee_calculator_walk( void * w, fd_fee_calculator_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5881 : ulong fd_fee_calculator_size( fd_fee_calculator_t const * self );
5882 : ulong fd_fee_calculator_footprint( void );
5883 : ulong fd_fee_calculator_align( void );
5884 : int fd_fee_calculator_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5885 : int fd_fee_calculator_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5886 : void * fd_fee_calculator_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5887 : void fd_fee_calculator_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5888 : void * fd_fee_calculator_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5889 : void fd_fee_calculator_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5890 : int fd_fee_calculator_convert_global_to_local( void const * global_self, fd_fee_calculator_t * self, fd_bincode_decode_ctx_t * ctx );
5891 :
5892 : void fd_hash_age_new( fd_hash_age_t * self );
5893 : int fd_hash_age_encode( fd_hash_age_t const * self, fd_bincode_encode_ctx_t * ctx );
5894 : void fd_hash_age_destroy( fd_hash_age_t * self );
5895 : void fd_hash_age_walk( void * w, fd_hash_age_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5896 : ulong fd_hash_age_size( fd_hash_age_t const * self );
5897 : ulong fd_hash_age_footprint( void );
5898 : ulong fd_hash_age_align( void );
5899 : int fd_hash_age_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5900 : int fd_hash_age_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5901 : void * fd_hash_age_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5902 : void fd_hash_age_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5903 : void * fd_hash_age_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5904 : void fd_hash_age_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5905 : int fd_hash_age_convert_global_to_local( void const * global_self, fd_hash_age_t * self, fd_bincode_decode_ctx_t * ctx );
5906 :
5907 : void fd_hash_hash_age_pair_new( fd_hash_hash_age_pair_t * self );
5908 : int fd_hash_hash_age_pair_encode( fd_hash_hash_age_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5909 : void fd_hash_hash_age_pair_destroy( fd_hash_hash_age_pair_t * self );
5910 : 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 );
5911 : ulong fd_hash_hash_age_pair_size( fd_hash_hash_age_pair_t const * self );
5912 : ulong fd_hash_hash_age_pair_footprint( void );
5913 : ulong fd_hash_hash_age_pair_align( void );
5914 : int fd_hash_hash_age_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5915 : int fd_hash_hash_age_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5916 : void * fd_hash_hash_age_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5917 : void fd_hash_hash_age_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5918 : void * fd_hash_hash_age_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5919 : void fd_hash_hash_age_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5920 : int fd_hash_hash_age_pair_convert_global_to_local( void const * global_self, fd_hash_hash_age_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5921 :
5922 : void fd_block_hash_vec_new( fd_block_hash_vec_t * self );
5923 : int fd_block_hash_vec_encode( fd_block_hash_vec_t const * self, fd_bincode_encode_ctx_t * ctx );
5924 : void fd_block_hash_vec_destroy( fd_block_hash_vec_t * self );
5925 : 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 );
5926 : ulong fd_block_hash_vec_size( fd_block_hash_vec_t const * self );
5927 : ulong fd_block_hash_vec_footprint( void );
5928 : ulong fd_block_hash_vec_align( void );
5929 : int fd_block_hash_vec_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5930 : int fd_block_hash_vec_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5931 : void * fd_block_hash_vec_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5932 : void fd_block_hash_vec_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5933 : void * fd_block_hash_vec_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5934 : void fd_block_hash_vec_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5935 : int fd_block_hash_vec_convert_global_to_local( void const * global_self, fd_block_hash_vec_t * self, fd_bincode_decode_ctx_t * ctx );
5936 :
5937 : void fd_block_hash_queue_new( fd_block_hash_queue_t * self );
5938 : int fd_block_hash_queue_encode( fd_block_hash_queue_t const * self, fd_bincode_encode_ctx_t * ctx );
5939 : void fd_block_hash_queue_destroy( fd_block_hash_queue_t * self );
5940 : 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 );
5941 : ulong fd_block_hash_queue_size( fd_block_hash_queue_t const * self );
5942 : ulong fd_block_hash_queue_footprint( void );
5943 : ulong fd_block_hash_queue_align( void );
5944 : int fd_block_hash_queue_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5945 : int fd_block_hash_queue_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5946 : void * fd_block_hash_queue_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5947 : void fd_block_hash_queue_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5948 : void * fd_block_hash_queue_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5949 : void fd_block_hash_queue_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5950 : int fd_block_hash_queue_convert_global_to_local( void const * global_self, fd_block_hash_queue_t * self, fd_bincode_decode_ctx_t * ctx );
5951 :
5952 : void fd_fee_rate_governor_new( fd_fee_rate_governor_t * self );
5953 : int fd_fee_rate_governor_encode( fd_fee_rate_governor_t const * self, fd_bincode_encode_ctx_t * ctx );
5954 : void fd_fee_rate_governor_destroy( fd_fee_rate_governor_t * self );
5955 : 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 );
5956 : ulong fd_fee_rate_governor_size( fd_fee_rate_governor_t const * self );
5957 : ulong fd_fee_rate_governor_footprint( void );
5958 : ulong fd_fee_rate_governor_align( void );
5959 : int fd_fee_rate_governor_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5960 : int fd_fee_rate_governor_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5961 : void * fd_fee_rate_governor_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5962 : void fd_fee_rate_governor_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5963 : void * fd_fee_rate_governor_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5964 : void fd_fee_rate_governor_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5965 : int fd_fee_rate_governor_convert_global_to_local( void const * global_self, fd_fee_rate_governor_t * self, fd_bincode_decode_ctx_t * ctx );
5966 :
5967 : void fd_slot_pair_new( fd_slot_pair_t * self );
5968 : int fd_slot_pair_encode( fd_slot_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
5969 : void fd_slot_pair_destroy( fd_slot_pair_t * self );
5970 : void fd_slot_pair_walk( void * w, fd_slot_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5971 : ulong fd_slot_pair_size( fd_slot_pair_t const * self );
5972 : ulong fd_slot_pair_footprint( void );
5973 : ulong fd_slot_pair_align( void );
5974 : int fd_slot_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5975 : int fd_slot_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5976 : void * fd_slot_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5977 : void fd_slot_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5978 : void * fd_slot_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5979 : void fd_slot_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5980 : int fd_slot_pair_convert_global_to_local( void const * global_self, fd_slot_pair_t * self, fd_bincode_decode_ctx_t * ctx );
5981 :
5982 : void fd_hard_forks_new( fd_hard_forks_t * self );
5983 : int fd_hard_forks_encode( fd_hard_forks_t const * self, fd_bincode_encode_ctx_t * ctx );
5984 : void fd_hard_forks_destroy( fd_hard_forks_t * self );
5985 : void fd_hard_forks_walk( void * w, fd_hard_forks_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
5986 : ulong fd_hard_forks_size( fd_hard_forks_t const * self );
5987 : ulong fd_hard_forks_footprint( void );
5988 : ulong fd_hard_forks_align( void );
5989 : int fd_hard_forks_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5990 : int fd_hard_forks_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
5991 : void * fd_hard_forks_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
5992 : void fd_hard_forks_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5993 : void * fd_hard_forks_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
5994 : void fd_hard_forks_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
5995 : int fd_hard_forks_convert_global_to_local( void const * global_self, fd_hard_forks_t * self, fd_bincode_decode_ctx_t * ctx );
5996 :
5997 : void fd_inflation_new( fd_inflation_t * self );
5998 : int fd_inflation_encode( fd_inflation_t const * self, fd_bincode_encode_ctx_t * ctx );
5999 : void fd_inflation_destroy( fd_inflation_t * self );
6000 : void fd_inflation_walk( void * w, fd_inflation_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6001 : ulong fd_inflation_size( fd_inflation_t const * self );
6002 : ulong fd_inflation_footprint( void );
6003 : ulong fd_inflation_align( void );
6004 : int fd_inflation_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6005 : int fd_inflation_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6006 : void * fd_inflation_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6007 : void fd_inflation_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6008 : void * fd_inflation_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6009 : void fd_inflation_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6010 : int fd_inflation_convert_global_to_local( void const * global_self, fd_inflation_t * self, fd_bincode_decode_ctx_t * ctx );
6011 :
6012 : void fd_rent_new( fd_rent_t * self );
6013 : int fd_rent_encode( fd_rent_t const * self, fd_bincode_encode_ctx_t * ctx );
6014 : void fd_rent_destroy( fd_rent_t * self );
6015 : void fd_rent_walk( void * w, fd_rent_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6016 : ulong fd_rent_size( fd_rent_t const * self );
6017 : ulong fd_rent_footprint( void );
6018 : ulong fd_rent_align( void );
6019 : int fd_rent_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6020 : int fd_rent_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6021 : void * fd_rent_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6022 : void fd_rent_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6023 : void * fd_rent_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6024 : void fd_rent_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6025 : int fd_rent_convert_global_to_local( void const * global_self, fd_rent_t * self, fd_bincode_decode_ctx_t * ctx );
6026 :
6027 : void fd_epoch_schedule_new( fd_epoch_schedule_t * self );
6028 : int fd_epoch_schedule_encode( fd_epoch_schedule_t const * self, fd_bincode_encode_ctx_t * ctx );
6029 : void fd_epoch_schedule_destroy( fd_epoch_schedule_t * self );
6030 : void fd_epoch_schedule_walk( void * w, fd_epoch_schedule_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6031 : ulong fd_epoch_schedule_size( fd_epoch_schedule_t const * self );
6032 : ulong fd_epoch_schedule_footprint( void );
6033 : ulong fd_epoch_schedule_align( void );
6034 : int fd_epoch_schedule_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6035 : int fd_epoch_schedule_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6036 : void * fd_epoch_schedule_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6037 : void fd_epoch_schedule_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6038 : void * fd_epoch_schedule_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6039 : void fd_epoch_schedule_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6040 : int fd_epoch_schedule_convert_global_to_local( void const * global_self, fd_epoch_schedule_t * self, fd_bincode_decode_ctx_t * ctx );
6041 :
6042 : void fd_rent_collector_new( fd_rent_collector_t * self );
6043 : int fd_rent_collector_encode( fd_rent_collector_t const * self, fd_bincode_encode_ctx_t * ctx );
6044 : void fd_rent_collector_destroy( fd_rent_collector_t * self );
6045 : void fd_rent_collector_walk( void * w, fd_rent_collector_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6046 : ulong fd_rent_collector_size( fd_rent_collector_t const * self );
6047 : ulong fd_rent_collector_footprint( void );
6048 : ulong fd_rent_collector_align( void );
6049 : int fd_rent_collector_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6050 : int fd_rent_collector_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6051 : void * fd_rent_collector_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6052 : void fd_rent_collector_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6053 : void * fd_rent_collector_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6054 : void fd_rent_collector_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6055 : int fd_rent_collector_convert_global_to_local( void const * global_self, fd_rent_collector_t * self, fd_bincode_decode_ctx_t * ctx );
6056 :
6057 : void fd_stake_history_entry_new( fd_stake_history_entry_t * self );
6058 : int fd_stake_history_entry_encode( fd_stake_history_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
6059 : void fd_stake_history_entry_destroy( fd_stake_history_entry_t * self );
6060 : 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 );
6061 : ulong fd_stake_history_entry_size( fd_stake_history_entry_t const * self );
6062 : ulong fd_stake_history_entry_footprint( void );
6063 : ulong fd_stake_history_entry_align( void );
6064 : int fd_stake_history_entry_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6065 : int fd_stake_history_entry_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6066 : void * fd_stake_history_entry_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6067 : void fd_stake_history_entry_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6068 : void * fd_stake_history_entry_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6069 : void fd_stake_history_entry_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6070 : int fd_stake_history_entry_convert_global_to_local( void const * global_self, fd_stake_history_entry_t * self, fd_bincode_decode_ctx_t * ctx );
6071 :
6072 : void fd_stake_history_new( fd_stake_history_t * self );
6073 : int fd_stake_history_encode( fd_stake_history_t const * self, fd_bincode_encode_ctx_t * ctx );
6074 : void fd_stake_history_destroy( fd_stake_history_t * self );
6075 : void fd_stake_history_walk( void * w, fd_stake_history_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6076 : ulong fd_stake_history_size( fd_stake_history_t const * self );
6077 : ulong fd_stake_history_footprint( void );
6078 : ulong fd_stake_history_align( void );
6079 : int fd_stake_history_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6080 : int fd_stake_history_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6081 : void * fd_stake_history_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6082 : void fd_stake_history_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6083 : void * fd_stake_history_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6084 : void fd_stake_history_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6085 : int fd_stake_history_convert_global_to_local( void const * global_self, fd_stake_history_t * self, fd_bincode_decode_ctx_t * ctx );
6086 :
6087 : void fd_solana_account_new( fd_solana_account_t * self );
6088 : int fd_solana_account_encode( fd_solana_account_t const * self, fd_bincode_encode_ctx_t * ctx );
6089 : void fd_solana_account_destroy( fd_solana_account_t * self );
6090 : void fd_solana_account_walk( void * w, fd_solana_account_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6091 : ulong fd_solana_account_size( fd_solana_account_t const * self );
6092 : ulong fd_solana_account_footprint( void );
6093 : ulong fd_solana_account_align( void );
6094 : int fd_solana_account_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6095 : int fd_solana_account_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6096 : void * fd_solana_account_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6097 : void fd_solana_account_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6098 : void * fd_solana_account_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6099 : void fd_solana_account_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6100 : int fd_solana_account_convert_global_to_local( void const * global_self, fd_solana_account_t * self, fd_bincode_decode_ctx_t * ctx );
6101 :
6102 : void fd_vote_accounts_pair_new( fd_vote_accounts_pair_t * self );
6103 : int fd_vote_accounts_pair_encode( fd_vote_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6104 : void fd_vote_accounts_pair_destroy( fd_vote_accounts_pair_t * self );
6105 : 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 );
6106 : ulong fd_vote_accounts_pair_size( fd_vote_accounts_pair_t const * self );
6107 : ulong fd_vote_accounts_pair_footprint( void );
6108 : ulong fd_vote_accounts_pair_align( void );
6109 : int fd_vote_accounts_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6110 : int fd_vote_accounts_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6111 : void * fd_vote_accounts_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6112 : void fd_vote_accounts_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6113 : void * fd_vote_accounts_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6114 : void fd_vote_accounts_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6115 : int fd_vote_accounts_pair_convert_global_to_local( void const * global_self, fd_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6116 :
6117 : void fd_vote_accounts_new( fd_vote_accounts_t * self );
6118 : int fd_vote_accounts_encode( fd_vote_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
6119 : void fd_vote_accounts_destroy( fd_vote_accounts_t * self );
6120 : void fd_vote_accounts_walk( void * w, fd_vote_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6121 : ulong fd_vote_accounts_size( fd_vote_accounts_t const * self );
6122 : ulong fd_vote_accounts_footprint( void );
6123 : ulong fd_vote_accounts_align( void );
6124 : int fd_vote_accounts_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6125 : int fd_vote_accounts_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6126 : void * fd_vote_accounts_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6127 : void fd_vote_accounts_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6128 : void * fd_vote_accounts_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6129 : void fd_vote_accounts_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6130 : int fd_vote_accounts_convert_global_to_local( void const * global_self, fd_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
6131 :
6132 : void fd_account_keys_pair_new( fd_account_keys_pair_t * self );
6133 : int fd_account_keys_pair_encode( fd_account_keys_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6134 : void fd_account_keys_pair_destroy( fd_account_keys_pair_t * self );
6135 : void fd_account_keys_pair_walk( void * w, fd_account_keys_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6136 : ulong fd_account_keys_pair_size( fd_account_keys_pair_t const * self );
6137 : ulong fd_account_keys_pair_footprint( void );
6138 : ulong fd_account_keys_pair_align( void );
6139 : int fd_account_keys_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6140 : int fd_account_keys_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6141 : void * fd_account_keys_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6142 : void fd_account_keys_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6143 : void * fd_account_keys_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6144 : void fd_account_keys_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6145 : int fd_account_keys_pair_convert_global_to_local( void const * global_self, fd_account_keys_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6146 :
6147 : void fd_account_keys_new( fd_account_keys_t * self );
6148 : int fd_account_keys_encode( fd_account_keys_t const * self, fd_bincode_encode_ctx_t * ctx );
6149 : void fd_account_keys_destroy( fd_account_keys_t * self );
6150 : void fd_account_keys_walk( void * w, fd_account_keys_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6151 : ulong fd_account_keys_size( fd_account_keys_t const * self );
6152 : ulong fd_account_keys_footprint( void );
6153 : ulong fd_account_keys_align( void );
6154 : int fd_account_keys_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6155 : int fd_account_keys_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6156 : void * fd_account_keys_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6157 : void fd_account_keys_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6158 : void * fd_account_keys_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6159 : void fd_account_keys_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6160 : int fd_account_keys_convert_global_to_local( void const * global_self, fd_account_keys_t * self, fd_bincode_decode_ctx_t * ctx );
6161 :
6162 : void fd_stake_weight_new( fd_stake_weight_t * self );
6163 : int fd_stake_weight_encode( fd_stake_weight_t const * self, fd_bincode_encode_ctx_t * ctx );
6164 : void fd_stake_weight_destroy( fd_stake_weight_t * self );
6165 : void fd_stake_weight_walk( void * w, fd_stake_weight_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6166 : ulong fd_stake_weight_size( fd_stake_weight_t const * self );
6167 : ulong fd_stake_weight_footprint( void );
6168 : ulong fd_stake_weight_align( void );
6169 : int fd_stake_weight_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6170 : int fd_stake_weight_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6171 : void * fd_stake_weight_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6172 : void fd_stake_weight_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6173 : void * fd_stake_weight_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6174 : void fd_stake_weight_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6175 : int fd_stake_weight_convert_global_to_local( void const * global_self, fd_stake_weight_t * self, fd_bincode_decode_ctx_t * ctx );
6176 :
6177 : void fd_stake_weights_new( fd_stake_weights_t * self );
6178 : int fd_stake_weights_encode( fd_stake_weights_t const * self, fd_bincode_encode_ctx_t * ctx );
6179 : void fd_stake_weights_destroy( fd_stake_weights_t * self );
6180 : void fd_stake_weights_walk( void * w, fd_stake_weights_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6181 : ulong fd_stake_weights_size( fd_stake_weights_t const * self );
6182 : ulong fd_stake_weights_footprint( void );
6183 : ulong fd_stake_weights_align( void );
6184 : int fd_stake_weights_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6185 : int fd_stake_weights_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6186 : void * fd_stake_weights_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6187 : void fd_stake_weights_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6188 : void * fd_stake_weights_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6189 : void fd_stake_weights_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6190 : int fd_stake_weights_convert_global_to_local( void const * global_self, fd_stake_weights_t * self, fd_bincode_decode_ctx_t * ctx );
6191 :
6192 : void fd_delegation_new( fd_delegation_t * self );
6193 : int fd_delegation_encode( fd_delegation_t const * self, fd_bincode_encode_ctx_t * ctx );
6194 : void fd_delegation_destroy( fd_delegation_t * self );
6195 : void fd_delegation_walk( void * w, fd_delegation_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6196 : ulong fd_delegation_size( fd_delegation_t const * self );
6197 : ulong fd_delegation_footprint( void );
6198 : ulong fd_delegation_align( void );
6199 : int fd_delegation_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6200 : int fd_delegation_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6201 : void * fd_delegation_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6202 : void fd_delegation_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6203 : void * fd_delegation_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6204 : void fd_delegation_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6205 : int fd_delegation_convert_global_to_local( void const * global_self, fd_delegation_t * self, fd_bincode_decode_ctx_t * ctx );
6206 :
6207 : void fd_delegation_pair_new( fd_delegation_pair_t * self );
6208 : int fd_delegation_pair_encode( fd_delegation_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6209 : void fd_delegation_pair_destroy( fd_delegation_pair_t * self );
6210 : void fd_delegation_pair_walk( void * w, fd_delegation_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6211 : ulong fd_delegation_pair_size( fd_delegation_pair_t const * self );
6212 : ulong fd_delegation_pair_footprint( void );
6213 : ulong fd_delegation_pair_align( void );
6214 : int fd_delegation_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6215 : int fd_delegation_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6216 : void * fd_delegation_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6217 : void fd_delegation_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6218 : void * fd_delegation_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6219 : void fd_delegation_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6220 : int fd_delegation_pair_convert_global_to_local( void const * global_self, fd_delegation_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6221 :
6222 : void fd_stake_new( fd_stake_t * self );
6223 : int fd_stake_encode( fd_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
6224 : void fd_stake_destroy( fd_stake_t * self );
6225 : void fd_stake_walk( void * w, fd_stake_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6226 : ulong fd_stake_size( fd_stake_t const * self );
6227 : ulong fd_stake_footprint( void );
6228 : ulong fd_stake_align( void );
6229 : int fd_stake_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6230 : int fd_stake_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6231 : void * fd_stake_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6232 : void fd_stake_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6233 : void * fd_stake_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6234 : void fd_stake_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6235 : int fd_stake_convert_global_to_local( void const * global_self, fd_stake_t * self, fd_bincode_decode_ctx_t * ctx );
6236 :
6237 : void fd_stake_pair_new( fd_stake_pair_t * self );
6238 : int fd_stake_pair_encode( fd_stake_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6239 : void fd_stake_pair_destroy( fd_stake_pair_t * self );
6240 : void fd_stake_pair_walk( void * w, fd_stake_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6241 : ulong fd_stake_pair_size( fd_stake_pair_t const * self );
6242 : ulong fd_stake_pair_footprint( void );
6243 : ulong fd_stake_pair_align( void );
6244 : int fd_stake_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6245 : int fd_stake_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6246 : void * fd_stake_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6247 : void fd_stake_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6248 : void * fd_stake_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6249 : void fd_stake_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6250 : int fd_stake_pair_convert_global_to_local( void const * global_self, fd_stake_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6251 :
6252 : void fd_stakes_new( fd_stakes_t * self );
6253 : int fd_stakes_encode( fd_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
6254 : void fd_stakes_destroy( fd_stakes_t * self );
6255 : void fd_stakes_walk( void * w, fd_stakes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6256 : ulong fd_stakes_size( fd_stakes_t const * self );
6257 : ulong fd_stakes_footprint( void );
6258 : ulong fd_stakes_align( void );
6259 : int fd_stakes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6260 : int fd_stakes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6261 : void * fd_stakes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6262 : void fd_stakes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6263 : void * fd_stakes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6264 : void fd_stakes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6265 : int fd_stakes_convert_global_to_local( void const * global_self, fd_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
6266 :
6267 : void fd_stakes_stake_new( fd_stakes_stake_t * self );
6268 : int fd_stakes_stake_encode( fd_stakes_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
6269 : void fd_stakes_stake_destroy( fd_stakes_stake_t * self );
6270 : void fd_stakes_stake_walk( void * w, fd_stakes_stake_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6271 : ulong fd_stakes_stake_size( fd_stakes_stake_t const * self );
6272 : ulong fd_stakes_stake_footprint( void );
6273 : ulong fd_stakes_stake_align( void );
6274 : int fd_stakes_stake_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6275 : int fd_stakes_stake_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6276 : void * fd_stakes_stake_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6277 : void fd_stakes_stake_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6278 : void * fd_stakes_stake_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6279 : void fd_stakes_stake_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6280 : int fd_stakes_stake_convert_global_to_local( void const * global_self, fd_stakes_stake_t * self, fd_bincode_decode_ctx_t * ctx );
6281 :
6282 : void fd_bank_incremental_snapshot_persistence_new( fd_bank_incremental_snapshot_persistence_t * self );
6283 : int fd_bank_incremental_snapshot_persistence_encode( fd_bank_incremental_snapshot_persistence_t const * self, fd_bincode_encode_ctx_t * ctx );
6284 : void fd_bank_incremental_snapshot_persistence_destroy( fd_bank_incremental_snapshot_persistence_t * self );
6285 : 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 );
6286 : ulong fd_bank_incremental_snapshot_persistence_size( fd_bank_incremental_snapshot_persistence_t const * self );
6287 : ulong fd_bank_incremental_snapshot_persistence_footprint( void );
6288 : ulong fd_bank_incremental_snapshot_persistence_align( void );
6289 : int fd_bank_incremental_snapshot_persistence_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6290 : int fd_bank_incremental_snapshot_persistence_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6291 : void * fd_bank_incremental_snapshot_persistence_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6292 : void fd_bank_incremental_snapshot_persistence_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6293 : void * fd_bank_incremental_snapshot_persistence_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6294 : void fd_bank_incremental_snapshot_persistence_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6295 : int fd_bank_incremental_snapshot_persistence_convert_global_to_local( void const * global_self, fd_bank_incremental_snapshot_persistence_t * self, fd_bincode_decode_ctx_t * ctx );
6296 :
6297 : void fd_node_vote_accounts_new( fd_node_vote_accounts_t * self );
6298 : int fd_node_vote_accounts_encode( fd_node_vote_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
6299 : void fd_node_vote_accounts_destroy( fd_node_vote_accounts_t * self );
6300 : 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 );
6301 : ulong fd_node_vote_accounts_size( fd_node_vote_accounts_t const * self );
6302 : ulong fd_node_vote_accounts_footprint( void );
6303 : ulong fd_node_vote_accounts_align( void );
6304 : int fd_node_vote_accounts_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6305 : int fd_node_vote_accounts_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6306 : void * fd_node_vote_accounts_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6307 : void fd_node_vote_accounts_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6308 : void * fd_node_vote_accounts_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6309 : void fd_node_vote_accounts_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6310 : int fd_node_vote_accounts_convert_global_to_local( void const * global_self, fd_node_vote_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
6311 :
6312 : void fd_pubkey_node_vote_accounts_pair_new( fd_pubkey_node_vote_accounts_pair_t * self );
6313 : int fd_pubkey_node_vote_accounts_pair_encode( fd_pubkey_node_vote_accounts_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6314 : void fd_pubkey_node_vote_accounts_pair_destroy( fd_pubkey_node_vote_accounts_pair_t * self );
6315 : 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 );
6316 : ulong fd_pubkey_node_vote_accounts_pair_size( fd_pubkey_node_vote_accounts_pair_t const * self );
6317 : ulong fd_pubkey_node_vote_accounts_pair_footprint( void );
6318 : ulong fd_pubkey_node_vote_accounts_pair_align( void );
6319 : int fd_pubkey_node_vote_accounts_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6320 : int fd_pubkey_node_vote_accounts_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6321 : void * fd_pubkey_node_vote_accounts_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6322 : void fd_pubkey_node_vote_accounts_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6323 : void * fd_pubkey_node_vote_accounts_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6324 : void fd_pubkey_node_vote_accounts_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6325 : int fd_pubkey_node_vote_accounts_pair_convert_global_to_local( void const * global_self, fd_pubkey_node_vote_accounts_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6326 :
6327 : void fd_pubkey_pubkey_pair_new( fd_pubkey_pubkey_pair_t * self );
6328 : int fd_pubkey_pubkey_pair_encode( fd_pubkey_pubkey_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6329 : void fd_pubkey_pubkey_pair_destroy( fd_pubkey_pubkey_pair_t * self );
6330 : 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 );
6331 : ulong fd_pubkey_pubkey_pair_size( fd_pubkey_pubkey_pair_t const * self );
6332 : ulong fd_pubkey_pubkey_pair_footprint( void );
6333 : ulong fd_pubkey_pubkey_pair_align( void );
6334 : int fd_pubkey_pubkey_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6335 : int fd_pubkey_pubkey_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6336 : void * fd_pubkey_pubkey_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6337 : void fd_pubkey_pubkey_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6338 : void * fd_pubkey_pubkey_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6339 : void fd_pubkey_pubkey_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6340 : int fd_pubkey_pubkey_pair_convert_global_to_local( void const * global_self, fd_pubkey_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6341 :
6342 : void fd_epoch_stakes_new( fd_epoch_stakes_t * self );
6343 : int fd_epoch_stakes_encode( fd_epoch_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
6344 : void fd_epoch_stakes_destroy( fd_epoch_stakes_t * self );
6345 : void fd_epoch_stakes_walk( void * w, fd_epoch_stakes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6346 : ulong fd_epoch_stakes_size( fd_epoch_stakes_t const * self );
6347 : ulong fd_epoch_stakes_footprint( void );
6348 : ulong fd_epoch_stakes_align( void );
6349 : int fd_epoch_stakes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6350 : int fd_epoch_stakes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6351 : void * fd_epoch_stakes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6352 : void fd_epoch_stakes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6353 : void * fd_epoch_stakes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6354 : void fd_epoch_stakes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6355 : int fd_epoch_stakes_convert_global_to_local( void const * global_self, fd_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
6356 :
6357 : void fd_epoch_epoch_stakes_pair_new( fd_epoch_epoch_stakes_pair_t * self );
6358 : int fd_epoch_epoch_stakes_pair_encode( fd_epoch_epoch_stakes_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6359 : void fd_epoch_epoch_stakes_pair_destroy( fd_epoch_epoch_stakes_pair_t * self );
6360 : 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 );
6361 : ulong fd_epoch_epoch_stakes_pair_size( fd_epoch_epoch_stakes_pair_t const * self );
6362 : ulong fd_epoch_epoch_stakes_pair_footprint( void );
6363 : ulong fd_epoch_epoch_stakes_pair_align( void );
6364 : int fd_epoch_epoch_stakes_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6365 : int fd_epoch_epoch_stakes_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6366 : void * fd_epoch_epoch_stakes_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6367 : void fd_epoch_epoch_stakes_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6368 : void * fd_epoch_epoch_stakes_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6369 : void fd_epoch_epoch_stakes_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6370 : int fd_epoch_epoch_stakes_pair_convert_global_to_local( void const * global_self, fd_epoch_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6371 :
6372 : void fd_pubkey_u64_pair_new( fd_pubkey_u64_pair_t * self );
6373 : int fd_pubkey_u64_pair_encode( fd_pubkey_u64_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6374 : void fd_pubkey_u64_pair_destroy( fd_pubkey_u64_pair_t * self );
6375 : 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 );
6376 : ulong fd_pubkey_u64_pair_size( fd_pubkey_u64_pair_t const * self );
6377 : ulong fd_pubkey_u64_pair_footprint( void );
6378 : ulong fd_pubkey_u64_pair_align( void );
6379 : int fd_pubkey_u64_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6380 : int fd_pubkey_u64_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6381 : void * fd_pubkey_u64_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6382 : void fd_pubkey_u64_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6383 : void * fd_pubkey_u64_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6384 : void fd_pubkey_u64_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6385 : int fd_pubkey_u64_pair_convert_global_to_local( void const * global_self, fd_pubkey_u64_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6386 :
6387 : void fd_unused_accounts_new( fd_unused_accounts_t * self );
6388 : int fd_unused_accounts_encode( fd_unused_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
6389 : void fd_unused_accounts_destroy( fd_unused_accounts_t * self );
6390 : void fd_unused_accounts_walk( void * w, fd_unused_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6391 : ulong fd_unused_accounts_size( fd_unused_accounts_t const * self );
6392 : ulong fd_unused_accounts_footprint( void );
6393 : ulong fd_unused_accounts_align( void );
6394 : int fd_unused_accounts_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6395 : int fd_unused_accounts_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6396 : void * fd_unused_accounts_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6397 : void fd_unused_accounts_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6398 : void * fd_unused_accounts_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6399 : void fd_unused_accounts_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6400 : int fd_unused_accounts_convert_global_to_local( void const * global_self, fd_unused_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
6401 :
6402 : void fd_versioned_bank_new( fd_versioned_bank_t * self );
6403 : int fd_versioned_bank_encode( fd_versioned_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
6404 : void fd_versioned_bank_destroy( fd_versioned_bank_t * self );
6405 : void fd_versioned_bank_walk( void * w, fd_versioned_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6406 : ulong fd_versioned_bank_size( fd_versioned_bank_t const * self );
6407 : ulong fd_versioned_bank_footprint( void );
6408 : ulong fd_versioned_bank_align( void );
6409 : int fd_versioned_bank_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6410 : int fd_versioned_bank_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6411 : void * fd_versioned_bank_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6412 : void fd_versioned_bank_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6413 : void * fd_versioned_bank_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6414 : void fd_versioned_bank_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6415 : int fd_versioned_bank_convert_global_to_local( void const * global_self, fd_versioned_bank_t * self, fd_bincode_decode_ctx_t * ctx );
6416 :
6417 : void fd_bank_hash_stats_new( fd_bank_hash_stats_t * self );
6418 : int fd_bank_hash_stats_encode( fd_bank_hash_stats_t const * self, fd_bincode_encode_ctx_t * ctx );
6419 : void fd_bank_hash_stats_destroy( fd_bank_hash_stats_t * self );
6420 : 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 );
6421 : ulong fd_bank_hash_stats_size( fd_bank_hash_stats_t const * self );
6422 : ulong fd_bank_hash_stats_footprint( void );
6423 : ulong fd_bank_hash_stats_align( void );
6424 : int fd_bank_hash_stats_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6425 : int fd_bank_hash_stats_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6426 : void * fd_bank_hash_stats_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6427 : void fd_bank_hash_stats_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6428 : void * fd_bank_hash_stats_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6429 : void fd_bank_hash_stats_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6430 : int fd_bank_hash_stats_convert_global_to_local( void const * global_self, fd_bank_hash_stats_t * self, fd_bincode_decode_ctx_t * ctx );
6431 :
6432 : void fd_bank_hash_info_new( fd_bank_hash_info_t * self );
6433 : int fd_bank_hash_info_encode( fd_bank_hash_info_t const * self, fd_bincode_encode_ctx_t * ctx );
6434 : void fd_bank_hash_info_destroy( fd_bank_hash_info_t * self );
6435 : 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 );
6436 : ulong fd_bank_hash_info_size( fd_bank_hash_info_t const * self );
6437 : ulong fd_bank_hash_info_footprint( void );
6438 : ulong fd_bank_hash_info_align( void );
6439 : int fd_bank_hash_info_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6440 : int fd_bank_hash_info_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6441 : void * fd_bank_hash_info_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6442 : void fd_bank_hash_info_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6443 : void * fd_bank_hash_info_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6444 : void fd_bank_hash_info_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6445 : int fd_bank_hash_info_convert_global_to_local( void const * global_self, fd_bank_hash_info_t * self, fd_bincode_decode_ctx_t * ctx );
6446 :
6447 : void fd_slot_map_pair_new( fd_slot_map_pair_t * self );
6448 : int fd_slot_map_pair_encode( fd_slot_map_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6449 : void fd_slot_map_pair_destroy( fd_slot_map_pair_t * self );
6450 : 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 );
6451 : ulong fd_slot_map_pair_size( fd_slot_map_pair_t const * self );
6452 : ulong fd_slot_map_pair_footprint( void );
6453 : ulong fd_slot_map_pair_align( void );
6454 : int fd_slot_map_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6455 : int fd_slot_map_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6456 : void * fd_slot_map_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6457 : void fd_slot_map_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6458 : void * fd_slot_map_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6459 : void fd_slot_map_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6460 : int fd_slot_map_pair_convert_global_to_local( void const * global_self, fd_slot_map_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6461 :
6462 : void fd_snapshot_acc_vec_new( fd_snapshot_acc_vec_t * self );
6463 : int fd_snapshot_acc_vec_encode( fd_snapshot_acc_vec_t const * self, fd_bincode_encode_ctx_t * ctx );
6464 : void fd_snapshot_acc_vec_destroy( fd_snapshot_acc_vec_t * self );
6465 : 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 );
6466 : ulong fd_snapshot_acc_vec_size( fd_snapshot_acc_vec_t const * self );
6467 : ulong fd_snapshot_acc_vec_footprint( void );
6468 : ulong fd_snapshot_acc_vec_align( void );
6469 : int fd_snapshot_acc_vec_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6470 : int fd_snapshot_acc_vec_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6471 : void * fd_snapshot_acc_vec_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6472 : void fd_snapshot_acc_vec_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6473 : void * fd_snapshot_acc_vec_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6474 : void fd_snapshot_acc_vec_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6475 : int fd_snapshot_acc_vec_convert_global_to_local( void const * global_self, fd_snapshot_acc_vec_t * self, fd_bincode_decode_ctx_t * ctx );
6476 :
6477 : void fd_snapshot_slot_acc_vecs_new( fd_snapshot_slot_acc_vecs_t * self );
6478 : int fd_snapshot_slot_acc_vecs_encode( fd_snapshot_slot_acc_vecs_t const * self, fd_bincode_encode_ctx_t * ctx );
6479 : void fd_snapshot_slot_acc_vecs_destroy( fd_snapshot_slot_acc_vecs_t * self );
6480 : 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 );
6481 : ulong fd_snapshot_slot_acc_vecs_size( fd_snapshot_slot_acc_vecs_t const * self );
6482 : ulong fd_snapshot_slot_acc_vecs_footprint( void );
6483 : ulong fd_snapshot_slot_acc_vecs_align( void );
6484 : int fd_snapshot_slot_acc_vecs_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6485 : int fd_snapshot_slot_acc_vecs_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6486 : void * fd_snapshot_slot_acc_vecs_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6487 : void fd_snapshot_slot_acc_vecs_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6488 : void * fd_snapshot_slot_acc_vecs_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6489 : void fd_snapshot_slot_acc_vecs_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6490 : int fd_snapshot_slot_acc_vecs_convert_global_to_local( void const * global_self, fd_snapshot_slot_acc_vecs_t * self, fd_bincode_decode_ctx_t * ctx );
6491 :
6492 : void fd_reward_type_new_disc( fd_reward_type_t * self, uint discriminant );
6493 : void fd_reward_type_new( fd_reward_type_t * self );
6494 : int fd_reward_type_encode( fd_reward_type_t const * self, fd_bincode_encode_ctx_t * ctx );
6495 : void fd_reward_type_destroy( fd_reward_type_t * self );
6496 : void fd_reward_type_walk( void * w, fd_reward_type_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6497 : ulong fd_reward_type_size( fd_reward_type_t const * self );
6498 : ulong fd_reward_type_footprint( void );
6499 : ulong fd_reward_type_align( void );
6500 : int fd_reward_type_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6501 : int fd_reward_type_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6502 : void * fd_reward_type_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6503 : void fd_reward_type_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6504 : void * fd_reward_type_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6505 : void fd_reward_type_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6506 : int fd_reward_type_convert_global_to_local( void const * global_self, fd_reward_type_t * self, fd_bincode_decode_ctx_t * ctx );
6507 :
6508 : FD_FN_PURE uchar fd_reward_type_is_fee( fd_reward_type_t const * self );
6509 : FD_FN_PURE uchar fd_reward_type_is_rent( fd_reward_type_t const * self );
6510 : FD_FN_PURE uchar fd_reward_type_is_staking( fd_reward_type_t const * self );
6511 : FD_FN_PURE uchar fd_reward_type_is_voting( fd_reward_type_t const * self );
6512 : enum {
6513 : fd_reward_type_enum_fee = 0,
6514 : fd_reward_type_enum_rent = 1,
6515 : fd_reward_type_enum_staking = 2,
6516 : fd_reward_type_enum_voting = 3,
6517 : };
6518 : void fd_solana_accounts_db_fields_new( fd_solana_accounts_db_fields_t * self );
6519 : int fd_solana_accounts_db_fields_encode( fd_solana_accounts_db_fields_t const * self, fd_bincode_encode_ctx_t * ctx );
6520 : void fd_solana_accounts_db_fields_destroy( fd_solana_accounts_db_fields_t * self );
6521 : 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 );
6522 : ulong fd_solana_accounts_db_fields_size( fd_solana_accounts_db_fields_t const * self );
6523 : ulong fd_solana_accounts_db_fields_footprint( void );
6524 : ulong fd_solana_accounts_db_fields_align( void );
6525 : int fd_solana_accounts_db_fields_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6526 : int fd_solana_accounts_db_fields_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6527 : void * fd_solana_accounts_db_fields_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6528 : void fd_solana_accounts_db_fields_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6529 : void * fd_solana_accounts_db_fields_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6530 : void fd_solana_accounts_db_fields_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6531 : int fd_solana_accounts_db_fields_convert_global_to_local( void const * global_self, fd_solana_accounts_db_fields_t * self, fd_bincode_decode_ctx_t * ctx );
6532 :
6533 : void fd_versioned_epoch_stakes_current_new( fd_versioned_epoch_stakes_current_t * self );
6534 : int fd_versioned_epoch_stakes_current_encode( fd_versioned_epoch_stakes_current_t const * self, fd_bincode_encode_ctx_t * ctx );
6535 : void fd_versioned_epoch_stakes_current_destroy( fd_versioned_epoch_stakes_current_t * self );
6536 : void fd_versioned_epoch_stakes_current_walk( void * w, fd_versioned_epoch_stakes_current_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6537 : ulong fd_versioned_epoch_stakes_current_size( fd_versioned_epoch_stakes_current_t const * self );
6538 : ulong fd_versioned_epoch_stakes_current_footprint( void );
6539 : ulong fd_versioned_epoch_stakes_current_align( void );
6540 : int fd_versioned_epoch_stakes_current_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6541 : int fd_versioned_epoch_stakes_current_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6542 : void * fd_versioned_epoch_stakes_current_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6543 : void fd_versioned_epoch_stakes_current_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6544 : void * fd_versioned_epoch_stakes_current_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6545 : void fd_versioned_epoch_stakes_current_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6546 : int fd_versioned_epoch_stakes_current_convert_global_to_local( void const * global_self, fd_versioned_epoch_stakes_current_t * self, fd_bincode_decode_ctx_t * ctx );
6547 :
6548 : void fd_versioned_epoch_stakes_new_disc( fd_versioned_epoch_stakes_t * self, uint discriminant );
6549 : void fd_versioned_epoch_stakes_new( fd_versioned_epoch_stakes_t * self );
6550 : int fd_versioned_epoch_stakes_encode( fd_versioned_epoch_stakes_t const * self, fd_bincode_encode_ctx_t * ctx );
6551 : void fd_versioned_epoch_stakes_destroy( fd_versioned_epoch_stakes_t * self );
6552 : 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 );
6553 : ulong fd_versioned_epoch_stakes_size( fd_versioned_epoch_stakes_t const * self );
6554 : ulong fd_versioned_epoch_stakes_footprint( void );
6555 : ulong fd_versioned_epoch_stakes_align( void );
6556 : int fd_versioned_epoch_stakes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6557 : int fd_versioned_epoch_stakes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6558 : void * fd_versioned_epoch_stakes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6559 : void fd_versioned_epoch_stakes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6560 : void * fd_versioned_epoch_stakes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6561 : void fd_versioned_epoch_stakes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6562 : int fd_versioned_epoch_stakes_convert_global_to_local( void const * global_self, fd_versioned_epoch_stakes_t * self, fd_bincode_decode_ctx_t * ctx );
6563 :
6564 : FD_FN_PURE uchar fd_versioned_epoch_stakes_is_Current( fd_versioned_epoch_stakes_t const * self );
6565 : enum {
6566 : fd_versioned_epoch_stakes_enum_Current = 0,
6567 : };
6568 : void fd_versioned_epoch_stakes_pair_new( fd_versioned_epoch_stakes_pair_t * self );
6569 : int fd_versioned_epoch_stakes_pair_encode( fd_versioned_epoch_stakes_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6570 : void fd_versioned_epoch_stakes_pair_destroy( fd_versioned_epoch_stakes_pair_t * self );
6571 : 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 );
6572 : ulong fd_versioned_epoch_stakes_pair_size( fd_versioned_epoch_stakes_pair_t const * self );
6573 : ulong fd_versioned_epoch_stakes_pair_footprint( void );
6574 : ulong fd_versioned_epoch_stakes_pair_align( void );
6575 : int fd_versioned_epoch_stakes_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6576 : int fd_versioned_epoch_stakes_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6577 : void * fd_versioned_epoch_stakes_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6578 : void fd_versioned_epoch_stakes_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6579 : void * fd_versioned_epoch_stakes_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6580 : void fd_versioned_epoch_stakes_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6581 : int fd_versioned_epoch_stakes_pair_convert_global_to_local( void const * global_self, fd_versioned_epoch_stakes_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6582 :
6583 : void fd_reward_info_new( fd_reward_info_t * self );
6584 : int fd_reward_info_encode( fd_reward_info_t const * self, fd_bincode_encode_ctx_t * ctx );
6585 : void fd_reward_info_destroy( fd_reward_info_t * self );
6586 : void fd_reward_info_walk( void * w, fd_reward_info_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6587 : ulong fd_reward_info_size( fd_reward_info_t const * self );
6588 : ulong fd_reward_info_footprint( void );
6589 : ulong fd_reward_info_align( void );
6590 : int fd_reward_info_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6591 : int fd_reward_info_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6592 : void * fd_reward_info_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6593 : void fd_reward_info_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6594 : void * fd_reward_info_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6595 : void fd_reward_info_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6596 : int fd_reward_info_convert_global_to_local( void const * global_self, fd_reward_info_t * self, fd_bincode_decode_ctx_t * ctx );
6597 :
6598 : void fd_slot_lthash_new( fd_slot_lthash_t * self );
6599 : int fd_slot_lthash_encode( fd_slot_lthash_t const * self, fd_bincode_encode_ctx_t * ctx );
6600 : void fd_slot_lthash_destroy( fd_slot_lthash_t * self );
6601 : void fd_slot_lthash_walk( void * w, fd_slot_lthash_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6602 : ulong fd_slot_lthash_size( fd_slot_lthash_t const * self );
6603 : ulong fd_slot_lthash_footprint( void );
6604 : ulong fd_slot_lthash_align( void );
6605 : int fd_slot_lthash_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6606 : int fd_slot_lthash_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6607 : void * fd_slot_lthash_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6608 : void fd_slot_lthash_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6609 : void * fd_slot_lthash_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6610 : void fd_slot_lthash_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6611 : int fd_slot_lthash_convert_global_to_local( void const * global_self, fd_slot_lthash_t * self, fd_bincode_decode_ctx_t * ctx );
6612 :
6613 : void fd_solana_manifest_new( fd_solana_manifest_t * self );
6614 : int fd_solana_manifest_encode( fd_solana_manifest_t const * self, fd_bincode_encode_ctx_t * ctx );
6615 : void fd_solana_manifest_destroy( fd_solana_manifest_t * self );
6616 : void fd_solana_manifest_walk( void * w, fd_solana_manifest_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6617 : ulong fd_solana_manifest_size( fd_solana_manifest_t const * self );
6618 : ulong fd_solana_manifest_footprint( void );
6619 : ulong fd_solana_manifest_align( void );
6620 : int fd_solana_manifest_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6621 : int fd_solana_manifest_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6622 : void * fd_solana_manifest_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6623 : void fd_solana_manifest_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6624 : void * fd_solana_manifest_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6625 : void fd_solana_manifest_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6626 : int fd_solana_manifest_convert_global_to_local( void const * global_self, fd_solana_manifest_t * self, fd_bincode_decode_ctx_t * ctx );
6627 :
6628 : void fd_rust_duration_new( fd_rust_duration_t * self );
6629 : int fd_rust_duration_encode( fd_rust_duration_t const * self, fd_bincode_encode_ctx_t * ctx );
6630 : void fd_rust_duration_destroy( fd_rust_duration_t * self );
6631 : void fd_rust_duration_walk( void * w, fd_rust_duration_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6632 : ulong fd_rust_duration_size( fd_rust_duration_t const * self );
6633 : ulong fd_rust_duration_footprint( void );
6634 : ulong fd_rust_duration_align( void );
6635 : int fd_rust_duration_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6636 : int fd_rust_duration_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6637 : void * fd_rust_duration_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6638 : void fd_rust_duration_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6639 : void * fd_rust_duration_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6640 : void fd_rust_duration_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6641 : int fd_rust_duration_convert_global_to_local( void const * global_self, fd_rust_duration_t * self, fd_bincode_decode_ctx_t * ctx );
6642 :
6643 : void fd_poh_config_new( fd_poh_config_t * self );
6644 : int fd_poh_config_encode( fd_poh_config_t const * self, fd_bincode_encode_ctx_t * ctx );
6645 : void fd_poh_config_destroy( fd_poh_config_t * self );
6646 : void fd_poh_config_walk( void * w, fd_poh_config_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6647 : ulong fd_poh_config_size( fd_poh_config_t const * self );
6648 : ulong fd_poh_config_footprint( void );
6649 : ulong fd_poh_config_align( void );
6650 : int fd_poh_config_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6651 : int fd_poh_config_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6652 : void * fd_poh_config_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6653 : void fd_poh_config_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6654 : void * fd_poh_config_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6655 : void fd_poh_config_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6656 : int fd_poh_config_convert_global_to_local( void const * global_self, fd_poh_config_t * self, fd_bincode_decode_ctx_t * ctx );
6657 :
6658 : void fd_string_pubkey_pair_new( fd_string_pubkey_pair_t * self );
6659 : int fd_string_pubkey_pair_encode( fd_string_pubkey_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6660 : void fd_string_pubkey_pair_destroy( fd_string_pubkey_pair_t * self );
6661 : 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 );
6662 : ulong fd_string_pubkey_pair_size( fd_string_pubkey_pair_t const * self );
6663 : ulong fd_string_pubkey_pair_footprint( void );
6664 : ulong fd_string_pubkey_pair_align( void );
6665 : int fd_string_pubkey_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6666 : int fd_string_pubkey_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6667 : void * fd_string_pubkey_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6668 : void fd_string_pubkey_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6669 : void * fd_string_pubkey_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6670 : void fd_string_pubkey_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6671 : int fd_string_pubkey_pair_convert_global_to_local( void const * global_self, fd_string_pubkey_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6672 :
6673 : void fd_pubkey_account_pair_new( fd_pubkey_account_pair_t * self );
6674 : int fd_pubkey_account_pair_encode( fd_pubkey_account_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
6675 : void fd_pubkey_account_pair_destroy( fd_pubkey_account_pair_t * self );
6676 : 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 );
6677 : ulong fd_pubkey_account_pair_size( fd_pubkey_account_pair_t const * self );
6678 : ulong fd_pubkey_account_pair_footprint( void );
6679 : ulong fd_pubkey_account_pair_align( void );
6680 : int fd_pubkey_account_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6681 : int fd_pubkey_account_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6682 : void * fd_pubkey_account_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6683 : void fd_pubkey_account_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6684 : void * fd_pubkey_account_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6685 : void fd_pubkey_account_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6686 : int fd_pubkey_account_pair_convert_global_to_local( void const * global_self, fd_pubkey_account_pair_t * self, fd_bincode_decode_ctx_t * ctx );
6687 :
6688 : void fd_genesis_solana_new( fd_genesis_solana_t * self );
6689 : int fd_genesis_solana_encode( fd_genesis_solana_t const * self, fd_bincode_encode_ctx_t * ctx );
6690 : void fd_genesis_solana_destroy( fd_genesis_solana_t * self );
6691 : void fd_genesis_solana_walk( void * w, fd_genesis_solana_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6692 : ulong fd_genesis_solana_size( fd_genesis_solana_t const * self );
6693 : ulong fd_genesis_solana_footprint( void );
6694 : ulong fd_genesis_solana_align( void );
6695 : int fd_genesis_solana_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6696 : int fd_genesis_solana_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6697 : void * fd_genesis_solana_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6698 : void fd_genesis_solana_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6699 : void * fd_genesis_solana_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6700 : void fd_genesis_solana_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6701 : int fd_genesis_solana_convert_global_to_local( void const * global_self, fd_genesis_solana_t * self, fd_bincode_decode_ctx_t * ctx );
6702 :
6703 : void fd_sol_sysvar_clock_new( fd_sol_sysvar_clock_t * self );
6704 : int fd_sol_sysvar_clock_encode( fd_sol_sysvar_clock_t const * self, fd_bincode_encode_ctx_t * ctx );
6705 : void fd_sol_sysvar_clock_destroy( fd_sol_sysvar_clock_t * self );
6706 : 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 );
6707 : ulong fd_sol_sysvar_clock_size( fd_sol_sysvar_clock_t const * self );
6708 : ulong fd_sol_sysvar_clock_footprint( void );
6709 : ulong fd_sol_sysvar_clock_align( void );
6710 : int fd_sol_sysvar_clock_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6711 : int fd_sol_sysvar_clock_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6712 : void * fd_sol_sysvar_clock_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6713 : void fd_sol_sysvar_clock_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6714 : void * fd_sol_sysvar_clock_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6715 : void fd_sol_sysvar_clock_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6716 : int fd_sol_sysvar_clock_convert_global_to_local( void const * global_self, fd_sol_sysvar_clock_t * self, fd_bincode_decode_ctx_t * ctx );
6717 :
6718 : void fd_sol_sysvar_last_restart_slot_new( fd_sol_sysvar_last_restart_slot_t * self );
6719 : int fd_sol_sysvar_last_restart_slot_encode( fd_sol_sysvar_last_restart_slot_t const * self, fd_bincode_encode_ctx_t * ctx );
6720 : void fd_sol_sysvar_last_restart_slot_destroy( fd_sol_sysvar_last_restart_slot_t * self );
6721 : 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 );
6722 : ulong fd_sol_sysvar_last_restart_slot_size( fd_sol_sysvar_last_restart_slot_t const * self );
6723 : ulong fd_sol_sysvar_last_restart_slot_footprint( void );
6724 : ulong fd_sol_sysvar_last_restart_slot_align( void );
6725 : int fd_sol_sysvar_last_restart_slot_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6726 : int fd_sol_sysvar_last_restart_slot_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6727 : void * fd_sol_sysvar_last_restart_slot_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6728 : void fd_sol_sysvar_last_restart_slot_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6729 : void * fd_sol_sysvar_last_restart_slot_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6730 : void fd_sol_sysvar_last_restart_slot_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6731 : int fd_sol_sysvar_last_restart_slot_convert_global_to_local( void const * global_self, fd_sol_sysvar_last_restart_slot_t * self, fd_bincode_decode_ctx_t * ctx );
6732 :
6733 : void fd_vote_lockout_new( fd_vote_lockout_t * self );
6734 : int fd_vote_lockout_encode( fd_vote_lockout_t const * self, fd_bincode_encode_ctx_t * ctx );
6735 : void fd_vote_lockout_destroy( fd_vote_lockout_t * self );
6736 : void fd_vote_lockout_walk( void * w, fd_vote_lockout_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6737 : ulong fd_vote_lockout_size( fd_vote_lockout_t const * self );
6738 : ulong fd_vote_lockout_footprint( void );
6739 : ulong fd_vote_lockout_align( void );
6740 : int fd_vote_lockout_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6741 : int fd_vote_lockout_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6742 : void * fd_vote_lockout_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6743 : void fd_vote_lockout_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6744 : void * fd_vote_lockout_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6745 : void fd_vote_lockout_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6746 : int fd_vote_lockout_convert_global_to_local( void const * global_self, fd_vote_lockout_t * self, fd_bincode_decode_ctx_t * ctx );
6747 :
6748 : void fd_lockout_offset_new( fd_lockout_offset_t * self );
6749 : int fd_lockout_offset_encode( fd_lockout_offset_t const * self, fd_bincode_encode_ctx_t * ctx );
6750 : void fd_lockout_offset_destroy( fd_lockout_offset_t * self );
6751 : void fd_lockout_offset_walk( void * w, fd_lockout_offset_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6752 : ulong fd_lockout_offset_size( fd_lockout_offset_t const * self );
6753 : ulong fd_lockout_offset_footprint( void );
6754 : ulong fd_lockout_offset_align( void );
6755 : int fd_lockout_offset_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6756 : int fd_lockout_offset_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6757 : void * fd_lockout_offset_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6758 : void fd_lockout_offset_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6759 : void * fd_lockout_offset_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6760 : void fd_lockout_offset_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6761 : int fd_lockout_offset_convert_global_to_local( void const * global_self, fd_lockout_offset_t * self, fd_bincode_decode_ctx_t * ctx );
6762 :
6763 : void fd_vote_authorized_voter_new( fd_vote_authorized_voter_t * self );
6764 : int fd_vote_authorized_voter_encode( fd_vote_authorized_voter_t const * self, fd_bincode_encode_ctx_t * ctx );
6765 : void fd_vote_authorized_voter_destroy( fd_vote_authorized_voter_t * self );
6766 : 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 );
6767 : ulong fd_vote_authorized_voter_size( fd_vote_authorized_voter_t const * self );
6768 : ulong fd_vote_authorized_voter_footprint( void );
6769 : ulong fd_vote_authorized_voter_align( void );
6770 : int fd_vote_authorized_voter_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6771 : int fd_vote_authorized_voter_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6772 : void * fd_vote_authorized_voter_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6773 : void fd_vote_authorized_voter_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6774 : void * fd_vote_authorized_voter_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6775 : void fd_vote_authorized_voter_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6776 : int fd_vote_authorized_voter_convert_global_to_local( void const * global_self, fd_vote_authorized_voter_t * self, fd_bincode_decode_ctx_t * ctx );
6777 :
6778 : void fd_vote_prior_voter_new( fd_vote_prior_voter_t * self );
6779 : int fd_vote_prior_voter_encode( fd_vote_prior_voter_t const * self, fd_bincode_encode_ctx_t * ctx );
6780 : void fd_vote_prior_voter_destroy( fd_vote_prior_voter_t * self );
6781 : 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 );
6782 : ulong fd_vote_prior_voter_size( fd_vote_prior_voter_t const * self );
6783 : ulong fd_vote_prior_voter_footprint( void );
6784 : ulong fd_vote_prior_voter_align( void );
6785 : int fd_vote_prior_voter_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6786 : int fd_vote_prior_voter_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6787 : void * fd_vote_prior_voter_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6788 : void fd_vote_prior_voter_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6789 : void * fd_vote_prior_voter_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6790 : void fd_vote_prior_voter_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6791 : int fd_vote_prior_voter_convert_global_to_local( void const * global_self, fd_vote_prior_voter_t * self, fd_bincode_decode_ctx_t * ctx );
6792 :
6793 : void fd_vote_prior_voter_0_23_5_new( fd_vote_prior_voter_0_23_5_t * self );
6794 : 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 );
6795 : void fd_vote_prior_voter_0_23_5_destroy( fd_vote_prior_voter_0_23_5_t * self );
6796 : 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 );
6797 : ulong fd_vote_prior_voter_0_23_5_size( fd_vote_prior_voter_0_23_5_t const * self );
6798 : ulong fd_vote_prior_voter_0_23_5_footprint( void );
6799 : ulong fd_vote_prior_voter_0_23_5_align( void );
6800 : int fd_vote_prior_voter_0_23_5_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6801 : int fd_vote_prior_voter_0_23_5_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6802 : void * fd_vote_prior_voter_0_23_5_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6803 : void fd_vote_prior_voter_0_23_5_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6804 : void * fd_vote_prior_voter_0_23_5_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6805 : void fd_vote_prior_voter_0_23_5_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6806 : int fd_vote_prior_voter_0_23_5_convert_global_to_local( void const * global_self, fd_vote_prior_voter_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
6807 :
6808 : void fd_vote_epoch_credits_new( fd_vote_epoch_credits_t * self );
6809 : int fd_vote_epoch_credits_encode( fd_vote_epoch_credits_t const * self, fd_bincode_encode_ctx_t * ctx );
6810 : void fd_vote_epoch_credits_destroy( fd_vote_epoch_credits_t * self );
6811 : 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 );
6812 : ulong fd_vote_epoch_credits_size( fd_vote_epoch_credits_t const * self );
6813 : ulong fd_vote_epoch_credits_footprint( void );
6814 : ulong fd_vote_epoch_credits_align( void );
6815 : int fd_vote_epoch_credits_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6816 : int fd_vote_epoch_credits_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6817 : void * fd_vote_epoch_credits_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6818 : void fd_vote_epoch_credits_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6819 : void * fd_vote_epoch_credits_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6820 : void fd_vote_epoch_credits_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6821 : int fd_vote_epoch_credits_convert_global_to_local( void const * global_self, fd_vote_epoch_credits_t * self, fd_bincode_decode_ctx_t * ctx );
6822 :
6823 : void fd_vote_block_timestamp_new( fd_vote_block_timestamp_t * self );
6824 : int fd_vote_block_timestamp_encode( fd_vote_block_timestamp_t const * self, fd_bincode_encode_ctx_t * ctx );
6825 : void fd_vote_block_timestamp_destroy( fd_vote_block_timestamp_t * self );
6826 : 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 );
6827 : ulong fd_vote_block_timestamp_size( fd_vote_block_timestamp_t const * self );
6828 : ulong fd_vote_block_timestamp_footprint( void );
6829 : ulong fd_vote_block_timestamp_align( void );
6830 : int fd_vote_block_timestamp_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6831 : int fd_vote_block_timestamp_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6832 : void * fd_vote_block_timestamp_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6833 : void fd_vote_block_timestamp_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6834 : void * fd_vote_block_timestamp_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6835 : void fd_vote_block_timestamp_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6836 : int fd_vote_block_timestamp_convert_global_to_local( void const * global_self, fd_vote_block_timestamp_t * self, fd_bincode_decode_ctx_t * ctx );
6837 :
6838 : void fd_vote_prior_voters_new( fd_vote_prior_voters_t * self );
6839 : int fd_vote_prior_voters_encode( fd_vote_prior_voters_t const * self, fd_bincode_encode_ctx_t * ctx );
6840 : void fd_vote_prior_voters_destroy( fd_vote_prior_voters_t * self );
6841 : 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 );
6842 : ulong fd_vote_prior_voters_size( fd_vote_prior_voters_t const * self );
6843 : ulong fd_vote_prior_voters_footprint( void );
6844 : ulong fd_vote_prior_voters_align( void );
6845 : int fd_vote_prior_voters_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6846 : int fd_vote_prior_voters_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6847 : void * fd_vote_prior_voters_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6848 : void fd_vote_prior_voters_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6849 : void * fd_vote_prior_voters_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6850 : void fd_vote_prior_voters_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6851 : int fd_vote_prior_voters_convert_global_to_local( void const * global_self, fd_vote_prior_voters_t * self, fd_bincode_decode_ctx_t * ctx );
6852 :
6853 : void fd_vote_prior_voters_0_23_5_new( fd_vote_prior_voters_0_23_5_t * self );
6854 : 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 );
6855 : void fd_vote_prior_voters_0_23_5_destroy( fd_vote_prior_voters_0_23_5_t * self );
6856 : 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 );
6857 : ulong fd_vote_prior_voters_0_23_5_size( fd_vote_prior_voters_0_23_5_t const * self );
6858 : ulong fd_vote_prior_voters_0_23_5_footprint( void );
6859 : ulong fd_vote_prior_voters_0_23_5_align( void );
6860 : int fd_vote_prior_voters_0_23_5_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6861 : int fd_vote_prior_voters_0_23_5_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6862 : void * fd_vote_prior_voters_0_23_5_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6863 : void fd_vote_prior_voters_0_23_5_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6864 : void * fd_vote_prior_voters_0_23_5_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6865 : void fd_vote_prior_voters_0_23_5_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6866 : int fd_vote_prior_voters_0_23_5_convert_global_to_local( void const * global_self, fd_vote_prior_voters_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
6867 :
6868 : void fd_landed_vote_new( fd_landed_vote_t * self );
6869 : int fd_landed_vote_encode( fd_landed_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
6870 : void fd_landed_vote_destroy( fd_landed_vote_t * self );
6871 : void fd_landed_vote_walk( void * w, fd_landed_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6872 : ulong fd_landed_vote_size( fd_landed_vote_t const * self );
6873 : ulong fd_landed_vote_footprint( void );
6874 : ulong fd_landed_vote_align( void );
6875 : int fd_landed_vote_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6876 : int fd_landed_vote_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6877 : void * fd_landed_vote_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6878 : void fd_landed_vote_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6879 : void * fd_landed_vote_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6880 : void fd_landed_vote_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6881 : int fd_landed_vote_convert_global_to_local( void const * global_self, fd_landed_vote_t * self, fd_bincode_decode_ctx_t * ctx );
6882 :
6883 : void fd_vote_state_0_23_5_new( fd_vote_state_0_23_5_t * self );
6884 : int fd_vote_state_0_23_5_encode( fd_vote_state_0_23_5_t const * self, fd_bincode_encode_ctx_t * ctx );
6885 : void fd_vote_state_0_23_5_destroy( fd_vote_state_0_23_5_t * self );
6886 : 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 );
6887 : ulong fd_vote_state_0_23_5_size( fd_vote_state_0_23_5_t const * self );
6888 : ulong fd_vote_state_0_23_5_footprint( void );
6889 : ulong fd_vote_state_0_23_5_align( void );
6890 : int fd_vote_state_0_23_5_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6891 : int fd_vote_state_0_23_5_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6892 : void * fd_vote_state_0_23_5_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6893 : void fd_vote_state_0_23_5_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6894 : void * fd_vote_state_0_23_5_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6895 : void fd_vote_state_0_23_5_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6896 : int fd_vote_state_0_23_5_convert_global_to_local( void const * global_self, fd_vote_state_0_23_5_t * self, fd_bincode_decode_ctx_t * ctx );
6897 :
6898 : void fd_vote_authorized_voters_new( fd_vote_authorized_voters_t * self );
6899 : int fd_vote_authorized_voters_encode( fd_vote_authorized_voters_t const * self, fd_bincode_encode_ctx_t * ctx );
6900 : void fd_vote_authorized_voters_destroy( fd_vote_authorized_voters_t * self );
6901 : 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 );
6902 : ulong fd_vote_authorized_voters_size( fd_vote_authorized_voters_t const * self );
6903 : ulong fd_vote_authorized_voters_footprint( void );
6904 : ulong fd_vote_authorized_voters_align( void );
6905 : int fd_vote_authorized_voters_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6906 : int fd_vote_authorized_voters_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6907 : void * fd_vote_authorized_voters_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6908 : void fd_vote_authorized_voters_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6909 : void * fd_vote_authorized_voters_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6910 : void fd_vote_authorized_voters_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6911 : int fd_vote_authorized_voters_convert_global_to_local( void const * global_self, fd_vote_authorized_voters_t * self, fd_bincode_decode_ctx_t * ctx );
6912 :
6913 : void fd_vote_state_1_14_11_new( fd_vote_state_1_14_11_t * self );
6914 : int fd_vote_state_1_14_11_encode( fd_vote_state_1_14_11_t const * self, fd_bincode_encode_ctx_t * ctx );
6915 : void fd_vote_state_1_14_11_destroy( fd_vote_state_1_14_11_t * self );
6916 : 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 );
6917 : ulong fd_vote_state_1_14_11_size( fd_vote_state_1_14_11_t const * self );
6918 : ulong fd_vote_state_1_14_11_footprint( void );
6919 : ulong fd_vote_state_1_14_11_align( void );
6920 : int fd_vote_state_1_14_11_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6921 : int fd_vote_state_1_14_11_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6922 : void * fd_vote_state_1_14_11_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6923 : void fd_vote_state_1_14_11_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6924 : void * fd_vote_state_1_14_11_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6925 : void fd_vote_state_1_14_11_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6926 : int fd_vote_state_1_14_11_convert_global_to_local( void const * global_self, fd_vote_state_1_14_11_t * self, fd_bincode_decode_ctx_t * ctx );
6927 :
6928 : void fd_vote_state_new( fd_vote_state_t * self );
6929 : int fd_vote_state_encode( fd_vote_state_t const * self, fd_bincode_encode_ctx_t * ctx );
6930 : void fd_vote_state_destroy( fd_vote_state_t * self );
6931 : void fd_vote_state_walk( void * w, fd_vote_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
6932 : ulong fd_vote_state_size( fd_vote_state_t const * self );
6933 : ulong fd_vote_state_footprint( void );
6934 : ulong fd_vote_state_align( void );
6935 : int fd_vote_state_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6936 : int fd_vote_state_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6937 : void * fd_vote_state_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6938 : void fd_vote_state_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6939 : void * fd_vote_state_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6940 : void fd_vote_state_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6941 : int fd_vote_state_convert_global_to_local( void const * global_self, fd_vote_state_t * self, fd_bincode_decode_ctx_t * ctx );
6942 :
6943 : void fd_vote_state_versioned_new_disc( fd_vote_state_versioned_t * self, uint discriminant );
6944 : void fd_vote_state_versioned_new( fd_vote_state_versioned_t * self );
6945 : int fd_vote_state_versioned_encode( fd_vote_state_versioned_t const * self, fd_bincode_encode_ctx_t * ctx );
6946 : void fd_vote_state_versioned_destroy( fd_vote_state_versioned_t * self );
6947 : 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 );
6948 : ulong fd_vote_state_versioned_size( fd_vote_state_versioned_t const * self );
6949 : ulong fd_vote_state_versioned_footprint( void );
6950 : ulong fd_vote_state_versioned_align( void );
6951 : int fd_vote_state_versioned_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6952 : int fd_vote_state_versioned_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6953 : void * fd_vote_state_versioned_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6954 : void fd_vote_state_versioned_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6955 : void * fd_vote_state_versioned_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6956 : void fd_vote_state_versioned_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6957 : int fd_vote_state_versioned_convert_global_to_local( void const * global_self, fd_vote_state_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
6958 :
6959 : FD_FN_PURE uchar fd_vote_state_versioned_is_v0_23_5( fd_vote_state_versioned_t const * self );
6960 : FD_FN_PURE uchar fd_vote_state_versioned_is_v1_14_11( fd_vote_state_versioned_t const * self );
6961 : FD_FN_PURE uchar fd_vote_state_versioned_is_current( fd_vote_state_versioned_t const * self );
6962 : enum {
6963 : fd_vote_state_versioned_enum_v0_23_5 = 0,
6964 : fd_vote_state_versioned_enum_v1_14_11 = 1,
6965 : fd_vote_state_versioned_enum_current = 2,
6966 : };
6967 : void fd_vote_state_update_new( fd_vote_state_update_t * self );
6968 : int fd_vote_state_update_encode( fd_vote_state_update_t const * self, fd_bincode_encode_ctx_t * ctx );
6969 : void fd_vote_state_update_destroy( fd_vote_state_update_t * self );
6970 : 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 );
6971 : ulong fd_vote_state_update_size( fd_vote_state_update_t const * self );
6972 : ulong fd_vote_state_update_footprint( void );
6973 : ulong fd_vote_state_update_align( void );
6974 : int fd_vote_state_update_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6975 : int fd_vote_state_update_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6976 : void * fd_vote_state_update_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6977 : void fd_vote_state_update_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6978 : void * fd_vote_state_update_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6979 : void fd_vote_state_update_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6980 : int fd_vote_state_update_convert_global_to_local( void const * global_self, fd_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
6981 :
6982 : void fd_compact_vote_state_update_new( fd_compact_vote_state_update_t * self );
6983 : int fd_compact_vote_state_update_encode( fd_compact_vote_state_update_t const * self, fd_bincode_encode_ctx_t * ctx );
6984 : void fd_compact_vote_state_update_destroy( fd_compact_vote_state_update_t * self );
6985 : 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 );
6986 : ulong fd_compact_vote_state_update_size( fd_compact_vote_state_update_t const * self );
6987 : ulong fd_compact_vote_state_update_footprint( void );
6988 : ulong fd_compact_vote_state_update_align( void );
6989 : int fd_compact_vote_state_update_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6990 : int fd_compact_vote_state_update_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
6991 : void * fd_compact_vote_state_update_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
6992 : void fd_compact_vote_state_update_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6993 : void * fd_compact_vote_state_update_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
6994 : void fd_compact_vote_state_update_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
6995 : int fd_compact_vote_state_update_convert_global_to_local( void const * global_self, fd_compact_vote_state_update_t * self, fd_bincode_decode_ctx_t * ctx );
6996 :
6997 : void fd_compact_vote_state_update_switch_new( fd_compact_vote_state_update_switch_t * self );
6998 : int fd_compact_vote_state_update_switch_encode( fd_compact_vote_state_update_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
6999 : void fd_compact_vote_state_update_switch_destroy( fd_compact_vote_state_update_switch_t * self );
7000 : 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 );
7001 : ulong fd_compact_vote_state_update_switch_size( fd_compact_vote_state_update_switch_t const * self );
7002 : ulong fd_compact_vote_state_update_switch_footprint( void );
7003 : ulong fd_compact_vote_state_update_switch_align( void );
7004 : int fd_compact_vote_state_update_switch_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7005 : int fd_compact_vote_state_update_switch_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7006 : void * fd_compact_vote_state_update_switch_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7007 : void fd_compact_vote_state_update_switch_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7008 : void * fd_compact_vote_state_update_switch_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7009 : void fd_compact_vote_state_update_switch_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7010 : int fd_compact_vote_state_update_switch_convert_global_to_local( void const * global_self, fd_compact_vote_state_update_switch_t * self, fd_bincode_decode_ctx_t * ctx );
7011 :
7012 : void fd_compact_tower_sync_new( fd_compact_tower_sync_t * self );
7013 : int fd_compact_tower_sync_encode( fd_compact_tower_sync_t const * self, fd_bincode_encode_ctx_t * ctx );
7014 : void fd_compact_tower_sync_destroy( fd_compact_tower_sync_t * self );
7015 : 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 );
7016 : ulong fd_compact_tower_sync_size( fd_compact_tower_sync_t const * self );
7017 : ulong fd_compact_tower_sync_footprint( void );
7018 : ulong fd_compact_tower_sync_align( void );
7019 : int fd_compact_tower_sync_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7020 : int fd_compact_tower_sync_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7021 : void * fd_compact_tower_sync_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7022 : void fd_compact_tower_sync_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7023 : void * fd_compact_tower_sync_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7024 : void fd_compact_tower_sync_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7025 : int fd_compact_tower_sync_convert_global_to_local( void const * global_self, fd_compact_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
7026 :
7027 : void fd_tower_sync_new( fd_tower_sync_t * self );
7028 : int fd_tower_sync_encode( fd_tower_sync_t const * self, fd_bincode_encode_ctx_t * ctx );
7029 : void fd_tower_sync_destroy( fd_tower_sync_t * self );
7030 : void fd_tower_sync_walk( void * w, fd_tower_sync_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7031 : ulong fd_tower_sync_size( fd_tower_sync_t const * self );
7032 : ulong fd_tower_sync_footprint( void );
7033 : ulong fd_tower_sync_align( void );
7034 : int fd_tower_sync_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7035 : int fd_tower_sync_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7036 : void * fd_tower_sync_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7037 : void fd_tower_sync_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7038 : void * fd_tower_sync_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7039 : void fd_tower_sync_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7040 : int fd_tower_sync_convert_global_to_local( void const * global_self, fd_tower_sync_t * self, fd_bincode_decode_ctx_t * ctx );
7041 :
7042 : void fd_tower_sync_switch_new( fd_tower_sync_switch_t * self );
7043 : int fd_tower_sync_switch_encode( fd_tower_sync_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
7044 : void fd_tower_sync_switch_destroy( fd_tower_sync_switch_t * self );
7045 : 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 );
7046 : ulong fd_tower_sync_switch_size( fd_tower_sync_switch_t const * self );
7047 : ulong fd_tower_sync_switch_footprint( void );
7048 : ulong fd_tower_sync_switch_align( void );
7049 : int fd_tower_sync_switch_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7050 : int fd_tower_sync_switch_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7051 : void * fd_tower_sync_switch_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7052 : void fd_tower_sync_switch_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7053 : void * fd_tower_sync_switch_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7054 : void fd_tower_sync_switch_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7055 : int fd_tower_sync_switch_convert_global_to_local( void const * global_self, fd_tower_sync_switch_t * self, fd_bincode_decode_ctx_t * ctx );
7056 :
7057 : void fd_slot_history_inner_new( fd_slot_history_inner_t * self );
7058 : int fd_slot_history_inner_encode( fd_slot_history_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
7059 : void fd_slot_history_inner_destroy( fd_slot_history_inner_t * self );
7060 : 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 );
7061 : ulong fd_slot_history_inner_size( fd_slot_history_inner_t const * self );
7062 : ulong fd_slot_history_inner_footprint( void );
7063 : ulong fd_slot_history_inner_align( void );
7064 : int fd_slot_history_inner_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7065 : int fd_slot_history_inner_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7066 : void * fd_slot_history_inner_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7067 : void fd_slot_history_inner_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7068 : void * fd_slot_history_inner_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7069 : void fd_slot_history_inner_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7070 : int fd_slot_history_inner_convert_global_to_local( void const * global_self, fd_slot_history_inner_t * self, fd_bincode_decode_ctx_t * ctx );
7071 :
7072 : void fd_slot_history_bitvec_new( fd_slot_history_bitvec_t * self );
7073 : int fd_slot_history_bitvec_encode( fd_slot_history_bitvec_t const * self, fd_bincode_encode_ctx_t * ctx );
7074 : void fd_slot_history_bitvec_destroy( fd_slot_history_bitvec_t * self );
7075 : 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 );
7076 : ulong fd_slot_history_bitvec_size( fd_slot_history_bitvec_t const * self );
7077 : ulong fd_slot_history_bitvec_footprint( void );
7078 : ulong fd_slot_history_bitvec_align( void );
7079 : int fd_slot_history_bitvec_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7080 : int fd_slot_history_bitvec_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7081 : void * fd_slot_history_bitvec_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7082 : void fd_slot_history_bitvec_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7083 : void * fd_slot_history_bitvec_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7084 : void fd_slot_history_bitvec_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7085 : int fd_slot_history_bitvec_convert_global_to_local( void const * global_self, fd_slot_history_bitvec_t * self, fd_bincode_decode_ctx_t * ctx );
7086 :
7087 : void fd_slot_history_new( fd_slot_history_t * self );
7088 : int fd_slot_history_encode( fd_slot_history_t const * self, fd_bincode_encode_ctx_t * ctx );
7089 : void fd_slot_history_destroy( fd_slot_history_t * self );
7090 : void fd_slot_history_walk( void * w, fd_slot_history_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7091 : ulong fd_slot_history_size( fd_slot_history_t const * self );
7092 : ulong fd_slot_history_footprint( void );
7093 : ulong fd_slot_history_align( void );
7094 : int fd_slot_history_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7095 : int fd_slot_history_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7096 : void * fd_slot_history_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7097 : void fd_slot_history_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7098 : void * fd_slot_history_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7099 : void fd_slot_history_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7100 : int fd_slot_history_convert_global_to_local( void const * global_self, fd_slot_history_t * self, fd_bincode_decode_ctx_t * ctx );
7101 :
7102 : void fd_slot_hash_new( fd_slot_hash_t * self );
7103 : int fd_slot_hash_encode( fd_slot_hash_t const * self, fd_bincode_encode_ctx_t * ctx );
7104 : void fd_slot_hash_destroy( fd_slot_hash_t * self );
7105 : void fd_slot_hash_walk( void * w, fd_slot_hash_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7106 : ulong fd_slot_hash_size( fd_slot_hash_t const * self );
7107 : ulong fd_slot_hash_footprint( void );
7108 : ulong fd_slot_hash_align( void );
7109 : int fd_slot_hash_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7110 : int fd_slot_hash_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7111 : void * fd_slot_hash_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7112 : void fd_slot_hash_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7113 : void * fd_slot_hash_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7114 : void fd_slot_hash_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7115 : int fd_slot_hash_convert_global_to_local( void const * global_self, fd_slot_hash_t * self, fd_bincode_decode_ctx_t * ctx );
7116 :
7117 : void fd_slot_hashes_new( fd_slot_hashes_t * self );
7118 : int fd_slot_hashes_encode( fd_slot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
7119 : void fd_slot_hashes_destroy( fd_slot_hashes_t * self );
7120 : void fd_slot_hashes_walk( void * w, fd_slot_hashes_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7121 : ulong fd_slot_hashes_size( fd_slot_hashes_t const * self );
7122 : ulong fd_slot_hashes_footprint( void );
7123 : ulong fd_slot_hashes_align( void );
7124 : int fd_slot_hashes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7125 : int fd_slot_hashes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7126 : void * fd_slot_hashes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7127 : void fd_slot_hashes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7128 : void * fd_slot_hashes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7129 : void fd_slot_hashes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7130 : int fd_slot_hashes_convert_global_to_local( void const * global_self, fd_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7131 :
7132 : void fd_block_block_hash_entry_new( fd_block_block_hash_entry_t * self );
7133 : int fd_block_block_hash_entry_encode( fd_block_block_hash_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
7134 : void fd_block_block_hash_entry_destroy( fd_block_block_hash_entry_t * self );
7135 : 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 );
7136 : ulong fd_block_block_hash_entry_size( fd_block_block_hash_entry_t const * self );
7137 : ulong fd_block_block_hash_entry_footprint( void );
7138 : ulong fd_block_block_hash_entry_align( void );
7139 : int fd_block_block_hash_entry_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7140 : int fd_block_block_hash_entry_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7141 : void * fd_block_block_hash_entry_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7142 : void fd_block_block_hash_entry_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7143 : void * fd_block_block_hash_entry_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7144 : void fd_block_block_hash_entry_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7145 : int fd_block_block_hash_entry_convert_global_to_local( void const * global_self, fd_block_block_hash_entry_t * self, fd_bincode_decode_ctx_t * ctx );
7146 :
7147 : void fd_recent_block_hashes_new( fd_recent_block_hashes_t * self );
7148 : int fd_recent_block_hashes_encode( fd_recent_block_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
7149 : void fd_recent_block_hashes_destroy( fd_recent_block_hashes_t * self );
7150 : 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 );
7151 : ulong fd_recent_block_hashes_size( fd_recent_block_hashes_t const * self );
7152 : ulong fd_recent_block_hashes_footprint( void );
7153 : ulong fd_recent_block_hashes_align( void );
7154 : int fd_recent_block_hashes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7155 : int fd_recent_block_hashes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7156 : void * fd_recent_block_hashes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7157 : void fd_recent_block_hashes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7158 : void * fd_recent_block_hashes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7159 : void fd_recent_block_hashes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7160 : int fd_recent_block_hashes_convert_global_to_local( void const * global_self, fd_recent_block_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
7161 :
7162 : void fd_slot_meta_new( fd_slot_meta_t * self );
7163 : int fd_slot_meta_encode( fd_slot_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
7164 : void fd_slot_meta_destroy( fd_slot_meta_t * self );
7165 : void fd_slot_meta_walk( void * w, fd_slot_meta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7166 : ulong fd_slot_meta_size( fd_slot_meta_t const * self );
7167 : ulong fd_slot_meta_footprint( void );
7168 : ulong fd_slot_meta_align( void );
7169 : int fd_slot_meta_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7170 : int fd_slot_meta_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7171 : void * fd_slot_meta_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7172 : void fd_slot_meta_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7173 : void * fd_slot_meta_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7174 : void fd_slot_meta_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7175 : int fd_slot_meta_convert_global_to_local( void const * global_self, fd_slot_meta_t * self, fd_bincode_decode_ctx_t * ctx );
7176 :
7177 : void fd_clock_timestamp_vote_new( fd_clock_timestamp_vote_t * self );
7178 : int fd_clock_timestamp_vote_encode( fd_clock_timestamp_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
7179 : void fd_clock_timestamp_vote_destroy( fd_clock_timestamp_vote_t * self );
7180 : 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 );
7181 : ulong fd_clock_timestamp_vote_size( fd_clock_timestamp_vote_t const * self );
7182 : ulong fd_clock_timestamp_vote_footprint( void );
7183 : ulong fd_clock_timestamp_vote_align( void );
7184 : int fd_clock_timestamp_vote_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7185 : int fd_clock_timestamp_vote_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7186 : void * fd_clock_timestamp_vote_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7187 : void fd_clock_timestamp_vote_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7188 : void * fd_clock_timestamp_vote_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7189 : void fd_clock_timestamp_vote_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7190 : int fd_clock_timestamp_vote_convert_global_to_local( void const * global_self, fd_clock_timestamp_vote_t * self, fd_bincode_decode_ctx_t * ctx );
7191 :
7192 : void fd_clock_timestamp_votes_new( fd_clock_timestamp_votes_t * self );
7193 : int fd_clock_timestamp_votes_encode( fd_clock_timestamp_votes_t const * self, fd_bincode_encode_ctx_t * ctx );
7194 : void fd_clock_timestamp_votes_destroy( fd_clock_timestamp_votes_t * self );
7195 : 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 );
7196 : ulong fd_clock_timestamp_votes_size( fd_clock_timestamp_votes_t const * self );
7197 : ulong fd_clock_timestamp_votes_footprint( void );
7198 : ulong fd_clock_timestamp_votes_align( void );
7199 : int fd_clock_timestamp_votes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7200 : int fd_clock_timestamp_votes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7201 : void * fd_clock_timestamp_votes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7202 : void fd_clock_timestamp_votes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7203 : void * fd_clock_timestamp_votes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7204 : void fd_clock_timestamp_votes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7205 : int fd_clock_timestamp_votes_convert_global_to_local( void const * global_self, fd_clock_timestamp_votes_t * self, fd_bincode_decode_ctx_t * ctx );
7206 :
7207 : void fd_sysvar_fees_new( fd_sysvar_fees_t * self );
7208 : int fd_sysvar_fees_encode( fd_sysvar_fees_t const * self, fd_bincode_encode_ctx_t * ctx );
7209 : void fd_sysvar_fees_destroy( fd_sysvar_fees_t * self );
7210 : void fd_sysvar_fees_walk( void * w, fd_sysvar_fees_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7211 : ulong fd_sysvar_fees_size( fd_sysvar_fees_t const * self );
7212 : ulong fd_sysvar_fees_footprint( void );
7213 : ulong fd_sysvar_fees_align( void );
7214 : int fd_sysvar_fees_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7215 : int fd_sysvar_fees_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7216 : void * fd_sysvar_fees_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7217 : void fd_sysvar_fees_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7218 : void * fd_sysvar_fees_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7219 : void fd_sysvar_fees_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7220 : int fd_sysvar_fees_convert_global_to_local( void const * global_self, fd_sysvar_fees_t * self, fd_bincode_decode_ctx_t * ctx );
7221 :
7222 : void fd_sysvar_epoch_rewards_new( fd_sysvar_epoch_rewards_t * self );
7223 : int fd_sysvar_epoch_rewards_encode( fd_sysvar_epoch_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
7224 : void fd_sysvar_epoch_rewards_destroy( fd_sysvar_epoch_rewards_t * self );
7225 : 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 );
7226 : ulong fd_sysvar_epoch_rewards_size( fd_sysvar_epoch_rewards_t const * self );
7227 : ulong fd_sysvar_epoch_rewards_footprint( void );
7228 : ulong fd_sysvar_epoch_rewards_align( void );
7229 : int fd_sysvar_epoch_rewards_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7230 : int fd_sysvar_epoch_rewards_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7231 : void * fd_sysvar_epoch_rewards_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7232 : void fd_sysvar_epoch_rewards_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7233 : void * fd_sysvar_epoch_rewards_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7234 : void fd_sysvar_epoch_rewards_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7235 : int fd_sysvar_epoch_rewards_convert_global_to_local( void const * global_self, fd_sysvar_epoch_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
7236 :
7237 : void fd_config_keys_pair_new( fd_config_keys_pair_t * self );
7238 : int fd_config_keys_pair_encode( fd_config_keys_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
7239 : void fd_config_keys_pair_destroy( fd_config_keys_pair_t * self );
7240 : 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 );
7241 : ulong fd_config_keys_pair_size( fd_config_keys_pair_t const * self );
7242 : ulong fd_config_keys_pair_footprint( void );
7243 : ulong fd_config_keys_pair_align( void );
7244 : int fd_config_keys_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7245 : int fd_config_keys_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7246 : void * fd_config_keys_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7247 : void fd_config_keys_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7248 : void * fd_config_keys_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7249 : void fd_config_keys_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7250 : int fd_config_keys_pair_convert_global_to_local( void const * global_self, fd_config_keys_pair_t * self, fd_bincode_decode_ctx_t * ctx );
7251 :
7252 : void fd_stake_config_new( fd_stake_config_t * self );
7253 : int fd_stake_config_encode( fd_stake_config_t const * self, fd_bincode_encode_ctx_t * ctx );
7254 : void fd_stake_config_destroy( fd_stake_config_t * self );
7255 : void fd_stake_config_walk( void * w, fd_stake_config_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7256 : ulong fd_stake_config_size( fd_stake_config_t const * self );
7257 : ulong fd_stake_config_footprint( void );
7258 : ulong fd_stake_config_align( void );
7259 : int fd_stake_config_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7260 : int fd_stake_config_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7261 : void * fd_stake_config_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7262 : void fd_stake_config_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7263 : void * fd_stake_config_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7264 : void fd_stake_config_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7265 : int fd_stake_config_convert_global_to_local( void const * global_self, fd_stake_config_t * self, fd_bincode_decode_ctx_t * ctx );
7266 :
7267 : void fd_feature_entry_new( fd_feature_entry_t * self );
7268 : int fd_feature_entry_encode( fd_feature_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
7269 : void fd_feature_entry_destroy( fd_feature_entry_t * self );
7270 : void fd_feature_entry_walk( void * w, fd_feature_entry_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7271 : ulong fd_feature_entry_size( fd_feature_entry_t const * self );
7272 : ulong fd_feature_entry_footprint( void );
7273 : ulong fd_feature_entry_align( void );
7274 : int fd_feature_entry_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7275 : int fd_feature_entry_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7276 : void * fd_feature_entry_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7277 : void fd_feature_entry_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7278 : void * fd_feature_entry_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7279 : void fd_feature_entry_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7280 : int fd_feature_entry_convert_global_to_local( void const * global_self, fd_feature_entry_t * self, fd_bincode_decode_ctx_t * ctx );
7281 :
7282 : void fd_firedancer_bank_new( fd_firedancer_bank_t * self );
7283 : int fd_firedancer_bank_encode( fd_firedancer_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
7284 : void fd_firedancer_bank_destroy( fd_firedancer_bank_t * self );
7285 : void fd_firedancer_bank_walk( void * w, fd_firedancer_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7286 : ulong fd_firedancer_bank_size( fd_firedancer_bank_t const * self );
7287 : ulong fd_firedancer_bank_footprint( void );
7288 : ulong fd_firedancer_bank_align( void );
7289 : int fd_firedancer_bank_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7290 : int fd_firedancer_bank_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7291 : void * fd_firedancer_bank_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7292 : void fd_firedancer_bank_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7293 : void * fd_firedancer_bank_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7294 : void fd_firedancer_bank_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7295 : int fd_firedancer_bank_convert_global_to_local( void const * global_self, fd_firedancer_bank_t * self, fd_bincode_decode_ctx_t * ctx );
7296 :
7297 : void fd_cluster_type_new_disc( fd_cluster_type_t * self, uint discriminant );
7298 : void fd_cluster_type_new( fd_cluster_type_t * self );
7299 : int fd_cluster_type_encode( fd_cluster_type_t const * self, fd_bincode_encode_ctx_t * ctx );
7300 : void fd_cluster_type_destroy( fd_cluster_type_t * self );
7301 : void fd_cluster_type_walk( void * w, fd_cluster_type_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7302 : ulong fd_cluster_type_size( fd_cluster_type_t const * self );
7303 : ulong fd_cluster_type_footprint( void );
7304 : ulong fd_cluster_type_align( void );
7305 : int fd_cluster_type_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7306 : int fd_cluster_type_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7307 : void * fd_cluster_type_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7308 : void fd_cluster_type_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7309 : void * fd_cluster_type_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7310 : void fd_cluster_type_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7311 : int fd_cluster_type_convert_global_to_local( void const * global_self, fd_cluster_type_t * self, fd_bincode_decode_ctx_t * ctx );
7312 :
7313 : FD_FN_PURE uchar fd_cluster_type_is_Testnet( fd_cluster_type_t const * self );
7314 : FD_FN_PURE uchar fd_cluster_type_is_MainnetBeta( fd_cluster_type_t const * self );
7315 : FD_FN_PURE uchar fd_cluster_type_is_Devnet( fd_cluster_type_t const * self );
7316 : FD_FN_PURE uchar fd_cluster_type_is_Development( fd_cluster_type_t const * self );
7317 : enum {
7318 : fd_cluster_type_enum_Testnet = 0,
7319 : fd_cluster_type_enum_MainnetBeta = 1,
7320 : fd_cluster_type_enum_Devnet = 2,
7321 : fd_cluster_type_enum_Development = 3,
7322 : };
7323 : void fd_epoch_bank_new( fd_epoch_bank_t * self );
7324 : int fd_epoch_bank_encode( fd_epoch_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
7325 : void fd_epoch_bank_destroy( fd_epoch_bank_t * self );
7326 : void fd_epoch_bank_walk( void * w, fd_epoch_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7327 : ulong fd_epoch_bank_size( fd_epoch_bank_t const * self );
7328 : ulong fd_epoch_bank_footprint( void );
7329 : ulong fd_epoch_bank_align( void );
7330 : int fd_epoch_bank_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7331 : int fd_epoch_bank_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7332 : void * fd_epoch_bank_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7333 : void fd_epoch_bank_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7334 : void * fd_epoch_bank_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7335 : void fd_epoch_bank_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7336 : int fd_epoch_bank_convert_global_to_local( void const * global_self, fd_epoch_bank_t * self, fd_bincode_decode_ctx_t * ctx );
7337 :
7338 : void fd_slot_bank_new( fd_slot_bank_t * self );
7339 : int fd_slot_bank_encode( fd_slot_bank_t const * self, fd_bincode_encode_ctx_t * ctx );
7340 : void fd_slot_bank_destroy( fd_slot_bank_t * self );
7341 : void fd_slot_bank_walk( void * w, fd_slot_bank_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7342 : ulong fd_slot_bank_size( fd_slot_bank_t const * self );
7343 : ulong fd_slot_bank_footprint( void );
7344 : ulong fd_slot_bank_align( void );
7345 : int fd_slot_bank_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7346 : int fd_slot_bank_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7347 : void * fd_slot_bank_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7348 : void fd_slot_bank_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7349 : void * fd_slot_bank_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7350 : void fd_slot_bank_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7351 : int fd_slot_bank_convert_global_to_local( void const * global_self, fd_slot_bank_t * self, fd_bincode_decode_ctx_t * ctx );
7352 :
7353 : void fd_prev_epoch_inflation_rewards_new( fd_prev_epoch_inflation_rewards_t * self );
7354 : int fd_prev_epoch_inflation_rewards_encode( fd_prev_epoch_inflation_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
7355 : void fd_prev_epoch_inflation_rewards_destroy( fd_prev_epoch_inflation_rewards_t * self );
7356 : 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 );
7357 : ulong fd_prev_epoch_inflation_rewards_size( fd_prev_epoch_inflation_rewards_t const * self );
7358 : ulong fd_prev_epoch_inflation_rewards_footprint( void );
7359 : ulong fd_prev_epoch_inflation_rewards_align( void );
7360 : int fd_prev_epoch_inflation_rewards_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7361 : int fd_prev_epoch_inflation_rewards_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7362 : void * fd_prev_epoch_inflation_rewards_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7363 : void fd_prev_epoch_inflation_rewards_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7364 : void * fd_prev_epoch_inflation_rewards_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7365 : void fd_prev_epoch_inflation_rewards_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7366 : int fd_prev_epoch_inflation_rewards_convert_global_to_local( void const * global_self, fd_prev_epoch_inflation_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
7367 :
7368 : void fd_vote_new( fd_vote_t * self );
7369 : int fd_vote_encode( fd_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
7370 : void fd_vote_destroy( fd_vote_t * self );
7371 : void fd_vote_walk( void * w, fd_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7372 : ulong fd_vote_size( fd_vote_t const * self );
7373 : ulong fd_vote_footprint( void );
7374 : ulong fd_vote_align( void );
7375 : int fd_vote_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7376 : int fd_vote_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7377 : void * fd_vote_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7378 : void fd_vote_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7379 : void * fd_vote_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7380 : void fd_vote_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7381 : int fd_vote_convert_global_to_local( void const * global_self, fd_vote_t * self, fd_bincode_decode_ctx_t * ctx );
7382 :
7383 : void fd_vote_init_new( fd_vote_init_t * self );
7384 : int fd_vote_init_encode( fd_vote_init_t const * self, fd_bincode_encode_ctx_t * ctx );
7385 : void fd_vote_init_destroy( fd_vote_init_t * self );
7386 : void fd_vote_init_walk( void * w, fd_vote_init_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7387 : ulong fd_vote_init_size( fd_vote_init_t const * self );
7388 : ulong fd_vote_init_footprint( void );
7389 : ulong fd_vote_init_align( void );
7390 : int fd_vote_init_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7391 : int fd_vote_init_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7392 : void * fd_vote_init_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7393 : void fd_vote_init_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7394 : void * fd_vote_init_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7395 : void fd_vote_init_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7396 : int fd_vote_init_convert_global_to_local( void const * global_self, fd_vote_init_t * self, fd_bincode_decode_ctx_t * ctx );
7397 :
7398 : void fd_vote_authorize_new_disc( fd_vote_authorize_t * self, uint discriminant );
7399 : void fd_vote_authorize_new( fd_vote_authorize_t * self );
7400 : int fd_vote_authorize_encode( fd_vote_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
7401 : void fd_vote_authorize_destroy( fd_vote_authorize_t * self );
7402 : void fd_vote_authorize_walk( void * w, fd_vote_authorize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7403 : ulong fd_vote_authorize_size( fd_vote_authorize_t const * self );
7404 : ulong fd_vote_authorize_footprint( void );
7405 : ulong fd_vote_authorize_align( void );
7406 : int fd_vote_authorize_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7407 : int fd_vote_authorize_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7408 : void * fd_vote_authorize_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7409 : void fd_vote_authorize_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7410 : void * fd_vote_authorize_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7411 : void fd_vote_authorize_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7412 : int fd_vote_authorize_convert_global_to_local( void const * global_self, fd_vote_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
7413 :
7414 : FD_FN_PURE uchar fd_vote_authorize_is_voter( fd_vote_authorize_t const * self );
7415 : FD_FN_PURE uchar fd_vote_authorize_is_withdrawer( fd_vote_authorize_t const * self );
7416 : enum {
7417 : fd_vote_authorize_enum_voter = 0,
7418 : fd_vote_authorize_enum_withdrawer = 1,
7419 : };
7420 : void fd_vote_authorize_pubkey_new( fd_vote_authorize_pubkey_t * self );
7421 : int fd_vote_authorize_pubkey_encode( fd_vote_authorize_pubkey_t const * self, fd_bincode_encode_ctx_t * ctx );
7422 : void fd_vote_authorize_pubkey_destroy( fd_vote_authorize_pubkey_t * self );
7423 : 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 );
7424 : ulong fd_vote_authorize_pubkey_size( fd_vote_authorize_pubkey_t const * self );
7425 : ulong fd_vote_authorize_pubkey_footprint( void );
7426 : ulong fd_vote_authorize_pubkey_align( void );
7427 : int fd_vote_authorize_pubkey_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7428 : int fd_vote_authorize_pubkey_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7429 : void * fd_vote_authorize_pubkey_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7430 : void fd_vote_authorize_pubkey_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7431 : void * fd_vote_authorize_pubkey_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7432 : void fd_vote_authorize_pubkey_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7433 : int fd_vote_authorize_pubkey_convert_global_to_local( void const * global_self, fd_vote_authorize_pubkey_t * self, fd_bincode_decode_ctx_t * ctx );
7434 :
7435 : void fd_vote_switch_new( fd_vote_switch_t * self );
7436 : int fd_vote_switch_encode( fd_vote_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
7437 : void fd_vote_switch_destroy( fd_vote_switch_t * self );
7438 : void fd_vote_switch_walk( void * w, fd_vote_switch_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7439 : ulong fd_vote_switch_size( fd_vote_switch_t const * self );
7440 : ulong fd_vote_switch_footprint( void );
7441 : ulong fd_vote_switch_align( void );
7442 : int fd_vote_switch_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7443 : int fd_vote_switch_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7444 : void * fd_vote_switch_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7445 : void fd_vote_switch_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7446 : void * fd_vote_switch_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7447 : void fd_vote_switch_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7448 : int fd_vote_switch_convert_global_to_local( void const * global_self, fd_vote_switch_t * self, fd_bincode_decode_ctx_t * ctx );
7449 :
7450 : void fd_update_vote_state_switch_new( fd_update_vote_state_switch_t * self );
7451 : int fd_update_vote_state_switch_encode( fd_update_vote_state_switch_t const * self, fd_bincode_encode_ctx_t * ctx );
7452 : void fd_update_vote_state_switch_destroy( fd_update_vote_state_switch_t * self );
7453 : 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 );
7454 : ulong fd_update_vote_state_switch_size( fd_update_vote_state_switch_t const * self );
7455 : ulong fd_update_vote_state_switch_footprint( void );
7456 : ulong fd_update_vote_state_switch_align( void );
7457 : int fd_update_vote_state_switch_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7458 : int fd_update_vote_state_switch_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7459 : void * fd_update_vote_state_switch_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7460 : void fd_update_vote_state_switch_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7461 : void * fd_update_vote_state_switch_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7462 : void fd_update_vote_state_switch_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7463 : int fd_update_vote_state_switch_convert_global_to_local( void const * global_self, fd_update_vote_state_switch_t * self, fd_bincode_decode_ctx_t * ctx );
7464 :
7465 : void fd_vote_authorize_with_seed_args_new( fd_vote_authorize_with_seed_args_t * self );
7466 : int fd_vote_authorize_with_seed_args_encode( fd_vote_authorize_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7467 : void fd_vote_authorize_with_seed_args_destroy( fd_vote_authorize_with_seed_args_t * self );
7468 : 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 );
7469 : ulong fd_vote_authorize_with_seed_args_size( fd_vote_authorize_with_seed_args_t const * self );
7470 : ulong fd_vote_authorize_with_seed_args_footprint( void );
7471 : ulong fd_vote_authorize_with_seed_args_align( void );
7472 : int fd_vote_authorize_with_seed_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7473 : int fd_vote_authorize_with_seed_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7474 : void * fd_vote_authorize_with_seed_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7475 : void fd_vote_authorize_with_seed_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7476 : void * fd_vote_authorize_with_seed_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7477 : void fd_vote_authorize_with_seed_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7478 : int fd_vote_authorize_with_seed_args_convert_global_to_local( void const * global_self, fd_vote_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
7479 :
7480 : void fd_vote_authorize_checked_with_seed_args_new( fd_vote_authorize_checked_with_seed_args_t * self );
7481 : 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 );
7482 : void fd_vote_authorize_checked_with_seed_args_destroy( fd_vote_authorize_checked_with_seed_args_t * self );
7483 : 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 );
7484 : ulong fd_vote_authorize_checked_with_seed_args_size( fd_vote_authorize_checked_with_seed_args_t const * self );
7485 : ulong fd_vote_authorize_checked_with_seed_args_footprint( void );
7486 : ulong fd_vote_authorize_checked_with_seed_args_align( void );
7487 : int fd_vote_authorize_checked_with_seed_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7488 : int fd_vote_authorize_checked_with_seed_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7489 : void * fd_vote_authorize_checked_with_seed_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7490 : void fd_vote_authorize_checked_with_seed_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7491 : void * fd_vote_authorize_checked_with_seed_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7492 : void fd_vote_authorize_checked_with_seed_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7493 : int fd_vote_authorize_checked_with_seed_args_convert_global_to_local( void const * global_self, fd_vote_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
7494 :
7495 : void fd_vote_instruction_new_disc( fd_vote_instruction_t * self, uint discriminant );
7496 : void fd_vote_instruction_new( fd_vote_instruction_t * self );
7497 : int fd_vote_instruction_encode( fd_vote_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
7498 : void fd_vote_instruction_destroy( fd_vote_instruction_t * self );
7499 : void fd_vote_instruction_walk( void * w, fd_vote_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7500 : ulong fd_vote_instruction_size( fd_vote_instruction_t const * self );
7501 : ulong fd_vote_instruction_footprint( void );
7502 : ulong fd_vote_instruction_align( void );
7503 : int fd_vote_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7504 : int fd_vote_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7505 : void * fd_vote_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7506 : void fd_vote_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7507 : void * fd_vote_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7508 : void fd_vote_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7509 : int fd_vote_instruction_convert_global_to_local( void const * global_self, fd_vote_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
7510 :
7511 : FD_FN_PURE uchar fd_vote_instruction_is_initialize_account( fd_vote_instruction_t const * self );
7512 : FD_FN_PURE uchar fd_vote_instruction_is_authorize( fd_vote_instruction_t const * self );
7513 : FD_FN_PURE uchar fd_vote_instruction_is_vote( fd_vote_instruction_t const * self );
7514 : FD_FN_PURE uchar fd_vote_instruction_is_withdraw( fd_vote_instruction_t const * self );
7515 : FD_FN_PURE uchar fd_vote_instruction_is_update_validator_identity( fd_vote_instruction_t const * self );
7516 : FD_FN_PURE uchar fd_vote_instruction_is_update_commission( fd_vote_instruction_t const * self );
7517 : FD_FN_PURE uchar fd_vote_instruction_is_vote_switch( fd_vote_instruction_t const * self );
7518 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_checked( fd_vote_instruction_t const * self );
7519 : FD_FN_PURE uchar fd_vote_instruction_is_update_vote_state( fd_vote_instruction_t const * self );
7520 : FD_FN_PURE uchar fd_vote_instruction_is_update_vote_state_switch( fd_vote_instruction_t const * self );
7521 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_with_seed( fd_vote_instruction_t const * self );
7522 : FD_FN_PURE uchar fd_vote_instruction_is_authorize_checked_with_seed( fd_vote_instruction_t const * self );
7523 : FD_FN_PURE uchar fd_vote_instruction_is_compact_update_vote_state( fd_vote_instruction_t const * self );
7524 : FD_FN_PURE uchar fd_vote_instruction_is_compact_update_vote_state_switch( fd_vote_instruction_t const * self );
7525 : FD_FN_PURE uchar fd_vote_instruction_is_tower_sync( fd_vote_instruction_t const * self );
7526 : FD_FN_PURE uchar fd_vote_instruction_is_tower_sync_switch( fd_vote_instruction_t const * self );
7527 : enum {
7528 : fd_vote_instruction_enum_initialize_account = 0,
7529 : fd_vote_instruction_enum_authorize = 1,
7530 : fd_vote_instruction_enum_vote = 2,
7531 : fd_vote_instruction_enum_withdraw = 3,
7532 : fd_vote_instruction_enum_update_validator_identity = 4,
7533 : fd_vote_instruction_enum_update_commission = 5,
7534 : fd_vote_instruction_enum_vote_switch = 6,
7535 : fd_vote_instruction_enum_authorize_checked = 7,
7536 : fd_vote_instruction_enum_update_vote_state = 8,
7537 : fd_vote_instruction_enum_update_vote_state_switch = 9,
7538 : fd_vote_instruction_enum_authorize_with_seed = 10,
7539 : fd_vote_instruction_enum_authorize_checked_with_seed = 11,
7540 : fd_vote_instruction_enum_compact_update_vote_state = 12,
7541 : fd_vote_instruction_enum_compact_update_vote_state_switch = 13,
7542 : fd_vote_instruction_enum_tower_sync = 14,
7543 : fd_vote_instruction_enum_tower_sync_switch = 15,
7544 : };
7545 : void fd_system_program_instruction_create_account_new( fd_system_program_instruction_create_account_t * self );
7546 : int fd_system_program_instruction_create_account_encode( fd_system_program_instruction_create_account_t const * self, fd_bincode_encode_ctx_t * ctx );
7547 : void fd_system_program_instruction_create_account_destroy( fd_system_program_instruction_create_account_t * self );
7548 : 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 );
7549 : ulong fd_system_program_instruction_create_account_size( fd_system_program_instruction_create_account_t const * self );
7550 : ulong fd_system_program_instruction_create_account_footprint( void );
7551 : ulong fd_system_program_instruction_create_account_align( void );
7552 : int fd_system_program_instruction_create_account_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7553 : int fd_system_program_instruction_create_account_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7554 : void * fd_system_program_instruction_create_account_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7555 : void fd_system_program_instruction_create_account_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7556 : void * fd_system_program_instruction_create_account_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7557 : void fd_system_program_instruction_create_account_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7558 : int fd_system_program_instruction_create_account_convert_global_to_local( void const * global_self, fd_system_program_instruction_create_account_t * self, fd_bincode_decode_ctx_t * ctx );
7559 :
7560 : void fd_system_program_instruction_create_account_with_seed_new( fd_system_program_instruction_create_account_with_seed_t * self );
7561 : 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 );
7562 : void fd_system_program_instruction_create_account_with_seed_destroy( fd_system_program_instruction_create_account_with_seed_t * self );
7563 : 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 );
7564 : ulong fd_system_program_instruction_create_account_with_seed_size( fd_system_program_instruction_create_account_with_seed_t const * self );
7565 : ulong fd_system_program_instruction_create_account_with_seed_footprint( void );
7566 : ulong fd_system_program_instruction_create_account_with_seed_align( void );
7567 : int fd_system_program_instruction_create_account_with_seed_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7568 : int fd_system_program_instruction_create_account_with_seed_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7569 : void * fd_system_program_instruction_create_account_with_seed_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7570 : void fd_system_program_instruction_create_account_with_seed_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7571 : void * fd_system_program_instruction_create_account_with_seed_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7572 : void fd_system_program_instruction_create_account_with_seed_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7573 : int fd_system_program_instruction_create_account_with_seed_convert_global_to_local( void const * global_self, fd_system_program_instruction_create_account_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
7574 :
7575 : void fd_system_program_instruction_allocate_with_seed_new( fd_system_program_instruction_allocate_with_seed_t * self );
7576 : 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 );
7577 : void fd_system_program_instruction_allocate_with_seed_destroy( fd_system_program_instruction_allocate_with_seed_t * self );
7578 : 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 );
7579 : ulong fd_system_program_instruction_allocate_with_seed_size( fd_system_program_instruction_allocate_with_seed_t const * self );
7580 : ulong fd_system_program_instruction_allocate_with_seed_footprint( void );
7581 : ulong fd_system_program_instruction_allocate_with_seed_align( void );
7582 : int fd_system_program_instruction_allocate_with_seed_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7583 : int fd_system_program_instruction_allocate_with_seed_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7584 : void * fd_system_program_instruction_allocate_with_seed_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7585 : void fd_system_program_instruction_allocate_with_seed_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7586 : void * fd_system_program_instruction_allocate_with_seed_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7587 : void fd_system_program_instruction_allocate_with_seed_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7588 : int fd_system_program_instruction_allocate_with_seed_convert_global_to_local( void const * global_self, fd_system_program_instruction_allocate_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
7589 :
7590 : void fd_system_program_instruction_assign_with_seed_new( fd_system_program_instruction_assign_with_seed_t * self );
7591 : 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 );
7592 : void fd_system_program_instruction_assign_with_seed_destroy( fd_system_program_instruction_assign_with_seed_t * self );
7593 : 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 );
7594 : ulong fd_system_program_instruction_assign_with_seed_size( fd_system_program_instruction_assign_with_seed_t const * self );
7595 : ulong fd_system_program_instruction_assign_with_seed_footprint( void );
7596 : ulong fd_system_program_instruction_assign_with_seed_align( void );
7597 : int fd_system_program_instruction_assign_with_seed_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7598 : int fd_system_program_instruction_assign_with_seed_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7599 : void * fd_system_program_instruction_assign_with_seed_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7600 : void fd_system_program_instruction_assign_with_seed_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7601 : void * fd_system_program_instruction_assign_with_seed_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7602 : void fd_system_program_instruction_assign_with_seed_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7603 : int fd_system_program_instruction_assign_with_seed_convert_global_to_local( void const * global_self, fd_system_program_instruction_assign_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
7604 :
7605 : void fd_system_program_instruction_transfer_with_seed_new( fd_system_program_instruction_transfer_with_seed_t * self );
7606 : 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 );
7607 : void fd_system_program_instruction_transfer_with_seed_destroy( fd_system_program_instruction_transfer_with_seed_t * self );
7608 : 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 );
7609 : ulong fd_system_program_instruction_transfer_with_seed_size( fd_system_program_instruction_transfer_with_seed_t const * self );
7610 : ulong fd_system_program_instruction_transfer_with_seed_footprint( void );
7611 : ulong fd_system_program_instruction_transfer_with_seed_align( void );
7612 : int fd_system_program_instruction_transfer_with_seed_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7613 : int fd_system_program_instruction_transfer_with_seed_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7614 : void * fd_system_program_instruction_transfer_with_seed_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7615 : void fd_system_program_instruction_transfer_with_seed_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7616 : void * fd_system_program_instruction_transfer_with_seed_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7617 : void fd_system_program_instruction_transfer_with_seed_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7618 : int fd_system_program_instruction_transfer_with_seed_convert_global_to_local( void const * global_self, fd_system_program_instruction_transfer_with_seed_t * self, fd_bincode_decode_ctx_t * ctx );
7619 :
7620 : void fd_system_program_instruction_new_disc( fd_system_program_instruction_t * self, uint discriminant );
7621 : void fd_system_program_instruction_new( fd_system_program_instruction_t * self );
7622 : int fd_system_program_instruction_encode( fd_system_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
7623 : void fd_system_program_instruction_destroy( fd_system_program_instruction_t * self );
7624 : 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 );
7625 : ulong fd_system_program_instruction_size( fd_system_program_instruction_t const * self );
7626 : ulong fd_system_program_instruction_footprint( void );
7627 : ulong fd_system_program_instruction_align( void );
7628 : int fd_system_program_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7629 : int fd_system_program_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7630 : void * fd_system_program_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7631 : void fd_system_program_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7632 : void * fd_system_program_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7633 : void fd_system_program_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7634 : int fd_system_program_instruction_convert_global_to_local( void const * global_self, fd_system_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
7635 :
7636 : FD_FN_PURE uchar fd_system_program_instruction_is_create_account( fd_system_program_instruction_t const * self );
7637 : FD_FN_PURE uchar fd_system_program_instruction_is_assign( fd_system_program_instruction_t const * self );
7638 : FD_FN_PURE uchar fd_system_program_instruction_is_transfer( fd_system_program_instruction_t const * self );
7639 : FD_FN_PURE uchar fd_system_program_instruction_is_create_account_with_seed( fd_system_program_instruction_t const * self );
7640 : FD_FN_PURE uchar fd_system_program_instruction_is_advance_nonce_account( fd_system_program_instruction_t const * self );
7641 : FD_FN_PURE uchar fd_system_program_instruction_is_withdraw_nonce_account( fd_system_program_instruction_t const * self );
7642 : FD_FN_PURE uchar fd_system_program_instruction_is_initialize_nonce_account( fd_system_program_instruction_t const * self );
7643 : FD_FN_PURE uchar fd_system_program_instruction_is_authorize_nonce_account( fd_system_program_instruction_t const * self );
7644 : FD_FN_PURE uchar fd_system_program_instruction_is_allocate( fd_system_program_instruction_t const * self );
7645 : FD_FN_PURE uchar fd_system_program_instruction_is_allocate_with_seed( fd_system_program_instruction_t const * self );
7646 : FD_FN_PURE uchar fd_system_program_instruction_is_assign_with_seed( fd_system_program_instruction_t const * self );
7647 : FD_FN_PURE uchar fd_system_program_instruction_is_transfer_with_seed( fd_system_program_instruction_t const * self );
7648 : FD_FN_PURE uchar fd_system_program_instruction_is_upgrade_nonce_account( fd_system_program_instruction_t const * self );
7649 : enum {
7650 : fd_system_program_instruction_enum_create_account = 0,
7651 : fd_system_program_instruction_enum_assign = 1,
7652 : fd_system_program_instruction_enum_transfer = 2,
7653 : fd_system_program_instruction_enum_create_account_with_seed = 3,
7654 : fd_system_program_instruction_enum_advance_nonce_account = 4,
7655 : fd_system_program_instruction_enum_withdraw_nonce_account = 5,
7656 : fd_system_program_instruction_enum_initialize_nonce_account = 6,
7657 : fd_system_program_instruction_enum_authorize_nonce_account = 7,
7658 : fd_system_program_instruction_enum_allocate = 8,
7659 : fd_system_program_instruction_enum_allocate_with_seed = 9,
7660 : fd_system_program_instruction_enum_assign_with_seed = 10,
7661 : fd_system_program_instruction_enum_transfer_with_seed = 11,
7662 : fd_system_program_instruction_enum_upgrade_nonce_account = 12,
7663 : };
7664 : void fd_system_error_new_disc( fd_system_error_t * self, uint discriminant );
7665 : void fd_system_error_new( fd_system_error_t * self );
7666 : int fd_system_error_encode( fd_system_error_t const * self, fd_bincode_encode_ctx_t * ctx );
7667 : void fd_system_error_destroy( fd_system_error_t * self );
7668 : void fd_system_error_walk( void * w, fd_system_error_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7669 : ulong fd_system_error_size( fd_system_error_t const * self );
7670 : ulong fd_system_error_footprint( void );
7671 : ulong fd_system_error_align( void );
7672 : int fd_system_error_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7673 : int fd_system_error_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7674 : void * fd_system_error_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7675 : void fd_system_error_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7676 : void * fd_system_error_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7677 : void fd_system_error_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7678 : int fd_system_error_convert_global_to_local( void const * global_self, fd_system_error_t * self, fd_bincode_decode_ctx_t * ctx );
7679 :
7680 : FD_FN_PURE uchar fd_system_error_is_account_already_in_use( fd_system_error_t const * self );
7681 : FD_FN_PURE uchar fd_system_error_is_result_with_negative_lamports( fd_system_error_t const * self );
7682 : FD_FN_PURE uchar fd_system_error_is_invalid_program_id( fd_system_error_t const * self );
7683 : FD_FN_PURE uchar fd_system_error_is_invalid_account_data_length( fd_system_error_t const * self );
7684 : FD_FN_PURE uchar fd_system_error_is_max_seed_length_exceeded( fd_system_error_t const * self );
7685 : FD_FN_PURE uchar fd_system_error_is_address_with_seed_mismatch( fd_system_error_t const * self );
7686 : FD_FN_PURE uchar fd_system_error_is_nonce_no_recent_blockhashes( fd_system_error_t const * self );
7687 : FD_FN_PURE uchar fd_system_error_is_nonce_blockhash_not_expired( fd_system_error_t const * self );
7688 : FD_FN_PURE uchar fd_system_error_is_nonce_unexpected_blockhash_value( fd_system_error_t const * self );
7689 : enum {
7690 : fd_system_error_enum_account_already_in_use = 0,
7691 : fd_system_error_enum_result_with_negative_lamports = 1,
7692 : fd_system_error_enum_invalid_program_id = 2,
7693 : fd_system_error_enum_invalid_account_data_length = 3,
7694 : fd_system_error_enum_max_seed_length_exceeded = 4,
7695 : fd_system_error_enum_address_with_seed_mismatch = 5,
7696 : fd_system_error_enum_nonce_no_recent_blockhashes = 6,
7697 : fd_system_error_enum_nonce_blockhash_not_expired = 7,
7698 : fd_system_error_enum_nonce_unexpected_blockhash_value = 8,
7699 : };
7700 : void fd_stake_authorized_new( fd_stake_authorized_t * self );
7701 : int fd_stake_authorized_encode( fd_stake_authorized_t const * self, fd_bincode_encode_ctx_t * ctx );
7702 : void fd_stake_authorized_destroy( fd_stake_authorized_t * self );
7703 : void fd_stake_authorized_walk( void * w, fd_stake_authorized_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7704 : ulong fd_stake_authorized_size( fd_stake_authorized_t const * self );
7705 : ulong fd_stake_authorized_footprint( void );
7706 : ulong fd_stake_authorized_align( void );
7707 : int fd_stake_authorized_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7708 : int fd_stake_authorized_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7709 : void * fd_stake_authorized_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7710 : void fd_stake_authorized_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7711 : void * fd_stake_authorized_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7712 : void fd_stake_authorized_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7713 : int fd_stake_authorized_convert_global_to_local( void const * global_self, fd_stake_authorized_t * self, fd_bincode_decode_ctx_t * ctx );
7714 :
7715 : void fd_stake_lockup_new( fd_stake_lockup_t * self );
7716 : int fd_stake_lockup_encode( fd_stake_lockup_t const * self, fd_bincode_encode_ctx_t * ctx );
7717 : void fd_stake_lockup_destroy( fd_stake_lockup_t * self );
7718 : void fd_stake_lockup_walk( void * w, fd_stake_lockup_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7719 : ulong fd_stake_lockup_size( fd_stake_lockup_t const * self );
7720 : ulong fd_stake_lockup_footprint( void );
7721 : ulong fd_stake_lockup_align( void );
7722 : int fd_stake_lockup_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7723 : int fd_stake_lockup_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7724 : void * fd_stake_lockup_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7725 : void fd_stake_lockup_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7726 : void * fd_stake_lockup_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7727 : void fd_stake_lockup_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7728 : int fd_stake_lockup_convert_global_to_local( void const * global_self, fd_stake_lockup_t * self, fd_bincode_decode_ctx_t * ctx );
7729 :
7730 : void fd_stake_instruction_initialize_new( fd_stake_instruction_initialize_t * self );
7731 : int fd_stake_instruction_initialize_encode( fd_stake_instruction_initialize_t const * self, fd_bincode_encode_ctx_t * ctx );
7732 : void fd_stake_instruction_initialize_destroy( fd_stake_instruction_initialize_t * self );
7733 : 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 );
7734 : ulong fd_stake_instruction_initialize_size( fd_stake_instruction_initialize_t const * self );
7735 : ulong fd_stake_instruction_initialize_footprint( void );
7736 : ulong fd_stake_instruction_initialize_align( void );
7737 : int fd_stake_instruction_initialize_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7738 : int fd_stake_instruction_initialize_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7739 : void * fd_stake_instruction_initialize_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7740 : void fd_stake_instruction_initialize_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7741 : void * fd_stake_instruction_initialize_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7742 : void fd_stake_instruction_initialize_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7743 : int fd_stake_instruction_initialize_convert_global_to_local( void const * global_self, fd_stake_instruction_initialize_t * self, fd_bincode_decode_ctx_t * ctx );
7744 :
7745 : void fd_stake_lockup_custodian_args_new( fd_stake_lockup_custodian_args_t * self );
7746 : int fd_stake_lockup_custodian_args_encode( fd_stake_lockup_custodian_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7747 : void fd_stake_lockup_custodian_args_destroy( fd_stake_lockup_custodian_args_t * self );
7748 : 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 );
7749 : ulong fd_stake_lockup_custodian_args_size( fd_stake_lockup_custodian_args_t const * self );
7750 : ulong fd_stake_lockup_custodian_args_footprint( void );
7751 : ulong fd_stake_lockup_custodian_args_align( void );
7752 : int fd_stake_lockup_custodian_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7753 : int fd_stake_lockup_custodian_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7754 : void * fd_stake_lockup_custodian_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7755 : void fd_stake_lockup_custodian_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7756 : void * fd_stake_lockup_custodian_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7757 : void fd_stake_lockup_custodian_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7758 : int fd_stake_lockup_custodian_args_convert_global_to_local( void const * global_self, fd_stake_lockup_custodian_args_t * self, fd_bincode_decode_ctx_t * ctx );
7759 :
7760 : void fd_stake_authorize_new_disc( fd_stake_authorize_t * self, uint discriminant );
7761 : void fd_stake_authorize_new( fd_stake_authorize_t * self );
7762 : int fd_stake_authorize_encode( fd_stake_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
7763 : void fd_stake_authorize_destroy( fd_stake_authorize_t * self );
7764 : void fd_stake_authorize_walk( void * w, fd_stake_authorize_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7765 : ulong fd_stake_authorize_size( fd_stake_authorize_t const * self );
7766 : ulong fd_stake_authorize_footprint( void );
7767 : ulong fd_stake_authorize_align( void );
7768 : int fd_stake_authorize_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7769 : int fd_stake_authorize_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7770 : void * fd_stake_authorize_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7771 : void fd_stake_authorize_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7772 : void * fd_stake_authorize_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7773 : void fd_stake_authorize_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7774 : int fd_stake_authorize_convert_global_to_local( void const * global_self, fd_stake_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
7775 :
7776 : FD_FN_PURE uchar fd_stake_authorize_is_staker( fd_stake_authorize_t const * self );
7777 : FD_FN_PURE uchar fd_stake_authorize_is_withdrawer( fd_stake_authorize_t const * self );
7778 : enum {
7779 : fd_stake_authorize_enum_staker = 0,
7780 : fd_stake_authorize_enum_withdrawer = 1,
7781 : };
7782 : void fd_stake_instruction_authorize_new( fd_stake_instruction_authorize_t * self );
7783 : int fd_stake_instruction_authorize_encode( fd_stake_instruction_authorize_t const * self, fd_bincode_encode_ctx_t * ctx );
7784 : void fd_stake_instruction_authorize_destroy( fd_stake_instruction_authorize_t * self );
7785 : 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 );
7786 : ulong fd_stake_instruction_authorize_size( fd_stake_instruction_authorize_t const * self );
7787 : ulong fd_stake_instruction_authorize_footprint( void );
7788 : ulong fd_stake_instruction_authorize_align( void );
7789 : int fd_stake_instruction_authorize_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7790 : int fd_stake_instruction_authorize_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7791 : void * fd_stake_instruction_authorize_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7792 : void fd_stake_instruction_authorize_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7793 : void * fd_stake_instruction_authorize_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7794 : void fd_stake_instruction_authorize_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7795 : int fd_stake_instruction_authorize_convert_global_to_local( void const * global_self, fd_stake_instruction_authorize_t * self, fd_bincode_decode_ctx_t * ctx );
7796 :
7797 : void fd_authorize_with_seed_args_new( fd_authorize_with_seed_args_t * self );
7798 : int fd_authorize_with_seed_args_encode( fd_authorize_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7799 : void fd_authorize_with_seed_args_destroy( fd_authorize_with_seed_args_t * self );
7800 : 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 );
7801 : ulong fd_authorize_with_seed_args_size( fd_authorize_with_seed_args_t const * self );
7802 : ulong fd_authorize_with_seed_args_footprint( void );
7803 : ulong fd_authorize_with_seed_args_align( void );
7804 : int fd_authorize_with_seed_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7805 : int fd_authorize_with_seed_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7806 : void * fd_authorize_with_seed_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7807 : void fd_authorize_with_seed_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7808 : void * fd_authorize_with_seed_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7809 : void fd_authorize_with_seed_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7810 : int fd_authorize_with_seed_args_convert_global_to_local( void const * global_self, fd_authorize_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
7811 :
7812 : void fd_authorize_checked_with_seed_args_new( fd_authorize_checked_with_seed_args_t * self );
7813 : int fd_authorize_checked_with_seed_args_encode( fd_authorize_checked_with_seed_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7814 : void fd_authorize_checked_with_seed_args_destroy( fd_authorize_checked_with_seed_args_t * self );
7815 : 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 );
7816 : ulong fd_authorize_checked_with_seed_args_size( fd_authorize_checked_with_seed_args_t const * self );
7817 : ulong fd_authorize_checked_with_seed_args_footprint( void );
7818 : ulong fd_authorize_checked_with_seed_args_align( void );
7819 : int fd_authorize_checked_with_seed_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7820 : int fd_authorize_checked_with_seed_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7821 : void * fd_authorize_checked_with_seed_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7822 : void fd_authorize_checked_with_seed_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7823 : void * fd_authorize_checked_with_seed_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7824 : void fd_authorize_checked_with_seed_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7825 : int fd_authorize_checked_with_seed_args_convert_global_to_local( void const * global_self, fd_authorize_checked_with_seed_args_t * self, fd_bincode_decode_ctx_t * ctx );
7826 :
7827 : void fd_lockup_checked_args_new( fd_lockup_checked_args_t * self );
7828 : int fd_lockup_checked_args_encode( fd_lockup_checked_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7829 : void fd_lockup_checked_args_destroy( fd_lockup_checked_args_t * self );
7830 : 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 );
7831 : ulong fd_lockup_checked_args_size( fd_lockup_checked_args_t const * self );
7832 : ulong fd_lockup_checked_args_footprint( void );
7833 : ulong fd_lockup_checked_args_align( void );
7834 : int fd_lockup_checked_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7835 : int fd_lockup_checked_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7836 : void * fd_lockup_checked_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7837 : void fd_lockup_checked_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7838 : void * fd_lockup_checked_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7839 : void fd_lockup_checked_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7840 : int fd_lockup_checked_args_convert_global_to_local( void const * global_self, fd_lockup_checked_args_t * self, fd_bincode_decode_ctx_t * ctx );
7841 :
7842 : void fd_lockup_args_new( fd_lockup_args_t * self );
7843 : int fd_lockup_args_encode( fd_lockup_args_t const * self, fd_bincode_encode_ctx_t * ctx );
7844 : void fd_lockup_args_destroy( fd_lockup_args_t * self );
7845 : void fd_lockup_args_walk( void * w, fd_lockup_args_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7846 : ulong fd_lockup_args_size( fd_lockup_args_t const * self );
7847 : ulong fd_lockup_args_footprint( void );
7848 : ulong fd_lockup_args_align( void );
7849 : int fd_lockup_args_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7850 : int fd_lockup_args_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7851 : void * fd_lockup_args_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7852 : void fd_lockup_args_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7853 : void * fd_lockup_args_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7854 : void fd_lockup_args_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7855 : int fd_lockup_args_convert_global_to_local( void const * global_self, fd_lockup_args_t * self, fd_bincode_decode_ctx_t * ctx );
7856 :
7857 : void fd_stake_instruction_new_disc( fd_stake_instruction_t * self, uint discriminant );
7858 : void fd_stake_instruction_new( fd_stake_instruction_t * self );
7859 : int fd_stake_instruction_encode( fd_stake_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
7860 : void fd_stake_instruction_destroy( fd_stake_instruction_t * self );
7861 : void fd_stake_instruction_walk( void * w, fd_stake_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7862 : ulong fd_stake_instruction_size( fd_stake_instruction_t const * self );
7863 : ulong fd_stake_instruction_footprint( void );
7864 : ulong fd_stake_instruction_align( void );
7865 : int fd_stake_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7866 : int fd_stake_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7867 : void * fd_stake_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7868 : void fd_stake_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7869 : void * fd_stake_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7870 : void fd_stake_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7871 : int fd_stake_instruction_convert_global_to_local( void const * global_self, fd_stake_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
7872 :
7873 : FD_FN_PURE uchar fd_stake_instruction_is_initialize( fd_stake_instruction_t const * self );
7874 : FD_FN_PURE uchar fd_stake_instruction_is_authorize( fd_stake_instruction_t const * self );
7875 : FD_FN_PURE uchar fd_stake_instruction_is_delegate_stake( fd_stake_instruction_t const * self );
7876 : FD_FN_PURE uchar fd_stake_instruction_is_split( fd_stake_instruction_t const * self );
7877 : FD_FN_PURE uchar fd_stake_instruction_is_withdraw( fd_stake_instruction_t const * self );
7878 : FD_FN_PURE uchar fd_stake_instruction_is_deactivate( fd_stake_instruction_t const * self );
7879 : FD_FN_PURE uchar fd_stake_instruction_is_set_lockup( fd_stake_instruction_t const * self );
7880 : FD_FN_PURE uchar fd_stake_instruction_is_merge( fd_stake_instruction_t const * self );
7881 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_with_seed( fd_stake_instruction_t const * self );
7882 : FD_FN_PURE uchar fd_stake_instruction_is_initialize_checked( fd_stake_instruction_t const * self );
7883 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_checked( fd_stake_instruction_t const * self );
7884 : FD_FN_PURE uchar fd_stake_instruction_is_authorize_checked_with_seed( fd_stake_instruction_t const * self );
7885 : FD_FN_PURE uchar fd_stake_instruction_is_set_lockup_checked( fd_stake_instruction_t const * self );
7886 : FD_FN_PURE uchar fd_stake_instruction_is_get_minimum_delegation( fd_stake_instruction_t const * self );
7887 : FD_FN_PURE uchar fd_stake_instruction_is_deactivate_delinquent( fd_stake_instruction_t const * self );
7888 : FD_FN_PURE uchar fd_stake_instruction_is_redelegate( fd_stake_instruction_t const * self );
7889 : FD_FN_PURE uchar fd_stake_instruction_is_move_stake( fd_stake_instruction_t const * self );
7890 : FD_FN_PURE uchar fd_stake_instruction_is_move_lamports( fd_stake_instruction_t const * self );
7891 : enum {
7892 : fd_stake_instruction_enum_initialize = 0,
7893 : fd_stake_instruction_enum_authorize = 1,
7894 : fd_stake_instruction_enum_delegate_stake = 2,
7895 : fd_stake_instruction_enum_split = 3,
7896 : fd_stake_instruction_enum_withdraw = 4,
7897 : fd_stake_instruction_enum_deactivate = 5,
7898 : fd_stake_instruction_enum_set_lockup = 6,
7899 : fd_stake_instruction_enum_merge = 7,
7900 : fd_stake_instruction_enum_authorize_with_seed = 8,
7901 : fd_stake_instruction_enum_initialize_checked = 9,
7902 : fd_stake_instruction_enum_authorize_checked = 10,
7903 : fd_stake_instruction_enum_authorize_checked_with_seed = 11,
7904 : fd_stake_instruction_enum_set_lockup_checked = 12,
7905 : fd_stake_instruction_enum_get_minimum_delegation = 13,
7906 : fd_stake_instruction_enum_deactivate_delinquent = 14,
7907 : fd_stake_instruction_enum_redelegate = 15,
7908 : fd_stake_instruction_enum_move_stake = 16,
7909 : fd_stake_instruction_enum_move_lamports = 17,
7910 : };
7911 : void fd_stake_meta_new( fd_stake_meta_t * self );
7912 : int fd_stake_meta_encode( fd_stake_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
7913 : void fd_stake_meta_destroy( fd_stake_meta_t * self );
7914 : void fd_stake_meta_walk( void * w, fd_stake_meta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7915 : ulong fd_stake_meta_size( fd_stake_meta_t const * self );
7916 : ulong fd_stake_meta_footprint( void );
7917 : ulong fd_stake_meta_align( void );
7918 : int fd_stake_meta_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7919 : int fd_stake_meta_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7920 : void * fd_stake_meta_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7921 : void fd_stake_meta_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7922 : void * fd_stake_meta_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7923 : void fd_stake_meta_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7924 : int fd_stake_meta_convert_global_to_local( void const * global_self, fd_stake_meta_t * self, fd_bincode_decode_ctx_t * ctx );
7925 :
7926 : void fd_stake_flags_new( fd_stake_flags_t * self );
7927 : int fd_stake_flags_encode( fd_stake_flags_t const * self, fd_bincode_encode_ctx_t * ctx );
7928 : void fd_stake_flags_destroy( fd_stake_flags_t * self );
7929 : void fd_stake_flags_walk( void * w, fd_stake_flags_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
7930 : ulong fd_stake_flags_size( fd_stake_flags_t const * self );
7931 : ulong fd_stake_flags_footprint( void );
7932 : ulong fd_stake_flags_align( void );
7933 : int fd_stake_flags_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7934 : int fd_stake_flags_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7935 : void * fd_stake_flags_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7936 : void fd_stake_flags_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7937 : void * fd_stake_flags_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7938 : void fd_stake_flags_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7939 : int fd_stake_flags_convert_global_to_local( void const * global_self, fd_stake_flags_t * self, fd_bincode_decode_ctx_t * ctx );
7940 :
7941 : void fd_stake_state_v2_initialized_new( fd_stake_state_v2_initialized_t * self );
7942 : int fd_stake_state_v2_initialized_encode( fd_stake_state_v2_initialized_t const * self, fd_bincode_encode_ctx_t * ctx );
7943 : void fd_stake_state_v2_initialized_destroy( fd_stake_state_v2_initialized_t * self );
7944 : 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 );
7945 : ulong fd_stake_state_v2_initialized_size( fd_stake_state_v2_initialized_t const * self );
7946 : ulong fd_stake_state_v2_initialized_footprint( void );
7947 : ulong fd_stake_state_v2_initialized_align( void );
7948 : int fd_stake_state_v2_initialized_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7949 : int fd_stake_state_v2_initialized_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7950 : void * fd_stake_state_v2_initialized_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7951 : void fd_stake_state_v2_initialized_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7952 : void * fd_stake_state_v2_initialized_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7953 : void fd_stake_state_v2_initialized_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7954 : int fd_stake_state_v2_initialized_convert_global_to_local( void const * global_self, fd_stake_state_v2_initialized_t * self, fd_bincode_decode_ctx_t * ctx );
7955 :
7956 : void fd_stake_state_v2_stake_new( fd_stake_state_v2_stake_t * self );
7957 : int fd_stake_state_v2_stake_encode( fd_stake_state_v2_stake_t const * self, fd_bincode_encode_ctx_t * ctx );
7958 : void fd_stake_state_v2_stake_destroy( fd_stake_state_v2_stake_t * self );
7959 : 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 );
7960 : ulong fd_stake_state_v2_stake_size( fd_stake_state_v2_stake_t const * self );
7961 : ulong fd_stake_state_v2_stake_footprint( void );
7962 : ulong fd_stake_state_v2_stake_align( void );
7963 : int fd_stake_state_v2_stake_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7964 : int fd_stake_state_v2_stake_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7965 : void * fd_stake_state_v2_stake_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7966 : void fd_stake_state_v2_stake_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7967 : void * fd_stake_state_v2_stake_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7968 : void fd_stake_state_v2_stake_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7969 : int fd_stake_state_v2_stake_convert_global_to_local( void const * global_self, fd_stake_state_v2_stake_t * self, fd_bincode_decode_ctx_t * ctx );
7970 :
7971 : void fd_stake_state_v2_new_disc( fd_stake_state_v2_t * self, uint discriminant );
7972 : void fd_stake_state_v2_new( fd_stake_state_v2_t * self );
7973 : int fd_stake_state_v2_encode( fd_stake_state_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
7974 : void fd_stake_state_v2_destroy( fd_stake_state_v2_t * self );
7975 : 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 );
7976 : ulong fd_stake_state_v2_size( fd_stake_state_v2_t const * self );
7977 : ulong fd_stake_state_v2_footprint( void );
7978 : ulong fd_stake_state_v2_align( void );
7979 : int fd_stake_state_v2_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7980 : int fd_stake_state_v2_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
7981 : void * fd_stake_state_v2_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
7982 : void fd_stake_state_v2_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7983 : void * fd_stake_state_v2_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
7984 : void fd_stake_state_v2_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
7985 : int fd_stake_state_v2_convert_global_to_local( void const * global_self, fd_stake_state_v2_t * self, fd_bincode_decode_ctx_t * ctx );
7986 :
7987 : FD_FN_PURE uchar fd_stake_state_v2_is_uninitialized( fd_stake_state_v2_t const * self );
7988 : FD_FN_PURE uchar fd_stake_state_v2_is_initialized( fd_stake_state_v2_t const * self );
7989 : FD_FN_PURE uchar fd_stake_state_v2_is_stake( fd_stake_state_v2_t const * self );
7990 : FD_FN_PURE uchar fd_stake_state_v2_is_rewards_pool( fd_stake_state_v2_t const * self );
7991 : enum {
7992 : fd_stake_state_v2_enum_uninitialized = 0,
7993 : fd_stake_state_v2_enum_initialized = 1,
7994 : fd_stake_state_v2_enum_stake = 2,
7995 : fd_stake_state_v2_enum_rewards_pool = 3,
7996 : };
7997 : void fd_nonce_data_new( fd_nonce_data_t * self );
7998 : int fd_nonce_data_encode( fd_nonce_data_t const * self, fd_bincode_encode_ctx_t * ctx );
7999 : void fd_nonce_data_destroy( fd_nonce_data_t * self );
8000 : void fd_nonce_data_walk( void * w, fd_nonce_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8001 : ulong fd_nonce_data_size( fd_nonce_data_t const * self );
8002 : ulong fd_nonce_data_footprint( void );
8003 : ulong fd_nonce_data_align( void );
8004 : int fd_nonce_data_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8005 : int fd_nonce_data_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8006 : void * fd_nonce_data_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8007 : void fd_nonce_data_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8008 : void * fd_nonce_data_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8009 : void fd_nonce_data_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8010 : int fd_nonce_data_convert_global_to_local( void const * global_self, fd_nonce_data_t * self, fd_bincode_decode_ctx_t * ctx );
8011 :
8012 : void fd_nonce_state_new_disc( fd_nonce_state_t * self, uint discriminant );
8013 : void fd_nonce_state_new( fd_nonce_state_t * self );
8014 : int fd_nonce_state_encode( fd_nonce_state_t const * self, fd_bincode_encode_ctx_t * ctx );
8015 : void fd_nonce_state_destroy( fd_nonce_state_t * self );
8016 : void fd_nonce_state_walk( void * w, fd_nonce_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8017 : ulong fd_nonce_state_size( fd_nonce_state_t const * self );
8018 : ulong fd_nonce_state_footprint( void );
8019 : ulong fd_nonce_state_align( void );
8020 : int fd_nonce_state_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8021 : int fd_nonce_state_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8022 : void * fd_nonce_state_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8023 : void fd_nonce_state_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8024 : void * fd_nonce_state_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8025 : void fd_nonce_state_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8026 : int fd_nonce_state_convert_global_to_local( void const * global_self, fd_nonce_state_t * self, fd_bincode_decode_ctx_t * ctx );
8027 :
8028 : FD_FN_PURE uchar fd_nonce_state_is_uninitialized( fd_nonce_state_t const * self );
8029 : FD_FN_PURE uchar fd_nonce_state_is_initialized( fd_nonce_state_t const * self );
8030 : enum {
8031 : fd_nonce_state_enum_uninitialized = 0,
8032 : fd_nonce_state_enum_initialized = 1,
8033 : };
8034 : void fd_nonce_state_versions_new_disc( fd_nonce_state_versions_t * self, uint discriminant );
8035 : void fd_nonce_state_versions_new( fd_nonce_state_versions_t * self );
8036 : int fd_nonce_state_versions_encode( fd_nonce_state_versions_t const * self, fd_bincode_encode_ctx_t * ctx );
8037 : void fd_nonce_state_versions_destroy( fd_nonce_state_versions_t * self );
8038 : 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 );
8039 : ulong fd_nonce_state_versions_size( fd_nonce_state_versions_t const * self );
8040 : ulong fd_nonce_state_versions_footprint( void );
8041 : ulong fd_nonce_state_versions_align( void );
8042 : int fd_nonce_state_versions_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8043 : int fd_nonce_state_versions_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8044 : void * fd_nonce_state_versions_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8045 : void fd_nonce_state_versions_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8046 : void * fd_nonce_state_versions_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8047 : void fd_nonce_state_versions_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8048 : int fd_nonce_state_versions_convert_global_to_local( void const * global_self, fd_nonce_state_versions_t * self, fd_bincode_decode_ctx_t * ctx );
8049 :
8050 : FD_FN_PURE uchar fd_nonce_state_versions_is_legacy( fd_nonce_state_versions_t const * self );
8051 : FD_FN_PURE uchar fd_nonce_state_versions_is_current( fd_nonce_state_versions_t const * self );
8052 : enum {
8053 : fd_nonce_state_versions_enum_legacy = 0,
8054 : fd_nonce_state_versions_enum_current = 1,
8055 : };
8056 : void fd_compute_budget_program_instruction_request_units_deprecated_new( fd_compute_budget_program_instruction_request_units_deprecated_t * self );
8057 : 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 );
8058 : void fd_compute_budget_program_instruction_request_units_deprecated_destroy( fd_compute_budget_program_instruction_request_units_deprecated_t * self );
8059 : 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 );
8060 : ulong fd_compute_budget_program_instruction_request_units_deprecated_size( fd_compute_budget_program_instruction_request_units_deprecated_t const * self );
8061 : ulong fd_compute_budget_program_instruction_request_units_deprecated_footprint( void );
8062 : ulong fd_compute_budget_program_instruction_request_units_deprecated_align( void );
8063 : int fd_compute_budget_program_instruction_request_units_deprecated_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8064 : int fd_compute_budget_program_instruction_request_units_deprecated_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8065 : void * fd_compute_budget_program_instruction_request_units_deprecated_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8066 : void fd_compute_budget_program_instruction_request_units_deprecated_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8067 : void * fd_compute_budget_program_instruction_request_units_deprecated_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8068 : void fd_compute_budget_program_instruction_request_units_deprecated_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8069 : int fd_compute_budget_program_instruction_request_units_deprecated_convert_global_to_local( void const * global_self, fd_compute_budget_program_instruction_request_units_deprecated_t * self, fd_bincode_decode_ctx_t * ctx );
8070 :
8071 : void fd_compute_budget_program_instruction_new_disc( fd_compute_budget_program_instruction_t * self, uint discriminant );
8072 : void fd_compute_budget_program_instruction_new( fd_compute_budget_program_instruction_t * self );
8073 : int fd_compute_budget_program_instruction_encode( fd_compute_budget_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
8074 : void fd_compute_budget_program_instruction_destroy( fd_compute_budget_program_instruction_t * self );
8075 : 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 );
8076 : ulong fd_compute_budget_program_instruction_size( fd_compute_budget_program_instruction_t const * self );
8077 : ulong fd_compute_budget_program_instruction_footprint( void );
8078 : ulong fd_compute_budget_program_instruction_align( void );
8079 : int fd_compute_budget_program_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8080 : int fd_compute_budget_program_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8081 : void * fd_compute_budget_program_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8082 : void fd_compute_budget_program_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8083 : void * fd_compute_budget_program_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8084 : void fd_compute_budget_program_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8085 : int fd_compute_budget_program_instruction_convert_global_to_local( void const * global_self, fd_compute_budget_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
8086 :
8087 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_request_units_deprecated( fd_compute_budget_program_instruction_t const * self );
8088 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_request_heap_frame( fd_compute_budget_program_instruction_t const * self );
8089 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_compute_unit_limit( fd_compute_budget_program_instruction_t const * self );
8090 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_compute_unit_price( fd_compute_budget_program_instruction_t const * self );
8091 : FD_FN_PURE uchar fd_compute_budget_program_instruction_is_set_loaded_accounts_data_size_limit( fd_compute_budget_program_instruction_t const * self );
8092 : enum {
8093 : fd_compute_budget_program_instruction_enum_request_units_deprecated = 0,
8094 : fd_compute_budget_program_instruction_enum_request_heap_frame = 1,
8095 : fd_compute_budget_program_instruction_enum_set_compute_unit_limit = 2,
8096 : fd_compute_budget_program_instruction_enum_set_compute_unit_price = 3,
8097 : fd_compute_budget_program_instruction_enum_set_loaded_accounts_data_size_limit = 4,
8098 : };
8099 : void fd_config_keys_new( fd_config_keys_t * self );
8100 : int fd_config_keys_encode( fd_config_keys_t const * self, fd_bincode_encode_ctx_t * ctx );
8101 : void fd_config_keys_destroy( fd_config_keys_t * self );
8102 : void fd_config_keys_walk( void * w, fd_config_keys_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8103 : ulong fd_config_keys_size( fd_config_keys_t const * self );
8104 : ulong fd_config_keys_footprint( void );
8105 : ulong fd_config_keys_align( void );
8106 : int fd_config_keys_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8107 : int fd_config_keys_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8108 : void * fd_config_keys_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8109 : void fd_config_keys_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8110 : void * fd_config_keys_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8111 : void fd_config_keys_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8112 : int fd_config_keys_convert_global_to_local( void const * global_self, fd_config_keys_t * self, fd_bincode_decode_ctx_t * ctx );
8113 :
8114 : void fd_bpf_loader_program_instruction_write_new( fd_bpf_loader_program_instruction_write_t * self );
8115 : int fd_bpf_loader_program_instruction_write_encode( fd_bpf_loader_program_instruction_write_t const * self, fd_bincode_encode_ctx_t * ctx );
8116 : void fd_bpf_loader_program_instruction_write_destroy( fd_bpf_loader_program_instruction_write_t * self );
8117 : 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 );
8118 : ulong fd_bpf_loader_program_instruction_write_size( fd_bpf_loader_program_instruction_write_t const * self );
8119 : ulong fd_bpf_loader_program_instruction_write_footprint( void );
8120 : ulong fd_bpf_loader_program_instruction_write_align( void );
8121 : int fd_bpf_loader_program_instruction_write_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8122 : int fd_bpf_loader_program_instruction_write_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8123 : void * fd_bpf_loader_program_instruction_write_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8124 : void fd_bpf_loader_program_instruction_write_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8125 : void * fd_bpf_loader_program_instruction_write_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8126 : void fd_bpf_loader_program_instruction_write_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8127 : int fd_bpf_loader_program_instruction_write_convert_global_to_local( void const * global_self, fd_bpf_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
8128 :
8129 : void fd_bpf_loader_program_instruction_new_disc( fd_bpf_loader_program_instruction_t * self, uint discriminant );
8130 : void fd_bpf_loader_program_instruction_new( fd_bpf_loader_program_instruction_t * self );
8131 : int fd_bpf_loader_program_instruction_encode( fd_bpf_loader_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
8132 : void fd_bpf_loader_program_instruction_destroy( fd_bpf_loader_program_instruction_t * self );
8133 : 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 );
8134 : ulong fd_bpf_loader_program_instruction_size( fd_bpf_loader_program_instruction_t const * self );
8135 : ulong fd_bpf_loader_program_instruction_footprint( void );
8136 : ulong fd_bpf_loader_program_instruction_align( void );
8137 : int fd_bpf_loader_program_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8138 : int fd_bpf_loader_program_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8139 : void * fd_bpf_loader_program_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8140 : void fd_bpf_loader_program_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8141 : void * fd_bpf_loader_program_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8142 : void fd_bpf_loader_program_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8143 : int fd_bpf_loader_program_instruction_convert_global_to_local( void const * global_self, fd_bpf_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
8144 :
8145 : FD_FN_PURE uchar fd_bpf_loader_program_instruction_is_write( fd_bpf_loader_program_instruction_t const * self );
8146 : FD_FN_PURE uchar fd_bpf_loader_program_instruction_is_finalize( fd_bpf_loader_program_instruction_t const * self );
8147 : enum {
8148 : fd_bpf_loader_program_instruction_enum_write = 0,
8149 : fd_bpf_loader_program_instruction_enum_finalize = 1,
8150 : };
8151 : void fd_loader_v4_program_instruction_write_new( fd_loader_v4_program_instruction_write_t * self );
8152 : int fd_loader_v4_program_instruction_write_encode( fd_loader_v4_program_instruction_write_t const * self, fd_bincode_encode_ctx_t * ctx );
8153 : void fd_loader_v4_program_instruction_write_destroy( fd_loader_v4_program_instruction_write_t * self );
8154 : void fd_loader_v4_program_instruction_write_walk( void * w, fd_loader_v4_program_instruction_write_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8155 : ulong fd_loader_v4_program_instruction_write_size( fd_loader_v4_program_instruction_write_t const * self );
8156 : ulong fd_loader_v4_program_instruction_write_footprint( void );
8157 : ulong fd_loader_v4_program_instruction_write_align( void );
8158 : int fd_loader_v4_program_instruction_write_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8159 : int fd_loader_v4_program_instruction_write_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8160 : void * fd_loader_v4_program_instruction_write_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8161 : void fd_loader_v4_program_instruction_write_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8162 : void * fd_loader_v4_program_instruction_write_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8163 : void fd_loader_v4_program_instruction_write_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8164 : int fd_loader_v4_program_instruction_write_convert_global_to_local( void const * global_self, fd_loader_v4_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
8165 :
8166 : void fd_loader_v4_program_instruction_truncate_new( fd_loader_v4_program_instruction_truncate_t * self );
8167 : int fd_loader_v4_program_instruction_truncate_encode( fd_loader_v4_program_instruction_truncate_t const * self, fd_bincode_encode_ctx_t * ctx );
8168 : void fd_loader_v4_program_instruction_truncate_destroy( fd_loader_v4_program_instruction_truncate_t * self );
8169 : void fd_loader_v4_program_instruction_truncate_walk( void * w, fd_loader_v4_program_instruction_truncate_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8170 : ulong fd_loader_v4_program_instruction_truncate_size( fd_loader_v4_program_instruction_truncate_t const * self );
8171 : ulong fd_loader_v4_program_instruction_truncate_footprint( void );
8172 : ulong fd_loader_v4_program_instruction_truncate_align( void );
8173 : int fd_loader_v4_program_instruction_truncate_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8174 : int fd_loader_v4_program_instruction_truncate_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8175 : void * fd_loader_v4_program_instruction_truncate_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8176 : void fd_loader_v4_program_instruction_truncate_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8177 : void * fd_loader_v4_program_instruction_truncate_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8178 : void fd_loader_v4_program_instruction_truncate_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8179 : int fd_loader_v4_program_instruction_truncate_convert_global_to_local( void const * global_self, fd_loader_v4_program_instruction_truncate_t * self, fd_bincode_decode_ctx_t * ctx );
8180 :
8181 : void fd_loader_v4_program_instruction_new_disc( fd_loader_v4_program_instruction_t * self, uint discriminant );
8182 : void fd_loader_v4_program_instruction_new( fd_loader_v4_program_instruction_t * self );
8183 : int fd_loader_v4_program_instruction_encode( fd_loader_v4_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
8184 : void fd_loader_v4_program_instruction_destroy( fd_loader_v4_program_instruction_t * self );
8185 : void fd_loader_v4_program_instruction_walk( void * w, fd_loader_v4_program_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8186 : ulong fd_loader_v4_program_instruction_size( fd_loader_v4_program_instruction_t const * self );
8187 : ulong fd_loader_v4_program_instruction_footprint( void );
8188 : ulong fd_loader_v4_program_instruction_align( void );
8189 : int fd_loader_v4_program_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8190 : int fd_loader_v4_program_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8191 : void * fd_loader_v4_program_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8192 : void fd_loader_v4_program_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8193 : void * fd_loader_v4_program_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8194 : void fd_loader_v4_program_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8195 : int fd_loader_v4_program_instruction_convert_global_to_local( void const * global_self, fd_loader_v4_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
8196 :
8197 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_write( fd_loader_v4_program_instruction_t const * self );
8198 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_truncate( fd_loader_v4_program_instruction_t const * self );
8199 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_deploy( fd_loader_v4_program_instruction_t const * self );
8200 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_retract( fd_loader_v4_program_instruction_t const * self );
8201 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_transfer_authority( fd_loader_v4_program_instruction_t const * self );
8202 : FD_FN_PURE uchar fd_loader_v4_program_instruction_is_finalize( fd_loader_v4_program_instruction_t const * self );
8203 : enum {
8204 : fd_loader_v4_program_instruction_enum_write = 0,
8205 : fd_loader_v4_program_instruction_enum_truncate = 1,
8206 : fd_loader_v4_program_instruction_enum_deploy = 2,
8207 : fd_loader_v4_program_instruction_enum_retract = 3,
8208 : fd_loader_v4_program_instruction_enum_transfer_authority = 4,
8209 : fd_loader_v4_program_instruction_enum_finalize = 5,
8210 : };
8211 : void fd_bpf_upgradeable_loader_program_instruction_write_new( fd_bpf_upgradeable_loader_program_instruction_write_t * self );
8212 : 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 );
8213 : void fd_bpf_upgradeable_loader_program_instruction_write_destroy( fd_bpf_upgradeable_loader_program_instruction_write_t * self );
8214 : 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 );
8215 : ulong fd_bpf_upgradeable_loader_program_instruction_write_size( fd_bpf_upgradeable_loader_program_instruction_write_t const * self );
8216 : ulong fd_bpf_upgradeable_loader_program_instruction_write_footprint( void );
8217 : ulong fd_bpf_upgradeable_loader_program_instruction_write_align( void );
8218 : int fd_bpf_upgradeable_loader_program_instruction_write_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8219 : int fd_bpf_upgradeable_loader_program_instruction_write_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8220 : void * fd_bpf_upgradeable_loader_program_instruction_write_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8221 : void fd_bpf_upgradeable_loader_program_instruction_write_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8222 : void * fd_bpf_upgradeable_loader_program_instruction_write_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8223 : void fd_bpf_upgradeable_loader_program_instruction_write_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8224 : int fd_bpf_upgradeable_loader_program_instruction_write_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_program_instruction_write_t * self, fd_bincode_decode_ctx_t * ctx );
8225 :
8226 : 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 );
8227 : 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 );
8228 : 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 );
8229 : 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 );
8230 : 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 );
8231 : ulong fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_footprint( void );
8232 : ulong fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_align( void );
8233 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8234 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8235 : void * fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8236 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8237 : void * fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8238 : void fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8239 : int fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_program_instruction_deploy_with_max_data_len_t * self, fd_bincode_decode_ctx_t * ctx );
8240 :
8241 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_new( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self );
8242 : 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 );
8243 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_destroy( fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self );
8244 : 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 );
8245 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_size( fd_bpf_upgradeable_loader_program_instruction_extend_program_t const * self );
8246 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_footprint( void );
8247 : ulong fd_bpf_upgradeable_loader_program_instruction_extend_program_align( void );
8248 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8249 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8250 : void * fd_bpf_upgradeable_loader_program_instruction_extend_program_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8251 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8252 : void * fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8253 : void fd_bpf_upgradeable_loader_program_instruction_extend_program_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8254 : int fd_bpf_upgradeable_loader_program_instruction_extend_program_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_program_instruction_extend_program_t * self, fd_bincode_decode_ctx_t * ctx );
8255 :
8256 : void fd_bpf_upgradeable_loader_program_instruction_new_disc( fd_bpf_upgradeable_loader_program_instruction_t * self, uint discriminant );
8257 : void fd_bpf_upgradeable_loader_program_instruction_new( fd_bpf_upgradeable_loader_program_instruction_t * self );
8258 : int fd_bpf_upgradeable_loader_program_instruction_encode( fd_bpf_upgradeable_loader_program_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
8259 : void fd_bpf_upgradeable_loader_program_instruction_destroy( fd_bpf_upgradeable_loader_program_instruction_t * self );
8260 : 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 );
8261 : ulong fd_bpf_upgradeable_loader_program_instruction_size( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8262 : ulong fd_bpf_upgradeable_loader_program_instruction_footprint( void );
8263 : ulong fd_bpf_upgradeable_loader_program_instruction_align( void );
8264 : int fd_bpf_upgradeable_loader_program_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8265 : int fd_bpf_upgradeable_loader_program_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8266 : void * fd_bpf_upgradeable_loader_program_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8267 : void fd_bpf_upgradeable_loader_program_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8268 : void * fd_bpf_upgradeable_loader_program_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8269 : void fd_bpf_upgradeable_loader_program_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8270 : int fd_bpf_upgradeable_loader_program_instruction_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_program_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
8271 :
8272 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_initialize_buffer( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8273 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_write( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8274 : 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 );
8275 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_upgrade( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8276 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_set_authority( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8277 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_close( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8278 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_extend_program( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8279 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_program_instruction_is_set_authority_checked( fd_bpf_upgradeable_loader_program_instruction_t const * self );
8280 : enum {
8281 : fd_bpf_upgradeable_loader_program_instruction_enum_initialize_buffer = 0,
8282 : fd_bpf_upgradeable_loader_program_instruction_enum_write = 1,
8283 : fd_bpf_upgradeable_loader_program_instruction_enum_deploy_with_max_data_len = 2,
8284 : fd_bpf_upgradeable_loader_program_instruction_enum_upgrade = 3,
8285 : fd_bpf_upgradeable_loader_program_instruction_enum_set_authority = 4,
8286 : fd_bpf_upgradeable_loader_program_instruction_enum_close = 5,
8287 : fd_bpf_upgradeable_loader_program_instruction_enum_extend_program = 6,
8288 : fd_bpf_upgradeable_loader_program_instruction_enum_set_authority_checked = 7,
8289 : };
8290 : void fd_bpf_upgradeable_loader_state_buffer_new( fd_bpf_upgradeable_loader_state_buffer_t * self );
8291 : int fd_bpf_upgradeable_loader_state_buffer_encode( fd_bpf_upgradeable_loader_state_buffer_t const * self, fd_bincode_encode_ctx_t * ctx );
8292 : void fd_bpf_upgradeable_loader_state_buffer_destroy( fd_bpf_upgradeable_loader_state_buffer_t * self );
8293 : 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 );
8294 : ulong fd_bpf_upgradeable_loader_state_buffer_size( fd_bpf_upgradeable_loader_state_buffer_t const * self );
8295 : ulong fd_bpf_upgradeable_loader_state_buffer_footprint( void );
8296 : ulong fd_bpf_upgradeable_loader_state_buffer_align( void );
8297 : int fd_bpf_upgradeable_loader_state_buffer_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8298 : int fd_bpf_upgradeable_loader_state_buffer_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8299 : void * fd_bpf_upgradeable_loader_state_buffer_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8300 : void fd_bpf_upgradeable_loader_state_buffer_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8301 : void * fd_bpf_upgradeable_loader_state_buffer_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8302 : void fd_bpf_upgradeable_loader_state_buffer_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8303 : int fd_bpf_upgradeable_loader_state_buffer_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_state_buffer_t * self, fd_bincode_decode_ctx_t * ctx );
8304 :
8305 : void fd_bpf_upgradeable_loader_state_program_new( fd_bpf_upgradeable_loader_state_program_t * self );
8306 : int fd_bpf_upgradeable_loader_state_program_encode( fd_bpf_upgradeable_loader_state_program_t const * self, fd_bincode_encode_ctx_t * ctx );
8307 : void fd_bpf_upgradeable_loader_state_program_destroy( fd_bpf_upgradeable_loader_state_program_t * self );
8308 : 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 );
8309 : ulong fd_bpf_upgradeable_loader_state_program_size( fd_bpf_upgradeable_loader_state_program_t const * self );
8310 : ulong fd_bpf_upgradeable_loader_state_program_footprint( void );
8311 : ulong fd_bpf_upgradeable_loader_state_program_align( void );
8312 : int fd_bpf_upgradeable_loader_state_program_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8313 : int fd_bpf_upgradeable_loader_state_program_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8314 : void * fd_bpf_upgradeable_loader_state_program_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8315 : void fd_bpf_upgradeable_loader_state_program_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8316 : void * fd_bpf_upgradeable_loader_state_program_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8317 : void fd_bpf_upgradeable_loader_state_program_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8318 : int fd_bpf_upgradeable_loader_state_program_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_state_program_t * self, fd_bincode_decode_ctx_t * ctx );
8319 :
8320 : void fd_bpf_upgradeable_loader_state_program_data_new( fd_bpf_upgradeable_loader_state_program_data_t * self );
8321 : 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 );
8322 : void fd_bpf_upgradeable_loader_state_program_data_destroy( fd_bpf_upgradeable_loader_state_program_data_t * self );
8323 : 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 );
8324 : ulong fd_bpf_upgradeable_loader_state_program_data_size( fd_bpf_upgradeable_loader_state_program_data_t const * self );
8325 : ulong fd_bpf_upgradeable_loader_state_program_data_footprint( void );
8326 : ulong fd_bpf_upgradeable_loader_state_program_data_align( void );
8327 : int fd_bpf_upgradeable_loader_state_program_data_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8328 : int fd_bpf_upgradeable_loader_state_program_data_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8329 : void * fd_bpf_upgradeable_loader_state_program_data_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8330 : void fd_bpf_upgradeable_loader_state_program_data_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8331 : void * fd_bpf_upgradeable_loader_state_program_data_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8332 : void fd_bpf_upgradeable_loader_state_program_data_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8333 : int fd_bpf_upgradeable_loader_state_program_data_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_state_program_data_t * self, fd_bincode_decode_ctx_t * ctx );
8334 :
8335 : void fd_bpf_upgradeable_loader_state_new_disc( fd_bpf_upgradeable_loader_state_t * self, uint discriminant );
8336 : void fd_bpf_upgradeable_loader_state_new( fd_bpf_upgradeable_loader_state_t * self );
8337 : int fd_bpf_upgradeable_loader_state_encode( fd_bpf_upgradeable_loader_state_t const * self, fd_bincode_encode_ctx_t * ctx );
8338 : void fd_bpf_upgradeable_loader_state_destroy( fd_bpf_upgradeable_loader_state_t * self );
8339 : 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 );
8340 : ulong fd_bpf_upgradeable_loader_state_size( fd_bpf_upgradeable_loader_state_t const * self );
8341 : ulong fd_bpf_upgradeable_loader_state_footprint( void );
8342 : ulong fd_bpf_upgradeable_loader_state_align( void );
8343 : int fd_bpf_upgradeable_loader_state_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8344 : int fd_bpf_upgradeable_loader_state_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8345 : void * fd_bpf_upgradeable_loader_state_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8346 : void fd_bpf_upgradeable_loader_state_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8347 : void * fd_bpf_upgradeable_loader_state_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8348 : void fd_bpf_upgradeable_loader_state_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8349 : int fd_bpf_upgradeable_loader_state_convert_global_to_local( void const * global_self, fd_bpf_upgradeable_loader_state_t * self, fd_bincode_decode_ctx_t * ctx );
8350 :
8351 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_uninitialized( fd_bpf_upgradeable_loader_state_t const * self );
8352 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_buffer( fd_bpf_upgradeable_loader_state_t const * self );
8353 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_program( fd_bpf_upgradeable_loader_state_t const * self );
8354 : FD_FN_PURE uchar fd_bpf_upgradeable_loader_state_is_program_data( fd_bpf_upgradeable_loader_state_t const * self );
8355 : enum {
8356 : fd_bpf_upgradeable_loader_state_enum_uninitialized = 0,
8357 : fd_bpf_upgradeable_loader_state_enum_buffer = 1,
8358 : fd_bpf_upgradeable_loader_state_enum_program = 2,
8359 : fd_bpf_upgradeable_loader_state_enum_program_data = 3,
8360 : };
8361 : void fd_loader_v4_state_new( fd_loader_v4_state_t * self );
8362 : int fd_loader_v4_state_encode( fd_loader_v4_state_t const * self, fd_bincode_encode_ctx_t * ctx );
8363 : void fd_loader_v4_state_destroy( fd_loader_v4_state_t * self );
8364 : void fd_loader_v4_state_walk( void * w, fd_loader_v4_state_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8365 : ulong fd_loader_v4_state_size( fd_loader_v4_state_t const * self );
8366 : ulong fd_loader_v4_state_footprint( void );
8367 : ulong fd_loader_v4_state_align( void );
8368 : int fd_loader_v4_state_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8369 : int fd_loader_v4_state_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8370 : void * fd_loader_v4_state_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8371 : void fd_loader_v4_state_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8372 : void * fd_loader_v4_state_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8373 : void fd_loader_v4_state_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8374 : int fd_loader_v4_state_convert_global_to_local( void const * global_self, fd_loader_v4_state_t * self, fd_bincode_decode_ctx_t * ctx );
8375 :
8376 : void fd_frozen_hash_status_new( fd_frozen_hash_status_t * self );
8377 : int fd_frozen_hash_status_encode( fd_frozen_hash_status_t const * self, fd_bincode_encode_ctx_t * ctx );
8378 : void fd_frozen_hash_status_destroy( fd_frozen_hash_status_t * self );
8379 : 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 );
8380 : ulong fd_frozen_hash_status_size( fd_frozen_hash_status_t const * self );
8381 : ulong fd_frozen_hash_status_footprint( void );
8382 : ulong fd_frozen_hash_status_align( void );
8383 : int fd_frozen_hash_status_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8384 : int fd_frozen_hash_status_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8385 : void * fd_frozen_hash_status_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8386 : void fd_frozen_hash_status_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8387 : void * fd_frozen_hash_status_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8388 : void fd_frozen_hash_status_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8389 : int fd_frozen_hash_status_convert_global_to_local( void const * global_self, fd_frozen_hash_status_t * self, fd_bincode_decode_ctx_t * ctx );
8390 :
8391 : void fd_frozen_hash_versioned_new_disc( fd_frozen_hash_versioned_t * self, uint discriminant );
8392 : void fd_frozen_hash_versioned_new( fd_frozen_hash_versioned_t * self );
8393 : int fd_frozen_hash_versioned_encode( fd_frozen_hash_versioned_t const * self, fd_bincode_encode_ctx_t * ctx );
8394 : void fd_frozen_hash_versioned_destroy( fd_frozen_hash_versioned_t * self );
8395 : 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 );
8396 : ulong fd_frozen_hash_versioned_size( fd_frozen_hash_versioned_t const * self );
8397 : ulong fd_frozen_hash_versioned_footprint( void );
8398 : ulong fd_frozen_hash_versioned_align( void );
8399 : int fd_frozen_hash_versioned_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8400 : int fd_frozen_hash_versioned_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8401 : void * fd_frozen_hash_versioned_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8402 : void fd_frozen_hash_versioned_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8403 : void * fd_frozen_hash_versioned_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8404 : void fd_frozen_hash_versioned_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8405 : int fd_frozen_hash_versioned_convert_global_to_local( void const * global_self, fd_frozen_hash_versioned_t * self, fd_bincode_decode_ctx_t * ctx );
8406 :
8407 : FD_FN_PURE uchar fd_frozen_hash_versioned_is_current( fd_frozen_hash_versioned_t const * self );
8408 : enum {
8409 : fd_frozen_hash_versioned_enum_current = 0,
8410 : };
8411 : void fd_lookup_table_meta_new( fd_lookup_table_meta_t * self );
8412 : int fd_lookup_table_meta_encode( fd_lookup_table_meta_t const * self, fd_bincode_encode_ctx_t * ctx );
8413 : void fd_lookup_table_meta_destroy( fd_lookup_table_meta_t * self );
8414 : 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 );
8415 : ulong fd_lookup_table_meta_size( fd_lookup_table_meta_t const * self );
8416 : ulong fd_lookup_table_meta_footprint( void );
8417 : ulong fd_lookup_table_meta_align( void );
8418 : int fd_lookup_table_meta_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8419 : int fd_lookup_table_meta_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8420 : void * fd_lookup_table_meta_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8421 : void fd_lookup_table_meta_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8422 : void * fd_lookup_table_meta_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8423 : void fd_lookup_table_meta_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8424 : int fd_lookup_table_meta_convert_global_to_local( void const * global_self, fd_lookup_table_meta_t * self, fd_bincode_decode_ctx_t * ctx );
8425 :
8426 : void fd_address_lookup_table_new( fd_address_lookup_table_t * self );
8427 : int fd_address_lookup_table_encode( fd_address_lookup_table_t const * self, fd_bincode_encode_ctx_t * ctx );
8428 : void fd_address_lookup_table_destroy( fd_address_lookup_table_t * self );
8429 : 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 );
8430 : ulong fd_address_lookup_table_size( fd_address_lookup_table_t const * self );
8431 : ulong fd_address_lookup_table_footprint( void );
8432 : ulong fd_address_lookup_table_align( void );
8433 : int fd_address_lookup_table_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8434 : int fd_address_lookup_table_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8435 : void * fd_address_lookup_table_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8436 : void fd_address_lookup_table_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8437 : void * fd_address_lookup_table_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8438 : void fd_address_lookup_table_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8439 : int fd_address_lookup_table_convert_global_to_local( void const * global_self, fd_address_lookup_table_t * self, fd_bincode_decode_ctx_t * ctx );
8440 :
8441 : void fd_address_lookup_table_state_new_disc( fd_address_lookup_table_state_t * self, uint discriminant );
8442 : void fd_address_lookup_table_state_new( fd_address_lookup_table_state_t * self );
8443 : int fd_address_lookup_table_state_encode( fd_address_lookup_table_state_t const * self, fd_bincode_encode_ctx_t * ctx );
8444 : void fd_address_lookup_table_state_destroy( fd_address_lookup_table_state_t * self );
8445 : 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 );
8446 : ulong fd_address_lookup_table_state_size( fd_address_lookup_table_state_t const * self );
8447 : ulong fd_address_lookup_table_state_footprint( void );
8448 : ulong fd_address_lookup_table_state_align( void );
8449 : int fd_address_lookup_table_state_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8450 : int fd_address_lookup_table_state_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8451 : void * fd_address_lookup_table_state_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8452 : void fd_address_lookup_table_state_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8453 : void * fd_address_lookup_table_state_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8454 : void fd_address_lookup_table_state_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8455 : int fd_address_lookup_table_state_convert_global_to_local( void const * global_self, fd_address_lookup_table_state_t * self, fd_bincode_decode_ctx_t * ctx );
8456 :
8457 : FD_FN_PURE uchar fd_address_lookup_table_state_is_uninitialized( fd_address_lookup_table_state_t const * self );
8458 : FD_FN_PURE uchar fd_address_lookup_table_state_is_lookup_table( fd_address_lookup_table_state_t const * self );
8459 : enum {
8460 : fd_address_lookup_table_state_enum_uninitialized = 0,
8461 : fd_address_lookup_table_state_enum_lookup_table = 1,
8462 : };
8463 : void fd_gossip_bitvec_u8_inner_new( fd_gossip_bitvec_u8_inner_t * self );
8464 : int fd_gossip_bitvec_u8_inner_encode( fd_gossip_bitvec_u8_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
8465 : void fd_gossip_bitvec_u8_inner_destroy( fd_gossip_bitvec_u8_inner_t * self );
8466 : 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 );
8467 : ulong fd_gossip_bitvec_u8_inner_size( fd_gossip_bitvec_u8_inner_t const * self );
8468 : ulong fd_gossip_bitvec_u8_inner_footprint( void );
8469 : ulong fd_gossip_bitvec_u8_inner_align( void );
8470 : int fd_gossip_bitvec_u8_inner_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8471 : int fd_gossip_bitvec_u8_inner_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8472 : void * fd_gossip_bitvec_u8_inner_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8473 : void fd_gossip_bitvec_u8_inner_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8474 : void * fd_gossip_bitvec_u8_inner_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8475 : void fd_gossip_bitvec_u8_inner_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8476 : int fd_gossip_bitvec_u8_inner_convert_global_to_local( void const * global_self, fd_gossip_bitvec_u8_inner_t * self, fd_bincode_decode_ctx_t * ctx );
8477 :
8478 : void fd_gossip_bitvec_u8_new( fd_gossip_bitvec_u8_t * self );
8479 : int fd_gossip_bitvec_u8_encode( fd_gossip_bitvec_u8_t const * self, fd_bincode_encode_ctx_t * ctx );
8480 : void fd_gossip_bitvec_u8_destroy( fd_gossip_bitvec_u8_t * self );
8481 : 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 );
8482 : ulong fd_gossip_bitvec_u8_size( fd_gossip_bitvec_u8_t const * self );
8483 : ulong fd_gossip_bitvec_u8_footprint( void );
8484 : ulong fd_gossip_bitvec_u8_align( void );
8485 : int fd_gossip_bitvec_u8_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8486 : int fd_gossip_bitvec_u8_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8487 : void * fd_gossip_bitvec_u8_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8488 : void fd_gossip_bitvec_u8_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8489 : void * fd_gossip_bitvec_u8_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8490 : void fd_gossip_bitvec_u8_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8491 : int fd_gossip_bitvec_u8_convert_global_to_local( void const * global_self, fd_gossip_bitvec_u8_t * self, fd_bincode_decode_ctx_t * ctx );
8492 :
8493 : void fd_gossip_bitvec_u64_inner_new( fd_gossip_bitvec_u64_inner_t * self );
8494 : int fd_gossip_bitvec_u64_inner_encode( fd_gossip_bitvec_u64_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
8495 : void fd_gossip_bitvec_u64_inner_destroy( fd_gossip_bitvec_u64_inner_t * self );
8496 : 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 );
8497 : ulong fd_gossip_bitvec_u64_inner_size( fd_gossip_bitvec_u64_inner_t const * self );
8498 : ulong fd_gossip_bitvec_u64_inner_footprint( void );
8499 : ulong fd_gossip_bitvec_u64_inner_align( void );
8500 : int fd_gossip_bitvec_u64_inner_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8501 : int fd_gossip_bitvec_u64_inner_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8502 : void * fd_gossip_bitvec_u64_inner_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8503 : void fd_gossip_bitvec_u64_inner_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8504 : void * fd_gossip_bitvec_u64_inner_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8505 : void fd_gossip_bitvec_u64_inner_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8506 : int fd_gossip_bitvec_u64_inner_convert_global_to_local( void const * global_self, fd_gossip_bitvec_u64_inner_t * self, fd_bincode_decode_ctx_t * ctx );
8507 :
8508 : void fd_gossip_bitvec_u64_new( fd_gossip_bitvec_u64_t * self );
8509 : int fd_gossip_bitvec_u64_encode( fd_gossip_bitvec_u64_t const * self, fd_bincode_encode_ctx_t * ctx );
8510 : void fd_gossip_bitvec_u64_destroy( fd_gossip_bitvec_u64_t * self );
8511 : 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 );
8512 : ulong fd_gossip_bitvec_u64_size( fd_gossip_bitvec_u64_t const * self );
8513 : ulong fd_gossip_bitvec_u64_footprint( void );
8514 : ulong fd_gossip_bitvec_u64_align( void );
8515 : int fd_gossip_bitvec_u64_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8516 : int fd_gossip_bitvec_u64_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8517 : void * fd_gossip_bitvec_u64_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8518 : void fd_gossip_bitvec_u64_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8519 : void * fd_gossip_bitvec_u64_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8520 : void fd_gossip_bitvec_u64_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8521 : int fd_gossip_bitvec_u64_convert_global_to_local( void const * global_self, fd_gossip_bitvec_u64_t * self, fd_bincode_decode_ctx_t * ctx );
8522 :
8523 : void fd_gossip_ping_new( fd_gossip_ping_t * self );
8524 : int fd_gossip_ping_encode( fd_gossip_ping_t const * self, fd_bincode_encode_ctx_t * ctx );
8525 : void fd_gossip_ping_destroy( fd_gossip_ping_t * self );
8526 : void fd_gossip_ping_walk( void * w, fd_gossip_ping_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8527 : ulong fd_gossip_ping_size( fd_gossip_ping_t const * self );
8528 : ulong fd_gossip_ping_footprint( void );
8529 : ulong fd_gossip_ping_align( void );
8530 : int fd_gossip_ping_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8531 : int fd_gossip_ping_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8532 : void * fd_gossip_ping_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8533 : void fd_gossip_ping_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8534 : void * fd_gossip_ping_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8535 : void fd_gossip_ping_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8536 : int fd_gossip_ping_convert_global_to_local( void const * global_self, fd_gossip_ping_t * self, fd_bincode_decode_ctx_t * ctx );
8537 :
8538 : void fd_gossip_ip_addr_new_disc( fd_gossip_ip_addr_t * self, uint discriminant );
8539 : void fd_gossip_ip_addr_new( fd_gossip_ip_addr_t * self );
8540 : int fd_gossip_ip_addr_encode( fd_gossip_ip_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
8541 : void fd_gossip_ip_addr_destroy( fd_gossip_ip_addr_t * self );
8542 : 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 );
8543 : ulong fd_gossip_ip_addr_size( fd_gossip_ip_addr_t const * self );
8544 : ulong fd_gossip_ip_addr_footprint( void );
8545 : ulong fd_gossip_ip_addr_align( void );
8546 : int fd_gossip_ip_addr_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8547 : int fd_gossip_ip_addr_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8548 : void * fd_gossip_ip_addr_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8549 : void fd_gossip_ip_addr_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8550 : void * fd_gossip_ip_addr_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8551 : void fd_gossip_ip_addr_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8552 : int fd_gossip_ip_addr_convert_global_to_local( void const * global_self, fd_gossip_ip_addr_t * self, fd_bincode_decode_ctx_t * ctx );
8553 :
8554 : FD_FN_PURE uchar fd_gossip_ip_addr_is_ip4( fd_gossip_ip_addr_t const * self );
8555 : FD_FN_PURE uchar fd_gossip_ip_addr_is_ip6( fd_gossip_ip_addr_t const * self );
8556 : enum {
8557 : fd_gossip_ip_addr_enum_ip4 = 0,
8558 : fd_gossip_ip_addr_enum_ip6 = 1,
8559 : };
8560 : void fd_gossip_prune_data_new( fd_gossip_prune_data_t * self );
8561 : int fd_gossip_prune_data_encode( fd_gossip_prune_data_t const * self, fd_bincode_encode_ctx_t * ctx );
8562 : void fd_gossip_prune_data_destroy( fd_gossip_prune_data_t * self );
8563 : 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 );
8564 : ulong fd_gossip_prune_data_size( fd_gossip_prune_data_t const * self );
8565 : ulong fd_gossip_prune_data_footprint( void );
8566 : ulong fd_gossip_prune_data_align( void );
8567 : int fd_gossip_prune_data_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8568 : int fd_gossip_prune_data_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8569 : void * fd_gossip_prune_data_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8570 : void fd_gossip_prune_data_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8571 : void * fd_gossip_prune_data_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8572 : void fd_gossip_prune_data_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8573 : int fd_gossip_prune_data_convert_global_to_local( void const * global_self, fd_gossip_prune_data_t * self, fd_bincode_decode_ctx_t * ctx );
8574 :
8575 : void fd_gossip_prune_sign_data_new( fd_gossip_prune_sign_data_t * self );
8576 : int fd_gossip_prune_sign_data_encode( fd_gossip_prune_sign_data_t const * self, fd_bincode_encode_ctx_t * ctx );
8577 : void fd_gossip_prune_sign_data_destroy( fd_gossip_prune_sign_data_t * self );
8578 : 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 );
8579 : ulong fd_gossip_prune_sign_data_size( fd_gossip_prune_sign_data_t const * self );
8580 : ulong fd_gossip_prune_sign_data_footprint( void );
8581 : ulong fd_gossip_prune_sign_data_align( void );
8582 : int fd_gossip_prune_sign_data_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8583 : int fd_gossip_prune_sign_data_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8584 : void * fd_gossip_prune_sign_data_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8585 : void fd_gossip_prune_sign_data_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8586 : void * fd_gossip_prune_sign_data_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8587 : void fd_gossip_prune_sign_data_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8588 : int fd_gossip_prune_sign_data_convert_global_to_local( void const * global_self, fd_gossip_prune_sign_data_t * self, fd_bincode_decode_ctx_t * ctx );
8589 :
8590 : void fd_gossip_prune_sign_data_with_prefix_new( fd_gossip_prune_sign_data_with_prefix_t * self );
8591 : int fd_gossip_prune_sign_data_with_prefix_encode( fd_gossip_prune_sign_data_with_prefix_t const * self, fd_bincode_encode_ctx_t * ctx );
8592 : void fd_gossip_prune_sign_data_with_prefix_destroy( fd_gossip_prune_sign_data_with_prefix_t * self );
8593 : void fd_gossip_prune_sign_data_with_prefix_walk( void * w, fd_gossip_prune_sign_data_with_prefix_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8594 : ulong fd_gossip_prune_sign_data_with_prefix_size( fd_gossip_prune_sign_data_with_prefix_t const * self );
8595 : ulong fd_gossip_prune_sign_data_with_prefix_footprint( void );
8596 : ulong fd_gossip_prune_sign_data_with_prefix_align( void );
8597 : int fd_gossip_prune_sign_data_with_prefix_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8598 : int fd_gossip_prune_sign_data_with_prefix_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8599 : void * fd_gossip_prune_sign_data_with_prefix_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8600 : void fd_gossip_prune_sign_data_with_prefix_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8601 : void * fd_gossip_prune_sign_data_with_prefix_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8602 : void fd_gossip_prune_sign_data_with_prefix_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8603 : int fd_gossip_prune_sign_data_with_prefix_convert_global_to_local( void const * global_self, fd_gossip_prune_sign_data_with_prefix_t * self, fd_bincode_decode_ctx_t * ctx );
8604 :
8605 : void fd_gossip_socket_addr_old_new( fd_gossip_socket_addr_old_t * self );
8606 : int fd_gossip_socket_addr_old_encode( fd_gossip_socket_addr_old_t const * self, fd_bincode_encode_ctx_t * ctx );
8607 : void fd_gossip_socket_addr_old_destroy( fd_gossip_socket_addr_old_t * self );
8608 : void fd_gossip_socket_addr_old_walk( void * w, fd_gossip_socket_addr_old_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8609 : ulong fd_gossip_socket_addr_old_size( fd_gossip_socket_addr_old_t const * self );
8610 : ulong fd_gossip_socket_addr_old_footprint( void );
8611 : ulong fd_gossip_socket_addr_old_align( void );
8612 : int fd_gossip_socket_addr_old_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8613 : int fd_gossip_socket_addr_old_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8614 : void * fd_gossip_socket_addr_old_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8615 : void fd_gossip_socket_addr_old_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8616 : void * fd_gossip_socket_addr_old_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8617 : void fd_gossip_socket_addr_old_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8618 : int fd_gossip_socket_addr_old_convert_global_to_local( void const * global_self, fd_gossip_socket_addr_old_t * self, fd_bincode_decode_ctx_t * ctx );
8619 :
8620 : void fd_gossip_socket_addr_ip4_new( fd_gossip_socket_addr_ip4_t * self );
8621 : int fd_gossip_socket_addr_ip4_encode( fd_gossip_socket_addr_ip4_t const * self, fd_bincode_encode_ctx_t * ctx );
8622 : void fd_gossip_socket_addr_ip4_destroy( fd_gossip_socket_addr_ip4_t * self );
8623 : void fd_gossip_socket_addr_ip4_walk( void * w, fd_gossip_socket_addr_ip4_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8624 : ulong fd_gossip_socket_addr_ip4_size( fd_gossip_socket_addr_ip4_t const * self );
8625 : ulong fd_gossip_socket_addr_ip4_footprint( void );
8626 : ulong fd_gossip_socket_addr_ip4_align( void );
8627 : int fd_gossip_socket_addr_ip4_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8628 : int fd_gossip_socket_addr_ip4_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8629 : void * fd_gossip_socket_addr_ip4_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8630 : void fd_gossip_socket_addr_ip4_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8631 : void * fd_gossip_socket_addr_ip4_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8632 : void fd_gossip_socket_addr_ip4_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8633 : int fd_gossip_socket_addr_ip4_convert_global_to_local( void const * global_self, fd_gossip_socket_addr_ip4_t * self, fd_bincode_decode_ctx_t * ctx );
8634 :
8635 : void fd_gossip_socket_addr_ip6_new( fd_gossip_socket_addr_ip6_t * self );
8636 : int fd_gossip_socket_addr_ip6_encode( fd_gossip_socket_addr_ip6_t const * self, fd_bincode_encode_ctx_t * ctx );
8637 : void fd_gossip_socket_addr_ip6_destroy( fd_gossip_socket_addr_ip6_t * self );
8638 : void fd_gossip_socket_addr_ip6_walk( void * w, fd_gossip_socket_addr_ip6_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8639 : ulong fd_gossip_socket_addr_ip6_size( fd_gossip_socket_addr_ip6_t const * self );
8640 : ulong fd_gossip_socket_addr_ip6_footprint( void );
8641 : ulong fd_gossip_socket_addr_ip6_align( void );
8642 : int fd_gossip_socket_addr_ip6_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8643 : int fd_gossip_socket_addr_ip6_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8644 : void * fd_gossip_socket_addr_ip6_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8645 : void fd_gossip_socket_addr_ip6_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8646 : void * fd_gossip_socket_addr_ip6_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8647 : void fd_gossip_socket_addr_ip6_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8648 : int fd_gossip_socket_addr_ip6_convert_global_to_local( void const * global_self, fd_gossip_socket_addr_ip6_t * self, fd_bincode_decode_ctx_t * ctx );
8649 :
8650 : void fd_gossip_socket_addr_new_disc( fd_gossip_socket_addr_t * self, uint discriminant );
8651 : void fd_gossip_socket_addr_new( fd_gossip_socket_addr_t * self );
8652 : int fd_gossip_socket_addr_encode( fd_gossip_socket_addr_t const * self, fd_bincode_encode_ctx_t * ctx );
8653 : void fd_gossip_socket_addr_destroy( fd_gossip_socket_addr_t * self );
8654 : 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 );
8655 : ulong fd_gossip_socket_addr_size( fd_gossip_socket_addr_t const * self );
8656 : ulong fd_gossip_socket_addr_footprint( void );
8657 : ulong fd_gossip_socket_addr_align( void );
8658 : int fd_gossip_socket_addr_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8659 : int fd_gossip_socket_addr_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8660 : void * fd_gossip_socket_addr_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8661 : void fd_gossip_socket_addr_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8662 : void * fd_gossip_socket_addr_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8663 : void fd_gossip_socket_addr_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8664 : int fd_gossip_socket_addr_convert_global_to_local( void const * global_self, fd_gossip_socket_addr_t * self, fd_bincode_decode_ctx_t * ctx );
8665 :
8666 : FD_FN_PURE uchar fd_gossip_socket_addr_is_ip4( fd_gossip_socket_addr_t const * self );
8667 : FD_FN_PURE uchar fd_gossip_socket_addr_is_ip6( fd_gossip_socket_addr_t const * self );
8668 : enum {
8669 : fd_gossip_socket_addr_enum_ip4 = 0,
8670 : fd_gossip_socket_addr_enum_ip6 = 1,
8671 : };
8672 : void fd_gossip_contact_info_v1_new( fd_gossip_contact_info_v1_t * self );
8673 : int fd_gossip_contact_info_v1_encode( fd_gossip_contact_info_v1_t const * self, fd_bincode_encode_ctx_t * ctx );
8674 : void fd_gossip_contact_info_v1_destroy( fd_gossip_contact_info_v1_t * self );
8675 : 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 );
8676 : ulong fd_gossip_contact_info_v1_size( fd_gossip_contact_info_v1_t const * self );
8677 : ulong fd_gossip_contact_info_v1_footprint( void );
8678 : ulong fd_gossip_contact_info_v1_align( void );
8679 : int fd_gossip_contact_info_v1_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8680 : int fd_gossip_contact_info_v1_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8681 : void * fd_gossip_contact_info_v1_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8682 : void fd_gossip_contact_info_v1_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8683 : void * fd_gossip_contact_info_v1_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8684 : void fd_gossip_contact_info_v1_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8685 : int fd_gossip_contact_info_v1_convert_global_to_local( void const * global_self, fd_gossip_contact_info_v1_t * self, fd_bincode_decode_ctx_t * ctx );
8686 :
8687 : void fd_gossip_vote_new( fd_gossip_vote_t * self );
8688 : int fd_gossip_vote_encode( fd_gossip_vote_t const * self, fd_bincode_encode_ctx_t * ctx );
8689 : void fd_gossip_vote_destroy( fd_gossip_vote_t * self );
8690 : void fd_gossip_vote_walk( void * w, fd_gossip_vote_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8691 : ulong fd_gossip_vote_size( fd_gossip_vote_t const * self );
8692 : ulong fd_gossip_vote_footprint( void );
8693 : ulong fd_gossip_vote_align( void );
8694 : int fd_gossip_vote_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8695 : int fd_gossip_vote_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8696 : void * fd_gossip_vote_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8697 : void fd_gossip_vote_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8698 : void * fd_gossip_vote_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8699 : void fd_gossip_vote_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8700 : int fd_gossip_vote_convert_global_to_local( void const * global_self, fd_gossip_vote_t * self, fd_bincode_decode_ctx_t * ctx );
8701 :
8702 : void fd_gossip_lowest_slot_new( fd_gossip_lowest_slot_t * self );
8703 : int fd_gossip_lowest_slot_encode( fd_gossip_lowest_slot_t const * self, fd_bincode_encode_ctx_t * ctx );
8704 : void fd_gossip_lowest_slot_destroy( fd_gossip_lowest_slot_t * self );
8705 : 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 );
8706 : ulong fd_gossip_lowest_slot_size( fd_gossip_lowest_slot_t const * self );
8707 : ulong fd_gossip_lowest_slot_footprint( void );
8708 : ulong fd_gossip_lowest_slot_align( void );
8709 : int fd_gossip_lowest_slot_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8710 : int fd_gossip_lowest_slot_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8711 : void * fd_gossip_lowest_slot_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8712 : void fd_gossip_lowest_slot_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8713 : void * fd_gossip_lowest_slot_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8714 : void fd_gossip_lowest_slot_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8715 : int fd_gossip_lowest_slot_convert_global_to_local( void const * global_self, fd_gossip_lowest_slot_t * self, fd_bincode_decode_ctx_t * ctx );
8716 :
8717 : void fd_gossip_slot_hashes_new( fd_gossip_slot_hashes_t * self );
8718 : int fd_gossip_slot_hashes_encode( fd_gossip_slot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
8719 : void fd_gossip_slot_hashes_destroy( fd_gossip_slot_hashes_t * self );
8720 : 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 );
8721 : ulong fd_gossip_slot_hashes_size( fd_gossip_slot_hashes_t const * self );
8722 : ulong fd_gossip_slot_hashes_footprint( void );
8723 : ulong fd_gossip_slot_hashes_align( void );
8724 : int fd_gossip_slot_hashes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8725 : int fd_gossip_slot_hashes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8726 : void * fd_gossip_slot_hashes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8727 : void fd_gossip_slot_hashes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8728 : void * fd_gossip_slot_hashes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8729 : void fd_gossip_slot_hashes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8730 : int fd_gossip_slot_hashes_convert_global_to_local( void const * global_self, fd_gossip_slot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
8731 :
8732 : void fd_gossip_slots_new( fd_gossip_slots_t * self );
8733 : int fd_gossip_slots_encode( fd_gossip_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
8734 : void fd_gossip_slots_destroy( fd_gossip_slots_t * self );
8735 : void fd_gossip_slots_walk( void * w, fd_gossip_slots_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8736 : ulong fd_gossip_slots_size( fd_gossip_slots_t const * self );
8737 : ulong fd_gossip_slots_footprint( void );
8738 : ulong fd_gossip_slots_align( void );
8739 : int fd_gossip_slots_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8740 : int fd_gossip_slots_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8741 : void * fd_gossip_slots_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8742 : void fd_gossip_slots_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8743 : void * fd_gossip_slots_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8744 : void fd_gossip_slots_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8745 : int fd_gossip_slots_convert_global_to_local( void const * global_self, fd_gossip_slots_t * self, fd_bincode_decode_ctx_t * ctx );
8746 :
8747 : void fd_gossip_flate2_slots_new( fd_gossip_flate2_slots_t * self );
8748 : int fd_gossip_flate2_slots_encode( fd_gossip_flate2_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
8749 : void fd_gossip_flate2_slots_destroy( fd_gossip_flate2_slots_t * self );
8750 : 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 );
8751 : ulong fd_gossip_flate2_slots_size( fd_gossip_flate2_slots_t const * self );
8752 : ulong fd_gossip_flate2_slots_footprint( void );
8753 : ulong fd_gossip_flate2_slots_align( void );
8754 : int fd_gossip_flate2_slots_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8755 : int fd_gossip_flate2_slots_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8756 : void * fd_gossip_flate2_slots_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8757 : void fd_gossip_flate2_slots_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8758 : void * fd_gossip_flate2_slots_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8759 : void fd_gossip_flate2_slots_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8760 : int fd_gossip_flate2_slots_convert_global_to_local( void const * global_self, fd_gossip_flate2_slots_t * self, fd_bincode_decode_ctx_t * ctx );
8761 :
8762 : void fd_gossip_slots_enum_new_disc( fd_gossip_slots_enum_t * self, uint discriminant );
8763 : void fd_gossip_slots_enum_new( fd_gossip_slots_enum_t * self );
8764 : int fd_gossip_slots_enum_encode( fd_gossip_slots_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
8765 : void fd_gossip_slots_enum_destroy( fd_gossip_slots_enum_t * self );
8766 : 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 );
8767 : ulong fd_gossip_slots_enum_size( fd_gossip_slots_enum_t const * self );
8768 : ulong fd_gossip_slots_enum_footprint( void );
8769 : ulong fd_gossip_slots_enum_align( void );
8770 : int fd_gossip_slots_enum_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8771 : int fd_gossip_slots_enum_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8772 : void * fd_gossip_slots_enum_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8773 : void fd_gossip_slots_enum_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8774 : void * fd_gossip_slots_enum_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8775 : void fd_gossip_slots_enum_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8776 : int fd_gossip_slots_enum_convert_global_to_local( void const * global_self, fd_gossip_slots_enum_t * self, fd_bincode_decode_ctx_t * ctx );
8777 :
8778 : FD_FN_PURE uchar fd_gossip_slots_enum_is_flate2( fd_gossip_slots_enum_t const * self );
8779 : FD_FN_PURE uchar fd_gossip_slots_enum_is_uncompressed( fd_gossip_slots_enum_t const * self );
8780 : enum {
8781 : fd_gossip_slots_enum_enum_flate2 = 0,
8782 : fd_gossip_slots_enum_enum_uncompressed = 1,
8783 : };
8784 : void fd_gossip_epoch_slots_new( fd_gossip_epoch_slots_t * self );
8785 : int fd_gossip_epoch_slots_encode( fd_gossip_epoch_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
8786 : void fd_gossip_epoch_slots_destroy( fd_gossip_epoch_slots_t * self );
8787 : 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 );
8788 : ulong fd_gossip_epoch_slots_size( fd_gossip_epoch_slots_t const * self );
8789 : ulong fd_gossip_epoch_slots_footprint( void );
8790 : ulong fd_gossip_epoch_slots_align( void );
8791 : int fd_gossip_epoch_slots_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8792 : int fd_gossip_epoch_slots_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8793 : void * fd_gossip_epoch_slots_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8794 : void fd_gossip_epoch_slots_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8795 : void * fd_gossip_epoch_slots_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8796 : void fd_gossip_epoch_slots_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8797 : int fd_gossip_epoch_slots_convert_global_to_local( void const * global_self, fd_gossip_epoch_slots_t * self, fd_bincode_decode_ctx_t * ctx );
8798 :
8799 : void fd_gossip_version_v1_new( fd_gossip_version_v1_t * self );
8800 : int fd_gossip_version_v1_encode( fd_gossip_version_v1_t const * self, fd_bincode_encode_ctx_t * ctx );
8801 : void fd_gossip_version_v1_destroy( fd_gossip_version_v1_t * self );
8802 : 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 );
8803 : ulong fd_gossip_version_v1_size( fd_gossip_version_v1_t const * self );
8804 : ulong fd_gossip_version_v1_footprint( void );
8805 : ulong fd_gossip_version_v1_align( void );
8806 : int fd_gossip_version_v1_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8807 : int fd_gossip_version_v1_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8808 : void * fd_gossip_version_v1_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8809 : void fd_gossip_version_v1_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8810 : void * fd_gossip_version_v1_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8811 : void fd_gossip_version_v1_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8812 : int fd_gossip_version_v1_convert_global_to_local( void const * global_self, fd_gossip_version_v1_t * self, fd_bincode_decode_ctx_t * ctx );
8813 :
8814 : void fd_gossip_version_v2_new( fd_gossip_version_v2_t * self );
8815 : int fd_gossip_version_v2_encode( fd_gossip_version_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
8816 : void fd_gossip_version_v2_destroy( fd_gossip_version_v2_t * self );
8817 : 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 );
8818 : ulong fd_gossip_version_v2_size( fd_gossip_version_v2_t const * self );
8819 : ulong fd_gossip_version_v2_footprint( void );
8820 : ulong fd_gossip_version_v2_align( void );
8821 : int fd_gossip_version_v2_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8822 : int fd_gossip_version_v2_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8823 : void * fd_gossip_version_v2_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8824 : void fd_gossip_version_v2_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8825 : void * fd_gossip_version_v2_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8826 : void fd_gossip_version_v2_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8827 : int fd_gossip_version_v2_convert_global_to_local( void const * global_self, fd_gossip_version_v2_t * self, fd_bincode_decode_ctx_t * ctx );
8828 :
8829 : void fd_gossip_version_v3_new( fd_gossip_version_v3_t * self );
8830 : int fd_gossip_version_v3_encode( fd_gossip_version_v3_t const * self, fd_bincode_encode_ctx_t * ctx );
8831 : void fd_gossip_version_v3_destroy( fd_gossip_version_v3_t * self );
8832 : 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 );
8833 : ulong fd_gossip_version_v3_size( fd_gossip_version_v3_t const * self );
8834 : ulong fd_gossip_version_v3_footprint( void );
8835 : ulong fd_gossip_version_v3_align( void );
8836 : int fd_gossip_version_v3_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8837 : int fd_gossip_version_v3_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8838 : void * fd_gossip_version_v3_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8839 : void fd_gossip_version_v3_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8840 : void * fd_gossip_version_v3_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8841 : void fd_gossip_version_v3_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8842 : int fd_gossip_version_v3_convert_global_to_local( void const * global_self, fd_gossip_version_v3_t * self, fd_bincode_decode_ctx_t * ctx );
8843 :
8844 : void fd_gossip_node_instance_new( fd_gossip_node_instance_t * self );
8845 : int fd_gossip_node_instance_encode( fd_gossip_node_instance_t const * self, fd_bincode_encode_ctx_t * ctx );
8846 : void fd_gossip_node_instance_destroy( fd_gossip_node_instance_t * self );
8847 : 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 );
8848 : ulong fd_gossip_node_instance_size( fd_gossip_node_instance_t const * self );
8849 : ulong fd_gossip_node_instance_footprint( void );
8850 : ulong fd_gossip_node_instance_align( void );
8851 : int fd_gossip_node_instance_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8852 : int fd_gossip_node_instance_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8853 : void * fd_gossip_node_instance_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8854 : void fd_gossip_node_instance_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8855 : void * fd_gossip_node_instance_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8856 : void fd_gossip_node_instance_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8857 : int fd_gossip_node_instance_convert_global_to_local( void const * global_self, fd_gossip_node_instance_t * self, fd_bincode_decode_ctx_t * ctx );
8858 :
8859 : void fd_gossip_duplicate_shred_new( fd_gossip_duplicate_shred_t * self );
8860 : int fd_gossip_duplicate_shred_encode( fd_gossip_duplicate_shred_t const * self, fd_bincode_encode_ctx_t * ctx );
8861 : void fd_gossip_duplicate_shred_destroy( fd_gossip_duplicate_shred_t * self );
8862 : 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 );
8863 : ulong fd_gossip_duplicate_shred_size( fd_gossip_duplicate_shred_t const * self );
8864 : ulong fd_gossip_duplicate_shred_footprint( void );
8865 : ulong fd_gossip_duplicate_shred_align( void );
8866 : int fd_gossip_duplicate_shred_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8867 : int fd_gossip_duplicate_shred_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8868 : void * fd_gossip_duplicate_shred_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8869 : void fd_gossip_duplicate_shred_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8870 : void * fd_gossip_duplicate_shred_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8871 : void fd_gossip_duplicate_shred_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8872 : int fd_gossip_duplicate_shred_convert_global_to_local( void const * global_self, fd_gossip_duplicate_shred_t * self, fd_bincode_decode_ctx_t * ctx );
8873 :
8874 : void fd_gossip_incremental_snapshot_hashes_new( fd_gossip_incremental_snapshot_hashes_t * self );
8875 : int fd_gossip_incremental_snapshot_hashes_encode( fd_gossip_incremental_snapshot_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
8876 : void fd_gossip_incremental_snapshot_hashes_destroy( fd_gossip_incremental_snapshot_hashes_t * self );
8877 : 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 );
8878 : ulong fd_gossip_incremental_snapshot_hashes_size( fd_gossip_incremental_snapshot_hashes_t const * self );
8879 : ulong fd_gossip_incremental_snapshot_hashes_footprint( void );
8880 : ulong fd_gossip_incremental_snapshot_hashes_align( void );
8881 : int fd_gossip_incremental_snapshot_hashes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8882 : int fd_gossip_incremental_snapshot_hashes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8883 : void * fd_gossip_incremental_snapshot_hashes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8884 : void fd_gossip_incremental_snapshot_hashes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8885 : void * fd_gossip_incremental_snapshot_hashes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8886 : void fd_gossip_incremental_snapshot_hashes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8887 : int fd_gossip_incremental_snapshot_hashes_convert_global_to_local( void const * global_self, fd_gossip_incremental_snapshot_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
8888 :
8889 : void fd_gossip_socket_entry_new( fd_gossip_socket_entry_t * self );
8890 : int fd_gossip_socket_entry_encode( fd_gossip_socket_entry_t const * self, fd_bincode_encode_ctx_t * ctx );
8891 : void fd_gossip_socket_entry_destroy( fd_gossip_socket_entry_t * self );
8892 : 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 );
8893 : ulong fd_gossip_socket_entry_size( fd_gossip_socket_entry_t const * self );
8894 : ulong fd_gossip_socket_entry_footprint( void );
8895 : ulong fd_gossip_socket_entry_align( void );
8896 : int fd_gossip_socket_entry_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8897 : int fd_gossip_socket_entry_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8898 : void * fd_gossip_socket_entry_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8899 : void fd_gossip_socket_entry_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8900 : void * fd_gossip_socket_entry_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8901 : void fd_gossip_socket_entry_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8902 : int fd_gossip_socket_entry_convert_global_to_local( void const * global_self, fd_gossip_socket_entry_t * self, fd_bincode_decode_ctx_t * ctx );
8903 :
8904 : void fd_gossip_contact_info_v2_new( fd_gossip_contact_info_v2_t * self );
8905 : int fd_gossip_contact_info_v2_encode( fd_gossip_contact_info_v2_t const * self, fd_bincode_encode_ctx_t * ctx );
8906 : void fd_gossip_contact_info_v2_destroy( fd_gossip_contact_info_v2_t * self );
8907 : 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 );
8908 : ulong fd_gossip_contact_info_v2_size( fd_gossip_contact_info_v2_t const * self );
8909 : ulong fd_gossip_contact_info_v2_footprint( void );
8910 : ulong fd_gossip_contact_info_v2_align( void );
8911 : int fd_gossip_contact_info_v2_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8912 : int fd_gossip_contact_info_v2_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8913 : void * fd_gossip_contact_info_v2_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8914 : void fd_gossip_contact_info_v2_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8915 : void * fd_gossip_contact_info_v2_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8916 : void fd_gossip_contact_info_v2_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8917 : int fd_gossip_contact_info_v2_convert_global_to_local( void const * global_self, fd_gossip_contact_info_v2_t * self, fd_bincode_decode_ctx_t * ctx );
8918 :
8919 : void fd_restart_run_length_encoding_inner_new( fd_restart_run_length_encoding_inner_t * self );
8920 : int fd_restart_run_length_encoding_inner_encode( fd_restart_run_length_encoding_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
8921 : void fd_restart_run_length_encoding_inner_destroy( fd_restart_run_length_encoding_inner_t * self );
8922 : void fd_restart_run_length_encoding_inner_walk( void * w, fd_restart_run_length_encoding_inner_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8923 : ulong fd_restart_run_length_encoding_inner_size( fd_restart_run_length_encoding_inner_t const * self );
8924 : ulong fd_restart_run_length_encoding_inner_footprint( void );
8925 : ulong fd_restart_run_length_encoding_inner_align( void );
8926 : int fd_restart_run_length_encoding_inner_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8927 : int fd_restart_run_length_encoding_inner_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8928 : void * fd_restart_run_length_encoding_inner_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8929 : void fd_restart_run_length_encoding_inner_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8930 : void * fd_restart_run_length_encoding_inner_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8931 : void fd_restart_run_length_encoding_inner_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8932 : int fd_restart_run_length_encoding_inner_convert_global_to_local( void const * global_self, fd_restart_run_length_encoding_inner_t * self, fd_bincode_decode_ctx_t * ctx );
8933 :
8934 : void fd_restart_run_length_encoding_new( fd_restart_run_length_encoding_t * self );
8935 : int fd_restart_run_length_encoding_encode( fd_restart_run_length_encoding_t const * self, fd_bincode_encode_ctx_t * ctx );
8936 : void fd_restart_run_length_encoding_destroy( fd_restart_run_length_encoding_t * self );
8937 : void fd_restart_run_length_encoding_walk( void * w, fd_restart_run_length_encoding_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8938 : ulong fd_restart_run_length_encoding_size( fd_restart_run_length_encoding_t const * self );
8939 : ulong fd_restart_run_length_encoding_footprint( void );
8940 : ulong fd_restart_run_length_encoding_align( void );
8941 : int fd_restart_run_length_encoding_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8942 : int fd_restart_run_length_encoding_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8943 : void * fd_restart_run_length_encoding_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8944 : void fd_restart_run_length_encoding_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8945 : void * fd_restart_run_length_encoding_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8946 : void fd_restart_run_length_encoding_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8947 : int fd_restart_run_length_encoding_convert_global_to_local( void const * global_self, fd_restart_run_length_encoding_t * self, fd_bincode_decode_ctx_t * ctx );
8948 :
8949 : void fd_restart_raw_offsets_bitvec_u8_inner_new( fd_restart_raw_offsets_bitvec_u8_inner_t * self );
8950 : int fd_restart_raw_offsets_bitvec_u8_inner_encode( fd_restart_raw_offsets_bitvec_u8_inner_t const * self, fd_bincode_encode_ctx_t * ctx );
8951 : void fd_restart_raw_offsets_bitvec_u8_inner_destroy( fd_restart_raw_offsets_bitvec_u8_inner_t * self );
8952 : void fd_restart_raw_offsets_bitvec_u8_inner_walk( void * w, fd_restart_raw_offsets_bitvec_u8_inner_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8953 : ulong fd_restart_raw_offsets_bitvec_u8_inner_size( fd_restart_raw_offsets_bitvec_u8_inner_t const * self );
8954 : ulong fd_restart_raw_offsets_bitvec_u8_inner_footprint( void );
8955 : ulong fd_restart_raw_offsets_bitvec_u8_inner_align( void );
8956 : int fd_restart_raw_offsets_bitvec_u8_inner_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8957 : int fd_restart_raw_offsets_bitvec_u8_inner_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8958 : void * fd_restart_raw_offsets_bitvec_u8_inner_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8959 : void fd_restart_raw_offsets_bitvec_u8_inner_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8960 : void * fd_restart_raw_offsets_bitvec_u8_inner_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8961 : void fd_restart_raw_offsets_bitvec_u8_inner_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8962 : int fd_restart_raw_offsets_bitvec_u8_inner_convert_global_to_local( void const * global_self, fd_restart_raw_offsets_bitvec_u8_inner_t * self, fd_bincode_decode_ctx_t * ctx );
8963 :
8964 : void fd_restart_raw_offsets_bitvec_new( fd_restart_raw_offsets_bitvec_t * self );
8965 : int fd_restart_raw_offsets_bitvec_encode( fd_restart_raw_offsets_bitvec_t const * self, fd_bincode_encode_ctx_t * ctx );
8966 : void fd_restart_raw_offsets_bitvec_destroy( fd_restart_raw_offsets_bitvec_t * self );
8967 : void fd_restart_raw_offsets_bitvec_walk( void * w, fd_restart_raw_offsets_bitvec_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8968 : ulong fd_restart_raw_offsets_bitvec_size( fd_restart_raw_offsets_bitvec_t const * self );
8969 : ulong fd_restart_raw_offsets_bitvec_footprint( void );
8970 : ulong fd_restart_raw_offsets_bitvec_align( void );
8971 : int fd_restart_raw_offsets_bitvec_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8972 : int fd_restart_raw_offsets_bitvec_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8973 : void * fd_restart_raw_offsets_bitvec_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8974 : void fd_restart_raw_offsets_bitvec_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8975 : void * fd_restart_raw_offsets_bitvec_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8976 : void fd_restart_raw_offsets_bitvec_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8977 : int fd_restart_raw_offsets_bitvec_convert_global_to_local( void const * global_self, fd_restart_raw_offsets_bitvec_t * self, fd_bincode_decode_ctx_t * ctx );
8978 :
8979 : void fd_restart_raw_offsets_new( fd_restart_raw_offsets_t * self );
8980 : int fd_restart_raw_offsets_encode( fd_restart_raw_offsets_t const * self, fd_bincode_encode_ctx_t * ctx );
8981 : void fd_restart_raw_offsets_destroy( fd_restart_raw_offsets_t * self );
8982 : void fd_restart_raw_offsets_walk( void * w, fd_restart_raw_offsets_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8983 : ulong fd_restart_raw_offsets_size( fd_restart_raw_offsets_t const * self );
8984 : ulong fd_restart_raw_offsets_footprint( void );
8985 : ulong fd_restart_raw_offsets_align( void );
8986 : int fd_restart_raw_offsets_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8987 : int fd_restart_raw_offsets_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
8988 : void * fd_restart_raw_offsets_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
8989 : void fd_restart_raw_offsets_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8990 : void * fd_restart_raw_offsets_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
8991 : void fd_restart_raw_offsets_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
8992 : int fd_restart_raw_offsets_convert_global_to_local( void const * global_self, fd_restart_raw_offsets_t * self, fd_bincode_decode_ctx_t * ctx );
8993 :
8994 : void fd_restart_slots_offsets_new_disc( fd_restart_slots_offsets_t * self, uint discriminant );
8995 : void fd_restart_slots_offsets_new( fd_restart_slots_offsets_t * self );
8996 : int fd_restart_slots_offsets_encode( fd_restart_slots_offsets_t const * self, fd_bincode_encode_ctx_t * ctx );
8997 : void fd_restart_slots_offsets_destroy( fd_restart_slots_offsets_t * self );
8998 : void fd_restart_slots_offsets_walk( void * w, fd_restart_slots_offsets_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
8999 : ulong fd_restart_slots_offsets_size( fd_restart_slots_offsets_t const * self );
9000 : ulong fd_restart_slots_offsets_footprint( void );
9001 : ulong fd_restart_slots_offsets_align( void );
9002 : int fd_restart_slots_offsets_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9003 : int fd_restart_slots_offsets_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9004 : void * fd_restart_slots_offsets_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9005 : void fd_restart_slots_offsets_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9006 : void * fd_restart_slots_offsets_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9007 : void fd_restart_slots_offsets_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9008 : int fd_restart_slots_offsets_convert_global_to_local( void const * global_self, fd_restart_slots_offsets_t * self, fd_bincode_decode_ctx_t * ctx );
9009 :
9010 : FD_FN_PURE uchar fd_restart_slots_offsets_is_run_length_encoding( fd_restart_slots_offsets_t const * self );
9011 : FD_FN_PURE uchar fd_restart_slots_offsets_is_raw_offsets( fd_restart_slots_offsets_t const * self );
9012 : enum {
9013 : fd_restart_slots_offsets_enum_run_length_encoding = 0,
9014 : fd_restart_slots_offsets_enum_raw_offsets = 1,
9015 : };
9016 : void fd_gossip_restart_last_voted_fork_slots_new( fd_gossip_restart_last_voted_fork_slots_t * self );
9017 : int fd_gossip_restart_last_voted_fork_slots_encode( fd_gossip_restart_last_voted_fork_slots_t const * self, fd_bincode_encode_ctx_t * ctx );
9018 : void fd_gossip_restart_last_voted_fork_slots_destroy( fd_gossip_restart_last_voted_fork_slots_t * self );
9019 : void fd_gossip_restart_last_voted_fork_slots_walk( void * w, fd_gossip_restart_last_voted_fork_slots_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9020 : ulong fd_gossip_restart_last_voted_fork_slots_size( fd_gossip_restart_last_voted_fork_slots_t const * self );
9021 : ulong fd_gossip_restart_last_voted_fork_slots_footprint( void );
9022 : ulong fd_gossip_restart_last_voted_fork_slots_align( void );
9023 : int fd_gossip_restart_last_voted_fork_slots_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9024 : int fd_gossip_restart_last_voted_fork_slots_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9025 : void * fd_gossip_restart_last_voted_fork_slots_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9026 : void fd_gossip_restart_last_voted_fork_slots_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9027 : void * fd_gossip_restart_last_voted_fork_slots_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9028 : void fd_gossip_restart_last_voted_fork_slots_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9029 : int fd_gossip_restart_last_voted_fork_slots_convert_global_to_local( void const * global_self, fd_gossip_restart_last_voted_fork_slots_t * self, fd_bincode_decode_ctx_t * ctx );
9030 :
9031 : void fd_gossip_restart_heaviest_fork_new( fd_gossip_restart_heaviest_fork_t * self );
9032 : int fd_gossip_restart_heaviest_fork_encode( fd_gossip_restart_heaviest_fork_t const * self, fd_bincode_encode_ctx_t * ctx );
9033 : void fd_gossip_restart_heaviest_fork_destroy( fd_gossip_restart_heaviest_fork_t * self );
9034 : void fd_gossip_restart_heaviest_fork_walk( void * w, fd_gossip_restart_heaviest_fork_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9035 : ulong fd_gossip_restart_heaviest_fork_size( fd_gossip_restart_heaviest_fork_t const * self );
9036 : ulong fd_gossip_restart_heaviest_fork_footprint( void );
9037 : ulong fd_gossip_restart_heaviest_fork_align( void );
9038 : int fd_gossip_restart_heaviest_fork_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9039 : int fd_gossip_restart_heaviest_fork_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9040 : void * fd_gossip_restart_heaviest_fork_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9041 : void fd_gossip_restart_heaviest_fork_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9042 : void * fd_gossip_restart_heaviest_fork_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9043 : void fd_gossip_restart_heaviest_fork_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9044 : int fd_gossip_restart_heaviest_fork_convert_global_to_local( void const * global_self, fd_gossip_restart_heaviest_fork_t * self, fd_bincode_decode_ctx_t * ctx );
9045 :
9046 : void fd_crds_data_new_disc( fd_crds_data_t * self, uint discriminant );
9047 : void fd_crds_data_new( fd_crds_data_t * self );
9048 : int fd_crds_data_encode( fd_crds_data_t const * self, fd_bincode_encode_ctx_t * ctx );
9049 : void fd_crds_data_destroy( fd_crds_data_t * self );
9050 : void fd_crds_data_walk( void * w, fd_crds_data_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9051 : ulong fd_crds_data_size( fd_crds_data_t const * self );
9052 : ulong fd_crds_data_footprint( void );
9053 : ulong fd_crds_data_align( void );
9054 : int fd_crds_data_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9055 : int fd_crds_data_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9056 : void * fd_crds_data_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9057 : void fd_crds_data_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9058 : void * fd_crds_data_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9059 : void fd_crds_data_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9060 : int fd_crds_data_convert_global_to_local( void const * global_self, fd_crds_data_t * self, fd_bincode_decode_ctx_t * ctx );
9061 :
9062 : FD_FN_PURE uchar fd_crds_data_is_contact_info_v1( fd_crds_data_t const * self );
9063 : FD_FN_PURE uchar fd_crds_data_is_vote( fd_crds_data_t const * self );
9064 : FD_FN_PURE uchar fd_crds_data_is_lowest_slot( fd_crds_data_t const * self );
9065 : FD_FN_PURE uchar fd_crds_data_is_snapshot_hashes( fd_crds_data_t const * self );
9066 : FD_FN_PURE uchar fd_crds_data_is_accounts_hashes( fd_crds_data_t const * self );
9067 : FD_FN_PURE uchar fd_crds_data_is_epoch_slots( fd_crds_data_t const * self );
9068 : FD_FN_PURE uchar fd_crds_data_is_version_v1( fd_crds_data_t const * self );
9069 : FD_FN_PURE uchar fd_crds_data_is_version_v2( fd_crds_data_t const * self );
9070 : FD_FN_PURE uchar fd_crds_data_is_node_instance( fd_crds_data_t const * self );
9071 : FD_FN_PURE uchar fd_crds_data_is_duplicate_shred( fd_crds_data_t const * self );
9072 : FD_FN_PURE uchar fd_crds_data_is_incremental_snapshot_hashes( fd_crds_data_t const * self );
9073 : FD_FN_PURE uchar fd_crds_data_is_contact_info_v2( fd_crds_data_t const * self );
9074 : FD_FN_PURE uchar fd_crds_data_is_restart_last_voted_fork_slots( fd_crds_data_t const * self );
9075 : FD_FN_PURE uchar fd_crds_data_is_restart_heaviest_fork( fd_crds_data_t const * self );
9076 : enum {
9077 : fd_crds_data_enum_contact_info_v1 = 0,
9078 : fd_crds_data_enum_vote = 1,
9079 : fd_crds_data_enum_lowest_slot = 2,
9080 : fd_crds_data_enum_snapshot_hashes = 3,
9081 : fd_crds_data_enum_accounts_hashes = 4,
9082 : fd_crds_data_enum_epoch_slots = 5,
9083 : fd_crds_data_enum_version_v1 = 6,
9084 : fd_crds_data_enum_version_v2 = 7,
9085 : fd_crds_data_enum_node_instance = 8,
9086 : fd_crds_data_enum_duplicate_shred = 9,
9087 : fd_crds_data_enum_incremental_snapshot_hashes = 10,
9088 : fd_crds_data_enum_contact_info_v2 = 11,
9089 : fd_crds_data_enum_restart_last_voted_fork_slots = 12,
9090 : fd_crds_data_enum_restart_heaviest_fork = 13,
9091 : };
9092 : void fd_crds_bloom_new( fd_crds_bloom_t * self );
9093 : int fd_crds_bloom_encode( fd_crds_bloom_t const * self, fd_bincode_encode_ctx_t * ctx );
9094 : void fd_crds_bloom_destroy( fd_crds_bloom_t * self );
9095 : void fd_crds_bloom_walk( void * w, fd_crds_bloom_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9096 : ulong fd_crds_bloom_size( fd_crds_bloom_t const * self );
9097 : ulong fd_crds_bloom_footprint( void );
9098 : ulong fd_crds_bloom_align( void );
9099 : int fd_crds_bloom_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9100 : int fd_crds_bloom_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9101 : void * fd_crds_bloom_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9102 : void fd_crds_bloom_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9103 : void * fd_crds_bloom_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9104 : void fd_crds_bloom_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9105 : int fd_crds_bloom_convert_global_to_local( void const * global_self, fd_crds_bloom_t * self, fd_bincode_decode_ctx_t * ctx );
9106 :
9107 : void fd_crds_filter_new( fd_crds_filter_t * self );
9108 : int fd_crds_filter_encode( fd_crds_filter_t const * self, fd_bincode_encode_ctx_t * ctx );
9109 : void fd_crds_filter_destroy( fd_crds_filter_t * self );
9110 : void fd_crds_filter_walk( void * w, fd_crds_filter_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9111 : ulong fd_crds_filter_size( fd_crds_filter_t const * self );
9112 : ulong fd_crds_filter_footprint( void );
9113 : ulong fd_crds_filter_align( void );
9114 : int fd_crds_filter_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9115 : int fd_crds_filter_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9116 : void * fd_crds_filter_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9117 : void fd_crds_filter_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9118 : void * fd_crds_filter_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9119 : void fd_crds_filter_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9120 : int fd_crds_filter_convert_global_to_local( void const * global_self, fd_crds_filter_t * self, fd_bincode_decode_ctx_t * ctx );
9121 :
9122 : void fd_crds_value_new( fd_crds_value_t * self );
9123 : int fd_crds_value_encode( fd_crds_value_t const * self, fd_bincode_encode_ctx_t * ctx );
9124 : void fd_crds_value_destroy( fd_crds_value_t * self );
9125 : void fd_crds_value_walk( void * w, fd_crds_value_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9126 : ulong fd_crds_value_size( fd_crds_value_t const * self );
9127 : ulong fd_crds_value_footprint( void );
9128 : ulong fd_crds_value_align( void );
9129 : int fd_crds_value_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9130 : int fd_crds_value_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9131 : void * fd_crds_value_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9132 : void fd_crds_value_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9133 : void * fd_crds_value_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9134 : void fd_crds_value_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9135 : int fd_crds_value_convert_global_to_local( void const * global_self, fd_crds_value_t * self, fd_bincode_decode_ctx_t * ctx );
9136 :
9137 : void fd_gossip_pull_req_new( fd_gossip_pull_req_t * self );
9138 : int fd_gossip_pull_req_encode( fd_gossip_pull_req_t const * self, fd_bincode_encode_ctx_t * ctx );
9139 : void fd_gossip_pull_req_destroy( fd_gossip_pull_req_t * self );
9140 : 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 );
9141 : ulong fd_gossip_pull_req_size( fd_gossip_pull_req_t const * self );
9142 : ulong fd_gossip_pull_req_footprint( void );
9143 : ulong fd_gossip_pull_req_align( void );
9144 : int fd_gossip_pull_req_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9145 : int fd_gossip_pull_req_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9146 : void * fd_gossip_pull_req_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9147 : void fd_gossip_pull_req_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9148 : void * fd_gossip_pull_req_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9149 : void fd_gossip_pull_req_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9150 : int fd_gossip_pull_req_convert_global_to_local( void const * global_self, fd_gossip_pull_req_t * self, fd_bincode_decode_ctx_t * ctx );
9151 :
9152 : void fd_gossip_pull_resp_new( fd_gossip_pull_resp_t * self );
9153 : int fd_gossip_pull_resp_encode( fd_gossip_pull_resp_t const * self, fd_bincode_encode_ctx_t * ctx );
9154 : void fd_gossip_pull_resp_destroy( fd_gossip_pull_resp_t * self );
9155 : 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 );
9156 : ulong fd_gossip_pull_resp_size( fd_gossip_pull_resp_t const * self );
9157 : ulong fd_gossip_pull_resp_footprint( void );
9158 : ulong fd_gossip_pull_resp_align( void );
9159 : int fd_gossip_pull_resp_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9160 : int fd_gossip_pull_resp_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9161 : void * fd_gossip_pull_resp_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9162 : void fd_gossip_pull_resp_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9163 : void * fd_gossip_pull_resp_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9164 : void fd_gossip_pull_resp_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9165 : int fd_gossip_pull_resp_convert_global_to_local( void const * global_self, fd_gossip_pull_resp_t * self, fd_bincode_decode_ctx_t * ctx );
9166 :
9167 : void fd_gossip_push_msg_new( fd_gossip_push_msg_t * self );
9168 : int fd_gossip_push_msg_encode( fd_gossip_push_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
9169 : void fd_gossip_push_msg_destroy( fd_gossip_push_msg_t * self );
9170 : 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 );
9171 : ulong fd_gossip_push_msg_size( fd_gossip_push_msg_t const * self );
9172 : ulong fd_gossip_push_msg_footprint( void );
9173 : ulong fd_gossip_push_msg_align( void );
9174 : int fd_gossip_push_msg_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9175 : int fd_gossip_push_msg_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9176 : void * fd_gossip_push_msg_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9177 : void fd_gossip_push_msg_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9178 : void * fd_gossip_push_msg_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9179 : void fd_gossip_push_msg_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9180 : int fd_gossip_push_msg_convert_global_to_local( void const * global_self, fd_gossip_push_msg_t * self, fd_bincode_decode_ctx_t * ctx );
9181 :
9182 : void fd_gossip_prune_msg_new( fd_gossip_prune_msg_t * self );
9183 : int fd_gossip_prune_msg_encode( fd_gossip_prune_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
9184 : void fd_gossip_prune_msg_destroy( fd_gossip_prune_msg_t * self );
9185 : 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 );
9186 : ulong fd_gossip_prune_msg_size( fd_gossip_prune_msg_t const * self );
9187 : ulong fd_gossip_prune_msg_footprint( void );
9188 : ulong fd_gossip_prune_msg_align( void );
9189 : int fd_gossip_prune_msg_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9190 : int fd_gossip_prune_msg_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9191 : void * fd_gossip_prune_msg_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9192 : void fd_gossip_prune_msg_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9193 : void * fd_gossip_prune_msg_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9194 : void fd_gossip_prune_msg_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9195 : int fd_gossip_prune_msg_convert_global_to_local( void const * global_self, fd_gossip_prune_msg_t * self, fd_bincode_decode_ctx_t * ctx );
9196 :
9197 : void fd_gossip_msg_new_disc( fd_gossip_msg_t * self, uint discriminant );
9198 : void fd_gossip_msg_new( fd_gossip_msg_t * self );
9199 : int fd_gossip_msg_encode( fd_gossip_msg_t const * self, fd_bincode_encode_ctx_t * ctx );
9200 : void fd_gossip_msg_destroy( fd_gossip_msg_t * self );
9201 : void fd_gossip_msg_walk( void * w, fd_gossip_msg_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9202 : ulong fd_gossip_msg_size( fd_gossip_msg_t const * self );
9203 : ulong fd_gossip_msg_footprint( void );
9204 : ulong fd_gossip_msg_align( void );
9205 : int fd_gossip_msg_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9206 : int fd_gossip_msg_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9207 : void * fd_gossip_msg_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9208 : void fd_gossip_msg_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9209 : void * fd_gossip_msg_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9210 : void fd_gossip_msg_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9211 : int fd_gossip_msg_convert_global_to_local( void const * global_self, fd_gossip_msg_t * self, fd_bincode_decode_ctx_t * ctx );
9212 :
9213 : FD_FN_PURE uchar fd_gossip_msg_is_pull_req( fd_gossip_msg_t const * self );
9214 : FD_FN_PURE uchar fd_gossip_msg_is_pull_resp( fd_gossip_msg_t const * self );
9215 : FD_FN_PURE uchar fd_gossip_msg_is_push_msg( fd_gossip_msg_t const * self );
9216 : FD_FN_PURE uchar fd_gossip_msg_is_prune_msg( fd_gossip_msg_t const * self );
9217 : FD_FN_PURE uchar fd_gossip_msg_is_ping( fd_gossip_msg_t const * self );
9218 : FD_FN_PURE uchar fd_gossip_msg_is_pong( fd_gossip_msg_t const * self );
9219 : enum {
9220 : fd_gossip_msg_enum_pull_req = 0,
9221 : fd_gossip_msg_enum_pull_resp = 1,
9222 : fd_gossip_msg_enum_push_msg = 2,
9223 : fd_gossip_msg_enum_prune_msg = 3,
9224 : fd_gossip_msg_enum_ping = 4,
9225 : fd_gossip_msg_enum_pong = 5,
9226 : };
9227 : void fd_addrlut_create_new( fd_addrlut_create_t * self );
9228 : int fd_addrlut_create_encode( fd_addrlut_create_t const * self, fd_bincode_encode_ctx_t * ctx );
9229 : void fd_addrlut_create_destroy( fd_addrlut_create_t * self );
9230 : void fd_addrlut_create_walk( void * w, fd_addrlut_create_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9231 : ulong fd_addrlut_create_size( fd_addrlut_create_t const * self );
9232 : ulong fd_addrlut_create_footprint( void );
9233 : ulong fd_addrlut_create_align( void );
9234 : int fd_addrlut_create_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9235 : int fd_addrlut_create_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9236 : void * fd_addrlut_create_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9237 : void fd_addrlut_create_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9238 : void * fd_addrlut_create_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9239 : void fd_addrlut_create_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9240 : int fd_addrlut_create_convert_global_to_local( void const * global_self, fd_addrlut_create_t * self, fd_bincode_decode_ctx_t * ctx );
9241 :
9242 : void fd_addrlut_extend_new( fd_addrlut_extend_t * self );
9243 : int fd_addrlut_extend_encode( fd_addrlut_extend_t const * self, fd_bincode_encode_ctx_t * ctx );
9244 : void fd_addrlut_extend_destroy( fd_addrlut_extend_t * self );
9245 : void fd_addrlut_extend_walk( void * w, fd_addrlut_extend_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9246 : ulong fd_addrlut_extend_size( fd_addrlut_extend_t const * self );
9247 : ulong fd_addrlut_extend_footprint( void );
9248 : ulong fd_addrlut_extend_align( void );
9249 : int fd_addrlut_extend_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9250 : int fd_addrlut_extend_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9251 : void * fd_addrlut_extend_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9252 : void fd_addrlut_extend_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9253 : void * fd_addrlut_extend_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9254 : void fd_addrlut_extend_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9255 : int fd_addrlut_extend_convert_global_to_local( void const * global_self, fd_addrlut_extend_t * self, fd_bincode_decode_ctx_t * ctx );
9256 :
9257 : void fd_addrlut_instruction_new_disc( fd_addrlut_instruction_t * self, uint discriminant );
9258 : void fd_addrlut_instruction_new( fd_addrlut_instruction_t * self );
9259 : int fd_addrlut_instruction_encode( fd_addrlut_instruction_t const * self, fd_bincode_encode_ctx_t * ctx );
9260 : void fd_addrlut_instruction_destroy( fd_addrlut_instruction_t * self );
9261 : void fd_addrlut_instruction_walk( void * w, fd_addrlut_instruction_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9262 : ulong fd_addrlut_instruction_size( fd_addrlut_instruction_t const * self );
9263 : ulong fd_addrlut_instruction_footprint( void );
9264 : ulong fd_addrlut_instruction_align( void );
9265 : int fd_addrlut_instruction_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9266 : int fd_addrlut_instruction_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9267 : void * fd_addrlut_instruction_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9268 : void fd_addrlut_instruction_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9269 : void * fd_addrlut_instruction_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9270 : void fd_addrlut_instruction_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9271 : int fd_addrlut_instruction_convert_global_to_local( void const * global_self, fd_addrlut_instruction_t * self, fd_bincode_decode_ctx_t * ctx );
9272 :
9273 : FD_FN_PURE uchar fd_addrlut_instruction_is_create_lut( fd_addrlut_instruction_t const * self );
9274 : FD_FN_PURE uchar fd_addrlut_instruction_is_freeze_lut( fd_addrlut_instruction_t const * self );
9275 : FD_FN_PURE uchar fd_addrlut_instruction_is_extend_lut( fd_addrlut_instruction_t const * self );
9276 : FD_FN_PURE uchar fd_addrlut_instruction_is_deactivate_lut( fd_addrlut_instruction_t const * self );
9277 : FD_FN_PURE uchar fd_addrlut_instruction_is_close_lut( fd_addrlut_instruction_t const * self );
9278 : enum {
9279 : fd_addrlut_instruction_enum_create_lut = 0,
9280 : fd_addrlut_instruction_enum_freeze_lut = 1,
9281 : fd_addrlut_instruction_enum_extend_lut = 2,
9282 : fd_addrlut_instruction_enum_deactivate_lut = 3,
9283 : fd_addrlut_instruction_enum_close_lut = 4,
9284 : };
9285 : void fd_repair_request_header_new( fd_repair_request_header_t * self );
9286 : int fd_repair_request_header_encode( fd_repair_request_header_t const * self, fd_bincode_encode_ctx_t * ctx );
9287 : void fd_repair_request_header_destroy( fd_repair_request_header_t * self );
9288 : 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 );
9289 : ulong fd_repair_request_header_size( fd_repair_request_header_t const * self );
9290 : ulong fd_repair_request_header_footprint( void );
9291 : ulong fd_repair_request_header_align( void );
9292 : int fd_repair_request_header_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9293 : int fd_repair_request_header_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9294 : void * fd_repair_request_header_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9295 : void fd_repair_request_header_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9296 : void * fd_repair_request_header_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9297 : void fd_repair_request_header_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9298 : int fd_repair_request_header_convert_global_to_local( void const * global_self, fd_repair_request_header_t * self, fd_bincode_decode_ctx_t * ctx );
9299 :
9300 : void fd_repair_window_index_new( fd_repair_window_index_t * self );
9301 : int fd_repair_window_index_encode( fd_repair_window_index_t const * self, fd_bincode_encode_ctx_t * ctx );
9302 : void fd_repair_window_index_destroy( fd_repair_window_index_t * self );
9303 : 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 );
9304 : ulong fd_repair_window_index_size( fd_repair_window_index_t const * self );
9305 : ulong fd_repair_window_index_footprint( void );
9306 : ulong fd_repair_window_index_align( void );
9307 : int fd_repair_window_index_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9308 : int fd_repair_window_index_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9309 : void * fd_repair_window_index_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9310 : void fd_repair_window_index_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9311 : void * fd_repair_window_index_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9312 : void fd_repair_window_index_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9313 : int fd_repair_window_index_convert_global_to_local( void const * global_self, fd_repair_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
9314 :
9315 : void fd_repair_highest_window_index_new( fd_repair_highest_window_index_t * self );
9316 : int fd_repair_highest_window_index_encode( fd_repair_highest_window_index_t const * self, fd_bincode_encode_ctx_t * ctx );
9317 : void fd_repair_highest_window_index_destroy( fd_repair_highest_window_index_t * self );
9318 : 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 );
9319 : ulong fd_repair_highest_window_index_size( fd_repair_highest_window_index_t const * self );
9320 : ulong fd_repair_highest_window_index_footprint( void );
9321 : ulong fd_repair_highest_window_index_align( void );
9322 : int fd_repair_highest_window_index_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9323 : int fd_repair_highest_window_index_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9324 : void * fd_repair_highest_window_index_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9325 : void fd_repair_highest_window_index_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9326 : void * fd_repair_highest_window_index_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9327 : void fd_repair_highest_window_index_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9328 : int fd_repair_highest_window_index_convert_global_to_local( void const * global_self, fd_repair_highest_window_index_t * self, fd_bincode_decode_ctx_t * ctx );
9329 :
9330 : void fd_repair_orphan_new( fd_repair_orphan_t * self );
9331 : int fd_repair_orphan_encode( fd_repair_orphan_t const * self, fd_bincode_encode_ctx_t * ctx );
9332 : void fd_repair_orphan_destroy( fd_repair_orphan_t * self );
9333 : void fd_repair_orphan_walk( void * w, fd_repair_orphan_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9334 : ulong fd_repair_orphan_size( fd_repair_orphan_t const * self );
9335 : ulong fd_repair_orphan_footprint( void );
9336 : ulong fd_repair_orphan_align( void );
9337 : int fd_repair_orphan_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9338 : int fd_repair_orphan_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9339 : void * fd_repair_orphan_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9340 : void fd_repair_orphan_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9341 : void * fd_repair_orphan_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9342 : void fd_repair_orphan_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9343 : int fd_repair_orphan_convert_global_to_local( void const * global_self, fd_repair_orphan_t * self, fd_bincode_decode_ctx_t * ctx );
9344 :
9345 : void fd_repair_ancestor_hashes_new( fd_repair_ancestor_hashes_t * self );
9346 : int fd_repair_ancestor_hashes_encode( fd_repair_ancestor_hashes_t const * self, fd_bincode_encode_ctx_t * ctx );
9347 : void fd_repair_ancestor_hashes_destroy( fd_repair_ancestor_hashes_t * self );
9348 : 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 );
9349 : ulong fd_repair_ancestor_hashes_size( fd_repair_ancestor_hashes_t const * self );
9350 : ulong fd_repair_ancestor_hashes_footprint( void );
9351 : ulong fd_repair_ancestor_hashes_align( void );
9352 : int fd_repair_ancestor_hashes_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9353 : int fd_repair_ancestor_hashes_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9354 : void * fd_repair_ancestor_hashes_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9355 : void fd_repair_ancestor_hashes_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9356 : void * fd_repair_ancestor_hashes_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9357 : void fd_repair_ancestor_hashes_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9358 : int fd_repair_ancestor_hashes_convert_global_to_local( void const * global_self, fd_repair_ancestor_hashes_t * self, fd_bincode_decode_ctx_t * ctx );
9359 :
9360 : void fd_repair_protocol_new_disc( fd_repair_protocol_t * self, uint discriminant );
9361 : void fd_repair_protocol_new( fd_repair_protocol_t * self );
9362 : int fd_repair_protocol_encode( fd_repair_protocol_t const * self, fd_bincode_encode_ctx_t * ctx );
9363 : void fd_repair_protocol_destroy( fd_repair_protocol_t * self );
9364 : void fd_repair_protocol_walk( void * w, fd_repair_protocol_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9365 : ulong fd_repair_protocol_size( fd_repair_protocol_t const * self );
9366 : ulong fd_repair_protocol_footprint( void );
9367 : ulong fd_repair_protocol_align( void );
9368 : int fd_repair_protocol_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9369 : int fd_repair_protocol_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9370 : void * fd_repair_protocol_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9371 : void fd_repair_protocol_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9372 : void * fd_repair_protocol_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9373 : void fd_repair_protocol_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9374 : int fd_repair_protocol_convert_global_to_local( void const * global_self, fd_repair_protocol_t * self, fd_bincode_decode_ctx_t * ctx );
9375 :
9376 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyWindowIndex( fd_repair_protocol_t const * self );
9377 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyHighestWindowIndex( fd_repair_protocol_t const * self );
9378 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyOrphan( fd_repair_protocol_t const * self );
9379 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyWindowIndexWithNonce( fd_repair_protocol_t const * self );
9380 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyHighestWindowIndexWithNonce( fd_repair_protocol_t const * self );
9381 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyOrphanWithNonce( fd_repair_protocol_t const * self );
9382 : FD_FN_PURE uchar fd_repair_protocol_is_LegacyAncestorHashes( fd_repair_protocol_t const * self );
9383 : FD_FN_PURE uchar fd_repair_protocol_is_pong( fd_repair_protocol_t const * self );
9384 : FD_FN_PURE uchar fd_repair_protocol_is_window_index( fd_repair_protocol_t const * self );
9385 : FD_FN_PURE uchar fd_repair_protocol_is_highest_window_index( fd_repair_protocol_t const * self );
9386 : FD_FN_PURE uchar fd_repair_protocol_is_orphan( fd_repair_protocol_t const * self );
9387 : FD_FN_PURE uchar fd_repair_protocol_is_ancestor_hashes( fd_repair_protocol_t const * self );
9388 : enum {
9389 : fd_repair_protocol_enum_LegacyWindowIndex = 0,
9390 : fd_repair_protocol_enum_LegacyHighestWindowIndex = 1,
9391 : fd_repair_protocol_enum_LegacyOrphan = 2,
9392 : fd_repair_protocol_enum_LegacyWindowIndexWithNonce = 3,
9393 : fd_repair_protocol_enum_LegacyHighestWindowIndexWithNonce = 4,
9394 : fd_repair_protocol_enum_LegacyOrphanWithNonce = 5,
9395 : fd_repair_protocol_enum_LegacyAncestorHashes = 6,
9396 : fd_repair_protocol_enum_pong = 7,
9397 : fd_repair_protocol_enum_window_index = 8,
9398 : fd_repair_protocol_enum_highest_window_index = 9,
9399 : fd_repair_protocol_enum_orphan = 10,
9400 : fd_repair_protocol_enum_ancestor_hashes = 11,
9401 : };
9402 : void fd_repair_response_new_disc( fd_repair_response_t * self, uint discriminant );
9403 : void fd_repair_response_new( fd_repair_response_t * self );
9404 : int fd_repair_response_encode( fd_repair_response_t const * self, fd_bincode_encode_ctx_t * ctx );
9405 : void fd_repair_response_destroy( fd_repair_response_t * self );
9406 : void fd_repair_response_walk( void * w, fd_repair_response_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9407 : ulong fd_repair_response_size( fd_repair_response_t const * self );
9408 : ulong fd_repair_response_footprint( void );
9409 : ulong fd_repair_response_align( void );
9410 : int fd_repair_response_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9411 : int fd_repair_response_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9412 : void * fd_repair_response_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9413 : void fd_repair_response_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9414 : void * fd_repair_response_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9415 : void fd_repair_response_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9416 : int fd_repair_response_convert_global_to_local( void const * global_self, fd_repair_response_t * self, fd_bincode_decode_ctx_t * ctx );
9417 :
9418 : FD_FN_PURE uchar fd_repair_response_is_ping( fd_repair_response_t const * self );
9419 : enum {
9420 : fd_repair_response_enum_ping = 0,
9421 : };
9422 : void fd_instr_error_enum_new_disc( fd_instr_error_enum_t * self, uint discriminant );
9423 : void fd_instr_error_enum_new( fd_instr_error_enum_t * self );
9424 : int fd_instr_error_enum_encode( fd_instr_error_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
9425 : void fd_instr_error_enum_destroy( fd_instr_error_enum_t * self );
9426 : 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 );
9427 : ulong fd_instr_error_enum_size( fd_instr_error_enum_t const * self );
9428 : ulong fd_instr_error_enum_footprint( void );
9429 : ulong fd_instr_error_enum_align( void );
9430 : int fd_instr_error_enum_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9431 : int fd_instr_error_enum_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9432 : void * fd_instr_error_enum_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9433 : void fd_instr_error_enum_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9434 : void * fd_instr_error_enum_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9435 : void fd_instr_error_enum_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9436 : int fd_instr_error_enum_convert_global_to_local( void const * global_self, fd_instr_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
9437 :
9438 : FD_FN_PURE uchar fd_instr_error_enum_is_generic_error( fd_instr_error_enum_t const * self );
9439 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_argument( fd_instr_error_enum_t const * self );
9440 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_instruction_data( fd_instr_error_enum_t const * self );
9441 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_account_data( fd_instr_error_enum_t const * self );
9442 : FD_FN_PURE uchar fd_instr_error_enum_is_account_data_too_small( fd_instr_error_enum_t const * self );
9443 : FD_FN_PURE uchar fd_instr_error_enum_is_insufficient_funds( fd_instr_error_enum_t const * self );
9444 : FD_FN_PURE uchar fd_instr_error_enum_is_incorrect_program_id( fd_instr_error_enum_t const * self );
9445 : FD_FN_PURE uchar fd_instr_error_enum_is_missing_required_signature( fd_instr_error_enum_t const * self );
9446 : FD_FN_PURE uchar fd_instr_error_enum_is_account_already_initialized( fd_instr_error_enum_t const * self );
9447 : FD_FN_PURE uchar fd_instr_error_enum_is_uninitialized_account( fd_instr_error_enum_t const * self );
9448 : FD_FN_PURE uchar fd_instr_error_enum_is_unbalanced_instruction( fd_instr_error_enum_t const * self );
9449 : FD_FN_PURE uchar fd_instr_error_enum_is_modified_program_id( fd_instr_error_enum_t const * self );
9450 : FD_FN_PURE uchar fd_instr_error_enum_is_external_account_lamport_spend( fd_instr_error_enum_t const * self );
9451 : FD_FN_PURE uchar fd_instr_error_enum_is_external_account_data_modified( fd_instr_error_enum_t const * self );
9452 : FD_FN_PURE uchar fd_instr_error_enum_is_readonly_lamport_change( fd_instr_error_enum_t const * self );
9453 : FD_FN_PURE uchar fd_instr_error_enum_is_readonly_data_modified( fd_instr_error_enum_t const * self );
9454 : FD_FN_PURE uchar fd_instr_error_enum_is_duplicate_account_index( fd_instr_error_enum_t const * self );
9455 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_modified( fd_instr_error_enum_t const * self );
9456 : FD_FN_PURE uchar fd_instr_error_enum_is_rent_epoch_modified( fd_instr_error_enum_t const * self );
9457 : FD_FN_PURE uchar fd_instr_error_enum_is_not_enough_account_keys( fd_instr_error_enum_t const * self );
9458 : FD_FN_PURE uchar fd_instr_error_enum_is_account_data_size_changed( fd_instr_error_enum_t const * self );
9459 : FD_FN_PURE uchar fd_instr_error_enum_is_account_not_executable( fd_instr_error_enum_t const * self );
9460 : FD_FN_PURE uchar fd_instr_error_enum_is_account_borrow_failed( fd_instr_error_enum_t const * self );
9461 : FD_FN_PURE uchar fd_instr_error_enum_is_account_borrow_outstanding( fd_instr_error_enum_t const * self );
9462 : FD_FN_PURE uchar fd_instr_error_enum_is_duplicate_account_out_of_sync( fd_instr_error_enum_t const * self );
9463 : FD_FN_PURE uchar fd_instr_error_enum_is_custom( fd_instr_error_enum_t const * self );
9464 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_error( fd_instr_error_enum_t const * self );
9465 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_data_modified( fd_instr_error_enum_t const * self );
9466 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_lamport_change( fd_instr_error_enum_t const * self );
9467 : FD_FN_PURE uchar fd_instr_error_enum_is_executable_account_not_rent_exempt( fd_instr_error_enum_t const * self );
9468 : FD_FN_PURE uchar fd_instr_error_enum_is_unsupported_program_id( fd_instr_error_enum_t const * self );
9469 : FD_FN_PURE uchar fd_instr_error_enum_is_call_depth( fd_instr_error_enum_t const * self );
9470 : FD_FN_PURE uchar fd_instr_error_enum_is_missing_account( fd_instr_error_enum_t const * self );
9471 : FD_FN_PURE uchar fd_instr_error_enum_is_reentrancy_not_allowed( fd_instr_error_enum_t const * self );
9472 : FD_FN_PURE uchar fd_instr_error_enum_is_max_seed_length_exceeded( fd_instr_error_enum_t const * self );
9473 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_seeds( fd_instr_error_enum_t const * self );
9474 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_realloc( fd_instr_error_enum_t const * self );
9475 : FD_FN_PURE uchar fd_instr_error_enum_is_computational_budget_exceeded( fd_instr_error_enum_t const * self );
9476 : FD_FN_PURE uchar fd_instr_error_enum_is_privilege_escalation( fd_instr_error_enum_t const * self );
9477 : FD_FN_PURE uchar fd_instr_error_enum_is_program_environment_setup_failure( fd_instr_error_enum_t const * self );
9478 : FD_FN_PURE uchar fd_instr_error_enum_is_program_failed_to_complete( fd_instr_error_enum_t const * self );
9479 : FD_FN_PURE uchar fd_instr_error_enum_is_program_failed_to_compile( fd_instr_error_enum_t const * self );
9480 : FD_FN_PURE uchar fd_instr_error_enum_is_immutable( fd_instr_error_enum_t const * self );
9481 : FD_FN_PURE uchar fd_instr_error_enum_is_incorrect_authority( fd_instr_error_enum_t const * self );
9482 : FD_FN_PURE uchar fd_instr_error_enum_is_borsh_io_error( fd_instr_error_enum_t const * self );
9483 : FD_FN_PURE uchar fd_instr_error_enum_is_account_not_rent_exempt( fd_instr_error_enum_t const * self );
9484 : FD_FN_PURE uchar fd_instr_error_enum_is_invalid_account_owner( fd_instr_error_enum_t const * self );
9485 : FD_FN_PURE uchar fd_instr_error_enum_is_arithmetic_overflow( fd_instr_error_enum_t const * self );
9486 : FD_FN_PURE uchar fd_instr_error_enum_is_unsupported_sysvar( fd_instr_error_enum_t const * self );
9487 : FD_FN_PURE uchar fd_instr_error_enum_is_illegal_owner( fd_instr_error_enum_t const * self );
9488 : FD_FN_PURE uchar fd_instr_error_enum_is_max_accounts_data_allocations_exceeded( fd_instr_error_enum_t const * self );
9489 : FD_FN_PURE uchar fd_instr_error_enum_is_max_accounts_exceeded( fd_instr_error_enum_t const * self );
9490 : FD_FN_PURE uchar fd_instr_error_enum_is_max_instruction_trace_length_exceeded( fd_instr_error_enum_t const * self );
9491 : FD_FN_PURE uchar fd_instr_error_enum_is_builtin_programs_must_consume_compute_units( fd_instr_error_enum_t const * self );
9492 : enum {
9493 : fd_instr_error_enum_enum_generic_error = 0,
9494 : fd_instr_error_enum_enum_invalid_argument = 1,
9495 : fd_instr_error_enum_enum_invalid_instruction_data = 2,
9496 : fd_instr_error_enum_enum_invalid_account_data = 3,
9497 : fd_instr_error_enum_enum_account_data_too_small = 4,
9498 : fd_instr_error_enum_enum_insufficient_funds = 5,
9499 : fd_instr_error_enum_enum_incorrect_program_id = 6,
9500 : fd_instr_error_enum_enum_missing_required_signature = 7,
9501 : fd_instr_error_enum_enum_account_already_initialized = 8,
9502 : fd_instr_error_enum_enum_uninitialized_account = 9,
9503 : fd_instr_error_enum_enum_unbalanced_instruction = 10,
9504 : fd_instr_error_enum_enum_modified_program_id = 11,
9505 : fd_instr_error_enum_enum_external_account_lamport_spend = 12,
9506 : fd_instr_error_enum_enum_external_account_data_modified = 13,
9507 : fd_instr_error_enum_enum_readonly_lamport_change = 14,
9508 : fd_instr_error_enum_enum_readonly_data_modified = 15,
9509 : fd_instr_error_enum_enum_duplicate_account_index = 16,
9510 : fd_instr_error_enum_enum_executable_modified = 17,
9511 : fd_instr_error_enum_enum_rent_epoch_modified = 18,
9512 : fd_instr_error_enum_enum_not_enough_account_keys = 19,
9513 : fd_instr_error_enum_enum_account_data_size_changed = 20,
9514 : fd_instr_error_enum_enum_account_not_executable = 21,
9515 : fd_instr_error_enum_enum_account_borrow_failed = 22,
9516 : fd_instr_error_enum_enum_account_borrow_outstanding = 23,
9517 : fd_instr_error_enum_enum_duplicate_account_out_of_sync = 24,
9518 : fd_instr_error_enum_enum_custom = 25,
9519 : fd_instr_error_enum_enum_invalid_error = 26,
9520 : fd_instr_error_enum_enum_executable_data_modified = 27,
9521 : fd_instr_error_enum_enum_executable_lamport_change = 28,
9522 : fd_instr_error_enum_enum_executable_account_not_rent_exempt = 29,
9523 : fd_instr_error_enum_enum_unsupported_program_id = 30,
9524 : fd_instr_error_enum_enum_call_depth = 31,
9525 : fd_instr_error_enum_enum_missing_account = 32,
9526 : fd_instr_error_enum_enum_reentrancy_not_allowed = 33,
9527 : fd_instr_error_enum_enum_max_seed_length_exceeded = 34,
9528 : fd_instr_error_enum_enum_invalid_seeds = 35,
9529 : fd_instr_error_enum_enum_invalid_realloc = 36,
9530 : fd_instr_error_enum_enum_computational_budget_exceeded = 37,
9531 : fd_instr_error_enum_enum_privilege_escalation = 38,
9532 : fd_instr_error_enum_enum_program_environment_setup_failure = 39,
9533 : fd_instr_error_enum_enum_program_failed_to_complete = 40,
9534 : fd_instr_error_enum_enum_program_failed_to_compile = 41,
9535 : fd_instr_error_enum_enum_immutable = 42,
9536 : fd_instr_error_enum_enum_incorrect_authority = 43,
9537 : fd_instr_error_enum_enum_borsh_io_error = 44,
9538 : fd_instr_error_enum_enum_account_not_rent_exempt = 45,
9539 : fd_instr_error_enum_enum_invalid_account_owner = 46,
9540 : fd_instr_error_enum_enum_arithmetic_overflow = 47,
9541 : fd_instr_error_enum_enum_unsupported_sysvar = 48,
9542 : fd_instr_error_enum_enum_illegal_owner = 49,
9543 : fd_instr_error_enum_enum_max_accounts_data_allocations_exceeded = 50,
9544 : fd_instr_error_enum_enum_max_accounts_exceeded = 51,
9545 : fd_instr_error_enum_enum_max_instruction_trace_length_exceeded = 52,
9546 : fd_instr_error_enum_enum_builtin_programs_must_consume_compute_units = 53,
9547 : };
9548 : void fd_txn_instr_error_new( fd_txn_instr_error_t * self );
9549 : int fd_txn_instr_error_encode( fd_txn_instr_error_t const * self, fd_bincode_encode_ctx_t * ctx );
9550 : void fd_txn_instr_error_destroy( fd_txn_instr_error_t * self );
9551 : 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 );
9552 : ulong fd_txn_instr_error_size( fd_txn_instr_error_t const * self );
9553 : ulong fd_txn_instr_error_footprint( void );
9554 : ulong fd_txn_instr_error_align( void );
9555 : int fd_txn_instr_error_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9556 : int fd_txn_instr_error_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9557 : void * fd_txn_instr_error_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9558 : void fd_txn_instr_error_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9559 : void * fd_txn_instr_error_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9560 : void fd_txn_instr_error_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9561 : int fd_txn_instr_error_convert_global_to_local( void const * global_self, fd_txn_instr_error_t * self, fd_bincode_decode_ctx_t * ctx );
9562 :
9563 : void fd_txn_error_enum_new_disc( fd_txn_error_enum_t * self, uint discriminant );
9564 : void fd_txn_error_enum_new( fd_txn_error_enum_t * self );
9565 : int fd_txn_error_enum_encode( fd_txn_error_enum_t const * self, fd_bincode_encode_ctx_t * ctx );
9566 : void fd_txn_error_enum_destroy( fd_txn_error_enum_t * self );
9567 : 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 );
9568 : ulong fd_txn_error_enum_size( fd_txn_error_enum_t const * self );
9569 : ulong fd_txn_error_enum_footprint( void );
9570 : ulong fd_txn_error_enum_align( void );
9571 : int fd_txn_error_enum_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9572 : int fd_txn_error_enum_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9573 : void * fd_txn_error_enum_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9574 : void fd_txn_error_enum_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9575 : void * fd_txn_error_enum_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9576 : void fd_txn_error_enum_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9577 : int fd_txn_error_enum_convert_global_to_local( void const * global_self, fd_txn_error_enum_t * self, fd_bincode_decode_ctx_t * ctx );
9578 :
9579 : FD_FN_PURE uchar fd_txn_error_enum_is_account_in_use( fd_txn_error_enum_t const * self );
9580 : FD_FN_PURE uchar fd_txn_error_enum_is_account_loaded_twice( fd_txn_error_enum_t const * self );
9581 : FD_FN_PURE uchar fd_txn_error_enum_is_account_not_found( fd_txn_error_enum_t const * self );
9582 : FD_FN_PURE uchar fd_txn_error_enum_is_program_account_not_found( fd_txn_error_enum_t const * self );
9583 : FD_FN_PURE uchar fd_txn_error_enum_is_insufficient_funds_for_fee( fd_txn_error_enum_t const * self );
9584 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_account_for_fee( fd_txn_error_enum_t const * self );
9585 : FD_FN_PURE uchar fd_txn_error_enum_is_already_processed( fd_txn_error_enum_t const * self );
9586 : FD_FN_PURE uchar fd_txn_error_enum_is_blockhash_not_found( fd_txn_error_enum_t const * self );
9587 : FD_FN_PURE uchar fd_txn_error_enum_is_instruction_error( fd_txn_error_enum_t const * self );
9588 : FD_FN_PURE uchar fd_txn_error_enum_is_call_chain_too_deep( fd_txn_error_enum_t const * self );
9589 : FD_FN_PURE uchar fd_txn_error_enum_is_missing_signature_for_fee( fd_txn_error_enum_t const * self );
9590 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_account_index( fd_txn_error_enum_t const * self );
9591 : FD_FN_PURE uchar fd_txn_error_enum_is_signature_failure( fd_txn_error_enum_t const * self );
9592 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_program_for_execution( fd_txn_error_enum_t const * self );
9593 : FD_FN_PURE uchar fd_txn_error_enum_is_sanitize_failure( fd_txn_error_enum_t const * self );
9594 : FD_FN_PURE uchar fd_txn_error_enum_is_cluster_maintenance( fd_txn_error_enum_t const * self );
9595 : FD_FN_PURE uchar fd_txn_error_enum_is_account_borrow_outstanding( fd_txn_error_enum_t const * self );
9596 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_block_cost_limit( fd_txn_error_enum_t const * self );
9597 : FD_FN_PURE uchar fd_txn_error_enum_is_unsupported_version( fd_txn_error_enum_t const * self );
9598 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_writable_account( fd_txn_error_enum_t const * self );
9599 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_account_cost_limit( fd_txn_error_enum_t const * self );
9600 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_account_data_block_limit( fd_txn_error_enum_t const * self );
9601 : FD_FN_PURE uchar fd_txn_error_enum_is_too_many_account_locks( fd_txn_error_enum_t const * self );
9602 : FD_FN_PURE uchar fd_txn_error_enum_is_address_lookup_table_not_found( fd_txn_error_enum_t const * self );
9603 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_owner( fd_txn_error_enum_t const * self );
9604 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_data( fd_txn_error_enum_t const * self );
9605 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_address_lookup_table_index( fd_txn_error_enum_t const * self );
9606 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_rent_paying_account( fd_txn_error_enum_t const * self );
9607 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_max_vote_cost_limit( fd_txn_error_enum_t const * self );
9608 : FD_FN_PURE uchar fd_txn_error_enum_is_would_exceed_account_data_total_limit( fd_txn_error_enum_t const * self );
9609 : FD_FN_PURE uchar fd_txn_error_enum_is_duplicate_instruction( fd_txn_error_enum_t const * self );
9610 : FD_FN_PURE uchar fd_txn_error_enum_is_insufficient_funds_for_rent( fd_txn_error_enum_t const * self );
9611 : FD_FN_PURE uchar fd_txn_error_enum_is_max_loaded_accounts_data_size_exceeded( fd_txn_error_enum_t const * self );
9612 : FD_FN_PURE uchar fd_txn_error_enum_is_invalid_loaded_accounts_data_size_limit( fd_txn_error_enum_t const * self );
9613 : FD_FN_PURE uchar fd_txn_error_enum_is_resanitization_needed( fd_txn_error_enum_t const * self );
9614 : FD_FN_PURE uchar fd_txn_error_enum_is_program_execution_temporarily_restricted( fd_txn_error_enum_t const * self );
9615 : FD_FN_PURE uchar fd_txn_error_enum_is_unbalanced_transaction( fd_txn_error_enum_t const * self );
9616 : enum {
9617 : fd_txn_error_enum_enum_account_in_use = 0,
9618 : fd_txn_error_enum_enum_account_loaded_twice = 1,
9619 : fd_txn_error_enum_enum_account_not_found = 2,
9620 : fd_txn_error_enum_enum_program_account_not_found = 3,
9621 : fd_txn_error_enum_enum_insufficient_funds_for_fee = 4,
9622 : fd_txn_error_enum_enum_invalid_account_for_fee = 5,
9623 : fd_txn_error_enum_enum_already_processed = 6,
9624 : fd_txn_error_enum_enum_blockhash_not_found = 7,
9625 : fd_txn_error_enum_enum_instruction_error = 8,
9626 : fd_txn_error_enum_enum_call_chain_too_deep = 9,
9627 : fd_txn_error_enum_enum_missing_signature_for_fee = 10,
9628 : fd_txn_error_enum_enum_invalid_account_index = 11,
9629 : fd_txn_error_enum_enum_signature_failure = 12,
9630 : fd_txn_error_enum_enum_invalid_program_for_execution = 13,
9631 : fd_txn_error_enum_enum_sanitize_failure = 14,
9632 : fd_txn_error_enum_enum_cluster_maintenance = 15,
9633 : fd_txn_error_enum_enum_account_borrow_outstanding = 16,
9634 : fd_txn_error_enum_enum_would_exceed_max_block_cost_limit = 17,
9635 : fd_txn_error_enum_enum_unsupported_version = 18,
9636 : fd_txn_error_enum_enum_invalid_writable_account = 19,
9637 : fd_txn_error_enum_enum_would_exceed_max_account_cost_limit = 20,
9638 : fd_txn_error_enum_enum_would_exceed_account_data_block_limit = 21,
9639 : fd_txn_error_enum_enum_too_many_account_locks = 22,
9640 : fd_txn_error_enum_enum_address_lookup_table_not_found = 23,
9641 : fd_txn_error_enum_enum_invalid_address_lookup_table_owner = 24,
9642 : fd_txn_error_enum_enum_invalid_address_lookup_table_data = 25,
9643 : fd_txn_error_enum_enum_invalid_address_lookup_table_index = 26,
9644 : fd_txn_error_enum_enum_invalid_rent_paying_account = 27,
9645 : fd_txn_error_enum_enum_would_exceed_max_vote_cost_limit = 28,
9646 : fd_txn_error_enum_enum_would_exceed_account_data_total_limit = 29,
9647 : fd_txn_error_enum_enum_duplicate_instruction = 30,
9648 : fd_txn_error_enum_enum_insufficient_funds_for_rent = 31,
9649 : fd_txn_error_enum_enum_max_loaded_accounts_data_size_exceeded = 32,
9650 : fd_txn_error_enum_enum_invalid_loaded_accounts_data_size_limit = 33,
9651 : fd_txn_error_enum_enum_resanitization_needed = 34,
9652 : fd_txn_error_enum_enum_program_execution_temporarily_restricted = 35,
9653 : fd_txn_error_enum_enum_unbalanced_transaction = 36,
9654 : };
9655 : void fd_txn_result_new_disc( fd_txn_result_t * self, uint discriminant );
9656 : void fd_txn_result_new( fd_txn_result_t * self );
9657 : int fd_txn_result_encode( fd_txn_result_t const * self, fd_bincode_encode_ctx_t * ctx );
9658 : void fd_txn_result_destroy( fd_txn_result_t * self );
9659 : void fd_txn_result_walk( void * w, fd_txn_result_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9660 : ulong fd_txn_result_size( fd_txn_result_t const * self );
9661 : ulong fd_txn_result_footprint( void );
9662 : ulong fd_txn_result_align( void );
9663 : int fd_txn_result_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9664 : int fd_txn_result_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9665 : void * fd_txn_result_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9666 : void fd_txn_result_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9667 : void * fd_txn_result_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9668 : void fd_txn_result_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9669 : int fd_txn_result_convert_global_to_local( void const * global_self, fd_txn_result_t * self, fd_bincode_decode_ctx_t * ctx );
9670 :
9671 : FD_FN_PURE uchar fd_txn_result_is_ok( fd_txn_result_t const * self );
9672 : FD_FN_PURE uchar fd_txn_result_is_error( fd_txn_result_t const * self );
9673 : enum {
9674 : fd_txn_result_enum_ok = 0,
9675 : fd_txn_result_enum_error = 1,
9676 : };
9677 : void fd_cache_status_new( fd_cache_status_t * self );
9678 : int fd_cache_status_encode( fd_cache_status_t const * self, fd_bincode_encode_ctx_t * ctx );
9679 : void fd_cache_status_destroy( fd_cache_status_t * self );
9680 : void fd_cache_status_walk( void * w, fd_cache_status_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9681 : ulong fd_cache_status_size( fd_cache_status_t const * self );
9682 : ulong fd_cache_status_footprint( void );
9683 : ulong fd_cache_status_align( void );
9684 : int fd_cache_status_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9685 : int fd_cache_status_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9686 : void * fd_cache_status_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9687 : void fd_cache_status_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9688 : void * fd_cache_status_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9689 : void fd_cache_status_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9690 : int fd_cache_status_convert_global_to_local( void const * global_self, fd_cache_status_t * self, fd_bincode_decode_ctx_t * ctx );
9691 :
9692 : void fd_status_value_new( fd_status_value_t * self );
9693 : int fd_status_value_encode( fd_status_value_t const * self, fd_bincode_encode_ctx_t * ctx );
9694 : void fd_status_value_destroy( fd_status_value_t * self );
9695 : void fd_status_value_walk( void * w, fd_status_value_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9696 : ulong fd_status_value_size( fd_status_value_t const * self );
9697 : ulong fd_status_value_footprint( void );
9698 : ulong fd_status_value_align( void );
9699 : int fd_status_value_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9700 : int fd_status_value_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9701 : void * fd_status_value_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9702 : void fd_status_value_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9703 : void * fd_status_value_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9704 : void fd_status_value_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9705 : int fd_status_value_convert_global_to_local( void const * global_self, fd_status_value_t * self, fd_bincode_decode_ctx_t * ctx );
9706 :
9707 : void fd_status_pair_new( fd_status_pair_t * self );
9708 : int fd_status_pair_encode( fd_status_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
9709 : void fd_status_pair_destroy( fd_status_pair_t * self );
9710 : void fd_status_pair_walk( void * w, fd_status_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9711 : ulong fd_status_pair_size( fd_status_pair_t const * self );
9712 : ulong fd_status_pair_footprint( void );
9713 : ulong fd_status_pair_align( void );
9714 : int fd_status_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9715 : int fd_status_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9716 : void * fd_status_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9717 : void fd_status_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9718 : void * fd_status_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9719 : void fd_status_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9720 : int fd_status_pair_convert_global_to_local( void const * global_self, fd_status_pair_t * self, fd_bincode_decode_ctx_t * ctx );
9721 :
9722 : void fd_slot_delta_new( fd_slot_delta_t * self );
9723 : int fd_slot_delta_encode( fd_slot_delta_t const * self, fd_bincode_encode_ctx_t * ctx );
9724 : void fd_slot_delta_destroy( fd_slot_delta_t * self );
9725 : void fd_slot_delta_walk( void * w, fd_slot_delta_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9726 : ulong fd_slot_delta_size( fd_slot_delta_t const * self );
9727 : ulong fd_slot_delta_footprint( void );
9728 : ulong fd_slot_delta_align( void );
9729 : int fd_slot_delta_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9730 : int fd_slot_delta_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9731 : void * fd_slot_delta_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9732 : void fd_slot_delta_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9733 : void * fd_slot_delta_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9734 : void fd_slot_delta_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9735 : int fd_slot_delta_convert_global_to_local( void const * global_self, fd_slot_delta_t * self, fd_bincode_decode_ctx_t * ctx );
9736 :
9737 : void fd_bank_slot_deltas_new( fd_bank_slot_deltas_t * self );
9738 : int fd_bank_slot_deltas_encode( fd_bank_slot_deltas_t const * self, fd_bincode_encode_ctx_t * ctx );
9739 : void fd_bank_slot_deltas_destroy( fd_bank_slot_deltas_t * self );
9740 : 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 );
9741 : ulong fd_bank_slot_deltas_size( fd_bank_slot_deltas_t const * self );
9742 : ulong fd_bank_slot_deltas_footprint( void );
9743 : ulong fd_bank_slot_deltas_align( void );
9744 : int fd_bank_slot_deltas_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9745 : int fd_bank_slot_deltas_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9746 : void * fd_bank_slot_deltas_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9747 : void fd_bank_slot_deltas_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9748 : void * fd_bank_slot_deltas_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9749 : void fd_bank_slot_deltas_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9750 : int fd_bank_slot_deltas_convert_global_to_local( void const * global_self, fd_bank_slot_deltas_t * self, fd_bincode_decode_ctx_t * ctx );
9751 :
9752 : void fd_pubkey_rewardinfo_pair_new( fd_pubkey_rewardinfo_pair_t * self );
9753 : int fd_pubkey_rewardinfo_pair_encode( fd_pubkey_rewardinfo_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
9754 : void fd_pubkey_rewardinfo_pair_destroy( fd_pubkey_rewardinfo_pair_t * self );
9755 : 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 );
9756 : ulong fd_pubkey_rewardinfo_pair_size( fd_pubkey_rewardinfo_pair_t const * self );
9757 : ulong fd_pubkey_rewardinfo_pair_footprint( void );
9758 : ulong fd_pubkey_rewardinfo_pair_align( void );
9759 : int fd_pubkey_rewardinfo_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9760 : int fd_pubkey_rewardinfo_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9761 : void * fd_pubkey_rewardinfo_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9762 : void fd_pubkey_rewardinfo_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9763 : void * fd_pubkey_rewardinfo_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9764 : void fd_pubkey_rewardinfo_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9765 : int fd_pubkey_rewardinfo_pair_convert_global_to_local( void const * global_self, fd_pubkey_rewardinfo_pair_t * self, fd_bincode_decode_ctx_t * ctx );
9766 :
9767 : void fd_optional_account_new( fd_optional_account_t * self );
9768 : int fd_optional_account_encode( fd_optional_account_t const * self, fd_bincode_encode_ctx_t * ctx );
9769 : void fd_optional_account_destroy( fd_optional_account_t * self );
9770 : void fd_optional_account_walk( void * w, fd_optional_account_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9771 : ulong fd_optional_account_size( fd_optional_account_t const * self );
9772 : ulong fd_optional_account_footprint( void );
9773 : ulong fd_optional_account_align( void );
9774 : int fd_optional_account_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9775 : int fd_optional_account_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9776 : void * fd_optional_account_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9777 : void fd_optional_account_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9778 : void * fd_optional_account_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9779 : void fd_optional_account_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9780 : int fd_optional_account_convert_global_to_local( void const * global_self, fd_optional_account_t * self, fd_bincode_decode_ctx_t * ctx );
9781 :
9782 : void fd_calculated_stake_points_new( fd_calculated_stake_points_t * self );
9783 : int fd_calculated_stake_points_encode( fd_calculated_stake_points_t const * self, fd_bincode_encode_ctx_t * ctx );
9784 : void fd_calculated_stake_points_destroy( fd_calculated_stake_points_t * self );
9785 : 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 );
9786 : ulong fd_calculated_stake_points_size( fd_calculated_stake_points_t const * self );
9787 : ulong fd_calculated_stake_points_footprint( void );
9788 : ulong fd_calculated_stake_points_align( void );
9789 : int fd_calculated_stake_points_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9790 : int fd_calculated_stake_points_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9791 : void * fd_calculated_stake_points_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9792 : void fd_calculated_stake_points_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9793 : void * fd_calculated_stake_points_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9794 : void fd_calculated_stake_points_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9795 : int fd_calculated_stake_points_convert_global_to_local( void const * global_self, fd_calculated_stake_points_t * self, fd_bincode_decode_ctx_t * ctx );
9796 :
9797 : void fd_calculated_stake_rewards_new( fd_calculated_stake_rewards_t * self );
9798 : int fd_calculated_stake_rewards_encode( fd_calculated_stake_rewards_t const * self, fd_bincode_encode_ctx_t * ctx );
9799 : void fd_calculated_stake_rewards_destroy( fd_calculated_stake_rewards_t * self );
9800 : 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 );
9801 : ulong fd_calculated_stake_rewards_size( fd_calculated_stake_rewards_t const * self );
9802 : ulong fd_calculated_stake_rewards_footprint( void );
9803 : ulong fd_calculated_stake_rewards_align( void );
9804 : int fd_calculated_stake_rewards_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9805 : int fd_calculated_stake_rewards_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9806 : void * fd_calculated_stake_rewards_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9807 : void fd_calculated_stake_rewards_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9808 : void * fd_calculated_stake_rewards_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9809 : void fd_calculated_stake_rewards_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9810 : int fd_calculated_stake_rewards_convert_global_to_local( void const * global_self, fd_calculated_stake_rewards_t * self, fd_bincode_decode_ctx_t * ctx );
9811 :
9812 : void fd_duplicate_slot_proof_new( fd_duplicate_slot_proof_t * self );
9813 : int fd_duplicate_slot_proof_encode( fd_duplicate_slot_proof_t const * self, fd_bincode_encode_ctx_t * ctx );
9814 : void fd_duplicate_slot_proof_destroy( fd_duplicate_slot_proof_t * self );
9815 : 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 );
9816 : ulong fd_duplicate_slot_proof_size( fd_duplicate_slot_proof_t const * self );
9817 : ulong fd_duplicate_slot_proof_footprint( void );
9818 : ulong fd_duplicate_slot_proof_align( void );
9819 : int fd_duplicate_slot_proof_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9820 : int fd_duplicate_slot_proof_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9821 : void * fd_duplicate_slot_proof_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9822 : void fd_duplicate_slot_proof_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9823 : void * fd_duplicate_slot_proof_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9824 : void fd_duplicate_slot_proof_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9825 : int fd_duplicate_slot_proof_convert_global_to_local( void const * global_self, fd_duplicate_slot_proof_t * self, fd_bincode_decode_ctx_t * ctx );
9826 :
9827 : void fd_epoch_info_pair_new( fd_epoch_info_pair_t * self );
9828 : int fd_epoch_info_pair_encode( fd_epoch_info_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
9829 : void fd_epoch_info_pair_destroy( fd_epoch_info_pair_t * self );
9830 : void fd_epoch_info_pair_walk( void * w, fd_epoch_info_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9831 : ulong fd_epoch_info_pair_size( fd_epoch_info_pair_t const * self );
9832 : ulong fd_epoch_info_pair_footprint( void );
9833 : ulong fd_epoch_info_pair_align( void );
9834 : int fd_epoch_info_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9835 : int fd_epoch_info_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9836 : void * fd_epoch_info_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9837 : void fd_epoch_info_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9838 : void * fd_epoch_info_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9839 : void fd_epoch_info_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9840 : int fd_epoch_info_pair_convert_global_to_local( void const * global_self, fd_epoch_info_pair_t * self, fd_bincode_decode_ctx_t * ctx );
9841 :
9842 : void fd_vote_info_pair_new( fd_vote_info_pair_t * self );
9843 : int fd_vote_info_pair_encode( fd_vote_info_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
9844 : void fd_vote_info_pair_destroy( fd_vote_info_pair_t * self );
9845 : void fd_vote_info_pair_walk( void * w, fd_vote_info_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9846 : ulong fd_vote_info_pair_size( fd_vote_info_pair_t const * self );
9847 : ulong fd_vote_info_pair_footprint( void );
9848 : ulong fd_vote_info_pair_align( void );
9849 : int fd_vote_info_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9850 : int fd_vote_info_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9851 : void * fd_vote_info_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9852 : void fd_vote_info_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9853 : void * fd_vote_info_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9854 : void fd_vote_info_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9855 : int fd_vote_info_pair_convert_global_to_local( void const * global_self, fd_vote_info_pair_t * self, fd_bincode_decode_ctx_t * ctx );
9856 :
9857 : void fd_epoch_info_new( fd_epoch_info_t * self );
9858 : int fd_epoch_info_encode( fd_epoch_info_t const * self, fd_bincode_encode_ctx_t * ctx );
9859 : void fd_epoch_info_destroy( fd_epoch_info_t * self );
9860 : void fd_epoch_info_walk( void * w, fd_epoch_info_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9861 : ulong fd_epoch_info_size( fd_epoch_info_t const * self );
9862 : ulong fd_epoch_info_footprint( void );
9863 : ulong fd_epoch_info_align( void );
9864 : int fd_epoch_info_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9865 : int fd_epoch_info_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9866 : void * fd_epoch_info_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9867 : void fd_epoch_info_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9868 : void * fd_epoch_info_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9869 : void fd_epoch_info_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9870 : int fd_epoch_info_convert_global_to_local( void const * global_self, fd_epoch_info_t * self, fd_bincode_decode_ctx_t * ctx );
9871 :
9872 : void fd_usage_cost_details_new( fd_usage_cost_details_t * self );
9873 : int fd_usage_cost_details_encode( fd_usage_cost_details_t const * self, fd_bincode_encode_ctx_t * ctx );
9874 : void fd_usage_cost_details_destroy( fd_usage_cost_details_t * self );
9875 : void fd_usage_cost_details_walk( void * w, fd_usage_cost_details_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9876 : ulong fd_usage_cost_details_size( fd_usage_cost_details_t const * self );
9877 : ulong fd_usage_cost_details_footprint( void );
9878 : ulong fd_usage_cost_details_align( void );
9879 : int fd_usage_cost_details_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9880 : int fd_usage_cost_details_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9881 : void * fd_usage_cost_details_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9882 : void fd_usage_cost_details_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9883 : void * fd_usage_cost_details_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9884 : void fd_usage_cost_details_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9885 : int fd_usage_cost_details_convert_global_to_local( void const * global_self, fd_usage_cost_details_t * self, fd_bincode_decode_ctx_t * ctx );
9886 :
9887 : void fd_transaction_cost_new_disc( fd_transaction_cost_t * self, uint discriminant );
9888 : void fd_transaction_cost_new( fd_transaction_cost_t * self );
9889 : int fd_transaction_cost_encode( fd_transaction_cost_t const * self, fd_bincode_encode_ctx_t * ctx );
9890 : void fd_transaction_cost_destroy( fd_transaction_cost_t * self );
9891 : void fd_transaction_cost_walk( void * w, fd_transaction_cost_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9892 : ulong fd_transaction_cost_size( fd_transaction_cost_t const * self );
9893 : ulong fd_transaction_cost_footprint( void );
9894 : ulong fd_transaction_cost_align( void );
9895 : int fd_transaction_cost_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9896 : int fd_transaction_cost_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9897 : void * fd_transaction_cost_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9898 : void fd_transaction_cost_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9899 : void * fd_transaction_cost_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9900 : void fd_transaction_cost_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9901 : int fd_transaction_cost_convert_global_to_local( void const * global_self, fd_transaction_cost_t * self, fd_bincode_decode_ctx_t * ctx );
9902 :
9903 : FD_FN_PURE uchar fd_transaction_cost_is_simple_vote( fd_transaction_cost_t const * self );
9904 : FD_FN_PURE uchar fd_transaction_cost_is_transaction( fd_transaction_cost_t const * self );
9905 : enum {
9906 : fd_transaction_cost_enum_simple_vote = 0,
9907 : fd_transaction_cost_enum_transaction = 1,
9908 : };
9909 : void fd_account_costs_pair_new( fd_account_costs_pair_t * self );
9910 : int fd_account_costs_pair_encode( fd_account_costs_pair_t const * self, fd_bincode_encode_ctx_t * ctx );
9911 : void fd_account_costs_pair_destroy( fd_account_costs_pair_t * self );
9912 : void fd_account_costs_pair_walk( void * w, fd_account_costs_pair_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9913 : ulong fd_account_costs_pair_size( fd_account_costs_pair_t const * self );
9914 : ulong fd_account_costs_pair_footprint( void );
9915 : ulong fd_account_costs_pair_align( void );
9916 : int fd_account_costs_pair_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9917 : int fd_account_costs_pair_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9918 : void * fd_account_costs_pair_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9919 : void fd_account_costs_pair_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9920 : void * fd_account_costs_pair_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9921 : void fd_account_costs_pair_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9922 : int fd_account_costs_pair_convert_global_to_local( void const * global_self, fd_account_costs_pair_t * self, fd_bincode_decode_ctx_t * ctx );
9923 :
9924 : void fd_account_costs_new( fd_account_costs_t * self );
9925 : int fd_account_costs_encode( fd_account_costs_t const * self, fd_bincode_encode_ctx_t * ctx );
9926 : void fd_account_costs_destroy( fd_account_costs_t * self );
9927 : void fd_account_costs_walk( void * w, fd_account_costs_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9928 : ulong fd_account_costs_size( fd_account_costs_t const * self );
9929 : ulong fd_account_costs_footprint( void );
9930 : ulong fd_account_costs_align( void );
9931 : int fd_account_costs_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9932 : int fd_account_costs_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9933 : void * fd_account_costs_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9934 : void fd_account_costs_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9935 : void * fd_account_costs_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9936 : void fd_account_costs_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9937 : int fd_account_costs_convert_global_to_local( void const * global_self, fd_account_costs_t * self, fd_bincode_decode_ctx_t * ctx );
9938 :
9939 : void fd_cost_tracker_new( fd_cost_tracker_t * self );
9940 : int fd_cost_tracker_encode( fd_cost_tracker_t const * self, fd_bincode_encode_ctx_t * ctx );
9941 : void fd_cost_tracker_destroy( fd_cost_tracker_t * self );
9942 : void fd_cost_tracker_walk( void * w, fd_cost_tracker_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9943 : ulong fd_cost_tracker_size( fd_cost_tracker_t const * self );
9944 : ulong fd_cost_tracker_footprint( void );
9945 : ulong fd_cost_tracker_align( void );
9946 : int fd_cost_tracker_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9947 : int fd_cost_tracker_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9948 : void * fd_cost_tracker_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9949 : void fd_cost_tracker_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9950 : void * fd_cost_tracker_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9951 : void fd_cost_tracker_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9952 : int fd_cost_tracker_convert_global_to_local( void const * global_self, fd_cost_tracker_t * self, fd_bincode_decode_ctx_t * ctx );
9953 :
9954 : void fd_pubkey_node_new( fd_pubkey_node_t * self );
9955 : int fd_pubkey_node_encode( fd_pubkey_node_t const * self, fd_bincode_encode_ctx_t * ctx );
9956 : void fd_pubkey_node_destroy( fd_pubkey_node_t * self );
9957 : void fd_pubkey_node_walk( void * w, fd_pubkey_node_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9958 : ulong fd_pubkey_node_size( fd_pubkey_node_t const * self );
9959 : ulong fd_pubkey_node_footprint( void );
9960 : ulong fd_pubkey_node_align( void );
9961 : int fd_pubkey_node_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9962 : int fd_pubkey_node_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9963 : void * fd_pubkey_node_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9964 : void fd_pubkey_node_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9965 : void * fd_pubkey_node_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9966 : void fd_pubkey_node_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9967 : int fd_pubkey_node_convert_global_to_local( void const * global_self, fd_pubkey_node_t * self, fd_bincode_decode_ctx_t * ctx );
9968 :
9969 : void fd_rent_fresh_accounts_partition_new( fd_rent_fresh_accounts_partition_t * self );
9970 : int fd_rent_fresh_accounts_partition_encode( fd_rent_fresh_accounts_partition_t const * self, fd_bincode_encode_ctx_t * ctx );
9971 : void fd_rent_fresh_accounts_partition_destroy( fd_rent_fresh_accounts_partition_t * self );
9972 : void fd_rent_fresh_accounts_partition_walk( void * w, fd_rent_fresh_accounts_partition_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9973 : ulong fd_rent_fresh_accounts_partition_size( fd_rent_fresh_accounts_partition_t const * self );
9974 : ulong fd_rent_fresh_accounts_partition_footprint( void );
9975 : ulong fd_rent_fresh_accounts_partition_align( void );
9976 : int fd_rent_fresh_accounts_partition_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9977 : int fd_rent_fresh_accounts_partition_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9978 : void * fd_rent_fresh_accounts_partition_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9979 : void fd_rent_fresh_accounts_partition_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9980 : void * fd_rent_fresh_accounts_partition_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9981 : void fd_rent_fresh_accounts_partition_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9982 : int fd_rent_fresh_accounts_partition_convert_global_to_local( void const * global_self, fd_rent_fresh_accounts_partition_t * self, fd_bincode_decode_ctx_t * ctx );
9983 :
9984 : void fd_rent_fresh_accounts_new( fd_rent_fresh_accounts_t * self );
9985 : int fd_rent_fresh_accounts_encode( fd_rent_fresh_accounts_t const * self, fd_bincode_encode_ctx_t * ctx );
9986 : void fd_rent_fresh_accounts_destroy( fd_rent_fresh_accounts_t * self );
9987 : void fd_rent_fresh_accounts_walk( void * w, fd_rent_fresh_accounts_t const * self, fd_types_walk_fn_t fun, const char *name, uint level );
9988 : ulong fd_rent_fresh_accounts_size( fd_rent_fresh_accounts_t const * self );
9989 : ulong fd_rent_fresh_accounts_footprint( void );
9990 : ulong fd_rent_fresh_accounts_align( void );
9991 : int fd_rent_fresh_accounts_decode_footprint( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9992 : int fd_rent_fresh_accounts_decode_footprint_inner( fd_bincode_decode_ctx_t * ctx, ulong * total_sz );
9993 : void * fd_rent_fresh_accounts_decode( void * mem, fd_bincode_decode_ctx_t * ctx );
9994 : void fd_rent_fresh_accounts_decode_inner( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9995 : void * fd_rent_fresh_accounts_decode_global( void * mem, fd_bincode_decode_ctx_t * ctx );
9996 : void fd_rent_fresh_accounts_decode_inner_global( void * struct_mem, void * * alloc_mem, fd_bincode_decode_ctx_t * ctx );
9997 : int fd_rent_fresh_accounts_convert_global_to_local( void const * global_self, fd_rent_fresh_accounts_t * self, fd_bincode_decode_ctx_t * ctx );
9998 :
9999 : FD_PROTOTYPES_END
10000 :
10001 : #endif // HEADER_FD_RUNTIME_TYPES
|