{
  "contracts": {
    "CrowdloanFactory": {
      "address": "0x155444169d953360C0Ae7caCe0a8aFc37740cBA9",
      "constructorCode": "60806040523480156100115760006000fd5b50610017565b6108a6806100266000396000f3fe",
      "bodyBytecodeHash": "884fbff7620d836579a944f062b51277287abb4a305c39702112b8d43a455941",
      "localBytecodeHash": "6579a983deb6d17694bd54b50dc849a2c6f4977927a052c0eaa23799b5d7caa7",
      "deployedBytecodeHash": "6579a983deb6d17694bd54b50dc849a2c6f4977927a052c0eaa23799b5d7caa7",
      "types": {
        "t_bool": {
          "id": "t_bool",
          "kind": "elementary",
          "label": "bool"
        },
        "t_uint256": {
          "id": "t_uint256",
          "kind": "elementary",
          "label": "uint256"
        },
        "t_array:50<t_uint256>": {
          "id": "t_array:50<t_uint256>",
          "valueType": "t_uint256",
          "length": "50",
          "kind": "array",
          "label": "uint256[50]"
        },
        "t_address": {
          "id": "t_address",
          "kind": "elementary",
          "label": "address"
        }
      },
      "storage": [
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "initialized",
          "astId": 2569,
          "type": "t_bool",
          "src": "757:24:18"
        },
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "initializing",
          "astId": 2571,
          "type": "t_bool",
          "src": "876:25:18"
        },
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "______gap",
          "astId": 2627,
          "type": "t_array:50<t_uint256>",
          "src": "1951:29:18"
        },
        {
          "contract": "CrowdloanFactory",
          "path": "contracts/factory/CrowdloanFactory.sol",
          "label": "app",
          "astId": 462,
          "type": "t_address",
          "src": "627:14:1"
        }
      ],
      "warnings": {
        "hasConstructor": false,
        "hasSelfDestruct": false,
        "hasDelegateCall": false,
        "hasInitialValuesInDeclarations": false,
        "uninitializedBaseContracts": []
      }
    },
    "Crowdloan": {
      "address": "0xb5D012Fc4b1bb189480ee77fBceaa70fC05f4370",
      "constructorCode": "60806040523480156100115760006000fd5b50610017565b611b85806100266000396000f3fe",
      "bodyBytecodeHash": "0231590226fc2edb754cbbf5c85b60a1408f576d621d2bbba3d576bd28839948",
      "localBytecodeHash": "083d32424aa7862b52ea2fd93473fe08ee0b1a6454d32e4b6a166b9e78282933",
      "deployedBytecodeHash": "083d32424aa7862b52ea2fd93473fe08ee0b1a6454d32e4b6a166b9e78282933",
      "types": {
        "t_bool": {
          "id": "t_bool",
          "kind": "elementary",
          "label": "bool"
        },
        "t_uint256": {
          "id": "t_uint256",
          "kind": "elementary",
          "label": "uint256"
        },
        "t_array:50<t_uint256>": {
          "id": "t_array:50<t_uint256>",
          "valueType": "t_uint256",
          "length": "50",
          "kind": "array",
          "label": "uint256[50]"
        },
        "t_address": {
          "id": "t_address",
          "kind": "elementary",
          "label": "address"
        },
        "t_string": {
          "id": "t_string",
          "kind": "elementary",
          "label": "string"
        },
        "t_mapping<t_uint256>": {
          "id": "t_mapping<t_uint256>",
          "valueType": "t_uint256",
          "label": "mapping(key => uint256)",
          "kind": "mapping"
        }
      },
      "storage": [
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "initialized",
          "astId": 2569,
          "type": "t_bool",
          "src": "757:24:18"
        },
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "initializing",
          "astId": 2571,
          "type": "t_bool",
          "src": "876:25:18"
        },
        {
          "contract": "Initializable",
          "path": "zos-lib/contracts/Initializable.sol",
          "label": "______gap",
          "astId": 2627,
          "type": "t_array:50<t_uint256>",
          "src": "1951:29:18"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "crowdfundStart",
          "astId": 15,
          "type": "t_uint256",
          "src": "375:29:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "crowdfundEnd",
          "astId": 17,
          "type": "t_uint256",
          "src": "410:27:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "crowdfundDuration",
          "astId": 19,
          "type": "t_uint256",
          "src": "483:32:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "borrower",
          "astId": 21,
          "type": "t_address",
          "src": "521:23:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "token",
          "astId": 23,
          "type": "t_address",
          "src": "550:19:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "principalRequested",
          "astId": 25,
          "type": "t_uint256",
          "src": "575:33:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "repaymentCap",
          "astId": 27,
          "type": "t_uint256",
          "src": "614:27:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "loanMetadataUrl",
          "astId": 29,
          "type": "t_string",
          "src": "647:29:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "amountContributed",
          "astId": 33,
          "type": "t_mapping<t_uint256>",
          "src": "711:52:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "totalContributed",
          "astId": 35,
          "type": "t_uint256",
          "src": "769:31:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "principalWithdrawn",
          "astId": 37,
          "type": "t_uint256",
          "src": "806:33:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "amountRepaid",
          "astId": 39,
          "type": "t_uint256",
          "src": "872:27:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "repaymentWithdrawn",
          "astId": 43,
          "type": "t_mapping<t_uint256>",
          "src": "905:53:0"
        },
        {
          "contract": "Crowdloan",
          "path": "contracts/crowdloan/Crowdloan.sol",
          "label": "totalRepaymentWithdrawn",
          "astId": 45,
          "type": "t_uint256",
          "src": "964:38:0"
        }
      ],
      "warnings": {
        "hasConstructor": false,
        "hasSelfDestruct": false,
        "hasDelegateCall": false,
        "hasInitialValuesInDeclarations": false,
        "uninitializedBaseContracts": []
      }
    }
  },
  "solidityLibs": {},
  "proxies": {
    "enable-credit/CrowdloanFactory": [
      {
        "address": "0xa1E3b1B0bE47F3067AA0d96394517e1d8E9A2745",
        "version": "0.2.1",
        "implementation": "0x155444169d953360C0Ae7caCe0a8aFc37740cBA9",
        "admin": "0x72e983eE23287fEE63E9Ac21bb4edc1b630C65d6",
        "kind": "Upgradeable"
      }
    ]
  },
  "manifestVersion": "2.2",
  "version": "0.2.1",
  "dependencies": {
    "openzeppelin-eth": {
      "package": "0xb6f8f11b166d526932ee04ffe4d25b810f619e34",
      "version": "2.2.0"
    }
  },
  "app": {
    "address": "0x6A8BcE7E7594D726FB8E6b1CB761fDF74d73E1Cf"
  },
  "package": {
    "address": "0x800B9D3fC0c339D755a2c37c437302f61BDB1f19"
  },
  "provider": {
    "address": "0x1dcBd193C52db9282F5D1A0fD736A791C9F99aE5"
  },
  "proxyAdmin": {
    "address": "0x72e983eE23287fEE63E9Ac21bb4edc1b630C65d6"
  }
}