{
  "contractName": "Autopetrified",
  "abi": [
    {
      "constant": true,
      "inputs": [],
      "name": "hasInitialized",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "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"
    },
    {
      "inputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610022640100000000610027810204565b610230565b610038640100000000610127810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a4544000000000000000060208201529015610110576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156100d55781810151838201526020016100bd565b50505050905090810190601f1680156101025780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610125600019640100000000610152810204565b565b600061014d6000805160206103c183398151915264010000000061014e61022882021704565b905090565b610163640100000000610127810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a45440000000000000000602082015290156101ff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382528381815181526020019150805190602001908083836000838110156100d55781810151838201526020016100bd565b506102256000805160206103c18339815191528264010000000061015261022c82021704565b50565b5490565b9055565b6101828061023f6000396000f3006080604052600436106100565763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630803fac0811461005b5780638b3dd74914610084578063de4796ed146100ab575b600080fd5b34801561006757600080fd5b506100706100c0565b604080519115158252519081900360200190f35b34801561009057600080fd5b506100996100e9565b60408051918252519081900360200190f35b3480156100b757600080fd5b50610070610119565b6000806100cb6100e9565b905080158015906100e35750806100e061014a565b10155b91505090565b60006101147febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e61014e565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101446100e9565b14905090565b4390565b5490565b90555600a165627a7a72305820286f0a3cb457a32c71f1c7eca77090a628f0ba24b7897205c855c3fa473eb8bb0029ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e",
  "deployedBytecode": "0x6080604052600436106100565763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630803fac0811461005b5780638b3dd74914610084578063de4796ed146100ab575b600080fd5b34801561006757600080fd5b506100706100c0565b604080519115158252519081900360200190f35b34801561009057600080fd5b506100996100e9565b60408051918252519081900360200190f35b3480156100b757600080fd5b50610070610119565b6000806100cb6100e9565b905080158015906100e35750806100e061014a565b10155b91505090565b60006101147febb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e61014e565b905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101446100e9565b14905090565b4390565b5490565b90555600a165627a7a72305820286f0a3cb457a32c71f1c7eca77090a628f0ba24b7897205c855c3fa473eb8bb0029",
  "sourceMap": "100:262:24:-;;;144:216;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;344:9:24;:7;;;;:9;:::i;:::-;100:262;;590:84:34;615:24:32;:22;;;;:24;:::i;:::-;646:25;;;;;;;;;;;;;;;;;;615:29;607:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;607:65:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;637:30:34;-1:-1:-1;;637:13:34;;;;:30;:::i;:::-;590:84::o;881:137:32:-;936:7;962:49;-1:-1:-1;;;;;;;;;;;962:47:32;;;;;;:49;:::i;:::-;955:56;;881:137;:::o;1751:141::-;615:24;:22;;;;:24;:::i;:::-;646:25;;;;;;;;;;;;;;;;;;615:29;607:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;607:65:32;-1:-1:-1;1824:61:32;-1:-1:-1;;;;;;;;;;;1872:12:32;1824:47;;;;;;:61;:::i;:::-;1751:141;:::o;519:134:39:-;630:15;;620:27::o;1028:119::-;1117:22;;1115:26::o;100:262:24:-;;;;;;;",
  "deployedSourceMap": "100:262:24:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1128:208:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1128:208:32;;;;;;;;;;;;;;;;;;;;;;881:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;881:137:32;;;;;;;;;;;;;;;;;;;;287:117:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;287:117:34;;;;1128:208:32;1175:4;1191:27;1221:24;:22;:24::i;:::-;1191:54;-1:-1:-1;1262:24:32;;;;;:67;;;1310:19;1290:16;:14;:16::i;:::-;:39;;1262:67;1255:74;;1128:208;;:::o;881:137::-;936:7;962:49;345:66;962:47;:49::i;:::-;955:56;;881:137;:::o;287:117:34:-;331:4;277:2;354:24;:22;:24::i;:::-;:43;347:50;;287:117;:::o;347:94:37:-;422:12;347:94;:::o;519:134:39:-;630:15;;620:27::o;1028:119::-;1117:22;;1115:26::o",
  "source": "/*\n * SPDX-License-Identitifer:    MIT\n */\n\npragma solidity ^0.4.24;\n\nimport \"./Petrifiable.sol\";\n\n\ncontract Autopetrified is Petrifiable {\n    constructor() public {\n        // Immediately petrify base (non-proxy) instances of inherited contracts on deploy.\n        // This renders them uninitializable (and unusable without a proxy).\n        petrify();\n    }\n}\n",
  "sourcePath": "@aragon/os/contracts/common/Autopetrified.sol",
  "ast": {
    "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
    "exportedSymbols": {
      "Autopetrified": [
        10502
      ]
    },
    "id": 10503,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 10491,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:24"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Petrifiable.sol",
        "file": "./Petrifiable.sol",
        "id": 10492,
        "nodeType": "ImportDirective",
        "scope": 10503,
        "sourceUnit": 10872,
        "src": "70:27:24",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 10493,
              "name": "Petrifiable",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 10871,
              "src": "126:11:24",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Petrifiable_$10871",
                "typeString": "contract Petrifiable"
              }
            },
            "id": 10494,
            "nodeType": "InheritanceSpecifier",
            "src": "126:11:24"
          }
        ],
        "contractDependencies": [
          10810,
          10871,
          11200
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 10502,
        "linearizedBaseContracts": [
          10502,
          10871,
          10810,
          11200
        ],
        "name": "Autopetrified",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "body": {
              "id": 10500,
              "nodeType": "Block",
              "src": "165:195:24",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 10497,
                      "name": "petrify",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10870,
                      "src": "344:7:24",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 10498,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "344:9:24",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 10499,
                  "nodeType": "ExpressionStatement",
                  "src": "344:9:24"
                }
              ]
            },
            "documentation": null,
            "id": 10501,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 10495,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "155:2:24"
            },
            "payable": false,
            "returnParameters": {
              "id": 10496,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "165:0:24"
            },
            "scope": 10502,
            "src": "144:216:24",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 10503,
        "src": "100:262:24"
      }
    ],
    "src": "44:319:24"
  },
  "legacyAST": {
    "absolutePath": "@aragon/os/contracts/common/Autopetrified.sol",
    "exportedSymbols": {
      "Autopetrified": [
        10502
      ]
    },
    "id": 10503,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 10491,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "44:24:24"
      },
      {
        "absolutePath": "@aragon/os/contracts/common/Petrifiable.sol",
        "file": "./Petrifiable.sol",
        "id": 10492,
        "nodeType": "ImportDirective",
        "scope": 10503,
        "sourceUnit": 10872,
        "src": "70:27:24",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 10493,
              "name": "Petrifiable",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 10871,
              "src": "126:11:24",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Petrifiable_$10871",
                "typeString": "contract Petrifiable"
              }
            },
            "id": 10494,
            "nodeType": "InheritanceSpecifier",
            "src": "126:11:24"
          }
        ],
        "contractDependencies": [
          10810,
          10871,
          11200
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 10502,
        "linearizedBaseContracts": [
          10502,
          10871,
          10810,
          11200
        ],
        "name": "Autopetrified",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "body": {
              "id": 10500,
              "nodeType": "Block",
              "src": "165:195:24",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "id": 10497,
                      "name": "petrify",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10870,
                      "src": "344:7:24",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$",
                        "typeString": "function ()"
                      }
                    },
                    "id": 10498,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "344:9:24",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 10499,
                  "nodeType": "ExpressionStatement",
                  "src": "344:9:24"
                }
              ]
            },
            "documentation": null,
            "id": 10501,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 10495,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "155:2:24"
            },
            "payable": false,
            "returnParameters": {
              "id": 10496,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "165:0:24"
            },
            "scope": 10502,
            "src": "144:216:24",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 10503,
        "src": "100:262:24"
      }
    ],
    "src": "44:319:24"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "2.0.1",
  "updatedAt": "2019-09-04T11:02:55.759Z"
}