@aztec/stdlib 0.0.1-commit.a072138 → 0.0.1-commit.a4600f49

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.
Files changed (1234) hide show
  1. package/dest/abi/abi.d.ts +142 -1081
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +41 -18
  4. package/dest/abi/authorization_selector.d.ts +4 -7
  5. package/dest/abi/authorization_selector.d.ts.map +1 -1
  6. package/dest/abi/buffer.d.ts +19 -5
  7. package/dest/abi/buffer.d.ts.map +1 -1
  8. package/dest/abi/buffer.js +38 -5
  9. package/dest/abi/contract_artifact.d.ts +1 -1
  10. package/dest/abi/contract_artifact.d.ts.map +1 -1
  11. package/dest/abi/contract_artifact.js +14 -7
  12. package/dest/abi/decoder.d.ts +6 -45
  13. package/dest/abi/decoder.d.ts.map +1 -1
  14. package/dest/abi/decoder.js +17 -70
  15. package/dest/abi/encoder.d.ts +1 -1
  16. package/dest/abi/encoder.d.ts.map +1 -1
  17. package/dest/abi/encoder.js +64 -7
  18. package/dest/abi/event_metadata_definition.d.ts +3 -1
  19. package/dest/abi/event_metadata_definition.d.ts.map +1 -1
  20. package/dest/abi/event_metadata_definition.js +1 -1
  21. package/dest/abi/event_selector.d.ts +4 -7
  22. package/dest/abi/event_selector.d.ts.map +1 -1
  23. package/dest/abi/function_call.d.ts +22 -10
  24. package/dest/abi/function_call.d.ts.map +1 -1
  25. package/dest/abi/function_call.js +20 -3
  26. package/dest/abi/function_selector.d.ts +3 -6
  27. package/dest/abi/function_selector.d.ts.map +1 -1
  28. package/dest/abi/function_selector.js +2 -4
  29. package/dest/abi/function_signature_decoder.d.ts +43 -0
  30. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  31. package/dest/abi/function_signature_decoder.js +66 -0
  32. package/dest/abi/index.d.ts +2 -1
  33. package/dest/abi/index.d.ts.map +1 -1
  34. package/dest/abi/index.js +1 -0
  35. package/dest/abi/note_selector.d.ts +4 -7
  36. package/dest/abi/note_selector.d.ts.map +1 -1
  37. package/dest/abi/note_selector.js +1 -3
  38. package/dest/abi/selector.d.ts +2 -2
  39. package/dest/abi/selector.d.ts.map +1 -1
  40. package/dest/abi/selector.js +1 -1
  41. package/dest/abi/utils.d.ts +14 -1
  42. package/dest/abi/utils.d.ts.map +1 -1
  43. package/dest/abi/utils.js +16 -1
  44. package/dest/auth_witness/auth_witness.d.ts +2 -2
  45. package/dest/auth_witness/auth_witness.d.ts.map +1 -1
  46. package/dest/auth_witness/auth_witness.js +3 -3
  47. package/dest/avm/avm.d.ts +1756 -10463
  48. package/dest/avm/avm.d.ts.map +1 -1
  49. package/dest/avm/avm.js +7 -4
  50. package/dest/avm/avm_accumulated_data.d.ts +22 -86
  51. package/dest/avm/avm_accumulated_data.d.ts.map +1 -1
  52. package/dest/avm/avm_circuit_public_inputs.d.ts +180 -932
  53. package/dest/avm/avm_circuit_public_inputs.d.ts.map +1 -1
  54. package/dest/avm/avm_proving_request.d.ts +674 -5467
  55. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  56. package/dest/avm/index.d.ts +1 -6
  57. package/dest/avm/index.d.ts.map +1 -1
  58. package/dest/avm/index.js +0 -5
  59. package/dest/avm/message_pack.js +12 -3
  60. package/dest/avm/public_data_write.d.ts +6 -12
  61. package/dest/avm/public_data_write.d.ts.map +1 -1
  62. package/dest/avm/revert_code.d.ts +6 -7
  63. package/dest/avm/revert_code.d.ts.map +1 -1
  64. package/dest/avm/revert_code.js +13 -21
  65. package/dest/aztec-address/index.d.ts +42 -12
  66. package/dest/aztec-address/index.d.ts.map +1 -1
  67. package/dest/aztec-address/index.js +40 -13
  68. package/dest/block/attestation_info.d.ts +3 -2
  69. package/dest/block/attestation_info.d.ts.map +1 -1
  70. package/dest/block/attestation_info.js +10 -5
  71. package/dest/block/block_data.d.ts +27 -0
  72. package/dest/block/block_data.d.ts.map +1 -0
  73. package/dest/block/block_data.js +12 -0
  74. package/dest/block/block_hash.d.ts +11 -10
  75. package/dest/block/block_hash.d.ts.map +1 -1
  76. package/dest/block/block_hash.js +10 -9
  77. package/dest/block/block_parameter.d.ts +37 -4
  78. package/dest/block/block_parameter.d.ts.map +1 -1
  79. package/dest/block/block_parameter.js +53 -2
  80. package/dest/block/in_block.d.ts +5 -24
  81. package/dest/block/in_block.d.ts.map +1 -1
  82. package/dest/block/in_block.js +1 -1
  83. package/dest/block/index.d.ts +2 -2
  84. package/dest/block/index.d.ts.map +1 -1
  85. package/dest/block/index.js +1 -1
  86. package/dest/block/l2_block.d.ts +21 -41
  87. package/dest/block/l2_block.d.ts.map +1 -1
  88. package/dest/block/l2_block.js +12 -2
  89. package/dest/block/l2_block_info.d.ts +10 -29
  90. package/dest/block/l2_block_info.d.ts.map +1 -1
  91. package/dest/block/l2_block_info.js +6 -5
  92. package/dest/block/l2_block_source.d.ts +238 -337
  93. package/dest/block/l2_block_source.d.ts.map +1 -1
  94. package/dest/block/l2_block_source.js +81 -1
  95. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  96. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  97. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  98. package/dest/block/l2_block_stream/index.d.ts +2 -1
  99. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  100. package/dest/block/l2_block_stream/index.js +1 -0
  101. package/dest/block/l2_block_stream/interfaces.d.ts +83 -10
  102. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  103. package/dest/block/l2_block_stream/interfaces.js +25 -1
  104. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  105. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  106. package/dest/block/l2_block_stream/l2_block_stream.js +159 -125
  107. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts +8 -12
  108. package/dest/block/l2_block_stream/l2_tips_memory_store.d.ts.map +1 -1
  109. package/dest/block/l2_block_stream/l2_tips_memory_store.js +11 -32
  110. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +20 -18
  111. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  112. package/dest/block/l2_block_stream/l2_tips_store_base.js +84 -40
  113. package/dest/block/proposal/attestations_and_signers.d.ts +37 -30
  114. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  115. package/dest/block/proposal/attestations_and_signers.js +73 -25
  116. package/dest/block/proposal/committee_attestation.d.ts +6 -12
  117. package/dest/block/proposal/committee_attestation.d.ts.map +1 -1
  118. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  119. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  120. package/dest/block/test/l2_tips_store_test_suite.js +296 -36
  121. package/dest/block/validate_block_result.d.ts +16 -1
  122. package/dest/block/validate_block_result.d.ts.map +1 -1
  123. package/dest/block/validate_block_result.js +18 -3
  124. package/dest/checkpoint/checkpoint.d.ts +48 -99
  125. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  126. package/dest/checkpoint/checkpoint.js +42 -18
  127. package/dest/checkpoint/checkpoint_data.d.ts +97 -0
  128. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  129. package/dest/checkpoint/checkpoint_data.js +38 -0
  130. package/dest/checkpoint/checkpoint_info.d.ts +7 -23
  131. package/dest/checkpoint/checkpoint_info.d.ts.map +1 -1
  132. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts +60 -0
  133. package/dest/checkpoint/checkpoint_reexecution_tracker.d.ts.map +1 -0
  134. package/dest/checkpoint/checkpoint_reexecution_tracker.js +108 -0
  135. package/dest/checkpoint/digest.d.ts +18 -0
  136. package/dest/checkpoint/digest.d.ts.map +1 -0
  137. package/dest/checkpoint/digest.js +12 -0
  138. package/dest/checkpoint/index.d.ts +7 -1
  139. package/dest/checkpoint/index.d.ts.map +1 -1
  140. package/dest/checkpoint/index.js +6 -0
  141. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts +33 -0
  142. package/dest/checkpoint/previous_checkpoint_out_hashes.d.ts.map +1 -0
  143. package/dest/checkpoint/previous_checkpoint_out_hashes.js +45 -0
  144. package/dest/checkpoint/published_checkpoint.d.ts +53 -190
  145. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  146. package/dest/checkpoint/published_checkpoint.js +1 -2
  147. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  148. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  149. package/dest/checkpoint/simulation_overrides.js +98 -0
  150. package/dest/checkpoint/validate.d.ts +44 -0
  151. package/dest/checkpoint/validate.d.ts.map +1 -0
  152. package/dest/checkpoint/validate.js +123 -0
  153. package/dest/config/chain-config.d.ts +4 -9
  154. package/dest/config/chain-config.d.ts.map +1 -1
  155. package/dest/config/chain-config.js +13 -12
  156. package/dest/config/index.d.ts +3 -1
  157. package/dest/config/index.d.ts.map +1 -1
  158. package/dest/config/index.js +2 -0
  159. package/dest/config/network-consensus-config.d.ts +72 -0
  160. package/dest/config/network-consensus-config.d.ts.map +1 -0
  161. package/dest/config/network-consensus-config.js +223 -0
  162. package/dest/config/sequencer-config.d.ts +16 -0
  163. package/dest/config/sequencer-config.d.ts.map +1 -0
  164. package/dest/config/sequencer-config.js +57 -0
  165. package/dest/contract/complete_address.d.ts +3 -2
  166. package/dest/contract/complete_address.d.ts.map +1 -1
  167. package/dest/contract/complete_address.js +6 -2
  168. package/dest/contract/contract_address.d.ts +10 -9
  169. package/dest/contract/contract_address.d.ts.map +1 -1
  170. package/dest/contract/contract_address.js +9 -8
  171. package/dest/contract/contract_class.d.ts +2 -3
  172. package/dest/contract/contract_class.d.ts.map +1 -1
  173. package/dest/contract/contract_class.js +3 -2
  174. package/dest/contract/contract_class_id.d.ts +3 -3
  175. package/dest/contract/contract_class_id.d.ts.map +1 -1
  176. package/dest/contract/contract_class_id.js +7 -6
  177. package/dest/contract/contract_deployment_data.d.ts +15 -61
  178. package/dest/contract/contract_deployment_data.d.ts.map +1 -1
  179. package/dest/contract/contract_instance.d.ts +19 -3
  180. package/dest/contract/contract_instance.d.ts.map +1 -1
  181. package/dest/contract/contract_instance.js +55 -3
  182. package/dest/contract/index.d.ts +1 -4
  183. package/dest/contract/index.d.ts.map +1 -1
  184. package/dest/contract/index.js +0 -3
  185. package/dest/contract/interfaces/contract_class.d.ts +17 -241
  186. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  187. package/dest/contract/interfaces/contract_class.js +1 -28
  188. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  189. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  190. package/dest/contract/interfaces/contract_instance.d.ts +111 -104
  191. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  192. package/dest/contract/interfaces/contract_instance.js +11 -4
  193. package/dest/contract/interfaces/contract_instance_update.d.ts +6 -26
  194. package/dest/contract/interfaces/contract_instance_update.d.ts.map +1 -1
  195. package/dest/contract/interfaces/node-info.d.ts +13 -1
  196. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  197. package/dest/contract/interfaces/node-info.js +8 -1
  198. package/dest/contract/interfaces/protocol_contract_addresses.d.ts +2 -12
  199. package/dest/contract/interfaces/protocol_contract_addresses.d.ts.map +1 -1
  200. package/dest/contract/partial_address.d.ts +9 -3
  201. package/dest/contract/partial_address.d.ts.map +1 -1
  202. package/dest/contract/partial_address.js +8 -2
  203. package/dest/contract/private_function.d.ts +1 -1
  204. package/dest/contract/private_function.d.ts.map +1 -1
  205. package/dest/contract/private_function.js +4 -6
  206. package/dest/database-version/database_version.d.ts +5 -11
  207. package/dest/database-version/database_version.d.ts.map +1 -1
  208. package/dest/database-version/version_manager.d.ts +22 -4
  209. package/dest/database-version/version_manager.d.ts.map +1 -1
  210. package/dest/database-version/version_manager.js +87 -6
  211. package/dest/deserialization/index.d.ts +35 -3
  212. package/dest/deserialization/index.d.ts.map +1 -1
  213. package/dest/deserialization/index.js +32 -1
  214. package/dest/epoch-helpers/index.d.ts +14 -18
  215. package/dest/epoch-helpers/index.d.ts.map +1 -1
  216. package/dest/epoch-helpers/index.js +18 -2
  217. package/dest/file-store/factory.d.ts +4 -3
  218. package/dest/file-store/factory.d.ts.map +1 -1
  219. package/dest/file-store/factory.js +9 -2
  220. package/dest/file-store/http.d.ts +9 -2
  221. package/dest/file-store/http.d.ts.map +1 -1
  222. package/dest/file-store/http.js +20 -9
  223. package/dest/file-store/index.d.ts +3 -1
  224. package/dest/file-store/index.d.ts.map +1 -1
  225. package/dest/file-store/index.js +1 -0
  226. package/dest/file-store/local.d.ts +3 -3
  227. package/dest/file-store/local.d.ts.map +1 -1
  228. package/dest/file-store/local.js +13 -4
  229. package/dest/file-store/memory.d.ts +24 -0
  230. package/dest/file-store/memory.d.ts.map +1 -0
  231. package/dest/file-store/memory.js +80 -0
  232. package/dest/file-store/s3.d.ts +1 -1
  233. package/dest/file-store/s3.d.ts.map +1 -1
  234. package/dest/file-store/s3.js +11 -3
  235. package/dest/gas/fee_math.d.ts +49 -0
  236. package/dest/gas/fee_math.d.ts.map +1 -0
  237. package/dest/gas/fee_math.js +80 -0
  238. package/dest/gas/gas.d.ts +9 -14
  239. package/dest/gas/gas.d.ts.map +1 -1
  240. package/dest/gas/gas.js +6 -3
  241. package/dest/gas/gas_fees.d.ts +13 -14
  242. package/dest/gas/gas_fees.d.ts.map +1 -1
  243. package/dest/gas/gas_fees.js +20 -4
  244. package/dest/gas/gas_settings.d.ts +60 -86
  245. package/dest/gas/gas_settings.d.ts.map +1 -1
  246. package/dest/gas/gas_settings.js +49 -9
  247. package/dest/gas/index.d.ts +3 -1
  248. package/dest/gas/index.d.ts.map +1 -1
  249. package/dest/gas/index.js +2 -0
  250. package/dest/gas/tx_gas_limits.d.ts +72 -0
  251. package/dest/gas/tx_gas_limits.d.ts.map +1 -0
  252. package/dest/gas/tx_gas_limits.js +85 -0
  253. package/dest/ha-signing/config.d.ts +86 -0
  254. package/dest/ha-signing/config.d.ts.map +1 -0
  255. package/dest/ha-signing/config.js +94 -0
  256. package/dest/ha-signing/index.d.ts +4 -0
  257. package/dest/ha-signing/index.d.ts.map +1 -0
  258. package/dest/ha-signing/index.js +3 -0
  259. package/dest/ha-signing/local_config.d.ts +40 -0
  260. package/dest/ha-signing/local_config.d.ts.map +1 -0
  261. package/dest/ha-signing/local_config.js +30 -0
  262. package/dest/ha-signing/types.d.ts +90 -0
  263. package/dest/ha-signing/types.d.ts.map +1 -0
  264. package/dest/ha-signing/types.js +39 -0
  265. package/dest/hash/hash.d.ts +35 -1
  266. package/dest/hash/hash.d.ts.map +1 -1
  267. package/dest/hash/hash.js +78 -11
  268. package/dest/hash/map_slot.js +2 -2
  269. package/dest/interfaces/allowed_element.d.ts +17 -35
  270. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  271. package/dest/interfaces/allowed_element.js +8 -8
  272. package/dest/interfaces/api_limit.d.ts +1 -1
  273. package/dest/interfaces/api_limit.js +1 -1
  274. package/dest/interfaces/archiver.d.ts +20 -32
  275. package/dest/interfaces/archiver.d.ts.map +1 -1
  276. package/dest/interfaces/archiver.js +216 -65
  277. package/dest/interfaces/aztec-node-admin.d.ts +115 -257
  278. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  279. package/dest/interfaces/aztec-node-admin.js +69 -18
  280. package/dest/interfaces/aztec-node-debug.d.ts +59 -0
  281. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -0
  282. package/dest/interfaces/aztec-node-debug.js +49 -0
  283. package/dest/interfaces/aztec-node.d.ts +166 -116
  284. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  285. package/dest/interfaces/aztec-node.js +351 -72
  286. package/dest/interfaces/block-builder.d.ts +43 -12
  287. package/dest/interfaces/block-builder.d.ts.map +1 -1
  288. package/dest/interfaces/block-builder.js +13 -6
  289. package/dest/interfaces/block_response.d.ts +90 -0
  290. package/dest/interfaces/block_response.d.ts.map +1 -0
  291. package/dest/interfaces/block_response.js +30 -0
  292. package/dest/interfaces/chain_tips.d.ts +11 -0
  293. package/dest/interfaces/chain_tips.d.ts.map +1 -0
  294. package/dest/interfaces/chain_tips.js +6 -0
  295. package/dest/interfaces/checkpoint_parameter.d.ts +14 -0
  296. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -0
  297. package/dest/interfaces/checkpoint_parameter.js +18 -0
  298. package/dest/interfaces/checkpoint_response.d.ts +122 -0
  299. package/dest/interfaces/checkpoint_response.d.ts.map +1 -0
  300. package/dest/interfaces/checkpoint_response.js +26 -0
  301. package/dest/interfaces/client.d.ts +9 -2
  302. package/dest/interfaces/client.d.ts.map +1 -1
  303. package/dest/interfaces/client.js +7 -1
  304. package/dest/interfaces/configs.d.ts +98 -121
  305. package/dest/interfaces/configs.d.ts.map +1 -1
  306. package/dest/interfaces/configs.js +23 -4
  307. package/dest/interfaces/get_tx_by_hash_options.d.ts +9 -0
  308. package/dest/interfaces/get_tx_by_hash_options.d.ts.map +1 -0
  309. package/dest/interfaces/get_tx_by_hash_options.js +4 -0
  310. package/dest/interfaces/l1_publish_info.d.ts +29 -0
  311. package/dest/interfaces/l1_publish_info.d.ts.map +1 -0
  312. package/dest/interfaces/l1_publish_info.js +26 -0
  313. package/dest/interfaces/l2_logs_source.d.ts +14 -34
  314. package/dest/interfaces/l2_logs_source.d.ts.map +1 -1
  315. package/dest/interfaces/l2_logs_source.js +5 -0
  316. package/dest/interfaces/merkle_tree_operations.d.ts +20 -24
  317. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  318. package/dest/interfaces/p2p-bootstrap.js +8 -2
  319. package/dest/interfaces/p2p.d.ts +49 -15
  320. package/dest/interfaces/p2p.d.ts.map +1 -1
  321. package/dest/interfaces/p2p.js +41 -6
  322. package/dest/interfaces/private_kernel_prover.d.ts +131 -12
  323. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  324. package/dest/interfaces/prover-agent.d.ts +5 -23
  325. package/dest/interfaces/prover-agent.d.ts.map +1 -1
  326. package/dest/interfaces/prover-agent.js +4 -1
  327. package/dest/interfaces/prover-broker.d.ts +16 -1
  328. package/dest/interfaces/prover-broker.d.ts.map +1 -1
  329. package/dest/interfaces/prover-broker.js +4 -1
  330. package/dest/interfaces/prover-client.d.ts +13 -25
  331. package/dest/interfaces/prover-client.d.ts.map +1 -1
  332. package/dest/interfaces/prover-client.js +12 -4
  333. package/dest/interfaces/prover-node.d.ts +12 -8
  334. package/dest/interfaces/prover-node.d.ts.map +1 -1
  335. package/dest/interfaces/prover-node.js +37 -16
  336. package/dest/interfaces/proving-job-source.js +24 -4
  337. package/dest/interfaces/proving-job.d.ts +744 -5795
  338. package/dest/interfaces/proving-job.d.ts.map +1 -1
  339. package/dest/interfaces/proving-job.js +3 -3
  340. package/dest/interfaces/public_storage_override.d.ts +22 -0
  341. package/dest/interfaces/public_storage_override.d.ts.map +1 -0
  342. package/dest/interfaces/public_storage_override.js +7 -0
  343. package/dest/interfaces/server.d.ts +6 -3
  344. package/dest/interfaces/server.d.ts.map +1 -1
  345. package/dest/interfaces/server.js +5 -2
  346. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  347. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  348. package/dest/interfaces/slasher.d.ts +27 -59
  349. package/dest/interfaces/slasher.d.ts.map +1 -1
  350. package/dest/interfaces/slasher.js +10 -4
  351. package/dest/interfaces/tx_provider.d.ts +6 -1
  352. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  353. package/dest/interfaces/validator.d.ts +89 -170
  354. package/dest/interfaces/validator.d.ts.map +1 -1
  355. package/dest/interfaces/validator.js +19 -6
  356. package/dest/interfaces/world_state.d.ts +19 -5
  357. package/dest/interfaces/world_state.d.ts.map +1 -1
  358. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  359. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  360. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  361. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  362. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  363. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  364. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  365. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  366. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  367. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  368. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  369. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  370. package/dest/kernel/hints/index.d.ts +3 -4
  371. package/dest/kernel/hints/index.d.ts.map +1 -1
  372. package/dest/kernel/hints/index.js +2 -3
  373. package/dest/kernel/hints/key_validation_request.d.ts +12 -8
  374. package/dest/kernel/hints/key_validation_request.d.ts.map +1 -1
  375. package/dest/kernel/hints/key_validation_request.js +20 -18
  376. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  377. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  378. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  379. package/dest/kernel/hints/read_request.js +1 -1
  380. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  381. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  382. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  383. package/dest/kernel/index.d.ts +10 -2
  384. package/dest/kernel/index.d.ts.map +1 -1
  385. package/dest/kernel/index.js +9 -1
  386. package/dest/kernel/log_hash.d.ts +6 -2
  387. package/dest/kernel/log_hash.d.ts.map +1 -1
  388. package/dest/kernel/log_hash.js +23 -11
  389. package/dest/kernel/note_hash.js +1 -1
  390. package/dest/kernel/nullifier.js +1 -1
  391. package/dest/kernel/private_circuit_public_inputs.d.ts +21 -11
  392. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  393. package/dest/kernel/private_circuit_public_inputs.js +26 -19
  394. package/dest/kernel/private_context_inputs.d.ts +4 -3
  395. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  396. package/dest/kernel/private_context_inputs.js +7 -3
  397. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +10 -12
  398. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  399. package/dest/kernel/private_kernel_circuit_public_inputs.js +13 -10
  400. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +22 -0
  401. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -0
  402. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +33 -0
  403. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +23 -0
  404. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -0
  405. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +35 -0
  406. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  407. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  408. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  409. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  410. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  411. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  412. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  413. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  414. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  415. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts +16 -0
  416. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.d.ts.map +1 -0
  417. package/dest/kernel/private_kernel_inner_2_circuit_private_inputs.js +23 -0
  418. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts +17 -0
  419. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.d.ts.map +1 -0
  420. package/dest/kernel/private_kernel_inner_3_circuit_private_inputs.js +25 -0
  421. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  422. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  423. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  424. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  425. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  426. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  427. package/dest/kernel/private_kernel_prover_output.d.ts +6 -29
  428. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  429. package/dest/kernel/private_kernel_prover_output.js +4 -1
  430. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  431. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  432. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  433. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  434. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  435. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  436. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  437. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  438. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +12 -8
  439. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  440. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +32 -13
  441. package/dest/kernel/private_log_data.d.ts +1 -1
  442. package/dest/kernel/private_log_data.d.ts.map +1 -1
  443. package/dest/kernel/private_log_data.js +1 -1
  444. package/dest/kernel/private_to_avm_accumulated_data.d.ts +25 -69
  445. package/dest/kernel/private_to_avm_accumulated_data.d.ts.map +1 -1
  446. package/dest/kernel/private_to_avm_accumulated_data.js +11 -5
  447. package/dest/kernel/private_to_public_accumulated_data.d.ts +4 -3
  448. package/dest/kernel/private_to_public_accumulated_data.d.ts.map +1 -1
  449. package/dest/kernel/private_to_public_accumulated_data.js +6 -3
  450. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +7 -6
  451. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  452. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +13 -9
  453. package/dest/kernel/private_to_rollup_accumulated_data.d.ts +5 -4
  454. package/dest/kernel/private_to_rollup_accumulated_data.d.ts.map +1 -1
  455. package/dest/kernel/private_to_rollup_accumulated_data.js +6 -3
  456. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +7 -6
  457. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  458. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +13 -9
  459. package/dest/kernel/private_validation_requests.d.ts +3 -3
  460. package/dest/kernel/private_validation_requests.js +9 -9
  461. package/dest/kernel/public_call_request.d.ts +15 -30
  462. package/dest/kernel/public_call_request.d.ts.map +1 -1
  463. package/dest/kernel/public_call_request.js +16 -7
  464. package/dest/kernel/utils/index.d.ts +1 -2
  465. package/dest/kernel/utils/index.d.ts.map +1 -1
  466. package/dest/kernel/utils/index.js +0 -1
  467. package/dest/keys/derivation.d.ts +45 -5
  468. package/dest/keys/derivation.d.ts.map +1 -1
  469. package/dest/keys/derivation.js +64 -24
  470. package/dest/keys/key_types.d.ts +3 -3
  471. package/dest/keys/key_types.d.ts.map +1 -1
  472. package/dest/keys/public_key.d.ts +22 -3
  473. package/dest/keys/public_key.d.ts.map +1 -1
  474. package/dest/keys/public_key.js +20 -1
  475. package/dest/keys/public_keys.d.ts +55 -82
  476. package/dest/keys/public_keys.d.ts.map +1 -1
  477. package/dest/keys/public_keys.js +102 -74
  478. package/dest/keys/utils.js +5 -5
  479. package/dest/kv-store/config.d.ts +14 -0
  480. package/dest/kv-store/config.d.ts.map +1 -0
  481. package/dest/kv-store/config.js +21 -0
  482. package/dest/kv-store/index.d.ts +2 -0
  483. package/dest/kv-store/index.d.ts.map +1 -0
  484. package/dest/kv-store/index.js +1 -0
  485. package/dest/l1-contracts/index.d.ts +2 -2
  486. package/dest/l1-contracts/index.d.ts.map +1 -1
  487. package/dest/l1-contracts/index.js +1 -1
  488. package/dest/logs/app_tagging_secret.d.ts +69 -0
  489. package/dest/logs/app_tagging_secret.d.ts.map +1 -0
  490. package/dest/logs/app_tagging_secret.js +125 -0
  491. package/dest/logs/app_tagging_secret_kind.d.ts +7 -0
  492. package/dest/logs/app_tagging_secret_kind.d.ts.map +1 -0
  493. package/dest/logs/app_tagging_secret_kind.js +17 -0
  494. package/dest/logs/contract_class_log.d.ts +16 -35
  495. package/dest/logs/contract_class_log.d.ts.map +1 -1
  496. package/dest/logs/contract_class_log.js +11 -13
  497. package/dest/logs/debug_log_store.d.ts +30 -0
  498. package/dest/logs/debug_log_store.d.ts.map +1 -0
  499. package/dest/logs/debug_log_store.js +30 -0
  500. package/dest/logs/index.d.ts +9 -7
  501. package/dest/logs/index.d.ts.map +1 -1
  502. package/dest/logs/index.js +8 -6
  503. package/dest/logs/log_cursor.d.ts +51 -0
  504. package/dest/logs/log_cursor.d.ts.map +1 -0
  505. package/dest/logs/log_cursor.js +82 -0
  506. package/dest/logs/log_result.d.ts +54 -0
  507. package/dest/logs/log_result.d.ts.map +1 -0
  508. package/dest/logs/log_result.js +56 -0
  509. package/dest/logs/logs_query.d.ts +82 -0
  510. package/dest/logs/logs_query.d.ts.map +1 -0
  511. package/dest/logs/logs_query.js +50 -0
  512. package/dest/logs/message_context.d.ts +4 -16
  513. package/dest/logs/message_context.d.ts.map +1 -1
  514. package/dest/logs/message_context.js +1 -48
  515. package/dest/logs/pending_tagged_log.d.ts +6 -9
  516. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  517. package/dest/logs/pending_tagged_log.js +1 -31
  518. package/dest/logs/pre_tag.d.ts +14 -22
  519. package/dest/logs/pre_tag.d.ts.map +1 -1
  520. package/dest/logs/pre_tag.js +2 -2
  521. package/dest/logs/private_log.d.ts +8 -13
  522. package/dest/logs/private_log.d.ts.map +1 -1
  523. package/dest/logs/private_log.js +6 -3
  524. package/dest/logs/public_log.d.ts +4 -3
  525. package/dest/logs/public_log.d.ts.map +1 -1
  526. package/dest/logs/public_log.js +2 -1
  527. package/dest/logs/query_all_logs_by_tags.d.ts +24 -0
  528. package/dest/logs/query_all_logs_by_tags.d.ts.map +1 -0
  529. package/dest/logs/query_all_logs_by_tags.js +64 -0
  530. package/dest/logs/shared_secret_derivation.d.ts +22 -8
  531. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  532. package/dest/logs/shared_secret_derivation.js +31 -10
  533. package/dest/logs/siloed_tag.d.ts +12 -9
  534. package/dest/logs/siloed_tag.d.ts.map +1 -1
  535. package/dest/logs/siloed_tag.js +18 -7
  536. package/dest/logs/tag.d.ts +5 -6
  537. package/dest/logs/tag.d.ts.map +1 -1
  538. package/dest/logs/tag.js +5 -1
  539. package/dest/logs/tagging_index_range.d.ts +22 -0
  540. package/dest/logs/tagging_index_range.d.ts.map +1 -0
  541. package/dest/logs/tagging_index_range.js +8 -0
  542. package/dest/messaging/append_l1_to_l2_messages.d.ts +9 -0
  543. package/dest/messaging/append_l1_to_l2_messages.d.ts.map +1 -0
  544. package/dest/messaging/append_l1_to_l2_messages.js +12 -0
  545. package/dest/messaging/index.d.ts +2 -1
  546. package/dest/messaging/index.d.ts.map +1 -1
  547. package/dest/messaging/index.js +1 -0
  548. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  549. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  550. package/dest/messaging/l1_to_l2_message.js +11 -13
  551. package/dest/messaging/l1_to_l2_message_source.d.ts +4 -2
  552. package/dest/messaging/l1_to_l2_message_source.d.ts.map +1 -1
  553. package/dest/messaging/l2_to_l1_membership.d.ts +72 -9
  554. package/dest/messaging/l2_to_l1_membership.d.ts.map +1 -1
  555. package/dest/messaging/l2_to_l1_membership.js +133 -30
  556. package/dest/messaging/l2_to_l1_message.d.ts +38 -112
  557. package/dest/messaging/l2_to_l1_message.d.ts.map +1 -1
  558. package/dest/messaging/l2_to_l1_message.js +21 -12
  559. package/dest/noir/index.d.ts +5 -3
  560. package/dest/noir/index.d.ts.map +1 -1
  561. package/dest/note/index.d.ts +1 -2
  562. package/dest/note/index.d.ts.map +1 -1
  563. package/dest/note/index.js +0 -1
  564. package/dest/note/note.d.ts +2 -2
  565. package/dest/note/note.d.ts.map +1 -1
  566. package/dest/note/note_dao.d.ts +1 -1
  567. package/dest/note/note_dao.d.ts.map +1 -1
  568. package/dest/note/note_dao.js +1 -4
  569. package/dest/p2p/attestation_utils.d.ts +11 -1
  570. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  571. package/dest/p2p/attestation_utils.js +53 -1
  572. package/dest/p2p/block_proposal.d.ts +32 -15
  573. package/dest/p2p/block_proposal.d.ts.map +1 -1
  574. package/dest/p2p/block_proposal.js +58 -42
  575. package/dest/p2p/checkpoint_attestation.d.ts +25 -9
  576. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  577. package/dest/p2p/checkpoint_attestation.js +33 -24
  578. package/dest/p2p/checkpoint_proposal.d.ts +51 -24
  579. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  580. package/dest/p2p/checkpoint_proposal.js +77 -65
  581. package/dest/p2p/client_type.d.ts +2 -5
  582. package/dest/p2p/client_type.d.ts.map +1 -1
  583. package/dest/p2p/client_type.js +0 -7
  584. package/dest/p2p/consensus_payload.d.ts +33 -17
  585. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  586. package/dest/p2p/consensus_payload.js +47 -21
  587. package/dest/p2p/constants.d.ts +3 -1
  588. package/dest/p2p/constants.d.ts.map +1 -1
  589. package/dest/p2p/constants.js +1 -0
  590. package/dest/p2p/gossipable.d.ts +4 -4
  591. package/dest/p2p/gossipable.d.ts.map +1 -1
  592. package/dest/p2p/index.d.ts +1 -3
  593. package/dest/p2p/index.d.ts.map +1 -1
  594. package/dest/p2p/index.js +0 -2
  595. package/dest/p2p/peer_error.d.ts +3 -1
  596. package/dest/p2p/peer_error.d.ts.map +1 -1
  597. package/dest/p2p/peer_error.js +5 -0
  598. package/dest/p2p/signature_utils.d.ts +35 -17
  599. package/dest/p2p/signature_utils.d.ts.map +1 -1
  600. package/dest/p2p/signature_utils.js +125 -20
  601. package/dest/p2p/signed_txs.d.ts +15 -13
  602. package/dest/p2p/signed_txs.d.ts.map +1 -1
  603. package/dest/p2p/signed_txs.js +26 -24
  604. package/dest/p2p/topic_type.d.ts +3 -4
  605. package/dest/p2p/topic_type.d.ts.map +1 -1
  606. package/dest/p2p/topic_type.js +7 -24
  607. package/dest/parity/parity_base_private_inputs.d.ts +8 -4
  608. package/dest/parity/parity_base_private_inputs.d.ts.map +1 -1
  609. package/dest/parity/parity_base_private_inputs.js +7 -5
  610. package/dest/parity/parity_public_inputs.d.ts +8 -4
  611. package/dest/parity/parity_public_inputs.d.ts.map +1 -1
  612. package/dest/parity/parity_public_inputs.js +6 -3
  613. package/dest/parity/parity_root_private_inputs.d.ts +2 -2
  614. package/dest/parity/parity_root_private_inputs.d.ts.map +1 -1
  615. package/dest/proofs/chonk_proof.d.ts +57 -7
  616. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  617. package/dest/proofs/chonk_proof.js +112 -15
  618. package/dest/proofs/recursive_proof.d.ts +2 -2
  619. package/dest/proofs/recursive_proof.d.ts.map +1 -1
  620. package/dest/rollup/avm_proof_data.d.ts +3 -3
  621. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  622. package/dest/rollup/block_headers_hash.d.ts +1 -1
  623. package/dest/rollup/block_headers_hash.d.ts.map +1 -1
  624. package/dest/rollup/block_headers_hash.js +8 -2
  625. package/dest/rollup/block_merge_rollup_private_inputs.d.ts +2 -2
  626. package/dest/rollup/block_merge_rollup_private_inputs.d.ts.map +1 -1
  627. package/dest/rollup/block_rollup_public_inputs.d.ts +12 -2
  628. package/dest/rollup/block_rollup_public_inputs.d.ts.map +1 -1
  629. package/dest/rollup/block_rollup_public_inputs.js +12 -0
  630. package/dest/rollup/block_root_rollup_private_inputs.d.ts +6 -6
  631. package/dest/rollup/block_root_rollup_private_inputs.d.ts.map +1 -1
  632. package/dest/rollup/checkpoint_header.d.ts +10 -5
  633. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  634. package/dest/rollup/checkpoint_header.js +22 -12
  635. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts +2 -2
  636. package/dest/rollup/checkpoint_merge_rollup_private_inputs.d.ts.map +1 -1
  637. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +14 -7
  638. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  639. package/dest/rollup/checkpoint_rollup_public_inputs.js +11 -2
  640. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +6 -6
  641. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  642. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts +2 -2
  643. package/dest/rollup/private_tx_base_rollup_private_inputs.d.ts.map +1 -1
  644. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts +2 -2
  645. package/dest/rollup/public_chonk_verifier_private_inputs.d.ts.map +1 -1
  646. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts +2 -2
  647. package/dest/rollup/public_chonk_verifier_public_inputs.d.ts.map +1 -1
  648. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts +2 -2
  649. package/dest/rollup/public_tx_base_rollup_private_inputs.d.ts.map +1 -1
  650. package/dest/rollup/root_rollup_private_inputs.d.ts +2 -2
  651. package/dest/rollup/root_rollup_private_inputs.d.ts.map +1 -1
  652. package/dest/rollup/root_rollup_public_inputs.d.ts +7 -7
  653. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  654. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  655. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts +2 -2
  656. package/dest/rollup/tx_merge_rollup_private_inputs.d.ts.map +1 -1
  657. package/dest/rollup/tx_rollup_public_inputs.d.ts +2 -2
  658. package/dest/rollup/tx_rollup_public_inputs.d.ts.map +1 -1
  659. package/dest/schemas/schemas.d.ts +32 -78
  660. package/dest/schemas/schemas.d.ts.map +1 -1
  661. package/dest/schemas/schemas.js +2 -2
  662. package/dest/slashing/helpers.d.ts +2 -2
  663. package/dest/slashing/helpers.d.ts.map +1 -1
  664. package/dest/slashing/helpers.js +16 -7
  665. package/dest/slashing/index.d.ts +2 -3
  666. package/dest/slashing/index.d.ts.map +1 -1
  667. package/dest/slashing/index.js +1 -2
  668. package/dest/slashing/serialization.d.ts +2 -6
  669. package/dest/slashing/serialization.d.ts.map +1 -1
  670. package/dest/slashing/serialization.js +0 -60
  671. package/dest/slashing/types.d.ts +21 -111
  672. package/dest/slashing/types.d.ts.map +1 -1
  673. package/dest/slashing/types.js +28 -24
  674. package/dest/slashing/{tally.d.ts → votes.d.ts} +8 -2
  675. package/dest/slashing/votes.d.ts.map +1 -0
  676. package/dest/slashing/{tally.js → votes.js} +35 -3
  677. package/dest/snapshots/types.d.ts +15 -78
  678. package/dest/snapshots/types.d.ts.map +1 -1
  679. package/dest/stats/stats.d.ts +2 -2
  680. package/dest/stats/stats.d.ts.map +1 -1
  681. package/dest/tests/factories.d.ts +25 -56
  682. package/dest/tests/factories.d.ts.map +1 -1
  683. package/dest/tests/factories.js +93 -120
  684. package/dest/tests/mocks.d.ts +15 -7
  685. package/dest/tests/mocks.d.ts.map +1 -1
  686. package/dest/tests/mocks.js +69 -70
  687. package/dest/timetable/budgets.d.ts +57 -0
  688. package/dest/timetable/budgets.d.ts.map +1 -0
  689. package/dest/timetable/budgets.js +56 -0
  690. package/dest/timetable/build_proposer_timetable.d.ts +21 -0
  691. package/dest/timetable/build_proposer_timetable.d.ts.map +1 -0
  692. package/dest/timetable/build_proposer_timetable.js +17 -0
  693. package/dest/timetable/consensus_timetable.d.ts +70 -0
  694. package/dest/timetable/consensus_timetable.d.ts.map +1 -0
  695. package/dest/timetable/consensus_timetable.js +89 -0
  696. package/dest/timetable/index.d.ts +5 -0
  697. package/dest/timetable/index.d.ts.map +1 -0
  698. package/dest/timetable/index.js +4 -0
  699. package/dest/timetable/proposer_timetable.d.ts +106 -0
  700. package/dest/timetable/proposer_timetable.d.ts.map +1 -0
  701. package/dest/timetable/proposer_timetable.js +132 -0
  702. package/dest/trees/append_only_tree_snapshot.d.ts +9 -14
  703. package/dest/trees/append_only_tree_snapshot.d.ts.map +1 -1
  704. package/dest/trees/append_only_tree_snapshot.js +6 -3
  705. package/dest/trees/nullifier_leaf.d.ts +19 -42
  706. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  707. package/dest/trees/nullifier_leaf.js +3 -0
  708. package/dest/trees/nullifier_membership_witness.d.ts +17 -63
  709. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  710. package/dest/trees/nullifier_membership_witness.js +0 -21
  711. package/dest/trees/public_data_leaf.d.ts +22 -53
  712. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  713. package/dest/trees/public_data_leaf.js +7 -6
  714. package/dest/trees/public_data_witness.d.ts +19 -71
  715. package/dest/trees/public_data_witness.d.ts.map +1 -1
  716. package/dest/trees/public_data_witness.js +0 -27
  717. package/dest/tx/block_header.d.ts +7 -4
  718. package/dest/tx/block_header.d.ts.map +1 -1
  719. package/dest/tx/block_header.js +13 -6
  720. package/dest/tx/call_context.d.ts +4 -14
  721. package/dest/tx/call_context.d.ts.map +1 -1
  722. package/dest/tx/capsule.d.ts +7 -3
  723. package/dest/tx/capsule.d.ts.map +1 -1
  724. package/dest/tx/capsule.js +9 -3
  725. package/dest/tx/execution_payload.d.ts +1 -1
  726. package/dest/tx/execution_payload.d.ts.map +1 -1
  727. package/dest/tx/execution_payload.js +1 -1
  728. package/dest/tx/fee_provider.d.ts +10 -0
  729. package/dest/tx/fee_provider.d.ts.map +1 -0
  730. package/dest/tx/fee_provider.js +1 -0
  731. package/dest/tx/function_data.d.ts +4 -10
  732. package/dest/tx/function_data.d.ts.map +1 -1
  733. package/dest/tx/global_variable_builder.d.ts +4 -15
  734. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  735. package/dest/tx/global_variables.d.ts +19 -52
  736. package/dest/tx/global_variables.d.ts.map +1 -1
  737. package/dest/tx/global_variables.js +10 -14
  738. package/dest/tx/hashed_values.d.ts +4 -3
  739. package/dest/tx/hashed_values.d.ts.map +1 -1
  740. package/dest/tx/hashed_values.js +6 -3
  741. package/dest/tx/in_tx.d.ts +5 -17
  742. package/dest/tx/in_tx.d.ts.map +1 -1
  743. package/dest/tx/index.d.ts +2 -2
  744. package/dest/tx/index.d.ts.map +1 -1
  745. package/dest/tx/index.js +1 -1
  746. package/dest/tx/indexed_tx_effect.d.ts +8 -19
  747. package/dest/tx/indexed_tx_effect.d.ts.map +1 -1
  748. package/dest/tx/indexed_tx_effect.js +9 -6
  749. package/dest/tx/partial_state_reference.d.ts +22 -65
  750. package/dest/tx/partial_state_reference.d.ts.map +1 -1
  751. package/dest/tx/partial_state_reference.js +6 -3
  752. package/dest/tx/private_execution_result.d.ts +11 -21
  753. package/dest/tx/private_execution_result.d.ts.map +1 -1
  754. package/dest/tx/private_execution_result.js +6 -6
  755. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  756. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  757. package/dest/tx/private_tx_constant_data.js +13 -4
  758. package/dest/tx/profiling.d.ts +70 -356
  759. package/dest/tx/profiling.d.ts.map +1 -1
  760. package/dest/tx/profiling.js +21 -9
  761. package/dest/tx/protocol_contracts.d.ts +5 -9
  762. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  763. package/dest/tx/protocol_contracts.js +2 -2
  764. package/dest/tx/proven_tx.d.ts +30 -74
  765. package/dest/tx/proven_tx.d.ts.map +1 -1
  766. package/dest/tx/proven_tx.js +6 -0
  767. package/dest/tx/public_call_request_with_calldata.d.ts +4 -3
  768. package/dest/tx/public_call_request_with_calldata.d.ts.map +1 -1
  769. package/dest/tx/public_call_request_with_calldata.js +6 -3
  770. package/dest/tx/public_simulation_output.d.ts +4 -2
  771. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  772. package/dest/tx/public_simulation_output.js +7 -3
  773. package/dest/tx/simulated_tx.d.ts +77 -1149
  774. package/dest/tx/simulated_tx.d.ts.map +1 -1
  775. package/dest/tx/simulated_tx.js +17 -12
  776. package/dest/tx/state_reference.d.ts +30 -117
  777. package/dest/tx/state_reference.d.ts.map +1 -1
  778. package/dest/tx/state_reference.js +6 -4
  779. package/dest/tx/tree_snapshots.d.ts +27 -84
  780. package/dest/tx/tree_snapshots.d.ts.map +1 -1
  781. package/dest/tx/tree_snapshots.js +6 -4
  782. package/dest/tx/tx.d.ts +27 -17
  783. package/dest/tx/tx.d.ts.map +1 -1
  784. package/dest/tx/tx.js +62 -28
  785. package/dest/tx/tx_constant_data.d.ts +4 -3
  786. package/dest/tx/tx_constant_data.d.ts.map +1 -1
  787. package/dest/tx/tx_constant_data.js +6 -3
  788. package/dest/tx/tx_context.d.ts +32 -131
  789. package/dest/tx/tx_context.d.ts.map +1 -1
  790. package/dest/tx/tx_context.js +6 -6
  791. package/dest/tx/tx_hash.d.ts +6 -4
  792. package/dest/tx/tx_hash.d.ts.map +1 -1
  793. package/dest/tx/tx_hash.js +13 -5
  794. package/dest/tx/tx_receipt.d.ts +151 -51
  795. package/dest/tx/tx_receipt.d.ts.map +1 -1
  796. package/dest/tx/tx_receipt.js +145 -51
  797. package/dest/tx/tx_request.js +2 -2
  798. package/dest/tx/validator/error_texts.d.ts +11 -3
  799. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  800. package/dest/tx/validator/error_texts.js +12 -2
  801. package/dest/tx/validator/tx_validator.d.ts +6 -28
  802. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  803. package/dest/tx/validator/tx_validator.js +0 -4
  804. package/dest/types/shared.d.ts +4 -12
  805. package/dest/types/shared.d.ts.map +1 -1
  806. package/dest/types/shared.js +6 -12
  807. package/dest/update-checker/dev_version.d.ts +3 -0
  808. package/dest/update-checker/dev_version.d.ts.map +1 -0
  809. package/dest/update-checker/dev_version.js +1 -0
  810. package/dest/update-checker/index.d.ts +4 -2
  811. package/dest/update-checker/index.d.ts.map +1 -1
  812. package/dest/update-checker/index.js +3 -1
  813. package/dest/update-checker/package_version.d.ts +6 -0
  814. package/dest/update-checker/package_version.d.ts.map +1 -0
  815. package/dest/update-checker/package_version.js +13 -0
  816. package/dest/update-checker/version_checker.d.ts +25 -0
  817. package/dest/update-checker/version_checker.d.ts.map +1 -0
  818. package/dest/update-checker/version_checker.js +50 -0
  819. package/dest/validators/errors.d.ts +6 -1
  820. package/dest/validators/errors.d.ts.map +1 -1
  821. package/dest/validators/errors.js +7 -0
  822. package/dest/validators/schemas.d.ts +147 -614
  823. package/dest/validators/schemas.d.ts.map +1 -1
  824. package/dest/validators/schemas.js +9 -6
  825. package/dest/validators/types.d.ts +21 -4
  826. package/dest/validators/types.d.ts.map +1 -1
  827. package/dest/versioning/versioning.d.ts +4 -2
  828. package/dest/versioning/versioning.d.ts.map +1 -1
  829. package/dest/versioning/versioning.js +5 -2
  830. package/dest/vks/verification_key.d.ts +4 -139
  831. package/dest/vks/verification_key.d.ts.map +1 -1
  832. package/dest/vks/verification_key.js +5 -126
  833. package/dest/world-state/genesis_data.d.ts +13 -0
  834. package/dest/world-state/genesis_data.d.ts.map +1 -0
  835. package/dest/world-state/genesis_data.js +7 -0
  836. package/dest/world-state/index.d.ts +2 -1
  837. package/dest/world-state/index.d.ts.map +1 -1
  838. package/dest/world-state/index.js +1 -0
  839. package/dest/world-state/world_state_revision.d.ts +11 -39
  840. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  841. package/dest/world-state/world_state_revision.js +7 -21
  842. package/package.json +27 -14
  843. package/src/abi/abi.ts +78 -21
  844. package/src/abi/authorization_selector.ts +2 -8
  845. package/src/abi/buffer.ts +38 -5
  846. package/src/abi/contract_artifact.ts +11 -6
  847. package/src/abi/decoder.ts +36 -82
  848. package/src/abi/encoder.ts +85 -6
  849. package/src/abi/event_metadata_definition.ts +2 -0
  850. package/src/abi/event_selector.ts +2 -8
  851. package/src/abi/function_call.ts +25 -3
  852. package/src/abi/function_selector.ts +4 -13
  853. package/src/abi/function_signature_decoder.ts +77 -0
  854. package/src/abi/index.ts +1 -0
  855. package/src/abi/note_selector.ts +3 -12
  856. package/src/abi/selector.ts +1 -1
  857. package/src/abi/utils.ts +31 -4
  858. package/src/auth_witness/auth_witness.ts +3 -3
  859. package/src/avm/avm.ts +6 -1
  860. package/src/avm/index.ts +0 -5
  861. package/src/avm/message_pack.ts +12 -3
  862. package/src/avm/revert_code.ts +20 -25
  863. package/src/aztec-address/index.ts +50 -17
  864. package/src/block/attestation_info.ts +16 -11
  865. package/src/block/block_data.ts +25 -0
  866. package/src/block/block_hash.ts +21 -14
  867. package/src/block/block_parameter.ts +72 -4
  868. package/src/block/in_block.ts +1 -1
  869. package/src/block/index.ts +1 -1
  870. package/src/block/l2_block.ts +13 -1
  871. package/src/block/l2_block_info.ts +8 -6
  872. package/src/block/l2_block_source.ts +267 -122
  873. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  874. package/src/block/l2_block_stream/index.ts +1 -0
  875. package/src/block/l2_block_stream/interfaces.ts +99 -9
  876. package/src/block/l2_block_stream/l2_block_stream.ts +231 -158
  877. package/src/block/l2_block_stream/l2_tips_memory_store.ts +17 -41
  878. package/src/block/l2_block_stream/l2_tips_store_base.ts +85 -60
  879. package/src/block/proposal/attestations_and_signers.ts +85 -24
  880. package/src/block/test/l2_tips_store_test_suite.ts +271 -22
  881. package/src/block/validate_block_result.ts +48 -2
  882. package/src/checkpoint/checkpoint.ts +55 -18
  883. package/src/checkpoint/checkpoint_data.ts +91 -0
  884. package/src/checkpoint/checkpoint_reexecution_tracker.ts +167 -0
  885. package/src/checkpoint/digest.ts +28 -0
  886. package/src/checkpoint/index.ts +6 -0
  887. package/src/checkpoint/previous_checkpoint_out_hashes.ts +61 -0
  888. package/src/checkpoint/published_checkpoint.ts +3 -1
  889. package/src/checkpoint/simulation_overrides.ts +171 -0
  890. package/src/checkpoint/validate.ts +240 -0
  891. package/src/config/chain-config.ts +13 -16
  892. package/src/config/index.ts +2 -0
  893. package/src/config/network-consensus-config.ts +291 -0
  894. package/src/config/sequencer-config.ts +96 -0
  895. package/src/contract/complete_address.ts +7 -3
  896. package/src/contract/contract_address.ts +14 -13
  897. package/src/contract/contract_class.ts +6 -5
  898. package/src/contract/contract_class_id.ts +7 -6
  899. package/src/contract/contract_instance.ts +73 -3
  900. package/src/contract/index.ts +0 -3
  901. package/src/contract/interfaces/contract_class.ts +2 -82
  902. package/src/contract/interfaces/contract_data_source.ts +2 -4
  903. package/src/contract/interfaces/contract_instance.ts +32 -10
  904. package/src/contract/interfaces/node-info.ts +14 -0
  905. package/src/contract/partial_address.ts +8 -2
  906. package/src/contract/private_function.ts +5 -3
  907. package/src/database-version/version_manager.ts +113 -6
  908. package/src/deserialization/index.ts +35 -2
  909. package/src/epoch-helpers/index.ts +30 -0
  910. package/src/file-store/factory.ts +20 -4
  911. package/src/file-store/http.ts +29 -10
  912. package/src/file-store/index.ts +2 -0
  913. package/src/file-store/local.ts +15 -5
  914. package/src/file-store/memory.ts +94 -0
  915. package/src/file-store/s3.ts +12 -3
  916. package/src/gas/README.md +246 -0
  917. package/src/gas/fee_math.ts +120 -0
  918. package/src/gas/gas.ts +8 -3
  919. package/src/gas/gas_fees.ts +29 -10
  920. package/src/gas/gas_settings.ts +63 -15
  921. package/src/gas/index.ts +2 -0
  922. package/src/gas/tx_gas_limits.ts +123 -0
  923. package/src/ha-signing/config.ts +170 -0
  924. package/src/ha-signing/index.ts +29 -0
  925. package/src/ha-signing/local_config.ts +65 -0
  926. package/src/ha-signing/types.ts +126 -0
  927. package/src/hash/hash.ts +76 -11
  928. package/src/hash/map_slot.ts +2 -2
  929. package/src/interfaces/allowed_element.ts +29 -9
  930. package/src/interfaces/api_limit.ts +1 -1
  931. package/src/interfaces/archiver.ts +89 -88
  932. package/src/interfaces/aztec-node-admin.ts +58 -19
  933. package/src/interfaces/aztec-node-debug.ts +92 -0
  934. package/src/interfaces/aztec-node.ts +407 -261
  935. package/src/interfaces/block-builder.ts +65 -14
  936. package/src/interfaces/block_response.ts +92 -0
  937. package/src/interfaces/chain_tips.ts +16 -0
  938. package/src/interfaces/checkpoint_parameter.ts +20 -0
  939. package/src/interfaces/checkpoint_response.ts +84 -0
  940. package/src/interfaces/client.ts +8 -1
  941. package/src/interfaces/configs.ts +102 -14
  942. package/src/interfaces/get_tx_by_hash_options.ts +14 -0
  943. package/src/interfaces/l1_publish_info.ts +40 -0
  944. package/src/interfaces/l2_logs_source.ts +13 -39
  945. package/src/interfaces/merkle_tree_operations.ts +20 -23
  946. package/src/interfaces/p2p-bootstrap.ts +2 -2
  947. package/src/interfaces/p2p.ts +60 -31
  948. package/src/interfaces/private_kernel_prover.ts +192 -13
  949. package/src/interfaces/prover-agent.ts +1 -1
  950. package/src/interfaces/prover-broker.ts +22 -0
  951. package/src/interfaces/prover-client.ts +18 -8
  952. package/src/interfaces/prover-node.ts +36 -21
  953. package/src/interfaces/proving-job-source.ts +4 -4
  954. package/src/interfaces/proving-job.ts +6 -6
  955. package/src/interfaces/public_storage_override.ts +26 -0
  956. package/src/interfaces/server.ts +5 -2
  957. package/src/interfaces/server_circuit_prover.ts +2 -2
  958. package/src/interfaces/slasher.ts +21 -10
  959. package/src/interfaces/tx_provider.ts +6 -0
  960. package/src/interfaces/validator.ts +98 -36
  961. package/src/interfaces/world_state.ts +19 -4
  962. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  963. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  964. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  965. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  966. package/src/kernel/hints/index.ts +2 -3
  967. package/src/kernel/hints/key_validation_request.ts +18 -16
  968. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  969. package/src/kernel/hints/read_request.ts +1 -1
  970. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  971. package/src/kernel/index.ts +9 -1
  972. package/src/kernel/log_hash.ts +36 -13
  973. package/src/kernel/note_hash.ts +1 -1
  974. package/src/kernel/nullifier.ts +1 -1
  975. package/src/kernel/private_circuit_public_inputs.ts +26 -15
  976. package/src/kernel/private_context_inputs.ts +10 -3
  977. package/src/kernel/private_kernel_circuit_public_inputs.ts +11 -9
  978. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +46 -0
  979. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +49 -0
  980. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  981. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  982. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  983. package/src/kernel/private_kernel_inner_2_circuit_private_inputs.ts +29 -0
  984. package/src/kernel/private_kernel_inner_3_circuit_private_inputs.ts +31 -0
  985. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  986. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  987. package/src/kernel/private_kernel_prover_output.ts +4 -0
  988. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  989. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  990. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  991. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +42 -18
  992. package/src/kernel/private_log_data.ts +4 -1
  993. package/src/kernel/private_to_avm_accumulated_data.ts +16 -5
  994. package/src/kernel/private_to_public_accumulated_data.ts +9 -3
  995. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +14 -8
  996. package/src/kernel/private_to_rollup_accumulated_data.ts +8 -3
  997. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +13 -13
  998. package/src/kernel/private_validation_requests.ts +8 -8
  999. package/src/kernel/public_call_request.ts +22 -7
  1000. package/src/kernel/utils/index.ts +0 -1
  1001. package/src/keys/derivation.ts +86 -24
  1002. package/src/keys/key_types.ts +6 -2
  1003. package/src/keys/public_key.ts +26 -2
  1004. package/src/keys/public_keys.ts +125 -111
  1005. package/src/keys/utils.ts +5 -5
  1006. package/src/kv-store/config.ts +29 -0
  1007. package/src/kv-store/index.ts +1 -0
  1008. package/src/l1-contracts/index.ts +1 -1
  1009. package/src/logs/app_tagging_secret.ts +169 -0
  1010. package/src/logs/app_tagging_secret_kind.ts +21 -0
  1011. package/src/logs/contract_class_log.ts +15 -14
  1012. package/src/logs/debug_log_store.ts +54 -0
  1013. package/src/logs/index.ts +8 -6
  1014. package/src/logs/log_cursor.ts +110 -0
  1015. package/src/logs/log_result.ts +104 -0
  1016. package/src/logs/logs_query.ts +138 -0
  1017. package/src/logs/message_context.ts +6 -50
  1018. package/src/logs/pending_tagged_log.ts +6 -35
  1019. package/src/logs/pre_tag.ts +3 -6
  1020. package/src/logs/private_log.ts +9 -3
  1021. package/src/logs/public_log.ts +4 -2
  1022. package/src/logs/query_all_logs_by_tags.ts +98 -0
  1023. package/src/logs/shared_secret_derivation.ts +37 -10
  1024. package/src/logs/siloed_tag.ts +28 -14
  1025. package/src/logs/tag.ts +9 -9
  1026. package/src/logs/tagging_index_range.ts +18 -0
  1027. package/src/messaging/append_l1_to_l2_messages.ts +21 -0
  1028. package/src/messaging/index.ts +1 -0
  1029. package/src/messaging/l1_to_l2_message.ts +12 -9
  1030. package/src/messaging/l1_to_l2_message_source.ts +3 -1
  1031. package/src/messaging/l2_to_l1_membership.ts +192 -38
  1032. package/src/messaging/l2_to_l1_message.ts +29 -9
  1033. package/src/noir/index.ts +4 -2
  1034. package/src/note/index.ts +0 -1
  1035. package/src/note/note_dao.ts +1 -4
  1036. package/src/p2p/attestation_utils.ts +64 -1
  1037. package/src/p2p/block_proposal.ts +112 -39
  1038. package/src/p2p/checkpoint_attestation.ts +44 -31
  1039. package/src/p2p/checkpoint_proposal.ts +159 -86
  1040. package/src/p2p/client_type.ts +0 -6
  1041. package/src/p2p/consensus_payload.ts +68 -24
  1042. package/src/p2p/constants.ts +3 -0
  1043. package/src/p2p/gossipable.ts +4 -4
  1044. package/src/p2p/index.ts +0 -2
  1045. package/src/p2p/peer_error.ts +7 -0
  1046. package/src/p2p/signature_utils.ts +117 -23
  1047. package/src/p2p/signed_txs.ts +46 -28
  1048. package/src/p2p/topic_type.ts +8 -15
  1049. package/src/parity/parity_base_private_inputs.ts +10 -4
  1050. package/src/parity/parity_public_inputs.ts +9 -2
  1051. package/src/proofs/chonk_proof.ts +132 -12
  1052. package/src/rollup/avm_proof_data.ts +2 -2
  1053. package/src/rollup/block_headers_hash.ts +11 -2
  1054. package/src/rollup/block_rollup_public_inputs.ts +13 -0
  1055. package/src/rollup/checkpoint_header.ts +18 -4
  1056. package/src/rollup/checkpoint_rollup_public_inputs.ts +15 -5
  1057. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  1058. package/src/schemas/schemas.ts +6 -1
  1059. package/src/slashing/helpers.ts +21 -9
  1060. package/src/slashing/index.ts +1 -2
  1061. package/src/slashing/serialization.ts +1 -81
  1062. package/src/slashing/types.ts +38 -49
  1063. package/src/slashing/{tally.ts → votes.ts} +41 -2
  1064. package/src/stats/stats.ts +10 -2
  1065. package/src/tests/factories.ts +128 -165
  1066. package/src/tests/mocks.ts +111 -84
  1067. package/src/timetable/README.md +609 -0
  1068. package/src/timetable/budgets.ts +87 -0
  1069. package/src/timetable/build_proposer_timetable.ts +42 -0
  1070. package/src/timetable/consensus_timetable.ts +126 -0
  1071. package/src/timetable/index.ts +4 -0
  1072. package/src/timetable/proposer_timetable.ts +190 -0
  1073. package/src/timetable/timetable-example.svg +108 -0
  1074. package/src/trees/append_only_tree_snapshot.ts +8 -3
  1075. package/src/trees/nullifier_leaf.ts +4 -0
  1076. package/src/trees/nullifier_membership_witness.ts +0 -21
  1077. package/src/trees/public_data_leaf.ts +11 -5
  1078. package/src/trees/public_data_witness.ts +0 -31
  1079. package/src/tx/block_header.ts +18 -7
  1080. package/src/tx/capsule.ts +10 -2
  1081. package/src/tx/execution_payload.ts +2 -1
  1082. package/src/tx/fee_provider.ts +10 -0
  1083. package/src/tx/global_variable_builder.ts +3 -20
  1084. package/src/tx/global_variables.ts +15 -23
  1085. package/src/tx/hashed_values.ts +8 -3
  1086. package/src/tx/index.ts +1 -1
  1087. package/src/tx/indexed_tx_effect.ts +18 -6
  1088. package/src/tx/partial_state_reference.ts +8 -3
  1089. package/src/tx/private_execution_result.ts +5 -5
  1090. package/src/tx/private_tx_constant_data.ts +25 -2
  1091. package/src/tx/profiling.ts +20 -9
  1092. package/src/tx/protocol_contracts.ts +2 -2
  1093. package/src/tx/proven_tx.ts +6 -0
  1094. package/src/tx/public_call_request_with_calldata.ts +8 -3
  1095. package/src/tx/public_simulation_output.ts +4 -0
  1096. package/src/tx/simulated_tx.ts +30 -22
  1097. package/src/tx/state_reference.ts +9 -4
  1098. package/src/tx/tree_snapshots.ts +9 -4
  1099. package/src/tx/tx.ts +80 -35
  1100. package/src/tx/tx_constant_data.ts +8 -3
  1101. package/src/tx/tx_context.ts +8 -3
  1102. package/src/tx/tx_hash.ts +20 -5
  1103. package/src/tx/tx_receipt.ts +269 -74
  1104. package/src/tx/tx_request.ts +2 -2
  1105. package/src/tx/validator/error_texts.ts +15 -2
  1106. package/src/tx/validator/tx_validator.ts +2 -6
  1107. package/src/types/shared.ts +8 -13
  1108. package/src/update-checker/dev_version.ts +2 -0
  1109. package/src/update-checker/index.ts +3 -1
  1110. package/src/update-checker/package_version.ts +17 -0
  1111. package/src/update-checker/version_checker.ts +65 -0
  1112. package/src/validators/errors.ts +9 -0
  1113. package/src/validators/schemas.ts +13 -4
  1114. package/src/validators/types.ts +25 -5
  1115. package/src/versioning/versioning.ts +5 -2
  1116. package/src/vks/verification_key.ts +5 -184
  1117. package/src/world-state/genesis_data.ts +27 -0
  1118. package/src/world-state/index.ts +1 -0
  1119. package/src/world-state/world_state_revision.ts +9 -34
  1120. package/dest/abi/mocked_keys.d.ts +0 -2
  1121. package/dest/abi/mocked_keys.d.ts.map +0 -1
  1122. package/dest/abi/mocked_keys.js +0 -1
  1123. package/dest/avm/contract_storage_read.d.ts +0 -58
  1124. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  1125. package/dest/avm/contract_storage_read.js +0 -65
  1126. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  1127. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  1128. package/dest/avm/contract_storage_update_request.js +0 -80
  1129. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  1130. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  1131. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  1132. package/dest/avm/public_data_update_request.d.ts +0 -62
  1133. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  1134. package/dest/avm/public_data_update_request.js +0 -67
  1135. package/dest/avm/public_inner_call_request.d.ts +0 -50
  1136. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  1137. package/dest/avm/public_inner_call_request.js +0 -74
  1138. package/dest/block/checkpointed_l2_block.d.ts +0 -150
  1139. package/dest/block/checkpointed_l2_block.d.ts.map +0 -1
  1140. package/dest/block/checkpointed_l2_block.js +0 -46
  1141. package/dest/contract/deployment_info.d.ts +0 -24
  1142. package/dest/contract/deployment_info.d.ts.map +0 -1
  1143. package/dest/contract/deployment_info.js +0 -3
  1144. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  1145. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  1146. package/dest/contract/private_function_membership_proof.js +0 -124
  1147. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  1148. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  1149. package/dest/contract/utility_function_membership_proof.js +0 -87
  1150. package/dest/interfaces/epoch-prover.d.ts +0 -57
  1151. package/dest/interfaces/epoch-prover.d.ts.map +0 -1
  1152. package/dest/interfaces/epoch-prover.js +0 -1
  1153. package/dest/interfaces/get_logs_response.d.ts +0 -90
  1154. package/dest/interfaces/get_logs_response.d.ts.map +0 -1
  1155. package/dest/interfaces/get_logs_response.js +0 -12
  1156. package/dest/interfaces/prover-coordination.d.ts +0 -15
  1157. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  1158. package/dest/interfaces/prover-coordination.js +0 -1
  1159. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  1160. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  1161. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  1162. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  1163. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  1164. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  1165. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  1166. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  1167. package/dest/kernel/utils/optional_number.d.ts +0 -31
  1168. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  1169. package/dest/kernel/utils/optional_number.js +0 -42
  1170. package/dest/l1-contracts/slash_factory.d.ts +0 -45
  1171. package/dest/l1-contracts/slash_factory.d.ts.map +0 -1
  1172. package/dest/l1-contracts/slash_factory.js +0 -158
  1173. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  1174. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  1175. package/dest/logs/directional_app_tagging_secret.js +0 -64
  1176. package/dest/logs/extended_contract_class_log.d.ts +0 -51
  1177. package/dest/logs/extended_contract_class_log.d.ts.map +0 -1
  1178. package/dest/logs/extended_contract_class_log.js +0 -67
  1179. package/dest/logs/extended_public_log.d.ts +0 -100
  1180. package/dest/logs/extended_public_log.d.ts.map +0 -1
  1181. package/dest/logs/extended_public_log.js +0 -73
  1182. package/dest/logs/log_filter.d.ts +0 -22
  1183. package/dest/logs/log_filter.d.ts.map +0 -1
  1184. package/dest/logs/log_filter.js +0 -11
  1185. package/dest/logs/log_id.d.ts +0 -82
  1186. package/dest/logs/log_id.d.ts.map +0 -1
  1187. package/dest/logs/log_id.js +0 -92
  1188. package/dest/logs/tx_scoped_l2_log.d.ts +0 -49
  1189. package/dest/logs/tx_scoped_l2_log.d.ts.map +0 -1
  1190. package/dest/logs/tx_scoped_l2_log.js +0 -70
  1191. package/dest/note/notes_filter.d.ts +0 -27
  1192. package/dest/note/notes_filter.d.ts.map +0 -1
  1193. package/dest/note/notes_filter.js +0 -11
  1194. package/dest/p2p/interface.d.ts +0 -5
  1195. package/dest/p2p/interface.d.ts.map +0 -1
  1196. package/dest/p2p/interface.js +0 -1
  1197. package/dest/slashing/empire.d.ts +0 -31
  1198. package/dest/slashing/empire.d.ts.map +0 -1
  1199. package/dest/slashing/empire.js +0 -85
  1200. package/dest/slashing/tally.d.ts.map +0 -1
  1201. package/dest/tx/validator/empty_validator.d.ts +0 -5
  1202. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  1203. package/dest/tx/validator/empty_validator.js +0 -7
  1204. package/dest/update-checker/update-checker.d.ts +0 -49
  1205. package/dest/update-checker/update-checker.d.ts.map +0 -1
  1206. package/dest/update-checker/update-checker.js +0 -130
  1207. package/src/abi/mocked_keys.ts +0 -2
  1208. package/src/avm/contract_storage_read.ts +0 -77
  1209. package/src/avm/contract_storage_update_request.ts +0 -93
  1210. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  1211. package/src/avm/public_data_update_request.ts +0 -106
  1212. package/src/avm/public_inner_call_request.ts +0 -85
  1213. package/src/block/checkpointed_l2_block.ts +0 -70
  1214. package/src/contract/deployment_info.ts +0 -25
  1215. package/src/contract/private_function_membership_proof.ts +0 -167
  1216. package/src/contract/utility_function_membership_proof.ts +0 -118
  1217. package/src/interfaces/epoch-prover.ts +0 -72
  1218. package/src/interfaces/get_logs_response.ts +0 -35
  1219. package/src/interfaces/prover-coordination.ts +0 -17
  1220. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  1221. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  1222. package/src/kernel/utils/optional_number.ts +0 -50
  1223. package/src/l1-contracts/slash_factory.ts +0 -180
  1224. package/src/logs/directional_app_tagging_secret.ts +0 -79
  1225. package/src/logs/extended_contract_class_log.ts +0 -87
  1226. package/src/logs/extended_public_log.ts +0 -94
  1227. package/src/logs/log_filter.ts +0 -31
  1228. package/src/logs/log_id.ts +0 -122
  1229. package/src/logs/tx_scoped_l2_log.ts +0 -98
  1230. package/src/note/notes_filter.ts +0 -38
  1231. package/src/p2p/interface.ts +0 -4
  1232. package/src/slashing/empire.ts +0 -102
  1233. package/src/tx/validator/empty_validator.ts +0 -7
  1234. package/src/update-checker/update-checker.ts +0 -166
