@aztec/p2p 0.0.1-commit.b655e406 → 0.0.1-commit.c7c42ec

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 (300) hide show
  1. package/dest/bootstrap/bootstrap.d.ts +1 -1
  2. package/dest/bootstrap/bootstrap.d.ts.map +1 -1
  3. package/dest/client/factory.d.ts +2 -2
  4. package/dest/client/factory.d.ts.map +1 -1
  5. package/dest/client/factory.js +2 -3
  6. package/dest/client/index.d.ts +1 -1
  7. package/dest/client/interface.d.ts +4 -2
  8. package/dest/client/interface.d.ts.map +1 -1
  9. package/dest/client/p2p_client.d.ts +9 -27
  10. package/dest/client/p2p_client.d.ts.map +1 -1
  11. package/dest/client/p2p_client.js +39 -32
  12. package/dest/config.d.ts +62 -59
  13. package/dest/config.d.ts.map +1 -1
  14. package/dest/config.js +19 -12
  15. package/dest/enr/generate-enr.d.ts +1 -1
  16. package/dest/enr/index.d.ts +1 -1
  17. package/dest/errors/attestation-pool.error.d.ts +7 -0
  18. package/dest/errors/attestation-pool.error.d.ts.map +1 -0
  19. package/dest/errors/attestation-pool.error.js +12 -0
  20. package/dest/errors/reqresp.error.d.ts +1 -1
  21. package/dest/errors/reqresp.error.d.ts.map +1 -1
  22. package/dest/index.d.ts +1 -1
  23. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +28 -6
  24. package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -1
  25. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts +1 -1
  26. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts.map +1 -1
  27. package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +35 -34
  28. package/dest/mem_pools/attestation_pool/index.d.ts +1 -1
  29. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts +13 -6
  30. package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts.map +1 -1
  31. package/dest/mem_pools/attestation_pool/kv_attestation_pool.js +41 -18
  32. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts +11 -6
  33. package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts.map +1 -1
  34. package/dest/mem_pools/attestation_pool/memory_attestation_pool.js +30 -8
  35. package/dest/mem_pools/attestation_pool/mocks.d.ts +226 -5
  36. package/dest/mem_pools/attestation_pool/mocks.d.ts.map +1 -1
  37. package/dest/mem_pools/attestation_pool/mocks.js +2 -2
  38. package/dest/mem_pools/index.d.ts +1 -1
  39. package/dest/mem_pools/instrumentation.d.ts +9 -1
  40. package/dest/mem_pools/instrumentation.d.ts.map +1 -1
  41. package/dest/mem_pools/instrumentation.js +38 -2
  42. package/dest/mem_pools/interface.d.ts +3 -4
  43. package/dest/mem_pools/interface.d.ts.map +1 -1
  44. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +30 -60
  45. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +1 -1
  46. package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +262 -324
  47. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts +18 -0
  48. package/dest/mem_pools/tx_pool/eviction/eviction_manager.d.ts.map +1 -0
  49. package/dest/mem_pools/tx_pool/eviction/eviction_manager.js +56 -0
  50. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts +83 -0
  51. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.d.ts.map +1 -0
  52. package/dest/mem_pools/tx_pool/eviction/eviction_strategy.js +5 -0
  53. package/dest/mem_pools/tx_pool/eviction/insufficient_fee_payer_balance_rule.d.ts +15 -0
  54. package/dest/mem_pools/tx_pool/eviction/insufficient_fee_payer_balance_rule.d.ts.map +1 -0
  55. package/dest/mem_pools/tx_pool/eviction/insufficient_fee_payer_balance_rule.js +88 -0
  56. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts +17 -0
  57. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.d.ts.map +1 -0
  58. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.js +84 -0
  59. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts +19 -0
  60. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.d.ts.map +1 -0
  61. package/dest/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.js +76 -0
  62. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts +26 -0
  63. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.d.ts.map +1 -0
  64. package/dest/mem_pools/tx_pool/eviction/low_priority_eviction_rule.js +84 -0
  65. package/dest/mem_pools/tx_pool/index.d.ts +1 -2
  66. package/dest/mem_pools/tx_pool/index.d.ts.map +1 -1
  67. package/dest/mem_pools/tx_pool/index.js +0 -1
  68. package/dest/mem_pools/tx_pool/priority.d.ts +5 -1
  69. package/dest/mem_pools/tx_pool/priority.d.ts.map +1 -1
  70. package/dest/mem_pools/tx_pool/priority.js +6 -1
  71. package/dest/mem_pools/tx_pool/tx_pool.d.ts +11 -6
  72. package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +1 -1
  73. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +1 -1
  74. package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +1 -1
  75. package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +30 -24
  76. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +4 -3
  77. package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -1
  78. package/dest/msg_validators/attestation_validator/attestation_validator.js +12 -12
  79. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts +20 -0
  80. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.d.ts.map +1 -0
  81. package/dest/msg_validators/attestation_validator/fisherman_attestation_validator.js +67 -0
  82. package/dest/msg_validators/attestation_validator/index.d.ts +2 -1
  83. package/dest/msg_validators/attestation_validator/index.d.ts.map +1 -1
  84. package/dest/msg_validators/attestation_validator/index.js +1 -0
  85. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts +1 -1
  86. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts.map +1 -1
  87. package/dest/msg_validators/block_proposal_validator/block_proposal_validator.js +22 -10
  88. package/dest/msg_validators/block_proposal_validator/index.d.ts +1 -1
  89. package/dest/msg_validators/index.d.ts +1 -1
  90. package/dest/msg_validators/msg_seen_validator/msg_seen_validator.d.ts +1 -1
  91. package/dest/msg_validators/msg_seen_validator/msg_seen_validator.d.ts.map +1 -1
  92. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts +1 -1
  93. package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts.map +1 -1
  94. package/dest/msg_validators/tx_validator/allowed_public_setup.d.ts +1 -1
  95. package/dest/msg_validators/tx_validator/archive_cache.d.ts +2 -2
  96. package/dest/msg_validators/tx_validator/archive_cache.d.ts.map +1 -1
  97. package/dest/msg_validators/tx_validator/block_header_validator.d.ts +2 -2
  98. package/dest/msg_validators/tx_validator/block_header_validator.d.ts.map +1 -1
  99. package/dest/msg_validators/tx_validator/data_validator.d.ts +1 -1
  100. package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -1
  101. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts +1 -1
  102. package/dest/msg_validators/tx_validator/double_spend_validator.d.ts.map +1 -1
  103. package/dest/msg_validators/tx_validator/factory.d.ts +4 -3
  104. package/dest/msg_validators/tx_validator/factory.d.ts.map +1 -1
  105. package/dest/msg_validators/tx_validator/factory.js +1 -1
  106. package/dest/msg_validators/tx_validator/gas_validator.d.ts +1 -1
  107. package/dest/msg_validators/tx_validator/gas_validator.d.ts.map +1 -1
  108. package/dest/msg_validators/tx_validator/index.d.ts +1 -1
  109. package/dest/msg_validators/tx_validator/metadata_validator.d.ts +2 -2
  110. package/dest/msg_validators/tx_validator/metadata_validator.d.ts.map +1 -1
  111. package/dest/msg_validators/tx_validator/phases_validator.d.ts +1 -1
  112. package/dest/msg_validators/tx_validator/phases_validator.d.ts.map +1 -1
  113. package/dest/msg_validators/tx_validator/phases_validator.js +3 -1
  114. package/dest/msg_validators/tx_validator/test_utils.d.ts +2 -2
  115. package/dest/msg_validators/tx_validator/test_utils.d.ts.map +1 -1
  116. package/dest/msg_validators/tx_validator/timestamp_validator.d.ts +3 -2
  117. package/dest/msg_validators/tx_validator/timestamp_validator.d.ts.map +1 -1
  118. package/dest/msg_validators/tx_validator/tx_permitted_validator.d.ts +1 -1
  119. package/dest/msg_validators/tx_validator/tx_permitted_validator.d.ts.map +1 -1
  120. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts +1 -1
  121. package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts.map +1 -1
  122. package/dest/services/data_store.d.ts +1 -1
  123. package/dest/services/data_store.d.ts.map +1 -1
  124. package/dest/services/discv5/discV5_service.d.ts +1 -1
  125. package/dest/services/discv5/discV5_service.d.ts.map +1 -1
  126. package/dest/services/dummy_service.d.ts +1 -1
  127. package/dest/services/dummy_service.d.ts.map +1 -1
  128. package/dest/services/encoding.d.ts +1 -1
  129. package/dest/services/encoding.d.ts.map +1 -1
  130. package/dest/services/encoding.js +1 -1
  131. package/dest/services/gossipsub/scoring.d.ts +1 -1
  132. package/dest/services/index.d.ts +1 -1
  133. package/dest/services/libp2p/instrumentation.d.ts +3 -1
  134. package/dest/services/libp2p/instrumentation.d.ts.map +1 -1
  135. package/dest/services/libp2p/instrumentation.js +9 -2
  136. package/dest/services/libp2p/libp2p_service.d.ts +14 -70
  137. package/dest/services/libp2p/libp2p_service.d.ts.map +1 -1
  138. package/dest/services/libp2p/libp2p_service.js +231 -66
  139. package/dest/services/peer-manager/interface.d.ts +1 -1
  140. package/dest/services/peer-manager/metrics.d.ts +8 -1
  141. package/dest/services/peer-manager/metrics.d.ts.map +1 -1
  142. package/dest/services/peer-manager/metrics.js +28 -0
  143. package/dest/services/peer-manager/peer_manager.d.ts +1 -32
  144. package/dest/services/peer-manager/peer_manager.d.ts.map +1 -1
  145. package/dest/services/peer-manager/peer_manager.js +6 -2
  146. package/dest/services/peer-manager/peer_scoring.d.ts +7 -2
  147. package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -1
  148. package/dest/services/peer-manager/peer_scoring.js +40 -2
  149. package/dest/services/reqresp/config.d.ts +1 -1
  150. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts +1 -1
  151. package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts.map +1 -1
  152. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts +1 -4
  153. package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts.map +1 -1
  154. package/dest/services/reqresp/index.d.ts +1 -1
  155. package/dest/services/reqresp/interface.d.ts +2 -2
  156. package/dest/services/reqresp/interface.d.ts.map +1 -1
  157. package/dest/services/reqresp/interface.js +1 -1
  158. package/dest/services/reqresp/metrics.d.ts +1 -1
  159. package/dest/services/reqresp/metrics.d.ts.map +1 -1
  160. package/dest/services/reqresp/protocols/auth.d.ts +2 -2
  161. package/dest/services/reqresp/protocols/auth.d.ts.map +1 -1
  162. package/dest/services/reqresp/protocols/auth.js +2 -2
  163. package/dest/services/reqresp/protocols/block.d.ts +1 -1
  164. package/dest/services/reqresp/protocols/block.d.ts.map +1 -1
  165. package/dest/services/reqresp/protocols/block.js +3 -2
  166. package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts +1 -1
  167. package/dest/services/reqresp/protocols/block_txs/bitvector.d.ts.map +1 -1
  168. package/dest/services/reqresp/protocols/block_txs/block_txs_handler.d.ts +1 -1
  169. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts +4 -6
  170. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.d.ts.map +1 -1
  171. package/dest/services/reqresp/protocols/block_txs/block_txs_reqresp.js +1 -1
  172. package/dest/services/reqresp/protocols/block_txs/index.d.ts +1 -1
  173. package/dest/services/reqresp/protocols/goodbye.d.ts +1 -1
  174. package/dest/services/reqresp/protocols/goodbye.d.ts.map +1 -1
  175. package/dest/services/reqresp/protocols/index.d.ts +1 -1
  176. package/dest/services/reqresp/protocols/ping.d.ts +1 -1
  177. package/dest/services/reqresp/protocols/status.d.ts +6 -5
  178. package/dest/services/reqresp/protocols/status.d.ts.map +1 -1
  179. package/dest/services/reqresp/protocols/status.js +4 -3
  180. package/dest/services/reqresp/protocols/tx.d.ts +2 -3
  181. package/dest/services/reqresp/protocols/tx.d.ts.map +1 -1
  182. package/dest/services/reqresp/rate-limiter/index.d.ts +1 -1
  183. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +2 -2
  184. package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -1
  185. package/dest/services/reqresp/rate-limiter/rate_limits.d.ts +1 -1
  186. package/dest/services/reqresp/reqresp.d.ts +1 -41
  187. package/dest/services/reqresp/reqresp.d.ts.map +1 -1
  188. package/dest/services/reqresp/status.d.ts +2 -2
  189. package/dest/services/reqresp/status.d.ts.map +1 -1
  190. package/dest/services/service.d.ts +1 -1
  191. package/dest/services/tx_collection/config.d.ts +1 -1
  192. package/dest/services/tx_collection/config.js +1 -1
  193. package/dest/services/tx_collection/fast_tx_collection.d.ts +4 -9
  194. package/dest/services/tx_collection/fast_tx_collection.d.ts.map +1 -1
  195. package/dest/services/tx_collection/index.d.ts +1 -1
  196. package/dest/services/tx_collection/instrumentation.d.ts +1 -1
  197. package/dest/services/tx_collection/instrumentation.d.ts.map +1 -1
  198. package/dest/services/tx_collection/slow_tx_collection.d.ts +6 -7
  199. package/dest/services/tx_collection/slow_tx_collection.d.ts.map +1 -1
  200. package/dest/services/tx_collection/slow_tx_collection.js +2 -1
  201. package/dest/services/tx_collection/tx_collection.d.ts +11 -11
  202. package/dest/services/tx_collection/tx_collection.d.ts.map +1 -1
  203. package/dest/services/tx_collection/tx_collection_sink.d.ts +3 -3
  204. package/dest/services/tx_collection/tx_collection_sink.d.ts.map +1 -1
  205. package/dest/services/tx_collection/tx_source.d.ts +1 -1
  206. package/dest/services/tx_collection/tx_source.d.ts.map +1 -1
  207. package/dest/services/tx_provider.d.ts +6 -4
  208. package/dest/services/tx_provider.d.ts.map +1 -1
  209. package/dest/services/tx_provider.js +11 -2
  210. package/dest/services/tx_provider_instrumentation.d.ts +5 -2
  211. package/dest/services/tx_provider_instrumentation.d.ts.map +1 -1
  212. package/dest/services/tx_provider_instrumentation.js +14 -1
  213. package/dest/test-helpers/generate-peer-id-private-keys.d.ts +1 -1
  214. package/dest/test-helpers/get-ports.d.ts +1 -1
  215. package/dest/test-helpers/get-ports.d.ts.map +1 -1
  216. package/dest/test-helpers/index.d.ts +1 -1
  217. package/dest/test-helpers/make-enrs.d.ts +1 -1
  218. package/dest/test-helpers/make-test-p2p-clients.d.ts +2 -2
  219. package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -1
  220. package/dest/test-helpers/mock-pubsub.d.ts +4 -4
  221. package/dest/test-helpers/mock-pubsub.d.ts.map +1 -1
  222. package/dest/test-helpers/mock-tx-helpers.d.ts +2 -2
  223. package/dest/test-helpers/mock-tx-helpers.d.ts.map +1 -1
  224. package/dest/test-helpers/mock-tx-helpers.js +1 -1
  225. package/dest/test-helpers/reqresp-nodes.d.ts +2 -2
  226. package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -1
  227. package/dest/testbench/p2p_client_testbench_worker.d.ts +1 -1
  228. package/dest/testbench/p2p_client_testbench_worker.js +12 -8
  229. package/dest/testbench/parse_log_file.d.ts +1 -1
  230. package/dest/testbench/testbench.d.ts +1 -1
  231. package/dest/testbench/worker_client_manager.d.ts +1 -1
  232. package/dest/testbench/worker_client_manager.d.ts.map +1 -1
  233. package/dest/types/index.d.ts +1 -1
  234. package/dest/util.d.ts +2 -1
  235. package/dest/util.d.ts.map +1 -1
  236. package/dest/util.js +11 -2
  237. package/dest/versioning.d.ts +1 -1
  238. package/package.json +19 -18
  239. package/src/client/factory.ts +5 -10
  240. package/src/client/interface.ts +4 -1
  241. package/src/client/p2p_client.ts +63 -60
  242. package/src/config.ts +28 -17
  243. package/src/errors/attestation-pool.error.ts +13 -0
  244. package/src/mem_pools/attestation_pool/attestation_pool.ts +29 -5
  245. package/src/mem_pools/attestation_pool/attestation_pool_test_suite.ts +47 -34
  246. package/src/mem_pools/attestation_pool/kv_attestation_pool.ts +66 -24
  247. package/src/mem_pools/attestation_pool/memory_attestation_pool.ts +50 -16
  248. package/src/mem_pools/attestation_pool/mocks.ts +3 -3
  249. package/src/mem_pools/instrumentation.ts +46 -0
  250. package/src/mem_pools/interface.ts +2 -4
  251. package/src/mem_pools/tx_pool/README.md +255 -0
  252. package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +314 -373
  253. package/src/mem_pools/tx_pool/eviction/eviction_manager.ts +71 -0
  254. package/src/mem_pools/tx_pool/eviction/eviction_strategy.ts +93 -0
  255. package/src/mem_pools/tx_pool/eviction/insufficient_fee_payer_balance_rule.ts +108 -0
  256. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_mining_rule.ts +104 -0
  257. package/src/mem_pools/tx_pool/eviction/invalid_txs_after_reorg_rule.ts +91 -0
  258. package/src/mem_pools/tx_pool/eviction/low_priority_eviction_rule.ts +106 -0
  259. package/src/mem_pools/tx_pool/index.ts +0 -1
  260. package/src/mem_pools/tx_pool/priority.ts +8 -1
  261. package/src/mem_pools/tx_pool/tx_pool.ts +11 -5
  262. package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +23 -17
  263. package/src/msg_validators/attestation_validator/attestation_validator.ts +14 -16
  264. package/src/msg_validators/attestation_validator/fisherman_attestation_validator.ts +91 -0
  265. package/src/msg_validators/attestation_validator/index.ts +1 -0
  266. package/src/msg_validators/block_proposal_validator/block_proposal_validator.ts +26 -10
  267. package/src/msg_validators/tx_validator/archive_cache.ts +1 -1
  268. package/src/msg_validators/tx_validator/block_header_validator.ts +1 -1
  269. package/src/msg_validators/tx_validator/factory.ts +3 -2
  270. package/src/msg_validators/tx_validator/metadata_validator.ts +1 -1
  271. package/src/msg_validators/tx_validator/phases_validator.ts +3 -1
  272. package/src/msg_validators/tx_validator/test_utils.ts +1 -1
  273. package/src/msg_validators/tx_validator/timestamp_validator.ts +2 -1
  274. package/src/services/encoding.ts +1 -1
  275. package/src/services/libp2p/instrumentation.ts +10 -1
  276. package/src/services/libp2p/libp2p_service.ts +263 -79
  277. package/src/services/peer-manager/metrics.ts +32 -0
  278. package/src/services/peer-manager/peer_manager.ts +6 -2
  279. package/src/services/peer-manager/peer_scoring.ts +46 -3
  280. package/src/services/reqresp/interface.ts +1 -1
  281. package/src/services/reqresp/protocols/auth.ts +2 -2
  282. package/src/services/reqresp/protocols/block.ts +3 -2
  283. package/src/services/reqresp/protocols/block_txs/block_txs_reqresp.ts +1 -1
  284. package/src/services/reqresp/protocols/status.ts +9 -8
  285. package/src/services/reqresp/protocols/tx.ts +1 -2
  286. package/src/services/tx_collection/config.ts +1 -1
  287. package/src/services/tx_collection/fast_tx_collection.ts +3 -2
  288. package/src/services/tx_collection/slow_tx_collection.ts +7 -6
  289. package/src/services/tx_collection/tx_collection.ts +10 -9
  290. package/src/services/tx_provider.ts +21 -5
  291. package/src/services/tx_provider_instrumentation.ts +19 -2
  292. package/src/test-helpers/mock-pubsub.ts +1 -1
  293. package/src/test-helpers/mock-tx-helpers.ts +1 -1
  294. package/src/test-helpers/reqresp-nodes.ts +1 -1
  295. package/src/testbench/p2p_client_testbench_worker.ts +10 -6
  296. package/src/util.ts +12 -2
  297. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts +0 -80
  298. package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts.map +0 -1
  299. package/dest/mem_pools/tx_pool/memory_tx_pool.js +0 -238
  300. package/src/mem_pools/tx_pool/memory_tx_pool.ts +0 -283
