{
"definitions": {
"AddressMaybePrefixOrEmpty": {
"oneOf": [
{
"$ref": "#/definitions/HexLen40"
},
{
"$ref": "#/definitions/HexNoPrefixLen40"
},
{
"$ref": "#/definitions/EmptyString"
}
]
},
"ConfusedHexType": {
"anyOf": [
{
"$ref": "#/definitions/HexData"
},
{
"$ref": "#/definitions/HexQuantity"
}
]
},
"EmptyString": {
"pattern": "^$",
"type": "string"
},
"ExpectCondition": {
"additionalProperties": false,
"properties": {
"//comment": {
"type": "string"
},
"indexes": {
"additionalProperties": false,
"properties": {
"data": {
"$ref": "#/definitions/Indices"
},
"gas": {
"$ref": "#/definitions/Indices"
},
"value": {
"$ref": "#/definitions/Indices"
}
},
"result": {
"$ref": "#/definitions/PostStateAccounts"
}
},
"network": {
"$ref": "#/definitions/Networks"
},
"result": {
"$ref": "#/definitions/AccountMap"
}
},
"type": "object"
},
"HexData": {
"description": "Hex data. see https://github.com/ethereum/wiki/wiki/JSON-RPC#hex-value-encoding",
"pattern": "^0x([0-9a-fA-F][0-9a-fA-F])*$",
"type": "string"
},
"HexDataOrEmpty": {
"oneOf": [
{
"$ref": "#/definitions/HexData"
},
{
"$ref": "#/definitions/EmptyString"
}
]
},
"HexLen40": {
"pattern": "^0x[0-9a-fA-F]{40}$",
"type": "string"
},
"HexMaybePrefix": {
"oneOf": [
{
"$ref": "#/definitions/HexNoPrefix"
},
{
"$ref": "#/definitions/HexData"
}
]
},
"HexMaybePrefixOrEmpty": {
"oneOf": [
{
"$ref": "#/definitions/HexMaybePrefix"
},
{
"$ref": "#/definitions/EmptyString"
}
]
},
"HexNoPrefix": {
"pattern": "^([0-9a-fA-F][0-9a-fA-F])+$",
"type": "string"
},
"HexNoPrefixLen40": {
"pattern": "^[0-9a-fA-F]{40}$",
"type": "string"
},
"HexQuantity": {
"description": "Hex quantity. see https://github.com/ethereum/wiki/wiki/JSON-RPC#hex-value-encoding",
"pattern": "(^0x0$)|(^0x[1-9a-fA-F][0-9a-fA-F]*$)",
"type": "string"
},
"Indices": {
"anyOf": [
{
"type": "array"
},
{
"type": "string"
},
{
"type": "number"
}
]
},
"Info": {
"description": "Information block for filled tests.",
"properties": {
"comment": {
"type": "string"
},
"filledwith": {
"type": "string"
},
"lllcversion": {
"type": "string"
},
"source": {
"type": "string"
},
"sourceHash": {
"type": "string"
}
},
"required": [
"source",
"sourceHash"
]
},
"IntegerOrConfusedHex": {
"anyOf": [
{
"$ref": "#/definitions/IntegerString"
},
{
"$ref": "#/definitions/ConfusedHexType"
}
]
},
"IntegerOrEmpty": {
"oneOf": [
{
"$ref": "#/definitions/IntegerString"
},
{
"$ref": "#/definitions/EmptyString"
}
]
},
"IntegerOrEmptyOrConfusedHex": {
"oneOf": [
{
"$ref": "#/definitions/IntegerOrEmpty"
},
{
"$ref": "#/definitions/ConfusedHexType"
}
]
},
"IntegerOrEmptyOrHexQuantity": {
"oneOf": [
{
"$ref": "#/definitions/IntegerOrEmpty"
},
{
"$ref": "#/definitions/HexQuantity"
}
]
},
"IntegerOrHexQuantity": {
"oneOf": [
{
"$ref": "#/definitions/IntegerString"
},
{
"$ref": "#/definitions/HexQuantity"
}
]
},
"IntegerOrNumber": {
"oneOf": [
{
"$ref": "#/definitions/IntegerString"
},
{
"type": "number"
}
]
},
"IntegerOrNumberOrConfusedHex": {
"oneOf": [
{
"$ref": "#/definitions/IntegerOrNumber"
},
{
"$ref": "#/definitions/ConfusedHexType"
}
]
},
"IntegerString": {
"pattern": "^[0-9]+$",
"type": "string"
},
"LLLCode": {
"pattern": "^.*$",
"type": "string"
},
"Networks": {
"type": "array"
},
"NonExistentPostStateAccount": {
"additionalproperties": true,
"properties": {
"shouldnotexist": {
"type": "boolean"
}
},
"required": [
"shouldnotexist"
],
"type": "object"
},
"PostStateAccounts": {
"additionalProperties": false,
"patternProperties": {
"^0x[0-9a-fA-F]{40}": {
"description": "filler prestate addresses with 0x prefix",
"oneOf": [
{
"$ref": "#/definitions/PreStateAccount"
},
{
"$ref": "#/definitions/NonExistentPostStateAccount"
}
]
},
"^[0-9a-fA-F]{40}": {
"description": "filler prestate addresses without 0x prefix",
"oneOf": [
{
"$ref": "#/definitions/PreStateAccount"
},
{
"$ref": "#/definitions/NonExistentPostStateAccount"
}
]
}
},
"type": "object"
},
"PrefixedHexOrInteger": {
"anyOf": [
{
"$ref": "#/definitions/IntegerString"
},
{
"$ref": "#/definitions/HexData"
}
]
},
"TransactionResults": {
"items": {
"additionalProperties": false,
"properties": {
"hash": {
"$ref": "#/definitions/HexData"
},
"indexes": {
"additionalProperties": false,
"properties": {
"data": {
"type": "integer"
},
"gas": {
"type": "integer"
},
"value": {
"type": "integer"
}
},
"required": [
"data",
"gas",
"value"
],
"type": "object"
},
"logs": {}
},
"required": [
"hash",
"indexes"
],
"type": "object"
},
"type": "array"
}
}
}