0 txs
239 calls
constructor
No constructor.
functions
averagePercentageRate
viewfunction averagePercentageRate(address token, uint256 day) view returns (uint256)
getRatioFor
viewfunction getRatioFor(address token) view returns (uint256)
historicalRatios
viewfunction historicalRatios(address) view returns (uint40 lastUpdate)
inceptionOperator
viewfunction inceptionOperator() view returns (address)
MAX_THRESHOLD
viewfunction MAX_THRESHOLD() view returns (uint32)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
ratioThreshold
viewfunction ratioThreshold() view returns (uint256)
initialize
nonpayablefunction initialize(address operator)
pause
nonpayablefunction pause()
renounceOwnership
nonpayablefunction renounceOwnership()
repairRatioFor
nonpayablefunction repairRatioFor(address token, uint256 ratio)
setInceptionOperator
nonpayablefunction setInceptionOperator(address newOperator)
setRatioThreshold
nonpayablefunction setRatioThreshold(uint256 newValue)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unpause
nonpayablefunction unpause()
updateRatioBatch
nonpayablefunction updateRatioBatch(address[] addresses, uint256[] ratios)
events
Initialized
event Initialized(uint64 version)
OperatorUpdated
event OperatorUpdated(address prevValue, address newValue)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
RatioNotUpdated
event RatioNotUpdated(address indexed tokenAddress, uint256 failedRatio, string reason)
RatioThresholdChanged
event RatioThresholdChanged(uint256 prevValue, uint256 newValue)
RatioUpdated
event RatioUpdated(address indexed tokenAddress, uint256 prevValue, uint256 newValue)
Unpaused
event Unpaused(address account)
errors
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
InconsistentInputData
error InconsistentInputData()
IncorrectDay
error IncorrectDay(uint256 day)
IncorrectToken
error IncorrectToken(address token)
InvalidInitialization
error InvalidInitialization()
NewRatioThresholdInvalid
error NewRatioThresholdInvalid()
NotInitializing
error NotInitializing()
NullParams
error NullParams()
OperatorUnauthorizedAccount
error OperatorUnauthorizedAccount(address account)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
RatioThresholdNotSet
error RatioThresholdNotSet()
creation bytecode
0x608060405234801561001057600080fd5b50611179806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063715018a6116100a2578063b037d56a11610071578063b037d56a1461021e578063b148122414610231578063c4d66de814610244578063ec653c4b14610257578063f2fde38b1461029757600080fd5b8063715018a6146101dd5780638456cb59146101e55780638da5cb5b146101ed578063a1f1d48d146101f557600080fd5b80633be19c03116100de5780633be19c031461017e5780633f4ba83a146101875780635c975abb1461018f5780636878324b146101b257600080fd5b806308af5431146101105780632364753a146101355780632acaaff41461014a5780632ef86a1f1461016b575b600080fd5b61011b6305f5e10081565b60405163ffffffff90911681526020015b60405180910390f35b610148610143366004610ea2565b6102aa565b005b61015d610158366004610ed7565b610322565b60405190815260200161012c565b610148610179366004610ed7565b610519565b61015d60045481565b6101486105b2565b6000805160206111248339815191525460ff16604051901515815260200161012c565b6000546101c5906001600160a01b031681565b6040516001600160a01b03909116815260200161012c565b6101486105c4565b6101486105d6565b6101c56105e6565b61015d610203366004610f01565b6001600160a01b031660009081526001602052604090205490565b61014861022c366004610f6e565b610614565b61014861023f366004610f01565b61090c565b610148610252366004610f01565b6109a4565b610281610265366004610f01565b60026020526000908152604090206003015464ffffffffff1681565b60405164ffffffffff909116815260200161012c565b6101486102a5366004610f01565b610b10565b6102b2610b4e565b6305f5e100811015806102c3575080155b156102e15760405163b70d743f60e01b815260040160405180910390fd5b60045460408051918252602082018390527f661e4cadf2d36ec16a59d60dcfeebe23f9be2aec99852725798a4be99790840e910160405180910390a1600455565b60006001600160a01b03831661034b5760405163a22b4cd760e01b815260040160405180910390fd5b8115806103585750600782115b1561037e57604051632924c02560e21b8152600481018390526024015b60405180910390fd5b6001600160a01b0383166000908152600260205260408120805490916001600160401b03909116908190036103d157604051633dafde0760e01b81526001600160a01b0386166004820152602401610375565b83816001600160401b031610156103fe57604051632924c02560e21b815260048101859052602401610375565b6000826008610416876001600160401b038616611005565b610420919061102e565b61042b906001611042565b6009811061043b5761043b610fd9565b60048104909101546001600160401b036008600390931683026101000a909104169150600090849061046d9085611055565b61047890600161107b565b6001600160401b03166009811061049157610491610fd9565b600491828204019190066008029054906101000a90046001600160401b03166001600160401b031690508082116104cf576000945050505050610513565b6104d986826110a2565b6104e38284611005565b6104f69068056bc75e2d631000006110a2565b6105029061016d6110a2565b61050c91906110b9565b9450505050505b92915050565b610521610b4e565b6001600160a01b0382161580610535575080155b156105535760405163a22b4cd760e01b815260040160405180910390fd5b6001600160a01b038216600081815260016020908152604091829020805490859055825181815291820185905292917f4c5c23b4efbfea6d16c8453f565e165a02a22cda9a8dc7aac0a66f91d2304da6910160405180910390a2505050565b6105ba610b4e565b6105c2610b80565b565b6105cc610b4e565b6105c26000610be0565b6105de610b4e565b6105c2610c51565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b61061c610c9a565b6106246105e6565b6001600160a01b0316336001600160a01b03161415801561065057506000546001600160a01b03163314155b1561067057604051630642623160e11b8152336004820152602401610375565b60045460000361069357604051633c70047d60e01b815260040160405180910390fd5b828181146106b4576040516327ce0ee760e21b815260040160405180910390fd5b60005b818110156109045760008686838181106106d3576106d3610fd9565b90506020020160208101906106e89190610f01565b6001600160a01b0381166000908152600360209081526040808320546001909252822054929350919087878681811061072357610723610fd9565b90506020020135905060008061073a858486610ccb565b915091508161079757856001600160a01b03167f2471a7627ad27128888e46dfc72f5d674c7156d6e99c969a675492a558a0b0e0848360405161077e9291906110cd565b60405180910390a28660010196505050505050506106b7565b6001600160a01b03861660008181526001602090815260409182902086905581518781529081018690527f4c5c23b4efbfea6d16c8453f565e165a02a22cda9a8dc7aac0a66f91d2304da6910160405180910390a26001600160a01b038616600090815260036020818152604080842064ffffffffff42818116909255600290935293209182015491926201514492610831921690611005565b11156108f25780546001600160401b03168482600861085184600161107b565b61085b9190611055565b61086690600161107b565b6001600160401b03166009811061087f5761087f610fd9565b600491828204019190066008026101000a8154816001600160401b0302191690836001600160401b031602179055508060016108bb919061107b565b825467ffffffffffffffff19166001600160401b03919091161782555060038101805464ffffffffff19164264ffffffffff161790555b876001019750505050505050506106b7565b505050505050565b610914610b4e565b6001600160a01b03811661093b5760405163a22b4cd760e01b815260040160405180910390fd5b600054604080516001600160a01b03928316815291831660208301527ffbe5b6cbafb274f445d7fed869dc77a838d8243a22c460de156560e8857cad03910160405180910390a1600080546001600160a01b0319166001600160a01b0392909216919091179055565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156109e95750825b90506000826001600160401b03166001148015610a055750303b155b905081158015610a13575080155b15610a315760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610a5b57845460ff60401b1916600160401b1785555b610a6433610ddf565b610a6c610df0565b600080546001600160a01b0319166001600160a01b03881690811782556040805192835260208301919091527ffbe5b6cbafb274f445d7fed869dc77a838d8243a22c460de156560e8857cad03910160405180910390a1831561090457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b610b18610b4e565b6001600160a01b038116610b4257604051631e4fbdf760e01b815260006004820152602401610375565b610b4b81610be0565b50565b33610b576105e6565b6001600160a01b0316146105c25760405163118cdaa760e01b8152336004820152602401610375565b610b88610e00565b600080516020611124833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b610c59610c9a565b600080516020611124833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833610bc2565b6000805160206111248339815191525460ff16156105c25760405163d93c066560e01b815260040160405180910390fd5b6000606082600003610ce05760019150610dd7565b61a8c0610ced8642611005565b1015610d2d575060408051808201909152601981527f7570646174652074696d652072616e67652065786365656473000000000000006020820152610dd7565b82841115610d6f575060408051808201909152601d81527f6e657720726174696f2069732067726561746572207468616e206f6c640000006020820152610dd7565b6004546000906305f5e10090610d8590866110a2565b610d8f91906110b9565b9050610d9b8185611005565b851015610dd15750506040805180820190915260118152706e657720726174696f20746f6f206c6f7760781b6020820152610dd7565b60019250505b935093915050565b610de7610e30565b610b4b81610e79565b610df8610e30565b6105c2610e81565b6000805160206111248339815191525460ff166105c257604051638dfc202b60e01b815260040160405180910390fd5b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166105c257604051631afcd79f60e31b815260040160405180910390fd5b610b18610e30565b610e89610e30565b600080516020611124833981519152805460ff19169055565b600060208284031215610eb457600080fd5b5035919050565b80356001600160a01b0381168114610ed257600080fd5b919050565b60008060408385031215610eea57600080fd5b610ef383610ebb565b946020939093013593505050565b600060208284031215610f1357600080fd5b610f1c82610ebb565b9392505050565b60008083601f840112610f3557600080fd5b5081356001600160401b03811115610f4c57600080fd5b6020830191508360208260051b8501011115610f6757600080fd5b9250929050565b60008060008060408587031215610f8457600080fd5b84356001600160401b0380821115610f9b57600080fd5b610fa788838901610f23565b90965094506020870135915080821115610fc057600080fd5b50610fcd87828801610f23565b95989497509550505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111561051357610513610fef565b634e487b7160e01b600052601260045260246000fd5b60008261103d5761103d611018565b500690565b8082018082111561051357610513610fef565b60006001600160401b038084168061106f5761106f611018565b92169190910692915050565b6001600160401b0381811683821601908082111561109b5761109b610fef565b5092915050565b808202811582820484141761051357610513610fef565b6000826110c8576110c8611018565b500490565b82815260006020604081840152835180604085015260005b81811015611101578581018301518582016060015282016110e5565b506000606082860101526060601f19601f83011685010192505050939250505056fecd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300a264697066735822122006a3e4d66713f14f8bb034057a5dafa7173ba2215f3f1a7f8871138f19c2880f64736f6c63430008140033