@feelyourprotocol/common 8141.0.0

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 (115) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +409 -0
  3. package/dist/cjs/chains.d.ts +6 -0
  4. package/dist/cjs/chains.d.ts.map +1 -0
  5. package/dist/cjs/chains.js +637 -0
  6. package/dist/cjs/chains.js.map +1 -0
  7. package/dist/cjs/common.d.ts +318 -0
  8. package/dist/cjs/common.d.ts.map +1 -0
  9. package/dist/cjs/common.js +789 -0
  10. package/dist/cjs/common.js.map +1 -0
  11. package/dist/cjs/constructors.d.ts +27 -0
  12. package/dist/cjs/constructors.d.ts.map +1 -0
  13. package/dist/cjs/constructors.js +53 -0
  14. package/dist/cjs/constructors.js.map +1 -0
  15. package/dist/cjs/crc.d.ts +8 -0
  16. package/dist/cjs/crc.d.ts.map +1 -0
  17. package/dist/cjs/crc.js +63 -0
  18. package/dist/cjs/crc.js.map +1 -0
  19. package/dist/cjs/eips.d.ts +3 -0
  20. package/dist/cjs/eips.d.ts.map +1 -0
  21. package/dist/cjs/eips.js +589 -0
  22. package/dist/cjs/eips.js.map +1 -0
  23. package/dist/cjs/enums.d.ts +65 -0
  24. package/dist/cjs/enums.d.ts.map +1 -0
  25. package/dist/cjs/enums.js +80 -0
  26. package/dist/cjs/enums.js.map +1 -0
  27. package/dist/cjs/gethGenesis.d.ts +145 -0
  28. package/dist/cjs/gethGenesis.d.ts.map +1 -0
  29. package/dist/cjs/gethGenesis.js +26 -0
  30. package/dist/cjs/gethGenesis.js.map +1 -0
  31. package/dist/cjs/hardforks.d.ts +3 -0
  32. package/dist/cjs/hardforks.d.ts.map +1 -0
  33. package/dist/cjs/hardforks.js +207 -0
  34. package/dist/cjs/hardforks.js.map +1 -0
  35. package/dist/cjs/index.d.ts +9 -0
  36. package/dist/cjs/index.d.ts.map +1 -0
  37. package/dist/cjs/index.js +25 -0
  38. package/dist/cjs/index.js.map +1 -0
  39. package/dist/cjs/interfaces.d.ts +132 -0
  40. package/dist/cjs/interfaces.d.ts.map +1 -0
  41. package/dist/cjs/interfaces.js +13 -0
  42. package/dist/cjs/interfaces.js.map +1 -0
  43. package/dist/cjs/package.json +3 -0
  44. package/dist/cjs/types.d.ts +167 -0
  45. package/dist/cjs/types.d.ts.map +1 -0
  46. package/dist/cjs/types.js +3 -0
  47. package/dist/cjs/types.js.map +1 -0
  48. package/dist/cjs/utils.d.ts +60 -0
  49. package/dist/cjs/utils.d.ts.map +1 -0
  50. package/dist/cjs/utils.js +263 -0
  51. package/dist/cjs/utils.js.map +1 -0
  52. package/dist/esm/chains.d.ts +6 -0
  53. package/dist/esm/chains.d.ts.map +1 -0
  54. package/dist/esm/chains.js +634 -0
  55. package/dist/esm/chains.js.map +1 -0
  56. package/dist/esm/common.d.ts +318 -0
  57. package/dist/esm/common.d.ts.map +1 -0
  58. package/dist/esm/common.js +785 -0
  59. package/dist/esm/common.js.map +1 -0
  60. package/dist/esm/constructors.d.ts +27 -0
  61. package/dist/esm/constructors.d.ts.map +1 -0
  62. package/dist/esm/constructors.js +49 -0
  63. package/dist/esm/constructors.js.map +1 -0
  64. package/dist/esm/crc.d.ts +8 -0
  65. package/dist/esm/crc.d.ts.map +1 -0
  66. package/dist/esm/crc.js +59 -0
  67. package/dist/esm/crc.js.map +1 -0
  68. package/dist/esm/eips.d.ts +3 -0
  69. package/dist/esm/eips.d.ts.map +1 -0
  70. package/dist/esm/eips.js +586 -0
  71. package/dist/esm/eips.js.map +1 -0
  72. package/dist/esm/enums.d.ts +65 -0
  73. package/dist/esm/enums.d.ts.map +1 -0
  74. package/dist/esm/enums.js +77 -0
  75. package/dist/esm/enums.js.map +1 -0
  76. package/dist/esm/gethGenesis.d.ts +145 -0
  77. package/dist/esm/gethGenesis.d.ts.map +1 -0
  78. package/dist/esm/gethGenesis.js +23 -0
  79. package/dist/esm/gethGenesis.js.map +1 -0
  80. package/dist/esm/hardforks.d.ts +3 -0
  81. package/dist/esm/hardforks.d.ts.map +1 -0
  82. package/dist/esm/hardforks.js +204 -0
  83. package/dist/esm/hardforks.js.map +1 -0
  84. package/dist/esm/index.d.ts +9 -0
  85. package/dist/esm/index.d.ts.map +1 -0
  86. package/dist/esm/index.js +9 -0
  87. package/dist/esm/index.js.map +1 -0
  88. package/dist/esm/interfaces.d.ts +132 -0
  89. package/dist/esm/interfaces.d.ts.map +1 -0
  90. package/dist/esm/interfaces.js +10 -0
  91. package/dist/esm/interfaces.js.map +1 -0
  92. package/dist/esm/package.json +3 -0
  93. package/dist/esm/types.d.ts +167 -0
  94. package/dist/esm/types.d.ts.map +1 -0
  95. package/dist/esm/types.js +2 -0
  96. package/dist/esm/types.js.map +1 -0
  97. package/dist/esm/utils.d.ts +60 -0
  98. package/dist/esm/utils.d.ts.map +1 -0
  99. package/dist/esm/utils.js +258 -0
  100. package/dist/esm/utils.js.map +1 -0
  101. package/dist/tsconfig.prod.cjs.tsbuildinfo +1 -0
  102. package/dist/tsconfig.prod.esm.tsbuildinfo +1 -0
  103. package/package.json +77 -0
  104. package/src/chains.ts +638 -0
  105. package/src/common.ts +913 -0
  106. package/src/constructors.ts +60 -0
  107. package/src/crc.ts +63 -0
  108. package/src/eips.ts +588 -0
  109. package/src/enums.ts +104 -0
  110. package/src/gethGenesis.ts +175 -0
  111. package/src/hardforks.ts +205 -0
  112. package/src/index.ts +8 -0
  113. package/src/interfaces.ts +191 -0
  114. package/src/types.ts +193 -0
  115. package/src/utils.ts +324 -0
