aboutsummaryrefslogtreecommitdiffstats
path: root/src/GeneralStateTestsFiller/stPreCompiledContracts
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/stPreCompiledContracts
parent35cfcf16190fc3e56ee11ead23452c633e2fca28 (diff)
downloaddexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.gz
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.bz2
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.lz
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.xz
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.tar.zst
dexon-tests-e2a69159c863d810a368eda8aa417290d95dc52e.zip
Test Fillers (Sources for the tests)
Diffstat (limited to 'src/GeneralStateTestsFiller/stPreCompiledContracts')
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_0inputFiller.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_Gas2999Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_NoGasFiller.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_completeReturnValueFiller.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_gas3000Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_overlappingInputOutputFiller.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover1Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover2Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover80Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverH_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverR_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverS_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverV_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_1_nonzeroValueFiller.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas17Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas18Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_postfixed0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_prefixed0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4_gas719Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1_nonzeroValueFiller.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_postfix0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_prefix0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4_gas99Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_0inputFiller.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_Gas2999Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_NoGasFiller.json58
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_completeReturnValueFiller.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_gas3000Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_overlappingInputOutputFiller.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover1Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover2Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover80Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthFiller.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthWrongVFiller.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverH_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverR_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverS_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverV_prefixed0Filler.json62
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_1_nonzeroValueFiller.json64
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas17Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas18Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_postfixed0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_prefixed0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4_gas719Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_0Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1_nonzeroValueFiller.json64
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_2Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_postfix0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_prefix0Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4_gas99Filler.json61
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_5Filler.json60
-rw-r--r--src/GeneralStateTestsFiller/stPreCompiledContracts/sec80Filler.json60
89 files changed, 5427 insertions, 0 deletions
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0Filler.json
new file mode 100644
index 000000000..08c74ec0d
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecover0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_0inputFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_0inputFiller.json
new file mode 100644
index 000000000..d15ed6741
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_0inputFiller.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEEcrecover0_0input" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_Gas2999Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_Gas2999Filler.json
new file mode 100644
index 000000000..acf8ff705
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_Gas2999Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEEcrecover0_Gas2999" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 2999 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_NoGasFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_NoGasFiller.json
new file mode 100644
index 000000000..126f6a723
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_NoGasFiller.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEEcrecover0_NoGas" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "45216"
+ },
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {}
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 0 1 1 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_completeReturnValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_completeReturnValueFiller.json
new file mode 100644
index 000000000..b25301e0f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_completeReturnValueFiller.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEEcrecover0_completeReturnValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 3000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_gas3000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_gas3000Filler.json
new file mode 100644
index 000000000..8d7c62ef7
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_gas3000Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecover0_gas3000" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 3000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_overlappingInputOutputFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_overlappingInputOutputFiller.json
new file mode 100644
index 000000000..dd66e00b9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover0_overlappingInputOutputFiller.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecover0_overlappingInputOutput" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 64 32) [[ 0 ]] (MOD (MLOAD 64) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover1Filler.json
new file mode 100644
index 000000000..9981c9087
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover1Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEEcrecover1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 1) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 100000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover2Filler.json
new file mode 100644
index 000000000..7f42449e4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover2Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEEcrecover2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 33 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 65 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 100000 1 0 0 97 97 32) [[ 0 ]] (MOD (MLOAD 97) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover3Filler.json
new file mode 100644
index 000000000..8ad4f7036
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEEcrecover3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe4319f4b631c6d0fcfc84045dbcb676865fe5e13",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x2f380a2dea7e778d81affc2443403b8fe4644db442ae4862ff5bb3732829cdb9) (MSTORE 32 27) (MSTORE 64 0x6b65ccb0558806e9b097f27a396d08f964e37b8b7af6ceeb516ff86739fbea0a) (MSTORE 96 0x37cbc8d883e129a4b1ef9d5f1df53c4f21a3ef147cf2a50a4ede0eb06ce092d4) [[ 2 ]] (CALLCODE 100000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover80Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover80Filler.json
new file mode 100644
index 000000000..16286fd1e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecover80Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecover80" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x00b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0x00b940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverH_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverH_prefixed0Filler.json
new file mode 100644
index 000000000..b3a3ea7fe
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverH_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecoverH_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa0b29af6a56d6cfef6415cb195ccbe540e006d0a",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverR_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverR_prefixed0Filler.json
new file mode 100644
index 000000000..97a0b4555
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverR_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecoverR_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x00b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverS_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverS_prefixed0Filler.json
new file mode 100644
index 000000000..79f3287a3
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverS_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecoverS_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xb4950a7fad428434b11c357fa6d4b4bcd3096a5d",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0x00b940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverV_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverV_prefixed0Filler.json
new file mode 100644
index 000000000..951709c9c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEEcrecoverV_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CALLCODEEcrecoverV_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 0x001c) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALLCODE 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_0Filler.json
new file mode 100644
index 000000000..2b86527b0
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEIdentitiy_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0000000000000000000000000000000000000000000000000000000000000001"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600460fff2600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_1Filler.json
new file mode 100644
index 000000000..eac090133
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentitiy_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentitiy_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 500 4 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_1_nonzeroValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_1_nonzeroValueFiller.json
new file mode 100644
index 000000000..a59b55194
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_1_nonzeroValueFiller.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_1_nonzeroValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "100000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "200000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 200000 4 0x13 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_2Filler.json
new file mode 100644
index 000000000..8ef32a013
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x000000000000000000000000000000000000000000000000000000f34578907f",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALLCODE 500 4 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_3Filler.json
new file mode 100644
index 000000000..3c2308c91
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x000000000000000000000000000000000000000000000000000000f34578907f",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALLCODE 500 4 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4Filler.json
new file mode 100644
index 000000000..acbecbbfe
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 100 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas17Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas17Filler.json
new file mode 100644
index 000000000..f94f32c19
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas17Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_4_gas17" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 17 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas18Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas18Filler.json
new file mode 100644
index 000000000..49e0af035
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_4_gas18Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODEIdentity_4_gas18" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 18 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_5Filler.json
new file mode 100644
index 000000000..5898a2db9
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODEIdentity_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODEIdentity_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 600 4 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_0Filler.json
new file mode 100644
index 000000000..c948cc05b
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODERipemd160_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600360fff2600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_1Filler.json
new file mode 100644
index 000000000..792038f9a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x9c1185a5c5e9fc54612808977ee8f548b2258d31",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 600 3 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_2Filler.json
new file mode 100644
index 000000000..0e76954d3
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0xdbc100f916bfbc53535573d98cf0cbb3a5b36124",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 5 0xf34578907f) [[ 2 ]] (CALLCODE 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3Filler.json
new file mode 100644
index 000000000..d4b3decef
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x316750573f9be26bc17727b47cacedbd0ab3e6ca",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALLCODE 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_postfixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_postfixed0Filler.json
new file mode 100644
index 000000000..02272e2e3
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_postfixed0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_3_postfixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x7730b4642169b0f16752696da8da830a4b429c9d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f00) [[ 2 ]] (CALLCODE 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_prefixed0Filler.json
new file mode 100644
index 000000000..bba183a4e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_3_prefixed0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_3_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x316750573f9be26bc17727b47cacedbd0ab3e6ca",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00f34578907f) [[ 2 ]] (CALLCODE 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4Filler.json
new file mode 100644
index 000000000..5b2903154
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODERipemd160_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x1cf4e77f5966e13e109703cd8a0df7ceda7f3dc3",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 720 3 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4_gas719Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4_gas719Filler.json
new file mode 100644
index 000000000..7219dc00b
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_4_gas719Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODERipemd160_4_gas719" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 719 3 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_5Filler.json
new file mode 100644
index 000000000..8d2582739
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODERipemd160_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODERipemd160_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 6000 3 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_0Filler.json
new file mode 100644
index 000000000..04b420d9f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODESha256_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xec4916dd28fc4c10d78e287ca5d9cc51ee1ae73cbfde08c6b37324cbfaac8bc5"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600260fff2600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1Filler.json
new file mode 100644
index 000000000..5e3862e4e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 500 2 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1_nonzeroValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1_nonzeroValueFiller.json
new file mode 100644
index 000000000..0a5e996df
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_1_nonzeroValueFiller.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_1_nonzeroValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "100000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "200000000",
+ "code" : "{ [[ 2 ]] (CALLCODE 200000 2 0x13 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_2Filler.json
new file mode 100644
index 000000000..a25b0390a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xcb39b3bde22925b2f931111130c774761d8895e0e08437c9b396c1e97d10f34d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 5 0xf34578907f) [[ 2 ]] (CALLCODE 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3Filler.json
new file mode 100644
index 000000000..cabd6954a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x7392925565d67be8e9620aacbcfaecd8cb6ec58d709d25da9eccf1d08a41ce35",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALLCODE 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_postfix0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_postfix0Filler.json
new file mode 100644
index 000000000..73f471c70
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_postfix0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_3_postfix0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x3b745a1c00d035c334f358d007a430e4cf0ae63aa0556fb05529706de546464d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f00) [[ 2 ]] (CALLCODE 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_prefix0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_prefix0Filler.json
new file mode 100644
index 000000000..630aad46a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_3_prefix0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_3_prefix0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x7392925565d67be8e9620aacbcfaecd8cb6ec58d709d25da9eccf1d08a41ce35",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00f34578907f) [[ 2 ]] (CALLCODE 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4Filler.json
new file mode 100644
index 000000000..fbec7d004
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xaf9613760f72635fbdb44a5a0a63c39f12af30f950a6ee5c971be188e89c4051",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 100 2 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4_gas99Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4_gas99Filler.json
new file mode 100644
index 000000000..42cfacec6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_4_gas99Filler.json
@@ -0,0 +1,61 @@
+{
+ "CALLCODESha256_4_gas99" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xaf9613760f72635fbdb44a5a0a63c39f12af30f950a6ee5c971be188e89c4051",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 99 2 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_5Filler.json
new file mode 100644
index 000000000..3fe53928c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CALLCODESha256_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CALLCODESha256_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALLCODE 600 2 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0Filler.json
new file mode 100644
index 000000000..be1547324
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecover0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_0inputFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_0inputFiller.json
new file mode 100644
index 000000000..6c4645a8b
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_0inputFiller.json
@@ -0,0 +1,60 @@
+{
+ "CallEcrecover0_0input" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_Gas2999Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_Gas2999Filler.json
new file mode 100644
index 000000000..25783b36e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_Gas2999Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallEcrecover0_Gas2999" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 2999 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_NoGasFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_NoGasFiller.json
new file mode 100644
index 000000000..d5027bbd2
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_NoGasFiller.json
@@ -0,0 +1,58 @@
+{
+ "CallEcrecover0_NoGas" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba" : {
+ "balance" : "70216"
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 0 1 1 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_completeReturnValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_completeReturnValueFiller.json
new file mode 100644
index 000000000..dffb272de
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_completeReturnValueFiller.json
@@ -0,0 +1,61 @@
+{
+ "CallEcrecover0_completeReturnValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 3000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_gas3000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_gas3000Filler.json
new file mode 100644
index 000000000..d22ce9500
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_gas3000Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecover0_gas3000" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 3000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_overlappingInputOutputFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_overlappingInputOutputFiller.json
new file mode 100644
index 000000000..267d46be2
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover0_overlappingInputOutputFiller.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecover0_overlappingInputOutput" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 64 32) [[ 0 ]] (MOD (MLOAD 64) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover1Filler.json
new file mode 100644
index 000000000..196a69ffd
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover1Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallEcrecover1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 1) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 100000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover2Filler.json
new file mode 100644
index 000000000..27d08437e
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover2Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallEcrecover2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 33 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 65 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 100000 1 0 0 97 97 32) [[ 0 ]] (MOD (MLOAD 97) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover3Filler.json
new file mode 100644
index 000000000..c53322d56
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallEcrecover3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe4319f4b631c6d0fcfc84045dbcb676865fe5e13",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x2f380a2dea7e778d81affc2443403b8fe4644db442ae4862ff5bb3732829cdb9) (MSTORE 32 27) (MSTORE 64 0x6b65ccb0558806e9b097f27a396d08f964e37b8b7af6ceeb516ff86739fbea0a) (MSTORE 96 0x37cbc8d883e129a4b1ef9d5f1df53c4f21a3ef147cf2a50a4ede0eb06ce092d4) [[ 2 ]] (CALL 100000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover80Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover80Filler.json
new file mode 100644
index 000000000..cf85449b6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecover80Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecover80" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x00b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0x00b940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthFiller.json
new file mode 100644
index 000000000..f3d25d1b6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthFiller.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverCheckLength" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x80",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 128 0x1122334455667788990011223344556677889900112233445566778899001122) (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) [[ 1 ]] MSIZE }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthWrongVFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthWrongVFiller.json
new file mode 100644
index 000000000..d3a8cc76d
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverCheckLengthWrongVFiller.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverCheckLengthWrongV" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x1122334455667788990011223344556677889900112233445566778899001122",
+ "0x01" : "0x80",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 128 0x1122334455667788990011223344556677889900112233445566778899001122) (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 29) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MLOAD 128) [[ 1 ]] MSIZE }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverH_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverH_prefixed0Filler.json
new file mode 100644
index 000000000..61c0b87f4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverH_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverH_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa0b29af6a56d6cfef6415cb195ccbe540e006d0a",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverR_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverR_prefixed0Filler.json
new file mode 100644
index 000000000..6d3143dba
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverR_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverR_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x00b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverS_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverS_prefixed0Filler.json
new file mode 100644
index 000000000..3d54ca6d4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverS_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverS_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xb4950a7fad428434b11c357fa6d4b4bcd3096a5d",
+ "0x01" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 28) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0x00b940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverV_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverV_prefixed0Filler.json
new file mode 100644
index 000000000..598a38f1a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallEcrecoverV_prefixed0Filler.json
@@ -0,0 +1,62 @@
+{
+ "CallEcrecoverV_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
+ "0x01" : "0x01",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x18c547e4f7b0f325ad1e56f57e26c745b09a3e503d86e00e5255ff7f715d3d1c) (MSTORE 32 0x001c) (MSTORE 64 0x73b1693892219d736caba55bdb67216e485557ea6b6af75f37096c9aa6a5a75f) (MSTORE 96 0xeeb940b1d03b21e36b0e47e79769f095fe2ab855bd91e3a38756b7d75a9c4549) [[ 2 ]] (CALL 300000 1 0 0 128 128 32) [[ 0 ]] (MOD (MLOAD 128) (EXP 2 160)) [[ 1 ]] (EQ (ORIGIN) (SLOAD 0)) }",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "3652240"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+}
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_0Filler.json
new file mode 100644
index 000000000..749adea8a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallIdentitiy_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0000000000000000000000000000000000000000000000000000000000000001"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600460fff1600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_1Filler.json
new file mode 100644
index 000000000..2f04a0812
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentitiy_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentitiy_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALL 500 4 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_1_nonzeroValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_1_nonzeroValueFiller.json
new file mode 100644
index 000000000..fdc9724fb
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_1_nonzeroValueFiller.json
@@ -0,0 +1,64 @@
+{
+ "CallIdentity_1_nonzeroValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "100000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "0000000000000000000000000000000000000004" : {
+ "balance" : "19"
+ },
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x00",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "200000000",
+ "code" : "{ [[ 2 ]] (CALL 200000 4 0x13 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_2Filler.json
new file mode 100644
index 000000000..78259ee01
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentity_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x000000000000000000000000000000000000000000000000000000f34578907f",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALL 500 4 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_3Filler.json
new file mode 100644
index 000000000..253155010
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentity_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x000000000000000000000000000000000000000000000000000000f34578907f",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALL 500 4 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4Filler.json
new file mode 100644
index 000000000..0620239e6
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentity_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 100 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas17Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas17Filler.json
new file mode 100644
index 000000000..f17932d95
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas17Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentity_4_gas17" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x00"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 17 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas18Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas18Filler.json
new file mode 100644
index 000000000..57679ebe3
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_4_gas18Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallIdentity_4_gas18" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 18 4 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_5Filler.json
new file mode 100644
index 000000000..142cab66c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallIdentity_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallIdentity_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 600 4 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_0Filler.json
new file mode 100644
index 000000000..4b135b739
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallRipemd160_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600360fff1600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_1Filler.json
new file mode 100644
index 000000000..53edf4501
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x9c1185a5c5e9fc54612808977ee8f548b2258d31",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALL 600 3 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_2Filler.json
new file mode 100644
index 000000000..58e73a14c
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0xdbc100f916bfbc53535573d98cf0cbb3a5b36124",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 5 0xf34578907f) [[ 2 ]] (CALL 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3Filler.json
new file mode 100644
index 000000000..9f0ff6ce4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x316750573f9be26bc17727b47cacedbd0ab3e6ca",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALL 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_postfixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_postfixed0Filler.json
new file mode 100644
index 000000000..d978ae839
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_postfixed0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_3_postfixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x7730b4642169b0f16752696da8da830a4b429c9d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f00) [[ 2 ]] (CALL 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_prefixed0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_prefixed0Filler.json
new file mode 100644
index 000000000..2286085a2
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_3_prefixed0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_3_prefixed0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x316750573f9be26bc17727b47cacedbd0ab3e6ca",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00f34578907f) [[ 2 ]] (CALL 6000 3 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4Filler.json
new file mode 100644
index 000000000..54e435559
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallRipemd160_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0x1cf4e77f5966e13e109703cd8a0df7ceda7f3dc3",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 720 3 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4_gas719Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4_gas719Filler.json
new file mode 100644
index 000000000..7e23f36e4
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_4_gas719Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallRipemd160_4_gas719" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 719 3 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_5Filler.json
new file mode 100644
index 000000000..b7669577f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallRipemd160_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallRipemd160_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 6000 3 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_0Filler.json
new file mode 100644
index 000000000..a3faa0f75
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_0Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallSha256_0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xec4916dd28fc4c10d78e287ca5d9cc51ee1ae73cbfde08c6b37324cbfaac8bc5"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x600160005260206000602060006000600260fff1600051600055",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1Filler.json
new file mode 100644
index 000000000..87c8ccc9a
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_1" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ [[ 2 ]] (CALL 500 2 0 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1_nonzeroValueFiller.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1_nonzeroValueFiller.json
new file mode 100644
index 000000000..0b46784aa
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_1_nonzeroValueFiller.json
@@ -0,0 +1,64 @@
+{
+ "CallSha256_1_nonzeroValue" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "100000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "0000000000000000000000000000000000000002" : {
+ "balance" : "19"
+ },
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "200000000",
+ "code" : "{ [[ 2 ]] (CALL 200000 2 0x13 0 0 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_2Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_2Filler.json
new file mode 100644
index 000000000..0142d8095
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_2Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_2" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xcb39b3bde22925b2f931111130c774761d8895e0e08437c9b396c1e97d10f34d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 5 0xf34578907f) [[ 2 ]] (CALL 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3Filler.json
new file mode 100644
index 000000000..246b55bba
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_3" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x7392925565d67be8e9620aacbcfaecd8cb6ec58d709d25da9eccf1d08a41ce35",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f) [[ 2 ]] (CALL 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_postfix0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_postfix0Filler.json
new file mode 100644
index 000000000..c389a3021
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_postfix0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_3_postfix0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x3b745a1c00d035c334f358d007a430e4cf0ae63aa0556fb05529706de546464d",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xf34578907f00) [[ 2 ]] (CALL 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_prefix0Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_prefix0Filler.json
new file mode 100644
index 000000000..9105dd0bd
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_3_prefix0Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_3_prefix0" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0x7392925565d67be8e9620aacbcfaecd8cb6ec58d709d25da9eccf1d08a41ce35",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0x00f34578907f) [[ 2 ]] (CALL 500 2 0 0 37 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4Filler.json
new file mode 100644
index 000000000..0a85f1b75
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_4" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xaf9613760f72635fbdb44a5a0a63c39f12af30f950a6ee5c971be188e89c4051",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 100 2 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4_gas99Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4_gas99Filler.json
new file mode 100644
index 000000000..ec5667a9f
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_4_gas99Filler.json
@@ -0,0 +1,61 @@
+{
+ "CallSha256_4_gas99" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xaf9613760f72635fbdb44a5a0a63c39f12af30f950a6ee5c971be188e89c4051",
+ "0x02" : "0x01"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 99 2 0 0 32 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "365224"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_5Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_5Filler.json
new file mode 100644
index 000000000..ad5655262
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/CallSha256_5Filler.json
@@ -0,0 +1,60 @@
+{
+ "CallSha256_5" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x" : "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "{ (MSTORE 0 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) [[ 2 ]] (CALL 600 2 0 0 1000000 0 32) [[ 0 ]] (MLOAD 0)}",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/sec80Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/sec80Filler.json
new file mode 100644
index 000000000..36e1b9393
--- /dev/null
+++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/sec80Filler.json
@@ -0,0 +1,60 @@
+{
+ "sec80" : {
+ "env" : {
+ "currentCoinbase" : "2adc25665018aa1fe0e6bc666dac8fc2697ff9ba",
+ "currentDifficulty" : "256",
+ "currentGasLimit" : "10000000",
+ "currentNumber" : "0",
+ "currentTimestamp" : 1,
+ "previousHash" : "5e20a0453cecd065ea59c37ac63e079ee08998b6045136a8ce6635c7912ec0b6"
+ },
+ "expect" : [
+ {
+ "indexes" : {
+ "data" : -1,
+ "gas" : -1,
+ "value" : -1
+ },
+ "network" : ["Frontier", "Homestead"],
+ "result" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "storage" : {
+ "0x00" : "0xc001f00d"
+ }
+ }
+ }
+ }
+ ],
+ "pre" : {
+ "095e7baea6a6c7c4c2dfeb977efac326af552d87" : {
+ "balance" : "20000000",
+ "code" : "0x601b565b6000555b005b630badf00d6003565b63c001f00d6003565b7319e7e376e7c213b7e7e7e46cc70a5dd086daff2a7f22ae6da6b482f9b1b19b0b897c3fd43884180a1c5ee361e1107a1bc635649dda600052601b603f537f16433dce375ce6dc8151d3f0a22728bc4a1d9fd6ed39dfd18b4609331937367f6040527f306964c0cf5d74f04129fdc60b54d35b596dde1bf89ad92cb4123318f4c0e40060605260206080607f60006000600161fffff21560075760805114601257600956",
+ "nonce" : "0",
+ "storage" : {
+ }
+ },
+ "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : {
+ "balance" : "1000000000000000000",
+ "code" : "",
+ "nonce" : "0",
+ "storage" : {
+ }
+ }
+ },
+ "transaction" : {
+ "data" : [
+ ""
+ ],
+ "gasLimit" : [
+ "10000000"
+ ],
+ "gasPrice" : "1",
+ "nonce" : "0",
+ "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8",
+ "to" : "095e7baea6a6c7c4c2dfeb977efac326af552d87",
+ "value" : [
+ "100000"
+ ]
+ }
+ }
+} \ No newline at end of file