alloy_hardforks/ethereum/mainnet.rs
1//! Ethereum Mainnet hardfork starting points
2
3use alloy_primitives::{U256, uint};
4
5/// Frontier hard fork activation block is 0.
6pub const MAINNET_FRONTIER_BLOCK: u64 = 0;
7/// Homestead hard fork activation block is 1150000.
8pub const MAINNET_HOMESTEAD_BLOCK: u64 = 1_150_000;
9/// Dao hard fork activation is 1920000.
10pub const MAINNET_DAO_BLOCK: u64 = 1_920_000;
11///Tangerine hard fork activation block is 2463000.
12pub const MAINNET_TANGERINE_BLOCK: u64 = 2_463_000;
13/// Spurious Dragon hard fork activation block is 2675000.
14pub const MAINNET_SPURIOUS_DRAGON_BLOCK: u64 = 2_675_000;
15/// Byzantium hard fork activation block is 4370000.
16pub const MAINNET_BYZANTIUM_BLOCK: u64 = 4_370_000;
17/// Constantinople hard fork activation block is 7280000, same as [`MAINNET_PETERSBURG_BLOCK`].
18pub const MAINNET_CONSTANTINOPLE_BLOCK: u64 = MAINNET_PETERSBURG_BLOCK;
19/// Petersburg hard fork activation block is 7280000.
20pub const MAINNET_PETERSBURG_BLOCK: u64 = 7_280_000;
21/// Istanbul hard fork activation block is 9069000.
22pub const MAINNET_ISTANBUL_BLOCK: u64 = 9_069_000;
23/// Muir Glacier hard fork activation block is 9200000.
24pub const MAINNET_MUIR_GLACIER_BLOCK: u64 = 9_200_000;
25/// Berlin hard fork activation block is 12244000.
26pub const MAINNET_BERLIN_BLOCK: u64 = 12_244_000;
27/// London hard fork activation block is 12965000.
28pub const MAINNET_LONDON_BLOCK: u64 = 12_965_000;
29/// Arrow Glacier hard fork activation block is 13773000.
30pub const MAINNET_ARROW_GLACIER_BLOCK: u64 = 13_773_000;
31/// Gray Glacier hard fork activation block is 15050000.
32pub const MAINNET_GRAY_GLACIER_BLOCK: u64 = 15_050_000;
33/// Paris hard fork activation block is 15537394.
34pub const MAINNET_PARIS_BLOCK: u64 = 15_537_394;
35/// Shanghai hard fork activation block is 17034870.
36pub const MAINNET_SHANGHAI_BLOCK: u64 = 17_034_870;
37/// Cancun hard fork activation block is 19426587.
38pub const MAINNET_CANCUN_BLOCK: u64 = 19_426_587;
39/// Prague hard fork activation block is 22431084.
40pub const MAINNET_PRAGUE_BLOCK: u64 = 22_431_084;
41
42/// Paris hard fork activation terminal total difficulty is 58_750_000_000_000_000_000_000_U256.
43pub const MAINNET_PARIS_TTD: U256 = uint!(58_750_000_000_000_000_000_000_U256);
44
45/// Frontier hard fork activation timestamp is 1438226773.
46pub const MAINNET_FRONTIER_TIMESTAMP: u64 = 1_438_226_773;
47/// Homestead hard fork activation timestamp is 1457938193.
48pub const MAINNET_HOMESTEAD_TIMESTAMP: u64 = 1_457_938_193;
49/// Dao hard fork activation timestamp is 1468977640.
50pub const MAINNET_DAO_TIMESTAMP: u64 = 1_468_977_640;
51/// Tangerine hard fork activation timestamp is 1476753571.
52pub const MAINNET_TANGERINE_TIMESTAMP: u64 = 1_476_753_571;
53/// Spurious Dragon hard fork activation timestamp is 1479788144.
54pub const MAINNET_SPURIOUS_DRAGON_TIMESTAMP: u64 = 1_479_788_144;
55/// Byzantium hard fork activation timestamp is 1508131331.
56pub const MAINNET_BYZANTIUM_TIMESTAMP: u64 = 1_508_131_331;
57/// Constantinople hard fork activation timestamp is 1551340324.
58pub const MAINNET_CONSTANTINOPLE_TIMESTAMP: u64 = MAINNET_PETERSBURG_TIMESTAMP;
59/// Petersburg hard fork activation timestamp is 1551340324, same as
60/// [`MAINNET_PETERSBURG_TIMESTAMP`].
61pub const MAINNET_PETERSBURG_TIMESTAMP: u64 = 1_551_340_324;
62/// Istanbul hard fork activation timestamp is 1575807909.
63pub const MAINNET_ISTANBUL_TIMESTAMP: u64 = 1_575_807_909;
64/// Muir Glacier hard fork activation timestamp is 1577953849.
65pub const MAINNET_MUIR_GLACIER_TIMESTAMP: u64 = 1_577_953_849;
66/// Berlin hard fork activation timestamp is 1618481223.
67pub const MAINNET_BERLIN_TIMESTAMP: u64 = 1_618_481_223;
68/// London hard fork activation timestamp is 1628166822.
69pub const MAINNET_LONDON_TIMESTAMP: u64 = 1_628_166_822;
70/// Arrow Glacier hard fork activation timestamp is 1639036523.
71pub const MAINNET_ARROW_GLACIER_TIMESTAMP: u64 = 1_639_036_523;
72/// Gray Glacier hard fork activation timestamp is 1656586444.
73pub const MAINNET_GRAY_GLACIER_TIMESTAMP: u64 = 1_656_586_444;
74/// Paris hard fork activation timestamp is 1663224162.
75pub const MAINNET_PARIS_TIMESTAMP: u64 = 1_663_224_162;
76/// Shanghai hard fork activation timestamp is 1681338455.
77pub const MAINNET_SHANGHAI_TIMESTAMP: u64 = 1_681_338_455;
78/// Cancun hard fork activation timestamp is 1710338135.
79pub const MAINNET_CANCUN_TIMESTAMP: u64 = 1_710_338_135;
80/// Prague hard fork activation timestamp is 1746612311.
81pub const MAINNET_PRAGUE_TIMESTAMP: u64 = 1_746_612_311;