@@ -37,9 +37,6 @@ EVM semantics and tries to achieve the goal of unfreezing the funds by a single
3737state transition as specified in the next section.
3838
3939## Specification
40-
41- ### High-level Overview
42-
4340The self-destructed contract code at
4441[ ` 0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4 ` ] ( https://etherscan.io/address/0x863df6bfa4469f3ead0be8f9f2aae51c91a907b4#code )
4542shall be replaced with a patched version of the
@@ -72,9 +69,11 @@ Remove the `selfdestruct()`
7269* [ parity-contracts/0x863df6bfa4 #3 ] ( https://github.com/parity-contracts/0x863df6bfa4/pull/3 ) :
7370Initialize the library owner to ` 0x0 `
7471
72+ The following sections propose two equivalent specifications, 999a and 999b,
73+ which technically achieve the same results. To implement this proposal only one
74+ of them has to be applied.
7575
76- ### Direct State Transition
77-
76+ ### Direct State Transition via Bytecode (999a)
7877At ` CNSTNTNPL_FORK_BLKNUM ` , directly recreate the account
7978` 0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4 ` with the following parameters:
8079
@@ -97,6 +96,26 @@ At `CNSTNTNPL_FORK_BLKNUM`, directly recreate the account
9796
9897The balance of the account shall be left unchanged.
9998
99+ ### Alternate Specification via Codehash (999b)
100+ At ` CNSTNTNPL_FORK_BLKNUM ` , directly recreate the account
101+ ` 0x863DF6BFa4469f3ead0bE8f9F2AAE51c91A907b4 ` with the following parameters:
102+
103+ * Nonce: ` 0x1 `
104+ * Storage:
105+ * ` 0x0000000000000000000000000000000000000000000000000000000000000000 ` :
106+ ` 0x0000000000000000000000000000000000000000000000000000000000000001 `
107+ * ` 0x0000000000000000000000000000000000000000000000000000000000000001 ` :
108+ ` 0x0000000000000000000000000000000000000000000000000000000000000001 `
109+ * ` 0x0000000000000000000000000000000000000000000000000000000000000004 ` :
110+ ` 0x00000000000000000000000000000000000000000000000000000000000044e1 `
111+ * ` 0xa5baec7d73105a3c7298203bb205bbc41b63fa384ae73a6016b890a7ca29ae2d ` :
112+ ` 0x0000000000000000000000000000000000000000000000000000000000000001 `
113+
114+ In addition, the codehash at that address shall be replaced by the codehash at
115+ address ` 0x21C9E434c669c4d73f55215A6F2130A185E127AC ` . The codehash is
116+ ` 0x6209d55547da7b035d54ef8d73275e863d3072b91da6ace1614fa6381f4e2c09 ` . The
117+ balance of the account shall be left unchanged.
118+
100119## Rationale
101120The design decision to restore the ` WalletLibrary ` contract code in a single
102121state transition was made after lengthy discussions of
0 commit comments