0 txs
16 calls
constructor
constructor(address _evc, address _governor)
functions
EVC
viewfunction EVC() view returns (address)
fallbackOracle
viewfunction fallbackOracle() view returns (address)
getConfiguredOracle
viewfunction getConfiguredOracle(address base, address quote) view returns (address)
getQuote
viewfunction getQuote(uint256 inAmount, address base, address quote) view returns (uint256)
getQuotes
viewfunction getQuotes(uint256 inAmount, address base, address quote) view returns (uint256, uint256)
governor
viewfunction governor() view returns (address)
name
viewfunction name() view returns (string)
resolvedVaults
viewfunction resolvedVaults(address vault) view returns (address asset)
resolveOracle
viewfunction resolveOracle(uint256 inAmount, address base, address quote) view returns (uint256, address, address, address)
govSetConfig
nonpayablefunction govSetConfig(address base, address quote, address oracle)
govSetFallbackOracle
nonpayablefunction govSetFallbackOracle(address _fallbackOracle)
govSetResolvedVault
nonpayablefunction govSetResolvedVault(address vault, bool set)
transferGovernance
nonpayablefunction transferGovernance(address newGovernor)
events
ConfigSet
event ConfigSet(address indexed asset0, address indexed asset1, address indexed oracle)
FallbackOracleSet
event FallbackOracleSet(address indexed fallbackOracle)
GovernorSet
event GovernorSet(address indexed oldGovernor, address indexed newGovernor)
ResolvedVaultSet
event ResolvedVaultSet(address indexed vault, address indexed asset)
errors
ControllerDisabled
error ControllerDisabled()
EVC_InvalidAddress
error EVC_InvalidAddress()
Governance_CallerNotGovernor
error Governance_CallerNotGovernor()
NotAuthorized
error NotAuthorized()
PriceOracle_InvalidConfiguration
error PriceOracle_InvalidConfiguration()
PriceOracle_NotSupported
error PriceOracle_NotSupported(address base, address quote)
creation bytecode
0x60a060405234801562000010575f80fd5b506040516200139d3803806200139d83398101604081905262000033916200011c565b8181816001600160a01b0381166200005e57604051638133abd160e01b815260040160405180910390fd5b6001600160a01b03166080526200007581620000a7565b50506001600160a01b0381166200009f576040516301a4c16560e21b815260040160405180910390fd5b505062000152565b5f80546040516001600160a01b03808516939216917ff31bb200dbf42bb9cecaa49dceb87eae178b024ad3cf2930b4aaac5cb0f96ec091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b80516001600160a01b038116811462000117575f80fd5b919050565b5f80604083850312156200012e575f80fd5b620001398362000100565b9150620001496020840162000100565b90509250929050565b60805161120f6200018e5f395f818161026601528181610b5701528181610b8001528181610d0a01528181610e270152610e7b015261120f5ff3fe608060405234801561000f575f80fd5b50600436106100da575f3560e01c80638418e6f311610088578063ae68676c11610063578063ae68676c1461028a578063d38bfff4146102ab578063d6c02926146102be578063eab49501146102d1575f80fd5b80638418e6f3146102025780638aa7760814610251578063a70354a114610264575f80fd5b80630c340a24116100b85780630c340a24146101695780635ca40017146101ad578063629838e5146101e2575f80fd5b80630579e61f146100de57806306c570c11461010b57806306fdde0314610120575b5f80fd5b6100f16100ec366004610ff7565b6102e4565b604080519283526020830191909152015b60405180910390f35b61011e610119366004611036565b6103d2565b005b61015c6040518060400160405280600b81526020017f45756c6572526f7574657200000000000000000000000000000000000000000081525081565b6040516101029190611063565b5f546101889073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610102565b6101886101bb3660046110cd565b60026020525f908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b6001546101889073ffffffffffffffffffffffffffffffffffffffff1681565b610215610210366004610ff7565b61054f565b6040805194855273ffffffffffffffffffffffffffffffffffffffff938416602086015291831691840191909152166060820152608001610102565b61018861025f3660046110e8565b610731565b7f0000000000000000000000000000000000000000000000000000000000000000610188565b61029d610298366004610ff7565b61077a565b604051908152602001610102565b61011e6102b93660046110cd565b610862565b61011e6102cc36600461112c565b6108e6565b61011e6102df3660046110cd565b610a59565b5f805f6102f286868661054f565b9298509096509450905073ffffffffffffffffffffffffffffffffffffffff8085169086160361032857858692509250506103ca565b6040517f0579e61f0000000000000000000000000000000000000000000000000000000081526004810187905273ffffffffffffffffffffffffffffffffffffffff86811660248301528581166044830152821690630579e61f906064016040805180830381865afa1580156103a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c49190611158565b92509250505b935093915050565b6103dc6001610b3f565b505f5473ffffffffffffffffffffffffffffffffffffffff166103fd610e0e565b73ffffffffffffffffffffffffffffffffffffffff161461044a576040517ff9e36c0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036104af576040517f0693059400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f806104bb8585610f01565b73ffffffffffffffffffffffffffffffffffffffff8281165f818152600360209081526040808320868616808552925280832080547fffffffffffffffffffffffff000000000000000000000000000000000000000016958b16958617905551959750939550919390917f4ac83f39568b63f952374c82351889b07aff4f7e261232a20ba5a2a6d82b9ce091a45050505050565b5f805f808473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361059657508592508491508390505f610728565b5f6105a18787610731565b905073ffffffffffffffffffffffffffffffffffffffff8116156105cf578794508693508592509050610728565b73ffffffffffffffffffffffffffffffffffffffff8088165f908152600260205260409020541680156106a5576040517f07a2d13a000000000000000000000000000000000000000000000000000000008152600481018a905273ffffffffffffffffffffffffffffffffffffffff8916906307a2d13a90602401602060405180830381865afa158015610665573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610689919061117a565b985061069689828961054f565b95509550955095505050610728565b60015473ffffffffffffffffffffffffffffffffffffffff1691508161071b576040517f4ca22af000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff808a1660048301528816602482015260440160405180910390fd5b5087945086935085925090505b93509350935093565b5f805f61073e8585610f01565b73ffffffffffffffffffffffffffffffffffffffff9182165f908152600360209081526040808320938516835292905220541695945050505050565b5f8061078785858561054f565b9297509095509350905073ffffffffffffffffffffffffffffffffffffffff808416908516036107ba578491505061085b565b6040517fae68676c0000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff8581166024830152848116604483015282169063ae68676c90606401602060405180830381865afa158015610833573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610857919061117a565b9150505b9392505050565b61086c6001610b3f565b505f5473ffffffffffffffffffffffffffffffffffffffff1661088d610e0e565b73ffffffffffffffffffffffffffffffffffffffff16146108da576040517ff9e36c0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108e381610f4b565b50565b6108f06001610b3f565b505f5473ffffffffffffffffffffffffffffffffffffffff16610911610e0e565b73ffffffffffffffffffffffffffffffffffffffff161461095e576040517ff9e36c0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8161096a575f6109d7565b8273ffffffffffffffffffffffffffffffffffffffff166338d52e0f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109d79190611191565b73ffffffffffffffffffffffffffffffffffffffff8481165f8181526002602052604080822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016948616948517905551939450919290917f15beaec71c94ee69b5a824e905ca6d1260da10196b715c38b565b80180f630ce91a3505050565b610a636001610b3f565b505f5473ffffffffffffffffffffffffffffffffffffffff16610a84610e0e565b73ffffffffffffffffffffffffffffffffffffffff1614610ad1576040517ff9e36c0300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517fef21cd88756d665855f56a2652b7eda229d6f3102988a95975e46964d24d478a905f90a250565b5f73ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610e07575f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16633a1a3a1d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610be7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c0b919061117a565b905077ff00000000000000000000000000000000000000000000008116151580610c4d575076ff00000000000000000000000000000000000000000000811615155b80610c6f575075ff000000000000000000000000000000000000000000811615155b15610ca6576040517fea8e4eb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116831561085b576040517f442b172c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063442b172c90602401602060405180830381865afa158015610d51573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d759190611191565b905073ffffffffffffffffffffffffffffffffffffffff811615801590610dc857508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b15610dff576040517fea8e4eb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b509392505050565b5033919050565b5f3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168103610efc576040517f18503a1e0000000000000000000000000000000000000000000000000000000081525f60048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16906318503a1e906024016040805180830381865afa158015610ed4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef891906111ac565b5090505b919050565b5f808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1610610f3d578284610f40565b83835b915091509250929050565b5f805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917ff31bb200dbf42bb9cecaa49dceb87eae178b024ad3cf2930b4aaac5cb0f96ec091a35f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b73ffffffffffffffffffffffffffffffffffffffff811681146108e3575f80fd5b5f805f60608486031215611009575f80fd5b83359250602084013561101b81610fd6565b9150604084013561102b81610fd6565b809150509250925092565b5f805f60608486031215611048575f80fd5b833561105381610fd6565b9250602084013561101b81610fd6565b5f602080835283518060208501525f5b8181101561108f57858101830151858201604001528201611073565b505f6040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b5f602082840312156110dd575f80fd5b813561085b81610fd6565b5f80604083850312156110f9575f80fd5b823561110481610fd6565b9150602083013561111481610fd6565b809150509250929050565b80151581146108e3575f80fd5b5f806040838503121561113d575f80fd5b823561114881610fd6565b915060208301356111148161111f565b5f8060408385031215611169575f80fd5b505080516020909101519092909150565b5f6020828403121561118a575f80fd5b5051919050565b5f602082840312156111a1575f80fd5b815161085b81610fd6565b5f80604083850312156111bd575f80fd5b82516111c881610fd6565b60208401519092506111148161111f56fea2646970667358221220c3399725b3fa02110dba2cc069d7cc85f80a3ee0e0fe882661dc0f7e176d0e0e64736f6c63430008180033000000000000000000000000b2e5a73cee08593d1a076a2ae7a6e02925a640ea000000000000000000000000c6ac2365c94f007fb3f682f48c7db9c36d4fa6df