{
  "contractName": "AppStorage",
  "abi": [
    {
      "constant": true,
      "inputs": [],
      "name": "appId",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "kernel",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x6060604052341561000f57600080fd5b6101258061001e6000396000f3006060604052600436106049576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806380afdea814604e578063d4aae0c414607c575b600080fd5b3415605857600080fd5b605e60ce565b60405180826000191660001916815260200191505060405180910390f35b3415608657600080fd5b608c60d4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a723058202f8908a5d312db86bae07c0db79759078bb71d3edbd3b9162f5088718acd50d40029",
  "deployedBytecode": "0x6060604052600436106049576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806380afdea814604e578063d4aae0c414607c575b600080fd5b3415605857600080fd5b605e60ce565b60405180826000191660001916815260200191505060405180910390f35b3415608657600080fd5b608c60d4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60015481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a723058202f8908a5d312db86bae07c0db79759078bb71d3edbd3b9162f5088718acd50d40029",
  "sourceMap": "60:317:19:-;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "60:317:19:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;113:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;86:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;113:20;;;;:::o;86:21::-;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.4.18;\n\nimport \"../kernel/IKernel.sol\";\n\n\ncontract AppStorage {\n    IKernel public kernel;\n    bytes32 public appId;\n    address internal pinnedCode; // used by Proxy Pinned\n    uint256 internal initializationBlock; // used by Initializable\n    uint256[95] private storageOffset; // forces App storage to start at after 100 slots\n    uint256 private offset;\n}\n",
  "sourcePath": "@aragon/os/contracts/apps/AppStorage.sol",
  "ast": {
    "attributes": {
      "absolutePath": "@aragon/os/contracts/apps/AppStorage.sol",
      "exportedSymbols": {
        "AppStorage": [
          6870
        ]
      }
    },
    "children": [
      {
        "attributes": {
          "literals": [
            "solidity",
            "^",
            "0.4",
            ".18"
          ]
        },
        "id": 6854,
        "name": "PragmaDirective",
        "src": "0:24:19"
      },
      {
        "attributes": {
          "SourceUnit": 9551,
          "absolutePath": "@aragon/os/contracts/kernel/IKernel.sol",
          "file": "../kernel/IKernel.sol",
          "scope": 6871,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 6855,
        "name": "ImportDirective",
        "src": "26:31:19"
      },
      {
        "attributes": {
          "baseContracts": [
            null
          ],
          "contractDependencies": [
            null
          ],
          "contractKind": "contract",
          "documentation": null,
          "fullyImplemented": true,
          "linearizedBaseContracts": [
            6870
          ],
          "name": "AppStorage",
          "scope": 6871
        },
        "children": [
          {
            "attributes": {
              "constant": false,
              "name": "kernel",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "contract IKernel",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "IKernel",
                  "referencedDeclaration": 9550,
                  "type": "contract IKernel"
                },
                "id": 6856,
                "name": "UserDefinedTypeName",
                "src": "86:7:19"
              }
            ],
            "id": 6857,
            "name": "VariableDeclaration",
            "src": "86:21:19"
          },
          {
            "attributes": {
              "constant": false,
              "name": "appId",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "bytes32",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "bytes32",
                  "type": "bytes32"
                },
                "id": 6858,
                "name": "ElementaryTypeName",
                "src": "113:7:19"
              }
            ],
            "id": 6859,
            "name": "VariableDeclaration",
            "src": "113:20:19"
          },
          {
            "attributes": {
              "constant": false,
              "name": "pinnedCode",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "address",
              "value": null,
              "visibility": "internal"
            },
            "children": [
              {
                "attributes": {
                  "name": "address",
                  "type": "address"
                },
                "id": 6860,
                "name": "ElementaryTypeName",
                "src": "139:7:19"
              }
            ],
            "id": 6861,
            "name": "VariableDeclaration",
            "src": "139:27:19"
          },
          {
            "attributes": {
              "constant": false,
              "name": "initializationBlock",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256",
              "value": null,
              "visibility": "internal"
            },
            "children": [
              {
                "attributes": {
                  "name": "uint256",
                  "type": "uint256"
                },
                "id": 6862,
                "name": "ElementaryTypeName",
                "src": "196:7:19"
              }
            ],
            "id": 6863,
            "name": "VariableDeclaration",
            "src": "196:36:19"
          },
          {
            "attributes": {
              "constant": false,
              "name": "storageOffset",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256[95] storage ref",
              "value": null,
              "visibility": "private"
            },
            "children": [
              {
                "attributes": {
                  "type": "uint256[95] storage pointer"
                },
                "children": [
                  {
                    "attributes": {
                      "name": "uint256",
                      "type": "uint256"
                    },
                    "id": 6864,
                    "name": "ElementaryTypeName",
                    "src": "263:7:19"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "hexvalue": "3935",
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "subdenomination": null,
                      "token": "number",
                      "type": "int_const 95",
                      "value": "95"
                    },
                    "id": 6865,
                    "name": "Literal",
                    "src": "271:2:19"
                  }
                ],
                "id": 6866,
                "name": "ArrayTypeName",
                "src": "263:11:19"
              }
            ],
            "id": 6867,
            "name": "VariableDeclaration",
            "src": "263:33:19"
          },
          {
            "attributes": {
              "constant": false,
              "name": "offset",
              "scope": 6870,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256",
              "value": null,
              "visibility": "private"
            },
            "children": [
              {
                "attributes": {
                  "name": "uint256",
                  "type": "uint256"
                },
                "id": 6868,
                "name": "ElementaryTypeName",
                "src": "352:7:19"
              }
            ],
            "id": 6869,
            "name": "VariableDeclaration",
            "src": "352:22:19"
          }
        ],
        "id": 6870,
        "name": "ContractDefinition",
        "src": "60:317:19"
      }
    ],
    "id": 6871,
    "name": "SourceUnit",
    "src": "0:378:19"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.18+commit.9cf6e910.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "1.0.1",
  "updatedAt": "2018-03-14T08:41:25.089Z"
}