0 txs
450 calls
constructor
constructor()
functions
antToken
viewfunction antToken() view returns (address)
batchLimit
viewfunction batchLimit() view returns (uint256)
completedPayments
viewfunction completedPayments(bytes32) view returns (bytes16 rewardsAddress, uint128 amount)
getLatestPrice
viewfunction getLatestPrice() view returns (uint80, int256)
getPriceForRoundID
viewfunction getPriceForRoundID(uint80 _roundId) view returns (int256)
getQuote
viewfunction getQuote(tuple[] _metrics) view returns (uint256[] prices)
owner
viewfunction owner() view returns (address)
priceFeed
viewfunction priceFeed() view returns (address)
pricingCalculator
viewfunction pricingCalculator() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
requiredPaymentVerificationLength
viewfunction requiredPaymentVerificationLength() view returns (uint256)
roundIds
viewfunction roundIds(bytes32) view returns (uint80)
sequencerUptimeFeed
viewfunction sequencerUptimeFeed() view returns (address)
UPGRADE_INTERFACE_VERSION
viewfunction UPGRADE_INTERFACE_VERSION() view returns (string)
verifyPayment
viewfunction verifyPayment(tuple[] _payments) view returns (tuple[3] verificationResults)
clearZeroQuoteHash
nonpayablefunction clearZeroQuoteHash()
initialize
nonpayablefunction initialize(address _antToken, uint256 _batchLimit, address _priceFeed, address _sequencerUptimeFeed, address _pricingCalculator)
payForQuotes
nonpayablefunction payForQuotes(tuple[] _payments)
renounceOwnership
nonpayablefunction renounceOwnership()
setBatchLimit
nonpayablefunction setBatchLimit(uint256 _batchLimit)
setPriceFeed
nonpayablefunction setPriceFeed(address _priceFeed)
setPricingCalculator
nonpayablefunction setPricingCalculator(address _pricingCalculator)
setRequiredPaymentVerificationLength
nonpayablefunction setRequiredPaymentVerificationLength(uint256 _requiredPaymentVerificationLength)
setSequencerUptimeFeed
nonpayablefunction setSequencerUptimeFeed(address _sequencerUptimeFeed)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
DataPaymentMade
event DataPaymentMade(address indexed rewardsAddress, uint256 indexed amount, bytes32 indexed quoteHash)
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Upgraded
event Upgraded(address indexed implementation)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
AntTokenNull
error AntTokenNull()
BatchLimitExceeded
error BatchLimitExceeded()
ERC1967InvalidImplementation
error ERC1967InvalidImplementation(address implementation)
ERC1967NonPayable
error ERC1967NonPayable()
FailedCall
error FailedCall()
GracePeriodNotOver
error GracePeriodNotOver()
InvalidChainlinkPrice
error InvalidChainlinkPrice()
InvalidInitialization
error InvalidInitialization()
InvalidInputLength
error InvalidInputLength()
InvalidQuoteHash
error InvalidQuoteHash()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
PriceFeedNull
error PriceFeedNull()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
SequencerDown
error SequencerDown()
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
creation bytecode
0x60a060405230608052348015610013575f5ffd5b5061001c610021565b6100d3565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100715760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d05780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516124a16100f95f395f81816113ce015281816113f7015261153b01526124a15ff3fe60806040526004361061017b575f3560e01c80638e15f473116100cd578063b8f4496311610087578063f11466cc11610062578063f11466cc146104aa578063f2600b56146104c9578063f2fde38b146104e8578063fe3c806e14610507575f5ffd5b8063b8f449631461042a578063c7170bb614610449578063e02c72021461045e575f5ffd5b80638e15f4731461033e57806396b79c9814610371578063a01ef25f14610390578063a7264705146103af578063ad3cb1cc146103ce578063b6c2141b1461040b575f5ffd5b806352d1902d11610138578063724e78da11610113578063724e78da146102b0578063741bef1a146102cf5780637a55cbb1146102ee5780638da5cb5b14610302575f5ffd5b806352d1902d146102695780635b5cd2331461027d578063715018a61461029c575f5ffd5b806301664c291461017f57806338f03e75146101b15780633ffbb252146101dd578063474740b1146102095780634ec42e8e1461021d5780634f1ef28614610254575b5f5ffd5b34801561018a575f5ffd5b5061019e610199366004611a31565b610570565b6040519081526020015b60405180910390f35b3480156101bc575f5ffd5b506101d06101cb366004611a93565b61067d565b6040516101a89190611ad1565b3480156101e8575f5ffd5b506101fc6101f7366004611a93565b610970565b6040516101a89190611b20565b348015610214575f5ffd5b5061019e5f5481565b348015610228575f5ffd5b5060015461023c906001600160a01b031681565b6040516001600160a01b0390911681526020016101a8565b610267610262366004611c37565b610ab3565b005b348015610274575f5ffd5b5061019e610ad2565b348015610288575f5ffd5b50610267610297366004611cdc565b610aed565b3480156102a7575f5ffd5b50610267610afa565b3480156102bb575f5ffd5b506102676102ca366004611cf3565b610b0d565b3480156102da575f5ffd5b5060035461023c906001600160a01b031681565b3480156102f9575f5ffd5b50610267610b37565b34801561030d575f5ffd5b507f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031661023c565b348015610349575f5ffd5b50610352610ba5565b604080516001600160501b0390931683526020830191909152016101a8565b34801561037c575f5ffd5b5061026761038b366004611cf3565b610cbd565b34801561039b575f5ffd5b506102676103aa366004611d0e565b610ce7565b3480156103ba575f5ffd5b5060045461023c906001600160a01b031681565b3480156103d9575f5ffd5b506103fe604051806040016040528060058152602001640352e302e360dc1b81525081565b6040516101a89190611d72565b348015610416575f5ffd5b50610267610425366004611da7565b610ea0565b348015610435575f5ffd5b50610267610444366004611cf3565b611023565b348015610454575f5ffd5b5061019e60025481565b348015610469575f5ffd5b50610492610478366004611cdc565b60066020525f90815260409020546001600160501b031681565b6040516001600160501b0390911681526020016101a8565b3480156104b5575f5ffd5b5060055461023c906001600160a01b031681565b3480156104d4575f5ffd5b506102676104e3366004611cdc565b61104d565b3480156104f3575f5ffd5b50610267610502366004611cf3565b611059565b348015610512575f5ffd5b50610548610521366004611cdc565b60076020525f9081526040902054608081901b90600160801b90046001600160801b031682565b604080516001600160801b031990931683526001600160801b039091166020830152016101a8565b5f61057961109b565b600354604051639a6fc8f560e01b81526001600160501b03841660048201525f916001600160a01b031690639a6fc8f59060240160a060405180830381865afa1580156105c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ec9190611e16565b5050509150505f60035f9054906101000a90046001600160a01b03166001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610643573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106679190611e5c565b905061067582826012611174565b949350505050565b610685611942565b60025482146106a757604051637db491eb60e01b815260040160405180910390fd5b5f6106b284846111e6565b90505f5b6003811015610968575f60075f8484600381106106d5576106d5611e7c565b602090810291909101516040908101518352828201939093529082015f9081208351808501909452546001600160801b0319608082901b168452600160801b90046001600160801b03169183019190915290915060068185856003811061073e5761073e611e7c565b60200201516040015181526020019081526020015f205f9054906101000a90046001600160501b03169050806001600160501b03165f036107b457604080516060810182525f80825260208201819052918101919091528584600381106107a7576107a7611e7c565b6020020152506109609050565b5f6107be82610570565b6005549091505f906001600160a01b0316634280b780838888600381106107e7576107e7611e7c565b6020020151516040516001600160e01b031960e085901b16815261080f929190600401611efe565b602060405180830381865afa15801561082a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084e9190611f89565b90505f84602001516001600160801b03165f1415801561087b57508185602001516001600160801b031610155b90505f6108af88886003811061089357610893611e7c565b6020020151602001516001600160801b031960609190911b1690565b86516001600160801b031990811691161480156108ef57505f8888600381106108da576108da611e7c565b6020020151602001516001600160a01b031614155b90505f60405180606001604052808a8a6003811061090f5761090f611e7c565b602002015160400151815260200188602001516001600160801b0316815260200184801561093a5750835b151590529050808a896003811061095357610953611e7c565b6020020152505050505050505b6001016106b6565b505092915050565b60605f61097b610ba5565b9150505f811361099e57604051638002905d60e01b815260040160405180910390fd5b5f836001600160401b038111156109b7576109b7611b86565b6040519080825280602002602001820160405280156109e0578160200160208202803683370190505b5090505f5b84811015610aaa576005545f906001600160a01b0316634280b78085898986818110610a1357610a13611e7c565b9050602002810190610a259190611fa0565b6040518363ffffffff1660e01b8152600401610a42929190612054565b602060405180830381865afa158015610a5d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a819190611f89565b905080838381518110610a9657610a96611e7c565b6020908102919091010152506001016109e5565b50949350505050565b610abb6113c3565b610ac482611467565b610ace828261146f565b5050565b5f610adb611530565b505f51602061244c5f395f51905f5290565b610af5611579565b600255565b610b02611579565b610b0b5f6115d4565b565b610b15611579565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b610b3f611579565b60408051808201909152805f6001600160801b03191681525f602091820181905280526007815281519101516001600160801b0316600160801b0260809190911c177f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df55565b5f5f610baf61109b565b5f5f60035f9054906101000a90046001600160a01b03166001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610c01573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c259190611e16565b505050915091505f60035f9054906101000a90046001600160a01b03166001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c7d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ca19190611e5c565b90505f610cb083836012611174565b9396939550929350505050565b610cc5611579565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03165f81158015610d2b5750825b90505f826001600160401b03166001148015610d465750303b155b905081158015610d54575080155b15610d725760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d9c57845460ff60401b1916600160401b1785555b6001600160a01b038a16610dc357604051632d06160b60e21b815260040160405180910390fd5b6001600160a01b038816610dea5760405163e5020e6360e01b815260040160405180910390fd5b600180546001600160a01b03808d166001600160a01b0319928316179092555f8b905560056002819055600380548c8516908416179055600480548b8516908416179055805492891692909116919091179055610e4633611644565b610e4e611655565b8315610e9457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050505050565b5f548190811115610ec457604051630d67f41160e21b815260040160405180910390fd5b5f610ecd610ba5565b5090505f5b8281101561101c5736858583818110610eed57610eed611e7c565b606002919091019150506040810135610f2f57610f2933610f116020840184611cf3565b6001546001600160a01b03169190602085013561165d565b50611014565b6040805180820190915280610f5a610f4a6020850185611cf3565b60601b6001600160801b03191690565b6001600160801b03191681526001600160801b0360208481018035838116948301949094526040808701355f8181526007855282812088519886015160809990991c600160801b99909716989098029590951790965560069092529120805469ffffffffffffffffffff19166001600160501b038816179055610fdd9084611cf3565b6001600160a01b03167ff998960b1c6f0e0e89b7bbe6b6fbf3e03e6f08eee5b8430877d8adb8e149d58060405160405180910390a4505b600101610ed2565b5050505050565b61102b611579565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b611055611579565b5f55565b611061611579565b6001600160a01b03811661108f57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b611098816115d4565b50565b6004546001600160a01b03166110ad57565b6004805460408051633fabe5a360e21b815290515f9384936001600160a01b03169263feaf968c928183019260a0928290030181865afa1580156110f3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111179190611e16565b50919450925050821590508061113f5760405162032b3d60e81b815260040160405180910390fd5b5f61114a834261210a565b9050610e10811161116e5760405163d15f73b560e01b815260040160405180910390fd5b50505050565b5f8160ff168360ff1610156111ac5761118d838361211d565b61119b9060ff16600a612219565b6111a59085612224565b90506111df565b8160ff168360ff1611156111dc576111c4828461211d565b6111d29060ff16600a612219565b6111a59085612253565b50825b9392505050565b6111ee61198a565b5f5b828110156113bb575f60075f86868581811061120e5761120e611e7c565b9050602002810190611220919061228b565b60409081013582526020808301939093529081015f908120825180840184529054608081901b6001600160801b03191682526001600160801b03600160801b9182900481168387019081528951860151855260079096529390922054935190945092048116911611156112d6576020830180516040850152835190528484838181106112ae576112ae611e7c565b90506020028101906112c0919061228b565b6112c99061234a565b835f5b60200201526113b2565b6020808401516040908101515f908152600783522054908201516001600160801b03600160801b909204821691161115611349576020830151604084015284848381811061132657611326611e7c565b9050602002810190611338919061228b565b6113419061234a565b8360016112cc565b6040808401518101515f9081526007602090815291902054908201516001600160801b03600160801b9092048216911611156113b25784848381811061139157611391611e7c565b90506020028101906113a3919061228b565b6113ac9061234a565b60408401525b506001016111f0565b505b92915050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061144957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661143d5f51602061244c5f395f51905f52546001600160a01b031690565b6001600160a01b031614155b15610b0b5760405163703e46dd60e11b815260040160405180910390fd5b611098611579565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156114c9575060408051601f3d908101601f191682019092526114c691810190611f89565b60015b6114f157604051634c9c8ce360e01b81526001600160a01b0383166004820152602401611086565b5f51602061244c5f395f51905f52811461152157604051632a87526960e21b815260048101829052602401611086565b61152b83836116b7565b505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610b0b5760405163703e46dd60e11b815260040160405180910390fd5b336115ab7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b031614610b0b5760405163118cdaa760e01b8152336004820152602401611086565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b61164c61170c565b61109881611755565b610b0b61170c565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261116e90859061175d565b6116c0826117c9565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156117045761152b828261182c565b610ace61189e565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610b0b57604051631afcd79f60e31b815260040160405180910390fd5b61106161170c565b5f5f60205f8451602086015f885af18061177c576040513d5f823e3d81fd5b50505f513d915081156117935780600114156117a0565b6001600160a01b0384163b155b1561116e57604051635274afe760e01b81526001600160a01b0385166004820152602401611086565b806001600160a01b03163b5f036117fe57604051634c9c8ce360e01b81526001600160a01b0382166004820152602401611086565b5f51602061244c5f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b60605f5f846001600160a01b0316846040516118489190612435565b5f60405180830381855af49150503d805f8114611880576040519150601f19603f3d011682016040523d82523d5f602084013e611885565b606091505b50915091506118958583836118bd565b95945050505050565b3415610b0b5760405163b398979f60e01b815260040160405180910390fd5b6060826118d2576118cd82611919565b6111df565b81511580156118e957506001600160a01b0384163b155b1561191257604051639996b31560e01b81526001600160a01b0385166004820152602401611086565b50806111df565b8051156119295780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b60405180606001604052806003905b61197460405180606001604052805f81526020015f81526020015f151581525090565b8152602001906001900390816119515790505090565b60405180606001604052806003905b6119a16119b7565b8152602001906001900390816119995790505090565b6040518060600160405280611a0a604080516101208101909152805f81526020015f81526020015f8152602001606081526020015f81526020015f81526020015f81526020015f81526020015f81525090565b81525f6020820181905260409091015290565b6001600160501b0381168114611098575f5ffd5b5f60208284031215611a41575f5ffd5b81356111df81611a1d565b5f5f83601f840112611a5c575f5ffd5b5081356001600160401b03811115611a72575f5ffd5b6020830191508360208260051b8501011115611a8c575f5ffd5b9250929050565b5f5f60208385031215611aa4575f5ffd5b82356001600160401b03811115611ab9575f5ffd5b611ac585828601611a4c565b90969095509350505050565b610120810181835f5b6003811015611b17578151805184526020810151602085015260408101511515604085015250606083019250602082019150600181019050611ada565b50505092915050565b602080825282518282018190525f918401906040840190835b81811015611b57578351835260209384019390920191600101611b39565b509095945050505050565b6001600160a01b0381168114611098575f5ffd5b8035611b8181611b62565b919050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715611bbc57611bbc611b86565b60405290565b604051606081016001600160401b0381118282101715611bbc57611bbc611b86565b60405161012081016001600160401b0381118282101715611bbc57611bbc611b86565b604051601f8201601f191681016001600160401b0381118282101715611c2f57611c2f611b86565b604052919050565b5f5f60408385031215611c48575f5ffd5b8235611c5381611b62565b915060208301356001600160401b03811115611c6d575f5ffd5b8301601f81018513611c7d575f5ffd5b80356001600160401b03811115611c9657611c96611b86565b611ca9601f8201601f1916602001611c07565b818152866020838501011115611cbd575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215611cec575f5ffd5b5035919050565b5f60208284031215611d03575f5ffd5b81356111df81611b62565b5f5f5f5f5f60a08688031215611d22575f5ffd5b8535611d2d81611b62565b9450602086013593506040860135611d4481611b62565b92506060860135611d5481611b62565b91506080860135611d6481611b62565b809150509295509295909350565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f60208385031215611db8575f5ffd5b82356001600160401b03811115611dcd575f5ffd5b8301601f81018513611ddd575f5ffd5b80356001600160401b03811115611df2575f5ffd5b856020606083028401011115611e06575f5ffd5b6020919091019590945092505050565b5f5f5f5f5f60a08688031215611e2a575f5ffd5b8551611e3581611a1d565b60208701516040880151606089015160808a015193985091965094509250611d6481611a1d565b5f60208284031215611e6c575f5ffd5b815160ff811681146111df575f5ffd5b634e487b7160e01b5f52603260045260245ffd5b60048110611eac57634e487b7160e01b5f52602160045260245ffd5b9052565b5f8151808452602084019350602083015f5b82811015611ef4578151611ed7878251611e90565b602090810151878201526040909601959190910190600101611ec2565b5093949350505050565b82815260406020820152611f16604082018351611e90565b60208201516060820152604082015160808201525f606083015161012060a0840152611f46610160840182611eb0565b9050608084015160c084015260a084015160e084015260c084015161010084015260e0840151610120840152610100840151610140840152809150509392505050565b5f60208284031215611f99575f5ffd5b5051919050565b5f823561011e19833603018112611fb5575f5ffd5b9190910192915050565b803560048110611b81575f5ffd5b5f5f8335601e19843603018112611fe2575f5ffd5b83016020810192503590506001600160401b03811115612000575f5ffd5b8060061b3603821315611a8c575f5ffd5b8183526020830192505f815f5b84811015611ef4576120388661203384611fbf565b611e90565b602082810135908701526040958601959091019060010161201e565b8281526040602082015261206e6040820161203384611fbf565b6020820135606082810191909152604083013560808301525f9061209490840184611fcd565b61012060a08501526120ab61016085018284612011565b608086013560c08681019190915260a087013560e080880191909152908701356101008088019190915290870135610120870152909501356101409094019390935250919392505050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156113bd576113bd6120f6565b60ff82811682821603908111156113bd576113bd6120f6565b6001815b600184111561217157808504811115612155576121556120f6565b600184161561216357908102905b60019390931c92800261213a565b935093915050565b5f82612187575060016113bd565b8161219357505f6113bd565b81600181146121a957600281146121b3576121cf565b60019150506113bd565b60ff8411156121c4576121c46120f6565b50506001821b6113bd565b5060208310610133831016604e8410600b84101617156121f2575081810a6113bd565b6121fe5f198484612136565b805f1904821115612211576122116120f6565b029392505050565b5f6111df8383612179565b8082025f8212600160ff1b8414161561223f5761223f6120f6565b81810583148215176113bd576113bd6120f6565b5f8261226d57634e487b7160e01b5f52601260045260245ffd5b600160ff1b82145f1984141615612286576122866120f6565b500590565b5f8235605e19833603018112611fb5575f5ffd5b5f82601f8301126122ae575f5ffd5b81356001600160401b038111156122c7576122c7611b86565b6122d660208260051b01611c07565b8082825260208201915060208360061b8601019250858311156122f7575f5ffd5b602085015b838110156123405760408188031215612313575f5ffd5b61231b611b9a565b61232482611fbf565b81526020828101358183015290845292909201916040016122fc565b5095945050505050565b5f6060823603121561235a575f5ffd5b612362611bc2565b82356001600160401b03811115612377575f5ffd5b830161012036829003121561238a575f5ffd5b612392611be4565b61239b82611fbf565b8152602082810135908201526040808301359082015260608201356001600160401b038111156123c9575f5ffd5b6123d53682850161229f565b6060830152506080828101359082015260a0808301359082015260c0808301359082015260e080830135908201526101009182013591810191909152815261241f60208401611b76565b6020820152604092830135928101929092525090565b5f82518060208501845e5f92019182525091905056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca26469706673582212205e48c0292bda5a3adf0bd2eb727de9339af34025a401c02481584d100517e82d64736f6c634300081c0033