{
  "contractName": "DataRegistryStorage",
  "abi": [],
  "metadata": "{\"compiler\":{\"version\":\"0.6.11+commit.5ef660b1\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"DataRegistryStorage\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Describes the storage of the DataRegistry\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/Core/Base/DataRegistry/DataRegistryStorage.sol\":\"DataRegistryStorage\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/Core/Base/DataRegistry/DataRegistryStorage.sol\":{\"keccak256\":\"0xb33c89925a9e7c267d96d1461fce5839c6cef7f0365bf62a507a839b9cd925e7\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://7ea1957775722da928f53d4263162ebb94ffb5148d6e75dd815a2906a62e1e46\",\"dweb:/ipfs/QmXTRFKAC24PR9pqfHW2W73jsHaFqXdjjahqPJjKpZSLRk\"]}},\"version\":1}",
  "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220082b2c8dddd4d09286cfb1863111e672920e480c4b66197a106f120e419388c464736f6c634300060b0033",
  "deployedBytecode": "0x6080604052600080fdfea2646970667358221220082b2c8dddd4d09286cfb1863111e672920e480c4b66197a106f120e419388c464736f6c634300060b0033",
  "immutableReferences": {},
  "sourceMap": "193:344:26:-:0;;;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "193:344:26:-:0;;;;;",
  "source": "// \"SPDX-License-Identifier: Apache-2.0\"\npragma solidity ^0.6.11;\npragma experimental ABIEncoderV2;\n\n\n/**\n * @title DataRegistryStorage\n * @notice Describes the storage of the DataRegistry\n */\ncontract DataRegistryStorage {\n\n    struct DataPoint {\n        int256 dataPoint;\n        bool isSet;\n    }\n\n    struct Set {\n        // timestamp => DataPoint\n        mapping(uint256 => DataPoint) dataPoints;\n        uint256 lastUpdatedTimestamp;\n        address provider;\n        bool isSet;\n    }\n\n    mapping(bytes32 => Set) internal sets;\n}",
  "sourcePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/Core/Base/DataRegistry/DataRegistryStorage.sol",
  "ast": {
    "absolutePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/Core/Base/DataRegistry/DataRegistryStorage.sol",
    "exportedSymbols": {
      "DataRegistryStorage": [
        7713
      ]
    },
    "id": 7714,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 7690,
        "literals": [
          "solidity",
          "^",
          "0.6",
          ".11"
        ],
        "nodeType": "PragmaDirective",
        "src": "41:24:26"
      },
      {
        "id": 7691,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "66:33:26"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 7692,
          "nodeType": "StructuredDocumentation",
          "src": "102:90:26",
          "text": " @title DataRegistryStorage\n @notice Describes the storage of the DataRegistry"
        },
        "fullyImplemented": true,
        "id": 7713,
        "linearizedBaseContracts": [
          7713
        ],
        "name": "DataRegistryStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "DataRegistryStorage.DataPoint",
            "id": 7697,
            "members": [
              {
                "constant": false,
                "id": 7694,
                "mutability": "mutable",
                "name": "dataPoint",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7697,
                "src": "256:16:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_int256",
                  "typeString": "int256"
                },
                "typeName": {
                  "id": 7693,
                  "name": "int256",
                  "nodeType": "ElementaryTypeName",
                  "src": "256:6:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7696,
                "mutability": "mutable",
                "name": "isSet",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7697,
                "src": "282:10:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 7695,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "282:4:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "DataPoint",
            "nodeType": "StructDefinition",
            "scope": 7713,
            "src": "229:70:26",
            "visibility": "public"
          },
          {
            "canonicalName": "DataRegistryStorage.Set",
            "id": 7708,
            "members": [
              {
                "constant": false,
                "id": 7701,
                "mutability": "mutable",
                "name": "dataPoints",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "360:40:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_DataPoint_$7697_storage_$",
                  "typeString": "mapping(uint256 => struct DataRegistryStorage.DataPoint)"
                },
                "typeName": {
                  "id": 7700,
                  "keyType": {
                    "id": 7698,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "368:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "360:29:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_DataPoint_$7697_storage_$",
                    "typeString": "mapping(uint256 => struct DataRegistryStorage.DataPoint)"
                  },
                  "valueType": {
                    "contractScope": null,
                    "id": 7699,
                    "name": "DataPoint",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 7697,
                    "src": "379:9:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_DataPoint_$7697_storage_ptr",
                      "typeString": "struct DataRegistryStorage.DataPoint"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7703,
                "mutability": "mutable",
                "name": "lastUpdatedTimestamp",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "410:28:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 7702,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "410:7:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7705,
                "mutability": "mutable",
                "name": "provider",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "448:16:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 7704,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "448:7:26",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7707,
                "mutability": "mutable",
                "name": "isSet",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "474:10:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 7706,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "474:4:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "Set",
            "nodeType": "StructDefinition",
            "scope": 7713,
            "src": "305:186:26",
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 7712,
            "mutability": "mutable",
            "name": "sets",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 7713,
            "src": "497:37:26",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Set_$7708_storage_$",
              "typeString": "mapping(bytes32 => struct DataRegistryStorage.Set)"
            },
            "typeName": {
              "id": 7711,
              "keyType": {
                "id": 7709,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "505:7:26",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "497:23:26",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Set_$7708_storage_$",
                "typeString": "mapping(bytes32 => struct DataRegistryStorage.Set)"
              },
              "valueType": {
                "contractScope": null,
                "id": 7710,
                "name": "Set",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 7708,
                "src": "516:3:26",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_Set_$7708_storage_ptr",
                  "typeString": "struct DataRegistryStorage.Set"
                }
              }
            },
            "value": null,
            "visibility": "internal"
          }
        ],
        "scope": 7714,
        "src": "193:344:26"
      }
    ],
    "src": "41:496:26"
  },
  "legacyAST": {
    "absolutePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/Core/Base/DataRegistry/DataRegistryStorage.sol",
    "exportedSymbols": {
      "DataRegistryStorage": [
        7713
      ]
    },
    "id": 7714,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 7690,
        "literals": [
          "solidity",
          "^",
          "0.6",
          ".11"
        ],
        "nodeType": "PragmaDirective",
        "src": "41:24:26"
      },
      {
        "id": 7691,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "66:33:26"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 7692,
          "nodeType": "StructuredDocumentation",
          "src": "102:90:26",
          "text": " @title DataRegistryStorage\n @notice Describes the storage of the DataRegistry"
        },
        "fullyImplemented": true,
        "id": 7713,
        "linearizedBaseContracts": [
          7713
        ],
        "name": "DataRegistryStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "DataRegistryStorage.DataPoint",
            "id": 7697,
            "members": [
              {
                "constant": false,
                "id": 7694,
                "mutability": "mutable",
                "name": "dataPoint",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7697,
                "src": "256:16:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_int256",
                  "typeString": "int256"
                },
                "typeName": {
                  "id": 7693,
                  "name": "int256",
                  "nodeType": "ElementaryTypeName",
                  "src": "256:6:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7696,
                "mutability": "mutable",
                "name": "isSet",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7697,
                "src": "282:10:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 7695,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "282:4:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "DataPoint",
            "nodeType": "StructDefinition",
            "scope": 7713,
            "src": "229:70:26",
            "visibility": "public"
          },
          {
            "canonicalName": "DataRegistryStorage.Set",
            "id": 7708,
            "members": [
              {
                "constant": false,
                "id": 7701,
                "mutability": "mutable",
                "name": "dataPoints",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "360:40:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_DataPoint_$7697_storage_$",
                  "typeString": "mapping(uint256 => struct DataRegistryStorage.DataPoint)"
                },
                "typeName": {
                  "id": 7700,
                  "keyType": {
                    "id": 7698,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "368:7:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "360:29:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_DataPoint_$7697_storage_$",
                    "typeString": "mapping(uint256 => struct DataRegistryStorage.DataPoint)"
                  },
                  "valueType": {
                    "contractScope": null,
                    "id": 7699,
                    "name": "DataPoint",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 7697,
                    "src": "379:9:26",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_DataPoint_$7697_storage_ptr",
                      "typeString": "struct DataRegistryStorage.DataPoint"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7703,
                "mutability": "mutable",
                "name": "lastUpdatedTimestamp",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "410:28:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 7702,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "410:7:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7705,
                "mutability": "mutable",
                "name": "provider",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "448:16:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 7704,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "448:7:26",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 7707,
                "mutability": "mutable",
                "name": "isSet",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 7708,
                "src": "474:10:26",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 7706,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "474:4:26",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "Set",
            "nodeType": "StructDefinition",
            "scope": 7713,
            "src": "305:186:26",
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 7712,
            "mutability": "mutable",
            "name": "sets",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 7713,
            "src": "497:37:26",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Set_$7708_storage_$",
              "typeString": "mapping(bytes32 => struct DataRegistryStorage.Set)"
            },
            "typeName": {
              "id": 7711,
              "keyType": {
                "id": 7709,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "505:7:26",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "497:23:26",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Set_$7708_storage_$",
                "typeString": "mapping(bytes32 => struct DataRegistryStorage.Set)"
              },
              "valueType": {
                "contractScope": null,
                "id": 7710,
                "name": "Set",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 7708,
                "src": "516:3:26",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_Set_$7708_storage_ptr",
                  "typeString": "struct DataRegistryStorage.Set"
                }
              }
            },
            "value": null,
            "visibility": "internal"
          }
        ],
        "scope": 7714,
        "src": "193:344:26"
      }
    ],
    "src": "41:496:26"
  },
  "compiler": {
    "name": "solc",
    "version": "0.6.11+commit.5ef660b1.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.2.0",
  "updatedAt": "2020-08-12T09:47:17.757Z",
  "devdoc": {
    "kind": "dev",
    "methods": {},
    "title": "DataRegistryStorage",
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "notice": "Describes the storage of the DataRegistry",
    "version": 1
  }
}