@ensuro/vaults
Version:
ERC4626s for asset management, used by the Ensuro Protocol
203 lines (202 loc) • 10.6 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "IdleInvestStrategy",
"sourceName": "contracts/strategies/IdleInvestStrategy.sol",
"abi": [
{
"inputs": [
{
"internalType": "contract IERC20Metadata",
"name": "asset_",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "CanBeCalledOnlyThroughDelegateCall",
"type": "error"
},
{
"inputs": [],
"name": "CannotDisconnectWithAssets",
"type": "error"
},
{
"inputs": [],
"name": "NoExtraDataAllowed",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "asset",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "initData",
"type": "bytes"
}
],
"name": "connect",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "assets",
"type": "uint256"
}
],
"name": "deposit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bool",
"name": "force",
"type": "bool"
}
],
"name": "disconnect",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "forwardEntryPoint",
"outputs": [
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "maxDeposit",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "contract_",
"type": "address"
}
],
"name": "maxWithdraw",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "storageSlot",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "contract_",
"type": "address"
}
],
"name": "totalAssets",
"outputs": [
{
"internalType": "uint256",
"name": "assets",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "assets",
"type": "uint256"
}
],
"name": "withdraw",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x3060808181526040610100818152601e610140527f636f2e656e7375726f2e496e766573745374726174656779436c69656e740000610160526101209390935260e08290526101809052902060a052348015610059575f5ffd5b506040516106e13803806106e183398101604081905261007891610089565b6001600160a01b031660c0526100b6565b5f60208284031215610099575f5ffd5b81516001600160a01b03811681146100af575f5ffd5b9392505050565b60805160a05160c0516105e56100fc5f395f818161014a015261036a01525f61011701525f81816101c9015281816102120152818161025e01526102da01526105e55ff3fe608060405234801561000f575f5ffd5b506004361061009b575f3560e01c80639c4667a2116100635780639c4667a2146101395780639cd4712814610184578063b6b55f25146100c8578063ce96cb7714610197578063f3e0ffbf146101aa575f5ffd5b80630981b1c21461009f5780632e1a7d4d146100c8578063402d267d146100dd5780635a117456146100ff5780635b9a4c3514610112575b5f5ffd5b6100b26100ad366004610474565b6101bd565b6040516100bf91906104c6565b60405180910390f35b6100db6100d63660046104fb565b610208565b005b6100f16100eb366004610512565b505f1990565b6040519081526020016100bf565b6100db61010d36600461053f565b610254565b6100f17f000000000000000000000000000000000000000000000000000000000000000081565b61016c610147366004610512565b507f000000000000000000000000000000000000000000000000000000000000000090565b6040516001600160a01b0390911681526020016100bf565b6100db61019236600461055e565b6102d0565b6100f16101a5366004610512565b610339565b6100f16101b8366004610512565b610349565b60606001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361009b57604051632abf118b60e21b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361025157604051632abf118b60e21b815260040160405180910390fd5b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361029d57604051632abf118b60e21b815260040160405180910390fd5b801580156102b257506102af30610349565b15155b15610251576040516342a176d160e11b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361031957604051632abf118b60e21b815260040160405180910390fd5b805115610251576040516350701b6160e01b815260040160405180910390fd5b5f61034382610349565b92915050565b6040516370a0823160e01b81526001600160a01b0382811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156103b1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103439190610598565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126103f8575f5ffd5b813567ffffffffffffffff811115610412576104126103d5565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610441576104416103d5565b604052818152838201602001851015610458575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f60408385031215610485575f5ffd5b823560ff81168114610495575f5ffd5b9150602083013567ffffffffffffffff8111156104b0575f5ffd5b6104bc858286016103e9565b9150509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6020828403121561050b575f5ffd5b5035919050565b5f60208284031215610522575f5ffd5b81356001600160a01b0381168114610538575f5ffd5b9392505050565b5f6020828403121561054f575f5ffd5b81358015158114610538575f5ffd5b5f6020828403121561056e575f5ffd5b813567ffffffffffffffff811115610584575f5ffd5b610590848285016103e9565b949350505050565b5f602082840312156105a8575f5ffd5b505191905056fea26469706673582212204bb7ca8908fb12a1ce9ee20d463fc4caaa1b0f114490bfeaa5835157ee53448d64736f6c634300081e0033",
"deployedBytecode": "0x608060405234801561000f575f5ffd5b506004361061009b575f3560e01c80639c4667a2116100635780639c4667a2146101395780639cd4712814610184578063b6b55f25146100c8578063ce96cb7714610197578063f3e0ffbf146101aa575f5ffd5b80630981b1c21461009f5780632e1a7d4d146100c8578063402d267d146100dd5780635a117456146100ff5780635b9a4c3514610112575b5f5ffd5b6100b26100ad366004610474565b6101bd565b6040516100bf91906104c6565b60405180910390f35b6100db6100d63660046104fb565b610208565b005b6100f16100eb366004610512565b505f1990565b6040519081526020016100bf565b6100db61010d36600461053f565b610254565b6100f17f000000000000000000000000000000000000000000000000000000000000000081565b61016c610147366004610512565b507f000000000000000000000000000000000000000000000000000000000000000090565b6040516001600160a01b0390911681526020016100bf565b6100db61019236600461055e565b6102d0565b6100f16101a5366004610512565b610339565b6100f16101b8366004610512565b610349565b60606001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361009b57604051632abf118b60e21b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361025157604051632abf118b60e21b815260040160405180910390fd5b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361029d57604051632abf118b60e21b815260040160405180910390fd5b801580156102b257506102af30610349565b15155b15610251576040516342a176d160e11b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361031957604051632abf118b60e21b815260040160405180910390fd5b805115610251576040516350701b6160e01b815260040160405180910390fd5b5f61034382610349565b92915050565b6040516370a0823160e01b81526001600160a01b0382811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156103b1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103439190610598565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126103f8575f5ffd5b813567ffffffffffffffff811115610412576104126103d5565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610441576104416103d5565b604052818152838201602001851015610458575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f60408385031215610485575f5ffd5b823560ff81168114610495575f5ffd5b9150602083013567ffffffffffffffff8111156104b0575f5ffd5b6104bc858286016103e9565b9150509250929050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6020828403121561050b575f5ffd5b5035919050565b5f60208284031215610522575f5ffd5b81356001600160a01b0381168114610538575f5ffd5b9392505050565b5f6020828403121561054f575f5ffd5b81358015158114610538575f5ffd5b5f6020828403121561056e575f5ffd5b813567ffffffffffffffff811115610584575f5ffd5b610590848285016103e9565b949350505050565b5f602082840312156105a8575f5ffd5b505191905056fea26469706673582212204bb7ca8908fb12a1ce9ee20d463fc4caaa1b0f114490bfeaa5835157ee53448d64736f6c634300081e0033",
"linkReferences": {},
"deployedLinkReferences": {}
}