@@ -35,4 +35,4 @@ export declare class BootstrapNode implements P2PBootstrapApi {
35
35
  getEncodedEnr(): Promise<any>;
36
36
  getRoutingTable(): Promise<any>;
37
37
  }
38
- //# sourceMappingURL=bootstrap.d.ts.map
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vdHN0cmFwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYm9vdHN0cmFwL2Jvb3RzdHJhcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBc0IsS0FBSyxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUtoRCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFJbkQ7O0dBRUc7QUFDSCxxQkFBYSxhQUFjLFlBQVcsZUFBZTtJQUtqRCxPQUFPLENBQUMsS0FBSztJQUNiLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxNQUFNO0lBTmhCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBaUM7SUFDOUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFTO0lBRXhCLFlBQ1UsS0FBSyxFQUFFLGlCQUFpQixFQUN4QixTQUFTLEVBQUUsZUFBZSxFQUMxQixNQUFNLHlDQUFnQyxFQUM1QztJQUVKOzs7O09BSUc7SUFDVSxLQUFLLENBQUMsTUFBTSxFQUFFLGNBQWMsaUJBaUZ4QztJQUVEOzs7T0FHRztJQUNVLElBQUksa0JBS2hCO0lBRUQsT0FBTyxDQUFDLGlCQUFpQjtJQU16QixPQUFPLENBQUMsWUFBWTtJQU1wQjs7O09BR0c7SUFDSSxTQUFTLFdBR2Y7SUFFTSxNQUFNLFFBR1o7SUFFTSxhQUFhLGlCQUduQjtJQUVNLGVBQWUsaUJBR3JCO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/bootstrap/bootstrap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD;;GAEG;AACH,qBAAa,aAAc,YAAW,eAAe;IAKjD,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM;IANhB,OAAO,CAAC,IAAI,CAAC,CAAiC;IAC9C,OAAO,CAAC,MAAM,CAAC,CAAS;gBAGd,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,eAAe,EAC1B,MAAM,yCAAgC;IAGhD;;;;OAIG;IACU,KAAK,CAAC,MAAM,EAAE,cAAc;IAmFzC;;;OAGG;IACU,IAAI;IAOjB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,YAAY;IAMpB;;;OAGG;IACI,SAAS;IAKT,MAAM;IAKN,aAAa;IAKb,eAAe;CAIvB"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/bootstrap/bootstrap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD;;GAEG;AACH,qBAAa,aAAc,YAAW,eAAe;IAKjD,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM;IANhB,OAAO,CAAC,IAAI,CAAC,CAAiC;IAC9C,OAAO,CAAC,MAAM,CAAC,CAAS;IAExB,YACU,KAAK,EAAE,iBAAiB,EACxB,SAAS,EAAE,eAAe,EAC1B,MAAM,yCAAgC,EAC5C;IAEJ;;;;OAIG;IACU,KAAK,CAAC,MAAM,EAAE,cAAc,iBAiFxC;IAED;;;OAGG;IACU,IAAI,kBAKhB;IAED,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,YAAY;IAMpB;;;OAGG;IACI,SAAS,WAGf;IAEM,MAAM,QAGZ;IAEM,aAAa,iBAGnB;IAEM,eAAe,iBAGrB;CACF"}
@@ -18,7 +18,7 @@ import { type TxSource } from '../services/tx_collection/tx_source.js';
18
18
  export type P2PClientDeps<T extends P2PClientType> = {
19
19
  txPool?: TxPool;
20
20
  store?: AztecAsyncKVStore;
21
- attestationPool?: T extends P2PClientType.Full ? AttestationPool : undefined;
21
+ attestationPool?: AttestationPool;
22
22
  logger?: Logger;
23
23
  txCollectionNodeSources?: TxSource[];
24
24
  p2pServiceFactory?: (...args: Parameters<(typeof LibP2PService)['new']>) => Promise<LibP2PService<T>>;
@@ -28,4 +28,4 @@ export declare const P2P_ARCHIVE_STORE_NAME = "p2p-archive";
28
28
  export declare const P2P_PEER_STORE_NAME = "p2p-peers";
29
29
  export declare const P2P_ATTESTATION_STORE_NAME = "p2p-attestation";
30
30
  export declare function createP2PClient<T extends P2PClientType>(clientType: T, inputConfig: P2PConfig & DataStoreConfig & ChainConfig, archiver: L2BlockSource & ContractDataSource, proofVerifier: ClientProtocolCircuitVerifier, worldStateSynchronizer: WorldStateSynchronizer, epochCache: EpochCacheInterface, packageVersion: string, dateProvider?: DateProvider, telemetry?: TelemetryClient, deps?: P2PClientDeps<T>): Promise<P2PClient<T>>;
31
- //# sourceMappingURL=factory.d.ts.map
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakUsT0FBTyxLQUFLLEVBQUUsNkJBQTZCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFzQixNQUFNLHlCQUF5QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFHekYsT0FBTyxFQUFpQixLQUFLLE1BQU0sRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTNFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQTBCLE1BQU0sd0NBQXdDLENBQUM7QUFHL0YsTUFBTSxNQUFNLGFBQWEsQ0FBQyxDQUFDLFNBQVMsYUFBYSxJQUFJO0lBQ25ELE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNoQixLQUFLLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztJQUMxQixlQUFlLENBQUMsRUFBRSxlQUFlLENBQUM7SUFDbEMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2hCLHVCQUF1QixDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDckMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDLE9BQU8sYUFBYSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDdkcsQ0FBQztBQUVGLGVBQU8sTUFBTSxjQUFjLFFBQVEsQ0FBQztBQUNwQyxlQUFPLE1BQU0sc0JBQXNCLGdCQUFnQixDQUFDO0FBQ3BELGVBQU8sTUFBTSxtQkFBbUIsY0FBYyxDQUFDO0FBQy9DLGVBQU8sTUFBTSwwQkFBMEIsb0JBQW9CLENBQUM7QUFFNUQsd0JBQXNCLGVBQWUsQ0FBQyxDQUFDLFNBQVMsYUFBYSxFQUMzRCxVQUFVLEVBQUUsQ0FBQyxFQUNiLFdBQVcsRUFBRSxTQUFTLEdBQUcsZUFBZSxHQUFHLFdBQVcsRUFDdEQsUUFBUSxFQUFFLGFBQWEsR0FBRyxrQkFBa0IsRUFDNUMsYUFBYSxFQUFFLDZCQUE2QixFQUM1QyxzQkFBc0IsRUFBRSxzQkFBc0IsRUFDOUMsVUFBVSxFQUFFLG1CQUFtQixFQUMvQixjQUFjLEVBQUUsTUFBTSxFQUN0QixZQUFZLEdBQUUsWUFBaUMsRUFDL0MsU0FBUyxHQUFFLGVBQXNDLEVBQ2pELElBQUksR0FBRSxhQUFhLENBQUMsQ0FBQyxDQUFNLHlCQW9GNUIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC7G,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AAGzF,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,KAAK,QAAQ,EAA0B,MAAM,wCAAwC,CAAC;AAG/F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,aAAa,IAAI;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,eAAe,CAAC,EAAE,CAAC,SAAS,aAAa,CAAC,IAAI,GAAG,eAAe,GAAG,SAAS,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,CAAC;IACrC,iBAAiB,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;CACvG,CAAC;AAEF,eAAO,MAAM,cAAc,QAAQ,CAAC;AACpC,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AACpD,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,0BAA0B,oBAAoB,CAAC;AAE5D,wBAAsB,eAAe,CAAC,CAAC,SAAS,aAAa,EAC3D,UAAU,EAAE,CAAC,EACb,WAAW,EAAE,SAAS,GAAG,eAAe,GAAG,WAAW,EACtD,QAAQ,EAAE,aAAa,GAAG,kBAAkB,EAC5C,aAAa,EAAE,6BAA6B,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,UAAU,EAAE,mBAAmB,EAC/B,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,YAAiC,EAC/C,SAAS,GAAE,eAAsC,EACjD,IAAI,GAAE,aAAa,CAAC,CAAC,CAAM,yBAyF5B"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC7G,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AAGzF,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,KAAK,QAAQ,EAA0B,MAAM,wCAAwC,CAAC;AAG/F,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,aAAa,IAAI;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,CAAC;IACrC,iBAAiB,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;CACvG,CAAC;AAEF,eAAO,MAAM,cAAc,QAAQ,CAAC;AACpC,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AACpD,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,0BAA0B,oBAAoB,CAAC;AAE5D,wBAAsB,eAAe,CAAC,CAAC,SAAS,aAAa,EAC3D,UAAU,EAAE,CAAC,EACb,WAAW,EAAE,SAAS,GAAG,eAAe,GAAG,WAAW,EACtD,QAAQ,EAAE,aAAa,GAAG,kBAAkB,EAC5C,aAAa,EAAE,6BAA6B,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,UAAU,EAAE,mBAAmB,EAC/B,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,YAAiC,EAC/C,SAAS,GAAE,eAAsC,EACjD,IAAI,GAAE,aAAa,CAAC,CAAC,CAAM,yBAoF5B"}
@@ -1,7 +1,6 @@
1
1
  import { createLogger } from '@aztec/foundation/log';
