{
  "contractName": "BaseEVMScriptExecutor",
  "abi": [
    {
      "constant": true,
      "inputs": [],
      "name": "hasInitialized",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "script",
          "type": "bytes"
        },
        {
          "name": "input",
          "type": "bytes"
        },
        {
          "name": "blacklist",
          "type": "address[]"
        }
      ],
      "name": "execScript",
      "outputs": [
        {
          "name": "",
          "type": "bytes"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "executorType",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getInitializationBlock",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isPetrified",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "",
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "/*\n * SPDX-License-Identitifer:    MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"../../common/Autopetrified.sol\";\nimport \"../IEVMScriptExecutor.sol\";\n\n\ncontract BaseEVMScriptExecutor is IEVMScriptExecutor, Autopetrified {\n    uint256 internal constant SCRIPT_START_LOCATION = 4;\n}\n",
  "sourcePath": "@aragon/os/contracts/evmscript/executors/BaseEVMScriptExecutor.sol",
  "ast": {
    "absolutePath": "@aragon/os/contracts/evmscript/executors/BaseEVMScriptExecutor.sol",
    "exportedSymbols": {
      "BaseEVMScriptExecutor": [
        7605
      ]
    },
    "id": 7606,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 7595,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:44"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
        "file": "../../common/Autopetrified.sol",
        "id": 7596,
        "nodeType": "ImportDirective",
        "scope": 7606,
        "sourceUnit": 6134,
        "src": "70:40:44",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol",
        "file": "../IEVMScriptExecutor.sol",
        "id": 7597,
        "nodeType": "ImportDirective",
        "scope": 7606,
        "sourceUnit": 7475,
        "src": "111:35:44",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 7598,
              "name": "IEVMScriptExecutor",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 7474,
              "src": "183:18:44",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IEVMScriptExecutor_$7474",
                "typeString": "contract IEVMScriptExecutor"
              }
            },
            "id": 7599,
            "nodeType": "InheritanceSpecifier",
            "src": "183:18:44"
          },
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 7600,
              "name": "Autopetrified",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 6133,
              "src": "203:13:44",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Autopetrified_$6133",
                "typeString": "contract Autopetrified"
              }
            },
            "id": 7601,
            "nodeType": "InheritanceSpecifier",
            "src": "203:13:44"
          }
        ],
        "contractDependencies": [
          6133,
          6441,
          6502,
          6831,
          7474
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": false,
        "id": 7605,
        "linearizedBaseContracts": [
          7605,
          6133,
          6502,
          6441,
          6831,
          7474
        ],
        "name": "BaseEVMScriptExecutor",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 7604,
            "name": "SCRIPT_START_LOCATION",
            "nodeType": "VariableDeclaration",
            "scope": 7605,
            "src": "223:51:44",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 7602,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "223:7:44",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "34",
              "id": 7603,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "273:1:44",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_4_by_1",
                "typeString": "int_const 4"
              },
              "value": "4"
            },
            "visibility": "internal"
          }
        ],
        "scope": 7606,
        "src": "149:128:44"
      }
    ],
    "src": "44:234:44"
  },
  "legacyAST": {
    "absolutePath": "@aragon/os/contracts/evmscript/executors/BaseEVMScriptExecutor.sol",
    "exportedSymbols": {
      "BaseEVMScriptExecutor": [
        7605
      ]
    },
    "id": 7606,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 7595,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:44"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
        "file": "../../common/Autopetrified.sol",
        "id": 7596,
        "nodeType": "ImportDirective",
        "scope": 7606,
        "sourceUnit": 6134,
        "src": "70:40:44",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol",
        "file": "../IEVMScriptExecutor.sol",
        "id": 7597,
        "nodeType": "ImportDirective",
        "scope": 7606,
        "sourceUnit": 7475,
        "src": "111:35:44",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 7598,
              "name": "IEVMScriptExecutor",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 7474,
              "src": "183:18:44",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IEVMScriptExecutor_$7474",
                "typeString": "contract IEVMScriptExecutor"
              }
            },
            "id": 7599,
            "nodeType": "InheritanceSpecifier",
            "src": "183:18:44"
          },
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 7600,
              "name": "Autopetrified",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 6133,
              "src": "203:13:44",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Autopetrified_$6133",
                "typeString": "contract Autopetrified"
              }
            },
            "id": 7601,
            "nodeType": "InheritanceSpecifier",
            "src": "203:13:44"
          }
        ],
        "contractDependencies": [
          6133,
          6441,
          6502,
          6831,
          7474
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": false,
        "id": 7605,
        "linearizedBaseContracts": [
          7605,
          6133,
          6502,
          6441,
          6831,
          7474
        ],
        "name": "BaseEVMScriptExecutor",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 7604,
            "name": "SCRIPT_START_LOCATION",
            "nodeType": "VariableDeclaration",
            "scope": 7605,
            "src": "223:51:44",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 7602,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "223:7:44",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "34",
              "id": 7603,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "273:1:44",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_4_by_1",
                "typeString": "int_const 4"
              },
              "value": "4"
            },
            "visibility": "internal"
          }
        ],
        "scope": 7606,
        "src": "149:128:44"
      }
    ],
    "src": "44:234:44"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.2.0",
  "updatedAt": "2020-06-07T23:27:00.589Z",
  "devdoc": {
    "methods": {
      "getInitializationBlock()": {
        "return": "Block number in which the contract was initialized"
      },
      "hasInitialized()": {
        "return": "Whether the contract has been initialized by the time of the current block"
      }
    }
  },
  "userdoc": {
    "methods": {}
  }
}