{
"definitions": {
"AccountMap": {
"additionalProperties": false,
"patternProperties": {
"^0x[0-9a-fA-F]{40}": {
"$ref": "#/definitions/PreStateAccount",
"description": "filler prestate addresses with 0x prefix"
},
"^[0-9a-fA-F]{40}": {
"$ref": "#/definitions/PreStateAccount",
"description": "filler prestate addresses without 0x prefix"
}
},
"type": "object"
},
"NullSenderTransaction": {
"properties": {
"data": {
"items": {
"$ref": "#/definitions/TxData"
},
"type": "array"
},
"gasLimit": {
"items": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"type": "array"
},
"gasPrice": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"nonce": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"r": {
"$ref": "#/definitions/TxSigR"
},
"s": {
"$ref": "#/definitions/TxSigS"
},
"to": {
"$ref": "#/definitions/AddressMaybePrefixOrEmpty"
},
"v": {
"$ref": "#/definitions/TxSigV"
},
"value": {
"items": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"type": "array"
}
},
"required": [
"data",
"gasLimit",
"gasPrice",
"nonce",
"r",
"s",
"v",
"to",
"value"
],
"type": "object"
},
"PreStateAccount": {
"additionalproperties": true,
"properties": {
"balance": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"code": {
"type": "string"
},
"nonce": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"storage": {
"additionalProperties": false,
"patternProperties": {
"^0x[0-9a-f]+": {
"$ref": "#/definitions/PrefixedHexOrInteger",
"description": "storage key with 0x prefix, just the prefix `0x` is null and thus not permitted, a hex quantity is permitted. for the storage value, only hex data is permitted in filled test. Both decimal and hex allowed for the fillers."
}
},
"type": "object"
}
},
"type": "object"
},
"Transaction": {
"properties": {
"data": {
"items": {
"$ref": "#/definitions/TxData"
},
"type": "array"
},
"gasLimit": {
"items": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"type": "array"
},
"gasPrice": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"nonce": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"r": {
"$ref": "#/definitions/TxSigR"
},
"s": {
"$ref": "#/definitions/TxSigS"
},
"secretKey": {
"$ref": "#/definitions/HexMaybePrefix"
},
"to": {
"$ref": "#/definitions/AddressMaybePrefixOrEmpty"
},
"v": {
"$ref": "#/definitions/TxSigV"
},
"value": {
"items": {
"$ref": "#/definitions/IntegerOrEmptyOrConfusedHex"
},
"type": "array"
}
},
"required": [
"data",
"gasLimit",
"gasPrice",
"nonce",
"secretKey",
"to",
"value"
],
"type": "object"
},
"TxData": {
"anyOf": [
{
"$ref": "#/definitions/HexData"
},
{
"$ref": "#/definitions/EmptyString"
},
{
"$ref": "#/definitions/LLLCode"
}
]
},
"TxSigR": {
"oneOf": [
{
"enum": [
"0"
]
}
]
},
"TxSigS": {
"oneOf": [
{
"enum": [
"0"
]
}
]
},
"TxSigV": {
"description": "a value of 0 is an invalid chainId, but used in a test case",
"oneOf": [
{
"enum": [
"0",
"1"
]
}
]
}
},
"patternProperties": {
"^.*$": {
"properties": {
"env": {
"additionalproperties": false,
"properties": {
"currentCoinbase": {
"$ref": "#/definitions/HexMaybePrefix"
},
"currentDifficulty": {
"$ref": "#/definitions/IntegerOrConfusedHex"
},
"currentGasLimit": {
"$ref": "#/definitions/IntegerOrConfusedHex"
},
"currentNumber": {
"$ref": "#/definitions/IntegerOrConfusedHex"
},
"currentTimestamp": {
"$ref": "#/definitions/IntegerOrNumberOrConfusedHex"
},
"previousHash": {
"$ref": "#/definitions/HexMaybePrefix"
}
},
"required": [
"currentCoinbase",
"currentDifficulty",
"currentGasLimit",
"currentNumber",
"currentTimestamp",
"previousHash"
],
"type": "object"
},
"expect": {
"items": {
"$ref": "#/definitions/ExpectCondition"
},
"type": "array"
},
"pre": {
"additionalProperties": false,
"patternProperties": {
"^0x[0-9a-fA-F]{40}": {
"$ref": "#/definitions/PreStateAccount",
"description": "filler prestate addresses with 0x prefix"
},
"^[0-9a-fA-F]{40}": {
"$ref": "#/definitions/PreStateAccount",
"description": "filler prestate addresses without 0x prefix"
}
},
"type": "object"
},
"transaction": {
"oneOf": [
{
"$ref": "#/definitions/Transaction"
},
{
"$ref": "#/definitions/NullSenderTransaction"
}
]
}
},
"type": "object"
}
},
"type": "object"
}