2
2
  import { DateProvider } from '@aztec/foundation/timer';
3
3
  import { createStore } from '@aztec/kv-store/lmdb-v2';
4
- import { P2PClientType } from '@aztec/stdlib/p2p';
5
4
  import { getTelemetryClient } from '@aztec/telemetry-client';
6
5
  import { P2PClient } from '../client/p2p_client.js';
7
6
  import { KvAttestationPool } from '../mem_pools/attestation_pool/kv_attestation_pool.js';
@@ -31,10 +30,10 @@ export async function createP2PClient(clientType, inputConfig, archiver, proofVe
31
30
  const l1Constants = await archiver.getL1Constants();
32
31
  const mempools = {
33
32
  txPool: deps.txPool ?? new AztecKVTxPool(store, archive, worldStateSynchronizer, telemetry, {
34
- maxTxPoolSize: config.maxTxPoolSize,
33
+ maxPendingTxCount: config.maxPendingTxCount,
35
34
  archivedTxLimit: config.archivedTxLimit
36
35
  }),
37
- attestationPool: clientType === P2PClientType.Full ? deps.attestationPool ?? new KvAttestationPool(attestationStore, telemetry) : undefined
36
+ attestationPool: deps.attestationPool ?? new KvAttestationPool(attestationStore, telemetry)
38
37
  };
39
38
  const p2pService = await createP2PService(config, clientType, archiver, proofVerifier, worldStateSynchronizer, epochCache, store, peerStore, mempools, deps.p2pServiceFactory, packageVersion, logger.createChild('libp2p_service'), telemetry);
40
39
  const nodeSources = [
@@ -1,4 +1,4 @@
1
1
  export * from './p2p_client.js';
2
2
  export * from './factory.js';
3
3
  export * from './interface.js';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDIn0=
@@ -1,6 +1,6 @@
1
1
  import type { EthAddress, L2BlockId } from '@aztec/stdlib/block';
2
2
  import type { P2PApiFull } from '@aztec/stdlib/interfaces/server';
3
- import type { BlockProposal, P2PClientType } from '@aztec/stdlib/p2p';
3
+ import type { BlockAttestation, BlockProposal, P2PClientType } from '@aztec/stdlib/p2p';
4
4
  import type { Tx, TxHash } from '@aztec/stdlib/tx';
5
5
  import type { PeerId } from '@libp2p/interface';
6
6
  import type { ENR } from '@nethermindeth/enr';
@@ -40,6 +40,8 @@ export type P2P<T extends P2PClientType = P2PClientType.Full> = P2PApiFull<T> &
40
40
  * @param proposal - the block proposal
41
41
  */
42
42
  broadcastProposal(proposal: BlockProposal): Promise<void>;
43
+ /** Broadcasts block attestations to other peers. */
44
+ broadcastAttestations(attestations: BlockAttestation[]): Promise<void>;
43
45
  /**
44
46
  * Registers a callback from the validator client that determines how to behave when
45
47
  * foreign block proposals are received
@@ -152,4 +154,4 @@ export type P2P<T extends P2PClientType = P2PClientType.Full> = P2PApiFull<T> &
152
154
  /** If node running this P2P stack is validator, passes in validator address to P2P layer */
153
155
  registerThisValidatorAddresses(address: EthAddress[]): void;
154
156
  };
155
- //# sourceMappingURL=interface.d.ts.map
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L2ludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakUsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hGLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVuRCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxFQUNWLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDekIsNEJBQTRCLEVBQzdCLE1BQU0sa0NBQWtDLENBQUM7QUFDMUMsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RTs7R0FFRztBQUNILG9CQUFZLGNBQWM7SUFDeEIsSUFBSSxJQUFBO0lBQ0osUUFBUSxJQUFBO0lBQ1IsT0FBTyxJQUFBO0lBQ1AsT0FBTyxJQUFBO0NBQ1I7QUFFRDs7R0FFRztBQUNILE1BQU0sV0FBVyxZQUFZO0lBQzNCOztPQUVHO0lBQ0gsS0FBSyxFQUFFLGNBQWMsQ0FBQztJQUN0Qjs7T0FFRztJQUNILGVBQWUsRUFBRSxTQUFTLENBQUM7Q0FDNUI7QUFFRDs7SUFFSTtBQUNKLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxTQUFTLGFBQWEsR0FBRyxhQUFhLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRztJQUM5RTs7OztPQUlHO0lBQ0gsaUJBQWlCLENBQUMsUUFBUSxFQUFFLGFBQWEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFMUQsb0RBQW9EO0lBQ3BELHFCQUFxQixDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2RTs7Ozs7T0FLRztJQUdILDRCQUE0QixDQUFDLFFBQVEsRUFBRSx3QkFBd0IsR0FBRyxJQUFJLENBQUM7SUFFdkU7Ozs7O09BS0c7SUFDSCxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsWUFBWSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUUxRTs7O1FBR0k7SUFDSixNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFOUI7Ozs7UUFJSTtJQUNKLFlBQVksQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXpDOzs7O1FBSUk7SUFDSixTQUFTLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUU3Qzs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTdEOzs7O09BSUc7SUFDSCxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUV0RTs7OztPQUlHO0lBQ0gsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVyRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsWUFBWSxFQUFFLE1BQU0sR0FBRyxTQUFTLEdBQUcsT0FBTyxDQUFDLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVoRzs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTdEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsU0FBUyxHQUFHLE9BQU8sR0FBRyxTQUFTLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFFbEYsMkRBQTJEO0lBQzNELGlCQUFpQixJQUFJLHFCQUFxQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRS9DLHdEQUF3RDtJQUN4RCxpQkFBaUIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFckM7OztPQUdHO0lBQ0gscUJBQXFCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV6RDs7O09BR0c7SUFDSCxLQUFLLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXZCOzs7T0FHRztJQUNILElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFdEI7OztPQUdHO0lBQ0gsT0FBTyxJQUFJLE9BQU8sQ0FBQztJQUVuQjs7T0FFRztJQUNILFNBQVMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFbkM7O09BRUc7SUFDSCxNQUFNLElBQUksR0FBRyxHQUFHLFNBQVMsQ0FBQztJQUUxQiwrQkFBK0I7SUFDL0IsV0FBVyxJQUFJLElBQUksQ0FBQztJQUVwQixlQUFlLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFM0QsOEJBQThCO0lBQzlCLFFBQVEsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRW5DLHFCQUFxQjtJQUNyQixLQUFLLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXZCLHFCQUFxQixDQUNuQixXQUFXLEVBQUUsa0JBQWtCLEVBQy9CLE9BQU8sRUFBRSx5QkFBeUIsRUFDbEMsU0FBUyxDQUFDLEVBQUUsNEJBQTRCLENBQUMsa0JBQWtCLENBQUMsR0FDM0QsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWpCLHlCQUF5QixDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFNUYsNEZBQTRGO0lBQzVGLDhCQUE4QixDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUM7Q0FDN0QsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/client/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/client/interface.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import { DateProvider } from '@aztec/foundation/timer';
2
3
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
3
4
  import type { EthAddress, L2BlockSource, L2BlockStreamEvent, L2Tips } from '@aztec/stdlib/block';
@@ -55,13 +56,13 @@ export declare class P2PClient<T extends P2PClientType = P2PClientType.Full> ext
55
56
  * @param p2pService - The concrete instance of p2p networking to use.
56
57
  * @param log - A logger.
57
58
  */
58
- constructor(_clientType: T, store: AztecAsyncKVStore, l2BlockSource: L2BlockSource & ContractDataSource, mempools: MemPools<T>, p2pService: P2PService, txCollection: TxCollection, config?: Partial<P2PConfig>, _dateProvider?: DateProvider, telemetry?: TelemetryClient, log?: import("@aztec/foundation/log").Logger);
59
+ constructor(_clientType: T, store: AztecAsyncKVStore, l2BlockSource: L2BlockSource & ContractDataSource, mempools: MemPools, p2pService: P2PService, txCollection: TxCollection, config?: Partial<P2PConfig>, _dateProvider?: DateProvider, telemetry?: TelemetryClient, log?: import("@aztec/foundation/log").Logger);
59
60
  registerThisValidatorAddresses(addresses: EthAddress[]): void;
60
61
  clear(): Promise<void>;
61
62
  isP2PClient(): true;
62
63
  getTxProvider(): TxProvider;
63
64
  getPeers(includePending?: boolean): Promise<PeerInfo[]>;
64
- getL2BlockHash(number: number): Promise<string | undefined>;
65
+ getL2BlockHash(number: BlockNumber): Promise<string | undefined>;
65
66
  updateP2PConfig(config: Partial<P2PConfig>): Promise<void>;
66
67
  getL2Tips(): Promise<L2Tips>;
67
68
  handleBlockStreamEvent(event: L2BlockStreamEvent): Promise<void>;
@@ -81,7 +82,8 @@ export declare class P2PClient<T extends P2PClientType = P2PClientType.Full> ext
81
82
  /** Triggers a sync to the archiver. Used for testing. */
82
83
  sync(): Promise<void>;
83
84
  broadcastProposal(proposal: BlockProposal): Promise<void>;
84
- getAttestationsForSlot(slot: bigint, proposalId?: string): Promise<BlockAttestation[]>;
85
+ broadcastAttestations(attestations: BlockAttestation[]): Promise<void>;
86
+ getAttestationsForSlot(slot: SlotNumber, proposalId?: string): Promise<BlockAttestation[]>;
85
87
  addAttestations(attestations: BlockAttestation[]): Promise<void>;
86
88
  deleteAttestation(attestation: BlockAttestation): Promise<void>;
87
89
  registerBlockProposalHandler(handler: P2PBlockReceivedCallback): void;
@@ -161,13 +163,13 @@ export declare class P2PClient<T extends P2PClientType = P2PClientType.Full> ext
161
163
  * Public function to check the latest block number that the P2P client is synced to.
162
164
  * @returns Block number of latest L2 Block we've synced with.
163
165
  */
164
- getSyncedLatestBlockNum(): Promise<number>;
166
+ getSyncedLatestBlockNum(): Promise<BlockNumber>;
165
167
  /**
166
168
  * Public function to check the latest proven block number that the P2P client is synced to.
167
169
  * @returns Block number of latest proven L2 Block we've synced with.
168
170
  */
169
- getSyncedProvenBlockNum(): Promise<number>;
170
- getSyncedFinalizedBlockNum(): Promise<number>;
171
+ getSyncedProvenBlockNum(): Promise<BlockNumber>;
172
+ getSyncedFinalizedBlockNum(): Promise<BlockNumber>;
171
173
  /** Returns latest L2 slot for which we have seen an L2 block. */
172
174
  getSyncedLatestSlot(): Promise<bigint>;
173
175
  /**
@@ -175,30 +177,10 @@ export declare class P2PClient<T extends P2PClientType = P2PClientType.Full> ext
175
177
  * @returns Information about p2p client status: state & syncedToBlockNum.
176
178
  */
177
179
  getStatus(): Promise<P2PSyncState>;
178
- /**
179
- * Mark all txs from these blocks as mined.
180
- * @param blocks - A list of existing blocks with txs that the P2P client needs to ensure the tx pool is reconciled with.
181
- * @returns Empty promise.
182
- */
183
180
  private markTxsAsMinedFromBlocks;
184
- /**
185
- * Handles new mined blocks by marking the txs in them as mined.
186
- * @param blocks - A list of existing blocks with txs that the P2P client needs to ensure the tx pool is reconciled with.
187
- * @returns Empty promise.
188
- */
189
181
  private handleLatestL2Blocks;
190
- /** Request txs for unproven blocks so the prover node has more chances to get them. */
191
182
  private startCollectingMissingTxs;
192
- /**
193
- * Handles new finalized blocks by deleting the txs and attestations in them.
194
- * @param blocks - A list of finalized L2 blocks.
195
- * @returns Empty promise.
196
- */
197
183
  private handleFinalizedL2Blocks;
198
- /**
199
- * Updates the tx pool after a chain prune.
200
- * @param latestBlock - The block number the chain was pruned to.
201
- */
202
184
  private handlePruneL2Blocks;
203
185
  private startServiceIfSynched;
204
186
  /**
@@ -214,4 +196,4 @@ export declare class P2PClient<T extends P2PClientType = P2PClientType.Full> ext
214
196
  markTxsAsNonEvictable(txHashes: TxHash[]): Promise<void>;
215
197
  handleAuthRequestFromPeer(authRequest: AuthRequest, peerId: PeerId): Promise<StatusMessage>;
216
198
  }
217
- //# sourceMappingURL=p2p_client.d.ts.map
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwX2NsaWVudC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9wMnBfY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFzQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdGLE9BQU8sS0FBSyxFQUNWLFVBQVUsRUFHVixhQUFhLEVBRWIsa0JBQWtCLEVBQ2xCLE1BQU0sRUFDUCxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFakUsT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFXLE1BQU0saUNBQWlDLENBQUM7QUFDekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEtBQUssYUFBYSxFQUFFLEtBQUssYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0YsT0FBTyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFFTCxLQUFLLGVBQWUsRUFFcEIsVUFBVSxFQUdYLE1BQU0seUJBQXlCLENBQUM7QUFFakMsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFFLEtBQUssU0FBUyxFQUF1QixNQUFNLGNBQWMsQ0FBQztBQUVuRSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkUsT0FBTyxF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
@@ -1 +1 @@
1
- {"version":3,"file":"p2p_client.d.ts","sourceRoot":"","sources":["../../src/client/p2p_client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"p2p_client.d.ts","sourceRoot":"","sources":["../../src/client/p2p_client.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@ function _ts_decorate(decorators, target, key, desc) {
4
4
  else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  }
7
- import { INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
7
+ import { GENESIS_BLOCK_HEADER_HASH, INITIAL_L2_BLOCK_NUM } from '@aztec/constants';
8
+ import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
8
9
  import { createLogger } from '@aztec/foundation/log';
9
10
  import { DateProvider } from '@aztec/foundation/timer';
10
11
  import { getTimestampForSlot } from '@aztec/stdlib/epoch-helpers';
@@ -67,14 +68,14 @@ import { P2PClientState } from './interface.js';
67
68
  this.log.debug(`Received block proposal from ${sender.toString()}`);
68
69
  // TODO(palla/txs): Need to subtract validatorReexecuteDeadlineMs from this deadline (see ValidatorClient.getReexecutionDeadline)
69
70
  const constants = this.txCollection.getConstants();
70
- const nextSlotTimestampSeconds = Number(getTimestampForSlot(block.slotNumber.toBigInt() + 1n, constants));
71
+ const nextSlotTimestampSeconds = Number(getTimestampForSlot(SlotNumber(block.slotNumber + 1), constants));
71
72
  const deadline = new Date(nextSlotTimestampSeconds * 1000);
72
73
  const parentBlock = await this.l2BlockSource.getBlockHeaderByArchive(block.payload.header.lastArchiveRoot);
73
74
  if (!parentBlock) {
74
75
  this.log.debug(`Cannot collect txs for proposal as parent block not found`);
75
76
  return;
76
77
  }
77
- const blockNumber = parentBlock.getBlockNumber() + 1;
78
+ const blockNumber = BlockNumber(parentBlock.getBlockNumber() + 1);
78
79
  await this.txProvider.getTxsForBlockProposal(block, blockNumber, {
79
80
  pinnedPeer: sender,
80
81
  deadline
@@ -139,17 +140,18 @@ import { P2PClientState } from './interface.js';
139
140
  throw new Error(`Block hash for finalized block ${finalizedBlockNumber} not found in p2p client`);
140
141
  }
141
142
  }
143
+ const genesisHash = GENESIS_BLOCK_HEADER_HASH.toString();
142
144
  return {
143
145
  latest: {
144
- hash: latestBlockHash,
146
+ hash: latestBlockHash ?? genesisHash,
145
147
  number: latestBlockNumber
146
148
  },
147
149
  proven: {
148
- hash: provenBlockHash,
150
+ hash: provenBlockHash ?? genesisHash,
149
151
  number: provenBlockNumber
150
152
  },
151
153
  finalized: {
152
- hash: finalizedBlockHash,
154
+ hash: finalizedBlockHash ?? genesisHash,
153
155
  number: finalizedBlockNumber
154
156
  }
155
157
  };
@@ -158,16 +160,17 @@ import { P2PClientState } from './interface.js';
158
160
  this.log.debug(`Handling block stream event ${event.type}`);
159
161
  switch(event.type){
160
162
  case 'blocks-added':
161
- await this.handleLatestL2Blocks(event.blocks);
163
+ await this.handleLatestL2Blocks(event.blocks.map((b)=>b.block.toL2Block()));
162
164
  break;
163
165
  case 'chain-finalized':
164
166
  {
165
167
  // TODO (alexg): I think we can prune the block hashes map here
166
168
  await this.setBlockHash(event.block);
167
- const from = await this.getSyncedFinalizedBlockNum() + 1;
169
+ const from = BlockNumber(await this.getSyncedFinalizedBlockNum() + 1);
168
170
  const limit = event.block.number - from + 1;
169
171
  if (limit > 0) {
170
- await this.handleFinalizedL2Blocks(await this.l2BlockSource.getBlocks(from, limit));
172
+ const oldBlocks = await this.l2BlockSource.getBlocks(from, limit);
173
+ await this.handleFinalizedL2Blocks(oldBlocks.map((b)=>b.toL2Block()));
171
174
  }
172
175
  break;
173
176
  }
@@ -219,9 +222,9 @@ import { P2PClientState } from './interface.js';
219
222
  const syncedLatestBlock = await this.getSyncedLatestBlockNum() + 1;
220
223
  const syncedProvenBlock = await this.getSyncedProvenBlockNum() + 1;
221
224
  const syncedFinalizedBlock = await this.getSyncedFinalizedBlockNum() + 1;
222
- if (await this.txPool.isEmpty() && (this.attestationPool === undefined || await this.attestationPool?.isEmpty())) {
225
+ if (await this.txPool.isEmpty() && await this.attestationPool.isEmpty()) {
223
226
  // if mempools are empty, we don't care about syncing prior blocks
224
- this.initBlockStream(this.latestBlockNumberAtStart);
227
+ this.initBlockStream(BlockNumber(this.latestBlockNumberAtStart));
225
228
  this.setCurrentState(P2PClientState.RUNNING);
226
229
  this.syncPromise = Promise.resolve();
227
230
  await this.p2pService.start();
@@ -288,19 +291,23 @@ import { P2PClientState } from './interface.js';
288
291
  await this.blockStream.sync();
289
292
  }
290
293
  broadcastProposal(proposal) {
291
- this.log.verbose(`Broadcasting proposal for slot ${proposal.slotNumber.toNumber()} to peers`);
294
+ this.log.verbose(`Broadcasting proposal for slot ${proposal.slotNumber} to peers`);
292
295
  return this.p2pService.propagate(proposal);
293
296
  }
297
+ async broadcastAttestations(attestations) {
298
+ this.log.verbose(`Broadcasting ${attestations.length} attestations to peers`);
299
+ await Promise.all(attestations.map((att)=>this.p2pService.propagate(att)));
300
+ }
294
301
  async getAttestationsForSlot(slot, proposalId) {
295
- return await (proposalId ? this.attestationPool?.getAttestationsForSlotAndProposal(slot, proposalId) : this.attestationPool?.getAttestationsForSlot(slot)) ?? [];
302
+ return await (proposalId ? this.attestationPool.getAttestationsForSlotAndProposal(slot, proposalId) : this.attestationPool.getAttestationsForSlot(slot));
296
303
  }
297
304
  addAttestations(attestations) {
298
- return this.attestationPool?.addAttestations(attestations) ?? Promise.resolve();
305
+ return this.attestationPool.addAttestations(attestations);
299
306
  }
300
307
  deleteAttestation(attestation) {
301
- return this.attestationPool?.deleteAttestations([
308
+ return this.attestationPool.deleteAttestations([
302
309
  attestation
303
- ]) ?? Promise.resolve();
310
+ ]);
304
311
  }
305
312
  // REVIEW: https://github.com/AztecProtocol/aztec-packages/issues/7963
306
313
  // ^ This pattern is not my favorite (md)
@@ -497,16 +504,16 @@ import { P2PClientState } from './interface.js';
497
504
  * Public function to check the latest block number that the P2P client is synced to.
498
505
  * @returns Block number of latest L2 Block we've synced with.
499
506
  */ async getSyncedLatestBlockNum() {
500
- return await this.synchedLatestBlockNumber.getAsync() ?? INITIAL_L2_BLOCK_NUM - 1;
507
+ return await this.synchedLatestBlockNumber.getAsync() ?? BlockNumber(INITIAL_L2_BLOCK_NUM - 1);
501
508
  }
502
509
  /**
503
510
  * Public function to check the latest proven block number that the P2P client is synced to.
504
511
  * @returns Block number of latest proven L2 Block we've synced with.
505
512
  */ async getSyncedProvenBlockNum() {
506
- return await this.synchedProvenBlockNumber.getAsync() ?? INITIAL_L2_BLOCK_NUM - 1;
513
+ return await this.synchedProvenBlockNumber.getAsync() ?? BlockNumber(INITIAL_L2_BLOCK_NUM - 1);
507
514
  }
508
515
  async getSyncedFinalizedBlockNum() {
509
- return await this.synchedFinalizedBlockNumber.getAsync() ?? INITIAL_L2_BLOCK_NUM - 1;
516
+ return await this.synchedFinalizedBlockNumber.getAsync() ?? BlockNumber(INITIAL_L2_BLOCK_NUM - 1);
510
517
  }
511
518
  /** Returns latest L2 slot for which we have seen an L2 block. */ async getSyncedLatestSlot() {
512
519
  return await this.synchedLatestSlot.getAsync() ?? BigInt(0);
@@ -516,7 +523,7 @@ import { P2PClientState } from './interface.js';
516
523
  * @returns Information about p2p client status: state & syncedToBlockNum.
517
524
  */ async getStatus() {
518
525
  const blockNumber = await this.getSyncedLatestBlockNum();
519
- const blockHash = blockNumber === 0 ? '' : await this.l2BlockSource.getBlockHeader(blockNumber).then((header)=>header?.hash()).then((hash)=>hash?.toString());
526
+ const blockHash = blockNumber === 0 ? GENESIS_BLOCK_HEADER_HASH.toString() : await this.l2BlockSource.getBlockHeader(blockNumber).then((header)=>header?.hash()).then((hash)=>hash?.toString());
520
527
  return {
521
528
  state: this.currentState,
522
529
  syncedToL2Block: {
@@ -532,7 +539,7 @@ import { P2PClientState } from './interface.js';
532
539
  */ async markTxsAsMinedFromBlocks(blocks) {
533
540
  for (const block of blocks){
534
541
  const txHashes = block.body.txEffects.map((txEffect)=>txEffect.txHash);
535
- await this.txPool.markAsMined(txHashes, block.getBlockHeader());
542
+ await this.txPool.markAsMined(txHashes, block.header);
536
543
  }
537
544
  }
538
545
  /**
@@ -543,15 +550,16 @@ import { P2PClientState } from './interface.js';
543
550
  if (!blocks.length) {
544
551
  return Promise.resolve();
545
552
  }
546
- await this.markTxsAsMinedFromBlocks(blocks.map((b)=>b.block));
547
- await this.startCollectingMissingTxs(blocks.map((b)=>b.block));
548
- const lastBlock = blocks.at(-1).block;
553
+ await this.markTxsAsMinedFromBlocks(blocks);
554
+ await this.txPool.clearNonEvictableTxs();
555
+ await this.startCollectingMissingTxs(blocks);
556
+ const lastBlock = blocks.at(-1);
549
557
  await Promise.all(blocks.map(async (block)=>this.setBlockHash({
550
- number: block.block.number,
551
- hash: await block.block.hash().then((h)=>h.toString())
558
+ number: block.number,
559
+ hash: await block.hash().then((h)=>h.toString())
552
560
  })));
553
561
  await this.synchedLatestBlockNumber.set(lastBlock.number);
554
- await this.synchedLatestSlot.set(lastBlock.header.getSlot());
562
+ await this.synchedLatestSlot.set(BigInt(lastBlock.header.getSlot()));
555
563
  this.log.verbose(`Synched to latest block ${lastBlock.number}`);
556
564
  await this.startServiceIfSynched();
557
565
  }
@@ -598,7 +606,7 @@ import { P2PClientState } from './interface.js';
598
606
  permanently: true
599
607
  });
600
608
  await this.txPool.cleanupDeletedMinedTxs(lastBlockNum);
601
- await this.attestationPool?.deleteAttestationsOlderThan(lastBlockSlot);
609
+ await this.attestationPool.deleteAttestationsOlderThan(lastBlockSlot);
602
610
  await this.synchedFinalizedBlockNumber.set(lastBlockNum);
603
611
  this.log.debug(`Synched to finalized block ${lastBlockNum} at slot ${lastBlockSlot}`);
604
612
  await this.startServiceIfSynched();
@@ -640,8 +648,7 @@ import { P2PClientState } from './interface.js';
640
648
  this.log.info(`Deleting ${minedTxsFromReorg.length} mined txs from reorg`);
641
649
  await this.txPool.deleteTxs(minedTxsFromReorg);
642
650
  } else {
643
- this.log.info(`Moving ${minedTxsFromReorg.length} mined txs from reorg back to pending`);
644
- await this.txPool.markMinedAsPending(minedTxsFromReorg);
651
+ await this.txPool.markMinedAsPending(minedTxsFromReorg, latestBlock);
645
652
  }
646
653
  await this.synchedLatestBlockNumber.set(latestBlock);
647
654
  // no need to update block hashes, as they will be updated as new blocks are added
@@ -689,8 +696,8 @@ import { P2PClientState } from './interface.js';
689
696
  }
690
697
  _ts_decorate([
691
698
  trackSpan('p2pClient.broadcastProposal', async (proposal)=>({
692
- [Attributes.SLOT_NUMBER]: proposal.slotNumber.toNumber(),
699
+ [Attributes.SLOT_NUMBER]: proposal.slotNumber,
693
700
  [Attributes.BLOCK_ARCHIVE]: proposal.archive.toString(),
694
- [Attributes.P2P_ID]: (await proposal.p2pMessageIdentifier()).toString()
701
+ [Attributes.P2P_ID]: (await proposal.p2pMessageLoggingIdentifier()).toString()
695
702
  }))
696
703
  ], P2PClient.prototype, "broadcastProposal", null);
package/dest/config.d.ts CHANGED
@@ -81,10 +81,8 @@ export interface P2PConfig extends P2PReqRespConfig, ChainConfig, TxCollectionCo
81
81
  p2pStoreMapSizeKb?: number;
82
82
  /** Which calls are allowed in the public setup phase of a tx. */
83
83
  txPublicSetupAllowList: AllowedElement[];
84
- /** The maximum cumulative tx size (in bytes) of pending txs before evicting lower priority txs. */
85
- maxTxPoolSize: number;
86
- /** If the pool is full, it will still accept a few more txs until it reached maxTxPoolOverspillFactor * maxTxPoolSize. Then it will evict */
87
- txPoolOverflowFactor: number;
84
+ /** The maximum number of pending txs before evicting lower priority txs. */
85
+ maxPendingTxCount: number;
88
86
  /** The node's seen message ID cache size */
89
87
  seenMessageCacheSize: number;
90
88
  /** True to disable the status handshake on peer connected. */
@@ -103,6 +101,10 @@ export interface P2PConfig extends P2PReqRespConfig, ChainConfig, TxCollectionCo
103
101
  dropTransactionsProbability: number;
104
102
  /** Whether to delete transactions from the pool after a reorg instead of moving them back to pending. */
105
103
  txPoolDeleteTxsAfterReorg: boolean;
104
+ /** Alters the format of p2p messages to include things like broadcast timestamp FOR TESTING ONLY */
105
+ debugP2PInstrumentMessages: boolean;
106
+ /** Whether to run in fisherman mode: validates all proposals and attestations but does not broadcast attestations or participate in consensus */
107
+ fishermanMode: boolean;
106
108
  }
107
109
  export declare const DEFAULT_P2P_PORT = 40400;
108
110
  export declare const p2pConfigMappings: ConfigMappingsType<P2PConfig>;
@@ -117,74 +119,75 @@ export declare function getP2PDefaultConfig(): P2PConfig;
117
119
  */
118
120
  export type BootnodeConfig = Pick<P2PConfig, 'p2pIp' | 'p2pPort' | 'p2pBroadcastPort' | 'peerIdPrivateKey' | 'peerIdPrivateKeyPath' | 'bootstrapNodes' | 'listenAddress' | 'queryForIp'> & Required<Pick<P2PConfig, 'p2pIp' | 'p2pPort'>> & Pick<DataStoreConfig, 'dataDirectory' | 'dataStoreMapSizeKb'> & Pick<ChainConfig, 'l1ChainId'>;
119
121
  export declare const bootnodeConfigMappings: ConfigMappingsType<Pick<{
120
- l1ChainId: unknown;
121
- rollupVersion: unknown;
122
- l1Contracts: unknown;
123
- dataDirectory: unknown;
124
- dataStoreMapSizeKb: unknown;
125
- overallRequestTimeoutMs: unknown;
126
- individualRequestTimeoutMs: unknown;
127
- p2pOptimisticNegotiation: unknown;
128
- dialTimeoutMs: unknown;
129
- txCollectionFastNodesTimeoutBeforeReqRespMs: unknown;
130
- txCollectionSlowNodesIntervalMs: unknown;
131
- txCollectionSlowReqRespIntervalMs: unknown;
132
- txCollectionSlowReqRespTimeoutMs: unknown;
133
- txCollectionReconcileIntervalMs: unknown;
134
- txCollectionDisableSlowDuringFastRequests: unknown;
135
- txCollectionFastNodeIntervalMs: unknown;
136
- txCollectionNodeRpcUrls: unknown;
137
- txCollectionFastMaxParallelRequestsPerNode: unknown;
138
- txCollectionNodeRpcMaxBatchSize: unknown;
139
- p2pEnabled: unknown;
122
+ archivedTxLimit: unknown;
140
123
  blockCheckIntervalMS: unknown;
141
124
  blockRequestBatchSize: unknown;
142
- debugDisableColocationPenalty: unknown;
143
- peerCheckIntervalMS: unknown;
144
- l2QueueSize: unknown;
145
- p2pPort: unknown;
146
- p2pBroadcastPort: unknown;
147
- p2pIp: unknown;
148
- listenAddress: unknown;
149
- peerIdPrivateKey: unknown;
150
- peerIdPrivateKeyPath: unknown;
151
- bootstrapNodes: unknown;
152
125
  bootstrapNodeEnrVersionCheck: unknown;
126
+ bootstrapNodes: unknown;
153
127
  bootstrapNodesAsFullPeers: unknown;
154
- maxPeerCount: unknown;
155
- queryForIp: unknown;
156
- gossipsubInterval: unknown;
128
+ dataDirectory: unknown;
129
+ dataStoreMapSizeKb: unknown;
130
+ debugDisableColocationPenalty: unknown;
131
+ debugP2PInstrumentMessages: unknown;
132
+ dialTimeoutMs: unknown;
133
+ disableTransactions: unknown;
134
+ doubleSpendSeverePeerPenaltyWindow: unknown;
135
+ dropTransactions: unknown;
136
+ dropTransactionsProbability: unknown;
137
+ fishermanMode: unknown;
157
138
  gossipsubD: unknown;
158
- gossipsubDlo: unknown;
159
- gossipsubDhi: unknown;
160
139
  gossipsubDLazy: unknown;
140
+ gossipsubDhi: unknown;
141
+ gossipsubDlo: unknown;
161
142
  gossipsubFloodPublish: unknown;
162
- gossipsubMcacheLength: unknown;
143
+ gossipsubInterval: unknown;
163
144
  gossipsubMcacheGossip: unknown;
145
+ gossipsubMcacheLength: unknown;
164
146
  gossipsubSeenTTL: unknown;
165
- doubleSpendSeverePeerPenaltyWindow: unknown;
166
- gossipsubTxTopicWeight: unknown;
167
- gossipsubTxInvalidMessageDeliveriesWeight: unknown;
168
147
  gossipsubTxInvalidMessageDeliveriesDecay: unknown;
169
- peerPenaltyValues: unknown;
170
- archivedTxLimit: unknown;
171
- trustedPeers: unknown;
172
- privatePeers: unknown;
173
- preferredPeers: unknown;
174
- p2pStoreMapSizeKb: unknown;
175
- txPublicSetupAllowList: unknown;
176
- maxTxPoolSize: unknown;
177
- txPoolOverflowFactor: unknown;
178
- seenMessageCacheSize: unknown;
179
- p2pDisableStatusHandshake: unknown;
148
+ gossipsubTxInvalidMessageDeliveriesWeight: unknown;
149
+ gossipsubTxTopicWeight: unknown;
150
+ individualRequestTimeoutMs: unknown;
151
+ l1ChainId: unknown;
152
+ l1Contracts: unknown;
153
+ l2QueueSize: unknown;
154
+ listenAddress: unknown;
155
+ maxPeerCount: unknown;
156
+ maxPendingTxCount: unknown;
157
+ overallRequestTimeoutMs: unknown;
180
158
  p2pAllowOnlyValidators: unknown;
159
+ p2pBroadcastPort: unknown;
160
+ p2pDisableStatusHandshake: unknown;
181
161
  p2pDiscoveryDisabled: unknown;
162
+ p2pEnabled: unknown;
163
+ p2pIp: unknown;
182
164
  p2pMaxFailedAuthAttemptsAllowed: unknown;
183
- disableTransactions: unknown;
184
- dropTransactions: unknown;
185
- dropTransactionsProbability: unknown;
165
+ p2pOptimisticNegotiation: unknown;
166
+ p2pPort: unknown;
167
+ p2pStoreMapSizeKb: unknown;
168
+ peerCheckIntervalMS: unknown;
169
+ peerIdPrivateKey: unknown;
170
+ peerIdPrivateKeyPath: unknown;
171
+ peerPenaltyValues: unknown;
172
+ preferredPeers: unknown;
173
+ privatePeers: unknown;
174
+ queryForIp: unknown;
175
+ rollupVersion: unknown;
176
+ seenMessageCacheSize: unknown;
177
+ trustedPeers: unknown;
178
+ txCollectionDisableSlowDuringFastRequests: unknown;
179
+ txCollectionFastMaxParallelRequestsPerNode: unknown;
180
+ txCollectionFastNodeIntervalMs: unknown;
181
+ txCollectionFastNodesTimeoutBeforeReqRespMs: unknown;
182
+ txCollectionNodeRpcMaxBatchSize: unknown;
183
+ txCollectionNodeRpcUrls: unknown;
184
+ txCollectionReconcileIntervalMs: unknown;
185
+ txCollectionSlowNodesIntervalMs: unknown;
186
+ txCollectionSlowReqRespIntervalMs: unknown;
187
+ txCollectionSlowReqRespTimeoutMs: unknown;
186
188
  txPoolDeleteTxsAfterReorg: unknown;
187
- }, "p2pPort" | "p2pBroadcastPort" | "p2pIp" | "listenAddress" | "peerIdPrivateKey" | "peerIdPrivateKeyPath" | "bootstrapNodes" | "queryForIp" | "l1ChainId" | "dataDirectory" | "dataStoreMapSizeKb">>;
189
+ txPublicSetupAllowList: unknown;
190
+ }, "bootstrapNodes" | "dataDirectory" | "dataStoreMapSizeKb" | "l1ChainId" | "listenAddress" | "p2pBroadcastPort" | "p2pIp" | "p2pPort" | "peerIdPrivateKey" | "peerIdPrivateKeyPath" | "queryForIp">>;
188
191
  /**
189
192
  * Parses a string to a list of allowed elements.
190
193
  * Each encoded is expected to be of one of the following formats
@@ -197,4 +200,4 @@ export declare const bootnodeConfigMappings: ConfigMappingsType<Pick<{
197
200
  * @returns A list of allowed elements
198
201
  */
199
202
  export declare function parseAllowList(value: string): AllowedElement[];
200
- //# sourceMappingURL=config.d.ts.map
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLGtCQUFrQixFQUN2QixXQUFXLEVBUVosTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXNCLE1BQU0sd0JBQXdCLENBQUM7QUFHbEYsT0FBTyxFQUFFLEtBQUssY0FBYyxFQUFFLEtBQUssV0FBVyxFQUF1QixNQUFNLHNCQUFzQixDQUFDO0FBRWxHLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUE0QixNQUFNLDhCQUE4QixDQUFDO0FBQy9GLE9BQU8sRUFBRSxLQUFLLGtCQUFrQixFQUE4QixNQUFNLG9DQUFvQyxDQUFDO0FBRXpHOztHQUVHO0FBQ0gsTUFBTSxXQUFXLFNBQVUsU0FBUSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsa0JBQWtCO0lBQ2xGLG9FQUFvRTtJQUNwRSxVQUFVLEVBQUUsT0FBTyxDQUFDO0lBRXBCLHlEQUF5RDtJQUN6RCxvQkFBb0IsRUFBRSxNQUFNLENBQUM7SUFFN0IsdURBQXVEO0lBQ3ZELHFCQUFxQixFQUFFLE1BQU0sQ0FBQztJQUU5QixvRUFBb0U7SUFDcEUsNkJBQTZCLEVBQUUsT0FBTyxDQUFDO0lBRXZDLHFEQUFxRDtJQUNyRCxtQkFBbUIsRUFBRSxNQUFNLENBQUM7SUFFNUIsMkNBQTJDO0lBQzNDLFdBQVcsRUFBRSxNQUFNLENBQUM7SUFFcEIsb0NBQW9DO0lBQ3BDLE9BQU8sRUFBRSxNQUFNLENBQUM7SUFFaEIsNkVBQTZFO0lBQzdFLGdCQUFnQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTFCLDBDQUEwQztJQUMxQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFZiwwQkFBMEI7SUFDMUIsYUFBYSxFQUFFLE1BQU0sQ0FBQztJQUV0Qiw2RUFBNkU7SUFDN0UsZ0JBQWdCLENBQUMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFdkMsNElBQTRJO0lBQzVJLG9CQUFvQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRTlCLCtDQUErQztJQUMvQyxjQUFjLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFFekIsc0VBQXNFO0lBQ3RFLDRCQUE0QixFQUFFLE9BQU8sQ0FBQztJQUV0QyxpR0FBaUc7SUFDakcseUJBQXlCLEVBQUUsT0FBTyxDQUFDO0lBRW5DLDhHQUE4RztJQUM5RyxZQUFZLEVBQUUsTUFBTSxDQUFDO0lBRXJCLCtIQUErSDtJQUMvSCxVQUFVLEVBQUUsT0FBTyxDQUFDO0lBRXBCLDRFQUE0RTtJQUM1RSxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFFMUIsa0RBQWtEO0lBQ2xELFVBQVUsRUFBRSxNQUFNLENBQUM7SUFFbkIsb0RBQW9EO0lBQ3BELFlBQVksRUFBRSxNQUFNLENBQUM7SUFFckIsb0RBQW9EO0lBQ3BELFlBQVksRUFBRSxNQUFNLENBQUM7SUFFckIsc0RBQXNEO0lBQ3RELGNBQWMsRUFBRSxNQUFNLENBQUM7SUFFdkIscUVBQXFFO0lBQ3JFLHFCQUFxQixFQUFFLE9BQU8sQ0FBQztJQUUvQixzRUFBc0U7SUFDdEUscUJBQXFCLEVBQUUsTUFBTSxDQUFDO0lBRTlCLGlGQUFpRjtJQUNqRixxQkFBcUIsRUFBRSxNQUFNLENBQUM7SUFFOUIsMkRBQTJEO0lBQzNELGdCQUFnQixFQUFFLE1BQU0sQ0FBQztJQUV6QixnSEFBZ0g7SUFDaEgsa0NBQWtDLEVBQUUsTUFBTSxDQUFDO0lBRTNDLGdLQUFnSztJQUNoSyxzQkFBc0IsRUFBRSxNQUFNLENBQUM7SUFFL0IsaUZBQWlGO0lBQ2pGLHlDQUF5QyxFQUFFLE1BQU0sQ0FBQztJQUVsRCwyR0FBMkc7SUFDM0csd0NBQXdDLEVBQUUsTUFBTSxDQUFDO0lBRWpELG9JQUFvSTtJQUNwSSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUU1QixzSUFBc0k7SUFDdEksZUFBZSxFQUFFLE1BQU0sQ0FBQztJQUV4QiwrQkFBK0I7SUFDL0IsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBRXZCLCtCQUErQjtJQUMvQixZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFFdkIsaUNBQWlDO0lBQ2pDLGNBQWMsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUV6QixnR0FBZ0c7SUFDaEcsaUJBQWlCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFFM0IsaUVBQWlFO0lBQ2pFLHNCQUFzQixFQUFFLGNBQWMsRUFBRSxDQUFDO0lBRXpDLDRFQUE0RTtJQUM1RSxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFFMUIsNENBQTRDO0lBQzVDLG9CQUFvQixFQUFFLE1BQU0sQ0FBQztJQUU3Qiw4REFBOEQ7SUFDOUQseUJBQXlCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFFcEMsZ0RBQWdEO0lBQ2hELHNCQUFzQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBRWpDLGlEQUFpRDtJQUNqRCxvQkFBb0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUMvQixpRkFBaUY7SUFDakYsK0JBQStCLEVBQUUsTUFBTSxDQUFDO0lBRXhDLDJIQUEySDtJQUMzSCxtQkFBbUIsRUFBRSxPQUFPLENBQUM7SUFFN0IsMkVBQTJFO0lBQzNFLGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUUxQixtRkFBbUY7SUFDbkYsMkJBQTJCLEVBQUUsTUFBTSxDQUFDO0lBRXBDLHlHQUF5RztJQUN6Ryx5QkFBeUIsRUFBRSxPQUFPLENBQUM7SUFFbkMsb0dBQW9HO0lBQ3BHLDBCQUEwQixFQUFFLE9BQU8sQ0FBQztJQUVwQyxpSkFBaUo7SUFDakosYUFBYSxFQUFFLE9BQU8sQ0FBQztDQUN4QjtBQUVELGVBQU8sTUFBTSxnQkFBZ0IsUUFBUSxDQUFDO0FBRXRDLGVBQU8sTUFBTSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxTQUFTLENBdVEzRCxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsd0JBQWdCLG1CQUFtQixJQUFJLFNBQVMsQ0FFL0M7QUFFRCx3QkFBZ0IsbUJBQW1CLElBQUksU0FBUyxDQUUvQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQy9CLFNBQVMsRUFDUCxPQUFPLEdBQ1AsU0FBUyxHQUNULGtCQUFrQixHQUNsQixrQkFBa0IsR0FDbEIsc0JBQXNCLEdBQ3RCLGdCQUFnQixHQUNoQixlQUFlLEdBQ2YsWUFBWSxDQUNmLEdBQ0MsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxHQUFHLFNBQVMsQ0FBQyxDQUFDLEdBQzlDLElBQUksQ0FBQyxlQUFlLEVBQUUsZUFBZSxHQUFHLG9CQUFvQixDQUFDLEdBQzdELElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFnQmpDLGVBQU8sTUFBTSxzQkFBc0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztzTUFHbEMsQ0FBQztBQUVGOzs7Ozs7Ozs7O0dBVUc7QUFDSCx3QkFBZ0IsY0FBYyxDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsY0FBYyxFQUFFLENBcUM5RCJ9