@@ -3,17 +3,78 @@ import type { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import type { EthAddress } from '@aztec/foundation/eth-address';
4
4
  import type { TypedEventEmitter } from '@aztec/foundation/types';
5
5
  import { z } from 'zod';
6
- import type { Checkpoint } from '../checkpoint/checkpoint.js';
6
+ import type { CheckpointData, ProposedCheckpointData, ProposedCheckpointInput } from '../checkpoint/checkpoint_data.js';
7
+ import type { CheckpointInfo } from '../checkpoint/checkpoint_info.js';
7
8
  import type { PublishedCheckpoint } from '../checkpoint/published_checkpoint.js';
8
9
  import type { L1RollupConstants } from '../epoch-helpers/index.js';
9
- import type { BlockHeader } from '../tx/block_header.js';
10
+ import type { L2ToL1MembershipWitness } from '../messaging/l2_to_l1_membership.js';
10
11
  import type { IndexedTxEffect } from '../tx/indexed_tx_effect.js';
11
12
  import type { TxHash } from '../tx/tx_hash.js';
12
- import type { TxReceipt } from '../tx/tx_receipt.js';
13
- import type { BlockHash } from './block_hash.js';
14
- import type { CheckpointedL2Block } from './checkpointed_l2_block.js';
13
+ import type { BlockData } from './block_data.js';
14
+ import { BlockHash } from './block_hash.js';
15
+ import { type NormalizedBlockParameter } from './block_parameter.js';
15
16
  import type { L2Block } from './l2_block.js';
16
17
  import type { ValidateCheckpointNegativeResult, ValidateCheckpointResult } from './validate_block_result.js';
18
+ /** Lookup a single block by block number, hash, archive root, or chain-tip tag. */
19
+ export type BlockQuery = NormalizedBlockParameter;
20
+ /**
21
+ * Query a range of blocks by start/limit or by epoch.
22
+ *
23
+ * The `epoch` variant requires `onlyCheckpointed: true` because epoch boundaries are only
24
+ * meaningful for the checkpointed chain — the proposed chain may include uncheckpointed
25
+ * blocks past the epoch boundary that callers should not receive.
26
+ */
27
+ export type BlocksQuery = {
28
+ from: BlockNumber;
29
+ limit: number;
30
+ onlyCheckpointed?: boolean;
31
+ } | {
32
+ epoch: EpochNumber;
33
+ onlyCheckpointed: true;
34
+ };
35
+ export declare const BlockQuerySchema: z.ZodType<BlockQuery, unknown>;
36
+ export declare const BlocksQuerySchema: z.ZodType<BlocksQuery, unknown>;
37
+ /** Lookup a single confirmed checkpoint by checkpoint number, slot, or chain-tip tag. */
38
+ export type CheckpointQuery = {
39
+ number: CheckpointNumber;
40
+ } | {
41
+ slot: SlotNumber;
42
+ } | {
43
+ tag: 'checkpointed' | 'proven' | 'finalized';
44
+ };
45
+ /**
46
+ * Query a range of confirmed checkpoints by start/limit, by slot anchor, or by epoch.
47
+ *
48
+ * The `fromSlot` variant walks the slot index: it returns up to `limit` checkpoints anchored at
49
+ * `fromSlot`, ordered nearest-first. With `reverse` it takes the checkpoints at or before the slot
50
+ * (descending); otherwise the checkpoints at or after it (ascending). Use `limit: 1, reverse: true`
51
+ * to find the latest checkpoint at or before a slot in a single range scan.
52
+ */
53
+ export type CheckpointsQuery = {
54
+ from: CheckpointNumber;
55
+ limit: number;
56
+ } | {
57
+ fromSlot: SlotNumber;
58
+ limit: number;
59
+ reverse?: boolean;
60
+ } | {
61
+ epoch: EpochNumber;
62
+ };
63
+ /**
64
+ * Lookup a proposed (archiver-internal, not-yet-L1-confirmed) checkpoint.
65
+ * Distinct from CheckpointQuery because proposed checkpoints have a different shape
66
+ * (no l1, no attestations, but carries totalManaUsed) and live in their own LMDB map.
67
+ */
68
+ export type ProposedCheckpointQuery = {
69
+ number: CheckpointNumber;
70
+ } | {
71
+ slot: SlotNumber;
72
+ } | {
73
+ tag: 'proposed';
74
+ };
75
+ export declare const CheckpointQuerySchema: z.ZodType<CheckpointQuery, unknown>;
76
+ export declare const CheckpointsQuerySchema: z.ZodType<CheckpointsQuery, unknown>;
77
+ export declare const ProposedCheckpointQuerySchema: z.ZodType<ProposedCheckpointQuery, unknown>;
17
78
  /**
18
79
  * Interface of classes allowing for the retrieval of L2 blocks.
19
80
  */
@@ -34,78 +95,41 @@ export interface L2BlockSource {
34
95
  */
35
96
  getBlockNumber(): Promise<BlockNumber>;
36
97
  /**
37
- * Gets the number of the latest L2 block proven seen by the block source implementation.
38
- * @returns The number of the latest L2 block proven seen by the block source implementation.
39
- */
40
- getProvenBlockNumber(): Promise<BlockNumber>;
41
- /**
42
- * Gets the number of the latest L2 block checkpointed seen by the block source implementation.
43
- * @returns The number of the latest L2 block checkpointed seen by the block source implementation.
44
- */
45
- getCheckpointedL2BlockNumber(): Promise<BlockNumber>;
46
- /**
47
- * Computes the finalized block number based on the proven block number.
48
- * A block is considered finalized when it's 2 epochs behind the proven block.
49
- * TODO(#13569): Compute proper finalized block number based on L1 finalized block.
50
- * @returns The finalized block number.
98
+ * Resolves a {@link BlockQuery} to its concrete L2 block number.
99
+ * @param query - Lookup by block number, hash, archive root, or chain-tip tag.
100
+ * @returns The block number, or undefined if no block matches the query.
51
101
  */
52
- getFinalizedL2BlockNumber(): Promise<BlockNumber>;
102
+ getBlockNumber(query: BlockQuery): Promise<BlockNumber | undefined>;
103
+ getBlockNumber(query?: BlockQuery): Promise<BlockNumber | undefined>;
53
104
  /**
54
- * Gets an l2 block header.
55
- * @param number - The block number to return or 'latest' for the most recent one.
56
- * @returns The requested L2 block header.
105
+ * Gets the number of the latest L2 checkpoint processed by the block source implementation.
106
+ * @returns The number of the latest L2 checkpoint processed by the block source implementation.
57
107
  */
58
- getBlockHeader(number: BlockNumber | 'latest'): Promise<BlockHeader | undefined>;
108
+ getCheckpointNumber(): Promise<CheckpointNumber>;
59
109
  /**
60
- * Gets a checkpointed L2 block by block number.
61
- * Returns undefined if the block doesn't exist or hasn't been checkpointed yet.
62
- * @param number - The block number to retrieve.
63
- * @returns The requested checkpointed L2 block (or undefined if not found or not checkpointed).
110
+ * Gets a single confirmed checkpoint matching the given query.
111
+ * Heavy shape: includes nested full `L2Block`s with transaction bodies.
112
+ * @param query - Lookup by checkpoint number, slot, or chain-tip tag.
64
113
  */
65
- getCheckpointedBlock(number: BlockNumber): Promise<CheckpointedL2Block | undefined>;
66
- getCheckpointedBlocks(from: BlockNumber, limit: number): Promise<CheckpointedL2Block[]>;
114
+ getCheckpoint(query: CheckpointQuery): Promise<PublishedCheckpoint | undefined>;
67
115
  /**
68
- * Retrieves a collection of checkpoints.
69
- * @param checkpointNumber The first checkpoint to be retrieved.
70
- * @param limit The number of checkpoints to be retrieved.
71
- * @returns The collection of complete checkpoints.
116
+ * Gets a collection of confirmed checkpoints matching the given query.
117
+ * Heavy shape: includes nested full `L2Block`s with transaction bodies.
118
+ * @param query - Range by start/limit or by epoch.
72
119
  */
73
- getCheckpoints(checkpointNumber: CheckpointNumber, limit: number): Promise<PublishedCheckpoint[]>;
120
+ getCheckpoints(query: CheckpointsQuery): Promise<PublishedCheckpoint[]>;
74
121
  /**
75
- * Gets the checkpoints for a given epoch
76
- * @param epochNumber - Epoch for which we want checkpoint data
122
+ * Gets lightweight checkpoint metadata for a single checkpoint.
123
+ * Cheap passthrough for metadata-only queries (no block body reads).
124
+ * @param query - Lookup by checkpoint number, slot, or chain-tip tag.
77
125
  */
78
- getCheckpointsForEpoch(epochNumber: EpochNumber): Promise<Checkpoint[]>;
126
+ getCheckpointData(query: CheckpointQuery): Promise<CheckpointData | undefined>;
79
127
  /**
80
- * Gets a block header by its hash.
81
- * @param blockHash - The block hash to retrieve.
82
- * @returns The requested block header (or undefined if not found).
128
+ * Gets a collection of lightweight checkpoint metadata entries matching the given query.
129
+ * Cheap passthrough for metadata-only queries (no block body reads).
130
+ * @param query - Range by start/limit or by epoch.
83
131
  */
84
- getBlockHeaderByHash(blockHash: BlockHash): Promise<BlockHeader | undefined>;
85
- /**
86
- * Gets a block header by its archive root.
87
- * @param archive - The archive root to retrieve.
88
- * @returns The requested block header (or undefined if not found).
89
- */
90
- getBlockHeaderByArchive(archive: Fr): Promise<BlockHeader | undefined>;
91
- /**
92
- * Gets an L2 block by block number.
93
- * @param number - The block number to return.
94
- * @returns The requested L2 block (or undefined if not found).
95
- */
96
- getL2Block(number: BlockNumber): Promise<L2Block | undefined>;
97
- /**
98
- * Gets an L2 block by its hash.
99
- * @param blockHash - The block hash to retrieve.
100
- * @returns The requested L2 block (or undefined if not found).
101
- */
102
- getL2BlockByHash(blockHash: BlockHash): Promise<L2Block | undefined>;
103
- /**
104
- * Gets an L2 block by its archive root.
105
- * @param archive - The archive root to retrieve.
106
- * @returns The requested L2 block (or undefined if not found).
107
- */
108
- getL2BlockByArchive(archive: Fr): Promise<L2Block | undefined>;
132
+ getCheckpointsData(query: CheckpointsQuery): Promise<CheckpointData[]>;
109
133
  /**
110
134
  * Gets a tx effect.
111
135
  * @param txHash - The hash of the tx corresponding to the tx effect.
@@ -113,25 +137,29 @@ export interface L2BlockSource {
113
137
  */
114
138
  getTxEffect(txHash: TxHash): Promise<IndexedTxEffect | undefined>;
115
139
  /**
116
- * Gets a receipt of a settled tx.
117
- * @param txHash - The hash of a tx we try to get the receipt for.
118
- * @returns The requested tx receipt (or undefined if not found).
140
+ * Returns the L2-to-L1 membership witness for `message` emitted by tx `txHash`, built against the
141
+ * smallest partial-proof root on the Outbox that covers the tx's checkpoint.
142
+ *
143
+ * The Outbox roots are read lazily, pinned to the node's synced L1 block, so the witness reflects
144
+ * the node's synced view. Returns `undefined` if the tx isn't yet in a block/epoch or no covering
145
+ * root has landed on L1 as of the synced block.
146
+ *
147
+ * Caveat: cached roots that are sealed and L1-finalized are not re-validated. A reorg deeper than
148
+ * L1 finality could leave the node serving a witness against a no-longer-canonical root.
119
149
  */
120
- getSettledTxReceipt(txHash: TxHash): Promise<TxReceipt | undefined>;
150
+ getL2ToL1MembershipWitness(txHash: TxHash, message: Fr, messageIndexInTx?: number): Promise<L2ToL1MembershipWitness | undefined>;
121
151
  /**
122
- * Returns the current L2 slot number based on the currently synced L1 timestamp.
152
+ * Returns the last L2 slot number for which we have all L1 data needed to build the next checkpoint.
153
+ * Determined by the max of two signals: L1 block sync progress and latest synced checkpoint slot.
154
+ * The checkpoint signal handles missed L1 blocks, since a published checkpoint seals the message tree
155
+ * for the next checkpoint via the inbox LAG mechanism.
123
156
  */
124
- getL2SlotNumber(): Promise<SlotNumber | undefined>;
157
+ getSyncedL2SlotNumber(): Promise<SlotNumber | undefined>;
125
158
  /**
126
- * Returns the current L2 epoch number based on the currently synced L1 timestamp.
159
+ * Returns the last L2 epoch number that has been fully synchronized from L1.
160
+ * An epoch is fully synced when all its L2 slots have been fully synced.
127
161
  */
128
- getL2EpochNumber(): Promise<EpochNumber | undefined>;
129
- /**
130
- * Returns all checkpointed block headers for a given epoch.
131
- * @dev Use this method only with recent epochs, since it walks the block list backwards.
132
- * @param epochNumber - The epoch number to return headers for.
133
- */
134
- getCheckpointedBlockHeadersForEpoch(epochNumber: EpochNumber): Promise<BlockHeader[]>;
162
+ getSyncedL2EpochNumber(): Promise<EpochNumber | undefined>;
135
163
  /**
136
164
  * Returns whether the given epoch is completed on L1, based on the current L1 and L2 block numbers.
137
165
  * @param epochNumber - The epoch number to check.
@@ -145,10 +173,21 @@ export interface L2BlockSource {
145
173
  * Returns the rollup constants for the current chain.
146
174
  */
147
175
  getL1Constants(): Promise<L1RollupConstants>;
176
+ /**
177
+ * Returns true iff `canPruneAtTime` would be true at the latest L1 timestamp inside
178
+ * the L2 slot's window. Computed entirely from local archiver state (no L1 RPC).
179
+ * @param slot - The L2 slot to check.
180
+ */
181
+ isPruneDueAtSlot(slot: SlotNumber): Promise<boolean>;
148
182
  /** Returns values for the genesis block */
149
183
  getGenesisValues(): Promise<{
150
184
  genesisArchiveRoot: Fr;
151
185
  }>;
186
+ /**
187
+ * Returns the precomputed hash of the genesis block header. Synchronous because the hash
188
+ * is derived from the initial block header at construction time and cached by implementers.
189
+ */
190
+ getGenesisBlockHash(): BlockHash;
152
191
  /** Latest synced L1 timestamp. */
153
192
  getL1Timestamp(): Promise<bigint | undefined>;
154
193
  /**
@@ -161,45 +200,44 @@ export interface L2BlockSource {
161
200
  * checkpoint that is invalid, along with the reason for being invalid, which can be used to trigger an invalidation.
162
201
  */
163
202
  getPendingChainValidationStatus(): Promise<ValidateCheckpointResult>;
164
- /** Force a sync. */
165
- syncImmediate(): Promise<void>;
166
203
  /**
167
- * Gets an l2 block. If a negative number is passed, the block returned is the most recent.
168
- * @param number - The block number to return (inclusive).
169
- * @returns The requested L2 block.
204
+ * Looks up a proposed (archiver-internal, not-yet-L1-confirmed) checkpoint.
205
+ * Returns the latest proposed entry when called with no args or `{ tag: 'proposed' }`; since a
206
+ * proposed entry can only be stored with a checkpoint number beyond the confirmed frontier (and is
207
+ * deleted on confirmation), the latest entry is always the leading one. Callers derive the proposed
208
+ * tip from the payload (checkpoint number, and last block `startBlock + blockCount - 1`).
209
+ * With `{ number }` or `{ slot }`, returns the matching entry or undefined.
210
+ * Never falls back to confirmed checkpoints.
170
211
  */
171
- getBlock(number: BlockNumber): Promise<L2Block | undefined>;
212
+ getProposedCheckpointData(query?: ProposedCheckpointQuery): Promise<ProposedCheckpointData | undefined>;
213
+ /** Force a sync. */
214
+ syncImmediate(): Promise<void>;
172
215
  /**
173
- * Returns all checkpointed blocks for a given epoch.
174
- * @dev Use this method only with recent epochs, since it walks the block list backwards.
175
- * @param epochNumber - The epoch number to return blocks for.
216
+ * Gets an L2 block matching the given query.
217
+ * @param query - Lookup by block number, hash, or archive root.
176
218
  */
177
- getCheckpointedBlocksForEpoch(epochNumber: EpochNumber): Promise<CheckpointedL2Block[]>;
219
+ getBlock(query: BlockQuery): Promise<L2Block | undefined>;
178
220
  /**
179
- * Returns all blocks for a given slot.
180
- * @dev Use this method only with recent slots, since it walks the block list backwards.
181
- * @param slotNumber - The slot number to return blocks for.
221
+ * Gets a collection of L2 blocks matching the given query.
222
+ * @param query - Range by start/limit or by epoch; optionally restricted to checkpointed blocks.
182
223
  */
183
- getBlocksForSlot(slotNumber: SlotNumber): Promise<L2Block[]>;
224
+ getBlocks(query: BlocksQuery): Promise<L2Block[]>;
184
225
  /**
185
- * Gets a checkpointed block by its block hash.
186
- * @param blockHash - The block hash to retrieve.
187
- * @returns The requested block (or undefined if not found).
226
+ * Gets block metadata (without tx data) matching the given query.
227
+ * @param query - Lookup by block number, hash, or archive root.
188
228
  */
189
- getCheckpointedBlockByHash(blockHash: BlockHash): Promise<CheckpointedL2Block | undefined>;
229
+ getBlockData(query: BlockQuery): Promise<BlockData | undefined>;
190
230
  /**
191
- * Gets a checkpointed block by its archive root.
192
- * @param archive - The archive root to retrieve.
193
- * @returns The requested block (or undefined if not found).
231
+ * Gets a collection of block metadata entries matching the given query.
232
+ * @param query - Range by start/limit or by epoch; optionally restricted to checkpointed blocks.
194
233
  */
195
- getCheckpointedBlockByArchive(archive: Fr): Promise<CheckpointedL2Block | undefined>;
234
+ getBlocksData(query: BlocksQuery): Promise<BlockData[]>;
196
235
  /**
197
- * Gets up to `limit` amount of L2 blocks starting from `from`.
198
- * @param from - Number of the first block to return (inclusive).
199
- * @param limit - The maximum number of blocks to return.
200
- * @returns The requested L2 blocks.
236
+ * Returns all blocks for a given slot.
237
+ * @dev Use this method only with recent slots, since it walks the block list backwards.
238
+ * @param slotNumber - The slot number to return blocks for.
201
239
  */
202
- getBlocks(from: BlockNumber, limit: number): Promise<L2Block[]>;
240
+ getBlocksForSlot(slotNumber: SlotNumber): Promise<L2Block[]>;
203
241
  }
204
242
  /**
205
243
  * Interface for classes that can receive and store L2 blocks.
@@ -212,6 +250,18 @@ export interface L2BlockSink {
212
250
  */
213
251
  addBlock(block: L2Block): Promise<void>;
214
252
  }
