diff --git a/EIPS/eip-7002.md b/EIPS/eip-7002.md index afd8756c51d463..f718259f8785ab 100644 --- a/EIPS/eip-7002.md +++ b/EIPS/eip-7002.md @@ -222,6 +222,9 @@ def dequeue_withdrawal_requests(): def update_excess_withdrawal_requests(): previous_excess = sload(WITHDRAWAL_REQUEST_PREDEPLOY_ADDRESS, EXCESS_WITHDRAWAL_REQUESTS_STORAGE_SLOT) + if previous_excess == EXCESS_INHIBITOR: + previous_excess = 0 + count = sload(WITHDRAWAL_REQUEST_PREDEPLOY_ADDRESS, WITHDRAWAL_REQUEST_COUNT_STORAGE_SLOT) new_excess = 0 @@ -242,55 +245,29 @@ Each withdrawal request must appear in the EIP-7685 requests list in the order t caller push20 0xfffffffffffffffffffffffffffffffffffffffe eq -push1 0xc7 -jumpi - -calldatasize -iszero -iszero -push1 0x28 -jumpi - -push0 -sload -push0 -mstore -push1 0x20 -push0 -return - -jumpdest -calldatasize -push1 0x38 -eq -iszero -push2 0x01f0 +push1 0xcb jumpi - push1 0x11 push0 sload dup1 push32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff eq -push2 0x01f0 +push2 0x01f4 jumpi - push1 0x01 dup3 mul push1 0x01 swap1 push0 - jumpdest push0 dup3 gt iszero -push1 0x80 +push1 0x68 jumpi - dup2 add swap1 @@ -306,19 +283,38 @@ push1 0x01 add swap2 swap1 -push1 0x65 +push1 0x4d jump - jumpdest swap1 swap4 swap1 div +swap3 +pop +pop +pop +calldatasize +push1 0x38 +eq +push1 0x88 +jumpi +calldatasize +push2 0x01f4 +jumpi +callvalue +push2 0x01f4 +jumpi +push0 +mstore +push1 0x20 +push0 +return +jumpdest callvalue lt -push2 0x01f0 +push2 0x01f4 jumpi - push1 0x01 sload push1 0x01 @@ -364,7 +360,6 @@ add push1 0x03 sstore stop - jumpdest push1 0x03 sload @@ -376,64 +371,60 @@ sub dup1 push1 0x10 gt -push1 0xdb +push1 0xdf jumpi - pop push1 0x10 - jumpdest push0 - jumpdest dup2 dup2 eq -push2 0x017f +push2 0x0183 jumpi - -dup1 -push1 0x4c -mul -dup4 dup3 +dup2 add push1 0x03 mul push1 0x04 add -dup1 -sload -swap1 -push1 0x01 -add -dup1 -sload -swap1 -push1 0x01 -add +dup2 +push1 0x4c +mul +dup2 sload -swap2 push1 0x60 shl -dup4 +dup2 mstore -dup3 push1 0x14 add +dup2 +push1 0x01 +add +sload +dup2 mstore +push1 0x20 +add +swap1 +push1 0x02 +add +sload dup1 push32 0xffffffffffffffffffffffffffffffff00000000000000000000000000000000 and dup3 -push1 0x34 -add mstore +swap1 +push1 0x10 +add +swap1 push1 0x40 shr swap1 -push1 0x44 -add dup2 push1 0x38 shr @@ -486,24 +477,21 @@ mstore8 mstore8 push1 0x01 add -push1 0xdd +push1 0xe1 jump - jumpdest swap2 add dup1 swap3 eq -push2 0x0191 +push2 0x0195 jumpi - swap1 push1 0x02 sstore -push2 0x019c +push2 0x01a0 jump - jumpdest swap1 pop @@ -513,7 +501,6 @@ sstore push0 push1 0x03 sstore - jumpdest push0 sload @@ -521,12 +508,10 @@ dup1 push32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff eq iszero -push2 0x01c9 +push2 0x01cd jumpi - pop push0 - jumpdest push1 0x01 sload @@ -535,21 +520,18 @@ dup3 dup3 add gt -push2 0x01de +push2 0x01e2 jumpi - pop pop push0 -push2 0x01e4 +push2 0x01e8 jump - jumpdest add push1 0x02 swap1 sub - jumpdest push0 sstore @@ -560,7 +542,6 @@ push1 0x4c mul push0 return - jumpdest push0 push0 @@ -581,17 +562,17 @@ The withdrawal requests contract is deployed like any other smart contract. A sp "maxPriorityFeePerGas": null, "maxFeePerGas": null, "value": "0x0", - "input": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f556101f480602d5f395ff33373fffffffffffffffffffffffffffffffffffffffe1460c7573615156028575f545f5260205ff35b36603814156101f05760115f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff146101f057600182026001905f5b5f821115608057810190830284830290049160010191906065565b9093900434106101f057600154600101600155600354806003026004013381556001015f35815560010160203590553360601b5f5260385f601437604c5fa0600101600355005b6003546002548082038060101160db575060105b5f5b81811461017f5780604c02838201600302600401805490600101805490600101549160601b83528260140152807fffffffffffffffffffffffffffffffff0000000000000000000000000000000016826034015260401c906044018160381c81600701538160301c81600601538160281c81600501538160201c81600401538160181c81600301538160101c81600201538160081c81600101535360010160dd565b9101809214610191579060025561019c565b90505f6002555f6003555b5f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14156101c957505f5b6001546002828201116101de5750505f6101e4565b01600290035b5f555f600155604c025ff35b5f5ffd", + "input": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f556101f880602d5f395ff33373fffffffffffffffffffffffffffffffffffffffe1460cb5760115f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff146101f457600182026001905f5b5f82111560685781019083028483029004916001019190604d565b909390049250505036603814608857366101f457346101f4575f5260205ff35b34106101f457600154600101600155600354806003026004013381556001015f35815560010160203590553360601b5f5260385f601437604c5fa0600101600355005b6003546002548082038060101160df575060105b5f5b8181146101835782810160030260040181604c02815460601b8152601401816001015481526020019060020154807fffffffffffffffffffffffffffffffff00000000000000000000000000000000168252906010019060401c908160381c81600701538160301c81600601538160281c81600501538160201c81600401538160181c81600301538160101c81600201538160081c81600101535360010160e1565b910180921461019557906002556101a0565b90505f6002555f6003555b5f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14156101cd57505f5b6001546002828201116101e25750505f6101e8565b01600290035b5f555f600155604c025ff35b5f5ffd", "v": "0x1b", "r": "0x539", - "s": "0x10e740537d4d36b9", - "hash": "0x1cd8bf929988b27b07ba1c7b898b396c08c484bb0db83fdeb992aa21b5cdf0ce" + "s": "0xeb793ed1dcd82833", + "hash": "0xe89c48ef3308192a0768aefaa5128559e68ab87b5b9a6d113824551867746a20" } ``` ``` -Sender: 0x57B8c3C2766D0623EA0A499365A6f5A26aD38B47 -Address: 0x09Fc772D0857550724b07B850a4323f39112aAaA +Sender: 0xa05D9eED37862daB22b002b8F6668B8Fb0c4D798 +Address: 0x0c15F14308530b7CDB8460094BbB9cC28b9AaaAA ``` ### Consensus layer diff --git a/EIPS/eip-7251.md b/EIPS/eip-7251.md index 3a995d59ce54d6..53832dca2b13d6 100644 --- a/EIPS/eip-7251.md +++ b/EIPS/eip-7251.md @@ -230,31 +230,8 @@ def reset_consolidation_requests_count(): caller push20 0xfffffffffffffffffffffffffffffffffffffffe eq -push1 0xcf +push1 0xd3 jumpi - -calldatasize -iszero -iszero -push1 0x28 -jumpi - -push0 -sload -push0 -mstore -push1 0x20 -push0 -return - -jumpdest -calldatasize -push1 0x60 -eq -iszero -push2 0x019a -jumpi - push1 0x11 push0 sload @@ -263,22 +240,19 @@ push32 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff eq push2 0x019a jumpi - push1 0x01 dup3 mul push1 0x01 swap1 push0 - jumpdest push0 dup3 gt iszero -push1 0x80 +push1 0x68 jumpi - dup2 add swap1 @@ -294,19 +268,38 @@ push1 0x01 add swap2 swap1 -push1 0x65 +push1 0x4d jump - jumpdest swap1 swap4 swap1 div +swap3 +pop +pop +pop +calldatasize +push1 0x60 +eq +push1 0x88 +jumpi +calldatasize +push2 0x019a +jumpi +callvalue +push2 0x019a +jumpi +push0 +mstore +push1 0x20 +push0 +return +jumpdest callvalue lt push2 0x019a jumpi - push1 0x01 sload push1 0x01 @@ -358,7 +351,6 @@ add push1 0x03 sstore stop - jumpdest push1 0x03 sload @@ -370,71 +362,62 @@ sub dup1 push1 0x01 gt -push1 0xe3 +push1 0xe7 jumpi - pop push1 0x01 - jumpdest push0 - jumpdest dup2 dup2 eq push2 0x0129 jumpi - -dup1 -push1 0x74 -mul -dup4 dup3 +dup2 add push1 0x04 mul push1 0x04 add -dup1 -sload -swap1 -push1 0x01 -add -dup1 -sload -swap1 -push1 0x01 -add -dup1 -sload -swap1 -push1 0x01 -add +dup2 +push1 0x74 +mul +dup2 sload -swap3 push1 0x60 shl -dup5 +dup2 mstore -swap1 -dup4 push1 0x14 add +dup2 +push1 0x01 +add +sload +dup2 mstore -dup3 -push1 0x34 +push1 0x20 add +dup2 +push1 0x02 +add +sload +dup2 mstore +push1 0x20 +add swap1 -push1 0x54 +push1 0x03 add +sload +swap1 mstore push1 0x01 add -push1 0xe5 +push1 0xe9 jump - jumpdest swap2 add @@ -443,13 +426,11 @@ swap3 eq push2 0x013b jumpi - swap1 push1 0x02 sstore push2 0x0146 jump - jumpdest swap1 pop @@ -459,7 +440,6 @@ sstore push0 push1 0x03 sstore - jumpdest push0 sload @@ -469,10 +449,8 @@ eq iszero push2 0x0173 jumpi - pop push0 - jumpdest push1 0x01 sload @@ -483,19 +461,16 @@ add gt push2 0x0188 jumpi - pop pop push0 push2 0x018e jump - jumpdest add push1 0x01 swap1 sub - jumpdest push0 sstore @@ -506,7 +481,6 @@ push1 0x74 mul push0 return - jumpdest push0 push0 @@ -527,17 +501,17 @@ The consolidation requests contract is deployed like any other smart contract. A "maxPriorityFeePerGas": null, "maxFeePerGas": null, "value": "0x0", - "input": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f5561019e80602d5f395ff33373fffffffffffffffffffffffffffffffffffffffe1460cf573615156028575f545f5260205ff35b366060141561019a5760115f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1461019a57600182026001905f5b5f821115608057810190830284830290049160010191906065565b90939004341061019a57600154600101600155600354806004026004013381556001015f358155600101602035815560010160403590553360601b5f5260605f60143760745fa0600101600355005b6003546002548082038060011160e3575060015b5f5b8181146101295780607402838201600402600401805490600101805490600101805490600101549260601b84529083601401528260340152906054015260010160e5565b910180921461013b5790600255610146565b90505f6002555f6003555b5f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff141561017357505f5b6001546001828201116101885750505f61018e565b01600190035b5f555f6001556074025ff35b5f5ffd", + "input": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f5561019e80602d5f395ff33373fffffffffffffffffffffffffffffffffffffffe1460d35760115f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1461019a57600182026001905f5b5f82111560685781019083028483029004916001019190604d565b9093900492505050366060146088573661019a573461019a575f5260205ff35b341061019a57600154600101600155600354806004026004013381556001015f358155600101602035815560010160403590553360601b5f5260605f60143760745fa0600101600355005b6003546002548082038060011160e7575060015b5f5b8181146101295782810160040260040181607402815460601b815260140181600101548152602001816002015481526020019060030154905260010160e9565b910180921461013b5790600255610146565b90505f6002555f6003555b5f54807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff141561017357505f5b6001546001828201116101885750505f61018e565b01600190035b5f555f6001556074025ff35b5f5ffd", "v": "0x1b", "r": "0x539", - "s": "0x832fdd8c49a416f1", - "hash": "0x5e174f35e55bc53c898f3c5e315d81e054363363a0e95dfd6e43c23e8ebb9407" + "s": "0x4b026bde3de3d21a", + "hash": "0x5c86483822c8978690fd23fec89ba75e205c734020315827c50e2def49f924d4" } ``` ``` -Sender: 0x81e9Afa909fe8B57Af2a6FD18862AE9daE3163F4 -Address: 0x01aBEa29659e5e97C95107F20bb753cD3e09bBBb +Sender: 0xB64F31e716F43404Fc452Ad957e37B45B2A9AC86 +Address: 0x0046BB33B9eA028AE30BAd20702e36Ea8099BBbb ``` #### Block processing