diff options
192 files changed, 32276 insertions, 0 deletions
diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_1000000.json new file mode 100644 index 000000000..b6f53587c --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x4c3825454feab2d6b0da8514726edc73460ba022716f8aadf7610988def5449b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x4c3825454feab2d6b0da8514726edc73460ba022716f8aadf7610988def5449b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9858" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_155000.json new file mode 100644 index 000000000..395601f57 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xc45f45ae070efb966cb524c03d20097525377219b3ba24c1d73a1905491d4c66", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xc45f45ae070efb966cb524c03d20097525377219b3ba24c1d73a1905491d4c66", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b390" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_20500.json new file mode 100644 index 000000000..3b44aac61 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4cb81bc296b7700b2ea0e4cd94a5f4e2f4c67df0e6232d66254e6370ce055be3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4cb81bc296b7700b2ea0e4cd94a5f4e2f4c67df0e6232d66254e6370ce055be3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x4cb81bc296b7700b2ea0e4cd94a5f4e2f4c67df0e6232d66254e6370ce055be3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x4cb81bc296b7700b2ea0e4cd94a5f4e2f4c67df0e6232d66254e6370ce055be3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x4cb81bc296b7700b2ea0e4cd94a5f4e2f4c67df0e6232d66254e6370ce055be3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa62c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_22000.json new file mode 100644 index 000000000..0a256739e --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3eb47ef1222fdf484852d249cf453602253b8ec77ae3324c0b93a096bf5ce5d7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3eb47ef1222fdf484852d249cf453602253b8ec77ae3324c0b93a096bf5ce5d7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xac08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_25000.json new file mode 100644 index 000000000..07f0bc3ed --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x93afda1fc15e0a061dcf1fb996f09107a2489a06164f2f00c2e7711ea8b9a7a1", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x93afda1fc15e0a061dcf1fb996f09107a2489a06164f2f00c2e7711ea8b9a7a1", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb7c0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_35000.json new file mode 100644 index 000000000..74bfb9189 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_0_0_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_0_0_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x93f18729e40efc9a67066b12285e686204e77169a4584a09cd7e8dc74c98a098", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x93f18729e40efc9a67066b12285e686204e77169a4584a09cd7e8dc74c98a098", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa23fba7b3b1924e71de309a0b1ff583fd6f6911c003ae17e9653df5bbd5a2694", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xded0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_1000000.json new file mode 100644 index 000000000..607d6a6b6 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa0e93870cf059bad4fe1b0db6fd0914a4dc294b27474a26e4581d8c697fd835f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa0e93870cf059bad4fe1b0db6fd0914a4dc294b27474a26e4581d8c697fd835f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9958" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_155000.json new file mode 100644 index 000000000..53bbb04f9 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x7b22739b6ffd93e673aee9a517a03ebb9d6a68e7d69ca98abda84a08c36fbec7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x7b22739b6ffd93e673aee9a517a03ebb9d6a68e7d69ca98abda84a08c36fbec7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b490" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_20500.json new file mode 100644 index 000000000..8ab23d436 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa72c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_22000.json new file mode 100644 index 000000000..3c2c4141e --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x9eb7c45f7fb8889481a1c18e21575bb4a035cd588eabd57553d147dae0d8f9c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x9eb7c45f7fb8889481a1c18e21575bb4a035cd588eabd57553d147dae0d8f9c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xad08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_25000.json new file mode 100644 index 000000000..a2779bc2f --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa07951092cdeecec2857342282f5e461fce73670808cf9b2db90c023247362ba", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa07951092cdeecec2857342282f5e461fce73670808cf9b2db90c023247362ba", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb8c0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_35000.json new file mode 100644 index 000000000..cc550d371 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_1_0_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_1_0_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x1c18fc303b0ca8c35dc2e026d4cff5555afeed33d68509fc816df18be5a94423", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x1c18fc303b0ca8c35dc2e026d4cff5555afeed33d68509fc816df18be5a94423", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xdfd0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_1000000.json new file mode 100644 index 000000000..c590352ff --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x007e3a7b8f2352e0de39679b9c52d5c2b0f7b91e80a5425cd350e7556759b156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x007e3a7b8f2352e0de39679b9c52d5c2b0f7b91e80a5425cd350e7556759b156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf99d8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_155000.json new file mode 100644 index 000000000..a9c31ed3e --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x9661fd692d26c7f8762d4416e577c60dba838799e4a0d51584f1370f3d5c6076", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x9661fd692d26c7f8762d4416e577c60dba838799e4a0d51584f1370f3d5c6076", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b510" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_20500.json new file mode 100644 index 000000000..ea5966213 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa7ac" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_22000.json new file mode 100644 index 000000000..76b05ff4f --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3a86b9de7d6c7156712983497ba939a75bbd2dce10e9a82b2227066b4ceac0bb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3a86b9de7d6c7156712983497ba939a75bbd2dce10e9a82b2227066b4ceac0bb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xad88" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_25000.json new file mode 100644 index 000000000..1141d3c51 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xdb6070a37265043480daad1f3820a9c1d6086c12809f61c3a1c7b45f7b72dcc3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xdb6070a37265043480daad1f3820a9c1d6086c12809f61c3a1c7b45f7b72dcc3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb940" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_35000.json new file mode 100644 index 000000000..3799e8afe --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_0_3_100_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_0_3_100_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xb1b6ffcf4816d38c2477f1e4d334ed56aa20f1c4a95d93b33e1a75bfdbb48404", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xb1b6ffcf4816d38c2477f1e4d334ed56aa20f1c4a95d93b33e1a75bfdbb48404", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe050" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_1000000.json new file mode 100644 index 000000000..3d572e46d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa0e93870cf059bad4fe1b0db6fd0914a4dc294b27474a26e4581d8c697fd835f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa0e93870cf059bad4fe1b0db6fd0914a4dc294b27474a26e4581d8c697fd835f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9958" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_155000.json new file mode 100644 index 000000000..f44a033c1 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x7b22739b6ffd93e673aee9a517a03ebb9d6a68e7d69ca98abda84a08c36fbec7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x7b22739b6ffd93e673aee9a517a03ebb9d6a68e7d69ca98abda84a08c36fbec7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b490" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_20500.json new file mode 100644 index 000000000..1742f3044 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xbb43e24b4c20d1136460e54a8acde649023744c1f692fd8b9315d7a042c89f44", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa72c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_22000.json new file mode 100644 index 000000000..e940a8191 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x9eb7c45f7fb8889481a1c18e21575bb4a035cd588eabd57553d147dae0d8f9c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x9eb7c45f7fb8889481a1c18e21575bb4a035cd588eabd57553d147dae0d8f9c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xad08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_25000.json new file mode 100644 index 000000000..8efd2f048 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa07951092cdeecec2857342282f5e461fce73670808cf9b2db90c023247362ba", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa07951092cdeecec2857342282f5e461fce73670808cf9b2db90c023247362ba", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb8c0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_35000.json new file mode 100644 index 000000000..ca9cfa602 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_0_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_0_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x1c18fc303b0ca8c35dc2e026d4cff5555afeed33d68509fc816df18be5a94423", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x1c18fc303b0ca8c35dc2e026d4cff5555afeed33d68509fc816df18be5a94423", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6c2b9fcad463cde231b39b79bf1da3c33d3ff5ab903c4da9b2c5773dd5787ffe", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xdfd0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_1000000.json new file mode 100644 index 000000000..72ab85e21 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x007e3a7b8f2352e0de39679b9c52d5c2b0f7b91e80a5425cd350e7556759b156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x007e3a7b8f2352e0de39679b9c52d5c2b0f7b91e80a5425cd350e7556759b156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf99d8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_155000.json new file mode 100644 index 000000000..7c5d6dca0 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x9661fd692d26c7f8762d4416e577c60dba838799e4a0d51584f1370f3d5c6076", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x9661fd692d26c7f8762d4416e577c60dba838799e4a0d51584f1370f3d5c6076", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b510" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_20500.json new file mode 100644 index 000000000..09ce8a075 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x2b8da6677e55d94476680c71022ea73c269c9a47550b6f3ea1a227e8b73b84ef", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa7ac" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_22000.json new file mode 100644 index 000000000..be9317946 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3a86b9de7d6c7156712983497ba939a75bbd2dce10e9a82b2227066b4ceac0bb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3a86b9de7d6c7156712983497ba939a75bbd2dce10e9a82b2227066b4ceac0bb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xad88" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_25000.json new file mode 100644 index 000000000..354bfed02 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xdb6070a37265043480daad1f3820a9c1d6086c12809f61c3a1c7b45f7b72dcc3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xdb6070a37265043480daad1f3820a9c1d6086c12809f61c3a1c7b45f7b72dcc3", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb940" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_35000.json new file mode 100644 index 000000000..4098d2f0b --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_0_1_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_0_1_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xb1b6ffcf4816d38c2477f1e4d334ed56aa20f1c4a95d93b33e1a75bfdbb48404", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xb1b6ffcf4816d38c2477f1e4d334ed56aa20f1c4a95d93b33e1a75bfdbb48404", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xdacade500da9d396a3311376858dac04e8c9c820a3ee9d8b87a18a7acabb66c9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe050" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_1000000.json new file mode 100644 index 000000000..4b967574a --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3664e864e10a81a12bd2793b83ab71cb27832742a848c467c129f49a3bfeb21c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3664e864e10a81a12bd2793b83ab71cb27832742a848c467c129f49a3bfeb21c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9a58" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_155000.json new file mode 100644 index 000000000..e8a43171c --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2a433c99d44882387ed86d759e02a260171828d4425b19c3f0b57392dfe65156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2a433c99d44882387ed86d759e02a260171828d4425b19c3f0b57392dfe65156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b590" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_20500.json new file mode 100644 index 000000000..860feec82 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa82c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_22000.json new file mode 100644 index 000000000..d0596ced6 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x384ac2b53fbe640f387287a2003a692315bcc82bb52834e63ad41306d38b3a6d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x384ac2b53fbe640f387287a2003a692315bcc82bb52834e63ad41306d38b3a6d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xae08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_25000.json new file mode 100644 index 000000000..e9ddb6b71 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x25bfcccff0916b282b8d6892c0b9829b45a41e06144720a2066ed542cc3b778a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x25bfcccff0916b282b8d6892c0b9829b45a41e06144720a2066ed542cc3b778a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb9c0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_35000.json new file mode 100644 index 000000000..5458a2339 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_1_1_1_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_1_1_1_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa711cfe2614927965c0f7e84e11cf6c96978548d692ae2cab096161efe009fc7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa711cfe2614927965c0f7e84e11cf6c96978548d692ae2cab096161efe009fc7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe0d0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_22411_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_22411_22000.json new file mode 100644 index 000000000..a161f3f0b --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_22411_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_22411_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf1c8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_1000000.json new file mode 100644 index 000000000..e7ee3bc01 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x4d440e0a27495c893e3b9063d75ad8eb62b345898fefec7b1d1427604d904ced", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x4d440e0a27495c893e3b9063d75ad8eb62b345898fefec7b1d1427604d904ced", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x26b9d5e75db1b7ebe7ef3e6b898767eec4555cc3915eea28df1f59189df1e6c0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0xfdd18" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_155000.json new file mode 100644 index 000000000..a2572bdc4 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x47e7100b12093da81a343618941605c265ae15b4df6f13bb7fe0c6fce59a38b8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x47e7100b12093da81a343618941605c265ae15b4df6f13bb7fe0c6fce59a38b8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x47e7100b12093da81a343618941605c265ae15b4df6f13bb7fe0c6fce59a38b8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x2f850" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_20500.json new file mode 100644 index 000000000..40061651a --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x93b73788b166855152cda77a36402c0c28961149e5b1ae3594ec663150c29d12", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x93b73788b166855152cda77a36402c0c28961149e5b1ae3594ec663150c29d12", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x93b73788b166855152cda77a36402c0c28961149e5b1ae3594ec663150c29d12", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x93b73788b166855152cda77a36402c0c28961149e5b1ae3594ec663150c29d12", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x93b73788b166855152cda77a36402c0c28961149e5b1ae3594ec663150c29d12", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0xeaec" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_22000.json new file mode 100644 index 000000000..3bb4e1521 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xecf14d481f871dd6b0234af0eff89cd3cc6eca52e910770e3d409c733a225288", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xecf14d481f871dd6b0234af0eff89cd3cc6eca52e910770e3d409c733a225288", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xecf14d481f871dd6b0234af0eff89cd3cc6eca52e910770e3d409c733a225288", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0xf0c8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_25000.json new file mode 100644 index 000000000..76d7b977a --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xc1fce9909fb92c01134cb00e80f0cb502b9dacd836d955c3398012db3e16d2c4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xc1fce9909fb92c01134cb00e80f0cb502b9dacd836d955c3398012db3e16d2c4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xc1fce9909fb92c01134cb00e80f0cb502b9dacd836d955c3398012db3e16d2c4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0xfc80" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_35000.json new file mode 100644 index 000000000..c978f160c --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_0_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_0_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4a9f3c02264be23434edf1f0346e525828b0e575617d6fcc32bd5a8882c64b38", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x9813e1a8a0e547953cc40ac606b5dbea795bbadda164585cf6c6db5648ca4bc2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x9813e1a8a0e547953cc40ac606b5dbea795bbadda164585cf6c6db5648ca4bc2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x9813e1a8a0e547953cc40ac606b5dbea795bbadda164585cf6c6db5648ca4bc2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x12390" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_1000000.json new file mode 100644 index 000000000..360e56a4d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_1_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x7989f47b9a8495b8bebf3810a035b1e8e803862cb80930831979f6194e6b8970", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x7989f47b9a8495b8bebf3810a035b1e8e803862cb80930831979f6194e6b8970", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xbbb53e804540183332525ae3893a92ba06c3529aa10caf0c34df2c0d2c4291b0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfde18" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_155000.json new file mode 100644 index 000000000..da593ae8d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_1_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2f950" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_20500.json new file mode 100644 index 000000000..a6355e666 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_1_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xebec" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_25000.json new file mode 100644 index 000000000..c0f512c2b --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_1_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfd80" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_35000.json new file mode 100644 index 000000000..e2770b17d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_1_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_1_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x12490" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_1000000.json new file mode 100644 index 000000000..3a52d35b7 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe1ad81867242795a4e40ff6a8baa644a48fdddedf627b5cb6fee2d6ebf8b5fe7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe1ad81867242795a4e40ff6a8baa644a48fdddedf627b5cb6fee2d6ebf8b5fe7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x0b858c01da05ac6951b0af7b3f2cb6f4913c248be4ee0e5b5a1d0bb51608d456", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0xfff58" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_155000.json new file mode 100644 index 000000000..2abfd6dab --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x26452b5230b198654a03c73c6a8589a6d6e5907becde6845f679b9131f41f951", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x26452b5230b198654a03c73c6a8589a6d6e5907becde6845f679b9131f41f951", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x26452b5230b198654a03c73c6a8589a6d6e5907becde6845f679b9131f41f951", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x31a90" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_20500.json new file mode 100644 index 000000000..1e2e66d68 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x0a955fccb8b4f105308acbe4e06db82a4625b26d15c5e463d17d1f3e667504e9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x0a955fccb8b4f105308acbe4e06db82a4625b26d15c5e463d17d1f3e667504e9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x0a955fccb8b4f105308acbe4e06db82a4625b26d15c5e463d17d1f3e667504e9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x0a955fccb8b4f105308acbe4e06db82a4625b26d15c5e463d17d1f3e667504e9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x0a955fccb8b4f105308acbe4e06db82a4625b26d15c5e463d17d1f3e667504e9", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x10d2c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_22000.json new file mode 100644 index 000000000..d1f663248 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2459bf359ac33292153bca5caeb9fef4465db441b5365fc2419f7499718aa732", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2459bf359ac33292153bca5caeb9fef4465db441b5365fc2419f7499718aa732", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x2459bf359ac33292153bca5caeb9fef4465db441b5365fc2419f7499718aa732", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x11308" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_25000.json new file mode 100644 index 000000000..7e76688e9 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3589ad89e447ab9a7f1197873b0883b9d1bd25f21d35390a20829fc609ea1331", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3589ad89e447ab9a7f1197873b0883b9d1bd25f21d35390a20829fc609ea1331", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x3589ad89e447ab9a7f1197873b0883b9d1bd25f21d35390a20829fc609ea1331", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x11ec0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_35000.json new file mode 100644 index 000000000..a810013d9 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_37111_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_37111_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4ab705fcfab9c598afe5604b45e73efc33f001154a4490670a7fa90038706cc4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x653685e1f6de537a689bb13fe33b04b58444b65a12064ad6fec1e3ed488aa05d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x653685e1f6de537a689bb13fe33b04b58444b65a12064ad6fec1e3ed488aa05d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x653685e1f6de537a689bb13fe33b04b58444b65a12064ad6fec1e3ed488aa05d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit" : [ + "0x145d0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_1000000.json new file mode 100644 index 000000000..a84c7f7eb --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x7989f47b9a8495b8bebf3810a035b1e8e803862cb80930831979f6194e6b8970", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x7989f47b9a8495b8bebf3810a035b1e8e803862cb80930831979f6194e6b8970", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xd45bf077f7b1dffb6b42b9e1975eb5ad39c419f4794513359951676c90004a54", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfde18" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_155000.json new file mode 100644 index 000000000..3762c7e4f --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x92bbae2524afad51b019969112dc2f4170636e77a483abde9243152b65f69f0c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2f950" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_20500.json new file mode 100644 index 000000000..a5a436a1f --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x52671cca402f6ea20c1f17b4854d7bc9deb29b7f38a2ae3528685f903eabc35d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xebec" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_22000.json new file mode 100644 index 000000000..230e5bee0 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe7a86c639ff5f1a861600ce354cf278a5416ff529726dff5c36e72b9c34b557e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf1c8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_25000.json new file mode 100644 index 000000000..8147efc42 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe6ebd711890fa34f87072875706e43ce304f9fca9e27756112c4897e71b0ff43", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfd80" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_35000.json new file mode 100644 index 000000000..5590724f4 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_37120_37111_97_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_37120_37111_97_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc8fc3bad240d964fda1961988805ca4c903b1399b7d2eb4abbe9b9640b7d3956", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x388b9d76c6f6045ae01c93741d9fb41dbb486d2e69ff800d6901e5a409fd6ae2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x12490" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_1000000.json new file mode 100644 index 000000000..d830457b5 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x51dd1fbe2130a40b7026d0e779fd4a6209f2433872899ea1a7bb3ff86a9f25c5", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x51dd1fbe2130a40b7026d0e779fd4a6209f2433872899ea1a7bb3ff86a9f25c5", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x717fe2475b80f8ee48136c3e7051158fdb400525450890bd2a00fe937657567d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfa318" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_155000.json new file mode 100644 index 000000000..f084acde3 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xf19522362da9bf03874defd6d035a7a3a9b2f91ee0fb11d9334f83ebc0380330", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xf19522362da9bf03874defd6d035a7a3a9b2f91ee0fb11d9334f83ebc0380330", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x717fe2475b80f8ee48136c3e7051158fdb400525450890bd2a00fe937657567d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2be50" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_20500.json new file mode 100644 index 000000000..c199af048 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x71ce57bd3cb60f3f13680781c7332eebe1cd567dfbb8da6eb8d64fc04a155bf0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x71ce57bd3cb60f3f13680781c7332eebe1cd567dfbb8da6eb8d64fc04a155bf0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x71ce57bd3cb60f3f13680781c7332eebe1cd567dfbb8da6eb8d64fc04a155bf0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x71ce57bd3cb60f3f13680781c7332eebe1cd567dfbb8da6eb8d64fc04a155bf0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x71ce57bd3cb60f3f13680781c7332eebe1cd567dfbb8da6eb8d64fc04a155bf0", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb0ec" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_22000.json new file mode 100644 index 000000000..d04de3b99 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3511d77d8bc66c502aeb153df540a7b86c4357dead7eabc876c515c6d793e674", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3511d77d8bc66c502aeb153df540a7b86c4357dead7eabc876c515c6d793e674", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x717fe2475b80f8ee48136c3e7051158fdb400525450890bd2a00fe937657567d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb6c8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_25000.json new file mode 100644 index 000000000..570237e4d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x6e78c3a7a71aeb7edf950d3e61c3177497fe888a7bf0d1e123b0278c84ba5689", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x6e78c3a7a71aeb7edf950d3e61c3177497fe888a7bf0d1e123b0278c84ba5689", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x717fe2475b80f8ee48136c3e7051158fdb400525450890bd2a00fe937657567d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xc280" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_35000.json new file mode 100644 index 000000000..b39b8fc16 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_39936_1_55201_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_39936_1_55201_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x84a1eda4b3b6051597f6098cd9cf7995469edf286f5602c41849511718aa533f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa6b7805c00480fcde648e22e0d0418f1078d65634251f99fc202c531fa4dfc4b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa6b7805c00480fcde648e22e0d0418f1078d65634251f99fc202c531fa4dfc4b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x717fe2475b80f8ee48136c3e7051158fdb400525450890bd2a00fe937657567d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe990" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_1000000.json new file mode 100644 index 000000000..bbfead9cb --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_09984_39936_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xbaefd266cb2fdbc435196c47e6c66d608fc6b8ca94be2662ce956be6c07fc638", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xbaefd266cb2fdbc435196c47e6c66d608fc6b8ca94be2662ce956be6c07fc638", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xb1d2c591ff29720cf615412d9227e03072aa06af4814680f85e607714643a16e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9b58" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_155000.json new file mode 100644 index 000000000..7bdc85d94 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_09984_39936_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x88b83735835f9d1efcf3bfb9861f5b153d981da6b0108ee882fd771b7ac7f618", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x88b83735835f9d1efcf3bfb9861f5b153d981da6b0108ee882fd771b7ac7f618", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xb1d2c591ff29720cf615412d9227e03072aa06af4814680f85e607714643a16e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b690" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_22000.json new file mode 100644 index 000000000..5edc1a13f --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_09984_39936_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x70240d70b3a3bc6b69e9e0442519e5233506203cb341d794af639d2d1508417d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x70240d70b3a3bc6b69e9e0442519e5233506203cb341d794af639d2d1508417d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x70240d70b3a3bc6b69e9e0442519e5233506203cb341d794af639d2d1508417d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xaf08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_25000.json new file mode 100644 index 000000000..1b9f0903a --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_09984_39936_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x5906361a887d190ba04ed942970e835f9dd1532c2128ba0ffbb3c28fc7d952ca", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x5906361a887d190ba04ed942970e835f9dd1532c2128ba0ffbb3c28fc7d952ca", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xb1d2c591ff29720cf615412d9227e03072aa06af4814680f85e607714643a16e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xbac0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_35000.json new file mode 100644 index 000000000..efd68bcb2 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_09984_39936_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_09984_39936_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xc5d18908d269b9b508c9471220b127ef55d6cd4fa98543c1ae6b4547e0bf45ed", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x72fea5b5f49d22a532afe8d7044076bb3d18a6ec5eda34f426f0192369baf593", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x72fea5b5f49d22a532afe8d7044076bb3d18a6ec5eda34f426f0192369baf593", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xb1d2c591ff29720cf615412d9227e03072aa06af4814680f85e607714643a16e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe1d0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_28948_11579_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_28948_11579_20500.json new file mode 100644 index 000000000..0fa1868b6 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_28948_11579_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_3_28948_11579_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x4d64a4cdca827144c4cda65b7049697ffecc07fb165ba3c188cfea288d2cfe8e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x4d64a4cdca827144c4cda65b7049697ffecc07fb165ba3c188cfea288d2cfe8e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x4d64a4cdca827144c4cda65b7049697ffecc07fb165ba3c188cfea288d2cfe8e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x4d64a4cdca827144c4cda65b7049697ffecc07fb165ba3c188cfea288d2cfe8e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x4d64a4cdca827144c4cda65b7049697ffecc07fb165ba3c188cfea288d2cfe8e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa92c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_1000000.json new file mode 100644 index 000000000..1a1ada672 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x3664e864e10a81a12bd2793b83ab71cb27832742a848c467c129f49a3bfeb21c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x3664e864e10a81a12bd2793b83ab71cb27832742a848c467c129f49a3bfeb21c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6e4ac1910b666f49a10026acad50b424b233b7851fc851c6d9b125ad3eafcbb4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9a58" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_155000.json new file mode 100644 index 000000000..570c89285 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2a433c99d44882387ed86d759e02a260171828d4425b19c3f0b57392dfe65156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2a433c99d44882387ed86d759e02a260171828d4425b19c3f0b57392dfe65156", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6e4ac1910b666f49a10026acad50b424b233b7851fc851c6d9b125ad3eafcbb4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b590" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_20500.json new file mode 100644 index 000000000..243e376f5 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe8153407b3136310cdc0eec08c213622c7092f5cef1bdd7fb100ed4ecd096652", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa82c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_22000.json new file mode 100644 index 000000000..5bad6f694 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x384ac2b53fbe640f387287a2003a692315bcc82bb52834e63ad41306d38b3a6d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x384ac2b53fbe640f387287a2003a692315bcc82bb52834e63ad41306d38b3a6d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6e4ac1910b666f49a10026acad50b424b233b7851fc851c6d9b125ad3eafcbb4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xae08" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_25000.json new file mode 100644 index 000000000..c6ba21381 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x25bfcccff0916b282b8d6892c0b9829b45a41e06144720a2066ed542cc3b778a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x25bfcccff0916b282b8d6892c0b9829b45a41e06144720a2066ed542cc3b778a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6e4ac1910b666f49a10026acad50b424b233b7851fc851c6d9b125ad3eafcbb4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xb9c0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_35000.json new file mode 100644 index 000000000..3f3ca3114 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_3_5_100_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_3_5_100_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x28984fd862291b29c481d50eb7e2d25c65da464f47f46759295bb874b590f29a", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa711cfe2614927965c0f7e84e11cf6c96978548d692ae2cab096161efe009fc7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa711cfe2614927965c0f7e84e11cf6c96978548d692ae2cab096161efe009fc7", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x6e4ac1910b666f49a10026acad50b424b233b7851fc851c6d9b125ad3eafcbb4", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe0d0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_1000000.json new file mode 100644 index 000000000..75f02b25d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x8c3e32f1b4bcf3576dc6b888f5834b9113c2e5529f37a180dd4e14372ea06a68", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x8c3e32f1b4bcf3576dc6b888f5834b9113c2e5529f37a180dd4e14372ea06a68", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf9ad8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_155000.json new file mode 100644 index 000000000..1f106de91 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xc478d53ebb92e3f68b24ddd526524e010e1792f33a0ccbbd775a210ef753340c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xc478d53ebb92e3f68b24ddd526524e010e1792f33a0ccbbd775a210ef753340c", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2b610" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_20500.json new file mode 100644 index 000000000..8d965ccb9 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xb08c4e072c117459fcaa6feb5b0e4d5402963d911c82286574fbdaa17ce236cc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xb08c4e072c117459fcaa6feb5b0e4d5402963d911c82286574fbdaa17ce236cc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xb08c4e072c117459fcaa6feb5b0e4d5402963d911c82286574fbdaa17ce236cc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xb08c4e072c117459fcaa6feb5b0e4d5402963d911c82286574fbdaa17ce236cc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xb08c4e072c117459fcaa6feb5b0e4d5402963d911c82286574fbdaa17ce236cc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xa8ac" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_22000.json new file mode 100644 index 000000000..14b5ddd21 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x15c4201598ce69aa4022a9801384cb75998b3b53dd73a6019a356f4e8552afb8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x15c4201598ce69aa4022a9801384cb75998b3b53dd73a6019a356f4e8552afb8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xae88" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_25000.json new file mode 100644 index 000000000..56a2c2b39 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xd778884b158c93775316d9a34fa3d27e3f235fbbc3abc127798ee21e92c21d01", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xd778884b158c93775316d9a34fa3d27e3f235fbbc3abc127798ee21e92c21d01", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xba40" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_35000.json new file mode 100644 index 000000000..880ffc2c9 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_49_2401_2401_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_49_2401_2401_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x26b54f04e8cb2d53ad0dde9959d148fb0553cb7764b700aa85be792ab137a242", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x26b54f04e8cb2d53ad0dde9959d148fb0553cb7764b700aa85be792ab137a242", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x5ed22d476cbd50da5d14a61f4972dfe1f8f0f1bf2ee4af9eabb15c60796ce854", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xe150" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_1000000.json new file mode 100644 index 000000000..b1d2e346c --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x204d61a853440aa3674a6167de390d4f9c5d76dd35ca07e7bb988521d1766b15", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x204d61a853440aa3674a6167de390d4f9c5d76dd35ca07e7bb988521d1766b15", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x906f94445ac7753feaf4a6eb0a072766dcce766b2eed6f62b2b76af178131c5b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0xfaf98" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_155000.json new file mode 100644 index 000000000..d889bd737 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe96c2dd7dfb518095fd8d6d0266543283ff42b48feec463b7371345b4a024a2b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe96c2dd7dfb518095fd8d6d0266543283ff42b48feec463b7371345b4a024a2b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x906f94445ac7753feaf4a6eb0a072766dcce766b2eed6f62b2b76af178131c5b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0x2cad0" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_20500.json new file mode 100644 index 000000000..586d72c09 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0xfeb15b093ba01a540cdbb1d46961237855625e41aca31875231817de90298373", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0xfeb15b093ba01a540cdbb1d46961237855625e41aca31875231817de90298373", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xfeb15b093ba01a540cdbb1d46961237855625e41aca31875231817de90298373", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xfeb15b093ba01a540cdbb1d46961237855625e41aca31875231817de90298373", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xfeb15b093ba01a540cdbb1d46961237855625e41aca31875231817de90298373", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0xbd6c" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_22000.json new file mode 100644 index 000000000..dfa4c103d --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xbe005e7a45c02170b75a56d95e55e875016d5b8d1b563998ece4a605acfb8e04", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xbe005e7a45c02170b75a56d95e55e875016d5b8d1b563998ece4a605acfb8e04", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xbe005e7a45c02170b75a56d95e55e875016d5b8d1b563998ece4a605acfb8e04", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0xc348" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_25000.json new file mode 100644 index 000000000..8f8892858 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x78cded0d21e6a338a5cbd4a9a2679a8e90475f0c9ea10602b963888da61c274e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x78cded0d21e6a338a5cbd4a9a2679a8e90475f0c9ea10602b963888da61c274e", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x906f94445ac7753feaf4a6eb0a072766dcce766b2eed6f62b2b76af178131c5b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0xcf00" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_35000.json new file mode 100644 index 000000000..27b963d60 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_55190_55190_42965_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_55190_55190_42965_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x5f0fdee4137486a0a1ec376a6c8115f5aaf96577a62bf351069562eb9c34ffc8", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x8a72f51d494591810d22a33f8dcb8d539ff83b3ef19191627d8ab2c74b3de5bc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x8a72f51d494591810d22a33f8dcb8d539ff83b3ef19191627d8ab2c74b3de5bc", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x906f94445ac7753feaf4a6eb0a072766dcce766b2eed6f62b2b76af178131c5b", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0201ee", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fe12", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit" : [ + "0xf610" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_1000000.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_1000000.json new file mode 100644 index 000000000..ac0855c55 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_1000000.json @@ -0,0 +1,159 @@ +{ + "modexp_9_37111_37111_1000000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x933a3d1303443b63d389b19b1614a8826aab2f945899a8c9fbc7d101d16e066d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x933a3d1303443b63d389b19b1614a8826aab2f945899a8c9fbc7d101d16e066d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x53a01542bf0ba8e656e0630d5f7d279c6fe059f2d4bc4afafeb8e0f797713f88", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfde18" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_155000.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_155000.json new file mode 100644 index 000000000..f7ef011fc --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_155000.json @@ -0,0 +1,159 @@ +{ + "modexp_9_37111_37111_155000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xe9695b10d5a72846382fba0293e877097bf8b14fc916029625b58e6ffb3a91b2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xe9695b10d5a72846382fba0293e877097bf8b14fc916029625b58e6ffb3a91b2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xe9695b10d5a72846382fba0293e877097bf8b14fc916029625b58e6ffb3a91b2", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x2f950" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_20500.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_20500.json new file mode 100644 index 000000000..eb1ee19ef --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_20500.json @@ -0,0 +1,159 @@ +{ + "modexp_9_37111_37111_20500" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60ac2b6aa114748d27229da002f8f6f23773fdebf6016970ce40eb50298c4807", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60ac2b6aa114748d27229da002f8f6f23773fdebf6016970ce40eb50298c4807", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x60ac2b6aa114748d27229da002f8f6f23773fdebf6016970ce40eb50298c4807", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x60ac2b6aa114748d27229da002f8f6f23773fdebf6016970ce40eb50298c4807", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x60ac2b6aa114748d27229da002f8f6f23773fdebf6016970ce40eb50298c4807", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xebec" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_22000.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_22000.json new file mode 100644 index 000000000..90ef98f79 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_22000.json @@ -0,0 +1,159 @@ +{ + "modexp_9_37111_37111_22000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x46eed535bcc6a90365001e2c0f1a8a5a3942abd59d2a329d60df3e5be8dbe4d1", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x46eed535bcc6a90365001e2c0f1a8a5a3942abd59d2a329d60df3e5be8dbe4d1", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x46eed535bcc6a90365001e2c0f1a8a5a3942abd59d2a329d60df3e5be8dbe4d1", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xf1c8" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_35000.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_35000.json new file mode 100644 index 000000000..d0156e005 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_37111_37111_35000.json @@ -0,0 +1,159 @@ +{ + "modexp_9_37111_37111_35000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0x2fe33fc1963b1d4aeeafb3278bcef8221cf2bb8d3754a5760557021e5dcb8c6f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0x2fe33fc1963b1d4aeeafb3278bcef8221cf2bb8d3754a5760557021e5dcb8c6f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0x2fe33fc1963b1d4aeeafb3278bcef8221cf2bb8d3754a5760557021e5dcb8c6f", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0x12490" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/GeneralStateTests/stPreCompiledContracts/modexp_9_3711_37111_25000.json b/GeneralStateTests/stPreCompiledContracts/modexp_9_3711_37111_25000.json new file mode 100644 index 000000000..a52751587 --- /dev/null +++ b/GeneralStateTests/stPreCompiledContracts/modexp_9_3711_37111_25000.json @@ -0,0 +1,159 @@ +{ + "modexp_9_3711_37111_25000" : { + "env" : { + "currentCoinbase" : "0x3535353535353535353535353535353535353535", + "currentDifficulty" : "0x1", + "currentGasLimit" : "0x5f5e100", + "currentNumber" : "0x1", + "currentTimestamp" : "0x5777765e", + "previousHash" : "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "explanation" : "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas", + "post" : { + "EIP150" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "EIP158" : [ + { + "hash" : "0x60c91f6a72960f77a772373d8a645ce35bc7e7f601421547df31212e9b1db59d", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Frontier" : [ + { + "hash" : "0xa9e1762293cec0b6c6b025b3bf5294ace20f84be9d012f944d5cf9be68044fbb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Homestead" : [ + { + "hash" : "0xa9e1762293cec0b6c6b025b3bf5294ace20f84be9d012f944d5cf9be68044fbb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ], + "Metropolis" : [ + { + "hash" : "0xa9e1762293cec0b6c6b025b3bf5294ace20f84be9d012f944d5cf9be68044fbb", + "indexes" : { + "data" : 0, + "gas" : 0, + "value" : 0 + } + } + ] + }, + "pre" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000002" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000003" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000004" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000005" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000006" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000007" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x0000000000000000000000000000000000000008" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x3535353535353535353535353535353535353535" : { + "balance" : "0x0202fa", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x82a978b3f5962a5b0957d9ee9eef472ee55b42f1" : { + "balance" : "0x0de0b6b3a761fd06", + "code" : "", + "nonce" : "0x01", + "storage" : { + } + }, + "0xc305c901078781c232a2a521c2af7980f8385ee9" : { + "balance" : "0x00", + "code" : "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "nonce" : "0x01", + "storage" : { + } + } + }, + "transaction" : { + "data" : [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit" : [ + "0xfd80" + ], + "gasPrice" : "0x1", + "nonce" : "0x1", + "secretKey" : "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to" : "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value" : [ + "0x" + ] + } + } +}
\ No newline at end of file diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_1000000Filler.json new file mode 100644 index 000000000..d96267b0d --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_0_0_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9858" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824516", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175484", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_155000Filler.json new file mode 100644 index 000000000..0034411a7 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_0_0_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b390" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824516", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175484", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_20500Filler.json new file mode 100644 index 000000000..d92ba61da --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_0_0_0_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa62c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825894", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174106", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_22000Filler.json new file mode 100644 index 000000000..d4947ea57 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_0_0_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xac08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824516", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175484", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_25000Filler.json new file mode 100644 index 000000000..2a2c3777a --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_0_0_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb7c0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824516", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175484", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_35000Filler.json new file mode 100644 index 000000000..dc08c09fe --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_0_0_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_0_0_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xded0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760846004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824516", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175484", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_1000000Filler.json new file mode 100644 index 000000000..832889816 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_1_0_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9958" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_155000Filler.json new file mode 100644 index 000000000..5190167c9 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_1_0_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b490" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_20500Filler.json new file mode 100644 index 000000000..4fe82a282 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_0_1_0_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa72c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825638", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174362", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_22000Filler.json new file mode 100644 index 000000000..809a92a2d --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_1_0_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xad08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_25000Filler.json new file mode 100644 index 000000000..7ec03c16d --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_1_0_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb8c0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_35000Filler.json new file mode 100644 index 000000000..436f724e3 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_1_0_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_1_0_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xdfd0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 1 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_1000000Filler.json new file mode 100644 index 000000000..7eb163255 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_3_100_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf99d8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_155000Filler.json new file mode 100644 index 000000000..863ae2cab --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_3_100_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b510" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_20500Filler.json new file mode 100644 index 000000000..ffbfb0bc2 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_0_3_100_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa7ac" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825510", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174490", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_22000Filler.json new file mode 100644 index 000000000..69a260ee2 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_3_100_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xad88" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_25000Filler.json new file mode 100644 index 000000000..15b473e0f --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_3_100_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb940" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_35000Filler.json new file mode 100644 index 000000000..55d0ccd5b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_0_3_100_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_0_3_100_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010364000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe050" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 0, exponent 3 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_1000000Filler.json new file mode 100644 index 000000000..13f1c5b32 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_0_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9958" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_155000Filler.json new file mode 100644 index 000000000..abf7d39e7 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_0_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b490" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_20500Filler.json new file mode 100644 index 000000000..0b79f8683 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_1_0_0_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa72c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825638", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174362", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_22000Filler.json new file mode 100644 index 000000000..95719e5a1 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_0_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xad08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_25000Filler.json new file mode 100644 index 000000000..5dd99ecbe --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_0_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb8c0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_35000Filler.json new file mode 100644 index 000000000..fa1aec1a7 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_0_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_0_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000610000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xdfd0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760856004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824257", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175743", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_1000000Filler.json new file mode 100644 index 000000000..aa324649f --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_1_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf99d8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_155000Filler.json new file mode 100644 index 000000000..4823ec787 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_1_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b510" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_20500Filler.json new file mode 100644 index 000000000..a399c3ea8 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_1_0_1_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa7ac" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825510", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174490", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_22000Filler.json new file mode 100644 index 000000000..f1cc29671 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_1_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xad88" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_25000Filler.json new file mode 100644 index 000000000..c21e06c1b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_1_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb940" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_35000Filler.json new file mode 100644 index 000000000..ab9977003 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_0_1_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_0_1_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000620000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010101000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe050" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760866004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824129", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175871", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 0 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_1000000Filler.json new file mode 100644 index 000000000..99ddbe8ef --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_1_1_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9a58" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_155000Filler.json new file mode 100644 index 000000000..8f15c501e --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_1_1_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b590" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_20500Filler.json new file mode 100644 index 000000000..c619d53aa --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_1_1_1_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa82c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825382", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174618", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_22000Filler.json new file mode 100644 index 000000000..e345844cf --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_1_1_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xae08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_25000Filler.json new file mode 100644 index 000000000..5e92e3a9e --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_1_1_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb9c0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_35000Filler.json new file mode 100644 index 000000000..2ae337f95 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_1_1_1_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_1_1_1_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010101010000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe0d0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 1, exponent 1 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_22411_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_22411_22000Filler.json new file mode 100644 index 000000000..63ac7c355 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_22411_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_22411_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf1c8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999806270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "193730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_1000000Filler.json new file mode 100644 index 000000000..f90896c99 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_37120_37111_0_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0xfdd18" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999638991", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "361009", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_155000Filler.json new file mode 100644 index 000000000..52ffaccdd --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_155000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_0_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x2f850" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999673526", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "326474", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_20500Filler.json new file mode 100644 index 000000000..7e0a6bba1 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_0_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0xeaec" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999808026", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "191974", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_22000Filler.json new file mode 100644 index 000000000..8d292c203 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_0_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0xf0c8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999806526", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "193474", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_25000Filler.json new file mode 100644 index 000000000..49f817d64 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_25000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_0_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0xfc80" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999803526", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "196474", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_35000Filler.json new file mode 100644 index 000000000..2e1056a0d --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_0_35000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_0_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x12390" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101846004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999793526", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "206474", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 0 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_1000000Filler.json new file mode 100644 index 000000000..c260dcdd5 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_37120_37111_1_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfde18" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xbc36789e7a1e281436464229828f817d6612f7b477d66591ff96a9e064bcc98a" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999638732", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "361268", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_155000Filler.json new file mode 100644 index 000000000..983abec3f --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_155000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_1_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2f950" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999673270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "326730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_20500Filler.json new file mode 100644 index 000000000..a6710ac3a --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_1_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xebec" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999807770", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "192230", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_25000Filler.json new file mode 100644 index 000000000..bd55be068 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_25000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_1_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfd80" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999803270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "196730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_35000Filler.json new file mode 100644 index 000000000..2b6e8e0ea --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_1_35000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_1_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x12490" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999793270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "206730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 1 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_1000000Filler.json new file mode 100644 index 000000000..775912d6b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_37120_37111_37111_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0xfff58" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x3961ec903a448e057fbc76e10170d02f15b9b65c2f7fc8215f611ec6dc74cf91" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999630152", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "369848", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_155000Filler.json new file mode 100644 index 000000000..98a717043 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_155000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_37111_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x31a90" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999664758", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "335242", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_20500Filler.json new file mode 100644 index 000000000..80e16af5b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_37111_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x10d2c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999799258", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "200742", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_22000Filler.json new file mode 100644 index 000000000..cbcfa5c27 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_37111_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x11308" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999797758", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "202242", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_25000Filler.json new file mode 100644 index 000000000..5c3cbdbad --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_25000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_37111_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x11ec0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999794758", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "205242", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_35000Filler.json new file mode 100644 index 000000000..013daa96b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_37111_35000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_37111_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97" + ], + "gasLimit": [ + "0x145d0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c57610204600435600401351115155857600435600401356020016004356004016101403760806103c061014051610160600060056305f5e0fff115585760806103a0526103a060a0806104608284600060046022f150505061046080516020820120905060005561046060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999784758", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "215242", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_1000000Filler.json new file mode 100644 index 000000000..e6f0cbdcf --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_37120_37111_97_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfde18" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xeff31f7855752a3582db9a0d965d5063f23d94003e66f8c5a8f8e8fe2ab24753" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999638732", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "361268", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_155000Filler.json new file mode 100644 index 000000000..b076ba6db --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_155000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_97_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2f950" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999673270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "326730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_20500Filler.json new file mode 100644 index 000000000..eea7a99eb --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_97_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xebec" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999807770", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "192230", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_22000Filler.json new file mode 100644 index 000000000..fd0094173 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_97_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf1c8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999806270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "193730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_25000Filler.json new file mode 100644 index 000000000..8c21e9f33 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_25000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_97_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfd80" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999803270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "196730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_35000Filler.json new file mode 100644 index 000000000..66e430f63 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_37120_37111_97_35000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_37120_37111_97_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000161000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff976100000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x12490" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037600161034061014051610160600060056305f5e0fff11558576001610320526103206021806103808284600060046015f150505061038080516020820120905060005561038060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999793270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "206730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137120, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 97 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_1000000Filler.json new file mode 100644 index 000000000..78c28205b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_39936_1_55201_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfa318" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x038ce2d0d81afd6f9db7e4b21a65a2763091c1068647b921ca1e6ff8f640acfe" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999821738", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "178262", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_155000Filler.json new file mode 100644 index 000000000..683a61237 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_39936_1_55201_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2be50" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x038ce2d0d81afd6f9db7e4b21a65a2763091c1068647b921ca1e6ff8f640acfe" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999821738", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "178262", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_20500Filler.json new file mode 100644 index 000000000..d91ebd4d3 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_39936_1_55201_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb0ec" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823142", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176858", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_22000Filler.json new file mode 100644 index 000000000..10160d57c --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_39936_1_55201_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb6c8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x038ce2d0d81afd6f9db7e4b21a65a2763091c1068647b921ca1e6ff8f640acfe" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999821738", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "178262", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_25000Filler.json new file mode 100644 index 000000000..bd7f385e0 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_39936_1_55201_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xc280" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x038ce2d0d81afd6f9db7e4b21a65a2763091c1068647b921ca1e6ff8f640acfe" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999821738", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "178262", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_35000Filler.json new file mode 100644 index 000000000..3f5de6462 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_39936_1_55201_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_39936_1_55201_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a200000000000000000000000000000000000000000000000000000000000000210000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002001000000000000000000000000000000000000000000000000000000000000000001304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db881000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe990" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602061028061014051610160600060056305f5e0fff11558576020610260526102606040806102c08284600060046018f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x038ce2d0d81afd6f9db7e4b21a65a2763091c1068647b921ca1e6ff8f640acfe" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999821738", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "178262", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 115792089237316195423570985008687907853269984665640564039457584007913129639936, exponent 1 and modulus 21847450052839212624230656502990235142567050104912751880812823948662932355201 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_1000000Filler.json new file mode 100644 index 000000000..c3ec42953 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_09984_39936_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9b58" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc13ad76448cbefd1ee83b801bcd8f33061f2577d6118395e7b44ea21c7ef62e0" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999820951", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "179049", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_155000Filler.json new file mode 100644 index 000000000..fdb1a9a7a --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_09984_39936_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b690" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc13ad76448cbefd1ee83b801bcd8f33061f2577d6118395e7b44ea21c7ef62e0" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999820951", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "179049", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_22000Filler.json new file mode 100644 index 000000000..d7d9c24a3 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_3_09984_39936_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xaf08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823626", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176374", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_25000Filler.json new file mode 100644 index 000000000..8fc1ca3ad --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_09984_39936_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xbac0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc13ad76448cbefd1ee83b801bcd8f33061f2577d6118395e7b44ea21c7ef62e0" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999820951", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "179049", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_35000Filler.json new file mode 100644 index 000000000..23d912342 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_09984_39936_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_09984_39936_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe1d0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc13ad76448cbefd1ee83b801bcd8f33061f2577d6118395e7b44ea21c7ef62e0" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999820951", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "179049", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_28948_11579_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_28948_11579_20500Filler.json new file mode 100644 index 000000000..88913605c --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_28948_11579_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_3_28948_11579_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000a2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000021034000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa92c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760c66004356004013511151558576004356004013560200160043560040161014037602161028061014051610160600060056305f5e0fff11558576021610260526102606041806102e08284600060046018f15050506102e08051602082012090506000556102e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825126", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174874", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 28948022309329048855892746252171976963317496166410141009864396001978282409984 and modulus 115792089237316195423570985008687907853269984665640564039457584007913129639936 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_1000000Filler.json new file mode 100644 index 000000000..a8ccc0903 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_5_100_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9a58" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x728b8dbbe730d9acd55e30e768e6a28a04bea0c61b88108287c2c87d79c98bb8" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_155000Filler.json new file mode 100644 index 000000000..83e9b9396 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_5_100_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b590" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x728b8dbbe730d9acd55e30e768e6a28a04bea0c61b88108287c2c87d79c98bb8" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_20500Filler.json new file mode 100644 index 000000000..a01d61b25 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_3_5_100_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa82c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825382", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174618", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_22000Filler.json new file mode 100644 index 000000000..7cbdbd3e4 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_5_100_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xae08" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x728b8dbbe730d9acd55e30e768e6a28a04bea0c61b88108287c2c87d79c98bb8" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_25000Filler.json new file mode 100644 index 000000000..8eaced4ea --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_5_100_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xb9c0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x728b8dbbe730d9acd55e30e768e6a28a04bea0c61b88108287c2c87d79c98bb8" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_35000Filler.json new file mode 100644 index 000000000..cef836c38 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_3_5_100_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_3_5_100_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000630000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010305640000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe0d0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760876004356004013511151558576004356004013560200160043560040161014037600161024061014051610160600060056305f5e0fff11558576001610220526102206021806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x728b8dbbe730d9acd55e30e768e6a28a04bea0c61b88108287c2c87d79c98bb8" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999824001", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "175999", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 3, exponent 5 and modulus 100 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_1000000Filler.json new file mode 100644 index 000000000..d1e937c63 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_49_2401_2401_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf9ad8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823873", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176127", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_155000Filler.json new file mode 100644 index 000000000..ad6011192 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_49_2401_2401_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2b610" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823873", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176127", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_20500Filler.json new file mode 100644 index 000000000..bfc34ac02 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_49_2401_2401_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xa8ac" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999825254", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "174746", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_22000Filler.json new file mode 100644 index 000000000..8cd1c4762 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_22000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_49_2401_2401_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xae88" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823873", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176127", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_25000Filler.json new file mode 100644 index 000000000..48d1bcaf9 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_49_2401_2401_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xba40" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823873", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176127", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_35000Filler.json new file mode 100644 index 000000000..35afd36d2 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_49_2401_2401_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_49_2401_2401_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000650000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000023109610961000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xe150" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760896004356004013511151558576004356004013560200160043560040161014037600261024061014051610160600060056305f5e0fff11558576002610220526102206022806102808284600060046015f150505061028080516020820120905060005561028060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x54a8c0ab653c15bfb48b47fd011ba2b9617af01cb45cab344acd57c924d56798" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999823873", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "176127", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 49, exponent 2401 and modulus 2401 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_1000000Filler.json new file mode 100644 index 000000000..14b426000 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_55190_55190_42965_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0xfaf98" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc180ec8d162fccdd700a086100d56543bccabfc357ba4c070df23a92790537bb" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999815958", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "184042", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_155000Filler.json new file mode 100644 index 000000000..d06e250f1 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_155000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_55190_55190_42965_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0x2cad0" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc180ec8d162fccdd700a086100d56543bccabfc357ba4c070df23a92790537bb" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999815958", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "184042", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_20500Filler.json new file mode 100644 index 000000000..fc9400c0a --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_55190_55190_42965_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0xbd6c" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999819942", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "180058", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_22000Filler.json new file mode 100644 index 000000000..549791c47 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_55190_55190_42965_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0xc348" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999818442", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "181558", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_25000Filler.json new file mode 100644 index 000000000..09232ef37 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_25000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_55190_55190_42965_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0xcf00" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc180ec8d162fccdd700a086100d56543bccabfc357ba4c070df23a92790537bb" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999815958", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "184042", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_35000Filler.json new file mode 100644 index 000000000..caa769948 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_55190_55190_42965_35000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_55190_55190_42965_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868434", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131566", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000014304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876304d37f120d696c834550e63d9bb9c14b4f9165c9ede434e4644e3998d6db876fffffffffffffffffffffffffffffffffffffff5000000000000000000000000" + ], + "gasLimit": [ + "0xf610" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012b5760d86004356004013511151558576004356004013560200160043560040161014037601461028061014051610160600060056305f5e0fff11558576014610260526102606034806102c08284600060046017f15050506102c08051602082012090506000556102c060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0xc180ec8d162fccdd700a086100d56543bccabfc357ba4c070df23a92790537bb" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999815958", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "184042", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 21847450052839212624230656502990235142567050104912751880812823948662932355190, exponent 21847450052839212624230656502990235142567050104912751880812823948662932355190 and modulus 1461501637330902918203684832716283019655932542965 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_1000000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_1000000Filler.json new file mode 100644 index 000000000..d3f68221b --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_1000000Filler.json @@ -0,0 +1,178 @@ +{ + "modexp_9_37111_37111_1000000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfde18" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": { + "0x00": "0x3961ec903a448e057fbc76e10170d02f15b9b65c2f7fc8215f611ec6dc74cf91" + } + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999638686", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "361314", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 1000000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_155000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_155000Filler.json new file mode 100644 index 000000000..bd4d0f433 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_155000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_9_37111_37111_155000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x2f950" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999673270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "326730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 155000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_20500Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_20500Filler.json new file mode 100644 index 000000000..c826eefee --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_20500Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_9_37111_37111_20500": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xebec" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999807770", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "192230", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 20500 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_22000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_22000Filler.json new file mode 100644 index 000000000..1134546ec --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_22000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_9_37111_37111_22000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xf1c8" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999806270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "193730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 22000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_35000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_35000Filler.json new file mode 100644 index 000000000..81ea6ee36 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_37111_37111_35000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_9_37111_37111_35000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0x12490" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999793270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "206730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 35000 gas" + } +} diff --git a/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_3711_37111_25000Filler.json b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_3711_37111_25000Filler.json new file mode 100644 index 000000000..954ac8490 --- /dev/null +++ b/src/GeneralStateTestsFiller/stPreCompiledContracts/modexp_9_3711_37111_25000Filler.json @@ -0,0 +1,176 @@ +{ + "modexp_9_3711_37111_25000": { + "env": { + "currentCoinbase": "0x3535353535353535353535353535353535353535", + "currentDifficulty": "0x1", + "currentGasLimit": "0x5f5e100", + "currentNumber": "0x1", + "currentTimestamp": "0x5777765e", + "previousHash": "0xc6745cf3cada515bbfb9573261c82547e0b8f9e3d5dd382e464704a84e47b5ad" + }, + "pre": { + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999868166", + "nonce": "1", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "131834", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + }, + "transaction": { + "data": [ + "0x30c8d1da0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000016100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000008009ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9700000000000000000000000000000000000000000000000000000000000000" + ], + "gasLimit": [ + "0xfd80" + ], + "gasPrice": "0x1", + "nonce": "0x1", + "secretKey": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", + "to": "0xc305c901078781c232a2a521c2af7980f8385ee9", + "value": [ + "0x" + ] + }, + "expect": [ + { + "indexes": { + "data": 0, + "gas": 0, + "value": 0 + }, + "network": [ + "Metropolis" + ], + "result": { + "0000000000000000000000000000000000000001": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "c305c901078781c232a2a521c2af7980f8385ee9": { + "balance": "0", + "nonce": "1", + "code": "0x600035601c52740100000000000000000000000000000000000000006020526fffffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff000000000000000000000000000000016060527402540be3fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffdabf41c00000000000000000000000002540be40060a0526330c8d1da600051141561012c576101856004356004013511151558576004356004013560200160043560040161014037608061034061014051610160600060056305f5e0fff115585760806103205261032060a0806103e08284600060046022f15050506103e08051602082012090506000556103e060206020820352604081510160206001820306601f820103905060208203f350005b", + "storage": {} + }, + "0000000000000000000000000000000000000005": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000008": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000003": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "82a978b3f5962a5b0957d9ee9eef472ee55b42f1": { + "balance": "999999999999803270", + "nonce": "2", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000006": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000007": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000004": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "3535353535353535353535353535353535353535": { + "balance": "196730", + "nonce": "0", + "code": "0x", + "storage": {} + }, + "0000000000000000000000000000000000000002": { + "balance": "1", + "nonce": "0", + "code": "0x", + "storage": {} + } + } + } + ], + "explanation": "Puts the base 9, exponent 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 and modulus 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137111 into the MODEXP precompile, saves the hash of the result. Gives the execution 25000 gas" + } +} |