package/src/chains.ts ADDED
@@ -0,0 +1,638 @@
1
+ import type { ChainConfig } from './types.ts'
2
+
3
+ export const Mainnet: ChainConfig = {
4
+ name: 'mainnet',
5
+ chainId: 1,
6
+ defaultHardfork: 'prague',
7
+ consensus: {
8
+ type: 'pow',
9
+ algorithm: 'ethash',
10
+ ethash: {},
11
+ },
12
+ comment: 'The Ethereum main chain',
13
+ url: 'https://ethstats.net/',
14
+ genesis: {
15
+ gasLimit: 5000,
16
+ difficulty: 17179869184,
17
+ nonce: '0x0000000000000042',
18
+ extraData: '0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa',
19
+ },
20
+ depositContractAddress: '0x00000000219ab540356cBB839Cbe05303d7705Fa',
21
+ hardforks: [
22
+ {
23
+ name: 'chainstart',
24
+ block: 0,
25
+ forkHash: '0xfc64ec04',
26
+ },
27
+ {
28
+ name: 'homestead',
29
+ block: 1150000,
30
+ forkHash: '0x97c2c34c',
31
+ },
32
+ {
33
+ name: 'dao',
34
+ block: 1920000,
35
+ forkHash: '0x91d1f948',
36
+ },
37
+ {
38
+ name: 'tangerineWhistle',
39
+ block: 2463000,
40
+ forkHash: '0x7a64da13',
41
+ },
42
+ {
43
+ name: 'spuriousDragon',
44
+ block: 2675000,
45
+ forkHash: '0x3edd5b10',
46
+ },
47
+ {
48
+ name: 'byzantium',
49
+ block: 4370000,
50
+ forkHash: '0xa00bc324',
51
+ },
52
+ {
53
+ name: 'constantinople',
54
+ block: 7280000,
55
+ forkHash: '0x668db0af',
56
+ },
57
+ {
58
+ name: 'petersburg',
59
+ block: 7280000,
60
+ forkHash: '0x668db0af',
61
+ },
62
+ {
63
+ name: 'istanbul',
64
+ block: 9069000,
65
+ forkHash: '0x879d6e30',
66
+ },
67
+ {
68
+ name: 'muirGlacier',
69
+ block: 9200000,
70
+ forkHash: '0xe029e991',
71
+ },
72
+ {
73
+ name: 'berlin',
74
+ block: 12244000,
75
+ forkHash: '0x0eb440f6',
76
+ },
77
+ {
78
+ name: 'london',
79
+ block: 12965000,
80
+ forkHash: '0xb715077d',
81
+ },
82
+ {
83
+ name: 'arrowGlacier',
84
+ block: 13773000,
85
+ forkHash: '0x20c327fc',
86
+ },
87
+ {
88
+ name: 'grayGlacier',
89
+ block: 15050000,
90
+ forkHash: '0xf0afd0e3',
91
+ },
92
+ {
93
+ // The forkHash will remain same as mergeNetsplitBlock is post merge
94
+ // terminal block: https://etherscan.io/block/15537393
95
+ name: 'paris',
96
+ block: 15537394,
97
+ forkHash: '0xf0afd0e3',
98
+ },
99
+ {
100
+ name: 'mergeNetsplitBlock',
101
+ block: null,
102
+ forkHash: null,
103
+ },
104
+ {
105
+ name: 'shanghai',
106
+ block: null,
107
+ timestamp: '1681338455',
108
+ forkHash: '0xdce96c2d',
109
+ },
110
+ {
111
+ name: 'cancun',
112
+ block: null,
113
+ timestamp: '1710338135',
114
+ forkHash: '0x9f3d2254',
115
+ },
116
+ {
117
+ name: 'prague',
118
+ block: null,
119
+ timestamp: '1746612311',
120
+ forkHash: '0xc376cf8b',
121
+ },
122
+ {
123
+ name: 'osaka',
124
+ block: null,
125
+ timestamp: '1764798551',
126
+ forkHash: '0x5167e2a6',
127
+ },
128
+ {
129
+ name: 'bpo1',
130
+ block: null,
131
+ timestamp: '1765290071',
132
+ forkHash: '0xcba2a1c0',
133
+ },
134
+ {
135
+ name: 'bpo2',
136
+ block: null,
137
+ timestamp: '1767747671',
138
+ forkHash: '0x07c9462e',
139
+ },
140
+ {
141
+ name: 'amsterdam',
142
+ block: null,
143
+ },
144
+ ],
145
+ bootstrapNodes: [
146
+ {
147
+ ip: '18.138.108.67',
148
+ port: 30303,
149
+ id: 'd860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666',
150
+ location: 'ap-southeast-1-001',
151
+ comment: 'bootnode-aws-ap-southeast-1-001',
152
+ },
153
+ {
154
+ ip: '3.209.45.79',
155
+ port: 30303,
156
+ id: '22a8232c3abc76a16ae9d6c3b164f98775fe226f0917b0ca871128a74a8e9630b458460865bab457221f1d448dd9791d24c4e5d88786180ac185df813a68d4de',
157
+ location: 'us-east-1-001',
158
+ comment: 'bootnode-aws-us-east-1-001',
159
+ },
160
+ {
161
+ ip: '65.108.70.101',
162
+ port: 30303,
163
+ id: '2b252ab6a1d0f971d9722cb839a42cb81db019ba44c08754628ab4a823487071b5695317c8ccd085219c3a03af063495b2f1da8d18218da2d6a82981b45e6ffc',
164
+ location: 'eu-west-1-001',
165
+ comment: 'bootnode-hetzner-hel',
166
+ },
167
+ {
168
+ ip: '157.90.35.166',
169
+ port: 30303,
170
+ id: '4aeb4ab6c14b23e2c4cfdce879c04b0748a20d8e9b59e25ded2a08143e265c6c25936e74cbc8e641e3312ca288673d91f2f93f8e277de3cfa444ecdaaf982052',
171
+ location: 'eu-central-1-001',
172
+ comment: 'bootnode-hetzner-fsn',
173
+ },
174
+ ],
175
+ dnsNetworks: [
176
+ 'enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.mainnet.ethdisco.net',
177
+ ],
178
+ }
179
+
180
+ export const Sepolia: ChainConfig = {
181
+ name: 'sepolia',
182
+ chainId: 11155111,
183
+ defaultHardfork: 'prague',
184
+ consensus: {
185
+ type: 'pow',
186
+ algorithm: 'ethash',
187
+ ethash: {},
188
+ },
189
+ comment: 'PoW test network to replace Ropsten',
190
+ url: 'https://github.com/ethereum/go-ethereum/pull/23730',
191
+ genesis: {
192
+ timestamp: '0x6159af19',
193
+ gasLimit: 30000000,
194
+ difficulty: 131072,
195
+ nonce: '0x0000000000000000',
196
+ extraData: '0x5365706f6c69612c20417468656e732c204174746963612c2047726565636521',
197
+ },
198
+ depositContractAddress: '0x7f02c3e3c98b133055b8b348b2ac625669ed295d',
199
+ hardforks: [
200
+ {
201
+ name: 'chainstart',
202
+ block: 0,
203
+ forkHash: '0xfe3366e7',
204
+ },
205
+ {
206
+ name: 'homestead',
207
+ block: 0,
208
+ forkHash: '0xfe3366e7',
209
+ },
210
+ {
211
+ name: 'tangerineWhistle',
212
+ block: 0,
213
+ forkHash: '0xfe3366e7',
214
+ },
215
+ {
216
+ name: 'spuriousDragon',
217
+ block: 0,
218
+ forkHash: '0xfe3366e7',
219
+ },
220
+ {
221
+ name: 'byzantium',
222
+ block: 0,
223
+ forkHash: '0xfe3366e7',
224
+ },
225
+ {
226
+ name: 'constantinople',
227
+ block: 0,
228
+ forkHash: '0xfe3366e7',
229
+ },
230
+ {
231
+ name: 'petersburg',
232
+ block: 0,
233
+ forkHash: '0xfe3366e7',
234
+ },
235
+ {
236
+ name: 'istanbul',
237
+ block: 0,
238
+ forkHash: '0xfe3366e7',
239
+ },
240
+ {
241
+ name: 'muirGlacier',
242
+ block: 0,
243
+ forkHash: '0xfe3366e7',
244
+ },
245
+ {
246
+ name: 'berlin',
247
+ block: 0,
248
+ forkHash: '0xfe3366e7',
249
+ },
250
+ {
251
+ name: 'london',
252
+ block: 0,
253
+ forkHash: '0xfe3366e7',
254
+ },
255
+ {
256
+ // The forkHash will remain same as mergeNetsplitBlock is post merge,
257
+ // terminal block: https://sepolia.etherscan.io/block/1450408
258
+ name: 'paris',
259
+ block: 1450409,
260
+ forkHash: '0xfe3366e7',
261
+ },
262
+ {
263
+ name: 'mergeNetsplitBlock',
264
+ block: 1735371,
265
+ forkHash: '0xb96cbd13',
266
+ },
267
+ {
268
+ name: 'shanghai',
269
+ block: null,
270
+ timestamp: '1677557088',
271
+ forkHash: '0xf7f9bc08',
272
+ },
273
+ {
274
+ name: 'cancun',
275
+ block: null,
276
+ timestamp: '1706655072',
277
+ forkHash: '0x88cf81d9',
278
+ },
279
+ {
280
+ name: 'prague',
281
+ block: null,
282
+ timestamp: '1741159776',
283
+ forkHash: '0xed88b5fd',
284
+ },
285
+ {
286
+ name: 'osaka',
287
+ block: null,
288
+ timestamp: '1760427360',
289
+ forkHash: '0xe2ae4999',
290
+ },
291
+ {
292
+ name: 'bpo1',
293
+ block: null,
294
+ timestamp: '1761017184',
295
+ forkHash: '0x56078a1e',
296
+ },
297
+ {
298
+ name: 'bpo2',
299
+ block: null,
300
+ timestamp: '1761607008',
301
+ forkHash: '0x268956b6',
302
+ },
303
+ {
304
+ name: 'amsterdam',
305
+ block: null,
306
+ },
307
+ ],
308
+ bootstrapNodes: [
309
+ {
310
+ ip: '18.168.182.86',
311
+ port: 30303,
312
+ id: '9246d00bc8fd1742e5ad2428b80fc4dc45d786283e05ef6edbd9002cbc335d40998444732fbe921cb88e1d2c73d1b1de53bae6a2237996e9bfe14f871baf7066',
313
+ location: '',
314
+ comment: 'geth',
315
+ },
316
+ {
317
+ ip: '52.14.151.177',
318
+ port: 30303,
319
+ id: 'ec66ddcf1a974950bd4c782789a7e04f8aa7110a72569b6e65fcd51e937e74eed303b1ea734e4d19cfaec9fbff9b6ee65bf31dcb50ba79acce9dd63a6aca61c7',
320
+ location: '',
321
+ comment: 'besu',
322
+ },
323
+ {
324
+ ip: '165.22.196.173',
325
+ port: 30303,
326
+ id: 'ce970ad2e9daa9e14593de84a8b49da3d54ccfdf83cbc4fe519cb8b36b5918ed4eab087dedd4a62479b8d50756b492d5f762367c8d20329a7854ec01547568a6',
327
+ location: '',
328
+ comment: 'EF',
329
+ },
330
+ {
331
+ ip: '65.108.95.67',
332
+ port: 30303,
333
+ id: '075503b13ed736244896efcde2a992ec0b451357d46cb7a8132c0384721742597fc8f0d91bbb40bb52e7d6e66728d36a1fda09176294e4a30cfac55dcce26bc6',
334
+ location: '',
335
+ comment: 'lodestar',
336
+ },
337
+ ],
338
+ dnsNetworks: [
339
+ 'enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.sepolia.ethdisco.net',
340
+ ],
341
+ }
342
+
343
+ export const Holesky: ChainConfig = {
344
+ name: 'holesky',
345
+ chainId: 17000,
346
+ defaultHardfork: 'prague',
347
+ consensus: {
348
+ type: 'pos',
349
+ algorithm: 'casper',
350
+ },
351
+ comment: 'PoS test network to replace Goerli',
352
+ url: 'https://github.com/eth-clients/holesky/',
353
+ genesis: {
354
+ baseFeePerGas: '0x3B9ACA00',
355
+ difficulty: '0x01',
356
+ extraData: '0x',
357
+ gasLimit: '0x17D7840',
358
+ nonce: '0x0000000000001234',
359
+ timestamp: '0x65156994',
360
+ },
361
+ depositContractAddress: '0x4242424242424242424242424242424242424242',
362
+ hardforks: [
363
+ {
364
+ name: 'chainstart',
365
+ block: 0,
366
+ forkHash: '0xc61a6098',
367
+ },
368
+ {
369
+ name: 'homestead',
370
+ block: 0,
371
+ forkHash: '0xc61a6098',
372
+ },
373
+ {
374
+ name: 'tangerineWhistle',
375
+ block: 0,
376
+ forkHash: '0xc61a6098',
377
+ },
378
+ {
379
+ name: 'spuriousDragon',
380
+ block: 0,
381
+ forkHash: '0xc61a6098',
382
+ },
383
+ {
384
+ name: 'byzantium',
385
+ block: 0,
386
+ forkHash: '0xc61a6098',
387
+ },
388
+ {
389
+ name: 'constantinople',
390
+ block: 0,
391
+ forkHash: '0xc61a6098',
392
+ },
393
+ {
394
+ name: 'petersburg',
395
+ block: 0,
396
+ forkHash: '0xc61a6098',
397
+ },
398
+ {
399
+ name: 'istanbul',
400
+ block: 0,
401
+ forkHash: '0xc61a6098',
402
+ },
403
+ {
404
+ name: 'muirGlacier',
405
+ block: 0,
406
+ forkHash: '0xc61a6098',
407
+ },
408
+ {
409
+ name: 'berlin',
410
+ block: 0,
411
+ forkHash: '0xc61a6098',
412
+ },
413
+ {
414
+ name: 'london',
415
+ block: 0,
416
+ forkHash: '0xc61a6098',
417
+ },
418
+ {
419
+ name: 'paris',
420
+ block: 0,
421
+ forkHash: '0xc61a6098',
422
+ },
423
+ {
424
+ name: 'mergeNetsplitBlock',
425
+ block: 0,
426
+ forkHash: '0xc61a6098',
427
+ },
428
+ {
429
+ name: 'shanghai',
430
+ block: null,
431
+ timestamp: '1696000704',
432
+ forkHash: '0xfd4f016b',
433
+ },
434
+ {
435
+ name: 'cancun',
436
+ block: null,
437
+ timestamp: '1707305664',
438
+ forkHash: '0x9b192ad0',
439
+ },
440
+ {
441
+ name: 'prague',
442
+ block: null,
443
+ timestamp: '1740434112',
444
+ forkHash: '0xdfbd9bed',
445
+ },
446
+ {
447
+ name: 'osaka',
448
+ block: null,
449
+ timestamp: '1759308480',
450
+ forkHash: '0x783def52',
451
+ },
452
+ {
453
+ name: 'bpo1',
454
+ block: null,
455
+ timestamp: '1759800000',
456
+ forkHash: '0xa280a45c',
457
+ },
458
+ {
459
+ name: 'bpo2',
460
+ block: null,
461
+ timestamp: '1760389824',
462
+ forkHash: '0x9bc6cb31',
463
+ },
464
+ ],
465
+ bootstrapNodes: [
466
+ {
467
+ ip: '146.190.13.128',
468
+ port: 30303,
469
+ id: 'ac906289e4b7f12df423d654c5a962b6ebe5b3a74cc9e06292a85221f9a64a6f1cfdd6b714ed6dacef51578f92b34c60ee91e9ede9c7f8fadc4d347326d95e2b',
470
+ location: '',
471
+ comment: 'bootnode 1',
472
+ },
473
+ {
474
+ ip: '178.128.136.233',
475
+ port: 30303,
476
+ id: 'a3435a0155a3e837c02f5e7f5662a2f1fbc25b48e4dc232016e1c51b544cb5b4510ef633ea3278c0e970fa8ad8141e2d4d0f9f95456c537ff05fdf9b31c15072',
477
+ location: '',
478
+ comment: 'bootnode 2',
479
+ },
480
+ ],
481
+ dnsNetworks: [
482
+ 'enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.holesky.ethdisco.net',
483
+ ],
484
+ }
485
+
486
+ export const Hoodi: ChainConfig = {
487
+ name: 'hoodi',
488
+ chainId: 560048,
489
+ defaultHardfork: 'prague',
490
+ consensus: {
491
+ type: 'pos',
492
+ algorithm: 'casper',
493
+ },
494
+ comment: 'PoS test network to replace Holesky',
495
+ url: 'https://github.com/eth-clients/hoodi',
496
+ genesis: {
497
+ baseFeePerGas: '0x3B9ACA00',
498
+ difficulty: '0x01',
499
+ extraData: '0x',
500
+ gasLimit: '0x2255100',
501
+ nonce: '0x0000000000001234',
502
+ timestamp: '0x67d80ec0',
503
+ },
504
+ depositContractAddress: '0x00000000219ab540356cBB839Cbe05303d7705Fa',
505
+ hardforks: [
506
+ {
507
+ name: 'chainstart',
508
+ block: 0,
509
+ forkHash: '0xbef71d30',
510
+ },
511
+ {
512
+ name: 'homestead',
513
+ block: 0,
514
+ forkHash: '0xbef71d30',
515
+ },
516
+ {
517
+ name: 'tangerineWhistle',
518
+ block: 0,
519
+ forkHash: '0xbef71d30',
520
+ },
521
+ {
522
+ name: 'spuriousDragon',
523
+ block: 0,
524
+ forkHash: '0xbef71d30',
525
+ },
526
+ {
527
+ name: 'byzantium',
528
+ block: 0,
529
+ forkHash: '0xbef71d30',
530
+ },
531
+ {
532
+ name: 'constantinople',
533
+ block: 0,
534
+ forkHash: '0xbef71d30',
535
+ },
536
+ {
537
+ name: 'petersburg',
538
+ block: 0,
539
+ forkHash: '0xbef71d30',
540
+ },
541
+ {
542
+ name: 'istanbul',
543
+ block: 0,
544
+ forkHash: '0xbef71d30',
545
+ },
546
+ {
547
+ name: 'muirGlacier',
548
+ block: 0,
549
+ forkHash: '0xbef71d30',
550
+ },
551
+ {
552
+ name: 'berlin',
553
+ block: 0,
554
+ forkHash: '0xbef71d30',
555
+ },
556
+ {
557
+ name: 'london',
558
+ block: 0,
559
+ forkHash: '0xbef71d30',
560
+ },
561
+ {
562
+ name: 'paris',
563
+ block: 0,
564
+ forkHash: '0xbef71d30',
565
+ },
566
+ {
567
+ name: 'mergeNetsplitBlock',
568
+ block: 0,
569
+ forkHash: '0xbef71d30',
570
+ },
571
+ {
572
+ name: 'shanghai',
573
+ block: null,
574
+ timestamp: '0',
575
+ forkHash: '0xbef71d30',
576
+ },
577
+ {
578
+ name: 'cancun',
579
+ block: null,
580
+ timestamp: '0',
581
+ forkHash: '0xbef71d30',
582
+ },
583
+ {
584
+ name: 'prague',
585
+ block: null,
586
+ timestamp: '1742999832',
587
+ forkHash: '0x0929e24e',
588
+ },
589
+ {
590
+ name: 'osaka',
591
+ block: null,
592
+ timestamp: '1761677592',
593
+ forkHash: '0xe7e0e7ff',
594
+ },
595
+ {
596
+ name: 'bpo1',
597
+ block: null,
598
+ timestamp: '1762365720',
599
+ forkHash: '0x3893353e',
600
+ },
601
+ {
602
+ name: 'bpo2',
603
+ block: null,
604
+ timestamp: '1762955544',
605
+ forkHash: '0x23aa1351',
606
+ },
607
+ {
608
+ name: 'amsterdam',
609
+ block: null,
610
+ },
611
+ ],
612
+ bootstrapNodes: [
613
+ {
614
+ ip: '134.209.138.84',
615
+ port: 30303,
616
+ id: '2112dd3839dd752813d4df7f40936f06829fc54c0e051a93967c26e5f5d27d99d886b57b4ffcc3c475e930ec9e79c56ef1dbb7d86ca5ee83a9d2ccf36e5c240c',
617
+ location: '',
618
+ comment: 'bootnode 1',
619
+ },
620
+ {
621
+ ip: '209.38.124.160',
622
+ port: 30303,
623
+ id: '60203fcb3524e07c5df60a14ae1c9c5b24023ea5d47463dfae051d2c9f3219f309657537576090ca0ae641f73d419f53d8e8000d7a464319d4784acd7d2abc41',
624
+ location: '',
625
+ comment: 'bootnode 2',
626
+ },
627
+ {
628
+ ip: '134.199.184.23',
629
+ port: 30303,
630
+ id: '8ae4a48101b2299597341263da0deb47cc38aa4d3ef4b7430b897d49bfa10eb1ccfe1655679b1ed46928ef177fbf21b86837bd724400196c508427a6f41602cd',
631
+ location: '',
632
+ comment: 'bootnode 3',
633
+ },
634
+ ],
635
+ dnsNetworks: [
636
+ 'enrtree://AKA3AM6LPBYEUDMVNU3BSVQJ5AD45Y7YPOHJLEF6W26QOE4VTUDPE@all.hoodi.ethdisco.net',
637
+ ],
638
+ }