{
  "contractName": "DepositAllocaterStorage",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "deposits",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "scheduledFor",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "claimedAmount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "totalAmountSignaled",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "onlySignaled",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "totalAmountSignaledByHolder",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.6.11+commit.5ef660b1\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"deposits\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"scheduledFor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"claimedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalAmountSignaled\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"onlySignaled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalAmountSignaledByHolder\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"abstract contract\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Holds the storage variable for the FDTCheckpoint (i.e ERC20, Ether)\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/ICT/DepositAllocaterStorage.sol\":\"DepositAllocaterStorage\"},\"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/ICT/DepositAllocaterStorage.sol\":{\"keccak256\":\"0xa1759a7544fae68f08463eeee61c0242f92ebc1d81a093c16168d003cb6a2b27\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://858e360a4cb03b68745940e54c6bc313a700459d60dd47ac84d280374af6c68f\",\"dweb:/ipfs/QmZbUJgyeRpmce467ZJVBRgk7goXxpnUiiEiDdyPK2A6ek\"]}},\"version\":1}",
  "bytecode": "0x608060405234801561001057600080fd5b5061015a806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80632839a1841461003b5780633d4dff7b14610073575b600080fd5b6100616004803603602081101561005157600080fd5b50356001600160a01b03166100ce565b60408051918252519081900360200190f35b6100906004803603602081101561008957600080fd5b50356100e0565b6040805196875260208701959095528585019390935260608501919091526001600160a01b03166080840152151560a0830152519081900360c00190f35b60016020526000908152604090205481565b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03811690600160a01b900460ff168656fea26469706673582212201eec0a72e767becf972ae1979474f31edbc1394a1c409c324d0e9b2f41856d4a64736f6c634300060b0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80632839a1841461003b5780633d4dff7b14610073575b600080fd5b6100616004803603602081101561005157600080fd5b50356001600160a01b03166100ce565b60408051918252519081900360200190f35b6100906004803603602081101561008957600080fd5b50356100e0565b6040805196875260208701959095528585019390935260608501919091526001600160a01b03166080840152151560a0830152519081900360c00190f35b60016020526000908152604090205481565b60006020819052908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b03811690600160a01b900460ff168656fea26469706673582212201eec0a72e767becf972ae1979474f31edbc1394a1c409c324d0e9b2f41856d4a64736f6c634300060b0033",
  "immutableReferences": {},
  "sourceMap": "178:1087:63:-:0;;;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "178:1087:63:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1152:62;;;;;;;;;;;;;;;;-1:-1:-1;1152:62:63;-1:-1:-1;;;;;1152:62:63;;:::i;:::-;;;;;;;;;;;;;;;;1103:43;;;;;;;;;;;;;;;;-1:-1:-1;1103:43:63;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1103:43:63;;;;;;;;;;;;;;;;;;;;1152:62;;;;;;;;;;;;;:::o;1103:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1103:43:63;;;-1:-1:-1;;;1103:43:63;;;;;:::o",
  "source": "// \"SPDX-License-Identifier: Apache-2.0\"\npragma solidity 0.6.11;\n\n/**\n * @title Holds the storage variable for the FDTCheckpoint (i.e ERC20, Ether)\n * @dev abstract contract\n */\ncontract DepositAllocaterStorage {\n\n    struct Deposit {\n        // Time at which the deposit is scheduled for\n        uint256 scheduledFor;\n        // Deposit amount in WEI\n        uint256 amount;\n        // Amount of funds claimed so far\n        uint256 claimedAmount;\n        // Sum of the signaled tokens of whitelisted token holders (only used if isWhitelisted == true)\n        uint256 totalAmountSignaled;\n        // Address of the token in which the deposit is made\n        address token;\n        // Indicates whether hodlers have to signal in advance to claim their share of the deposit\n        bool onlySignaled;\n        // List of addresses which have withdrawn their share of funds of the deposit\n        mapping (address => bool) claimed;\n        // Subset of holders which can claim their share of funds of the deposit\n        mapping (address => uint256) signaledAmounts;\n    }\n\n    // depositId => Deposit\n    mapping(bytes32 => Deposit) public deposits;\n    mapping(address => uint256) public totalAmountSignaledByHolder;\n\n    // Reserved\n    uint256[10] private __gap;\n}\n",
  "sourcePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/ICT/DepositAllocaterStorage.sol",
  "ast": {
    "absolutePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/ICT/DepositAllocaterStorage.sol",
    "exportedSymbols": {
      "DepositAllocaterStorage": [
        21178
      ]
    },
    "id": 21179,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 21143,
        "literals": [
          "solidity",
          "0.6",
          ".11"
        ],
        "nodeType": "PragmaDirective",
        "src": "41:23:63"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 21144,
          "nodeType": "StructuredDocumentation",
          "src": "66:111:63",
          "text": " @title Holds the storage variable for the FDTCheckpoint (i.e ERC20, Ether)\n @dev abstract contract"
        },
        "fullyImplemented": true,
        "id": 21178,
        "linearizedBaseContracts": [
          21178
        ],
        "name": "DepositAllocaterStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "DepositAllocaterStorage.Deposit",
            "id": 21165,
            "members": [
              {
                "constant": false,
                "id": 21146,
                "mutability": "mutable",
                "name": "scheduledFor",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "297:20:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21145,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "297:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21148,
                "mutability": "mutable",
                "name": "amount",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "360:14:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21147,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "360:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21150,
                "mutability": "mutable",
                "name": "claimedAmount",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "426:21:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21149,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "426:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21152,
                "mutability": "mutable",
                "name": "totalAmountSignaled",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "561:27:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21151,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "561:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21154,
                "mutability": "mutable",
                "name": "token",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "659:13:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 21153,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "659:7:63",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21156,
                "mutability": "mutable",
                "name": "onlySignaled",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "781:17:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 21155,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "781:4:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21160,
                "mutability": "mutable",
                "name": "claimed",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "894:33:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                  "typeString": "mapping(address => bool)"
                },
                "typeName": {
                  "id": 21159,
                  "keyType": {
                    "id": 21157,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "903:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "894:25:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                    "typeString": "mapping(address => bool)"
                  },
                  "valueType": {
                    "id": 21158,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "914:4:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21164,
                "mutability": "mutable",
                "name": "signaledAmounts",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "1018:44:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                  "typeString": "mapping(address => uint256)"
                },
                "typeName": {
                  "id": 21163,
                  "keyType": {
                    "id": 21161,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1027:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "1018:28:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                    "typeString": "mapping(address => uint256)"
                  },
                  "valueType": {
                    "id": 21162,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1038:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "Deposit",
            "nodeType": "StructDefinition",
            "scope": 21178,
            "src": "218:851:63",
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "3d4dff7b",
            "id": 21169,
            "mutability": "mutable",
            "name": "deposits",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1103:43:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Deposit_$21165_storage_$",
              "typeString": "mapping(bytes32 => struct DepositAllocaterStorage.Deposit)"
            },
            "typeName": {
              "id": 21168,
              "keyType": {
                "id": 21166,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "1111:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "1103:27:63",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Deposit_$21165_storage_$",
                "typeString": "mapping(bytes32 => struct DepositAllocaterStorage.Deposit)"
              },
              "valueType": {
                "contractScope": null,
                "id": 21167,
                "name": "Deposit",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 21165,
                "src": "1122:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_Deposit_$21165_storage_ptr",
                  "typeString": "struct DepositAllocaterStorage.Deposit"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "2839a184",
            "id": 21173,
            "mutability": "mutable",
            "name": "totalAmountSignaledByHolder",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1152:62:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
              "typeString": "mapping(address => uint256)"
            },
            "typeName": {
              "id": 21172,
              "keyType": {
                "id": 21170,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "1160:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              },
              "nodeType": "Mapping",
              "src": "1152:27:63",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                "typeString": "mapping(address => uint256)"
              },
              "valueType": {
                "id": 21171,
                "name": "uint256",
                "nodeType": "ElementaryTypeName",
                "src": "1171:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 21177,
            "mutability": "mutable",
            "name": "__gap",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1237:25:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$10_storage",
              "typeString": "uint256[10]"
            },
            "typeName": {
              "baseType": {
                "id": 21174,
                "name": "uint256",
                "nodeType": "ElementaryTypeName",
                "src": "1237:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 21176,
              "length": {
                "argumentTypes": null,
                "hexValue": "3130",
                "id": 21175,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "kind": "number",
                "lValueRequested": false,
                "nodeType": "Literal",
                "src": "1245:2:63",
                "subdenomination": null,
                "typeDescriptions": {
                  "typeIdentifier": "t_rational_10_by_1",
                  "typeString": "int_const 10"
                },
                "value": "10"
              },
              "nodeType": "ArrayTypeName",
              "src": "1237:11:63",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                "typeString": "uint256[10]"
              }
            },
            "value": null,
            "visibility": "private"
          }
        ],
        "scope": 21179,
        "src": "178:1087:63"
      }
    ],
    "src": "41:1225:63"
  },
  "legacyAST": {
    "absolutePath": "/Users/johannes/Documents/dev/actus-protocol/ap-monorepo/packages/ap-contracts/contracts/ICT/DepositAllocaterStorage.sol",
    "exportedSymbols": {
      "DepositAllocaterStorage": [
        21178
      ]
    },
    "id": 21179,
    "license": "Apache-2.0",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 21143,
        "literals": [
          "solidity",
          "0.6",
          ".11"
        ],
        "nodeType": "PragmaDirective",
        "src": "41:23:63"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 21144,
          "nodeType": "StructuredDocumentation",
          "src": "66:111:63",
          "text": " @title Holds the storage variable for the FDTCheckpoint (i.e ERC20, Ether)\n @dev abstract contract"
        },
        "fullyImplemented": true,
        "id": 21178,
        "linearizedBaseContracts": [
          21178
        ],
        "name": "DepositAllocaterStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "DepositAllocaterStorage.Deposit",
            "id": 21165,
            "members": [
              {
                "constant": false,
                "id": 21146,
                "mutability": "mutable",
                "name": "scheduledFor",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "297:20:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21145,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "297:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21148,
                "mutability": "mutable",
                "name": "amount",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "360:14:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21147,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "360:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21150,
                "mutability": "mutable",
                "name": "claimedAmount",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "426:21:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21149,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "426:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21152,
                "mutability": "mutable",
                "name": "totalAmountSignaled",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "561:27:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 21151,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "561:7:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21154,
                "mutability": "mutable",
                "name": "token",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "659:13:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 21153,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "659:7:63",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21156,
                "mutability": "mutable",
                "name": "onlySignaled",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "781:17:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 21155,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "781:4:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21160,
                "mutability": "mutable",
                "name": "claimed",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "894:33:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                  "typeString": "mapping(address => bool)"
                },
                "typeName": {
                  "id": 21159,
                  "keyType": {
                    "id": 21157,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "903:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "894:25:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
                    "typeString": "mapping(address => bool)"
                  },
                  "valueType": {
                    "id": 21158,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "914:4:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 21164,
                "mutability": "mutable",
                "name": "signaledAmounts",
                "nodeType": "VariableDeclaration",
                "overrides": null,
                "scope": 21165,
                "src": "1018:44:63",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                  "typeString": "mapping(address => uint256)"
                },
                "typeName": {
                  "id": 21163,
                  "keyType": {
                    "id": 21161,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1027:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "nodeType": "Mapping",
                  "src": "1018:28:63",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                    "typeString": "mapping(address => uint256)"
                  },
                  "valueType": {
                    "id": 21162,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1038:7:63",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "Deposit",
            "nodeType": "StructDefinition",
            "scope": 21178,
            "src": "218:851:63",
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "3d4dff7b",
            "id": 21169,
            "mutability": "mutable",
            "name": "deposits",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1103:43:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Deposit_$21165_storage_$",
              "typeString": "mapping(bytes32 => struct DepositAllocaterStorage.Deposit)"
            },
            "typeName": {
              "id": 21168,
              "keyType": {
                "id": 21166,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "1111:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "1103:27:63",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Deposit_$21165_storage_$",
                "typeString": "mapping(bytes32 => struct DepositAllocaterStorage.Deposit)"
              },
              "valueType": {
                "contractScope": null,
                "id": 21167,
                "name": "Deposit",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 21165,
                "src": "1122:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_Deposit_$21165_storage_ptr",
                  "typeString": "struct DepositAllocaterStorage.Deposit"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "functionSelector": "2839a184",
            "id": 21173,
            "mutability": "mutable",
            "name": "totalAmountSignaledByHolder",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1152:62:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
              "typeString": "mapping(address => uint256)"
            },
            "typeName": {
              "id": 21172,
              "keyType": {
                "id": 21170,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "1160:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              },
              "nodeType": "Mapping",
              "src": "1152:27:63",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                "typeString": "mapping(address => uint256)"
              },
              "valueType": {
                "id": 21171,
                "name": "uint256",
                "nodeType": "ElementaryTypeName",
                "src": "1171:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 21177,
            "mutability": "mutable",
            "name": "__gap",
            "nodeType": "VariableDeclaration",
            "overrides": null,
            "scope": 21178,
            "src": "1237:25:63",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$10_storage",
              "typeString": "uint256[10]"
            },
            "typeName": {
              "baseType": {
                "id": 21174,
                "name": "uint256",
                "nodeType": "ElementaryTypeName",
                "src": "1237:7:63",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 21176,
              "length": {
                "argumentTypes": null,
                "hexValue": "3130",
                "id": 21175,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "kind": "number",
                "lValueRequested": false,
                "nodeType": "Literal",
                "src": "1245:2:63",
                "subdenomination": null,
                "typeDescriptions": {
                  "typeIdentifier": "t_rational_10_by_1",
                  "typeString": "int_const 10"
                },
                "value": "10"
              },
              "nodeType": "ArrayTypeName",
              "src": "1237:11:63",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                "typeString": "uint256[10]"
              }
            },
            "value": null,
            "visibility": "private"
          }
        ],
        "scope": 21179,
        "src": "178:1087:63"
      }
    ],
    "src": "41:1225:63"
  },
  "compiler": {
    "name": "solc",
    "version": "0.6.11+commit.5ef660b1.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.2.0",
  "updatedAt": "2020-08-12T09:47:18.209Z",
  "devdoc": {
    "details": "abstract contract",
    "kind": "dev",
    "methods": {},
    "title": "Holds the storage variable for the FDTCheckpoint (i.e ERC20, Ether)",
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "version": 1
  }
}