0 txs
7.8k calls
constructor
constructor(string description_, address targetAsset_, address uniV3LikePool_, address blueAssetUsdCLFeed_, uint32 twapDuration_, uint16 blockTimeInterval_)
functions
_pairedBlueAsset
viewfunction _pairedBlueAsset() view returns (address)
BLOCKTIME_INTERVAL_DENOMINATOR
viewfunction BLOCKTIME_INTERVAL_DENOMINATOR() view returns (uint16)
blockTimeInterval
viewfunction blockTimeInterval() view returns (uint16)
blueAssetUsdCLFeed
viewfunction blueAssetUsdCLFeed() view returns (address)
decimals
viewfunction decimals() view returns (uint8)
description
viewfunction description() view returns (string)
getAnswer
purefunction getAnswer(uint256) pure returns (int256)
getRoundData
purefunction getRoundData(uint80) pure returns (uint80, int256, uint256, uint256, uint80)
getTimestamp
viewfunction getTimestamp(uint256 roundId) view returns (uint256)
latestAnswer
viewfunction latestAnswer() view returns (int256)
latestRound
viewfunction latestRound() view returns (uint256)
latestRoundData
viewfunction latestRoundData() view returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound)
latestTimestamp
viewfunction latestTimestamp() view returns (uint256)
targetAsset
viewfunction targetAsset() view returns (address)
uniV3LikePool
viewfunction uniV3LikePool() view returns (address)
version
purefunction version() pure returns (uint256)
events
AnswerUpdated
event AnswerUpdated(int256 indexed current, uint256 indexed roundId, uint256 timestamp)
NewRound
event NewRound(uint256 indexed roundId, address indexed startedBy, uint256 startedAt)
errors
CannotComputeHistoricalPrice
error CannotComputeHistoricalPrice()
FailedToQueryPool
error FailedToQueryPool()
InvalidReponseCLOracle
error InvalidReponseCLOracle()
InvalidSlot0Size
error InvalidSlot0Size()
InvalidTwapDuration
error InvalidTwapDuration()
InvalidUniV3LikePoolAddress
error InvalidUniV3LikePoolAddress()
TwapDurationTooLarge
error TwapDurationTooLarge(uint32 duration, uint32 cardinalityRequired)
ZeroAddress
error ZeroAddress()
creation bytecode
0x6101206040523480156200001257600080fd5b506040516200170e3803806200170e833981016040819052620000359162000715565b6001600160a01b0385166200005d5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b038416620000855760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b038316620000ad5760405163d92e233d60e01b815260040160405180910390fd5b603c8263ffffffff161015620000d6576040516375544da160e01b815260040160405180910390fd5b8551620000eb906000906020890190620005d3565b50846001600160a01b031660c0816001600160a01b0316815250506000846001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000147573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016d91906200082b565b90506000856001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d691906200082b565b9050816001600160a01b0316876001600160a01b0316141580156200020d5750806001600160a01b0316876001600160a01b031614155b156200022c57604051639f7f0bf960e01b815260040160405180910390fd5b866001600160a01b0316826001600160a01b0316146200024d57816200024f565b805b6001600160a01b0390811660a05286811660e05285166101008190526040805163313ce56760e01b8152905163313ce567916004808201926020929091908290030181865afa158015620002a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002cd919062000852565b60ff166080526103e861ffff84161015620002fe576001805461ffff60201b19166503e8000000001790556200031a565b6001805461ffff60201b191664010000000061ffff8616021790555b60006200032785620003e9565b6001805463ffffffff191663ffffffff881617905590506000806200034b62000485565b50945094505050508261ffff168261ffff161080156200037257508261ffff168161ffff16105b15620003d8576040516332148f6760e01b815261ffff841660048201526001600160a01b038a16906332148f6790602401600060405180830381600087803b158015620003be57600080fd5b505af1158015620003d3573d6000803e3d6000fd5b505050505b505050505050505050505062000ace565b600180546000918291640100000000900461ffff1690816200040e6103e8876200088d565b6200041a9190620008bc565b620004269190620008e7565b6200043291906200090f565b6200043f906001620008bc565b905061ffff63ffffffff821611156200047f57604051632212b64b60e21b815263ffffffff80851660048301528216602482015260440160405180910390fd5b92915050565b60e05160408051600481526024810182526020810180516001600160e01b0316633850c7bd60e01b179052905160009283928392839283928392839283926001600160a01b0390911691620004db919062000941565b600060405180830381855afa9150503d806000811462000518576040519150601f19603f3d011682016040523d82523d6000602084013e6200051d565b606091505b509150915081620005415760405163933373dd60e01b815260040160405180910390fd5b60c08151141562000577578080602001905181019062000562919062000983565b949c50929a50909850965094509250620005c9565b60e081511415620005b05780806020019051810190620005989190620009fa565b959d50939b5091995097509550909350620005c99050565b60405163ae10f38360e01b815260040160405180910390fd5b5050909192939495565b828054620005e19062000a91565b90600052602060002090601f01602090048101928262000605576000855562000650565b82601f106200062057805160ff191683800117855562000650565b8280016001018555821562000650579182015b828111156200065057825182559160200191906001019062000633565b506200065e92915062000662565b5090565b5b808211156200065e576000815560010162000663565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620006ac57818101518382015260200162000692565b83811115620006bc576000848401525b50505050565b6001600160a01b0381168114620006d857600080fd5b50565b8051620006e881620006c2565b919050565b805163ffffffff81168114620006e857600080fd5b805161ffff81168114620006e857600080fd5b60008060008060008060c087890312156200072f57600080fd5b86516001600160401b03808211156200074757600080fd5b818901915089601f8301126200075c57600080fd5b81518181111562000771576200077162000679565b604051601f8201601f19908116603f011681019083821181831017156200079c576200079c62000679565b816040528281528c6020848701011115620007b657600080fd5b620007c98360208301602088016200068f565b809a505050505050620007df60208801620006db565b9450620007ef60408801620006db565b9350620007ff60608801620006db565b92506200080f60808801620006ed565b91506200081f60a0880162000702565b90509295509295509295565b6000602082840312156200083e57600080fd5b81516200084b81620006c2565b9392505050565b6000602082840312156200086557600080fd5b815160ff811681146200084b57600080fd5b634e487b7160e01b600052601160045260246000fd5b600063ffffffff80831681851681830481118215151615620008b357620008b362000877565b02949350505050565b600063ffffffff808316818516808303821115620008de57620008de62000877565b01949350505050565b600063ffffffff8381169083168181101562000907576200090762000877565b039392505050565b600063ffffffff808416806200093557634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b60008251620009558184602087016200068f565b9190910192915050565b8051600281900b8114620006e857600080fd5b80518015158114620006e857600080fd5b60008060008060008060c087890312156200099d57600080fd5b8651620009aa81620006c2565b9550620009ba602088016200095f565b9450620009ca6040880162000702565b9350620009da6060880162000702565b9250620009ea6080880162000702565b91506200081f60a0880162000972565b600080600080600080600060e0888a03121562000a1657600080fd5b875162000a2381620006c2565b965062000a33602089016200095f565b955062000a436040890162000702565b945062000a536060890162000702565b935062000a636080890162000702565b925062000a7360a08901620006ed565b915062000a8360c0890162000972565b905092959891949750929550565b600181811c9082168062000aa657607f821691505b6020821081141562000ac857634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a05160c05160e05161010051610bca62000b44600039600081816101180152818161040101526105040152600081816101af01526106a40152600081816101880152818161074101526107fc015260008181610268015281816105e40152610824015260006101590152610bca6000f3fe608060405234801561001057600080fd5b50600436106100e05760003560e01c80637284e416116100875780637284e416146101f65780638205bf6a1461020b5780638aa5f796146102135780639a6fc8f51461021c578063a1161b3c14610263578063b5ab58dc1461028a578063b633620c1461029d578063feaf968c146102b057600080fd5b806306cd6587146100e557806325eb65a814610113578063313ce567146101525780633d4403ac1461018357806341e1a893146101aa57806350d25bcd146101d157806354fd4d50146101e7578063668a0f02146101ee575b600080fd5b6001546100fb90640100000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b61013a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161010a565b60405160ff7f000000000000000000000000000000000000000000000000000000000000000016815260200161010a565b61013a7f000000000000000000000000000000000000000000000000000000000000000081565b61013a7f000000000000000000000000000000000000000000000000000000000000000081565b6101d96102b8565b60405190815260200161010a565b60016101d9565b6101d96102d8565b6101fe6102f3565b60405161010a91906108b3565b6101d9610385565b6100fb6103e881565b61022f61022a366004610920565b61039a565b604080516001600160501b03968716815260208101959095528401929092526060830152909116608082015260a00161010a565b61013a7f000000000000000000000000000000000000000000000000000000000000000081565b6101d961029836600461093d565b6103bb565b6101d96102ab36600461093d565b6103d6565b61022f610477565b6000806102c36104bc565b90506102d281602001516105d5565b91505090565b6000806102e36104bc565b516001600160501b031692915050565b60606000805461030290610956565b80601f016020809104026020016040519081016040528092919081815260200182805461032e90610956565b801561037b5780601f106103505761010080835404028352916020019161037b565b820191906000526020600020905b81548152906001019060200180831161035e57829003601f168201915b5050505050905090565b6000806103906104bc565b6060015192915050565b600080600080600060405163c2d938c560e01b815260040160405180910390fd5b600060405163c2d938c560e01b815260040160405180910390fd5b604051639a6fc8f560e01b81526001600160501b038216600482015260009081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639a6fc8f59060240160a060405180830381865afa158015610448573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061046c9190610991565b509695505050505050565b6000806000806000806104886104bc565b9050806000015161049c82602001516105d5565b604083015160608401516080909401519299919850965091945092509050565b6105006040518060a0016040528060006001600160501b0316815260200160008152602001600081526020016000815260200160006001600160501b031681525090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610560573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105849190610991565b6001600160501b039081166080880152606087019190915260408601919091529190911683529050600081136105cd57604051633b26b84360e21b815260040160405180910390fd5b602082015290565b6000806105e061068a565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610640573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066491906109e9565b61066f90600a610b08565b6106798483610b17565b6106839190610b36565b9392505050565b600154604051638241348960e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016600482015263ffffffff90911660248201526000908190731c83084e693b10015545d9b3728e66d04a65a6ca90638241348990604401602060405180830381865af4158015610717573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073b9190610b58565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c191906109e9565b6107cc90600a610b08565b6040516343c57a2760e01b8152600284900b60048201526001600160801b03821660248201526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660448301527f0000000000000000000000000000000000000000000000000000000000000000166064820152909150731c83084e693b10015545d9b3728e66d04a65a6ca906343c57a2790608401602060405180830381865af4158015610888573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ac9190610b7b565b9250505090565b600060208083528351808285015260005b818110156108e0578581018301518582016040015282016108c4565b818111156108f2576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160501b038116811461091d57600080fd5b50565b60006020828403121561093257600080fd5b813561068381610908565b60006020828403121561094f57600080fd5b5035919050565b600181811c9082168061096a57607f821691505b6020821081141561098b57634e487b7160e01b600052602260045260246000fd5b50919050565b600080600080600060a086880312156109a957600080fd5b85516109b481610908565b8095505060208601519350604086015192506060860151915060808601516109db81610908565b809150509295509295909350565b6000602082840312156109fb57600080fd5b815160ff8116811461068357600080fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610a5d578160001904821115610a4357610a43610a0c565b80851615610a5057918102915b93841c9390800290610a27565b509250929050565b600082610a7457506001610b02565b81610a8157506000610b02565b8160018114610a975760028114610aa157610abd565b6001915050610b02565b60ff841115610ab257610ab2610a0c565b50506001821b610b02565b5060208310610133831016604e8410600b8410161715610ae0575081810a610b02565b610aea8383610a22565b8060001904821115610afe57610afe610a0c565b0290505b92915050565b600061068360ff841683610a65565b6000816000190483118215151615610b3157610b31610a0c565b500290565b600082610b5357634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215610b6a57600080fd5b81518060020b811461068357600080fd5b600060208284031215610b8d57600080fd5b505191905056fea26469706673582212204f252e65bf5fe04e5482b93df94fa59500742ad4d8af51805caec6d44f2bd68d64736f6c634300080c003300000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b0000000000000000000000009474e972f49605315763c296b122cbb998b615cf0000000000000000000000000567f2323251f0aab15c8dfb1967e4e8a7d42aee0000000000000000000000000000000000000000000000000000000000000a8c0000000000000000000000000000000000000000000000000000000000000bb80000000000000000000000000000000000000000000000000000000000000028736c6973424e422f7573642066726f6d205457415020736c6973424e422f57424e4220706f6f6c20000000000000000000000000000000000000000000000000