aboutsummaryrefslogtreecommitdiffstats
path: root/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead
diff options
context:
space:
mode:
authorDimitry <dimitry@ethdev.com>2016-12-05 19:12:05 +0800
committerDimitry <dimitry@ethdev.com>2016-12-05 19:12:05 +0800
commite2a69159c863d810a368eda8aa417290d95dc52e (patch)
tree75da52555f6c077fdf580b24bcd8268c968da62e /src/GeneralStateTestsFiller/stCallDelegateCodesHomestead
parent35cfcf16190fc3e56ee11ead23452c633e2fca28 (diff)
downloaddexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.gz
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.zst
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.zip
Test Fillers (Sources for the tests)
Diffstat (limited to 'src/GeneralStateTestsFiller/stCallDelegateCodesHomestead')
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001Filler.json156
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGEFiller.json146
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMAfterFiller.json154
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideEndFiller.json137
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideMiddleFiller.json138
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_ABCB_RECURSIVEFiller.json121
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01Filler.json125
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_OOGEFiller.json115
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_SuicideEndFiller.json122
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010Filler.json146
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGEFiller.json146
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideEndFiller.json127
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideMiddleFiller.json129
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_ABCB_RECURSIVEFiller.json121
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011Filler.json130
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGEFiller.json146
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideEndFiller.json135
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideMiddleFiller.json112
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_ABCB_RECURSIVEFiller.json121
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10Filler.json115
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_OOGEFiller.json123
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_SuicideEndFiller.json108
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100Filler.json134
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGEFiller.json148
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideEndFiller.json139
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideMiddleFiller.json127
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_ABCB_RECURSIVEFiller.json131
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101Filler.json152
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGEFiller.json148
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideEndFiller.json143
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideMiddleFiller.json127
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_ABCB_RECURSIVEFiller.json131
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11Filler.json145
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_OOGEFiller.json125
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_SuicideEndFiller.json110
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110Filler.json140
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGEFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMBeforeFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideEndFiller.json125
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideMiddleFiller.json127
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_ABCB_RECURSIVEFiller.json131
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111Filler.json130
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGEFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMAfterFiller.json150
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMBeforeFiller.json148
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideEndFiller.json120
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideMiddleFiller.json128
-rw-r--r--src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_ABCB_RECURSIVEFiller.json131
58 files changed, 7913 insertions, 0 deletions
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001Filler.json
new file mode 100644
index 000000000..383964c21
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001Filler.json
@@ -0,0 +1,156 @@
+{
+ "callcallcallcode_001" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x014a" : "0x1000000000000000000000000000000000000002",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x02" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000001",
+ "0x07" : "0x02"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 350000 0x1000000000000000000000000000000000000001 1 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (CALL 300000 0x1000000000000000000000000000000000000002 2 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGEFiller.json
new file mode 100644
index 000000000..f7209eb59
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGEFiller.json
@@ -0,0 +1,146 @@
+{
+ "callcallcallcode_001_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMAfterFiller.json
new file mode 100644
index 000000000..8530487e4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMAfterFiller.json
@@ -0,0 +1,154 @@
+{
+ "callcallcallcode_001_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 60150 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40085 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMBeforeFiller.json
new file mode 100644
index 000000000..2123cba74
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcallcallcode_001_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40080 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideEndFiller.json
new file mode 100644
index 000000000..d303bf03a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideEndFiller.json
@@ -0,0 +1,137 @@
+{
+ "callcallcallcode_001_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideMiddleFiller.json
new file mode 100644
index 000000000..808303fb9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_001_SuicideMiddleFiller.json
@@ -0,0 +1,138 @@
+{
+ "callcallcallcode_001_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000010000000000",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000010000000000",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..d01e5294d
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcallcode_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,121 @@
+{
+ "callcallcallcode_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "1046140"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566207"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 25000000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 1000000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 500000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01Filler.json
new file mode 100644
index 000000000..211e0f969
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01Filler.json
@@ -0,0 +1,125 @@
+{
+ "callcallcode_01" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00",
+ "0xe6" : "0x00",
+ "0xe8" : "0x00",
+ "0xec" : "0x00",
+ "0xee" : "0x00",
+ "0xf0" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x04" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000000",
+ "0x07" : "0x01",
+ "0xe6" : "0x1000000000000000000000000000000000000001",
+ "0xe8" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0xec" : "0x40",
+ "0xee" : "0x21",
+ "0xf0" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x04" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 350000 0x1000000000000000000000000000000000000001 1 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 230 (ADDRESS)) (SSTORE 232 (ORIGIN)) (SSTORE 236 (CALLDATASIZE)) (SSTORE 238 (CODESIZE)) (SSTORE 240 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_OOGEFiller.json
new file mode 100644
index 000000000..6ae2dbc24
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_OOGEFiller.json
@@ -0,0 +1,115 @@
+{
+ "callcallcode_01_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (MSTORE 2 1)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_SuicideEndFiller.json
new file mode 100644
index 000000000..4bda92f08
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcode_01_SuicideEndFiller.json
@@ -0,0 +1,122 @@
+{
+ "callcallcode_01_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000002 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000000) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 2 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010Filler.json
new file mode 100644
index 000000000..780d10c6f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010Filler.json
@@ -0,0 +1,146 @@
+{
+ "callcallcodecall_010" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x05" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x01",
+ "0x05" : "0x1000000000000000000000000000000000000000"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x1000000000000000000000000000000000000003",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000001",
+ "0x07" : "0x02"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 350000 0x1000000000000000000000000000000000000001 1 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 300000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (CALL 250000 0x1000000000000000000000000000000000000003 2 0 64 0 64 ) (SSTORE 5 (CALLER))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGEFiller.json
new file mode 100644
index 000000000..a7bae21b9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGEFiller.json
@@ -0,0 +1,146 @@
+{
+ "callcallcodecall_010_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMAfterFiller.json
new file mode 100644
index 000000000..2a43806c5
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcallcodecall_010_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 60150 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20040 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMBeforeFiller.json
new file mode 100644
index 000000000..c8c5c1fe7
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcallcodecall_010_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideEndFiller.json
new file mode 100644
index 000000000..4fd87e2da
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideEndFiller.json
@@ -0,0 +1,127 @@
+{
+ "callcallcodecall_010_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x01"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideMiddleFiller.json
new file mode 100644
index 000000000..4f7a94616
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_010_SuicideMiddleFiller.json
@@ -0,0 +1,129 @@
+{
+ "callcallcodecall_010_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "storage" : {
+ "0x00" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000010000000000",
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..26f2a6a34
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecall_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,121 @@
+{
+ "callcallcodecall_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "25026070"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566207"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 25000000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 1000000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 500000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011Filler.json
new file mode 100644
index 000000000..df0e456b8
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011Filler.json
@@ -0,0 +1,130 @@
+{
+ "callcallcodecallcode_011" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x014a" : "0x1000000000000000000000000000000000000001",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x02" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000000",
+ "0x07" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 350000 0x1000000000000000000000000000000000000001 1 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 300000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGEFiller.json
new file mode 100644
index 000000000..6ffc53e00
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGEFiller.json
@@ -0,0 +1,146 @@
+{
+ "callcallcodecallcode_011_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMAfterFiller.json
new file mode 100644
index 000000000..85efea5d8
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcallcodecallcode_011_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 60140 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMBeforeFiller.json
new file mode 100644
index 000000000..036a0beb4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcallcodecallcode_011_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideEndFiller.json
new file mode 100644
index 000000000..d063762e6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideEndFiller.json
@@ -0,0 +1,135 @@
+{
+ "callcallcodecallcode_011_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideMiddleFiller.json
new file mode 100644
index 000000000..db52bc301
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_011_SuicideMiddleFiller.json
@@ -0,0 +1,112 @@
+{
+ "callcallcodecallcode_011_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 150000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..84035cc80
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcallcodecallcode_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,121 @@
+{
+ "callcallcodecallcode_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "25026070"
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566204"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (CALL 25000000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 1000000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 500000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10Filler.json
new file mode 100644
index 000000000..c594618ca
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10Filler.json
@@ -0,0 +1,115 @@
+{
+ "callcodecall_10" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00",
+ "0xe6" : "0x00",
+ "0xe8" : "0x00",
+ "0xec" : "0x00",
+ "0xee" : "0x00",
+ "0xf0" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000000",
+ "0x07" : "0x01",
+ "0xe6" : "0x1000000000000000000000000000000000000002",
+ "0xe8" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0xec" : "0x40",
+ "0xee" : "0x21",
+ "0xf0" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (CALL 250000 0x1000000000000000000000000000000000000002 1 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 230 (ADDRESS)) (SSTORE 232 (ORIGIN)) (SSTORE 236 (CALLDATASIZE)) (SSTORE 238 (CODESIZE)) (SSTORE 240 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_OOGEFiller.json
new file mode 100644
index 000000000..1b01eeb24
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_OOGEFiller.json
@@ -0,0 +1,123 @@
+{
+ "callcodecall_10_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 20020 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (MSTORE 2 1)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_SuicideEndFiller.json
new file mode 100644
index 000000000..24c13a279
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecall_10_SuicideEndFiller.json
@@ -0,0 +1,108 @@
+{
+ "callcodecall_10_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x01",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 50000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000000) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 2 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100Filler.json
new file mode 100644
index 000000000..c56e8b0f1
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100Filler.json
@@ -0,0 +1,134 @@
+{
+ "callcodecallcall_100" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x05" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x05" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x1000000000000000000000000000000000000003",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000002",
+ "0x07" : "0x02"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (CALL 300000 0x1000000000000000000000000000000000000002 1 0 64 0 64 ) (SSTORE 5 (CALLER))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (CALL 250000 0x1000000000000000000000000000000000000003 2 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGEFiller.json
new file mode 100644
index 000000000..90f1d0c52
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGEFiller.json
@@ -0,0 +1,148 @@
+{
+ "callcodecallcall_100_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMAfterFiller.json
new file mode 100644
index 000000000..11d9a1836
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcall_100_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 60150 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40080 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMBeforeFiller.json
new file mode 100644
index 000000000..10c2ceb06
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcall_100_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40080 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideEndFiller.json
new file mode 100644
index 000000000..dc96e9739
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideEndFiller.json
@@ -0,0 +1,139 @@
+{
+ "callcodecallcall_100_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x01"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideMiddleFiller.json
new file mode 100644
index 000000000..095aa16a4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_100_SuicideMiddleFiller.json
@@ -0,0 +1,127 @@
+{
+ "callcodecallcall_100_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000010000000000",
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..d639566a7
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcall_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,131 @@
+{
+ "callcodecallcall_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "30000000"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566207"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 25000000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 1000000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 500000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101Filler.json
new file mode 100644
index 000000000..923677ad6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101Filler.json
@@ -0,0 +1,152 @@
+{
+ "callcodecallcallcode_101" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x05" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x06" : "0x00",
+ "0x07" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x05" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x014a" : "0x1000000000000000000000000000000000000002",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x02" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000000",
+ "0x06" : "0x1000000000000000000000000000000000000000",
+ "0x07" : "0x01"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (CALL 300000 0x1000000000000000000000000000000000000002 1 0 64 0 64 ) (SSTORE 5 (CALLER)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000003 0 64 0 64 ) (SSTORE 6 (CALLER)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGEFiller.json
new file mode 100644
index 000000000..3ce2894d7
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGEFiller.json
@@ -0,0 +1,148 @@
+{
+ "callcodecallcallcode_101_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMAfterFiller.json
new file mode 100644
index 000000000..e37d41442
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcallcode_101_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 60150 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40080 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMBeforeFiller.json
new file mode 100644
index 000000000..ca55ca746
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcallcode_101_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (CALL 40080 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideEndFiller.json
new file mode 100644
index 000000000..ff2381247
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideEndFiller.json
@@ -0,0 +1,143 @@
+{
+ "callcodecallcallcode_101_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideMiddleFiller.json
new file mode 100644
index 000000000..e97e520bd
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_101_SuicideMiddleFiller.json
@@ -0,0 +1,127 @@
+{
+ "callcodecallcallcode_101_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000010000000000",
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 100000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..b6f04963e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcallcode_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,131 @@
+{
+ "callcodecallcallcode_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "30000000"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566204"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 25000000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (CALL 1000000 0x1000000000000000000000000000000000000002 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 500000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11Filler.json
new file mode 100644
index 000000000..417bc6f0e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11Filler.json
@@ -0,0 +1,145 @@
+{
+ "callcodecallcode_11" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00",
+ "0xe6" : "0x00",
+ "0xe8" : "0x00",
+ "0xec" : "0x00",
+ "0xee" : "0x00",
+ "0xf0" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01",
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x01",
+ "0x04" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0xe6" : "0x1000000000000000000000000000000000000000",
+ "0xe8" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0xec" : "0x40",
+ "0xee" : "0x21",
+ "0xf0" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "nonce" : "0x01",
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 230 (ADDRESS)) (SSTORE 232 (ORIGIN)) (SSTORE 236 (CALLDATASIZE)) (SSTORE 238 (CODESIZE)) (SSTORE 240 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_OOGEFiller.json
new file mode 100644
index 000000000..d0065581b
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_OOGEFiller.json
@@ -0,0 +1,125 @@
+{
+ "callcodecallcode_11_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 2 1) (MSTORE 2 1)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_SuicideEndFiller.json
new file mode 100644
index 000000000..c0209ef06
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcode_11_SuicideEndFiller.json
@@ -0,0 +1,110 @@
+{
+ "callcodecallcode_11_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000002 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000000) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 2 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110Filler.json
new file mode 100644
index 000000000..40b36f0d8
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110Filler.json
@@ -0,0 +1,140 @@
+{
+ "callcodecallcodecall_110" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x05" : "0x00",
+ "0x06" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00",
+ "0x07" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x01",
+ "0x05" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x06" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x014a" : "0x1000000000000000000000000000000000000003",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0x1000000000000000000000000000000000000000",
+ "0x07" : "0x01"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 300000 0x1000000000000000000000000000000000000002 0 64 0 64 ) (SSTORE 5 (CALLER))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (CALL 250000 0x1000000000000000000000000000000000000003 1 0 64 0 64 ) (SSTORE 6 (CALLER))}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGEFiller.json
new file mode 100644
index 000000000..dcd016ed6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGEFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcodecall_110_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMAfterFiller.json
new file mode 100644
index 000000000..170ccd6e4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcodecall_110_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 60150 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) (MSTORE 3 1)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMBeforeFiller.json
new file mode 100644
index 000000000..e065ede2e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_OOGMBeforeFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcodecall_110_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (CALL 20020 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideEndFiller.json
new file mode 100644
index 000000000..bc276895e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideEndFiller.json
@@ -0,0 +1,125 @@
+{
+ "callcodecallcodecall_110_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideMiddleFiller.json
new file mode 100644
index 000000000..d61663d6e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_110_SuicideMiddleFiller.json
@@ -0,0 +1,127 @@
+{
+ "callcodecallcodecall_110_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "shouldnotexist" : "1"
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (CALL 50000 0x1000000000000000000000000000000000000003 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..357c66cbc
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecall_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,131 @@
+{
+ "callcodecallcodecall_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "30000000"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566204"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 25000000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 1000000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (CALL 500000 0x1000000000000000000000000000000000000001 0 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111Filler.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111Filler.json
new file mode 100644
index 000000000..937140349
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111Filler.json
@@ -0,0 +1,130 @@
+{
+ "callcodecallcodecallcode_111" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x014a" : "0x00",
+ "0x014c" : "0x00",
+ "0x0150" : "0x00",
+ "0x0152" : "0x00",
+ "0x0154" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x014a" : "0x1000000000000000000000000000000000000000",
+ "0x014c" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x0150" : "0x40",
+ "0x0152" : "0x26",
+ "0x0154" : "0x01",
+ "0x02" : "0x01",
+ "0x03" : "0x01",
+ "0x04" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00",
+ "0x04" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 350000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 300000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 250000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (SSTORE 4 (CALLER)) (SSTORE 7 (CALLVALUE)) (SSTORE 330 (ADDRESS)) (SSTORE 332 (ORIGIN)) (SSTORE 336 (CALLDATASIZE)) (SSTORE 338 (CODESIZE)) (SSTORE 340 (GASPRICE)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGEFiller.json
new file mode 100644
index 000000000..c6f8835b0
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGEFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcodecallcode_111_OOGE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMAfterFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMAfterFiller.json
new file mode 100644
index 000000000..bcdcb5ca6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMAfterFiller.json
@@ -0,0 +1,150 @@
+{
+ "callcodecallcodecallcode_111_OOGMAfter" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 60140 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) (MSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMBeforeFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMBeforeFiller.json
new file mode 100644
index 000000000..c35817ae4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_OOGMBeforeFiller.json
@@ -0,0 +1,148 @@
+{
+ "callcodecallcodecallcode_111_OOGMBefore" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "0",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 40080 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "0",
+ "code" : "{ (MSTORE 3 1) [[ 2 ]] (DELEGATECALL 20020 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "0",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "172000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideEndFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideEndFiller.json
new file mode 100644
index 000000000..d79d0ae6e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideEndFiller.json
@@ -0,0 +1,120 @@
+{
+ "callcodecallcodecallcode_111_SuicideEnd" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) (SUICIDE 0x1000000000000000000000000000000000000001) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideMiddleFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideMiddleFiller.json
new file mode 100644
index 000000000..351353024
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_111_SuicideMiddleFiller.json
@@ -0,0 +1,128 @@
+{
+ "callcodecallcodecallcode_111_SuicideMiddle" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "30000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x02" : "0x00",
+ "0x03" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "storage" : {
+ "0x03" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 150000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 100000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ (SUICIDE 0x1000000000000000000000000000000000000000) [[ 2 ]] (DELEGATECALL 50000 0x1000000000000000000000000000000000000003 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000003" : {
+ "balance" : "10000000000",
+ "code" : "{ (SSTORE 3 1) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_ABCB_RECURSIVEFiller.json b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_ABCB_RECURSIVEFiller.json
new file mode 100644
index 000000000..4f5e250df
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stCallDelegateCodesHomestead/callcodecallcodecallcode_ABCB_RECURSIVEFiller.json
@@ -0,0 +1,131 @@
+{
+ "callcodecallcodecallcode_ABCB_RECURSIVE" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "3000000000",
+ "currentNumber" : "1150000",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Frontier",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x00",
+ "0x01" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "30000000"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ },
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : "Homestead",
+ "result" : {
+ "1000000000000000000000000000000000000000" : {
+ "storage" : {
+ "0x00" : "0x01",
+ "0x01" : "0x01"
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "storage" : {
+ "0x01" : "0x00",
+ "0x02" : "0x00"
+ }
+ },
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "566201"
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "storage" : {
+ "0x01" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "1000000000000000000000000000000000000000" : {
+ "balance" : "1000000000000000000",
+ "code" : "{ [[ 0 ]] (DELEGATECALL 25000000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000001" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 1 ]] (DELEGATECALL 1000000 0x1000000000000000000000000000000000000002 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "1000000000000000000000000000000000000002" : {
+ "balance" : "10000000000",
+ "code" : "{ [[ 2 ]] (DELEGATECALL 500000 0x1000000000000000000000000000000000000001 0 64 0 64 ) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "30000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "1000000000000000000000000000000000000000",
+ "value" : [
+ "0"
+ ]
+ }
+ }
+}