0 txs
0 calls
constructor
constructor()
functions
amountsPerEpoch
viewfunction amountsPerEpoch(uint256) view returns (uint256 amount, uint256 opBNBAmount, uint256 totalWeights, uint256 timestamp, uint256 poolsLength)
cc_flag
viewfunction cc_flag() view returns (uint8)
ccip
viewfunction ccip() view returns (address)
checkUpKeep_BSC
viewfunction checkUpKeep_BSC() view returns (bool)
checkUpKeep_opBNB
viewfunction checkUpKeep_opBNB() view returns (bool)
currentEpoch
viewfunction currentEpoch() view returns (uint256)
estimateCCIPFee
viewfunction estimateCCIPFee() view returns (uint256)
estimateL0Fee
viewfunction estimateL0Fee() view returns (uint256)
isAutomation
viewfunction isAutomation(address) view returns (bool)
l0
viewfunction l0() view returns (address)
lastPool
viewfunction lastPool() view returns (uint256)
minter
viewfunction minter() view returns (address)
OPBNB_EVM_ID
viewfunction OPBNB_EVM_ID() view returns (uint8)
opBnbReceiver
viewfunction opBnbReceiver() view returns (address)
opBNBShare
viewfunction opBNBShare() view returns (uint256)
owner
viewfunction owner() view returns (address)
poolToLastimestamp
viewfunction poolToLastimestamp(address) view returns (uint256)
PRECISION
viewfunction PRECISION() view returns (uint256)
thena
viewfunction thena() view returns (address)
voter
viewfunction voter() view returns (address)
WEEK
viewfunction WEEK() view returns (uint256)
distribute
nonpayablefunction distribute(uint256 len, uint256 timestamp, uint256 poolsLength, uint256[] amounts, address[] pools)
distributeAll
nonpayablefunction distributeAll()
distributeOpBNB
payablefunction distributeOpBNB() payable
emergencyRecoverERC20
nonpayablefunction emergencyRecoverERC20(address tokenAddress, uint256 tokenAmount)
initialize
nonpayablefunction initialize(address _minter, address _thena, address _voter)
notifyRewardAmount
nonpayablefunction notifyRewardAmount(uint256 amount)
renounceOwnership
nonpayablefunction renounceOwnership()
setAutomation
nonpayablefunction setAutomation(address automation, bool status)
setCCIP
nonpayablefunction setCCIP(address _ccip)
setCrosschainProviderFlag
nonpayablefunction setCrosschainProviderFlag(uint8 flag)
setL0
nonpayablefunction setL0(address _l0)
setMinter
nonpayablefunction setMinter(address _minter)
setOpBNBReceiver
nonpayablefunction setOpBNBReceiver(address _receiver)
setOpBnbShare
nonpayablefunction setOpBnbShare(uint256 share)
setVoter
nonpayablefunction setVoter(address _voter)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
DistributeOpBNB
event DistributeOpBNB(uint256 indexed opbnbAmount)
EmergencyRecoverERC20
event EmergencyRecoverERC20(address indexed tokenAddress, address indexed receiver, uint256 tokenAmount)
Initialized
event Initialized(uint8 version)
NotifyRewardAmount
event NotifyRewardAmount(uint256 indexed amount, uint256 epochtimestamp, uint256 indexed epoch)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SetAutomation
event SetAutomation(address indexed automation, bool status)
SetCCIP
event SetCCIP(address indexed ccip)
SetCCProviderFlag
event SetCCProviderFlag(uint8 indexed flag)
SetLayerZero
event SetLayerZero(address indexed l0)
SetMinter
event SetMinter(address indexed minter)
SetOpBNBReceiver
event SetOpBNBReceiver(address indexed receiver)
SetOpBNBShare
event SetOpBNBShare(uint256 share)
SetVoter
event SetVoter(address indexed voter)
errors
AddressZero
error AddressZero()
BNBUpdateNotReady
error BNBUpdateNotReady()
CCProvider
error CCProvider()
NotAutomation
error NotAutomation()
NotMinter
error NotMinter()
opBNBUpdateNotReady
error opBNBUpdateNotReady()
creation bytecode
0x608060405234801561001057600080fd5b50612893806100206000396000f3fe60806040526004361061026d5760003560e01c80637667180811610153578063aaf5eb68116100cb578063cd0023781161007f578063f2fde38b11610064578063f2fde38b146106f4578063f4359ce514610714578063fca3b5aa1461072b57600080fd5b8063cd002378146106bc578063e7f5597d146106dc57600080fd5b8063c0c53b8b116100b0578063c0c53b8b14610667578063c482f47c14610687578063c4caee9f1461069c57600080fd5b8063aaf5eb6814610630578063b06e67801461064757600080fd5b80638da5cb5b11610122578063a1b0b35911610107578063a1b0b359146105f3578063a329424d14610613578063a652a7f31461061b57600080fd5b80638da5cb5b146105b557806396bd835a146105d357600080fd5b80637667180814610537578063785e56fd1461054d5780637e77b36b1461057f57806385dd30991461059f57600080fd5b80632ba1eafe116101e657806346c96aac116101b5578063616335501161019a57806361633550146104d55780636e1cf9f314610502578063715018a61461052257600080fd5b806346c96aac146104955780634bc2a657146104b557600080fd5b80632ba1eafe1461042d5780632fd49abe1461044a5780633c6b16ab14610460578063436596c41461048057600080fd5b80630a70af791161023d57806323c949ff1161022257806323c949ff146103ca5780632a5f2f21146103ed5780632a9b42171461040d57600080fd5b80630a70af791461038a5780630ab3ea5e146103aa57600080fd5b8062504957146102795780630125bb32146102be578063070164fc146102e0578063075461721461035257600080fd5b3661027457005b600080fd5b34801561028557600080fd5b506102a961029436600461231d565b60706020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156102ca57600080fd5b506102de6102d9366004612341565b61074b565b005b3480156102ec57600080fd5b5061032a6102fb36600461236d565b606f60205260009081526040902080546001820154600283015460038401546004909401549293919290919085565b604080519586526020860194909452928401919091526060830152608082015260a0016102b5565b34801561035e57600080fd5b50606954610372906001600160a01b031681565b6040516001600160a01b0390911681526020016102b5565b34801561039657600080fd5b506102de6103a536600461236d565b61081f565b3480156103b657600080fd5b506102de6103c5366004612386565b6108ba565b3480156103d657600080fd5b506103df61090a565b6040519081526020016102b5565b3480156103f957600080fd5b506102de6104083660046123b7565b610a3f565b34801561041957600080fd5b50606c54610372906001600160a01b031681565b34801561043957600080fd5b50606554610100900460ff166102a9565b34801561045657600080fd5b506103df60685481565b34801561046c57600080fd5b506102de61047b36600461236d565b610acd565b34801561048c57600080fd5b506102de610d6c565b3480156104a157600080fd5b50606b54610372906001600160a01b031681565b3480156104c157600080fd5b506102de6104d036600461231d565b610e3c565b3480156104e157600080fd5b506103df6104f036600461231d565b60716020526000908152604090205481565b34801561050e57600080fd5b506102de61051d36600461231d565b610eb5565b34801561052e57600080fd5b506102de610f2e565b34801561054357600080fd5b506103df60665481565b34801561055957600080fd5b5060655461056d9062010000900460ff1681565b60405160ff90911681526020016102b5565b34801561058b57600080fd5b50606d54610372906001600160a01b031681565b3480156105ab57600080fd5b506103df60675481565b3480156105c157600080fd5b506033546001600160a01b0316610372565b3480156105df57600080fd5b506102de6105ee36600461243c565b610f42565b3480156105ff57600080fd5b50606a54610372906001600160a01b031681565b6102de6111fb565b34801561062757600080fd5b5061056d60cc81565b34801561063c57600080fd5b506103df620186a081565b34801561065357600080fd5b506102de61066236600461231d565b6112ec565b34801561067357600080fd5b506102de6106823660046124c9565b611365565b34801561069357600080fd5b506103df611550565b3480156106a857600080fd5b50606e54610372906001600160a01b031681565b3480156106c857600080fd5b506102de6106d736600461231d565b611681565b3480156106e857600080fd5b5060655460ff166102a9565b34801561070057600080fd5b506102de61070f36600461231d565b6116fa565b34801561072057600080fd5b506103df62093a8081565b34801561073757600080fd5b506102de61074636600461231d565b61178a565b610753611803565b6040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa158015610797573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bb9190612514565b8111156107c757600080fd5b6107db6001600160a01b038316338361185d565b60405181815233906001600160a01b038416907f7714b2e1355dbd618d450d789c3b49e9c81fef8879c49de4e8766e8e6b12fd949060200160405180910390a35050565b610827611803565b620186a081111561087f5760405162461bcd60e51b815260206004820152601060248201527f45444253433a20505245434953494f4e0000000000000000000000000000000060448201526064015b60405180910390fd5b60678190556040518181527f6def8549fd90179894598f0ff690d16298b4cde75f5cdeaa9c2742b6ac38f6629060200160405180910390a150565b6108c2611803565b6065805462ff000019166201000060ff8416908102919091179091556040517f889f04c33d1e7d49d39c271971db038ae1e91c0dbba10ad1b6cbb8984c87d48190600090a250565b606c54604080516001600160a01b03909216602083015269152d02c7e14af680000090820152600090819060600160408051808303601f1901815290829052606d5463321ed0a160e11b835260cc60048401529092506000916001600160a01b039091169063643da14290602401602060405180830381865afa158015610995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b9919061252d565b606d5460405163e703e1e760e01b81529192506001600160a01b03169063e703e1e7906109f79060cc9086906000908190889060019060040161259a565b602060405180830381865afa158015610a14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a389190612514565b9250505090565b610a47611803565b6001600160a01b038216610a6e57604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b038216600081815260706020908152604091829020805460ff191685151590811790915591519182527f6ffaf15f7938d0883935dc272476aaf5118e628d0578bb7f8d7c0b4e33bb5190910160405180910390a25050565b610ad56118da565b606a54610aed906001600160a01b0316333084611905565b600062093a80606960009054906101000a90046001600160a01b03166001600160a01b031663d13996086040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b6a9190612514565b610b7491906125fd565b905060008060675411610b88576000610ba4565b620186a060675484610b9a9190612616565b610ba4919061262d565b606b54604051632d8b87bf60e21b8152600481018590529192506000916001600160a01b039091169063b62e1efc90602401602060405180830381865afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190612514565b90506000606b60009054906101000a90046001600160a01b03166001600160a01b0316632716ae666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c929190612514565b90506040518060a001604052808487610cab91906125fd565b815260208082018690526040808301869052606080840189905260809384018690526066546000908152606f84528290208551815592850151600184015590840151600283015583015160038201559101516004909101558215610d17576065805460ff191660011790555b6065805461ff00191661010017905560665460405186907fb51e36f0682a0a88b8a7c9e51f0f2a311aef13eed2d27b955eac8d4ec44a93a190610d5d9088815260200190565b60405180910390a35050505050565b610d7461193d565b610d7c61196d565b6066546000908152606f6020526040808220600490810154606b5483516362e28ee560e11b815293519194936001600160a01b039091169263c5c51dca92828201928692908290030181865afa158015610dda573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e029190810190612696565b6066546000908152606f6020526040812080546002820154600390920154939450929091610e3590868087878787611995565b5050505050565b610e44611803565b6001600160a01b038116610e6b57604051639fabe1c160e01b815260040160405180910390fd5b606b80546001600160a01b0319166001600160a01b0383169081179091556040517fc6ff127433b785c51da9ae4088ee184c909b1a55b9afd82ae6c64224d3bc15d290600090a250565b610ebd611803565b6001600160a01b038116610ee457604051639fabe1c160e01b815260040160405180910390fd5b606e80546001600160a01b0319166001600160a01b0383169081179091556040517fc5c1fd2efe1c38c69323ff05498f589bf840bbaa86b3a2ac62cac206d813e62c90600090a250565b610f36611803565b610f406000611c8d565b565b610f4a61193d565b610f5261196d565b6000805b88821015611188578760716000868686818110610f7557610f75612748565b9050602002016020810190610f8a919061231d565b6001600160a01b03166001600160a01b0316815260200190815260200160002054101561117d576000868684818110610fc557610fc5612748565b90506020020135111561113657606b546001600160a01b0316632045be90858585818110610ff557610ff5612748565b905060200201602081019061100a919061231d565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401602060405180830381865afa15801561104e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611072919061252d565b90506110a68187878581811061108a5761108a612748565b606a546001600160a01b0316939260209091020135905061185d565b606a546001600160a01b038083169163b66503cf91168888868181106110ce576110ce612748565b6040516001600160e01b031960e087901b1681526001600160a01b0390941660048501526020029190910135602483015250604401600060405180830381600087803b15801561111d57600080fd5b505af1158015611131573d6000803e3d6000fd5b505050505b876071600086868681811061114d5761114d612748565b9050602002016020810190611162919061231d565b6001600160a01b031681526020810191909152604001600020555b600190910190610f56565b886068600082825461119a919061275e565b909155505060685487116111f0576065805461ff001916908190556000606855610100900460ff161580156111d2575060655460ff16155b156111f0576001606660008282546111ea919061275e565b90915550505b505050505050505050565b61120361193d565b61120b611cdf565b6066546000908152606f6020526040902060010154801561127c5760655462010000900460ff166000036112475761124281611d02565b61127c565b60655462010000900460ff166001036112635761124281611d9e565b60405163205d31cb60e11b815260040160405180910390fd5b6065805460ff191690819055610100900460ff161580156112a0575060655460ff16155b156112be576001606660008282546112b8919061275e565b90915550505b60405181907f520484db92a5ff9a27315f3cbf7b33adcbd0870b3aefb2cdfd95c4f3ae395dfc90600090a250565b6112f4611803565b6001600160a01b03811661131b57604051639fabe1c160e01b815260040160405180910390fd5b606c80546001600160a01b0319166001600160a01b0383169081179091556040517fb03edfeaa5e135ee75747535f39c4db26229f288ed5f84f55a3fef62272bc78490600090a250565b600054610100900460ff16158080156113855750600054600160ff909116105b8061139f5750303b15801561139f575060005460ff166001145b6114115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610876565b6000805460ff191660011790558015611434576000805461ff0019166101001790555b61143c611ee3565b6001600160a01b03831661146357604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b03841661148a57604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b0382166114b157604051639fabe1c160e01b815260040160405180910390fd5b606980546001600160a01b038087166001600160a01b031992831617909255606a8054868416908316179055606b8054928516929091169190911790556065805462ff00001916620100001790556000606755801561154a576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b606c54604080516001600160a01b03909216602083015269152d02c7e14af680000090820152600090819060600160408051808303601f1901815290829052606e54632ae8b9dd60e11b835260cc600484018190529193506000926001600160a01b0390911691637d9c39d19183906355d173ba90602401602060405180830381865afa1580156115e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611609919061252d565b6040516001600160e01b031960e085901b16815261163992916001600160a01b0316908790600090600401612771565b6040805180830381865afa158015611655573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061167991906127a6565b519392505050565b611689611803565b6001600160a01b0381166116b057604051639fabe1c160e01b815260040160405180910390fd5b606d80546001600160a01b0319166001600160a01b0383169081179091556040517fcca6991665d566c4f5ab2683a7c8caf0dcdbf7d4c84506c8cb6a09f959a7006090600090a250565b611702611803565b6001600160a01b03811661177e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610876565b61178781611c8d565b50565b611792611803565b6001600160a01b0381166117b957604051639fabe1c160e01b815260040160405180910390fd5b606980546001600160a01b0319166001600160a01b0383169081179091556040517fcec52196e972044edde8689a1b608e459c5946b7f3e5c8cd3d6d8e126d422e1c90600090a250565b6033546001600160a01b03163314610f405760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610876565b6040516001600160a01b0383166024820152604481018290526118d590849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff166001600160e01b031990931692909217909152611f56565b505050565b6069546001600160a01b03163314610f4057604051633e34a41b60e21b815260040160405180910390fd5b6040516001600160a01b038085166024830152831660448201526064810182905261154a9085906323b872dd60e01b90608401611889565b3360009081526070602052604090205460ff16610f405760405163ddb58e8160e01b815260040160405180910390fd5b606554610100900460ff16610f4057604051630a6c4e2f60e41b815260040160405180910390fd5b6000806119a289896125fd565b905060008060005b83851015611c17578885815181106119c4576119c4612748565b602002602001015190508560716000836001600160a01b03166001600160a01b0316815260200190815260200160002054108015611a6b5750606b54604051635b16ebb760e01b81526001600160a01b03838116600483015290911690635b16ebb790602401602060405180830381865afa158015611a47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a6b91906127f5565b15611c0c57606b5460405163168e30f560e01b81526001600160a01b038381166004830152602482018990528992169063168e30f590604401602060405180830381865afa158015611ac1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ae59190612514565b611aef908a612616565b611af9919061262d565b92508215611bf057606b546040516302045be960e41b81526001600160a01b03838116600483015290911690632045be9090602401602060405180830381865afa158015611b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b6f919061252d565b606a54909250611b89906001600160a01b0316838561185d565b606a5460405163b66503cf60e01b81526001600160a01b039182166004820152602481018590529083169063b66503cf90604401600060405180830381600087803b158015611bd757600080fd5b505af1158015611beb573d6000803e3d6000fd5b505050505b6001600160a01b03811660009081526071602052604090208690555b6001909401936119aa565b8360686000828254611c29919061275e565b90915550506068548a11611c7f576065805461ff001916908190556000606855610100900460ff16158015611c61575060655460ff16155b15611c7f57600160666000828254611c79919061275e565b90915550505b505050505050505050505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60655460ff16610f4057604051637336a16760e11b815260040160405180910390fd5b606c54604080516001600160a01b039092166020830152810182905260009060600160408051601f1981840301815290829052606e5463e289adcd60e01b83529092506001600160a01b03169063e289adcd903490611d689060cc908690600401612812565b6000604051808303818588803b158015611d8157600080fd5b505af1158015611d95573d6000803e3d6000fd5b50505050505050565b606c54604080516001600160a01b039092166020830152810182905260009060600160408051808303601f1901815290829052606d5463321ed0a160e11b835260cc60048401529092506000916001600160a01b039091169063643da14290602401602060405180830381865afa158015611e1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e41919061252d565b606d54606a54919250611e61916001600160a01b0390811691168561203b565b606d546040516347a979ff60e01b81526001600160a01b03909116906347a979ff903490611ea09060cc9087906000908190899060019060040161259a565b60206040518083038185885af1158015611ebe573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061154a9190612514565b600054610100900460ff16611f4e5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610876565b610f406120ed565b6000611fab826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166121619092919063ffffffff16565b8051909150156118d55780806020019051810190611fc991906127f5565b6118d55760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610876565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa15801561208c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120b09190612514565b6120ba919061275e565b6040516001600160a01b03851660248201526044810182905290915061154a90859063095ea7b360e01b90606401611889565b600054610100900460ff166121585760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610876565b610f4033611c8d565b60606121708484600085612178565b949350505050565b6060824710156121f05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610876565b600080866001600160a01b0316858760405161220c919061282e565b60006040518083038185875af1925050503d8060008114612249576040519150601f19603f3d011682016040523d82523d6000602084013e61224e565b606091505b509150915061225f8783838761226a565b979650505050505050565b606083156122d95782516000036122d2576001600160a01b0385163b6122d25760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610876565b5081612170565b61217083838151156122ee5781518083602001fd5b8060405162461bcd60e51b8152600401610876919061284a565b6001600160a01b038116811461178757600080fd5b60006020828403121561232f57600080fd5b813561233a81612308565b9392505050565b6000806040838503121561235457600080fd5b823561235f81612308565b946020939093013593505050565b60006020828403121561237f57600080fd5b5035919050565b60006020828403121561239857600080fd5b813560ff8116811461233a57600080fd5b801515811461178757600080fd5b600080604083850312156123ca57600080fd5b82356123d581612308565b915060208301356123e5816123a9565b809150509250929050565b60008083601f84011261240257600080fd5b50813567ffffffffffffffff81111561241a57600080fd5b6020830191508360208260051b850101111561243557600080fd5b9250929050565b600080600080600080600060a0888a03121561245757600080fd5b873596506020880135955060408801359450606088013567ffffffffffffffff8082111561248457600080fd5b6124908b838c016123f0565b909650945060808a01359150808211156124a957600080fd5b506124b68a828b016123f0565b989b979a50959850939692959293505050565b6000806000606084860312156124de57600080fd5b83356124e981612308565b925060208401356124f981612308565b9150604084013561250981612308565b809150509250925092565b60006020828403121561252657600080fd5b5051919050565b60006020828403121561253f57600080fd5b815161233a81612308565b60005b8381101561256557818101518382015260200161254d565b50506000910152565b6000815180845261258681602086016020860161254a565b601f01601f19169290920160200192915050565b60ff8716815260c0602082015260006125b660c083018861256e565b6040830196909652506001600160a01b03938416606082015291909216608082015290151560a09091015292915050565b634e487b7160e01b600052601160045260246000fd5b81810381811115612610576126106125e7565b92915050565b8082028115828204841417612610576126106125e7565b60008261264a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561268e5761268e61264f565b604052919050565b600060208083850312156126a957600080fd5b825167ffffffffffffffff808211156126c157600080fd5b818501915085601f8301126126d557600080fd5b8151818111156126e7576126e761264f565b8060051b91506126f8848301612665565b818152918301840191848101908884111561271257600080fd5b938501935b8385101561273c578451925061272c83612308565b8282529385019390850190612717565b98975050505050505050565b634e487b7160e01b600052603260045260246000fd5b80820180821115612610576126106125e7565b60ff85168152836020820152608060408201526000612793608083018561256e565b9050821515606083015295945050505050565b6000604082840312156127b857600080fd5b6040516040810181811067ffffffffffffffff821117156127db576127db61264f565b604052825181526020928301519281019290925250919050565b60006020828403121561280757600080fd5b815161233a816123a9565b60ff83168152604060208201526000612170604083018461256e565b6000825161284081846020870161254a565b9190910192915050565b60208152600061233a602083018461256e56fea2646970667358221220f275915f66237116d96c5a4f1ed5d5c9c3e8157df7dcdffab55d68e155b4ac7f64736f6c63430008160033