253
+ /**
254
+ * Interface for classes that can receive and store proposed (not-yet-L1-confirmed) checkpoints.
255
+ */
256
+ export interface ProposedCheckpointSink {
257
+ /**
258
+ * Adds a proposed checkpoint to the store. The archive and checkpointOutHash are computed
259
+ * internally from the already-stored blocks, so every block in the checkpoint must be added
260
+ * (via {@link L2BlockSink.addBlock}) before calling this.
261
+ * @param checkpoint - The proposed checkpoint metadata.
262
+ */
263
+ addProposedCheckpoint(checkpoint: ProposedCheckpointInput): Promise<void>;
264
+ }
215
265
  /**
216
266
  * L2BlockSource that emits events upon pending / proven chain changes.
217
267
  * see L2BlockSourceEvents for the events emitted.
@@ -222,16 +272,21 @@ export type ArchiverEmitter = TypedEventEmitter<{
222
272
  [L2BlockSourceEvents.L2BlockProven]: (args: L2BlockProvenEvent) => void;
223
273
  [L2BlockSourceEvents.InvalidAttestationsCheckpointDetected]: (args: InvalidCheckpointDetectedEvent) => void;
224
274
  [L2BlockSourceEvents.L2BlocksCheckpointed]: (args: L2CheckpointEvent) => void;
275
+ [L2BlockSourceEvents.CheckpointEquivocationDetected]: (args: CheckpointEquivocationDetectedEvent) => void;
276
+ [L2BlockSourceEvents.DescendentOfInvalidAttestationsCheckpointDetected]: (args: DescendentOfInvalidAttestationsCheckpointEvent) => void;
277
+ [L2BlockSourceEvents.L2BlockSourceUpdated]: (args: L2BlockSourceUpdatedEvent) => void;
225
278
  }>;
226
279
  export interface L2BlockSourceEventEmitter extends L2BlockSource {
227
280
  events: ArchiverEmitter;
228
281
  }
229
282
  /**
230
- * Identifier for L2 block tags.
283
+ * Identifier for L2 block tags. Internal counterpart to {@link BlockTag} that omits `latest`
284
+ * (which is an alias for `proposed` accepted only at the public RPC surface).
285
+ *
231
286
  * - proposed: Latest block proposed on L2.
232
- * - checkpointed: Checkpointed block on L1.
233
- * - proven: Proven block on L1.
234
- * - finalized: Proven block on a finalized L1 block (not implemented, set to proven for now).
287
+ * - checkpointed: Latest block whose enclosing checkpoint has been published on L1.
288
+ * - proven: Latest block whose enclosing checkpoint has been proven on L1.
289
+ * - finalized: Latest block whose proving L1 transaction has reached L1 finality.
235
290
  */
