UNPKG

@etherisc/depeg-contracts

Version:

Etherisc's smart contracts for a depeg insurance for stable coins.

1,942 lines 457 kB
{ "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentArchived", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "registryAddress", "type": "address" } ], "name": "LogComponentCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentPaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentResumed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateOld", "type": "uint8" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateNew", "type": "uint8" } ], "name": "LogComponentStateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentSuspended", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentUnpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "numberOfBundles", "type": "uint256" } ], "name": "LogMaximumNumberOfActiveBundlesSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogRiskpoolApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "LogRiskpoolBundleBurned", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "LogRiskpoolBundleClosed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "LogRiskpoolBundleCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "LogRiskpoolBundleDefunded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "LogRiskpoolBundleFunded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "LogRiskpoolBundleLocked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "indexed": false, "internalType": "bool", "name": "isMatching", "type": "bool" } ], "name": "LogRiskpoolBundleMatchesPolicy", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "LogRiskpoolBundleUnlocked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "collateralAmount", "type": "uint256" }, { "indexed": false, "internalType": "bool", "name": "isSecured", "type": "bool" } ], "name": "LogRiskpoolCollateralLocked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "collateralAmount", "type": "uint256" } ], "name": "LogRiskpoolCollateralReleased", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "riskpoolAddress", "type": "address" } ], "name": "LogRiskpoolCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogRiskpoolDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "LogRiskpoolPayoutProcessed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "LogRiskpoolPremiumProcessed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogRiskpoolProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "inputs": [], "name": "DEFAULT_FILTER_DATA_STRUCTURE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "FULL_COLLATERALIZATION_LEVEL", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "activeBundles", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "approvalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "archiveCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "riskpoolId", "type": "uint256" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "enum IBundle.BundleState", "name": "state", "type": "uint8" }, { "internalType": "bytes", "name": "filter", "type": "bytes" }, { "internalType": "uint256", "name": "capital", "type": "uint256" }, { "internalType": "uint256", "name": "lockedCapital", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" }, { "internalType": "uint256", "name": "updatedAt", "type": "uint256" } ], "internalType": "struct IBundle.Bundle", "name": "bundle", "type": "tuple" }, { "components": [ { "internalType": "enum IPolicy.ApplicationState", "name": "state", "type": "uint8" }, { "internalType": "uint256", "name": "premiumAmount", "type": "uint256" }, { "internalType": "uint256", "name": "sumInsuredAmount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" }, { "internalType": "uint256", "name": "updatedAt", "type": "uint256" } ], "internalType": "struct IPolicy.Application", "name": "application", "type": "tuple" } ], "name": "bundleMatchesApplication", "outputs": [ { "internalType": "bool", "name": "isMatching", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "bundles", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "burnBundle", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "closeBundle", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "internalType": "uint256", "name": "collateralAmount", "type": "uint256" } ], "name": "collateralizePolicy", "outputs": [ { "internalType": "bool", "name": "success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "filter", "type": "bytes" }, { "internalType": "uint256", "name": "initialAmount", "type": "uint256" } ], "name": "createBundle", "outputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "declineCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "defundBundle", "outputs": [ { "internalType": "uint256", "name": "netAmount", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "fundBundle", "outputs": [ { "internalType": "uint256", "name": "netAmount", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getActiveBundleId", "outputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getBundle", "outputs": [ { "components": [ { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "riskpoolId", "type": "uint256" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "enum IBundle.BundleState", "name": "state", "type": "uint8" }, { "internalType": "bytes", "name": "filter", "type": "bytes" }, { "internalType": "uint256", "name": "capital", "type": "uint256" }, { "internalType": "uint256", "name": "lockedCapital", "type": "uint256" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "createdAt", "type": "uint256" }, { "internalType": "uint256", "name": "updatedAt", "type": "uint256" } ], "internalType": "struct IBundle.Bundle", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "getBundleId", "outputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCapacity", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCapital", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getCollateralizationLevel", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getErc20Token", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getFilterDataStructure", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "getFullCollateralizationLevel", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "getId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getMaximumNumberOfActiveBundles", "outputs": [ { "internalType": "uint256", "name": "maximumNumberOfActiveBundles", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getName", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRegistry", "outputs": [ { "internalType": "contract IRegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getState", "outputs": [ { "internalType": "enum IComponent.ComponentState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getSumOfSumInsuredCap", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalValueLocked", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getType", "outputs": [ { "internalType": "enum IComponent.ComponentType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getWallet", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isOracle", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isProduct", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isRiskpool", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "lockBundle", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "processPolicyPayout", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "processPolicyPremium", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "proposalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "processId", "type": "bytes32" } ], "name": "releasePolicy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "resumeCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "setId", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "maximumNumberOfActiveBundles", "type": "uint256" } ], "name": "setMaximumNumberOfActiveBundles", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "suspendCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "bundleId", "type": "uint256" } ], "name": "unlockBundle", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "0": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/access/Ownable.sol", "11": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/Context.sol", "15": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/introspection/IERC165.sol", "26": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/Component.sol", "27": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/IComponent.sol", "30": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/IRiskpool.sol", "33": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IAccess.sol", "35": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IComponentEvents.sol", "38": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IRegistry.sol", "4": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/IERC20.sol", "40": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IComponentOwnerService.sol", "41": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceOperatorService.sol", "42": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceService.sol", "43": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IOracleService.sol", "44": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IProductService.sol", "45": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IRiskpoolService.sol", "46": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/tokens/IBundleToken.sol", "58": "contracts/gif/Riskpool2.sol", "7": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC721/IERC721.sol" }, "ast": { "absolutePath": "contracts/gif/Riskpool2.sol", "exportedSymbols": { "Component": [ 14352 ], "Context": [ 15648 ], "IAccess": [ 22927 ], "IBundle": [ 13382 ], "IBundleToken": [ 13428 ], "IComponent": [ 11675 ], "IComponentEvents": [ 22980 ], "IComponentOwnerService": [ 23015 ], "IERC165": [ 22864 ], "IERC20": [ 15820 ], "IERC20Metadata": [ 9510 ], "IERC721": [ 13932 ], "IInstanceOperatorService": [ 23282 ], "IInstanceService": [ 14934 ], "IOracleService": [ 23292 ], "IPolicy": [ 12649 ], "IPool": [ 23131 ], "IProductService": [ 22121 ], "IRegistry": [ 21976 ], "IRiskpool": [ 14585 ], "IRiskpoolService": [ 15040 ], "ITreasury": [ 12909 ], "Ownable": [ 9476 ], "Riskpool2": [ 7300 ] }, "id": 7301, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 6415, "literals": [ "solidity", "0.8", ".2" ], "nodeType": "PragmaDirective", "src": "39:22:58" }, { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/extensions/IERC20Metadata.sol", "file": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "id": 6416, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 9511, "src": "63:75:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC721/IERC721.sol", "file": "@openzeppelin/contracts/token/ERC721/IERC721.sol", "id": 6417, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 13933, "src": "139:58:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/IRiskpool.sol", "file": "@etherisc/gif-interface/contracts/components/IRiskpool.sol", "id": 6418, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 14586, "src": "199:68:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/Component.sol", "file": "@etherisc/gif-interface/contracts/components/Component.sol", "id": 6419, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 14353, "src": "268:68:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IBundle.sol", "file": "@etherisc/gif-interface/contracts/modules/IBundle.sol", "id": 6420, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 13383, "src": "338:63:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IPolicy.sol", "file": "@etherisc/gif-interface/contracts/modules/IPolicy.sol", "id": 6421, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 12650, "src": "402:63:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceService.sol", "file": "@etherisc/gif-interface/contracts/services/IInstanceService.sol", "id": 6422, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 14935, "src": "466:73:58", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IRiskpoolService.sol", "file": "@etherisc/gif-interface/contracts/services/IRiskpoolService.sol", "id": 6423, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 7301, "sourceUnit": 15041, "src": "540:73:58", "symbolAliases": [], "unitAlias": "" }, { "abstract": true, "baseContracts": [ { "baseName": { "id": 6424, "name": "IRiskpool", "nodeType": "IdentifierPath", "referencedDeclaration": 14585, "src": "652:9:58" }, "id": 6425, "nodeType": "InheritanceSpecifier", "src": "652:9:58" }, { "baseName": { "id": 6426, "name": "Component", "nodeType": "IdentifierPath", "referencedDeclaration": 14352, "src": "668:9:58" }, "id": 6427, "nodeType": "InheritanceSpecifier", "src": "668:9:58" } ], "contractDependencies": [ 9476, 11675, 14352, 14585, 15648, 22980 ], "contractKind": "contract", "fullyImplemented": false, "id": 7300, "linearizedBaseContracts": [ 7300, 14352, 9476, 15648, 22980, 14585, 11675 ], "name": "Riskpool2", "nameLocation": "634:9:58", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "id": 6431, "name": "LogMaximumNumberOfActiveBundlesSet", "nameLocation": "726:34:58", "nodeType": "EventDefinition", "parameters": { "id": 6430, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6429, "indexed": false, "mutability": "mutable", "name": "numberOfBundles", "nameLocation": "769:15:58", "nodeType": "VariableDeclaration", "scope": 6431, "src": "761:23:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6428, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "761:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "760:25:58" }, "src": "720:66:58" }, { "anonymous": false, "id": 6437, "name": "LogRiskpoolBundleFunded", "nameLocation": "797:23:58", "nodeType": "EventDefinition", "parameters": { "id": 6436, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6433, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "829:8:58", "nodeType": "VariableDeclaration", "scope": 6437, "src": "821:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6432, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "821:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 6435, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "847:6:58", "nodeType": "VariableDeclaration", "scope": 6437, "src": "839:14:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6434, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "839:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "820:34:58" }, "src": "791:64:58" }, { "anonymous": false, "id": 6443, "name": "LogRiskpoolBundleDefunded", "nameLocation": "866:25:58", "nodeType": "EventDefinition", "parameters": { "id": 6442, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6439, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "900:8:58", "nodeType": "VariableDeclaration", "scope": 6443, "src": "892:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6438, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "892:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 6441, "indexed": false, "mutability": "mutable", "name": "amount", "nameLocation": "918:6:58", "nodeType": "VariableDeclaration", "scope": 6443, "src": "910:14:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6440, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "910:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "891:34:58" }, "src": "860:66:58" }, { "anonymous": false, "id": 6447, "name": "LogRiskpoolBundleLocked", "nameLocation": "938:23:58", "nodeType": "EventDefinition", "parameters": { "id": 6446, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6445, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "970:8:58", "nodeType": "VariableDeclaration", "scope": 6447, "src": "962:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6444, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "962:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "961:18:58" }, "src": "932:48:58" }, { "anonymous": false, "id": 6451, "name": "LogRiskpoolBundleUnlocked", "nameLocation": "991:25:58", "nodeType": "EventDefinition", "parameters": { "id": 6450, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6449, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "1025:8:58", "nodeType": "VariableDeclaration", "scope": 6451, "src": "1017:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6448, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1017:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1016:18:58" }, "src": "985:50:58" }, { "anonymous": false, "id": 6455, "name": "LogRiskpoolBundleClosed", "nameLocation": "1046:23:58", "nodeType": "EventDefinition", "parameters": { "id": 6454, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6453, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "1078:8:58", "nodeType": "VariableDeclaration", "scope": 6455, "src": "1070:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6452, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1070:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1069:18:58" }, "src": "1040:48:58" }, { "anonymous": false, "id": 6459, "name": "LogRiskpoolBundleBurned", "nameLocation": "1099:23:58", "nodeType": "EventDefinition", "parameters": { "id": 6458, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6457, "indexed": false, "mutability": "mutable", "name": "bundleId", "nameLocation": "1131:8:58", "nodeType": "VariableDeclaration", "scope": 6459, "src": "1123:16:58", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 6456, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1123:7:58", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1122:18:58" }, "src": "1093:48:58" }, { "constant": true, "functionSelector": "45fe1c6d", "id": 6464, "mutability": "constant", "name": "FULL_COLLATERALIZATION_LEVEL", "nameLocation": "1330:28:58", "nodeType": "VariableDeclaration", "scope": 7300, "src":