{
  "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"
    }
  ],
  "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": [
        9627
      ]
    },
    "id": 9628,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 9617,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:38"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
        "file": "../../common/Autopetrified.sol",
        "id": 9618,
        "nodeType": "ImportDirective",
        "scope": 9628,
        "sourceUnit": 8489,
        "src": "70:40:38",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol",
        "file": "../IEVMScriptExecutor.sol",
        "id": 9619,
        "nodeType": "ImportDirective",
        "scope": 9628,
        "sourceUnit": 9497,
        "src": "111:35:38",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 9620,
              "name": "IEVMScriptExecutor",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 9496,
              "src": "183:18:38",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IEVMScriptExecutor_$9496",
                "typeString": "contract IEVMScriptExecutor"
              }
            },
            "id": 9621,
            "nodeType": "InheritanceSpecifier",
            "src": "183:18:38"
          },
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 9622,
              "name": "Autopetrified",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 8488,
              "src": "203:13:38",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Autopetrified_$8488",
                "typeString": "contract Autopetrified"
              }
            },
            "id": 9623,
            "nodeType": "InheritanceSpecifier",
            "src": "203:13:38"
          }
        ],
        "contractDependencies": [
          8488,
          8761,
          8822,
          8869,
          9496
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": false,
        "id": 9627,
        "linearizedBaseContracts": [
          9627,
          8488,
          8822,
          8761,
          8869,
          9496
        ],
        "name": "BaseEVMScriptExecutor",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 9626,
            "name": "SCRIPT_START_LOCATION",
            "nodeType": "VariableDeclaration",
            "scope": 9627,
            "src": "223:51:38",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 9624,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "223:7:38",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "34",
              "id": 9625,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "273:1:38",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_4_by_1",
                "typeString": "int_const 4"
              },
              "value": "4"
            },
            "visibility": "internal"
          }
        ],
        "scope": 9628,
        "src": "149:128:38"
      }
    ],
    "src": "44:234:38"
  },
  "legacyAST": {
    "absolutePath": "@aragon/os/contracts/evmscript/executors/BaseEVMScriptExecutor.sol",
    "exportedSymbols": {
      "BaseEVMScriptExecutor": [
        9627
      ]
    },
    "id": 9628,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 9617,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:38"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
        "file": "../../common/Autopetrified.sol",
        "id": 9618,
        "nodeType": "ImportDirective",
        "scope": 9628,
        "sourceUnit": 8489,
        "src": "70:40:38",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "@aragon/os/contracts/evmscript/IEVMScriptExecutor.sol",
        "file": "../IEVMScriptExecutor.sol",
        "id": 9619,
        "nodeType": "ImportDirective",
        "scope": 9628,
        "sourceUnit": 9497,
        "src": "111:35:38",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 9620,
              "name": "IEVMScriptExecutor",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 9496,
              "src": "183:18:38",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IEVMScriptExecutor_$9496",
                "typeString": "contract IEVMScriptExecutor"
              }
            },
            "id": 9621,
            "nodeType": "InheritanceSpecifier",
            "src": "183:18:38"
          },
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 9622,
              "name": "Autopetrified",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 8488,
              "src": "203:13:38",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Autopetrified_$8488",
                "typeString": "contract Autopetrified"
              }
            },
            "id": 9623,
            "nodeType": "InheritanceSpecifier",
            "src": "203:13:38"
          }
        ],
        "contractDependencies": [
          8488,
          8761,
          8822,
          8869,
          9496
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": false,
        "id": 9627,
        "linearizedBaseContracts": [
          9627,
          8488,
          8822,
          8761,
          8869,
          9496
        ],
        "name": "BaseEVMScriptExecutor",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 9626,
            "name": "SCRIPT_START_LOCATION",
            "nodeType": "VariableDeclaration",
            "scope": 9627,
            "src": "223:51:38",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 9624,
              "name": "uint256",
              "nodeType": "ElementaryTypeName",
              "src": "223:7:38",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "34",
              "id": 9625,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "273:1:38",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_4_by_1",
                "typeString": "int_const 4"
              },
              "value": "4"
            },
            "visibility": "internal"
          }
        ],
        "scope": 9628,
        "src": "149:128:38"
      }
    ],
    "src": "44:234:38"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.0.1",
  "updatedAt": "2019-03-29T09:45:33.513Z",
  "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": {}
  }
}