alloy_hardforks/ethereum/mainnet.rs
1//! Ethereum Mainnet hardfork starting points
2
3use alloy_primitives::{uint, U256};
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
40/// Paris hard fork activation terminal total difficulty is 58_750_000_000_000_000_000_000_U256.
41pub const MAINNET_PARIS_TTD: U256 = uint!(58_750_000_000_000_000_000_000_U256);
42
43/// Frontier hard fork activation timestamp is 1438226773.
44pub const MAINNET_FRONTIER_TIMESTAMP: u64 = 1_438_226_773;
45/// Homestead hard fork activation timestamp is 1457938193.
46pub const MAINNET_HOMESTEAD_TIMESTAMP: u64 = 1_457_938_193;
47/// Dao hard fork activation timestamp is 1468977640.
48pub const MAINNET_DAO_TIMESTAMP: u64 = 1_468_977_640;
49/// Tangerine hard fork activation timestamp is 1476753571.
50pub const MAINNET_TANGERINE_TIMESTAMP: u64 = 1_476_753_571;
51/// Spurious Dragon hard fork activation timestamp is 1479788144.
52pub const MAINNET_SPURIOUS_DRAGON_TIMESTAMP: u64 = 1_479_788_144;
53/// Byzantium hard fork activation timestamp is 1508131331.
54pub const MAINNET_BYZANTIUM_TIMESTAMP: u64 = 1_508_131_331;
55/// Constantinople hard fork activation timestamp is 1551340324.
56pub const MAINNET_CONSTANTINOPLE_TIMESTAMP: u64 = MAINNET_PETERSBURG_TIMESTAMP;
57/// Petersburg hard fork activation timestamp is 1551340324, same as
58/// [`MAINNET_PETERSBURG_TIMESTAMP`].
59pub const MAINNET_PETERSBURG_TIMESTAMP: u64 = 1_551_340_324;
60/// Istanbul hard fork activation timestamp is 1575807909.
61pub const MAINNET_ISTANBUL_TIMESTAMP: u64 = 1_575_807_909;
62/// Muir Glacier hard fork activation timestamp is 1577953849.
63pub const MAINNET_MUIR_GLACIER_TIMESTAMP: u64 = 1_577_953_849;
64/// Berlin hard fork activation timestamp is 1618481223.
65pub const MAINNET_BERLIN_TIMESTAMP: u64 = 1_618_481_223;
66/// London hard fork activation timestamp is 1628166822.
67pub const MAINNET_LONDON_TIMESTAMP: u64 = 1_628_166_822;
68/// Arrow Glacier hard fork activation timestamp is 1639036523.
69pub const MAINNET_ARROW_GLACIER_TIMESTAMP: u64 = 1_639_036_523;
70/// Gray Glacier hard fork activation timestamp is 1656586444.
71pub const MAINNET_GRAY_GLACIER_TIMESTAMP: u64 = 1_656_586_444;
72/// Paris hard fork activation timestamp is 1663224162.
73pub const MAINNET_PARIS_TIMESTAMP: u64 = 1_663_224_162;
74/// Shanghai hard fork activation timestamp is 1681338455.
75pub const MAINNET_SHANGHAI_TIMESTAMP: u64 = 1_681_338_455;
76/// Cancun hard fork activation timestamp is 1710338135.
77pub const MAINNET_CANCUN_TIMESTAMP: u64 = 1_710_338_135;
78/// Prague hard fork activation timestamp is 1746612311.
79pub const MAINNET_PRAGUE_TIMESTAMP: u64 = 1_746_612_311;