28 txs
44 calls
constructor
constructor()
functions
allowInitializePath
viewfunction allowInitializePath(tuple origin) view returns (bool)
animeToken
viewfunction animeToken() view returns (address)
claimChecker
viewfunction claimChecker() view returns (address)
combineOptions
viewfunction combineOptions(uint32 _eid, uint16 _msgType, bytes _extraOptions) view returns (bytes)
currentClaimNonce
viewfunction currentClaimNonce() view returns (uint256)
currentTimestamp
viewfunction currentTimestamp() view returns (uint256)
dailyTotalWithdrawn
viewfunction dailyTotalWithdrawn() view returns (uint256)
dailyTotalWithdrawnLimit
viewfunction dailyTotalWithdrawnLimit() view returns (uint256)
endpoint
viewfunction endpoint() view returns (address)
enforcedOptions
viewfunction enforcedOptions(uint32 eid, uint16 msgType) view returns (bytes enforcedOption)
expectedBaseGasRequired
viewfunction expectedBaseGasRequired() view returns (uint256)
expectedCalldataSize
viewfunction expectedCalldataSize() view returns (uint256)
expectedUnitGasRequired
viewfunction expectedUnitGasRequired() view returns (uint256)
isComposeMsgSender
viewfunction isComposeMsgSender(tuple, bytes, address _sender) view returns (bool)
isPaused
viewfunction isPaused() view returns (bool)
lzReadChannel
viewfunction lzReadChannel() view returns (uint32)
lzReadConfirmations
viewfunction lzReadConfirmations() view returns (uint16)
manager
viewfunction manager() view returns (address)
maxConfigsPerRequest
viewfunction maxConfigsPerRequest() view returns (uint8)
nextNonce
viewfunction nextNonce(uint32, bytes32) view returns (uint64 nonce)
nonceIsUsed
viewfunction nonceIsUsed(uint256 claimNonce) view returns (bool)
oAppVersion
purefunction oAppVersion() pure returns (uint64 senderVersion, uint64 receiverVersion)
owner
viewfunction owner() view returns (address)
peers
viewfunction peers(uint32 eid) view returns (bytes32 peer)
quoteForClaim
viewfunction quoteForClaim(tuple[] configs) view returns (uint256)
quoteForClaim
viewfunction quoteForClaim(uint256 numNFTAllos, uint256 numCollectorAllos) view returns (uint256)
readyForClaim
viewfunction readyForClaim() view returns (bool)
uuidSigner
viewfunction uuidSigner() view returns (address)
validateVestingConfig
purefunction validateVestingConfig(tuple c, bytes32 root) pure
vestingInfos
viewfunction vestingInfos(tuple[] configs) view returns (tuple[] infos)
vestingRoot
viewfunction vestingRoot() view returns (bytes32)
lzReceive
payablefunction lzReceive(tuple _origin, bytes32 _guid, bytes _message, address _executor, bytes _extraData) payable
renounceOwnership
nonpayablefunction renounceOwnership()
requestClaim
payablefunction requestClaim(tuple[] configs) payable returns (tuple)
setAnimeToken
nonpayablefunction setAnimeToken(address token)
setClaimChecker
nonpayablefunction setClaimChecker(address newClaimChecker)
setClaimRequestExecutionWindow
nonpayablefunction setClaimRequestExecutionWindow(uint32 window)
setDailyTotalWithdrawnLimit
nonpayablefunction setDailyTotalWithdrawnLimit(uint256 limit)
setDelegate
nonpayablefunction setDelegate(address _delegate)
setEnforcedOptions
nonpayablefunction setEnforcedOptions(tuple[] _enforcedOptions)
setExpectedBaseGasRequired
nonpayablefunction setExpectedBaseGasRequired(uint256 required)
setExpectedCalldataSize
nonpayablefunction setExpectedCalldataSize(uint256 size)
setExpectedUnitGasRequired
nonpayablefunction setExpectedUnitGasRequired(uint256 required)
setManager
nonpayablefunction setManager(address _manager)
setMaxConfigsPerRequest
nonpayablefunction setMaxConfigsPerRequest(uint8 _maxConfigsPerRequest)
setNFTToUUID
nonpayablefunction setNFTToUUID(address nft, uint256 tokenId, bytes32 uuid)
setPaused
nonpayablefunction setPaused(bool paused)
setPeer
nonpayablefunction setPeer(uint32 _eid, bytes32 _peer)
setReadChannel
nonpayablefunction setReadChannel(uint32 channelId, bool active)
setReadConfirmations
nonpayablefunction setReadConfirmations(uint16 confirmations)
setUUIDSigner
nonpayablefunction setUUIDSigner(address signer)
setUUIDToPackedNftID
nonpayablefunction setUUIDToPackedNftID(bytes32 uuid, address nft, uint256 tokenId)
setVestingRoot
nonpayablefunction setVestingRoot(bytes32 root)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawERC20
nonpayablefunction withdrawERC20(address token, address to, uint256 amount)
withdrawETH
nonpayablefunction withdrawETH(address to, uint256 amount)
events
AdminAccessed
event AdminAccessed(address indexed caller, bytes msgData)
DailyTotalWithdrawnLimitReached
event DailyTotalWithdrawnLimitReached()
EnforcedOptionSet
event EnforcedOptionSet((uint32 eid, uint16 msgType, bytes options)[] _enforcedOptions)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
PeerSet
event PeerSet(uint32 eid, bytes32 peer)
Released
event Released(uint256 indexed claimNonce, address indexed to, uint256 amount)
VestWithdrawn
event VestWithdrawn(address indexed nft, uint256 indexed tokenId, address indexed collector, uint256 streamId, uint256 amount)
errors
ClaimRequestTooOld
error ClaimRequestTooOld()
ExceedDailyTotalWithdrawnLimit
error ExceedDailyTotalWithdrawnLimit()
InvalidDelegate
error InvalidDelegate()
InvalidEndpointCall
error InvalidEndpointCall()
InvalidNftTokenIdUuidLink
error InvalidNftTokenIdUuidLink()
InvalidOptions
error InvalidOptions(bytes options)
InvalidOptionType
error InvalidOptionType(uint16 optionType)
InvalidProof
error InvalidProof()
InvalidSignature
error InvalidSignature()
InvalidVestingConfig
error InvalidVestingConfig()
LzTokenUnavailable
error LzTokenUnavailable()
MaxConfigsPerRequestExceeded
error MaxConfigsPerRequestExceeded()
NonceAlreadyUsed
error NonceAlreadyUsed()
NoPeer
error NoPeer(uint32 eid)
NotEnoughNative
error NotEnoughNative(uint256 msgValue)
NotReadyForClaim
error NotReadyForClaim()
OnlyEndpoint
error OnlyEndpoint(address addr)
OnlyPeer
error OnlyPeer(uint32 eid, bytes32 sender)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
Paused
error Paused()
Reentrancy
error Reentrancy()
SafeCastOverflowedUintDowncast
error SafeCastOverflowedUintDowncast(uint8 bits, uint256 value)
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
ToIsZeroAddress
error ToIsZeroAddress()
Unauthorized
error Unauthorized()
UnsupportedChainId
error UnsupportedChainId()
UUIDSignerZeroAddress
error UUIDSignerZeroAddress()
ZeroConfigs
error ZeroConfigs()
creation bytecode
0x60a060405234801562000010575f80fd5b506200001b6200016c565b338181818180806200004657604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b6200005181620001cd565b506001600160a01b0380831660805281166200008057604051632d618d8160e21b815260040160405180910390fd5b60805160405163ca5eb5e160e01b81526001600160a01b0383811660048301529091169063ca5eb5e1906024015f604051808303815f87803b158015620000c5575f80fd5b505af1158015620000d8573d5f803e3d5ffd5b505050505050505050505f620000f36200021c60201b60201c565b6001810180546001600160881b0319166d80000186a000061a8000000e1001179055600a8101805466ffffffffffffff60a01b191666320003ffffffff60a01b1790819055909150620001659063ffffffff600160a01b909104166200015f306001600160a01b031690565b62000229565b506200027d565b5f61a4b14603620001905750731a44076050125825900e736c501f859c50fe728c90565b62066eee4603620001b45750736edce65403992e310a62460808c4b910d972f10f90565b60405163c08c729760e01b815260040160405180910390fd5b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6862dc72c6d15e6284df90565b63ffffffff82165f81815260016020908152604091829020849055815192835282018390527f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b910160405180910390a15050565b608051614925620002c05f395f818161061701528181610d22015281816118100152818161265d01528181612e0301528181612eba015261324101526149255ff3fe60806040526004361061035b575f3560e01c806382413eac116101bd578063c21be51e116100f2578063d8333ac811610092578063f0a9e4811161006d578063f0a9e48114610a99578063f2fde38b14610ab8578063f79fd08514610ad7578063ff7bd03d14610b03575f80fd5b8063d8333ac814610a3c578063ddeedcc314610a5b578063def55d1c14610a7a575f80fd5b8063ca5eb5e1116100cd578063ca5eb5e1146109ac578063ce271616146109cb578063d0ebdbe7146109ea578063d3bebea614610a09575f80fd5b8063c21be51e1461093f578063c460af0a1461095e578063c7fc466514610983575f80fd5b8063a25798751161015d578063b187bd2611610138578063b187bd26146108b7578063b98bd070146108d6578063bb0b6a53146108f5578063bc70b35414610920575f80fd5b8063a25798751461084e578063a761821f14610879578063b097aeb814610898575f80fd5b806398385a3b1161019857806398385a3b146107ca578063983a2122146107ff5780639a08fe3d1461081b5780639b894b0c1461082f575f80fd5b806382413eac1461077057806386e326031461078f5780638da5cb5b146107ae575f80fd5b80634782f77911610293578063715018a61161023357806379a2c8dc1161020e57806379a2c8dc146106c75780637d25a05e146106ec5780637ec133081461072557806381b5d66114610744575f80fd5b8063715018a61461066257806375216e651461067657806378858ee3146106a2575f80fd5b80635535d4611161026e5780635535d461146105bb57806359b87bf4146105e75780635e280f111461060657806362a1a94d14610639575f80fd5b80634782f77914610544578063481c6a751461056357806352f7f3f61461059c575f80fd5b806327570d90116102fe5780633400288b116102d95780633400288b146104b857806344004cc1146104d75780634693e7a8146104f65780634763666c14610525575f80fd5b806327570d9014610441578063278e024c14610460578063282a915614610499575f80fd5b806317442b701161033957806317442b70146103bc578063176c41d7146103dd5780631e2ff94f146103fc57806321c210d814610418575f80fd5b80630f601f5f1461035f57806313137d651461038857806316c38b3c1461039d575b5f80fd5b61037261036d36600461391e565b610b22565b60405161037f919061395c565b60405180910390f35b61039b610396366004613a0d565b610d20565b005b3480156103a8575f80fd5b5061039b6103b7366004613ab4565b610de0565b3480156103c7575f80fd5b506040805160018152600260208201520161037f565b3480156103e8575f80fd5b5061039b6103f7366004613ad4565b610e70565b348015610407575f80fd5b50425b60405190815260200161037f565b348015610423575f80fd5b506862dc72c6d15e6284e054600160281b900463ffffffff1661040a565b34801561044c575f80fd5b5061040a61045b366004613aeb565b610e8d565b34801561046b575f80fd5b506862dc72c6d15e6284e954600160a01b900463ffffffff1660405163ffffffff909116815260200161037f565b3480156104a4575f80fd5b5061039b6104b3366004613b1e565b610f2c565b3480156104c3575f80fd5b5061039b6104d2366004613b37565b610f66565b3480156104e2575f80fd5b5061039b6104f1366004613b5f565b610f7c565b348015610501575f80fd5b50610515610510366004613ad4565b610fc3565b604051901515815260200161037f565b348015610530575f80fd5b5061039b61053f366004613b9d565b610feb565b34801561054f575f80fd5b5061039b61055e366004613bc1565b611028565b34801561056e575f80fd5b506862dc72c6d15e6284df546001600160a01b03165b6040516001600160a01b03909116815260200161037f565b3480156105a7575f80fd5b5061039b6105b6366004613bee565b611069565b3480156105c6575f80fd5b506105da6105d5366004613c07565b6110a4565b60405161037f9190613c85565b3480156105f2575f80fd5b5061039b610601366004613ad4565b611146565b348015610611575f80fd5b506105847f000000000000000000000000000000000000000000000000000000000000000081565b348015610644575f80fd5b506862dc72c6d15e6284e054600160681b900463ffffffff1661040a565b34801561066d575f80fd5b5061039b6111ca565b348015610681575f80fd5b506862dc72c6d15e6284df54600160a01b90046001600160601b031661040a565b3480156106ad575f80fd5b506862dc72c6d15e6284e9546001600160a01b0316610584565b3480156106d2575f80fd5b506862dc72c6d15e6284e1546001600160601b031661040a565b3480156106f7575f80fd5b5061070d610706366004613b37565b5f92915050565b6040516001600160401b03909116815260200161037f565b348015610730575f80fd5b5061039b61073f366004613ad4565b6111dd565b34801561074f575f80fd5b506862dc72c6d15e6284e154600160601b90046001600160a01b0316610584565b34801561077b575f80fd5b5061051561078a366004613c97565b611228565b34801561079a575f80fd5b5061039b6107a9366004613d09565b61123d565b3480156107b9575f80fd5b505f546001600160a01b0316610584565b3480156107d5575f80fd5b506862dc72c6d15e6284e954600160c01b900461ffff1660405161ffff909116815260200161037f565b34801561080a575f80fd5b506862dc72c6d15e6284e55461040a565b348015610826575f80fd5b506105156112b1565b34801561083a575f80fd5b5061039b610849366004613d22565b61142f565b348015610859575f80fd5b506862dc72c6d15e6284e054600160881b900465ffffffffffff1661040a565b348015610884575f80fd5b5061040a61089336600461391e565b6114a4565b3480156108a3575f80fd5b5061039b6108b2366004613ad4565b6114c4565b3480156108c2575f80fd5b506862dc72c6d15e6284e05460ff16610515565b3480156108e1575f80fd5b5061039b6108f036600461391e565b61154e565b348015610900575f80fd5b5061040a61090f366004613b1e565b60016020525f908152604090205481565b34801561092b575f80fd5b506105da61093a366004613d3d565b611568565b34801561094a575f80fd5b5061039b610959366004613d99565b611709565b348015610969575f80fd5b506862dc72c6d15e6284e6546001600160a01b0316610584565b34801561098e575f80fd5b506862dc72c6d15e6284e054600160481b900463ffffffff1661040a565b3480156109b7575f80fd5b5061039b6109c6366004613d22565b6117e9565b3480156109d6575f80fd5b5061039b6109e5366004613d22565b61186a565b3480156109f5575f80fd5b5061039b610a04366004613d22565b6118d1565b348015610a14575f80fd5b506862dc72c6d15e6284e954600160d01b900460ff1660405160ff909116815260200161037f565b348015610a47575f80fd5b5061039b610a56366004613d22565b611946565b348015610a66575f80fd5b5061039b610a75366004613dd1565b611980565b348015610a85575f80fd5b5061039b610a94366004613ad4565b6119be565b348015610aa4575f80fd5b5061039b610ab3366004613e03565b611a44565b348015610ac3575f80fd5b5061039b610ad2366004613d22565b611aa0565b348015610ae2575f80fd5b50610af6610af136600461391e565b611add565b60405161037f9190613e2b565b348015610b0e575f80fd5b50610515610b1d366004613e81565b611c16565b610b2a613894565b688000000000ab143c0646600103610b5457805c15610b4c57805f526004601cfd5b30815d610b69565b30815403610b6557805f526004601cfd5b3081555b506862dc72c6d15e6284df610b7c6112b1565b610b9957604051630a075a0560e41b815260040160405180910390fd5b600181015460ff1615610bbf576040516313d0ff5960e31b815260040160405180910390fd5b600a810154600160d01b900460ff16831115610bee576040516353da2aa560e01b815260040160405180910390fd5b5f839003610c0f57604051636910abcb60e11b815260040160405180910390fd5b610c198484611c4a565b5f610c248585611f53565b6001830180549192505f91600160881b900465ffffffffffff16906011610c4a83613eaf565b91906101000a81548165ffffffffffff021916908365ffffffffffff16021790555065ffffffffffff169050610c81818787612236565b600a83015482516020840151610cd79263ffffffff600160a01b82041692610cb39286926001600160a01b0316612447565b610cbc88612592565b60405180604001604052803481526020015f8152503361262c565b9350505050610ce4600190565b15610d0d57688000000000ab143c0646600103610d03575f815d610d07565b8081555b50610d1a565b5f688000000000ab143c065d5b92915050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610d70576040516391ac5e4f60e01b81523360048201526024015b60405180910390fd5b60208701803590610d8a90610d85908a613b1e565b612732565b14610dc857610d9c6020880188613b1e565b60405163309afaf360e21b815263ffffffff909116600482015260208801356024820152604401610d67565b610dd78787878787878761276d565b50505050505050565b5f546001600160a01b03163314610e23576862dc72c6d15e6284df546001600160a01b03163314610e23576040516282b42960e81b815260040160405180910390fd5b80610e4d57610e306112b1565b610e4d57604051630a075a0560e41b815260040160405180910390fd5b610e556127b0565b6862dc72c6d15e6284e0805460ff1916911515919091179055565b610e786127f5565b610e806127b0565b6862dc72c6d15e6284e555565b5f80836001600160401b03811115610ea757610ea7613ed3565b604051908082528060200260200182016040528015610ed0578160200160208202803683370190505b5090505f836001600160401b03811115610eec57610eec613ed3565b604051908082528060200260200182016040528015610f15578160200160208202803683370190505b509050610f23308383612821565b95945050505050565b610f346127f5565b610f3c6127b0565b6862dc72c6d15e6284e0805463ffffffff9092166101000264ffffffff0019909216919091179055565b610f6e6127f5565b610f78828261289b565b5050565b610f846127f5565b610f8c6127b0565b6001600160a01b038216610fb35760405163391bbb4160e01b815260040160405180910390fd5b610fbe8383836128ef565b505050565b600881901c5f9081526862dc72c6d15e6284e8602052604081205460ff83161c600116610d1a565b610ff36127f5565b610ffb6127b0565b5f9283526862dc72c6d15e6284e4602052604090922060a09290921b6001600160a01b0391909116179055565b6110306127f5565b6110386127b0565b6001600160a01b03821661105f5760405163391bbb4160e01b815260040160405180910390fd5b610f788282612939565b6110716127f5565b6110796127b0565b6862dc72c6d15e6284e9805461ffff92909216600160c01b0261ffff60c01b19909216919091179055565b600260209081525f9283526040808420909152908252902080546110c790613ee7565b80601f01602080910402602001604051908101604052809291908181526020018280546110f390613ee7565b801561113e5780601f106111155761010080835404028352916020019161113e565b820191905f5260205f20905b81548152906001019060200180831161112157829003601f168201915b505050505081565b5f546001600160a01b03163314611189576862dc72c6d15e6284df546001600160a01b03163314611189576040516282b42960e81b815260040160405180910390fd5b6111916127b0565b61119a81612952565b6862dc72c6d15e6284e0805463ffffffff92909216600160681b0263ffffffff60681b1990921691909117905550565b6111d26127f5565b6111db5f61296b565b565b6111e56127f5565b6111ed6127b0565b6111f6816129ba565b6862dc72c6d15e6284df80546001600160601b0392909216600160a01b026001600160a01b0390921691909117905550565b6001600160a01b03811630145b949350505050565b5f546001600160a01b03163314611280576862dc72c6d15e6284df546001600160a01b03163314611280576040516282b42960e81b815260040160405180910390fd5b6112886127b0565b6862dc72c6d15e6284e9805460ff92909216600160d01b0260ff60d01b19909216919091179055565b6862dc72c6d15e6284df80545f91906001600160a01b03166112d4575f91505090565b6001810154610100900463ffffffff165f036112f1575f91505090565b8054600160a01b90046001600160601b03165f03611310575f91505090565b6001810154600160281b900463ffffffff165f0361132f575f91505090565b6001810154600160481b900463ffffffff165f0361134e575f91505090565b6001810154600160681b900463ffffffff165f0361136d575f91505090565b600681015461137d575f91505090565b60078101546001600160a01b0316611396575f91505090565b600a8101546001600160a01b03166113af575f91505090565b6002810154600160601b90046001600160a01b03166113cf575f91505090565b600a810154600160a01b900463ffffffff165f036113ee575f91505090565b600a810154600160c01b900461ffff165f0361140b575f91505090565b600a810154600160d01b900460ff165f03611427575f91505090565b600191505090565b5f546001600160a01b03163314611472576862dc72c6d15e6284df546001600160a01b03163314611472576040516282b42960e81b815260040160405180910390fd5b61147a6127b0565b6862dc72c6d15e6284e680546001600160a01b0319166001600160a01b0392909216919091179055565b5f806114b08484611f53565b905061123581604001518260600151610e8d565b5f546001600160a01b03163314611507576862dc72c6d15e6284df546001600160a01b03163314611507576040516282b42960e81b815260040160405180910390fd5b61150f6127b0565b61151881612952565b6862dc72c6d15e6284e0805463ffffffff92909216600160481b026cffffffff0000000000000000001990921691909117905550565b6115566127f5565b610f786115638284614021565b6129ce565b63ffffffff84165f90815260026020908152604080832061ffff8716845290915281208054606092919061159b90613ee7565b80601f01602080910402602001604051908101604052809291908181526020018280546115c790613ee7565b80156116125780601f106115e957610100808354040283529160200191611612565b820191905f5260205f20905b8154815290600101906020018083116115f557829003601f168201915b5050505050905080515f036116605783838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509294506112359350505050565b5f83900361166f579050611235565b600283106116ec576116b584848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612ada92505050565b806116c384600281886140e7565b6040516020016116d59392919061410e565b604051602081830303815290604052915050611235565b8383604051639a6d49cd60e01b8152600401610d67929190614134565b5f6117b261171a6020850185613d22565b6001600160a01b03166040850135611736578460200135611738565b5f5b604086013561174d6080880160608901613d22565b6001600160a01b031661176660a0890160808a01613d09565b60ff168860a001358960c001358a60e00135604080519889526020890197909752958701949094526060860192909252608085015260a084015260c083015260e0820152610100902090565b90506117cc6117c5610100850185614162565b8484612b06565b610fbe576040516309bde33960e01b815260040160405180910390fd5b6117f16127f5565b60405163ca5eb5e160e01b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063ca5eb5e1906024015f604051808303815f87803b158015611851575f80fd5b505af1158015611863573d5f803e3d5ffd5b5050505050565b6118726127f5565b6001600160a01b038116611899576040516371c46ce160e01b815260040160405180910390fd5b6118a16127b0565b6862dc72c6d15e6284e180546001600160a01b03909216600160601b026001600160601b03909216919091179055565b5f546001600160a01b03163314611914576862dc72c6d15e6284df546001600160a01b03163314611914576040516282b42960e81b815260040160405180910390fd5b61191c6127b0565b6862dc72c6d15e6284df80546001600160a01b0319166001600160a01b0392909216919091179055565b61194e6127f5565b6119566127b0565b6862dc72c6d15e6284e980546001600160a01b0319166001600160a01b0392909216919091179055565b6119886127f5565b6119906127b0565b6001600160a01b03929092165f9081526862dc72c6d15e6284e3602090815260408083209383529290522055565b5f546001600160a01b03163314611a01576862dc72c6d15e6284df546001600160a01b03163314611a01576040516282b42960e81b815260040160405180910390fd5b611a096127b0565b611a1281612952565b6862dc72c6d15e6284e0805463ffffffff92909216600160281b0268ffffffff00000000001990921691909117905550565b611a4c6127f5565b611a546127b0565b6862dc72c6d15e6284df611a738383611a6d575f61289b565b3061289b565b8115610fbe57600a8101805463ffffffff8516600160a01b0263ffffffff60a01b19909116179055505050565b611aa86127f5565b6001600160a01b038116611ad157604051631e4fbdf760e01b81525f6004820152602401610d67565b611ada8161296b565b50565b6060816001600160401b03811115611af757611af7613ed3565b604051908082528060200260200182016040528015611b3b57816020015b604080518082019091525f8082526020820152815260200190600190039081611b155790505b5090505f5b82811015611c0f5736848483818110611b5b57611b5b6141a7565b9050602002810190611b6d91906141bb565b90505f611bad611b806020840184613d22565b6020840135611b956080860160608701613d22565b611ba560a0870160808801613d09565b60ff16612b3e565b9050611bc1611bbb83614241565b42612b97565b848481518110611bd357611bd36141a7565b60200260200101516020018181525050805f0154848481518110611bf957611bf96141a7565b6020908102919091010151525050600101611b40565b5092915050565b5f602082018035906001908390611c2d9086613b1e565b63ffffffff16815260208101919091526040015f20541492915050565b6862dc72c6d15e6284e5546862dc72c6d15e6284df905f5b838110156118635736858583818110611c7d57611c7d6141a7565b9050602002810190611c8f91906141bb565b9050611c9b8184611709565b5f80611caa6020840184613d22565b6001600160a01b031614159050604082013515611e345780611cdf57604051632e4a826160e11b815260040160405180910390fd5b5f611d1d6040840135611cf56020860186613d22565b6001600160a01b03168560200135604080519384526020840192909252908201526060902090565b9050611d4d816020527b19457468657265756d205369676e6564204d6573736167653a0a33325f52603c60042090565b6002870154909150600160601b90046001600160a01b0316611d7c82611d77610120870187614316565b612bfb565b6001600160a01b031614611da357604051638baa579f60e01b815260040160405180910390fd5b5f611dc9611db46020860186613d22565b6001600160a01b0316602086013560a01b1790565b6040808601355f90815260058a01602052205490915015611e1b576040808501355f9081526005890160205220548114611e165760405163533c430760e01b815260040160405180910390fd5b611e31565b6040808501355f90815260058901602052208190555b50505b8015611f49575f6040830135611e4e57600160801b611e54565b82604001355b90505f6004870181611e696020870187613d22565b6001600160a01b03166001600160a01b031681526020019081526020015f205f856020013581526020019081526020015f205414611f0a5780600487015f611eb46020870187613d22565b6001600160a01b03166001600160a01b031681526020019081526020015f205f856020013581526020019081526020015f205414611f055760405163533c430760e01b815260040160405180910390fd5b611f47565b80600487015f611f1d6020870187613d22565b6001600160a01b0316815260208082019290925260409081015f9081208784013582529092529020555b505b5050600101611c62565b611f7c604051806080016040528060608152602001606081526020015f81526020015f81525090565b5f805f5b848110156120435736868683818110611f9b57611f9b6141a7565b9050602002810190611fad91906141bb565b90505f80611fc16080840160608501613d22565b6001600160a01b0316141590505f80611fdd6020850185613d22565b6001600160a01b03161415905081151581900361200d57604051632e4a826160e11b815260040160405180910390fd5b8115612021578461201d81614358565b9550505b8015612035578561203181614358565b9650505b505050806001019050611f80565b5061206d604051806080016040528060608152602001606081526020015f81526020015f81525090565b826001600160401b0381111561208557612085613ed3565b6040519080825280602002602001820160405280156120ae578160200160208202803683370190505b508152816001600160401b038111156120c9576120c9613ed3565b6040519080825280602002602001820160405280156120f2578160200160208202803683370190505b5060208201525f5b8581101561222c5736878783818110612115576121156141a7565b905060200281019061212791906141bb565b90505f8061213b6080840160608501613d22565b6001600160a01b0316141590505f806121576020850185613d22565b6001600160a01b03161415905081156121c25761217a6080840160608501613d22565b60208601516060870180519061218f82614358565b9052815181106121a1576121a16141a7565b60200260200101906001600160a01b031690816001600160a01b0316815250505b801561221e576121ed6121d86020850185613d22565b6001600160a01b0316602085013560a01b1790565b8551604087018051906121ff82614358565b905281518110612211576122116141a7565b6020026020010181815250505b5050508060010190506120fa565b5095945050505050565b5f8381526862dc72c6d15e6284e76020526040902080546001600160a01b031916331781556862dc72c6d15e6284df9061226f83612952565b81546001600160a01b0316600160e01b63ffffffff929092169190910267ffffffffffffffff60a01b191617600160a01b426001600160401b0316021781555f5b8381101561243f575f8181526001830160205260409020368686848181106122da576122da6141a7565b90506020028101906122ec91906141bb565b90506122fb6020820182613d22565b82546001600160a01b0319166001600160a01b03919091161782556123236020820135612c83565b825462ffffff91909116600160a01b0262ffffff60a01b1990911617825561235c61235460a0830160808401613d09565b60ff16612c97565b825460ff91909116600160b81b0260ff60b81b1990911617825561238360a0820135612952565b825463ffffffff91909116600160c01b0263ffffffff60c01b199091161782556123b060c0820135612952565b825463ffffffff91909116600160e01b026001600160e01b039091161782556123df6080820160608301613d22565b6001830180546001600160a01b0319166001600160a01b039290921691909117905561240e60e08201356129ba565b600192830180546001600160601b0392909216600160a01b026001600160a01b0390921691909117905550016122b0565b505050505050565b6040805160018082528183019092526060915f9190816020015b6040805160e0810182525f808252602080830182905292820181905260608083018290526080830182905260a083019190915260c082015282525f199092019101816124615790505090506040518060e00160405280600161ffff1681526020016124ca612ca9565b63ffffffff1681525f6020820152426001600160401b031660408201526862dc72c6d15e6284e954600160c01b900461ffff1660608201526001600160a01b038516608082015260a0018733888861252183612ce4565b604051602401612535959493929190614370565b60408051601f198184030181529190526020810180516001600160e01b0316636df6dc3760e11b1790529052815182905f90612573576125736141a7565b60200260200101819052506125885f82612cfb565b9695505050505050565b6862dc72c6d15e6284e0546060906862dc72c6d15e6284df905f906125c490600160481b900463ffffffff168561440f565b60018301546125e09190600160281b900463ffffffff16614426565b60018301549091506112359063ffffffff80841691600160681b9004165f61262460408051600360f01b602082015281516002818303018152602290910190915290565b929190612d81565b612634613894565b5f612641845f0151612ddd565b60208501519091501561265b5761265b8460200151612e00565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632637a450826040518060a001604052808b63ffffffff1681526020016126ab8c612732565b81526020018a81526020018981526020015f8960200151111515815250866040518463ffffffff1660e01b81526004016126e6929190614439565b60806040518083038185885af1158015612702573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061272791906144fd565b979650505050505050565b63ffffffff81165f9081526001602052604081205480610d1a5760405163f6ff4fb760e01b815263ffffffff84166004820152602401610d67565b5f8061277b86880188614550565b915091508061279c576040516282b42960e81b815260040160405180910390fd5b6127a582612edf565b505050505050505050565b336001600160a01b03167f2218aada03516237ddb3d2451b4ccb7efc7c423d55815d064da80786312706b45f366040516127eb929190614134565b60405180910390a2565b5f546001600160a01b031633146111db5760405163118cdaa760e01b8152336004820152602401610d67565b6862dc72c6d15e6284e9545f906862dc72c6d15e6284df908290612853908790879087906001600160a01b0316612447565b90505f8061286d865188516128689190614426565b612592565b600a85015490915061288e90600160a01b900463ffffffff1684838561322c565b5198975050505050505050565b63ffffffff82165f81815260016020908152604091829020849055815192835282018390527f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b910160405180910390a15050565b816014528060345263a9059cbb60601b5f5260205f604460105f875af18060015f51141661292f57803d853b15171061292f576390b8ec185f526004601cfd5b505f603452505050565b5f385f3884865af1610f785763b12d13eb5f526004601cfd5b5f640100000000821061296757612967613301565b5090565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f600160601b821061296757612967613301565b5f5b8151811015612a9f576129ff8282815181106129ee576129ee6141a7565b602002602001015160400151612ada565b818181518110612a1157612a116141a7565b60200260200101516040015160025f848481518110612a3257612a326141a7565b60200260200101515f015163ffffffff1663ffffffff1681526020019081526020015f205f848481518110612a6957612a696141a7565b60200260200101516020015161ffff1661ffff1681526020019081526020015f209081612a9691906145b5565b506001016129d0565b507fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b67481604051612acf9190614670565b60405180910390a150565b600281015161ffff8116600314610f785781604051639a6d49cd60e01b8152600401610d679190613c85565b5f8315612b36578360051b8501855b803580851160051b94855260209485185260405f209301818110612b155750505b501492915050565b5f80612b78866001600160a01b031686866001600160a01b0316866040805194855260208501939093529183015260608201526080902090565b5f9081526862dc72c6d15e6284e2602052604090209695505050505050565b60a082015160c08301515f919082612baf83836146f9565b60e0870151909150838611612bca575f945050505050610d1a565b828610612bdc579350610d1a92505050565b81612be785886146f9565b612bf1908361440f565b612727919061470c565b5f6040518260408114612c165760418114612c3d5750612c6e565b60208581013560ff81901c601b0190915285356040526001600160ff1b0316606052612c4e565b60408501355f1a6020526040856040375b50845f526020600160805f60015afa5191505f606052806040523d612c7b575b638baa579f5f526004601cfd5b509392505050565b5f6301000000821061296757612967613301565b5f610100821061296757612967613301565b5f61a4b14603612cba575061759590565b62066eee4603612ccb5750619ce190565b60405163c08c729760e01b815260040160405180910390fd5b5f323314612cf457506001919050565b503b151590565b60605f600184612d0b855161330e565b6040516001600160f01b031960f094851b8116602083015292841b83166022820152921b16602482015260260160405160208183030381529060405290505f5b8351811015612c7b57612d7782858381518110612d6a57612d6a6141a7565b602002602001015161333c565b9150600101612d4b565b6060846003612d90825f6133cc565b61ffff1614612dc357612da3815f6133cc565b604051633a51740d60e01b815261ffff9091166004820152602401610d67565b5f612dcf868686613428565b9050612727876005836134d3565b5f813414612967576040516304fb820960e51b8152346004820152602401610d67565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e4fe1d946040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e5d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e81919061472b565b90506001600160a01b038116612eaa576040516329b99a9560e11b815260040160405180910390fd5b610f786001600160a01b038216337f00000000000000000000000000000000000000000000000000000000000000008561353c565b6862dc72c6d15e6284df5f8080612ef58561359c565b919450925090506001600160a01b038216612f235760405163391bbb4160e01b815260040160405180910390fd5b600184015460ff1615612f49576040516313d0ff5960e31b815260040160405180910390fd5b600885901c5f90815260098501602052604090205460ff86161c60011615612f8357604051623f613760e71b815260040160405180910390fd5b6001840154612f9d90610100900463ffffffff16426146f9565b816001600160401b03161015612fc6576040516336c056a760e21b815260040160405180910390fd5b600885901c5f90815260098501602052604090208054600160ff88161b179055612fee61375e565b600284015484546001600160601b03918216600160a01b909104909116116130295760405163620eca6f60e11b815260040160405180910390fd5b600284015484545f918291613051916001600160601b0390811691600160a01b900416614746565b6001600160601b031690505f5b85518110156131b6575f86828151811061307a5761307a6141a7565b602002602001015190505f6130a3825f015183602001518460600151856080015160ff16612b3e565b90505f6130df825f01546130c0858a6001600160401b0316612b97565b6130ca91906146f9565b6130d488886146f9565b808218908211021890565b90506130eb8187614426565b955080825f015f8282546130ff9190614426565b9250508190555082606001516001600160a01b03168360200151845f01516001600160a01b03167f9fb8cf0df5a043b3003ee5402e773eca3296ff3e0af8aa116ac898a017bdb2e486608001518560405161316992919060ff929092168252602082015260400190565b60405180910390a48486036131a8576040517f0190970836bc5d65e97baf82f827186fccf05984b165b053a97e92d42eec02d1905f90a15050506131b6565b50505080600101905061305e565b508115610dd7576131c6826137c9565b60078601546131df906001600160a01b031685846128ef565b836001600160a01b0316877f3bfce8de0db7450cc169b94323c210e69a36c6a4a58c9f5d96bec4973adce3928460405161321b91815260200190565b60405180910390a350505050505050565b604080518082019091525f80825260208201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ddc28c586040518060a001604052808863ffffffff16815260200161328e89612732565b8152602001878152602001868152602001851515815250306040518363ffffffff1660e01b81526004016132c3929190614439565b6040805180830381865afa1580156132dd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f239190614766565b6335278d125f526004601cfd5b5f61ffff821115612967576040516306dfcc6560e41b81526010600482015260248101839052604401610d67565b60605f836001845f015160016133628760c0015151602361335d9190614426565b61330e565b60208089015160405161337a97969594939201614780565b60408051601f19818403018152828252908501516060860151608087015160a088015160c08901519496506133b4958795906020016147f2565b60405160208183030381529060405291505092915050565b5f6133d8826002614426565b8351101561341f5760405162461bcd60e51b8152602060048201526014602482015273746f55696e7431365f6f75744f66426f756e647360601b6044820152606401610d67565b50016002015190565b60606fffffffffffffffffffffffffffffffff82161561348e576040516001600160801b0319608086811b821660208401526001600160e01b031960e087901b16603084015284901b166034820152604401604051602081830303815290604052611235565b6040516001600160801b0319608086901b1660208201526001600160e01b031960e085901b166030820152603401604051602081830303815290604052949350505050565b60608360036134e2825f6133cc565b61ffff16146134f557612da3815f6133cc565b846001613502855161330e565b61350d90600161486e565b8686604051602001613523959493929190614889565b6040516020818303038152906040529150509392505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052613596908590613828565b50505050565b60605f80806862dc72c6d15e6284df5f86815260088201602052604081208054929350916001600160a01b038116916001600160401b03600160a01b830481169263ffffffff600160e01b90910416908111156135fb576135fb613ed3565b60405190808252806020026020018201604052801561369257816020015b61367f6040518061014001604052805f6001600160a01b031681526020015f81526020015f80191681526020015f6001600160a01b031681526020015f60ff1681526020015f81526020015f81526020015f815260200160608152602001606081525090565b8152602001906001900390816136195790505b5090505f5b8151811015613750575f818152600186016020526040812083519091908490849081106136c6576136c66141a7565b60209081029190910181015183546001600160a01b038082168352600160a01b80830462ffffff1694840194909452600160b81b820460ff166080840152600160c01b820463ffffffff90811660a0850152600160e01b90920490911660c08301526001948501549081166060830152919091046001600160601b031660e0909101525001613697565b509891975095509350505050565b6862dc72c6d15e6284df5f613776620151804261470c565b6001830154909150600160b81b900463ffffffff168114610f785760018201805463ffffffff8316600160b81b0263ffffffff60b81b199091161790556002820180546001600160601b03191690555050565b6862dc72c6d15e6284e1546862dc72c6d15e6284df905f906137f59084906001600160601b0316614426565b9050613800816129ba565b60029290920180546001600160601b0319166001600160601b03909316929092179091555050565b5f8060205f8451602086015f885af180613847576040513d5f823e3d81fd5b50505f513d9150811561385e57806001141561386b565b6001600160a01b0384163b155b1561359657604051635274afe760e01b81526001600160a01b0385166004820152602401610d67565b60405180606001604052805f80191681526020015f6001600160401b031681526020016138d260405180604001604052805f81526020015f81525090565b905290565b5f8083601f8401126138e7575f80fd5b5081356001600160401b038111156138fd575f80fd5b6020830191508360208260051b8501011115613917575f80fd5b9250929050565b5f806020838503121561392f575f80fd5b82356001600160401b03811115613944575f80fd5b613950858286016138d7565b90969095509350505050565b5f608082019050825182526001600160401b0360208401511660208301526040830151611c0f604084018280518252602090810151910152565b5f606082840312156139a6575f80fd5b50919050565b5f8083601f8401126139bc575f80fd5b5081356001600160401b038111156139d2575f80fd5b602083019150836020828501011115613917575f80fd5b6001600160a01b0381168114611ada575f80fd5b8035613a08816139e9565b919050565b5f805f805f805f60e0888a031215613a23575f80fd5b613a2d8989613996565b96506060880135955060808801356001600160401b0380821115613a4f575f80fd5b613a5b8b838c016139ac565b909750955060a08a01359150613a70826139e9565b90935060c08901359080821115613a85575f80fd5b50613a928a828b016139ac565b989b979a50959850939692959293505050565b80358015158114613a08575f80fd5b5f60208284031215613ac4575f80fd5b613acd82613aa5565b9392505050565b5f60208284031215613ae4575f80fd5b5035919050565b5f8060408385031215613afc575f80fd5b50508035926020909101359150565b803563ffffffff81168114613a08575f80fd5b5f60208284031215613b2e575f80fd5b613acd82613b0b565b5f8060408385031215613b48575f80fd5b613b5183613b0b565b946020939093013593505050565b5f805f60608486031215613b71575f80fd5b8335613b7c816139e9565b92506020840135613b8c816139e9565b929592945050506040919091013590565b5f805f60608486031215613baf575f80fd5b833592506020840135613b8c816139e9565b5f8060408385031215613bd2575f80fd5b8235613b51816139e9565b803561ffff81168114613a08575f80fd5b5f60208284031215613bfe575f80fd5b613acd82613bdd565b5f8060408385031215613c18575f80fd5b613c2183613b0b565b9150613c2f60208401613bdd565b90509250929050565b5f5b83811015613c52578181015183820152602001613c3a565b50505f910152565b5f8151808452613c71816020860160208601613c38565b601f01601f19169290920160200192915050565b602081525f613acd6020830184613c5a565b5f805f8060a08587031215613caa575f80fd5b613cb48686613996565b935060608501356001600160401b03811115613cce575f80fd5b613cda878288016139ac565b9094509250506080850135613cee816139e9565b939692955090935050565b803560ff81168114613a08575f80fd5b5f60208284031215613d19575f80fd5b613acd82613cf9565b5f60208284031215613d32575f80fd5b8135613acd816139e9565b5f805f8060608587031215613d50575f80fd5b613d5985613b0b565b9350613d6760208601613bdd565b925060408501356001600160401b03811115613d81575f80fd5b613d8d878288016139ac565b95989497509550505050565b5f8060408385031215613daa575f80fd5b82356001600160401b03811115613dbf575f80fd5b83016101408186031215613b51575f80fd5b5f805f60608486031215613de3575f80fd5b8335613dee816139e9565b95602085013595506040909401359392505050565b5f8060408385031215613e14575f80fd5b613e1d83613b0b565b9150613c2f60208401613aa5565b602080825282518282018190525f919060409081850190868401855b82811015613e7457613e6484835180518252602090810151910152565b9284019290850190600101613e47565b5091979650505050505050565b5f60608284031215613e91575f80fd5b613acd8383613996565b634e487b7160e01b5f52601160045260245ffd5b5f65ffffffffffff808316818103613ec957613ec9613e9b565b6001019392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680613efb57607f821691505b6020821081036139a657634e487b7160e01b5f52602260045260245ffd5b604051606081016001600160401b0381118282101715613f3b57613f3b613ed3565b60405290565b60405161014081016001600160401b0381118282101715613f3b57613f3b613ed3565b604051601f8201601f191681016001600160401b0381118282101715613f8c57613f8c613ed3565b604052919050565b5f6001600160401b03821115613fac57613fac613ed3565b5060051b60200190565b5f82601f830112613fc5575f80fd5b81356001600160401b03811115613fde57613fde613ed3565b613ff1601f8201601f1916602001613f64565b818152846020838601011115614005575f80fd5b816020850160208301375f918101602001919091529392505050565b5f61403361402e84613f94565b613f64565b80848252602080830192508560051b850136811115614050575f80fd5b855b818110156140db5780356001600160401b0380821115614070575f80fd5b818901915060608236031215614084575f80fd5b61408c613f19565b61409583613b0b565b81526140a2868401613bdd565b86820152604080840135838111156140b8575f80fd5b6140c436828701613fb6565b918301919091525087525050938201938201614052565b50919695505050505050565b5f80858511156140f5575f80fd5b83861115614101575f80fd5b5050820193919092039150565b5f845161411f818460208901613c38565b8201838582375f930192835250909392505050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b5f808335601e19843603018112614177575f80fd5b8301803591506001600160401b03821115614190575f80fd5b6020019150600581901b3603821315613917575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f823561013e198336030181126141d0575f80fd5b9190910192915050565b5f82601f8301126141e9575f80fd5b813560206141f961402e83613f94565b8083825260208201915060208460051b87010193508684111561421a575f80fd5b602086015b84811015614236578035835291830191830161421f565b509695505050505050565b5f6101408236031215614252575f80fd5b61425a613f41565b614263836139fd565b81526020830135602082015260408301356040820152614285606084016139fd565b606082015261429660808401613cf9565b608082015260a083013560a082015260c083013560c082015260e083013560e0820152610100808401356001600160401b03808211156142d4575f80fd5b6142e0368388016141da565b838501526101209250828601359150808211156142fb575f80fd5b5061430836828701613fb6565b918301919091525092915050565b5f808335601e1984360301811261432b575f80fd5b8301803591506001600160401b03821115614344575f80fd5b602001915036819003821315613917575f80fd5b5f6001820161436957614369613e9b565b5060010190565b5f60a08201878352602060018060a01b038089168286015260a0604086015282885180855260c087019150838a0194505f5b818110156143be578551835294840194918401916001016143a2565b5050858103606087015287518082529083019350828801905f5b818110156143f65782518416865294840194918401916001016143d8565b5050505084151560808501525090509695505050505050565b8082028115828204841417610d1a57610d1a613e9b565b80820180821115610d1a57610d1a613e9b565b6040815263ffffffff8351166040820152602083015160608201525f604084015160a0608084015261446e60e0840182613c5a565b90506060850151603f198483030160a085015261448b8282613c5a565b60809690960151151560c08501525050506001600160a01b039190911660209091015290565b5f604082840312156144c1575f80fd5b604051604081018181106001600160401b03821117156144e3576144e3613ed3565b604052825181526020928301519281019290925250919050565b5f6080828403121561450d575f80fd5b614515613f19565b8251815260208301516001600160401b0381168114614532575f80fd5b602082015261454484604085016144b1565b60408201529392505050565b5f8060408385031215614561575f80fd5b82359150613c2f60208401613aa5565b601f821115610fbe57805f5260205f20601f840160051c810160208510156145965750805b601f840160051c820191505b81811015611863575f81556001016145a2565b81516001600160401b038111156145ce576145ce613ed3565b6145e2816145dc8454613ee7565b84614571565b602080601f831160018114614615575f84156145fe5750858301515b5f19600386901b1c1916600185901b17855561243f565b5f85815260208120601f198616915b8281101561464357888601518255948401946001909101908401614624565b508582101561466057878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b838110156146eb57888303603f190185528151805163ffffffff1684528781015161ffff168885015286015160608785018190526146d781860183613c5a565b968901969450505090860190600101614697565b509098975050505050505050565b81810381811115610d1a57610d1a613e9b565b5f8261472657634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561473b575f80fd5b8151613acd816139e9565b6001600160601b03828116828216039080821115611c0f57611c0f613e9b565b5f60408284031215614776575f80fd5b613acd83836144b1565b5f8751614791818460208c01613c38565b60f89790971b6001600160f81b0319169190960190815260f094851b6001600160f01b0319908116600183015293851b841660038201529190931b909116600582015260e09190911b6001600160e01b0319166007820152600b0192915050565b5f8751614803818460208c01613c38565b87151560f81b90830190815260c087901b6001600160c01b031916600182015260f086901b6001600160f01b0319166009820152606085901b6001600160601b031916600b820152835161485e81601f840160208801613c38565b01601f0198975050505050505050565b61ffff818116838216019080821115611c0f57611c0f613e9b565b5f865161489a818460208b01613c38565b6001600160f81b031960f888811b82169285019283526001600160f01b031960f089901b16600184015286901b16600382015283516148e0816004840160208801613c38565b0160040197965050505050505056fea26469706673582212209a014b20aacdac2890236105c6d89246e72b61e08090dabac92398cd12cb2f3c64736f6c63430008180033