@aztec/constants 0.0.1-commit.a5db02d → 0.0.1-commit.aa0c64f

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -79,11 +79,15 @@ export declare const PRIVATE_KERNEL_RESET_VK_INDEX = 23;
79
79
  export declare const PRIVATE_KERNEL_RESET_TAIL_VK_INDEX = 31;
80
80
  export declare const PRIVATE_KERNEL_RESET_TAIL_TO_PUBLIC_VK_INDEX = 37;
81
81
  export declare const PRIVATE_KERNEL_RESET_BLOCK_END = 43;
82
- export declare const PRIVATE_KERNEL_INIT_3_VK_INDEX = 65;
83
- export declare const PRIVATE_KERNEL_INIT_2_VK_INDEX = 66;
84
- export declare const PRIVATE_KERNEL_INNER_2_VK_INDEX = 67;
85
- export declare const PRIVATE_KERNEL_INNER_3_VK_INDEX = 68;
86
- export declare const MAX_APPS_PER_KERNEL = 3;
82
+ export declare const PRIVATE_KERNEL_INIT_2_VK_INDEX = 65;
83
+ export declare const PRIVATE_KERNEL_INIT_3_VK_INDEX = 66;
84
+ export declare const PRIVATE_KERNEL_INIT_4_VK_INDEX = 67;
85
+ export declare const PRIVATE_KERNEL_INIT_5_VK_INDEX = 68;
86
+ export declare const PRIVATE_KERNEL_INNER_2_VK_INDEX = 69;
87
+ export declare const PRIVATE_KERNEL_INNER_3_VK_INDEX = 70;
88
+ export declare const PRIVATE_KERNEL_INNER_4_VK_INDEX = 71;
89
+ export declare const PRIVATE_KERNEL_INNER_5_VK_INDEX = 72;
90
+ export declare const MAX_APPS_PER_KERNEL = 5;
87
91
  export declare const GLOBAL_INDEX_NOTE_HASH_READ_REQUEST_OFFSET = 0;
88
92
  export declare const GLOBAL_INDEX_NULLIFIER_READ_REQUEST_OFFSET = 16;
89
93
  export declare const GLOBAL_INDEX_NOTE_HASH_OFFSET = 32;
@@ -222,7 +226,7 @@ export declare const PRIVATE_TO_ROLLUP_ACCUMULATED_DATA_LENGTH = 1243;
222
226
  export declare const TX_CONSTANT_DATA_LENGTH = 34;
223
227
  export declare const COMBINED_CONSTANT_DATA_LENGTH = 43;
224
228
  export declare const PRIVATE_ACCUMULATED_DATA_LENGTH = 2059;
225
- export declare const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2746;
229
+ export declare const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2745;
226
230
  export declare const PRIVATE_TO_PUBLIC_ACCUMULATED_DATA_LENGTH = 1371;
227
231
  export declare const PRIVATE_TO_AVM_ACCUMULATED_DATA_LENGTH = 152;
228
232
  export declare const NUM_PRIVATE_TO_AVM_ACCUMULATED_DATA_ARRAYS = 3;
@@ -249,13 +253,15 @@ export declare const RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
249
253
  export declare const NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
250
254
  export declare const CHONK_HIDING_OINK_LENGTH = 48;
251
255
  export declare const CHONK_MERGE_PROOF_SIZE = 41;
252
- export declare const CHONK_ECCVM_PROOF_LENGTH = 612;
253
- export declare const CHONK_JOINT_PROOF_LENGTH = 477;
254
- export declare const CHONK_PROOF_LENGTH = 1270;
256
+ export declare const CHONK_ECCVM_PROOF_LENGTH = 556;
257
+ export declare const CHONK_TRIPLE_IPA_PROOF_LENGTH = 70;
258
+ export declare const CHONK_JOINT_PROOF_LENGTH = 478;
259
+ export declare const CHONK_PROOF_LENGTH = 1221;
255
260
  export declare const ULTRA_VK_LENGTH_IN_FIELDS = 115;
256
- export declare const MEGA_VK_LENGTH_IN_FIELDS = 163;
257
- export declare const MEGA_ZK_VK_LENGTH_IN_FIELDS = 115;
258
- export declare const CHONK_VK_LENGTH_IN_FIELDS = 115;
261
+ export declare const MEGA_APP_VK_LENGTH_IN_FIELDS = 151;
262
+ export declare const MEGA_KERNEL_VK_LENGTH_IN_FIELDS = 151;
263
+ export declare const MEGA_ZK_VK_LENGTH_IN_FIELDS = 119;
264
+ export declare const CHONK_VK_LENGTH_IN_FIELDS = 119;
259
265
  export declare const AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS = 86;
260
266
  export declare const MAX_PUBLIC_BYTECODE_SIZE_IN_BYTES = 96000;
261
267
  export declare const MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS = 21;
@@ -294,9 +300,8 @@ export declare const AVM_SUBTRACE_ID_TO_RADIX = 8192;
294
300
  export declare const AVM_DYN_GAS_ID_CALLDATACOPY = 1;
295
301
  export declare const AVM_DYN_GAS_ID_RETURNDATACOPY = 2;
296
302
  export declare const AVM_DYN_GAS_ID_TORADIX = 4;
297
- export declare const AVM_DYN_GAS_ID_BITWISE = 8;
298
- export declare const AVM_DYN_GAS_ID_EMITPUBLICLOG = 16;
299
- export declare const AVM_DYN_GAS_ID_SSTORE = 32;
303
+ export declare const AVM_DYN_GAS_ID_EMITPUBLICLOG = 8;
304
+ export declare const AVM_DYN_GAS_ID_SSTORE = 16;
300
305
  export declare const AVM_EXEC_OP_ID_GETENVVAR = 1;
301
306
  export declare const AVM_EXEC_OP_ID_MOV = 2;
302
307
  export declare const AVM_EXEC_OP_ID_JUMP = 4;
@@ -398,12 +403,17 @@ export declare const AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX = 4683;
398
403
  export declare const AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX = 4684;
399
404
  export declare const AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH = 4685;
400
405
  export declare const AVM_NUM_PUBLIC_INPUT_COLUMNS = 4;
401
- export declare const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 18740;
402
- export declare const AVM_V2_PROOF_LENGTH_IN_FIELDS = 15516;
406
+ export declare const AVM_PUBLIC_INPUTS_COLUMN_0_LENGTH = 4685;
407
+ export declare const AVM_PUBLIC_INPUTS_COLUMN_1_LENGTH = 4683;
408
+ export declare const AVM_PUBLIC_INPUTS_COLUMN_2_LENGTH = 522;
409
+ export declare const AVM_PUBLIC_INPUTS_COLUMN_3_LENGTH = 99;
410
+ export declare const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 9989;
411
+ export declare const AVM_V2_PROOF_LENGTH_IN_FIELDS = 14532;
403
412
  export declare const DA_BYTES_PER_FIELD = 32;
404
413
  export declare const DA_GAS_PER_BYTE = 1;
405
414
  export declare const DA_GAS_PER_FIELD = 32;
406
415
  export declare const TX_DA_GAS_OVERHEAD = 96;
416
+ export declare const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
407
417
  export declare const PUBLIC_TX_L2_GAS_OVERHEAD = 540000;
408
418
  export declare const PRIVATE_TX_L2_GAS_OVERHEAD = 440000;
409
419
  export declare const FIXED_AVM_STARTUP_L2_GAS = 20000;
@@ -412,8 +422,8 @@ export declare const MAX_PROCESSABLE_L2_GAS = 6540000;
412
422
  export declare const MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT = 786432;
413
423
  export declare const L2_GAS_DISTRIBUTED_STORAGE_PREMIUM = 1024;
414
424
  export declare const AVM_PC_SIZE_IN_BITS = 32;
415
- export declare const AVM_MAX_OPERANDS = 7;
416
- export declare const AVM_MAX_REGISTERS = 6;
425
+ export declare const AVM_MAX_OPERANDS = 5;
426
+ export declare const AVM_MAX_REGISTERS = 4;
417
427
  export declare const AVM_ADDRESSING_BASE_RESOLUTION_L2_GAS = 3;
418
428
  export declare const AVM_ADDRESSING_INDIRECT_L2_GAS = 3;
419
429
  export declare const AVM_ADDRESSING_RELATIVE_L2_GAS = 3;
@@ -471,7 +481,6 @@ export declare const AVM_TORADIXBE_BASE_L2_GAS = 24;
471
481
  export declare const AVM_CALLDATACOPY_DYN_L2_GAS = 6;
472
482
  export declare const AVM_RETURNDATACOPY_DYN_L2_GAS = 6;
473
483
  export declare const AVM_TORADIXBE_DYN_L2_GAS = 3;
474
- export declare const AVM_BITWISE_DYN_L2_GAS = 3;
475
484
  export declare const AVM_EMITPUBLICLOG_DYN_L2_GAS = 3;
476
485
  export declare const AVM_EMITNOTEHASH_BASE_DA_GAS = 32;
477
486
  export declare const AVM_EMITNULLIFIER_BASE_DA_GAS = 32;
