0 txs
1.8k calls
constructor
constructor()
functions
accessControlManager
viewfunction accessControlManager() view returns (address)
getPrice
viewfunction getPrice(address asset) view returns (uint256)
NATIVE_TOKEN_ADDR
viewfunction NATIVE_TOKEN_ADDR() view returns (address)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
prices
viewfunction prices(address) view returns (uint256)
tokenConfigs
viewfunction tokenConfigs(address) view returns (address asset, address feed, uint256 maxStalePeriod)
acceptOwnership
nonpayablefunction acceptOwnership()
initialize
nonpayablefunction initialize(address accessControlManager_)
renounceOwnership
nonpayablefunction renounceOwnership()
setAccessControlManager
nonpayablefunction setAccessControlManager(address accessControlManager_)
setDirectPrice
nonpayablefunction setDirectPrice(address asset, uint256 price)
setTokenConfig
nonpayablefunction setTokenConfig(tuple tokenConfig)
setTokenConfigs
nonpayablefunction setTokenConfigs(tuple[] tokenConfigs_)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
Initialized
event Initialized(uint8 version)
NewAccessControlManager
event NewAccessControlManager(address oldAccessControlManager, address newAccessControlManager)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
PricePosted
event PricePosted(address indexed asset, uint256 previousPriceMantissa, uint256 newPriceMantissa)
TokenConfigAdded
event TokenConfigAdded(address indexed asset, address feed, uint256 maxStalePeriod)
errors
Unauthorized
error Unauthorized(address sender, address calledContract, string methodSignature)
creation bytecode
0x6080604052348015600e575f80fd5b5060156019565b60d3565b5f54610100900460ff161560835760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161460d1575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6112a4806100e05f395ff3fe608060405234801561000f575f80fd5b50600436106100f0575f3560e01c806379ba509711610093578063c4d66de811610063578063c4d66de81461022a578063cfed246b1461023d578063e30c39781461025c578063f2fde38b1461026d575f80fd5b806379ba5097146101d15780638da5cb5b146101d9578063a9534f8a146101fe578063b4a0bdf314610219575f80fd5b80631b69dc5f116100ce5780631b69dc5f1461012f578063392787d21461019557806341976e09146101a8578063715018a6146101c9575f80fd5b80630431710e146100f457806309a8acb0146101095780630e32cb861461011c575b5f80fd5b610107610102366004610e67565b610280565b005b610107610117366004610f12565b610304565b61010761012a366004610f3a565b6103c8565b61016a61013d366004610f3a565b60ca6020525f90815260409020805460018201546002909201546001600160a01b03918216929091169083565b604080516001600160a01b039485168152939092166020840152908201526060015b60405180910390f35b6101076101a3366004610f53565b6103dc565b6101bb6101b6366004610f3a565b61054f565b60405190815260200161018c565b6101076105fa565b61010761060d565b6033546001600160a01b03165b6040516001600160a01b03909116815260200161018c565b6101e673bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb81565b6097546001600160a01b03166101e6565b610107610238366004610f3a565b610684565b6101bb61024b366004610f3a565b60c96020525f908152604090205481565b6065546001600160a01b03166101e6565b61010761027b366004610f3a565b610792565b80515f036102c95760405162461bcd60e51b815260206004820152601160248201527006c656e6774682063616e2774206265203607c1b60448201526064015b60405180910390fd5b80515f5b818110156102ff576102f78382815181106102ea576102ea610f6d565b60200260200101516103dc565b6001016102cd565b505050565b816001600160a01b03811661032b5760405162461bcd60e51b81526004016102c090610f81565b6103696040518060400160405280601f81526020017f736574446972656374507269636528616464726573732c75696e743235362900815250610803565b6001600160a01b0383165f81815260c96020908152604091829020805490869055825181815291820186905292917fa0844d44570b5ec5ac55e9e7d1e7fc8149b4f33b4b61f3c8fc08bacce058faee910160405180910390a250505050565b6103d061089a565b6103d9816108f4565b50565b80516001600160a01b0381166104045760405162461bcd60e51b81526004016102c090610f81565b60208201516001600160a01b03811661042f5760405162461bcd60e51b81526004016102c090610f81565b61046d6040518060400160405280601b81526020017f736574546f6b656e436f6e66696728546f6b656e436f6e666967290000000000815250610803565b82604001515f036104c05760405162461bcd60e51b815260206004820152601a60248201527f7374616c6520706572696f642063616e2774206265207a65726f00000000000060448201526064016102c0565b82516001600160a01b039081165f90815260ca6020908152604091829020865181549085166001600160a01b0319918216811783558389015160018401805491909716921682179095558388015160029092018290558351908152918201527f3cc8d9cb9370a23a8b9ffa75efa24cecb65c4693980e58260841adc474983c5f910160405180910390a2505050565b5f8073bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba196001600160a01b0384160161057e575060126105e9565b5f839050806001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105be573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105e29190610fb0565b60ff169150505b6105f383826109b2565b9392505050565b61060261089a565b61060b5f610a12565b565b60655433906001600160a01b0316811461067b5760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b60648201526084016102c0565b6103d981610a12565b5f54610100900460ff16158080156106a257505f54600160ff909116105b806106bb5750303b1580156106bb57505f5460ff166001145b61071e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c0565b5f805460ff19166001179055801561073f575f805461ff0019166101001790555b61074882610a2b565b801561078e575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15b5050565b61079a61089a565b606580546001600160a01b0383166001600160a01b031990911681179091556107cb6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6097546040516318c5e8ab60e01b81525f916001600160a01b0316906318c5e8ab906108359033908690600401610ffe565b602060405180830381865afa158015610850573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108749190611029565b90508061078e57333083604051634a3fa29360e01b81526004016102c093929190611048565b6033546001600160a01b0316331461060b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c0565b6001600160a01b0381166109585760405162461bcd60e51b815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e61676572206164604482015264647265737360d81b60648201526084016102c0565b609780546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa09101610785565b6001600160a01b0382165f90815260c9602052604081205480156109d8578091506109e4565b6109e184610a62565b91505b5f6109f0846012611090565b90506109fd81600a611183565b610a07908461118e565b925050505b92915050565b606580546001600160a01b03191690556103d981610ccd565b5f54610100900460ff16610a515760405162461bcd60e51b81526004016102c0906111a5565b610a59610d1e565b6103d981610d4c565b6001600160a01b038082165f90815260ca602052604081205490911680610a9b5760405162461bcd60e51b81526004016102c090610f81565b6001600160a01b038084165f90815260ca6020908152604080832081516060810183528154861681526001820154909516858401819052600290910154858301819052825163313ce56760e01b81529251919490939092859263313ce567926004808401939192918290030181865afa158015610b1a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3e9190610fb0565b610b499060126111f0565b60ff1690505f80846001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610b8c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bb09190611222565b509350509250505f8213610c065760405162461bcd60e51b815260206004820181905260248201527f636861696e6c696e6b207072696365206d75737420626520706f73697469766560448201526064016102c0565b80421015610c565760405162461bcd60e51b815260206004820152601c60248201527f757064617465644174206578636565647320626c6f636b2074696d650000000060448201526064016102c0565b4281900384811115610caa5760405162461bcd60e51b815260206004820152601760248201527f636861696e6c696e6b207072696365206578706972656400000000000000000060448201526064016102c0565b610cb584600a611183565b610cbf908461118e565b9a9950505050505050505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16610d445760405162461bcd60e51b81526004016102c0906111a5565b61060b610d72565b5f54610100900460ff166103d05760405162461bcd60e51b81526004016102c0906111a5565b5f54610100900460ff16610d985760405162461bcd60e51b81526004016102c0906111a5565b61060b33610a12565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610dde57610dde610da1565b604052919050565b80356001600160a01b0381168114610dfc575f80fd5b919050565b5f60608284031215610e11575f80fd5b6040516060810181811067ffffffffffffffff82111715610e3457610e34610da1565b604052905080610e4383610de6565b8152610e5160208401610de6565b6020820152604083013560408201525092915050565b5f6020808385031215610e78575f80fd5b823567ffffffffffffffff80821115610e8f575f80fd5b818501915085601f830112610ea2575f80fd5b813581811115610eb457610eb4610da1565b610ec2848260051b01610db5565b81815284810192506060918202840185019188831115610ee0575f80fd5b938501935b82851015610f0657610ef78986610e01565b84529384019392850192610ee5565b50979650505050505050565b5f8060408385031215610f23575f80fd5b610f2c83610de6565b946020939093013593505050565b5f60208284031215610f4a575f80fd5b6105f382610de6565b5f60608284031215610f63575f80fd5b6105f38383610e01565b634e487b7160e01b5f52603260045260245ffd5b60208082526015908201527463616e2774206265207a65726f206164647265737360581b604082015260600190565b5f60208284031215610fc0575f80fd5b815160ff811681146105f3575f80fd5b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b6001600160a01b03831681526040602082018190525f9061102190830184610fd0565b949350505050565b5f60208284031215611039575f80fd5b815180151581146105f3575f80fd5b6001600160a01b038481168252831660208201526060604082018190525f9061107390830184610fd0565b95945050505050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610a0c57610a0c61107c565b600181815b808511156110dd57815f19048211156110c3576110c361107c565b808516156110d057918102915b93841c93908002906110a8565b509250929050565b5f826110f357506001610a0c565b816110ff57505f610a0c565b8160018114611115576002811461111f5761113b565b6001915050610a0c565b60ff8411156111305761113061107c565b50506001821b610a0c565b5060208310610133831016604e8410600b841016171561115e575081810a610a0c565b61116883836110a3565b805f190482111561117b5761117b61107c565b029392505050565b5f6105f383836110e5565b8082028115828204841417610a0c57610a0c61107c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60ff8281168282160390811115610a0c57610a0c61107c565b805169ffffffffffffffffffff81168114610dfc575f80fd5b5f805f805f60a08688031215611236575f80fd5b61123f86611209565b945060208601519350604086015192506060860151915061126260808701611209565b9050929550929590935056fea2646970667358221220b6ecbf1a3d6948c48f17aa47936edd7e35fc26684a8d5017ab17fcb2d0de504f64736f6c63430008190033