236
291
  export type L2BlockTag = 'proposed' | 'checkpointed' | 'proven' | 'finalized';
237
292
  /** Tips of the L2 chain. */
@@ -241,6 +296,11 @@ export type L2Tips = {
241
296
  proven: L2TipId;
242
297
  finalized: L2TipId;
243
298
  };
299
+ /**
300
+ * Tips of the L2 chain as tracked by a local provider (world-state, l2-tips-store). Identical to
301
+ * {@link L2Tips}; the alias is retained for call sites that document a local-only provenance.
302
+ */
303
+ export type LocalL2Tips = L2Tips;
244
304
  export declare const GENESIS_CHECKPOINT_HEADER_HASH: Fr;
245
305
  /** Identifies a block by number and hash. */
246
306
  export type L2BlockId = {
@@ -259,255 +319,70 @@ export type L2TipId = {
259
319
  export declare function makeL2BlockId(number: BlockNumber, hash?: string): L2BlockId;
260
320
  /** Creates an L2 checkpoint id */
261
321
  export declare function makeL2CheckpointId(number: CheckpointNumber, hash: string): CheckpointId;
322
+ /** Returns whether two {@link L2Tips} snapshots agree on every tier (proposed, checkpointed, proven, finalized). */
323
+ export declare function l2TipsEqual(a: L2Tips, b: L2Tips): boolean;
262
324
  export declare const L2TipsSchema: z.ZodObject<{
263
325
  proposed: z.ZodObject<{
264
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
326
+ number: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodPipe<z.ZodBigInt, z.ZodTransform<number, bigint>>, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>, z.ZodTransform<BlockNumber, number>>;
265
327
  hash: z.ZodString;
266
- }, "strip", z.ZodTypeAny, {
267
- number: number & {
268
- _branding: "BlockNumber";
269
- };
270
- hash: string;
271
- }, {
272
- number: string | number | bigint;
273
- hash: string;
274
- }>;
328
+ }, z.core.$strip>;
275
329
  checkpointed: z.ZodObject<{
276
330
  block: z.ZodObject<{
277
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
331
+ number: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodPipe<z.ZodBigInt, z.ZodTransform<number, bigint>>, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>, z.ZodTransform<BlockNumber, number>>;
278
332
  hash: z.ZodString;
279
- }, "strip", z.ZodTypeAny, {
280
- number: number & {
281
- _branding: "BlockNumber";
282
- };
283
- hash: string;
284
- }, {
285
- number: string | number | bigint;
286
- hash: string;
287
- }>;
333
+ }, z.core.$strip>;
288
334
  checkpoint: z.ZodObject<{
289
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, CheckpointNumber, string | number | bigint>;
335
+ number: z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodCoercedNumber<string | number | bigint>>, z.ZodTransform<CheckpointNumber, number>>;
290
336
  hash: z.ZodString;
291
- }, "strip", z.ZodTypeAny, {
292
- number: number & {
293
- _branding: "CheckpointNumber";
294
- };
295
- hash: string;
296
- }, {
297
- number: string | number | bigint;
298
- hash: string;
299
- }>;
300
- }, "strip", z.ZodTypeAny, {
301
- block: {
302
- number: number & {
303
- _branding: "BlockNumber";
304
- };
305
- hash: string;
306
- };
307
- checkpoint: {
308
- number: number & {
309
- _branding: "CheckpointNumber";
310
- };
311
- hash: string;
312
- };
313
- }, {
314
- block: {
315
- number: string | number | bigint;
316
- hash: string;
317
- };
318
- checkpoint: {
319
- number: string | number | bigint;
320
- hash: string;
321
- };
322
- }>;
337
+ }, z.core.$strip>;
338
+ }, z.core.$strip>;
323
339
  proven: z.ZodObject<{
324
340
  block: z.ZodObject<{
325
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
341
+ number: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodPipe<z.ZodBigInt, z.ZodTransform<number, bigint>>, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>, z.ZodTransform<BlockNumber, number>>;
326
342
  hash: z.ZodString;
327
- }, "strip", z.ZodTypeAny, {
328
- number: number & {
329
- _branding: "BlockNumber";
330
- };
331
- hash: string;
332
- }, {
333
- number: string | number | bigint;
334
- hash: string;
335
- }>;
343
+ }, z.core.$strip>;
336
344
  checkpoint: z.ZodObject<{
337
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, CheckpointNumber, string | number | bigint>;
345
+ number: z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodCoercedNumber<string | number | bigint>>, z.ZodTransform<CheckpointNumber, number>>;
338
346
  hash: z.ZodString;
339
- }, "strip", z.ZodTypeAny, {
340
- number: number & {
341
- _branding: "CheckpointNumber";
342
- };
343
- hash: string;
344
- }, {
345
- number: string | number | bigint;
346
- hash: string;
347
- }>;
348
- }, "strip", z.ZodTypeAny, {
349
- block: {
350
- number: number & {
351
- _branding: "BlockNumber";
352
- };
353
- hash: string;
354
- };
355
- checkpoint: {
356
- number: number & {
357
- _branding: "CheckpointNumber";
358
- };
359
- hash: string;
360
- };
361
- }, {
362
- block: {
363
- number: string | number | bigint;
364
- hash: string;
365
- };
366
- checkpoint: {
367
- number: string | number | bigint;
368
- hash: string;
369
- };
370
- }>;
347
+ }, z.core.$strip>;
348
+ }, z.core.$strip>;
371
349
  finalized: z.ZodObject<{
372
350
  block: z.ZodObject<{
373
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
351
+ number: z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodPipe<z.ZodBigInt, z.ZodTransform<number, bigint>>, z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>]>, z.ZodTransform<BlockNumber, number>>;
374
352
  hash: z.ZodString;
375
- }, "strip", z.ZodTypeAny, {
376
- number: number & {
377
- _branding: "BlockNumber";
378
- };
379
- hash: string;
380
- }, {
381
- number: string | number | bigint;
382
- hash: string;
383
- }>;
353
+ }, z.core.$strip>;
384
354
  checkpoint: z.ZodObject<{
385
- number: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, CheckpointNumber, string | number | bigint>;
355
+ number: z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodCoercedNumber<string | number | bigint>>, z.ZodTransform<CheckpointNumber, number>>;
386
356
  hash: z.ZodString;
387
- }, "strip", z.ZodTypeAny, {
388
- number: number & {
389
- _branding: "CheckpointNumber";
390
- };
391
- hash: string;
392
- }, {
393
- number: string | number | bigint;
394
- hash: string;
395
- }>;
396
- }, "strip", z.ZodTypeAny, {
397
- block: {
398
- number: number & {
399
- _branding: "BlockNumber";
400
- };
401
- hash: string;
402
- };
403
- checkpoint: {
404
- number: number & {
405
- _branding: "CheckpointNumber";
406
- };
407
- hash: string;
408
- };
409
- }, {
410
- block: {
411
- number: string | number | bigint;
412
- hash: string;
413
- };
414
- checkpoint: {
415
- number: string | number | bigint;
416
- hash: string;
417
- };
418
- }>;
419
- }, "strip", z.ZodTypeAny, {
420
- proposed: {
421
- number: number & {
422
- _branding: "BlockNumber";
423
- };
424
- hash: string;
425
- };
426
- checkpointed: {
427
- block: {
428
- number: number & {
429
- _branding: "BlockNumber";
430
- };
431
- hash: string;
432
- };
433
- checkpoint: {
434
- number: number & {
435
- _branding: "CheckpointNumber";
436
- };
437
- hash: string;
438
- };
439
- };
440
- proven: {
441
- block: {
442
- number: number & {
443
- _branding: "BlockNumber";
444
- };
445
- hash: string;
446
- };
447
- checkpoint: {
448
- number: number & {
449
- _branding: "CheckpointNumber";
450
- };
451
- hash: string;
452
- };
453
- };
454
- finalized: {
455
- block: {
456
- number: number & {
457
- _branding: "BlockNumber";
458
- };
459
- hash: string;
460
- };
461
- checkpoint: {
462
- number: number & {
463
- _branding: "CheckpointNumber";
464
- };
465
- hash: string;
466
- };
467
- };
468
- }, {
469
- proposed: {
470
- number: string | number | bigint;
471
- hash: string;
472
- };
473
- checkpointed: {
474
- block: {
475
- number: string | number | bigint;
476
- hash: string;
477
- };
478
- checkpoint: {
479
- number: string | number | bigint;
480
- hash: string;
481
- };
482
- };
483
- proven: {
484
- block: {
485
- number: string | number | bigint;
486
- hash: string;
487
- };
488
- checkpoint: {
489
- number: string | number | bigint;
490
- hash: string;
491
- };
492
- };
493
- finalized: {
494
- block: {
495
- number: string | number | bigint;
496
- hash: string;
497
- };
498
- checkpoint: {
499
- number: string | number | bigint;
500
- hash: string;
501
- };
502
- };
503
- }>;
357
+ }, z.core.$strip>;
358
+ }, z.core.$strip>;
359
+ }, z.core.$strip>;
504
360
  export declare enum L2BlockSourceEvents {
505
361
  L2PruneUnproven = "l2PruneUnproven",
506
362
  L2PruneUncheckpointed = "l2PruneUncheckpointed",
507
363
  L2BlockProven = "l2BlockProven",
508
364
  L2BlocksCheckpointed = "l2BlocksCheckpointed",
509
- InvalidAttestationsCheckpointDetected = "invalidCheckpointDetected"
365
+ InvalidAttestationsCheckpointDetected = "invalidCheckpointDetected",
366
+ CheckpointEquivocationDetected = "checkpointEquivocationDetected",
367
+ DescendentOfInvalidAttestationsCheckpointDetected = "descendentOfInvalidAttestationsCheckpointDetected",
368
+ L2BlockSourceUpdated = "l2BlockSourceUpdated"
510
369
  }