@@ -489,8 +498,7 @@ export declare const PROOF_TYPE_AVM = 3;
489
498
  export declare const PROOF_TYPE_ROLLUP_HONK = 4;
490
499
  export declare const PROOF_TYPE_ROOT_ROLLUP_HONK = 5;
491
500
  export declare const PROOF_TYPE_HN_FINAL = 7;
492
- export declare const PROOF_TYPE_HN_TAIL = 8;
493
- export declare const PROOF_TYPE_CHONK = 9;
501
+ export declare const PROOF_TYPE_CHONK = 8;
494
502
  export declare const TWO_POW_64 = 18446744073709551616n;
495
503
  export declare const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT = 6;
496
504
  export declare const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT = 8857725174171741160013581538021104168730942281584695363072221389187184558934n;
@@ -510,7 +518,6 @@ export declare const UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE = 144;
510
518
  export declare const GRUMPKIN_ONE_X = 1;
511
519
  export declare const GRUMPKIN_ONE_Y = 17631683881184975370165255887551781615748388533673675138860n;
512
520
  export declare const DEFAULT_MAX_DEBUG_LOG_MEMORY_READS = 125000;
513
- export declare const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
514
521
  export declare enum DomainSeparator {
515
522
  NOTE_HASH = 116501019,
516
523
  PARTIAL_NOTE_COMMITMENT = 568912195,
@@ -581,4 +588,4 @@ export declare enum DomainSeparator {
581
588
  BLOB_GAMMA_ACC = 855632775,
582
589
  BLOB_GAMMA_FINAL = 1755883835
583
590
  }
584
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmdlbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy5nZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsZUFBTyxNQUFNLGVBQWUsaUZBQWlGLENBQUM7QUFDOUcsZUFBTyxNQUFNLHdCQUF3QixNQUFNLENBQUM7QUFDNUMsZUFBTyxNQUFNLHFCQUFxQixxREFBcUQsQ0FBQztBQUN4RixlQUFPLE1BQU0sYUFBYSx3QkFBd0IsQ0FBQztBQUNuRCxlQUFPLE1BQU0sYUFBYSxhQUFhLENBQUM7QUFDeEMsZUFBTyxNQUFNLHFDQUFxQyxRQUFRLENBQUM7QUFDM0QsZUFBTyxNQUFNLGNBQWMsS0FBSyxDQUFDO0FBQ2pDLGVBQU8sTUFBTSxjQUFjLElBQUksQ0FBQztBQUNoQyxlQUFPLE1BQU0sb0JBQW9CLElBQUksQ0FBQztBQUN0QyxlQUFPLE1BQU0scUJBQXFCLEtBQUssQ0FBQztBQUN4QyxlQUFPLE1BQU0sdUJBQXVCLEtBQUssQ0FBQztBQUMxQyxlQUFPLE1BQU0scUJBQXFCLEtBQUssQ0FBQztBQUN4QyxlQUFPLE1BQU0sd0JBQXdCLEtBQUssQ0FBQztBQUMzQyxlQUFPLE1BQU0sb0JBQW9CLElBQUksQ0FBQztBQUN0QyxlQUFPLE1BQU0saUNBQWlDLElBQUksQ0FBQztBQUNuRCxlQUFPLE1BQU0saUJBQWlCLElBQUksQ0FBQztBQUNuQyxlQUFPLE1BQU0saUJBQWlCLElBQUksQ0FBQztBQUNuQyxlQUFPLE1BQU0sbUJBQW1CLElBQUksQ0FBQztBQUNyQyxlQUFPLE1BQU0sd0JBQXdCLElBQUksQ0FBQztBQUMxQyxlQUFPLE1BQU0sZUFBZSxJQUFJLENBQUM7QUFDakMsZUFBTyxNQUFNLHlCQUF5QixnQkFBZ0IsQ0FBQztBQUN2RCxlQUFPLE1BQU0sNEJBQTRCLGNBQWMsQ0FBQztBQUN4RCxlQUFPLE1BQU0sd0JBQXdCLEtBQUssQ0FBQztBQUMzQyxlQUFPLE1BQU0sd0JBQXdCLElBQUks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
591
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmdlbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy5nZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsZUFBTyxNQUFNLGVBQWUsaUZBQWlGLENBQUM7QUFDOUcsZUFBTyxNQUFNLHdCQUF3QixNQUFNLENBQUM7QUFDNUMsZUFBTyxNQUFNLHFCQUFxQixxREFBcUQsQ0FBQztBQUN4RixlQUFPLE1BQU0sYUFBYSx3QkFBd0IsQ0FBQztBQUNuRCxlQUFPLE1BQU0sYUFBYSxhQUFhLENBQUM7QUFDeEMsZUFBTyxNQUFNLHFDQUFxQyxRQUFRLENBQUM7QUFDM0QsZUFBTyxNQUFNLGNBQWMsS0FBSyxDQUFDO0FBQ2pDLGVBQU8sTUFBTSxjQUFjLElBQUksQ0FBQztBQUNoQyxlQUFPLE1BQU0sb0JBQW9CLElBQUksQ0FBQztBQUN0QyxlQUFPLE1BQU0scUJBQXFCLEtBQUssQ0FBQztBQUN4QyxlQUFPLE1BQU0sdUJBQXVCLEtBQUssQ0FBQztBQUMxQyxlQUFPLE1BQU0scUJBQXFCLEtBQUssQ0FBQztBQUN4QyxlQUFPLE1BQU0sd0JBQXdCLEtBQUssQ0FBQztBQUMzQyxlQUFPLE1BQU0sb0JBQW9CLElBQUksQ0FBQztBQUN0QyxlQUFPLE1BQU0saUNBQWlDLElBQUksQ0FBQztBQUNuRCxlQUFPLE1BQU0saUJBQWlCLElBQUksQ0FBQztBQUNuQyxlQUFPLE1BQU0saUJBQWlCLElBQUksQ0FBQztBQUNuQyxlQUFPLE1BQU0sbUJBQW1CLElBQUksQ0FBQztBQUNyQyxlQUFPLE1BQU0sd0JBQXdCLElBQUksQ0FBQztBQUMxQyxlQUFPLE1BQU0sZUFBZSxJQUFJLENBQUM7QUFDakMsZUFBTyxNQUFNLHlCQUF5QixnQkFBZ0IsQ0FBQztBQUN2RCxlQUFPLE1BQU0sNEJBQTRCLGNBQWMsQ0FBQztBQUN4RCxlQUFPLE1BQU0sd0JBQXdCLEtBQUssQ0FBQztBQUMzQyxlQUFPLE1BQU0sd0JBQXdCLElBQUks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
@@ -1 +1 @@
1
- {"version":3,"file":"constants.gen.d.ts","sourceRoot":"","sources":["../src/constants.gen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.gen.d.ts","sourceRoot":"","sources":["../src/constants.gen.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants
1
+ // GENERATED FILE - DO NOT EDIT
2
2
  export const MAX_FIELD_VALUE = 21888242871839275222246405745257275088548364400416034343698204186575808495616n;
3
3
  export const MAX_ETH_ADDRESS_BIT_SIZE = 160;
4
4
  export const MAX_ETH_ADDRESS_VALUE = 1461501637330902918203684832716283019655932542975n;
@@ -80,11 +80,15 @@ export const PRIVATE_KERNEL_RESET_VK_INDEX = 23;
80
80
  export const PRIVATE_KERNEL_RESET_TAIL_VK_INDEX = 31;
81
81
  export const PRIVATE_KERNEL_RESET_TAIL_TO_PUBLIC_VK_INDEX = 37;
82
82
  export const PRIVATE_KERNEL_RESET_BLOCK_END = 43;
83
- export const PRIVATE_KERNEL_INIT_3_VK_INDEX = 65;
84
- export const PRIVATE_KERNEL_INIT_2_VK_INDEX = 66;
85
- export const PRIVATE_KERNEL_INNER_2_VK_INDEX = 67;
86
- export const PRIVATE_KERNEL_INNER_3_VK_INDEX = 68;
87
- export const MAX_APPS_PER_KERNEL = 3;
83
+ export const PRIVATE_KERNEL_INIT_2_VK_INDEX = 65;
84
+ export const PRIVATE_KERNEL_INIT_3_VK_INDEX = 66;
85
+ export const PRIVATE_KERNEL_INIT_4_VK_INDEX = 67;
86
+ export const PRIVATE_KERNEL_INIT_5_VK_INDEX = 68;
87
+ export const PRIVATE_KERNEL_INNER_2_VK_INDEX = 69;
88
+ export const PRIVATE_KERNEL_INNER_3_VK_INDEX = 70;
89
+ export const PRIVATE_KERNEL_INNER_4_VK_INDEX = 71;
90
+ export const PRIVATE_KERNEL_INNER_5_VK_INDEX = 72;
91
+ export const MAX_APPS_PER_KERNEL = 5;
88
92
  export const GLOBAL_INDEX_NOTE_HASH_READ_REQUEST_OFFSET = 0;
89
93
  export const GLOBAL_INDEX_NULLIFIER_READ_REQUEST_OFFSET = 16;
90
94
  export const GLOBAL_INDEX_NOTE_HASH_OFFSET = 32;
@@ -223,7 +227,7 @@ export const PRIVATE_TO_ROLLUP_ACCUMULATED_DATA_LENGTH = 1243;
223
227
  export const TX_CONSTANT_DATA_LENGTH = 34;
224
228
  export const COMBINED_CONSTANT_DATA_LENGTH = 43;
225
229
  export const PRIVATE_ACCUMULATED_DATA_LENGTH = 2059;
226
- export const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2746;
230
+ export const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2745;
227
231
  export const PRIVATE_TO_PUBLIC_ACCUMULATED_DATA_LENGTH = 1371;
228
232
  export const PRIVATE_TO_AVM_ACCUMULATED_DATA_LENGTH = 152;
229
233
  export const NUM_PRIVATE_TO_AVM_ACCUMULATED_DATA_ARRAYS = 3;
@@ -250,13 +254,15 @@ export const RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
250
254
  export const NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
251
255
  export const CHONK_HIDING_OINK_LENGTH = 48;
252
256
  export const CHONK_MERGE_PROOF_SIZE = 41;
253
- export const CHONK_ECCVM_PROOF_LENGTH = 612;
254
- export const CHONK_JOINT_PROOF_LENGTH = 477;
255
- export const CHONK_PROOF_LENGTH = 1270;
257
+ export const CHONK_ECCVM_PROOF_LENGTH = 556;
258
+ export const CHONK_TRIPLE_IPA_PROOF_LENGTH = 70;
259
+ export const CHONK_JOINT_PROOF_LENGTH = 478;
260
+ export const CHONK_PROOF_LENGTH = 1221;
256
261
  export const ULTRA_VK_LENGTH_IN_FIELDS = 115;
257
- export const MEGA_VK_LENGTH_IN_FIELDS = 163;
258
- export const MEGA_ZK_VK_LENGTH_IN_FIELDS = 115;
259
- export const CHONK_VK_LENGTH_IN_FIELDS = 115;
262
+ export const MEGA_APP_VK_LENGTH_IN_FIELDS = 151;
263
+ export const MEGA_KERNEL_VK_LENGTH_IN_FIELDS = 151;
264
+ export const MEGA_ZK_VK_LENGTH_IN_FIELDS = 119;
265
+ export const CHONK_VK_LENGTH_IN_FIELDS = 119;
260
266
  export const AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS = 86;
261
267
  export const MAX_PUBLIC_BYTECODE_SIZE_IN_BYTES = 96000;
262
268
  export const MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS = 21;
@@ -295,9 +301,8 @@ export const AVM_SUBTRACE_ID_TO_RADIX = 8192;
295
301
  export const AVM_DYN_GAS_ID_CALLDATACOPY = 1;
296
302
  export const AVM_DYN_GAS_ID_RETURNDATACOPY = 2;
297
303
  export const AVM_DYN_GAS_ID_TORADIX = 4;
298
- export const AVM_DYN_GAS_ID_BITWISE = 8;
299
- export const AVM_DYN_GAS_ID_EMITPUBLICLOG = 16;
300
- export const AVM_DYN_GAS_ID_SSTORE = 32;
304
+ export const AVM_DYN_GAS_ID_EMITPUBLICLOG = 8;
305
+ export const AVM_DYN_GAS_ID_SSTORE = 16;
301
306
  export const AVM_EXEC_OP_ID_GETENVVAR = 1;
302
307
  export const AVM_EXEC_OP_ID_MOV = 2;
303
308
  export const AVM_EXEC_OP_ID_JUMP = 4;
@@ -399,12 +404,17 @@ export const AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX = 4683;
399
404
  export const AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX = 4684;
400
405
  export const AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH = 4685;
401
406
  export const AVM_NUM_PUBLIC_INPUT_COLUMNS = 4;
402
- export const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 18740;
403
- export const AVM_V2_PROOF_LENGTH_IN_FIELDS = 15516;
407
+ export const AVM_PUBLIC_INPUTS_COLUMN_0_LENGTH = 4685;
408
+ export const AVM_PUBLIC_INPUTS_COLUMN_1_LENGTH = 4683;
409
+ export const AVM_PUBLIC_INPUTS_COLUMN_2_LENGTH = 522;
410
+ export const AVM_PUBLIC_INPUTS_COLUMN_3_LENGTH = 99;
411
+ export const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 9989;
412
+ export const AVM_V2_PROOF_LENGTH_IN_FIELDS = 14532;
404
413
  export const DA_BYTES_PER_FIELD = 32;
405
414
  export const DA_GAS_PER_BYTE = 1;
406
415
  export const DA_GAS_PER_FIELD = 32;
407
416
  export const TX_DA_GAS_OVERHEAD = 96;
417
+ export const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
408
418
  export const PUBLIC_TX_L2_GAS_OVERHEAD = 540000;
409
419
  export const PRIVATE_TX_L2_GAS_OVERHEAD = 440000;
410
420
  export const FIXED_AVM_STARTUP_L2_GAS = 20000;
@@ -413,8 +423,8 @@ export const MAX_PROCESSABLE_L2_GAS = 6540000;
413
423
  export const MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT = 786432;
414
424
  export const L2_GAS_DISTRIBUTED_STORAGE_PREMIUM = 1024;
415
425
  export const AVM_PC_SIZE_IN_BITS = 32;
416
- export const AVM_MAX_OPERANDS = 7;
417
- export const AVM_MAX_REGISTERS = 6;
426
+ export const AVM_MAX_OPERANDS = 5;
427
+ export const AVM_MAX_REGISTERS = 4;
418
428
  export const AVM_ADDRESSING_BASE_RESOLUTION_L2_GAS = 3;
419
429
  export const AVM_ADDRESSING_INDIRECT_L2_GAS = 3;
420
430
  export const AVM_ADDRESSING_RELATIVE_L2_GAS = 3;
@@ -472,7 +482,6 @@ export const AVM_TORADIXBE_BASE_L2_GAS = 24;
472
482
  export const AVM_CALLDATACOPY_DYN_L2_GAS = 6;
473
483
  export const AVM_RETURNDATACOPY_DYN_L2_GAS = 6;
474
484
  export const AVM_TORADIXBE_DYN_L2_GAS = 3;
475
- export const AVM_BITWISE_DYN_L2_GAS = 3;
476
485
  export const AVM_EMITPUBLICLOG_DYN_L2_GAS = 3;
477
486
  export const AVM_EMITNOTEHASH_BASE_DA_GAS = 32;
478
487
  export const AVM_EMITNULLIFIER_BASE_DA_GAS = 32;
@@ -490,8 +499,7 @@ export const PROOF_TYPE_AVM = 3;
490
499
  export const PROOF_TYPE_ROLLUP_HONK = 4;
491
500
  export const PROOF_TYPE_ROOT_ROLLUP_HONK = 5;
492
501
  export const PROOF_TYPE_HN_FINAL = 7;
493
- export const PROOF_TYPE_HN_TAIL = 8;
494
- export const PROOF_TYPE_CHONK = 9;
502
+ export const PROOF_TYPE_CHONK = 8;
495
503
  export const TWO_POW_64 = 18446744073709551616n;
496
504
  export const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT = 6;
497
505
  export const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT = 8857725174171741160013581538021104168730942281584695363072221389187184558934n;
@@ -511,7 +519,6 @@ export const UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE = 144;
511
519
  export const GRUMPKIN_ONE_X = 1;
512
520
  export const GRUMPKIN_ONE_Y = 17631683881184975370165255887551781615748388533673675138860n;
513
521
  export const DEFAULT_MAX_DEBUG_LOG_MEMORY_READS = 125000;
514
- export const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
515
522
  export var DomainSeparator = /*#__PURE__*/ function(DomainSeparator) {
516
523
  DomainSeparator[DomainSeparator["NOTE_HASH"] = 116501019] = "NOTE_HASH";
517
524
  DomainSeparator[DomainSeparator["PARTIAL_NOTE_COMMITMENT"] = 568912195] = "PARTIAL_NOTE_COMMITMENT";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/constants",
3
- "version": "0.0.1-commit.a5db02d",
3
+ "version": "0.0.1-commit.aa0c64f",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json"
@@ -19,14 +19,15 @@
19
19
  "build": "yarn clean && ../scripts/tsc.sh",
20
20
  "build:dev": "../scripts/tsc.sh --watch",
21
21
  "clean": "rm -rf ./dest .tsbuildinfo",
22
- "remake-constants": "node --loader @swc-node/register/esm src/scripts/constants.in.ts && cd ../../l1-contracts && forge fmt",
22
+ "generate": "./scripts/remake-constants.sh",
23
23
  "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}"
24
24
  },
25
25
  "dependencies": {
26
- "@aztec/foundation": "0.0.1-commit.a5db02d",
26
+ "@aztec/foundation": "0.0.1-commit.aa0c64f",
27
27
  "tslib": "^2.4.0"
28
28
  },
29
29
  "devDependencies": {
30
+ "@aztec/constants-codegen": "0.0.1-commit.aa0c64f",
30
31
  "@jest/globals": "^30.0.0",
31
32
  "@types/jest": "^30.0.0",
32
33
  "@types/node": "^22.15.17",
@@ -1,4 +1,4 @@
1
- // GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants
1
+ // GENERATED FILE - DO NOT EDIT
2
2
  export const MAX_FIELD_VALUE = 21888242871839275222246405745257275088548364400416034343698204186575808495616n;
3
3
  export const MAX_ETH_ADDRESS_BIT_SIZE = 160;
4
4
  export const MAX_ETH_ADDRESS_VALUE = 1461501637330902918203684832716283019655932542975n;
@@ -80,11 +80,15 @@ export const PRIVATE_KERNEL_RESET_VK_INDEX = 23;
80
80
  export const PRIVATE_KERNEL_RESET_TAIL_VK_INDEX = 31;
81
81
  export const PRIVATE_KERNEL_RESET_TAIL_TO_PUBLIC_VK_INDEX = 37;
82
82
  export const PRIVATE_KERNEL_RESET_BLOCK_END = 43;
83
- export const PRIVATE_KERNEL_INIT_3_VK_INDEX = 65;
84
- export const PRIVATE_KERNEL_INIT_2_VK_INDEX = 66;
85
- export const PRIVATE_KERNEL_INNER_2_VK_INDEX = 67;
86
- export const PRIVATE_KERNEL_INNER_3_VK_INDEX = 68;
87
- export const MAX_APPS_PER_KERNEL = 3;
83
+ export const PRIVATE_KERNEL_INIT_2_VK_INDEX = 65;
84
+ export const PRIVATE_KERNEL_INIT_3_VK_INDEX = 66;
85
+ export const PRIVATE_KERNEL_INIT_4_VK_INDEX = 67;
86
+ export const PRIVATE_KERNEL_INIT_5_VK_INDEX = 68;
87
+ export const PRIVATE_KERNEL_INNER_2_VK_INDEX = 69;
88
+ export const PRIVATE_KERNEL_INNER_3_VK_INDEX = 70;
89
+ export const PRIVATE_KERNEL_INNER_4_VK_INDEX = 71;
90
+ export const PRIVATE_KERNEL_INNER_5_VK_INDEX = 72;
91
+ export const MAX_APPS_PER_KERNEL = 5;
88
92
  export const GLOBAL_INDEX_NOTE_HASH_READ_REQUEST_OFFSET = 0;
89
93
  export const GLOBAL_INDEX_NULLIFIER_READ_REQUEST_OFFSET = 16;
90
94
  export const GLOBAL_INDEX_NOTE_HASH_OFFSET = 32;
@@ -223,7 +227,7 @@ export const PRIVATE_TO_ROLLUP_ACCUMULATED_DATA_LENGTH = 1243;
223
227
  export const TX_CONSTANT_DATA_LENGTH = 34;
224
228
  export const COMBINED_CONSTANT_DATA_LENGTH = 43;
225
229
  export const PRIVATE_ACCUMULATED_DATA_LENGTH = 2059;
226
- export const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2746;
230
+ export const PRIVATE_KERNEL_CIRCUIT_PUBLIC_INPUTS_LENGTH = 2745;
227
231
  export const PRIVATE_TO_PUBLIC_ACCUMULATED_DATA_LENGTH = 1371;
228
232
  export const PRIVATE_TO_AVM_ACCUMULATED_DATA_LENGTH = 152;
229
233
  export const NUM_PRIVATE_TO_AVM_ACCUMULATED_DATA_ARRAYS = 3;
@@ -250,13 +254,15 @@ export const RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
250
254
  export const NESTED_RECURSIVE_ROLLUP_HONK_PROOF_LENGTH = 480;
251
255
  export const CHONK_HIDING_OINK_LENGTH = 48;
252
256
  export const CHONK_MERGE_PROOF_SIZE = 41;
253
- export const CHONK_ECCVM_PROOF_LENGTH = 612;
254
- export const CHONK_JOINT_PROOF_LENGTH = 477;
255
- export const CHONK_PROOF_LENGTH = 1270;
257
+ export const CHONK_ECCVM_PROOF_LENGTH = 556;
258
+ export const CHONK_TRIPLE_IPA_PROOF_LENGTH = 70;
259
+ export const CHONK_JOINT_PROOF_LENGTH = 478;
260
+ export const CHONK_PROOF_LENGTH = 1221;
256
261
  export const ULTRA_VK_LENGTH_IN_FIELDS = 115;
257
- export const MEGA_VK_LENGTH_IN_FIELDS = 163;
258
- export const MEGA_ZK_VK_LENGTH_IN_FIELDS = 115;
259
- export const CHONK_VK_LENGTH_IN_FIELDS = 115;
262
+ export const MEGA_APP_VK_LENGTH_IN_FIELDS = 151;
263
+ export const MEGA_KERNEL_VK_LENGTH_IN_FIELDS = 151;
264
+ export const MEGA_ZK_VK_LENGTH_IN_FIELDS = 119;
265
+ export const CHONK_VK_LENGTH_IN_FIELDS = 119;
260
266
  export const AVM_VERIFICATION_KEY_LENGTH_IN_FIELDS = 86;
261
267
  export const MAX_PUBLIC_BYTECODE_SIZE_IN_BYTES = 96000;
262
268
  export const MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS = 21;
@@ -295,9 +301,8 @@ export const AVM_SUBTRACE_ID_TO_RADIX = 8192;
295
301
  export const AVM_DYN_GAS_ID_CALLDATACOPY = 1;
296
302
  export const AVM_DYN_GAS_ID_RETURNDATACOPY = 2;
297
303
  export const AVM_DYN_GAS_ID_TORADIX = 4;
298
- export const AVM_DYN_GAS_ID_BITWISE = 8;
299
- export const AVM_DYN_GAS_ID_EMITPUBLICLOG = 16;
300
- export const AVM_DYN_GAS_ID_SSTORE = 32;
304
+ export const AVM_DYN_GAS_ID_EMITPUBLICLOG = 8;
305
+ export const AVM_DYN_GAS_ID_SSTORE = 16;
301
306
  export const AVM_EXEC_OP_ID_GETENVVAR = 1;
302
307
  export const AVM_EXEC_OP_ID_MOV = 2;
303
308
  export const AVM_EXEC_OP_ID_JUMP = 4;
@@ -399,12 +404,17 @@ export const AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX = 4683;
399
404
  export const AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX = 4684;
400
405
  export const AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH = 4685;
401
406
  export const AVM_NUM_PUBLIC_INPUT_COLUMNS = 4;
402
- export const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 18740;
403
- export const AVM_V2_PROOF_LENGTH_IN_FIELDS = 15516;
407
+ export const AVM_PUBLIC_INPUTS_COLUMN_0_LENGTH = 4685;
408
+ export const AVM_PUBLIC_INPUTS_COLUMN_1_LENGTH = 4683;
409
+ export const AVM_PUBLIC_INPUTS_COLUMN_2_LENGTH = 522;
410
+ export const AVM_PUBLIC_INPUTS_COLUMN_3_LENGTH = 99;
411
+ export const AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH = 9989;
412
+ export const AVM_V2_PROOF_LENGTH_IN_FIELDS = 14532;
404
413
  export const DA_BYTES_PER_FIELD = 32;
405
414
  export const DA_GAS_PER_BYTE = 1;
406
415
  export const DA_GAS_PER_FIELD = 32;
407
416
  export const TX_DA_GAS_OVERHEAD = 96;
417
+ export const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
408
418
  export const PUBLIC_TX_L2_GAS_OVERHEAD = 540000;
409
419
  export const PRIVATE_TX_L2_GAS_OVERHEAD = 440000;
410
420
  export const FIXED_AVM_STARTUP_L2_GAS = 20000;
@@ -413,8 +423,8 @@ export const MAX_PROCESSABLE_L2_GAS = 6540000;
413
423
  export const MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT = 786432;
414
424
  export const L2_GAS_DISTRIBUTED_STORAGE_PREMIUM = 1024;
415
425
  export const AVM_PC_SIZE_IN_BITS = 32;
416
- export const AVM_MAX_OPERANDS = 7;
417
- export const AVM_MAX_REGISTERS = 6;
426
+ export const AVM_MAX_OPERANDS = 5;
427
+ export const AVM_MAX_REGISTERS = 4;
418
428
  export const AVM_ADDRESSING_BASE_RESOLUTION_L2_GAS = 3;
419
429
  export const AVM_ADDRESSING_INDIRECT_L2_GAS = 3;
420
430
  export const AVM_ADDRESSING_RELATIVE_L2_GAS = 3;
@@ -472,7 +482,6 @@ export const AVM_TORADIXBE_BASE_L2_GAS = 24;
472
482
  export const AVM_CALLDATACOPY_DYN_L2_GAS = 6;
473
483
  export const AVM_RETURNDATACOPY_DYN_L2_GAS = 6;
474
484
  export const AVM_TORADIXBE_DYN_L2_GAS = 3;
475
- export const AVM_BITWISE_DYN_L2_GAS = 3;
476
485
  export const AVM_EMITPUBLICLOG_DYN_L2_GAS = 3;
477
486
  export const AVM_EMITNOTEHASH_BASE_DA_GAS = 32;
478
487
  export const AVM_EMITNULLIFIER_BASE_DA_GAS = 32;
@@ -490,8 +499,7 @@ export const PROOF_TYPE_AVM = 3;
490
499
  export const PROOF_TYPE_ROLLUP_HONK = 4;
491
500
  export const PROOF_TYPE_ROOT_ROLLUP_HONK = 5;
492
501
  export const PROOF_TYPE_HN_FINAL = 7;
493
- export const PROOF_TYPE_HN_TAIL = 8;
494
- export const PROOF_TYPE_CHONK = 9;
502
+ export const PROOF_TYPE_CHONK = 8;
495
503
  export const TWO_POW_64 = 18446744073709551616n;
496
504
  export const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT = 6;
497
505
  export const AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT = 8857725174171741160013581538021104168730942281584695363072221389187184558934n;
@@ -511,7 +519,6 @@ export const UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE = 144;
511
519
  export const GRUMPKIN_ONE_X = 1;
512
520
  export const GRUMPKIN_ONE_Y = 17631683881184975370165255887551781615748388533673675138860n;
513
521
  export const DEFAULT_MAX_DEBUG_LOG_MEMORY_READS = 125000;
514
- export const MAX_TX_BLOB_DATA_SIZE_IN_FIELDS = 8475;
515
522
  export enum DomainSeparator {
516
523
  NOTE_HASH = 116501019,
517
524
  PARTIAL_NOTE_COMMITMENT = 568912195,
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmluLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9jb25zdGFudHMuaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.in.d.ts","sourceRoot":"","sources":["../../src/scripts/constants.in.ts"],"names":[],"mappings":""}
@@ -1,655 +0,0 @@
1
- import * as fs from 'fs';
2
- import { dirname, join } from 'path';
3
- import { fileURLToPath } from 'url';
4
- const NOIR_CONSTANTS_FILE = '../../../../noir-projects/noir-protocol-circuits/crates/types/src/constants.nr';
5
- const TS_CONSTANTS_FILE = '../constants.gen.ts';
6
- const CPP_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/src/barretenberg/aztec/aztec_constants.hpp';
7
- const PIL_AZTEC_CONSTANTS_FILE = '../../../../barretenberg/cpp/pil/vm2/constants_gen.pil';
8
- const SOLIDITY_CONSTANTS_FILE = '../../../../l1-contracts/src/core/libraries/ConstantsGen.sol';
9
- // Additional Noir source files (outside constants.nr) to extract specific constants from, keyed by
10
- // file path (relative to this script) and the exact constant names to pull from each. Used for
11
- // constants that are defined alongside circuit code rather than in constants.nr, so they can be
12
- // exported to the generated TS constants without duplicating their definition. The referenced
13
- // constants may depend on constants.nr values, which are in scope because they are evaluated after
14
- // the main file's constants.
15
- const ADDITIONAL_NOIR_CONSTANT_FILES = [
16
- {
17
- file: '../../../../noir-projects/noir-protocol-circuits/crates/types/src/blob_data/tx_blob_data.nr',
18
- constants: [
19
- 'MAX_TX_BLOB_DATA_SIZE_IN_FIELDS'
20
- ]
21
- }
22
- ];
23
- // Whitelist of constants that will be copied to aztec_constants.hpp.
24
- // We don't copy everything as just a handful are needed, and updating them breaks the cache and triggers expensive bb builds.
25
- const CPP_CONSTANTS = [
26
- 'MAX_ETH_ADDRESS_BIT_SIZE',
27
- 'MAX_ETH_ADDRESS_VALUE',
28
- 'GENESIS_BLOCK_HEADER_HASH',
29
- 'GENESIS_ARCHIVE_ROOT',
30
- 'MEM_TAG_U1',
31
- 'MEM_TAG_U8',
32
- 'MEM_TAG_U16',
33
- 'MEM_TAG_U32',
34
- 'MEM_TAG_U64',
35
- 'MEM_TAG_U128',
36
- 'MEM_TAG_FF',
37
- 'MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS',
38
- 'CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS',
39
- 'CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS',
40
- 'FEE_JUICE_ADDRESS',
41
- 'TX_DA_GAS_OVERHEAD',
42
- 'FEE_JUICE_BALANCES_SLOT',
43
- 'UPDATED_CLASS_IDS_SLOT',
44
- 'UPDATES_DELAYED_PUBLIC_MUTABLE_VALUES_LEN',
45
- 'PUBLIC_DATA_TREE_HEIGHT',
46
- 'NULLIFIER_TREE_HEIGHT',
47
- 'NULLIFIER_SUBTREE_HEIGHT',
48
- 'NOTE_HASH_TREE_HEIGHT',
49
- 'L1_TO_L2_MSG_TREE_HEIGHT',
50
- 'ARCHIVE_HEIGHT',
51
- 'TIMESTAMP_OF_CHANGE_BIT_SIZE',
52
- 'UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE',
53
- 'MAX_ENQUEUED_CALLS_PER_TX',
54
- 'MAX_NOTE_HASHES_PER_TX',
55
- 'MAX_NULLIFIERS_PER_TX',
56
- 'MAX_L2_TO_L1_MSGS_PER_TX',
57
- 'MAX_PROCESSABLE_L2_GAS',
58
- 'MAX_PUBLIC_LOGS_PER_TX',
59
- 'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
60
- 'MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS',
61
- 'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
62
- 'MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
63
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_ROW_IDX',
64
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_CHAIN_ID_ROW_IDX',
65
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_VERSION_ROW_IDX',
66
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_BLOCK_NUMBER_ROW_IDX',
67
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_SLOT_NUMBER_ROW_IDX',
68
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_TIMESTAMP_ROW_IDX',
69
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_COINBASE_ROW_IDX',
70
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_FEE_RECIPIENT_ROW_IDX',
71
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_GAS_FEES_ROW_IDX',
72
- 'AVM_PUBLIC_INPUTS_PROTOCOL_CONTRACTS_ROW_IDX',
73
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_ROW_IDX',
74
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
75
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
76
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
77
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
78
- 'AVM_PUBLIC_INPUTS_START_GAS_USED_ROW_IDX',
79
- 'AVM_PUBLIC_INPUTS_GAS_SETTINGS_ROW_IDX',
80
- 'AVM_PUBLIC_INPUTS_FEE_PAYER_ROW_IDX',
81
- 'AVM_PUBLIC_INPUTS_PUBLIC_SETUP_CALL_REQUESTS_ROW_IDX',
82
- 'AVM_PUBLIC_INPUTS_PUBLIC_APP_LOGIC_CALL_REQUESTS_ROW_IDX',
83
- 'AVM_PUBLIC_INPUTS_PUBLIC_TEARDOWN_CALL_REQUEST_ROW_IDX',
84
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
85
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
86
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
87
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
88
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
89
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
90
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
91
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
92
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
93
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
94
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_ROW_IDX',
95
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
96
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
97
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
98
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
99
- 'AVM_PUBLIC_INPUTS_END_GAS_USED_ROW_IDX',
100
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NOTE_HASHES_ROW_IDX',
101
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NULLIFIERS_ROW_IDX',
102
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_L2_TO_L1_MSGS_ROW_IDX',
103
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_LOGS_ROW_IDX',
104
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_DATA_WRITES_ROW_IDX',
105
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ROW_IDX',
106
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
107
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
108
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
109
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_LOGS_ROW_IDX',
110
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_DATA_WRITES_ROW_IDX',
111
- 'AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX',
112
- 'AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX',
113
- 'AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH',
114
- 'AVM_NUM_PUBLIC_INPUT_COLUMNS',
115
- 'AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH',
116
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT',
117
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT',
118
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_SIZE',
119
- 'NOTE_HASH_TREE_LEAF_COUNT',
120
- 'L1_TO_L2_MSG_TREE_LEAF_COUNT',
121
- 'FLAT_PUBLIC_LOGS_HEADER_LENGTH',
122
- 'FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH',
123
- 'PUBLIC_LOGS_LENGTH',
124
- 'PUBLIC_LOG_HEADER_LENGTH',
125
- 'PUBLIC_TX_L2_GAS_OVERHEAD',
126
- 'MAX_PROTOCOL_CONTRACTS',
127
- 'DEFAULT_MAX_DEBUG_LOG_MEMORY_READS'
128
- ];
129
- const CPP_GENERATORS = [
130
- 'BLOCK_HEADER_HASH',
131
- 'SALTED_INITIALIZATION_HASH',
132
- 'PARTIAL_ADDRESS',
133
- 'CONTRACT_ADDRESS_V2',
134
- 'CONTRACT_CLASS_ID',
135
- 'PUBLIC_KEYS_HASH',
136
- 'SINGLE_PUBLIC_KEY_HASH',
137
- 'NOTE_HASH_NONCE',
138
- 'UNIQUE_NOTE_HASH',
139
- 'SILOED_NOTE_HASH',
140
- 'SILOED_NULLIFIER',
141
- 'PUBLIC_LEAF_SLOT',
142
- 'PUBLIC_STORAGE_MAP_SLOT',
143
- 'PUBLIC_CALLDATA',
144
- 'PUBLIC_BYTECODE',
145
- 'MERKLE_HASH',
146
- 'NULLIFIER_MERKLE',
147
- 'PUBLIC_DATA_MERKLE',
148
- 'WRITTEN_SLOTS_MERKLE',
149
- 'RETRIEVED_BYTECODES_MERKLE'
150
- ];
151
- const PIL_CONSTANTS = [
152
- 'MAX_ETH_ADDRESS_VALUE',
153
- 'MEM_TAG_U1',
154
- 'MEM_TAG_U8',
155
- 'MEM_TAG_U16',
156
- 'MEM_TAG_U32',
157
- 'MEM_TAG_U64',
158
- 'MEM_TAG_U128',
159
- 'MEM_TAG_FF',
160
- 'AVM_BITWISE_AND_OP_ID',
161
- 'AVM_BITWISE_OR_OP_ID',
162
- 'AVM_BITWISE_XOR_OP_ID',
163
- 'AVM_KECCAKF1600_NUM_ROUNDS',
164
- 'AVM_KECCAKF1600_STATE_SIZE',
165
- 'AVM_TX_PHASE_VALUE_START',
166
- 'AVM_TX_PHASE_VALUE_SETUP',
167
- 'AVM_TX_PHASE_VALUE_LAST',
168
- 'AVM_HIGHEST_MEM_ADDRESS',
169
- 'AVM_MEMORY_NUM_BITS',
170
- 'AVM_MEMORY_SIZE',
171
- 'MAX_PACKED_PUBLIC_BYTECODE_SIZE_IN_FIELDS',
172
- 'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
173
- 'MAX_NOTE_HASHES_PER_TX',
174
- 'GRUMPKIN_ONE_X',
175
- 'GRUMPKIN_ONE_Y',
176
- 'AVM_PC_SIZE_IN_BITS',
177
- 'PUBLIC_DATA_TREE_HEIGHT',
178
- 'NULLIFIER_TREE_HEIGHT',
179
- 'NOTE_HASH_TREE_HEIGHT',
180
- 'L1_TO_L2_MSG_TREE_HEIGHT',
181
- 'UPDATED_CLASS_IDS_SLOT',
182
- 'UPDATES_DELAYED_PUBLIC_MUTABLE_VALUES_LEN',
183
- 'CONTRACT_INSTANCE_REGISTRY_CONTRACT_ADDRESS',
184
- 'CONTRACT_CLASS_REGISTRY_CONTRACT_ADDRESS',
185
- 'FEE_JUICE_ADDRESS',
186
- 'FEE_JUICE_BALANCES_SLOT',
187
- 'TIMESTAMP_OF_CHANGE_BIT_SIZE',
188
- 'UPDATES_DELAYED_PUBLIC_MUTABLE_METADATA_BIT_SIZE',
189
- 'UPDATES_SHARED_MUTABLE_METADATA_BIT_SIZE',
190
- 'MAX_ENQUEUED_CALLS_PER_TX',
191
- 'MAX_NOTE_HASHES_PER_TX',
192
- 'MAX_NULLIFIERS_PER_TX',
193
- 'MAX_L2_TO_L1_MSGS_PER_TX',
194
- 'MAX_PUBLIC_LOGS_PER_TX',
195
- 'MAX_PUBLIC_CALLS_TO_UNIQUE_CONTRACT_CLASS_IDS',
196
- 'MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
197
- 'MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX',
198
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_ROW_IDX',
199
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_CHAIN_ID_ROW_IDX',
200
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_VERSION_ROW_IDX',
201
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_BLOCK_NUMBER_ROW_IDX',
202
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_SLOT_NUMBER_ROW_IDX',
203
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_TIMESTAMP_ROW_IDX',
204
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_COINBASE_ROW_IDX',
205
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_FEE_RECIPIENT_ROW_IDX',
206
- 'AVM_PUBLIC_INPUTS_GLOBAL_VARIABLES_GAS_FEES_ROW_IDX',
207
- 'AVM_PUBLIC_INPUTS_PROTOCOL_CONTRACTS_ROW_IDX',
208
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_ROW_IDX',
209
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
210
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
211
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
212
- 'AVM_PUBLIC_INPUTS_START_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
213
- 'AVM_PUBLIC_INPUTS_START_GAS_USED_ROW_IDX',
214
- 'AVM_PUBLIC_INPUTS_GAS_SETTINGS_ROW_IDX',
215
- 'AVM_PUBLIC_INPUTS_GAS_SETTINGS_GAS_LIMITS_ROW_IDX',
216
- 'AVM_PUBLIC_INPUTS_GAS_SETTINGS_TEARDOWN_GAS_LIMITS_ROW_IDX',
217
- 'AVM_PUBLIC_INPUTS_FEE_PAYER_ROW_IDX',
218
- 'AVM_PUBLIC_INPUTS_PUBLIC_SETUP_CALL_REQUESTS_ROW_IDX',
219
- 'AVM_PUBLIC_INPUTS_PUBLIC_APP_LOGIC_CALL_REQUESTS_ROW_IDX',
220
- 'AVM_PUBLIC_INPUTS_PUBLIC_TEARDOWN_CALL_REQUEST_ROW_IDX',
221
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
222
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ARRAY_LENGTHS_ROW_IDX',
223
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
224
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
225
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
226
- 'AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
227
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_ROW_IDX',
228
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
229
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
230
- 'AVM_PUBLIC_INPUTS_PREVIOUS_REVERTIBLE_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
231
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_ROW_IDX',
232
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_L1_TO_L2_MESSAGE_TREE_ROW_IDX',
233
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NOTE_HASH_TREE_ROW_IDX',
234
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_NULLIFIER_TREE_ROW_IDX',
235
- 'AVM_PUBLIC_INPUTS_END_TREE_SNAPSHOTS_PUBLIC_DATA_TREE_ROW_IDX',
236
- 'AVM_PUBLIC_INPUTS_END_GAS_USED_ROW_IDX',
237
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NOTE_HASHES_ROW_IDX',
238
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_NULLIFIERS_ROW_IDX',
239
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_L2_TO_L1_MSGS_ROW_IDX',
240
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_LOGS_ROW_IDX',
241
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ARRAY_LENGTHS_PUBLIC_DATA_WRITES_ROW_IDX',
242
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_ROW_IDX',
243
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX',
244
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX',
245
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_L2_TO_L1_MSGS_ROW_IDX',
246
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_LOGS_ROW_IDX',
247
- 'AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_PUBLIC_DATA_WRITES_ROW_IDX',
248
- 'AVM_PUBLIC_INPUTS_TRANSACTION_FEE_ROW_IDX',
249
- 'AVM_PUBLIC_INPUTS_REVERTED_ROW_IDX',
250
- 'AVM_PUBLIC_INPUTS_COLUMNS_MAX_LENGTH',
251
- 'AVM_NUM_PUBLIC_INPUT_COLUMNS',
252
- 'AVM_PUBLIC_INPUTS_COLUMNS_COMBINED_LENGTH',
253
- 'AVM_SUBTRACE_ID_EXECUTION',
254
- 'AVM_SUBTRACE_ID_ALU',
255
- 'AVM_SUBTRACE_ID_CAST',
256
- 'AVM_SUBTRACE_ID_SET',
257
- 'AVM_SUBTRACE_ID_BITWISE',
258
- 'AVM_SUBTRACE_ID_POSEIDON2_PERM',
259
- 'AVM_SUBTRACE_ID_TO_RADIX',
260
- 'AVM_SUBTRACE_ID_ECC',
261
- 'AVM_SUBTRACE_ID_KECCAKF1600',
262
- 'AVM_SUBTRACE_ID_CALLDATA_COPY',
263
- 'AVM_SUBTRACE_ID_SHA256_COMPRESSION',
264
- 'AVM_SUBTRACE_ID_RETURNDATA_COPY',
265
- 'AVM_DYN_GAS_ID_CALLDATACOPY',
266
- 'AVM_DYN_GAS_ID_RETURNDATACOPY',
267
- 'AVM_DYN_GAS_ID_TORADIX',
268
- 'AVM_DYN_GAS_ID_BITWISE',
269
- 'AVM_DYN_GAS_ID_EMITPUBLICLOG',
270
- 'AVM_DYN_GAS_ID_SSTORE',
271
- 'AVM_SUBTRACE_ID_GETCONTRACTINSTANCE',
272
- 'AVM_SUBTRACE_ID_EMITPUBLICLOG',
273
- 'AVM_EXEC_OP_ID_GETENVVAR',
274
- 'AVM_EXEC_OP_ID_MOV',
275
- 'AVM_EXEC_OP_ID_JUMP',
276
- 'AVM_EXEC_OP_ID_JUMPI',
277
- 'AVM_EXEC_OP_ID_CALL',
278
- 'AVM_EXEC_OP_ID_STATICCALL',
279
- 'AVM_EXEC_OP_ID_INTERNALCALL',
280
- 'AVM_EXEC_OP_ID_INTERNALRETURN',
281
- 'AVM_EXEC_OP_ID_RETURN',
282
- 'AVM_EXEC_OP_ID_REVERT',
283
- 'AVM_EXEC_OP_ID_SUCCESSCOPY',
284
- 'AVM_EXEC_OP_ID_ALU_ADD',
285
- 'AVM_EXEC_OP_ID_ALU_SUB',
286
- 'AVM_EXEC_OP_ID_ALU_MUL',
287
- 'AVM_EXEC_OP_ID_ALU_DIV',
288
- 'AVM_EXEC_OP_ID_ALU_FDIV',
289
- 'AVM_EXEC_OP_ID_ALU_EQ',
290
- 'AVM_EXEC_OP_ID_ALU_LT',
291
- 'AVM_EXEC_OP_ID_ALU_LTE',
292
- 'AVM_EXEC_OP_ID_ALU_NOT',
293
- 'AVM_EXEC_OP_ID_ALU_SHL',
294
- 'AVM_EXEC_OP_ID_ALU_SHR',
295
- 'AVM_EXEC_OP_ID_ALU_TRUNCATE',
296
- 'AVM_EXEC_OP_ID_RETURNDATASIZE',
297
- 'AVM_EXEC_OP_ID_DEBUGLOG',
298
- 'AVM_EXEC_OP_ID_SLOAD',
299
- 'AVM_EXEC_OP_ID_SSTORE',
300
- 'AVM_EXEC_OP_ID_NOTEHASH_EXISTS',
301
- 'AVM_EXEC_OP_ID_EMIT_NOTEHASH',
302
- 'AVM_EXEC_OP_ID_L1_TO_L2_MESSAGE_EXISTS',
303
- 'AVM_EXEC_OP_ID_NULLIFIER_EXISTS',
304
- 'AVM_EXEC_OP_ID_EMIT_NULLIFIER',
305
- 'AVM_EXEC_OP_ID_SENDL2TOL1MSG',
306
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_HEIGHT',
307
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_ROOT',
308
- 'AVM_WRITTEN_PUBLIC_DATA_SLOTS_TREE_INITIAL_SIZE',
309
- 'AVM_RETRIEVED_BYTECODES_TREE_HEIGHT',
310
- 'AVM_RETRIEVED_BYTECODES_TREE_INITIAL_ROOT',
311
- 'AVM_RETRIEVED_BYTECODES_TREE_INITIAL_SIZE',
312
- 'NOTE_HASH_TREE_LEAF_COUNT',
313
- 'L1_TO_L2_MSG_TREE_LEAF_COUNT',
314
- 'FLAT_PUBLIC_LOGS_HEADER_LENGTH',
315
- 'FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH',
316
- 'PUBLIC_LOGS_LENGTH',
317
- 'PUBLIC_LOG_HEADER_LENGTH',
318
- 'MAX_PROTOCOL_CONTRACTS'
319
- ];
320
- const PIL_GENERATORS = [
321
- 'SALTED_INITIALIZATION_HASH',
322
- 'PARTIAL_ADDRESS',
323
- 'CONTRACT_ADDRESS_V2',
324
- 'CONTRACT_CLASS_ID',
325
- 'PUBLIC_KEYS_HASH',
326
- 'SINGLE_PUBLIC_KEY_HASH',
327
- 'NOTE_HASH_NONCE',
328
- 'UNIQUE_NOTE_HASH',
329
- 'SILOED_NOTE_HASH',
330
- 'SILOED_NULLIFIER',
331
- 'PUBLIC_LEAF_SLOT',
332
- 'PUBLIC_STORAGE_MAP_SLOT',
333
- 'PUBLIC_CALLDATA',
334
- 'PUBLIC_BYTECODE',
335
- 'MERKLE_HASH',
336
- 'NULLIFIER_MERKLE',
337
- 'PUBLIC_DATA_MERKLE',
338
- 'WRITTEN_SLOTS_MERKLE',
339
- 'RETRIEVED_BYTECODES_MERKLE'
340
- ];
341
- const SOLIDITY_CONSTANTS = [
342
- 'MAX_FIELD_VALUE',
343
- 'MAX_L2_TO_L1_MSGS_PER_TX',
344
- 'EMPTY_EPOCH_OUT_HASH',
345
- 'L1_TO_L2_MSG_SUBTREE_HEIGHT',
346
- 'NUM_MSGS_PER_BASE_PARITY',
347
- 'NUM_BASE_PARITY_PER_ROOT_PARITY',
348
- 'BLS12_POINT_COMPRESSED_BYTES',
349
- 'ROOT_ROLLUP_PUBLIC_INPUTS_LENGTH',
350
- 'INITIAL_CHECKPOINT_NUMBER',
351
- 'GENESIS_ARCHIVE_ROOT',
352
- 'FEE_JUICE_ADDRESS',
353
- 'MAX_CHECKPOINTS_PER_EPOCH'
354
- ];
355
- /**
356
- * Processes a collection of constants and generates code to export them as TypeScript constants.
357
- *
358
- * @param constants - An object containing key-value pairs representing constants.
359
- * @returns A string containing code that exports the constants as TypeScript constants.
360
- */ function processConstantsTS(constants) {
361
- const code = [];
362
- Object.entries(constants).forEach(([key, value])=>{
363
- code.push(`export const ${key} = ${+value > Number.MAX_SAFE_INTEGER ? value + 'n' : value};`);
364
- });
365
- return code.join('\n');
366
- }
367
- /**
368
- * Processes a collection of constants and generates code to export them as cpp constants.
369
- * Required to ensure consistency between the constants used in pil and used in the vm witness generator.
370
- *
371
- * @param constants - An object containing key-value pairs representing constants.
372
- * @returns A string containing code that exports the constants as cpp constants.
373
- */ function processConstantsCpp(constants, generatorIndices) {
374
- const code = [];
375
- Object.entries(constants).forEach(([key, value])=>{
376
- if (CPP_CONSTANTS.includes(key) || key.startsWith('AVM_')) {
377
- if (BigInt(value) <= 2n ** 31n - 1n) {
378
- code.push(`#define ${key} ${value}`);
379
- } else if (BigInt(value) <= 2n ** 64n - 1n) {
380
- code.push(`#define ${key} 0x${BigInt(value).toString(16)}`); // hex literals
381
- } else {
382
- code.push(`#define ${key} "0x${BigInt(value).toString(16).padStart(64, '0')}"`); // stringify large numbers
383
- }
384
- }
385
- });
386
- Object.entries(generatorIndices).forEach(([key, value])=>{
387
- if (CPP_GENERATORS.includes(key)) {
388
- code.push(`#define DOM_SEP__${key} ${value}UL`);
389
- }
390
- });
391
- return code.join('\n');
392
- }
393
- /**
394
- * Processes a collection of constants and generates code to export them as PIL constants.
395
- * Required to ensure consistency between the constants used in pil and used in the vm witness generator.
396
- *
397
- * @param constants - An object containing key-value pairs representing constants.
398
- * @returns A string containing code that exports the constants as cpp constants.
399
- */ function processConstantsPil(constants, generatorIndices) {
400
- const code = [];
401
- Object.entries(constants).forEach(([key, value])=>{
402
- if (PIL_CONSTANTS.includes(key)) {
403
- code.push(` pol ${key} = ${value};`);
404
- }
405
- });
406
- Object.entries(generatorIndices).forEach(([key, value])=>{
407
- if (PIL_GENERATORS.includes(key)) {
408
- code.push(` pol DOM_SEP__${key} = ${value};`);
409
- }
410
- });
411
- return code.join('\n');
412
- }
413
- /**
414
- * Processes an enum and generates code to export it as a TypeScript enum.
415
- *
416
- * @param enumName - The name of the enum.
417
- * @param enumValues - An object containing key-value pairs representing enum values.
418
- * @returns A string containing code that exports the enum as a TypeScript enum.
419
- */ function processEnumTS(enumName, enumValues) {
420
- const code = [];
421
- code.push(`export enum ${enumName} {`);
422
- Object.entries(enumValues).forEach(([key, value])=>{
423
- code.push(` ${key} = ${value},`);
424
- });
425
- code.push('}');
426
- return code.join('\n');
427
- }
428
- /**
429
- * Processes a collection of constants and generates code to export them as Solidity constants.
430
- *
431
- * @param constants - An object containing key-value pairs representing constants.
432
- * @param prefix - A prefix to add to the constant names.
433
- * @returns A string containing code that exports the constants as Noir constants.
434
- */ function processConstantsSolidity(constants, prefix = '') {
435
- const code = [];
436
- Object.entries(constants).forEach(([key, value])=>{
437
- if (SOLIDITY_CONSTANTS.includes(key)) {
438
- code.push(` uint256 internal constant ${prefix}${key} = ${value};`);
439
- }
440
- });
441
- return code.join('\n');
442
- }
443
- /**
444
- * Generate the constants file in Typescript.
445
- */ function generateTypescriptConstants({ constants, domainSeparatorEnum }, targetPath) {
446
- const result = [
447
- '// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants',
448
- processConstantsTS(constants),
449
- processEnumTS('DomainSeparator', domainSeparatorEnum)
450
- ].join('\n');
451
- fs.writeFileSync(targetPath, result);
452
- }
453
- /**
454
- * Generate the constants file in C++.
455
- */ function generateCppConstants({ constants, domainSeparatorEnum }, targetPath) {
456
- const resultCpp = `// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants in yarn-project/constants
457
- #pragma once
458
-
459
- ${processConstantsCpp(constants, domainSeparatorEnum)}
460
- `;
461
- fs.writeFileSync(targetPath, resultCpp);
462
- }
463
- /**
464
- * Generate the constants file in PIL.
465
- */ function generatePilConstants({ constants, domainSeparatorEnum }, targetPath) {
466
- const resultPil = `// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants in yarn-project/constants
467
- namespace constants;
468
- ${processConstantsPil(constants, domainSeparatorEnum)}
469
- \n`;
470
- fs.writeFileSync(targetPath, resultPil);
471
- }
472
- /**
473
- * Generate the constants file in Solidity.
474
- */ function generateSolidityConstants({ constants }, targetPath) {
475
- const resultSolidity = `// GENERATED FILE - DO NOT EDIT, RUN yarn remake-constants in yarn-project/constants
476
- // SPDX-License-Identifier: Apache-2.0
477
- // Copyright 2023 Aztec Labs.
478
- pragma solidity >=0.8.27;
479
-
480
- /**
481
- * @title Constants Library
482
- * @author Aztec Labs
483
- * @notice Library that contains constants used throughout the Aztec protocol
484
- */
485
- library Constants {
486
- // Prime field modulus
487
- uint256 internal constant P =
488
- 21888242871839275222246405745257275088548364400416034343698204186575808495617;
489
-
490
- ${processConstantsSolidity(constants)}
491
- }\n`;
492
- fs.writeFileSync(targetPath, resultSolidity);
493
- }
494
- /**
495
- * Parse the content of the constants file in Noir.
496
- */ function parseNoirFile(fileContent, { stripLineComments = false } = {}) {
497
- const constantsExpressions = [];
498
- const domainSeparatorEnum = {};
499
- const emptyExpression = ()=>({
500
- name: '',
501
- content: []
502
- });
503
- let expression = emptyExpression();
504
- fileContent.split('\n').forEach((l)=>{
505
- // Strip trailing `//` line comments so multi-line expressions with inline comments (e.g.
506
- // MAX_TX_BLOB_DATA_SIZE_IN_FIELDS) parse correctly. Disabled for constants.nr to keep its
507
- // existing parsing behavior byte-for-byte unchanged.
508
- const line = (stripLineComments ? l.replace(/\/\/.*$/, '') : l).trim();
509
- if (!line) {
510
- // Empty line.
511
- return;
512
- }
513
- if (line.match(/^\/\/|^\s*\/?\*/)) {
514
- // Comment.
515
- return;
516
- }
517
- {
518
- const [, name, _type, value, end] = line.match(/global\s+(\w+)(\s*:\s*\w+)?\s*=\s*([^;]*)(;)?/) || [];
519
- if (name && value) {
520
- const [, indexName] = name.match(/DOM_SEP__(\w+)/) || [];
521
- if (indexName) {
522
- // Generator index.
523
- domainSeparatorEnum[indexName] = +value;
524
- } else if (end) {
525
- // A single line of expression.
526
- constantsExpressions.push([
527
- name,
528
- value
529
- ]);
530
- } else {
531
- // The first line of an expression.
532
- expression = {
533
- name,
534
- content: [
535
- value
536
- ]
537
- };
538
- }
539
- return;
540
- } else if (name) {
541
- // This case happens if we have only a name, with the value being on the next line
542
- expression = {
543
- name,
544
- content: []
545
- };
546
- return;
547
- }
548
- }
549
- if (expression.name) {
550
- // The expression continues...
551
- const [, content, end] = line.match(/\s*([^;]+)(;)?/) || [];
552
- expression.content.push(content);
553
- if (end) {
554
- // The last line of an expression.
555
- constantsExpressions.push([
556
- expression.name,
557
- expression.content.join('')
558
- ]);
559
- expression = emptyExpression();
560
- }
561
- return;
562
- }
563
- if (!line.includes('use crate')) {
564
- // eslint-disable-next-line no-console
565
- console.warn(`Unknown content: ${line}`);
566
- }
567
- });
568
- return {
569
- constantsExpressions,
570
- domainSeparatorEnum
571
- };
572
- }
573
- /**
574
- * Converts constants defined as expressions to constants with actual values.
575
- * @param expressions Ordered list of expressions of the type: "CONSTANT_NAME: expression".
576
- * where the expression is a string that can be evaluated to a number.
577
- * For example: "CONSTANT_NAME: 2 + 2" or "CONSTANT_NAME: CONSTANT_A * CONSTANT_B".
578
- * @returns Parsed expressions of the form: "CONSTANT_NAME: number_as_string".
579
- */ function evaluateExpressions(expressions) {
580
- const constants = {};
581
- const knownBigInts = [
582
- 'AZTEC_EPOCH_DURATION',
583
- 'FEE_RECIPIENT_LENGTH'
584
- ];
585
- // Create JS expressions. It is not as easy as just evaluating the expression!
586
- // We basically need to convert everything to BigInts, otherwise things don't fit.
587
- // However, (1) the bigints need to be initialized from strings; (2) everything needs to
588
- // be a bigint, even the actual constant values!
589
- const prelude = expressions.map(([name, rhs])=>{
590
- const guardedRhs = rhs// Remove 'as u8', 'as u32' and 'as u64' castings
591
- .replaceAll(' as u8', '').replaceAll(' as u32', '').replaceAll(' as u64', '')// Remove the 'AztecAddress::from_field(...)' pattern.
592
- // Also copes with the noir formatter re-formatting over multiple lines.
593
- .replace(/AztecAddress::from_field\(\s*(0x[a-fA-F0-9]+|\d+)\s*,?\s*\)/gs, '$1')// We make some space around the parentheses, so that constant numbers are still split.
594
- .replace(/\(/g, '( ').replace(/\)/g, ' )')// We also make some space around common operators
595
- .replace(/\+/g, ' + ').replace(/(?<!\/)\*(?!\/)/, ' * ')// We split the expression into terms...
596
- .split(/\s+/)// ...and then we convert each term to a BigInt if it is a number.
597
- .map((term)=>{
598
- // Remove underscores from numeric literals (e.g., 6_000_000 -> 6000000)
599
- const termWithoutUnderscores = term.replace(/_/g, '');
600
- return isNaN(+termWithoutUnderscores) ? term : `BigInt('${termWithoutUnderscores}')`;
601
- })// .. also, we convert the known bigints to BigInts.
602
- .map((term)=>knownBigInts.includes(term) ? `BigInt(${term})` : term)// We join the terms back together.
603
- .join(' ');
604
- return `var ${name} = ${guardedRhs};`;
605
- }).join('\n');
606
- // Extract each value from the expressions. Observe that this will still be a string,
607
- // so that we can then choose to express it as BigInt or Number depending on the size.
608
- for (const [name, _] of expressions){
609
- constants[name] = eval(prelude + `; BigInt(${name}).toString()`);
610
- }
611
- return constants;
612
- }
613
- /**
614
- * Convert the Noir constants to TypeScript and Solidity.
615
- */ function main() {
616
- const __dirname = dirname(fileURLToPath(import.meta.url));
617
- const noirConstantsFile = join(__dirname, NOIR_CONSTANTS_FILE);
618
- const noirConstants = fs.readFileSync(noirConstantsFile, 'utf-8');
619
- const { constantsExpressions, domainSeparatorEnum } = parseNoirFile(noirConstants);
620
- // Pull in explicitly-listed constants defined outside constants.nr (e.g. alongside circuit code).
621
- // They are appended after the main constants so they can reference them when evaluated together.
622
- for (const { file, constants: names } of ADDITIONAL_NOIR_CONSTANT_FILES){
623
- const additionalContent = fs.readFileSync(join(__dirname, file), 'utf-8');
624
- const { constantsExpressions: additionalExpressions } = parseNoirFile(additionalContent, {
625
- stripLineComments: true
626
- });
627
- for (const name of names){
628
- const expression = additionalExpressions.find(([exprName])=>exprName === name);
629
- if (!expression) {
630
- throw new Error(`Constant ${name} not found in ${file}`);
631
- }
632
- constantsExpressions.push(expression);
633
- }
634
- }
635
- const parsedContent = {
636
- constants: evaluateExpressions(constantsExpressions),
637
- domainSeparatorEnum
638
- };
639
- // Typescript
640
- const tsTargetPath = join(__dirname, TS_CONSTANTS_FILE);
641
- generateTypescriptConstants(parsedContent, tsTargetPath);
642
- // Cpp
643
- const cppTargetPath = join(__dirname, CPP_AZTEC_CONSTANTS_FILE);
644
- generateCppConstants(parsedContent, cppTargetPath);
645
- // PIL
646
- const pilTargetPath = join(__dirname, PIL_AZTEC_CONSTANTS_FILE);
647
- generatePilConstants(parsedContent, pilTargetPath);
648
- // Solidity
649
- const solidityTargetPath = join(__dirname, SOLIDITY_CONSTANTS_FILE);
650
- fs.mkdirSync(dirname(solidityTargetPath), {
651
- recursive: true
652
- });
653
- generateSolidityConstants(parsedContent, solidityTargetPath);
654
- }
655
- main();