0 txs
1 call
constructor
constructor(address _manager, address _baseAggregatorAddress, address _ratioProviderAddress, string _description, uint8 _priceFeedDecimals, uint48 _minimumSnapshotDelay, (uint256 snapshotRatio, uint48 snapshotTimestamp, uint32 maxYearlyRatioGrowthPercent) _priceCapSnapshot)
functions
assetToBaseAggregator
viewfunction assetToBaseAggregator() view returns (address)
BASIS_POINTS
viewfunction BASIS_POINTS() view returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
description
viewfunction description() view returns (string)
getRatio
viewfunction getRatio() view returns (int256 ratio)
GROWTH_RATIO_SCALE
viewfunction GROWTH_RATIO_SCALE() view returns (uint256)
isCapped
viewfunction isCapped() view returns (bool)
lastSnapshotUpdateTimestamp
viewfunction lastSnapshotUpdateTimestamp() view returns (uint256)
latestRoundData
viewfunction latestRoundData() view returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound)
manager
viewfunction manager() view returns (address)
maxRatioGrowthPerSecond
viewfunction maxRatioGrowthPerSecond() view returns (uint256)
maxYearlyRatioGrowthPercent
viewfunction maxYearlyRatioGrowthPercent() view returns (uint32)
minimumSnapshotDelay
viewfunction minimumSnapshotDelay() view returns (uint48)
ratioDecimals
viewfunction ratioDecimals() view returns (uint8)
ratioProvider
viewfunction ratioProvider() view returns (address)
SECONDS_PER_YEAR
viewfunction SECONDS_PER_YEAR() view returns (uint256)
snapshotRatio
viewfunction snapshotRatio() view returns (uint256)
snapshotTimestamp
viewfunction snapshotTimestamp() view returns (uint48)
version
purefunction version() pure returns (uint256)
VERSION
viewfunction VERSION() view returns (uint256)
setManager
nonpayablefunction setManager(address newManager)
setMinimumSnapshotDelay
nonpayablefunction setMinimumSnapshotDelay(uint48 newMinimumSnapshotDelay)
updateSnapshot
nonpayablefunction updateSnapshot(tuple priceCapParams)
events
NewManager
event NewManager(address indexed newManager)
NewMinimumSnapshotDelay
event NewMinimumSnapshotDelay(uint256 indexed newMinimumSnapshotDelay)
NewPriceCapSnapshot
event NewPriceCapSnapshot(uint256 indexed snapshotRatio, uint256 snapshotTimestamp, uint256 indexed maxRatioGrowthPerSecond, uint32 indexed maxYearlyRatioGrowthPercent)
errors
InvalidAddress
error InvalidAddress()
InvalidCheckpointDuration
error InvalidCheckpointDuration()
InvalidInt256
error InvalidInt256()
InvalidRatioTimestamp
error InvalidRatioTimestamp(uint48 timestamp)
ManagerIsZeroAddress
error ManagerIsZeroAddress()
OnlyManager
error OnlyManager()
SnapshotCloseToOverflow
error SnapshotCloseToOverflow(uint256 snapshotRatio, uint32 maxYearlyRatioGrowthPercent)
SnapshotRatioIsZero
error SnapshotRatioIsZero()
creation bytecode
0x6101406040523462000546576200147f8038038091620000228261014062000579565b61014039610120811262000546576200003d6101406200059d565b61016051916001600160a01b03831683036200054657620000606101806200059d565b6101a051939092906001600160401b0385116200054657610140830161015f8601121562000546576101408501516001600160401b038111620004955760405195620000b7601f8301601f19166020018862000579565b81875261014085016101608284010111620005465781906000905b8282106200055b5750116200054b575b50620000f06101c0620005b2565b926060620001006101e0620005c1565b9160bf1901126200054657604051936200011c60608662000579565b6102005185526200012f610220620005c1565b60208601526102405163ffffffff81168103620005465760408601526001600160a01b0384161562000534576001600160a01b03831615801562000522575b6200051057600080546001600160a01b038681166001600160a01b0319831617909255608085905260a088905260405163313ce56760e01b81529094909160209183916004918391165afa9081156200039857600091620004cb575b5081600060ff821660ff841610600014620004c5575060015b60e081905215620004ab57620002026200020e926200020892620005d5565b620005fe565b620007b9565b6101005260c05265ffffffffffff60a01b60a09190911b166001600160a01b03929092166001600160d01b031991909116171760005582516001600160401b038111620004955760019081548281811c911680156200048a575b60208210146200047457601f811162000424575b506020601f8211600114620003b05791816020959492620002bc94600498600092620003a4575b5050600019600383901b1c191690821b17905562000624565b60405163313ce56760e01b815292839182906001600160a01b03165afa908115620003985760009162000353575b5061012052604051610ca19081620007de8239608051818181610368015261091c015260a05181818161032401526107ac015260c05181610667015260e051816109cf0152610100518181816109f90152610a270152610120518181816106ec01526109970152f35b6020813d6020116200038f575b816200036f6020938362000579565b810103126200038b57620003849150620005b2565b38620002ea565b5080fd5b3d915062000360565b6040513d6000823e3d90fd5b015190503880620002a3565b601f198216958360005260206000209660005b8181106200040d5750926004978593620002bc96938360209a999710620003f3575b505050811b01905562000624565b015160001960f88460031b161c19169055388080620003e5565b8383015189559785019760209384019301620003c3565b826000526020600020601f830160051c8101916020841062000469575b601f0160051c019083905b8281106200045c5750506200027c565b600081550183906200044c565b909150819062000441565b634e487b7160e01b600052602260045260246000fd5b90607f169062000268565b634e487b7160e01b600052604160045260246000fd5b620002026200020891620004bf93620005d5565b6200020e565b620001e3565b906020823d60201162000507575b81620004e86020938362000579565b81010312620005045750620004fd90620005b2565b38620001ca565b80fd5b3d9150620004d9565b60405163e6c4247b60e01b8152600490fd5b506001600160a01b038616156200016e565b60405163775ac70160e11b8152600490fd5b600080fd5b60206000918701015238620000e2565b91508060208092846101400101015182828b010152018291620000d2565b601f909101601f19168101906001600160401b038211908210176200049557604052565b51906001600160a01b03821682036200054657565b519060ff821682036200054657565b519065ffffffffffff821682036200054657565b60ff9182169116818110620005e8570390565b634e487b7160e01b600052601160045260246000fd5b60ff16604d8111620005e857600a0a90565b8060001904821181151516620005e8570290565b6006544214620007b65742600655805115620007a45760035465ffffffffffff908181169160208401928184511681109081159162000784575b50801562000777575b6200075c5790620006d9929184519182600255818451169065ffffffffffff191617600355604085019463ffffffff92620006d3620006e76003620006d3878b51168063ffffffff1960055416176005556127106301e133809b8c926402540be4009788918a62000610565b62000610565b0404998a6004558a62000610565b0480198211620005e8576001600160801b039101116200073857916020917fa0a613e402776c4b84319ecd3c996ccb7cda86b43d3634f5f526622bc7669647935194511695511694604051908152a4565b518551604051630bed023760e01b8152600481019290925283166024820152604490fd5b825160405163f0c2a63960e01b815291166004820152602490fd5b5042818451161162000667565b90508160005460a01c168083038211620005e8570181164210386200065e565b60405163022bd6e160e51b8152600490fd5b50565b6001600160ff1b038111620007cb5790565b60405163e7e828ad60e01b8152600490fdfe608060408181526004918236101561001657600080fd5b600092833560e01c9182631518af76146106d3575081631f4b252c146106b35781632a1661a61461068b578163313ce5671461064d57816331b38fee1461062e5781633c191b9e146105c057816342090736146105a2578163481c6a751461057a57816354fd4d501461055e5781635f56151814610539578163671528d41461050c5781637284e416146103dd57816375698b7e146103be5781639c43eb5414610397578163a5bbbccb14610353578163b4cde1d11461030f578163c3f034a51461027b578163d0ebdbe7146101e557508063e1f1c4a7146101c9578063e6a69ab8146101ab578063ec1ebd7a14610188578063feaf968c146101405763ffa1ad741461012257600080fd5b3461013c578160031936011261013c576020905160018152f35b5080fd5b503461013c578160031936011261013c5760a09061015c6108fc565b85516001600160501b039586168152602081019490945294830191909152606082015291166080820152f35b503461013c578160031936011261013c576020906101a4610797565b9051908152f35b503461013c578160031936011261013c57602090516301e133808152f35b503461013c578160031936011261013c57602090516127108152f35b91905034610277576020366003190112610277576001600160a01b0382358181169390849003610273578454918216330361026557831561025757506001600160a01b0319168217835551907f5589a1df7a257347b14b97cb6fe06862c960ff64e9a0c2908632929098bb01308383a2f35b825163775ac70160e11b8152fd5b825163605919ad60e11b8152fd5b8480fd5b8280fd5b919050346102775760203660031901126102775781359165ffffffffffff831692838103610273578454916001600160a01b0383163303610301575065ffffffffffff60a01b1990911660a09190911b65ffffffffffff60a01b1617835551907f45a6fd1e56c8df89c887bc8d8951907e2be8a62baf0ca20512d16d434a32645a8383a2f35b835163605919ad60e11b8152fd5b50503461013c578160031936011261013c57517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50503461013c578160031936011261013c57517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50503461013c578160031936011261013c5760209065ffffffffffff600354169051908152f35b50503461013c578160031936011261013c576020906006549051908152f35b9050346102775782600319360112610277578151928060019081549182811c928181168015610502575b60209687861082146104ef575084895288939291879082156104cf575050600114610493575b5061043d92509592950382610710565b8251938285938452825192838286015282915b84831061047b575050821061046f575b50601f01601f19168101030190f35b83828401015238610460565b81830181015188840188015287955091820191610450565b8591508085528185209085915b8583106104b757505061043d93508201013861042d565b8054838b0185015289945087939092019181016104a0565b60ff19168582015261043d95151560051b850101925038915061042d9050565b634e487b7160e01b875260229052602486fd5b93607f1693610407565b50503461013c578160031936011261013c57602090610529610797565b610531610c3b565b129051908152f35b50503461013c578160031936011261013c5760209063ffffffff600554169051908152f35b50503461013c578160031936011261013c576020905160018152f35b50503461013c578160031936011261013c57905490516001600160a01b039091168152602090f35b90503461027757826003193601126102775760209250549051908152f35b905034610277576060366003190112610277578151906105e1606083610710565b8035825260243565ffffffffffff8116810361027357602083015260443563ffffffff81168103610273578284015283546001600160a01b03163303610265575061062b90610ab8565b51f35b50503461013c578160031936011261013c576020906002549051908152f35b50503461013c578160031936011261013c576020905160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b50503461013c578160031936011261013c5765ffffffffffff6020925460a01c169051908152f35b50503461013c578160031936011261013c57602090516402540be4008152f35b84903461013c578160031936011261013c5760209060ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b601f909101601f19168101906001600160401b0382119082101761073357604052565b634e487b7160e01b600052604160045260246000fd5b51906001600160501b038216820361075d57565b600080fd5b908160a091031261075d5761077681610749565b91602082015191604081015191610794608060608401519301610749565b90565b604051633fabe5a360e21b815260a0816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610818576000916107e8575090565b610809915060a03d8111610811575b6108018183610710565b810190610762565b505050905090565b503d6107f7565b6040513d6000823e3d90fd5b60008082138184136001600160ff1b0382821686820486111661088d57600160ff1b92848712929083168685058812166108a15786858712940586129084161661088d57859005841291161661087957500290565b634e487b7160e01b81526011600452602490fd5b634e487b7160e01b84526011600452602484fd5b634e487b7160e01b85526011600452602485fd5b81156108e657600160ff1b81146000198314166108d0570590565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b610904610797565b604051633fabe5a360e21b815290919060a0816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610818576000938490859186938795610a71575b5084928481968960008513801590610a66575b610a5457505050509061099391610985610c3b565b828112610a4c575b50610824565b60ff7f00000000000000000000000000000000000000000000000000000000000000001690604d82116108d0576109cd91600a0a906108b5565b7f000000000000000000000000000000000000000000000000000000000000000015610a2157610a1e907f000000000000000000000000000000000000000000000000000000000000000090610824565b93565b610a1e907f0000000000000000000000000000000000000000000000000000000000000000906108b5565b91503861098d565b99506000989297509095509350915050565b506000861315610970565b935050945050610a8f915060a03d8111610811576108018183610710565b939590923861095d565b80600019048211811515166108d0570290565b811981116108d0570190565b6006544214610c385742600655805115610c265760035465ffffffffffff9081811691602084019281845116811090811591610c08575b508015610bfc575b610be15790610b58929184519182600255818451169065ffffffffffff1916176003556040850194610b5d610b8163ffffffff94858951168063ffffffff1960055416176005556127106301e133809485926402540be4009b8c9186610a99565b610a99565b04049788600455610b7a6003610b5860018060801b03968c610a99565b0490610aac565b11610bbd57916020917fa0a613e402776c4b84319ecd3c996ccb7cda86b43d3634f5f526622bc7669647935194511695511694604051908152a4565b518551604051630bed023760e01b8152600481019290925283166024820152604490fd5b825160405163f0c2a63960e01b815291166004820152602490fd5b50428184511611610af7565b90508160005460a01c1680830382116108d057018116421038610aef565b60405163022bd6e160e51b8152600490fd5b50565b6002546004549065ffffffffffff60035416918242106108d057610b7a6402540be4009161079494420390610a9956fea2646970667358221220692f122e66a06707e81c1ebc86a8f7b880862d7189e376bf79c1142cf2a57c4164736f6c634300080f0033000000000000000000000000d98be00b5d27fc98112bde293e487f8d4ca57d070000000000000000000000000be923b1716115d742e35fa359d415598c50510f000000000000000000000000e59eba0d492ca53c6f46015eea00517f2707dc77000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000e1000000000000000000000000000000000000000000000000010e44ead759a477a0000000000000000000000000000000000000000000000000000000068f9c2b90000000000000000000000000000000000000000000000000000000000000194000000000000000000000000000000000000000000000000000000000000001c777374455448202f20455448204341504f205072696365204665656400000000