370
+ /**
371
+ * Aggregate event emitted once per committed archiver sync pass that mutated local state. Carries the chain tips
372
+ * before and after the pass, and the blocks added during it. Consumers compare `fromTips` and `toTips` to learn what
373
+ * moved; there is no separate `changed` section.
374
+ *
375
+ * This is an optimization signal that lets a block stream reconcile immediately on an archiver update rather than
376
+ * waiting for its next poll. Polling remains the correctness fallback, so a missed event only affects latency.
377
+ * `blocksAdded` are hydrated blocks already in hand from the sync pass, so a triggered sync that is caught up to
378
+ * `fromTips` can reuse them (and `toTips`) instead of re-reading the store.
379
+ */
380
+ export type L2BlockSourceUpdatedEvent = {
381
+ type: 'l2BlockSourceUpdated';
382
+ fromTips: L2Tips;
383
+ toTips: L2Tips;
384
+ blocksAdded: readonly L2Block[];
385
+ };
511
386
  export type L2BlockProvenEvent = {
512
387
  type: 'l2BlockProven';
513
388
  blockNumber: BlockNumber;
@@ -532,4 +407,30 @@ export type InvalidCheckpointDetectedEvent = {
532
407
  type: 'invalidCheckpointDetected';
533
408
  validationResult: ValidateCheckpointNegativeResult;
534
409
  };
535
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUNoQixLQUFLLFVBQVUsRUFDaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8s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
410
+ /**
411
+ * Emitted when a local proposed checkpoint is found to disagree with the L1-confirmed
412
+ * checkpoint at the same slot. The slot proposer signed both — equivocation.
413
+ */
414
+ export type CheckpointEquivocationDetectedEvent = {
415
+ type: 'checkpointEquivocationDetected';
416
+ slotNumber: SlotNumber;
417
+ checkpointNumber: CheckpointNumber;
418
+ l1ArchiveRoot: Fr;
419
+ proposedArchiveRoot: Fr;
420
+ };
421
+ /**
422
+ * Emitted when the archiver observes a checkpoint that builds on a previously-rejected
423
+ * ancestor (typically one with insufficient/invalid attestations). The descendant itself may
424
+ * have valid attestations, but it cannot be ingested because the chain it extends was
425
+ * skipped. The slasher uses this to slash the proposer of the descendant.
426
+ */
427
+ export type DescendentOfInvalidAttestationsCheckpointEvent = {
428
+ type: 'descendentOfInvalidAttestationsCheckpointDetected';
429
+ /** The descendant checkpoint being rejected. */
430
+ checkpoint: CheckpointInfo;
431
+ /** Archive root of the rejected ancestor this descendant builds on. */
432
+ ancestorArchiveRoot: Fr;
433
+ /** Checkpoint number of the rejected ancestor. */
434
+ ancestorCheckpointNumber: CheckpointNumber;
435
+ };
436
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDJfYmxvY2tfc291cmNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmxvY2svbDJfYmxvY2tfc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEVBRVgsZ0JBQWdCLEVBRWhCLEtBQUssV0FBVyxFQUVoQixLQUFLLFVBQVUsRUFFaEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDeEgsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25FLE9BQU8sS0FBSyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFbkYsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBK0IsS0FBSyx3QkFBd0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xHLE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEtBQUssRUFBRSxnQ0FBZ0MsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTdHLG1GQUFtRjtBQUNuRixNQUFNLE1BQU0sVUFBVSxHQUFHLHdCQUF3QixDQUFDO0FBRWxEOzs7Ozs7R0FNRztBQUNILE1BQU0sTUFBTSxXQUFXLEdBQ25CO0lBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQztJQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7SUFBQyxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQTtDQUFFLEdBQ2hFO0lBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQztJQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQTtDQUFFLENBQUM7QUFFbkQsZUFBTyxNQUFNLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FLMUQsQ0FBQztBQUVILGVBQU8sTUFBTSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBSzVELENBQUM7QUFFSCx5RkFBeUY7QUFDekYsTUFBTSxNQUFNLGVBQWUsR0FDdkI7SUFBRSxNQUFNLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxHQUM1QjtJQUFFLElBQUksRUFBRSxVQUFVLENBQUE7Q0FBRSxHQUNwQjtJQUFFLEdBQUcsRUFBRSxjQUFjLEdBQUcsUUFBUSxHQUFHLFdBQVcsQ0FBQTtDQUFFLENBQUM7QUFFckQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sTUFBTSxnQkFBZ0IsR0FDeEI7SUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUM7SUFBQyxLQUFLLEVBQUUsTUFBTSxDQUFBO0NBQUUsR0FDekM7SUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDO0lBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sQ0FBQTtDQUFFLEdBQzFEO0lBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQTtDQUFFLENBQUM7QUFFM0I7Ozs7R0FJRztBQUNILE1BQU0sTUFBTSx1QkFBdUIsR0FBRztJQUFFLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQTtDQUFFLEdBQUc7SUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFBO0NBQUUsR0FBRztJQUFFLEdBQUcsRUFBRSxVQUFVLENBQUE7Q0FBRSxDQUFDO0FBRWhILGVBQU8sTUFBTSxxQkFBcUIsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxPQUFPLENBSXBFLENBQUM7QUFFSCxlQUFPLE1BQU0sc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBSXRFLENBQUM7QUFFSCxlQUFPLE1BQU0sNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLENBSXBGLENBQUM7QUFFSDs7R0FFRztBQUNILE1BQU0sV0FBVyxhQUFhO0lBQzVCOzs7T0FHRztJQUNILGdCQUFnQixJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUV4Qzs7O09BR0c7SUFDSCxrQkFBa0IsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFMUM7OztPQUdHO0lBQ0gsY0FBYyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUV2Qzs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLEtBQUssRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNwRSxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFFckU7OztPQUdHO0lBQ0gsbUJBQW1CLElBQUksT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFakQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxLQUFLLEVBQUUsZUFBZSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVoRjs7OztPQUlHO0lBQ0gsY0FBYyxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBRXhFOzs7O09BSUc7SUFDSCxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsZUFBZSxHQUFHLE9BQU8sQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFFL0U7Ozs7T0FJRztJQUNILGtCQUFrQixDQUFDLEtBQUssRUFBRSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUV2RTs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUVsRTs7Ozs7Ozs7OztPQVVHO0lBQ0gsMEJBQTBCLENBQ3hCLE1BQU0sRUFBRSxNQUFNLEVBQ2QsT0FBTyxFQUFFLEVBQUUsRUFDWCxnQkFBZ0IsQ0FBQyxFQUFFLE1BQU0sR0FDeEIsT0FBTyxDQUFDLHVCQUF1QixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRWhEOzs7OztPQUtHO0lBQ0gscUJBQXFCLElBQUksT0FBTyxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUV6RDs7O09BR0c7SUFDSCxzQkFBc0IsSUFBSSxPQUFPLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTNEOzs7T0FHRztJQUNILGVBQWUsQ0FBQyxXQUFXLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUU1RDs7T0FFRztJQUNILFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFN0I7O09BRUc7SUFDSCxjQUFjLElBQUksT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFN0M7Ozs7T0FJRztJQUNILGdCQUFnQixDQUFDLElBQUksRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXJELDJDQUEyQztJQUMzQyxnQkFBZ0IsSUFBSSxPQUFPLENBQUM7UUFBRSxrQkFBa0IsRUFBRSxFQUFFLENBQUE7S0FBRSxDQUFDLENBQUM7SUFFeEQ7OztPQUdHO0lBQ0gsbUJBQW1CLElBQUksU0FBUyxDQUFDO0lBRWpDLGtDQUFrQztJQUNsQyxjQUFjLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU5Qzs7O09BR0c7SUFDSCxxQkFBcUIsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFMUM7OztPQUdHO0lBQ0gsK0JBQStCLElBQUksT0FBTyxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFFckU7Ozs7Ozs7O09BUUc7SUFDSCx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsRUFBRSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsc0JBQXNCLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFFeEcsb0JBQW9CO0lBQ3BCLGFBQWEsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFL0I7OztPQUdHO0lBQ0gsUUFBUSxDQUFDLEtBQUssRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUUxRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsS0FBSyxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVsRDs7O09BR0c7SUFDSCxZQUFZLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRWhFOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxLQUFLLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRXhEOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0NBQzlEO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsV0FBVztJQUMxQjs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ3pDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsc0JBQXNCO0lBQ3JDOzs7OztPQUtHO0lBQ0gscUJBQXFCLENBQUMsVUFBVSxFQUFFLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztDQUMzRTtBQUVEOzs7R0FHRztBQUNILE1BQU0sTUFBTSxlQUFlLEdBQUcsaUJBQWlCLENBQUM7SUFDOUMsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxvQkFBb0IsS0FBSyxJQUFJLENBQUM7SUFDNUUsQ0FBQyxtQkFBbUIsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLDBCQUEwQixLQUFLLElBQUksQ0FBQztJQUN4RixDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLGtCQUFrQixLQUFLLElBQUksQ0FBQztJQUN4RSxDQUFDLG1CQUFtQixDQUFDLHFDQUFxQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsOEJBQThCLEtBQUssSUFBSSxDQUFDO0lBQzVHLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxpQkFBaUIsS0FBSyxJQUFJLENBQUM7SUFDOUUsQ0FBQyxtQkFBbUIsQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLG1DQUFtQyxLQUFLLElBQUksQ0FBQztJQUMxRyxDQUFDLG1CQUFtQixDQUFDLGlEQUFpRCxDQUFDLEVBQUUsQ0FDdkUsSUFBSSxFQUFFLDhDQUE4QyxLQUNqRCxJQUFJLENBQUM7SUFDVixDQUFDLG1CQUFtQixDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUseUJBQXlCLEtBQUssSUFBSSxDQUFDO0NBQ3ZGLENBQUMsQ0FBQztBQUNILE1BQU0sV0FBVyx5QkFBMEIsU0FBUSxhQUFhO0lBQzlELE1BQU0sRUFBRSxlQUFlLENBQUM7Q0FDekI7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sTUFBTSxVQUFVLEdBQUcsVUFBVSxHQUFHLGNBQWMsR0FBRyxRQUFRLEdBQUcsV0FBVyxDQUFDO0FBRTlFLDRCQUE0QjtBQUM1QixNQUFNLE1BQU0sTUFBTSxHQUFHO0lBQ25CLFFBQVEsRUFBRSxTQUFTLENBQUM7SUFDcEIsWUFBWSxFQUFFLE9BQU8sQ0FBQztJQUN0QixNQUFNLEVBQUUsT0FBTyxDQUFDO0lBQ2hCLFNBQVMsRUFBRSxPQUFPLENBQUM7Q0FDcEIsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDO0FBRWpDLGVBQU8sTUFBTSw4QkFBOEIsSUFBa0MsQ0FBQztBQUU5RSw2Q0FBNkM7QUFDN0MsTUFBTSxNQUFNLFNBQVMsR0FBRztJQUFFLE1BQU0sRUFBRSxXQUFXLENBQUM7SUFBQyxJQUFJLEVBQUUsTUFBTSxDQUFBO0NBQUUsQ0FBQztBQUU5RCxNQUFNLE1BQU0sWUFBWSxHQUFHO0lBQUUsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0lBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQTtDQUFFLENBQUM7QUFFdEUsTUFBTSxNQUFNLE9BQU8sR0FBRztJQUFFLEtBQUssRUFBRSxTQUFTLENBQUM7SUFBQyxVQUFVLEVBQUUsWUFBWSxDQUFBO0NBQUUsQ0FBQztBQUVyRSw2QkFBNkI7QUFDN0Isd0JBQWdCLGFBQWEsQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxFQUFFLE1BQU0sR0FBRyxTQUFTLENBSzNFO0FBRUQsa0NBQWtDO0FBQ2xDLHdCQUFnQixrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLE1BQU0sR0FBRyxZQUFZLENBRXZGO0FBY0Qsb0hBQW9IO0FBQ3BILHdCQUFnQixXQUFXLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FPekQ7QUFpQkQsZUFBTyxNQUFNLFlBQVk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2lCQUt2QixDQUFDO0FBRUgsb0JBQVksbUJBQW1CO0lBQzdCLGVBQWUsb0JBQW9CO0lBQ25DLHFCQUFxQiwwQkFBMEI7SUFDL0MsYUFBYSxrQkFBa0I7SUFDL0Isb0JBQW9CLHlCQUF5QjtJQUM3QyxxQ0FBcUMsOEJBQThCO0lBQ25FLDhCQUE4QixtQ0FBbUM7SUFDakUsaURBQWlELHNEQUFzRDtJQUN2RyxvQkFBb0IseUJBQXlCO0NBQzlDO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxNQUFNLHlCQUF5QixHQUFHO0lBQ3RDLElBQUksRUFBRSxzQkFBc0IsQ0FBQztJQUM3QixRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixXQUFXLEVBQUUsU0FBUyxPQUFPLEVBQUUsQ0FBQztDQUNqQyxDQUFDO0FBRUYsTUFBTSxNQUFNLGtCQUFrQixHQUFHO0lBQy9CLElBQUksRUFBRSxlQUFlLENBQUM7SUFDdEIsV0FBVyxFQUFFLFdBQVcsQ0FBQztJQUN6QixVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3ZCLFdBQVcsRUFBRSxXQUFXLENBQUM7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sTUFBTSxvQkFBb0IsR0FBRztJQUNqQyxJQUFJLEVBQUUsaUJBQWlCLENBQUM7SUFDeEIsV0FBVyxFQUFFLFdBQVcsQ0FBQztJQUN6QixNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sTUFBTSwwQkFBMEIsR0FBRztJQUN2QyxJQUFJLEVBQUUsdUJBQXVCLENBQUM7SUFDOUIsVUFBVSxFQUFFLFVBQVUsQ0FBQztJQUN2QixNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sTUFBTSxpQkFBaUIsR0FBRztJQUM5QixJQUFJLEVBQUUsc0JBQXNCLENBQUM7SUFDN0IsVUFBVSxFQUFFLG1CQUFtQixDQUFDO0NBQ2pDLENBQUM7QUFFRixNQUFNLE1BQU0sOEJBQThCLEdBQUc7SUFDM0MsSUFBSSxFQUFFLDJCQUEyQixDQUFDO0lBQ2xDLGdCQUFnQixFQUFFLGdDQUFnQyxDQUFDO0NBQ3BELENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLE1BQU0sbUNBQW1DLEdBQUc7SUFDaEQsSUFBSSxFQUFFLGdDQUFnQyxDQUFDO0lBQ3ZDLFVBQVUsRUFBRSxVQUFVLENBQUM7SUFDdkIsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbkMsYUFBYSxFQUFFLEVBQUUsQ0FBQztJQUNsQixtQkFBbUIsRUFBRSxFQUFFLENBQUM7Q0FDekIsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxNQUFNLDhDQUE4QyxHQUFHO0lBQzNELElBQUksRUFBRSxtREFBbUQsQ0FBQztJQUMxRCxnREFBZ0Q7SUFDaEQsVUFBVSxFQUFFLGNBQWMsQ0FBQztJQUMzQix1RUFBdUU7SUFDdkUsbUJBQW1CLEVBQUUsRUFBRSxDQUFDO0lBQ3hCLGtEQUFrRDtJQUNsRCx3QkFBd0IsRUFBRSxnQkFBZ0IsQ0FBQztDQUM1QyxDQUFDIn0=