UNPKG

@venusprotocol/governance-contracts

Version:
287 lines (286 loc) 18.6 kB
{ "_format": "hh-sol-artifact-1", "contractName": "MockCoreComptroller", "sourceName": "contracts/test/MockCoreComptroller.sol", "abi": [ { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "allVTokens", "outputs": [ { "internalType": "contract ICorePoolVToken", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "borrowCaps", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getAllMarkets", "outputs": [ { "internalType": "contract ICorePoolVToken[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "vToken", "type": "address" } ], "name": "markets", "outputs": [ { "internalType": "bool", "name": "isListed", "type": "bool" }, { "internalType": "uint256", "name": "collateralFactorMantissa", "type": "uint256" }, { "internalType": "bool", "name": "isVenus", "type": "bool" }, { "internalType": "uint256", "name": "liquidationThresholdMantissa", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationIncentiveMantissa", "type": "uint256" }, { "internalType": "uint96", "name": "marketPoolId", "type": "uint96" }, { "internalType": "bool", "name": "isBorrowAllowed", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint96", "name": "poolId", "type": "uint96" }, { "internalType": "address", "name": "vToken", "type": "address" } ], "name": "poolMarkets", "outputs": [ { "internalType": "bool", "name": "isListed", "type": "bool" }, { "internalType": "uint256", "name": "collateralFactorMantissa", "type": "uint256" }, { "internalType": "bool", "name": "isVenus", "type": "bool" }, { "internalType": "uint256", "name": "liquidationThresholdMantissa", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationIncentiveMantissa", "type": "uint256" }, { "internalType": "uint96", "name": "marketPoolId", "type": "uint96" }, { "internalType": "bool", "name": "isBorrowAllowed", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint96", "name": "poolId", "type": "uint96" }, { "internalType": "address", "name": "vToken", "type": "address" }, { "internalType": "uint256", "name": "newCollateralFactorMantissa", "type": "uint256" }, { "internalType": "uint256", "name": "newLiquidationThresholdMantissa", "type": "uint256" } ], "name": "setCollateralFactor", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "vTokens", "type": "address[]" }, { "internalType": "uint256[]", "name": "newCaps", "type": "uint256[]" } ], "name": "setMarketBorrowCaps", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "vTokens", "type": "address[]" }, { "internalType": "uint256[]", "name": "newCaps", "type": "uint256[]" } ], "name": "setMarketSupplyCaps", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "supplyCaps", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "vToken", "type": "address" } ], "name": "supportMarket", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "vTokenListed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x6080604052348015600f57600080fd5b50610c0b8061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c80638e8f294b11610081578063cab4f84c1161005b578063cab4f84c146102ba578063d136af44146102cd578063d571c311146102e057600080fd5b80638e8f294b146102395780639159b17714610292578063b0772d0b146102a557600080fd5b80631f3cefb5116100b25780631f3cefb5146101165780633093c11e1461014e5780634a5844321461021957600080fd5b806302c3bcbb146100ce578063186db48f14610101575b600080fd5b6100ee6100dc3660046109c8565b60006020819052908152604090205481565b6040519081526020015b60405180910390f35b61011461010f366004610a36565b610313565b005b610129610124366004610aa2565b6104d0565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100f8565b6101cd61015c366004610ad7565b73ffffffffffffffffffffffffffffffffffffffff166000818152600760209081526040808320546bffffffffffffffffffffffff861680855260048452828520868652845282852054908552600584528285209585529490925282205460ff909116949293919290918391600190565b604080519715158852602088019690965293151594860194909452606085019190915260808401526bffffffffffffffffffffffff90911660a0830152151560c082015260e0016100f8565b6100ee6102273660046109c8565b60016020526000908152604090205481565b6101cd6102473660046109c8565b73ffffffffffffffffffffffffffffffffffffffff16600090815260076020908152604080832054600283528184205460039093529083205460ff9091169391929182908190600190565b6100ee6102a0366004610b0a565b610507565b6102ad610649565b6040516100f89190610b4c565b6101146102c83660046109c8565b6106b8565b6101146102db366004610a36565b6107f1565b6103036102ee3660046109c8565b60076020526000908152604090205460ff1681565b60405190151581526020016100f8565b8281811580159061032357508082145b61038e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c696420696e7075740000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b828110156104c757600760008888848181106103af576103af610ba6565b90506020020160208101906103c491906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205460ff16610454576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b84848281811061046657610466610ba6565b905060200201356001600089898581811061048357610483610ba6565b905060200201602081019061049891906109c8565b73ffffffffffffffffffffffffffffffffffffffff168152602081019190915260400160002055600101610391565b50505050505050565b600681815481106104e057600080fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b73ffffffffffffffffffffffffffffffffffffffff831660009081526007602052604081205460ff16610596576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b846bffffffffffffffffffffffff166000036105e65773ffffffffffffffffffffffffffffffffffffffff841660009081526002602090815260408083208690556003909152902082905561063e565b6bffffffffffffffffffffffff8516600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff891680855290835281842088905593835260058252808320938352929052208290555b506000949350505050565b606060068054806020026020016040519081016040528092919081815260200182805480156106ae57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610683575b5050505050905090565b73ffffffffffffffffffffffffffffffffffffffff811660009081526007602052604090205460ff1615610748576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f76546f6b656e20616c7265616479206c697374656400000000000000000000006044820152606401610385565b73ffffffffffffffffffffffffffffffffffffffff16600081815260076020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091556006805491820181559091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b8281811580159061080157508082145b610867576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c696420696e707574000000000000000000000000000000000000006044820152606401610385565b60005b828110156104c7576007600088888481811061088857610888610ba6565b905060200201602081019061089d91906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205460ff1661092d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b84848281811061093f5761093f610ba6565b9050602002013560008089898581811061095b5761095b610ba6565b905060200201602081019061097091906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205560010161086a565b803573ffffffffffffffffffffffffffffffffffffffff811681146109c357600080fd5b919050565b6000602082840312156109da57600080fd5b6109e38261099f565b9392505050565b60008083601f8401126109fc57600080fd5b50813567ffffffffffffffff811115610a1457600080fd5b6020830191508360208260051b8501011115610a2f57600080fd5b9250929050565b60008060008060408587031215610a4c57600080fd5b843567ffffffffffffffff80821115610a6457600080fd5b610a70888389016109ea565b90965094506020870135915080821115610a8957600080fd5b50610a96878288016109ea565b95989497509550505050565b600060208284031215610ab457600080fd5b5035919050565b80356bffffffffffffffffffffffff811681146109c357600080fd5b60008060408385031215610aea57600080fd5b610af383610abb565b9150610b016020840161099f565b90509250929050565b60008060008060808587031215610b2057600080fd5b610b2985610abb565b9350610b376020860161099f565b93969395505050506040820135916060013590565b6020808252825182820181905260009190848201906040850190845b81811015610b9a57835173ffffffffffffffffffffffffffffffffffffffff1683529284019291840191600101610b68565b50909695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212201856626f9a9f80f6801ea2a3cedce6d6fb5291cfe2e5a3aeead97af9deef1cc064736f6c63430008190033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100c95760003560e01c80638e8f294b11610081578063cab4f84c1161005b578063cab4f84c146102ba578063d136af44146102cd578063d571c311146102e057600080fd5b80638e8f294b146102395780639159b17714610292578063b0772d0b146102a557600080fd5b80631f3cefb5116100b25780631f3cefb5146101165780633093c11e1461014e5780634a5844321461021957600080fd5b806302c3bcbb146100ce578063186db48f14610101575b600080fd5b6100ee6100dc3660046109c8565b60006020819052908152604090205481565b6040519081526020015b60405180910390f35b61011461010f366004610a36565b610313565b005b610129610124366004610aa2565b6104d0565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100f8565b6101cd61015c366004610ad7565b73ffffffffffffffffffffffffffffffffffffffff166000818152600760209081526040808320546bffffffffffffffffffffffff861680855260048452828520868652845282852054908552600584528285209585529490925282205460ff909116949293919290918391600190565b604080519715158852602088019690965293151594860194909452606085019190915260808401526bffffffffffffffffffffffff90911660a0830152151560c082015260e0016100f8565b6100ee6102273660046109c8565b60016020526000908152604090205481565b6101cd6102473660046109c8565b73ffffffffffffffffffffffffffffffffffffffff16600090815260076020908152604080832054600283528184205460039093529083205460ff9091169391929182908190600190565b6100ee6102a0366004610b0a565b610507565b6102ad610649565b6040516100f89190610b4c565b6101146102c83660046109c8565b6106b8565b6101146102db366004610a36565b6107f1565b6103036102ee3660046109c8565b60076020526000908152604090205460ff1681565b60405190151581526020016100f8565b8281811580159061032357508082145b61038e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c696420696e7075740000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b828110156104c757600760008888848181106103af576103af610ba6565b90506020020160208101906103c491906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205460ff16610454576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b84848281811061046657610466610ba6565b905060200201356001600089898581811061048357610483610ba6565b905060200201602081019061049891906109c8565b73ffffffffffffffffffffffffffffffffffffffff168152602081019190915260400160002055600101610391565b50505050505050565b600681815481106104e057600080fd5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b73ffffffffffffffffffffffffffffffffffffffff831660009081526007602052604081205460ff16610596576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b846bffffffffffffffffffffffff166000036105e65773ffffffffffffffffffffffffffffffffffffffff841660009081526002602090815260408083208690556003909152902082905561063e565b6bffffffffffffffffffffffff8516600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff891680855290835281842088905593835260058252808320938352929052208290555b506000949350505050565b606060068054806020026020016040519081016040528092919081815260200182805480156106ae57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610683575b5050505050905090565b73ffffffffffffffffffffffffffffffffffffffff811660009081526007602052604090205460ff1615610748576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f76546f6b656e20616c7265616479206c697374656400000000000000000000006044820152606401610385565b73ffffffffffffffffffffffffffffffffffffffff16600081815260076020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091556006805491820181559091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b8281811580159061080157508082145b610867576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f696e76616c696420696e707574000000000000000000000000000000000000006044820152606401610385565b60005b828110156104c7576007600088888481811061088857610888610ba6565b905060200201602081019061089d91906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205460ff1661092d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f76546f6b656e206e6f74206c69737465640000000000000000000000000000006044820152606401610385565b84848281811061093f5761093f610ba6565b9050602002013560008089898581811061095b5761095b610ba6565b905060200201602081019061097091906109c8565b73ffffffffffffffffffffffffffffffffffffffff16815260208101919091526040016000205560010161086a565b803573ffffffffffffffffffffffffffffffffffffffff811681146109c357600080fd5b919050565b6000602082840312156109da57600080fd5b6109e38261099f565b9392505050565b60008083601f8401126109fc57600080fd5b50813567ffffffffffffffff811115610a1457600080fd5b6020830191508360208260051b8501011115610a2f57600080fd5b9250929050565b60008060008060408587031215610a4c57600080fd5b843567ffffffffffffffff80821115610a6457600080fd5b610a70888389016109ea565b90965094506020870135915080821115610a8957600080fd5b50610a96878288016109ea565b95989497509550505050565b600060208284031215610ab457600080fd5b5035919050565b80356bffffffffffffffffffffffff811681146109c357600080fd5b60008060408385031215610aea57600080fd5b610af383610abb565b9150610b016020840161099f565b90509250929050565b60008060008060808587031215610b2057600080fd5b610b2985610abb565b9350610b376020860161099f565b93969395505050506040820135916060013590565b6020808252825182820181905260009190848201906040850190845b81811015610b9a57835173ffffffffffffffffffffffffffffffffffffffff1683529284019291840191600101610b68565b50909695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212201856626f9a9f80f6801ea2a3cedce6d6fb5291cfe2e5a3aeead97af9deef1cc064736f6c63430008190033", "linkReferences": {}, "deployedLinkReferences": {} }