0 txs
10 calls
constructor
constructor()
functions
buyType
viewfunction buyType() view returns (bool)
deploymentFee
viewfunction deploymentFee() view returns (uint256)
description
viewfunction description() view returns (string)
earnedCap
viewfunction earnedCap() view returns (uint256)
endTime
viewfunction endTime() view returns (uint256)
fee
viewfunction fee() view returns (uint256)
fundReceiver
viewfunction fundReceiver() view returns (address)
getSaleInfo
viewfunction getSaleInfo() view returns (tuple)
getTokensPerEth
viewfunction getTokensPerEth(uint256 amount) view returns (uint256)
getUnsoldTokensBalance
viewfunction getUnsoldTokensBalance() view returns (uint256)
getUserClaimable
viewfunction getUserClaimable(address user) view returns (uint256)
getUserInfo
viewfunction getUserInfo(address user) view returns (tuple)
getUserInvestments
viewfunction getUserInvestments(address user) view returns (uint256)
getVestedClaim
viewfunction getVestedClaim(address user) view returns (uint256)
hardCap
viewfunction hardCap() view returns (uint256)
intervalDays
viewfunction intervalDays() view returns (uint256)
isApprovalRequired
viewfunction isApprovalRequired() view returns (bool)
isAutoAdd
viewfunction isAutoAdd() view returns (bool)
isClaimable
viewfunction isClaimable() view returns (bool)
isEligibleToVestedClaim
viewfunction isEligibleToVestedClaim(address _user) view returns (bool)
isPresaleOpen
viewfunction isPresaleOpen() view returns (bool)
isRefundable
viewfunction isRefundable() view returns (bool)
isSuccess
viewfunction isSuccess() view returns (bool)
isToken
viewfunction isToken() view returns (bool)
isVested
viewfunction isVested() view returns (bool)
isWhitelisted
viewfunction isWhitelisted() view returns (bool)
isWithoutToken
viewfunction isWithoutToken() view returns (bool)
isWithoutTokenBalance
viewfunction isWithoutTokenBalance() view returns (uint256)
keeper
viewfunction keeper() view returns (address)
launchpadType
viewfunction launchpadType() view returns (bool)
liquidityPercent
viewfunction liquidityPercent() view returns (uint256)
liquidityTokenAmount
viewfunction liquidityTokenAmount() view returns (uint256)
logo
viewfunction logo() view returns (string)
maxEthLimit
viewfunction maxEthLimit() view returns (uint256)
minEthLimit
viewfunction minEthLimit() view returns (uint256)
owner
viewfunction owner() view returns (address)
participants
viewfunction participants() view returns (uint256)
paused
viewfunction paused() view returns (bool)
PROXY
viewfunction PROXY() view returns (address)
rateDecimals
viewfunction rateDecimals() view returns (uint256)
social
viewfunction social(uint256) view returns (string)
softCap
viewfunction softCap() view returns (uint256)
soldTokens
viewfunction soldTokens() view returns (uint256)
startTime
viewfunction startTime() view returns (uint256)
tokenAddress
viewfunction tokenAddress() view returns (address)
tokenDecimals
viewfunction tokenDecimals() view returns (uint256)
tokenName
viewfunction tokenName() view returns (string)
tokenRatePerEth
viewfunction tokenRatePerEth() view returns (uint256)
tokenRatePerEthPancake
viewfunction tokenRatePerEthPancake() view returns (uint256)
tokenSymbol
viewfunction tokenSymbol() view returns (string)
totalSold
viewfunction totalSold() view returns (uint256)
uniswapV2Pair
viewfunction uniswapV2Pair() view returns (address)
uniswapV2Router
viewfunction uniswapV2Router() view returns (address)
unlockOn
viewfunction unlockOn() view returns (uint256)
userFee
viewfunction userFee() view returns (uint256)
userInfo
viewfunction userInfo(address) view returns (uint256 actualBalance, uint256 balanceOf, uint256 lastClaimed, uint256 initialClaim)
usersInvestments
viewfunction usersInvestments(address) view returns (uint256)
useWithToken
viewfunction useWithToken() view returns (address)
vestingInterval
viewfunction vestingInterval() view returns (uint256)
vestingPercent
viewfunction vestingPercent() view returns (uint256)
whitelistedAddresses
viewfunction whitelistedAddresses(address, address) view returns (uint256)
_initialize
nonpayablefunction _initialize(address owner_, address proxy_, address[] _addresses, uint256[] _values, bool[] _isSet, string[] _details)
addMultipleWhitelistedAddresses
nonpayablefunction addMultipleWhitelistedAddresses(address[] _addresses, uint256[] _allocation)
addWhitelistedAddress
nonpayablefunction addWhitelistedAddress(address _address, uint256 _allocation)
approvePresale
nonpayablefunction approvePresale()
claimTokens
nonpayablefunction claimTokens()
closePresale
nonpayablefunction closePresale()
contribute
payablefunction contribute(uint256 buyAmount) payable
finalizeSale
nonpayablefunction finalizeSale()
getLPTokens
nonpayablefunction getLPTokens()
getUnsoldTokens
nonpayablefunction getUnsoldTokens()
pause
nonpayablefunction pause()
removeWhitelistedAddress
nonpayablefunction removeWhitelistedAddress(address _address)
renounceOwnership
nonpayablefunction renounceOwnership()
setPancakeInfo
nonpayablefunction setPancakeInfo(bool _isPancake, uint256 _pancakeRate, uint256 _liquidityPercentage, uint256 _unlockDuration)
setVestingInfo
nonpayablefunction setVestingInfo(bool _isVest, uint256 _vestingInterval, uint256 _vestPercentage)
setWhitelist
nonpayablefunction setWhitelist(bool _value)
startPresale
nonpayablefunction startPresale(uint256 numberOfDays)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unpause
nonpayablefunction unpause()
updateTokenInfo
nonpayablefunction updateTokenInfo(string[] _info)
withdrawBNB
nonpayablefunction withdrawBNB()
events
LiquidityAdded
event LiquidityAdded(uint256 tokenAmount, uint256 ethAmount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
PresaleFinalized
event PresaleFinalized(bool success, uint256 totalRaised)
PresaleStarted
event PresaleStarted(uint256 startTime, uint256 endTime)
TokensClaimed
event TokensClaimed(address indexed claimer, uint256 amount)
TokensPurchased
event TokensPurchased(address indexed buyer, uint256 amount, uint256 tokensReceived)
Unpaused
event Unpaused(address account)
WhitelistUpdated
event WhitelistUpdated(address indexed user, uint256 allocation)
errors
EnforcedPause
error EnforcedPause()
ExpectedPause
error ExpectedPause()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x60806040526002805461ff0019166101001790556012600455640df847580060075560646008556000600981905567016345785d8a0000600a55678ac7230489e80000600b5560108190556202a3006013556014805463ffffffff1916630100000017905560158190556016819055601781905560188190556019819055601a81905560288190556029553480156200009757600080fd5b503380620000bf57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620000ca81620000d5565b506001805562000125565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61514a80620001356000396000f3fe60806040526004361061048d5760003560e01c80637b61c32011610255578063b068375511610144578063eb4f847b116100c1578063f79de1f111610085578063f79de1f114610dd3578063f958a65714610df3578063faa06d6f14610e13578063fb4aa0a114610e29578063fb7f21eb14610e49578063fb86a40414610e5e57600080fd5b8063eb4f847b14610d45578063eefa597b14610d66578063f288dc1014610d87578063f2cff57f14610d9d578063f2fde38b14610db357600080fd5b8063d403982a11610108578063d403982a14610cc2578063db83694c14610cd8578063ddca3f4314610cfa578063e443df9c14610d10578063e868764c14610d2f57600080fd5b8063b068375514610c2d578063b35205ae14610c43578063b8e50cab14610c63578063c1cbbca714610c79578063c52c5c8814610c8c57600080fd5b80639106d7ba116101d2578063a132aad111610196578063a132aad114610b91578063a24c4ef014610bb1578063a8c92d4814610bc7578063ab3dbbdc14610be7578063aced166114610c0757600080fd5b80639106d7ba14610af457806393e74ba414610b0a5780639bc71e0514610b375780639d345ac414610b4c5780639d76ea5814610b7157600080fd5b806386f9f8eb1161021957806386f9f8eb14610a2f5780638c614c7a14610a675780638da5cb5b14610aa05780638db3b7d914610abe578063906a26e014610ade57600080fd5b80637b61c320146109b55780637f1abbec146109ca5780638123bdc8146109ea5780638394980714610a005780638456cb5914610a1a57600080fd5b806348c54b9d1161037c578063611b4095116102f95780636d00e501116102bd5780636d00e50114610930578063715018a6146109455780637284e4161461095a57806374478bb31461096f57806378e979251461098957806379c78afe1461099f57600080fd5b8063611b4095146108435780636386c1c71461086257806363cea450146108e35780636c02a931146108f85780636c4470fb1461091a57600080fd5b806356f0889c1161034057806356f0889c146107bf578063573a57fc146107df57806358a687ec146108005780635c975abb146108155780635ed9ebfc1461082d57600080fd5b806348c54b9d1461072957806349bd5a5e1461073e5780634b877a931461075e578063530cd5ab1461077f578063536baf0f1461079f57600080fd5b80631d111d131161040a5780633aeb6c71116103ce5780633aeb6c71146106bd5780633b97e856146106d35780633be67559146106e95780633f4ba83a146106fe57806342a1bbd21461071357600080fd5b80631d111d131461063b5780631d807c51146106505780632044285e146106705780632c1fecfe146106865780633197cbb6146106a757600080fd5b806313c4b16c1161045157806313c4b16c1461054a5780631694505e1461056a578063187d95a8146105a25780631959a002146105c35780631a3480b51461062557600080fd5b80630b3214aa146104995780630b6c754b146104bb5780631224abfb146104f0578063122e325314610505578063126714ac1461052657600080fd5b3661049457005b600080fd5b3480156104a557600080fd5b506104b96104b43660046143e0565b610e74565b005b3480156104c757600080fd5b506014546104db9062010000900460ff1681565b60405190151581526020015b60405180910390f35b3480156104fc57600080fd5b506104b9610ea1565b34801561051157600080fd5b506021546104db90600160a01b900460ff1681565b34801561053257600080fd5b5061053c60085481565b6040519081526020016104e7565b34801561055657600080fd5b506104b9610565366004614413565b610fc6565b34801561057657600080fd5b5060205461058a906001600160a01b031681565b6040516001600160a01b0390911681526020016104e7565b3480156105ae57600080fd5b506021546104db90600160c01b900460ff1681565b3480156105cf57600080fd5b506106056105de36600461446c565b60276020526000908152604090208054600182015460028301546003909301549192909184565b6040805194855260208501939093529183015260608201526080016104e7565b34801561063157600080fd5b5061053c60095481565b34801561064757600080fd5b506104b9610ff9565b34801561065c57600080fd5b506104b961066b36600461471f565b61112e565b34801561067c57600080fd5b5061053c60175481565b34801561069257600080fd5b506014546104db906301000000900460ff1681565b3480156106b357600080fd5b5061053c60135481565b3480156106c957600080fd5b5061053c601a5481565b3480156106df57600080fd5b5061053c60045481565b3480156106f557600080fd5b5061053c611e5a565b34801561070a57600080fd5b506104b9611efc565b34801561071f57600080fd5b5061053c601d5481565b34801561073557600080fd5b506104b9611f0c565b34801561074a57600080fd5b5060215461058a906001600160a01b031681565b34801561076a57600080fd5b506021546104db90600160a81b900460ff1681565b34801561078b57600080fd5b506104b961079a36600461446c565b612119565b3480156107ab57600080fd5b506104b96107ba366004614838565b612181565b3480156107cb57600080fd5b5061053c6107da3660046148a4565b6122f5565b3480156107eb57600080fd5b506021546104db90600160b01b900460ff1681565b34801561080c57600080fd5b506104b961233b565b34801561082157600080fd5b5060025460ff166104db565b34801561083957600080fd5b5061053c60105481565b34801561084f57600080fd5b506014546104db90610100900460ff1681565b34801561086e57600080fd5b5061088261087d36600461446c565b61264e565b6040516104e79190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015292915050565b3480156108ef57600080fd5b506104b96127f9565b34801561090457600080fd5b5061090d612832565b6040516104e7919061490d565b34801561092657600080fd5b5061053c60245481565b34801561093c57600080fd5b506104b96128c0565b34801561095157600080fd5b506104b961298f565b34801561096657600080fd5b5061090d6129a1565b34801561097b57600080fd5b506014546104db9060ff1681565b34801561099557600080fd5b5061053c60125481565b3480156109ab57600080fd5b5061053c60115481565b3480156109c157600080fd5b5061090d6129ae565b3480156109d657600080fd5b5061053c6109e536600461446c565b6129bb565b3480156109f657600080fd5b5061053c60295481565b348015610a0c57600080fd5b50601e546104db9060ff1681565b348015610a2657600080fd5b506104b9612a70565b348015610a3b57600080fd5b5061053c610a4a366004614920565b602660209081526000928352604080842090915290825290205481565b348015610a7357600080fd5b5061053c610a8236600461446c565b6001600160a01b031660009081526027602052604090206001015490565b348015610aac57600080fd5b506000546001600160a01b031661058a565b348015610aca57600080fd5b506104b9610ad9366004614959565b612a80565b348015610aea57600080fd5b5061053c60165481565b348015610b0057600080fd5b5061053c60185481565b348015610b1657600080fd5b5061053c610b2536600461446c565b60256020526000908152604090205481565b348015610b4357600080fd5b506104b9612aec565b348015610b5857600080fd5b50601e5461058a9061010090046001600160a01b031681565b348015610b7d57600080fd5b5060035461058a906001600160a01b031681565b348015610b9d57600080fd5b506104b9610bac3660046148a4565b612bbb565b348015610bbd57600080fd5b5061053c60285481565b348015610bd357600080fd5b50600c5461058a906001600160a01b031681565b348015610bf357600080fd5b506104b9610c02366004614985565b612ca7565b348015610c1357600080fd5b5060025461058a906201000090046001600160a01b031681565b348015610c3957600080fd5b5061053c60235481565b348015610c4f57600080fd5b5061090d610c5e3660046148a4565b612dd4565b348015610c6f57600080fd5b5061053c60195481565b6104b9610c873660046148a4565b612dff565b348015610c9857600080fd5b5061053c610ca736600461446c565b6001600160a01b031660009081526025602052604090205490565b348015610cce57600080fd5b5061053c60225481565b348015610ce457600080fd5b50610ced61351c565b6040516104e79190614a14565b348015610d0657600080fd5b5061053c601c5481565b348015610d1c57600080fd5b506002546104db90610100900460ff1681565b348015610d3b57600080fd5b5061053c60075481565b348015610d5157600080fd5b506002546104db90600160b01b900460ff1681565b348015610d7257600080fd5b506021546104db90600160b81b900460ff1681565b348015610d9357600080fd5b5061053c600a5481565b348015610da957600080fd5b5061053c601b5481565b348015610dbf57600080fd5b506104b9610dce36600461446c565b613b34565b348015610ddf57600080fd5b506104db610dee36600461446c565b613b6f565b348015610dff57600080fd5b506104b9610e0e366004614cb3565b613ba1565b348015610e1f57600080fd5b5061053c600b5481565b348015610e3557600080fd5b50601f5461058a906001600160a01b031681565b348015610e5557600080fd5b5061090d613bc3565b348015610e6a57600080fd5b5061053c60155481565b610e7c613bd0565b60218054931515600160a81b0260ff60a81b1990941693909317909255601955601a55565b610ea9613bd0565b601354421180610ebd575060155460175410155b610ee25760405162461bcd60e51b8152600401610ed990614cce565b60405180910390fd5b6022544211610f2c5760405162461bcd60e51b81526020600482015260166024820152751314081d1bdad95b9cc81cdd1a5b1b081b1bd8dad95960521b6044820152606401610ed9565b6021546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610f75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f999190614cfc565b9050610fc3610fb06000546001600160a01b031690565b6021546001600160a01b03169083613bfd565b50565b610fce613bd0565b60218054941515600160a01b0260ff60a01b1990951694909417909355600891909155602355602255565b611001613bd0565b601e5460ff161561108b57600047116110515760405162461bcd60e51b81526020600482015260126024820152714e6f2066756e647320617661696c61626c6560701b6044820152606401610ed9565b600080546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610fc3573d6000803e3d6000fd5b601e546040516370a0823160e01b815230600482015260009161010090046001600160a01b0316906370a0823190602401602060405180830381865afa1580156110d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fd9190614cfc565b9050610fc36111146000546001600160a01b031690565b601e5461010090046001600160a01b03169083613bfd565b565b602154600160c81b900460ff16156111885760405162461bcd60e51b815260206004820152601f60248201527f42534350726573616c653a20616c726561647920696e697469616c697a6564006044820152606401610ed9565b6021805460ff60c81b1916600160c81b1790556002805461ff0019166101001790556111b386613c61565b6005845110156112055760405162461bcd60e51b815260206004820152601e60248201527f496e76616c696420616464726573736573206172726179206c656e67746800006044820152606401610ed9565b600d835110156112575760405162461bcd60e51b815260206004820152601b60248201527f496e76616c69642076616c756573206172726179206c656e67746800000000006044820152606401610ed9565b6008825110156112a95760405162461bcd60e51b815260206004820152601a60248201527f496e76616c6964206973536574206172726179206c656e6774680000000000006044820152606401610ed9565b600c815110156112fb5760405162461bcd60e51b815260206004820152601c60248201527f496e76616c69642064657461696c73206172726179206c656e677468000000006044820152606401610ed9565b600c80546001600160a01b0319166001600160a01b03871617905583518490600490811061132b5761132b614d15565b60200260200101516002806101000a8154816001600160a01b0302191690836001600160a01b031602179055508160028151811061136b5761136b614d15565b60209081029190910101516021805460ff60b01b1916600160b01b9215158302179081905560ff9190041661154457836000815181106113ad576113ad614d15565b602090810291909101810151600380546001600160a01b0319166001600160a01b0390921691821790556040805163313ce56760e01b81529051919263313ce567926004808401938290030181865afa15801561140e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114329190614d2b565b60ff166004908155600354604080516306fdde0360e01b815290516001600160a01b03909216926306fdde039282820192600092908290030181865afa158015611480573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114a89190810190614d4e565b6005906114b59082614e46565b50600360009054906101000a90046001600160a01b03166001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015611509573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115319190810190614d4e565b60069061153e9082614e46565b50611599565b8060058151811061155757611557614d15565b60200260200101516005908161156d9190614e46565b508060068151811061158157611581614d15565b6020026020010151600690816115979190614e46565b505b826000815181106115ac576115ac614d15565b6020026020010151600a81905550826001815181106115cd576115cd614d15565b6020026020010151600b81905550826002815181106115ee576115ee614d15565b60200260200101516007819055508260048151811061160f5761160f614d15565b602002602001015160158190555082600c8151811061163057611630614d15565b6020026020010151601d819055508260038151811061165157611651614d15565b602002602001015160168190555082600a8151811061167257611672614d15565b6020026020010151601a8190555082600b8151811061169357611693614d15565b6020026020010151601981905550816001815181106116b4576116b4614d15565b6020026020010151602160156101000a81548160ff021916908315150217905550816000815181106116e8576116e8614d15565b6020026020010151602160146101000a81548160ff0219169083151502179055508160038151811061171c5761171c614d15565b6020026020010151601460016101000a81548160ff0219169083151502179055508160048151811061175057611750614d15565b6020026020010151601e60006101000a81548160ff0219169083151502179055508160058151811061178457611784614d15565b6020026020010151602160176101000a81548160ff021916908315150217905550816006815181106117b8576117b8614d15565b6020026020010151602160186101000a81548160ff021916908315150217905550816007815181106117ec576117ec614d15565b6020026020010151601460036101000a81548160ff021916908315150217905550601654600561181c9190614f1c565b601554101561187b5760405162461bcd60e51b815260206004820152602560248201527f4861726420636170206d757374206265206174206c6561737420357820736f66604482015264074206361760dc1b6064820152608401610ed9565b602154600160b01b900460ff16156118c45760045461189b906012614f33565b6118a690600a61502a565b6007546015546118b69190614f1c565b6118c09190615036565b6028555b6000846001815181106118d9576118d9614d15565b60200260200101519050602160149054906101000a900460ff1680156119095750602154600160b01b900460ff16155b15611c13576000816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561194e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119729190615058565b6001600160a01b031663e6a43905600360009054906101000a90046001600160a01b0316846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f89190615058565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015611a43573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a679190615058565b90506001600160a01b038116611bf557816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ab5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad99190615058565b6001600160a01b031663c9c65396600360009054906101000a90046001600160a01b0316846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5f9190615058565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015611bac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd09190615058565b602180546001600160a01b0319166001600160a01b0392909216919091179055611c11565b602180546001600160a01b0319166001600160a01b0383161790555b505b602080546001600160a01b0319166001600160a01b038316179055835184906005908110611c4357611c43614d15565b602002602001015160088190555083600681518110611c6457611c64614d15565b602002602001015162015180611c7a9190614f1c565b602255825183906004908110611c9257611c92614d15565b6020026020010151611ce05784600381518110611cb157611cb1614d15565b6020026020010151601e60016101000a8154816001600160a01b0302191690836001600160a01b031602179055505b83600881518110611cf357611cf3614d15565b602002602001015160128190555083600981518110611d1457611d14614d15565b60200260200101516013819055504260125411611d3f576002805460ff60b01b1916600160b01b1790555b83600781518110611d5257611d52614d15565b602002602001015160238190555084600281518110611d7357611d73614d15565b6020026020010151601f60006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600081518110611db457611db4614d15565b6020026020010151600e9081611dca9190614e46565b5060015b600b8111611e2657600d838281518110611dea57611dea614d15565b60209081029190910181015182546001810184556000938452919092200190611e139082614e46565b5080611e1e81615075565b915050611dce565b5081600481518110611e3a57611e3a614d15565b6020026020010151600f9081611e509190614e46565b5050505050505050565b602154600090600160b01b900460ff16611eec576010546003546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611eb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611edd9190614cfc565b611ee79190614f33565b905090565b601054602854611ee79190614f33565b611f04613bd0565b61112c613cb1565b611f14613d03565b601354421180611f28575060155460175410155b611f445760405162461bcd60e51b8152600401610ed990614cce565b60145460ff16611f965760405162461bcd60e51b815260206004820152601860248201527f436c61696d696e67206e6f742079657420656e61626c656400000000000000006044820152606401610ed9565b602154600160c01b900460ff1615611ffc5733600090815260276020526040902060010154611ffc5760405162461bcd60e51b81526020600482015260126024820152714e6f20746f6b656e7320746f20636c61696d60701b6044820152606401610ed9565b60145462010000900460ff16156120a057602154600160c01b900460ff166120925733600090815260256020526040812054612037906122f5565b3360009081526027602052604081206001018054929350839290919061205e90849061508e565b9091555050336000908152602760205260408120600181015490556010805483929061208b90849061508e565b9091555050505b61209b33613d2d565b612110565b3360009081526025602052604081208054919055601e5460ff16156120f257604051339082156108fc029083906000818181858888f193505050501580156120ec573d6000803e3d6000fd5b5061210e565b601e5461210e9061010090046001600160a01b03163383613bfd565b505b61112c60018055565b612121613bd0565b6003546001600160a01b039081166000908152602660209081526040808320938516808452938252808320839055519182527f226d670a329c4a93cf8c1a5baeceda320e89031fe0a65343c51678bd8b5a652e910160405180910390a250565b612189613bd0565b8281146121d15760405162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b6044820152606401610ed9565b6014805461ff00191661010017905560005b838110156122ee578282828181106121fd576121fd614d15565b6003546001600160a01b031660009081526026602090815260408220920293909301359290915087878581811061223657612236614d15565b905060200201602081019061224b919061446c565b6001600160a01b0316815260208101919091526040016000205584848281811061227757612277614d15565b905060200201602081019061228c919061446c565b6001600160a01b03167f226d670a329c4a93cf8c1a5baeceda320e89031fe0a65343c51678bd8b5a652e8484848181106122c8576122c8614d15565b905060200201356040516122de91815260200190565b60405180910390a26001016121e3565b5050505050565b600060095460045460126123099190614f33565b612313919061508e565b61231e90600a61502a565b60075461232b9084614f1c565b6123359190615036565b92915050565b612343613bd0565b601354421180612357575060155460175410155b6123735760405162461bcd60e51b8152600401610ed990614cce565b600c60009054906101000a90046001600160a01b03166001600160a01b03166346c549cc6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123ea9190614cfc565b601b55600c5460408051630355468560e41b815290516001600160a01b03909216916335546850916004808201926020929091908290030181865afa158015612437573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061245b9190614cfc565b601c81905560175460009168056bc75e2d631000009161247b9190614f1c565b6124859190615036565b602154909150600160c01b900460ff166124b0576124a7601754601554613f2c565b60078190556008555b602154600160b01b900460ff166125ef576016546017541015806124de57506014546301000000900460ff16155b156124f5576014805462ff00001916620100001790555b60145462010000900460ff1680156125165750602154600160a01b900460ff165b156125ef57612523613f63565b601e5460ff1680156125355750804710155b1561257a57601f546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612574573d6000803e3d6000fd5b506125a6565b601e5460ff166125a657601f54601e546125a6916001600160a01b036101009092048216911683613bfd565b601f54601c546018546125ef926001600160a01b03169168056bc75e2d63100000916125d29190614f1c565b6125dc9190615036565b6003546001600160a01b03169190613bfd565b6014805460ff1916600117908190556017546040517fb9894dff9c897682aa61225d64c946b146c56ab1e40a411cde5db9f30fe0174792612643926201000090910460ff1615158252602082015260400190565b60405180910390a150565b61269660405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b604051806101000160405280836001600160a01b03163181526020016126d1846001600160a01b031660009081526025602052604090205490565b81526020016126f8846001600160a01b031660009081526027602052604090206001015490565b81526003546001600160a01b0390811660009081526026602090815260408083209388168352928152908290205490830152602154910190600160b01b900460ff166127b1576003546040516370a0823160e01b81526001600160a01b038681166004830152909116906370a0823190602401602060405180830381865afa158015612788573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ac9190614cfc565b6127b4565b60005b81526020016127c1611e5a565b81526001600160a01b0390931660008181526027602081815260408084206003810154838a0152949093525290549301929092525090565b612801613bd0565b60105460186000828254612815919061508e565b90915550504260135560006010556002805460ff60b01b19169055565b6005805461283f90614dbc565b80601f016020809104026020016040519081016040528092919081815260200182805461286b90614dbc565b80156128b85780601f1061288d576101008083540402835291602001916128b8565b820191906000526020600020905b81548152906001019060200180831161289b57829003601f168201915b505050505081565b6128c8613bd0565b6013544211806128dc575060155460175410155b6128f85760405162461bcd60e51b8152600401610ed990614cce565b6003546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015612941573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129659190614cfc565b9050610fc361297c6000546001600160a01b031690565b6003546001600160a01b03169083613bfd565b612997613bd0565b61112c6000613c61565b600e805461283f90614dbc565b6006805461283f90614dbc565b601a546001600160a01b03821660009081526027602052604081205490918291612710916129e891614f1c565b6129f29190615036565b6001600160a01b038416600090815260276020526040812060010154919250908211612a1e5781612a3b565b6001600160a01b0384166000908152602760205260409020600101545b6001600160a01b03851660009081526027602052604090206001015490915015612a655780612a68565b60005b949350505050565b612a78613bd0565b61112c613ffc565b612a88613bd0565b6003546001600160a01b0390811660009081526026602090815260408083209386168084529382529182902084905590518381527f226d670a329c4a93cf8c1a5baeceda320e89031fe0a65343c51678bd8b5a652e91015b60405180910390a25050565b6002546201000090046001600160a01b03163314612b575760405162461bcd60e51b815260206004820152602260248201527f4f6e6c79206b65657065722063616e2063616c6c20746869732066756e63746960448201526137b760f11b6064820152608401610ed9565b600254610100900460ff16612bae5760405162461bcd60e51b815260206004820152601860248201527f50726573616c6520616c726561647920617070726f76656400000000000000006044820152606401610ed9565b6002805461ff0019169055565b612bc3613bd0565b600254610100900460ff1615612c2c5760405162461bcd60e51b815260206004820152602860248201527f50726573616c65206d75737420626520617070726f766564206265666f7265206044820152677374617274696e6760c01b6064820152608401610ed9565b42601255612c3d8162015180614f1c565b6011819055612c4c904261508e565b60138190556002805460ff60b01b1916600160b01b1790556014805460ff191690556012546040517f884f0ecd854b5bcb742f0156e594094458bddc3f2cc8c9e4048a7cedfa6f01cc92612643928252602082015260400190565b612caf613bd0565b600581511015612d015760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420696e666f206172726179206c656e677468000000000000006044820152606401610ed9565b80600081518110612d1457612d14614d15565b6020026020010151600e9081612d2a9190614e46565b5060015b600481108015612d3f5750600d5481105b15612da657818181518110612d5657612d56614d15565b6020026020010151600d600183612d6d9190614f33565b81548110612d7d57612d7d614d15565b906000526020600020019081612d939190614e46565b5080612d9e81615075565b915050612d2e565b5080600481518110612dba57612dba614d15565b6020026020010151600f9081612dd09190614e46565b5050565b600d8181548110612de457600080fd5b90600052602060002001600091509050805461283f90614dbc565b612e07613d03565b6012544210158015612e1b57506013544211155b8015612e2b575060155460175411155b612e6c5760405162461bcd60e51b815260206004820152601260248201527150726573616c65206e6f742061637469766560701b6044820152606401610ed9565b600254610100900460ff1615612ec45760405162461bcd60e51b815260206004820152601860248201527f50726573616c65206e6f7420617070726f7665642079657400000000000000006044820152606401610ed9565b601e5460009060ff16612ed75781612ed9565b345b905060008111612f3c5760405162461bcd60e51b815260206004820152602860248201527f496e766573746d656e7420616d6f756e74206d75737420626520677265617465604482015267072207468616e20360c41b6064820152608401610ed9565b600061271082601d54612f4f9190614f1c565b612f599190615036565b90506000612f678284614f33565b601e5490915060ff1615612fb557601f546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612faf573d6000803e3d6000fd5b50612ff4565b601e54612fd29061010090046001600160a01b0316333087614039565b601f54601e54612ff4916001600160a01b036101009092048216911684613bfd565b600b543360009081526025602052604090205461301290839061508e565b1115801561303c5750600a543360009081526025602052604090205461303990839061508e565b10155b6130985760405162461bcd60e51b815260206004820152602760248201527f496e766573746d656e7420616d6f756e74206f75747369646520616c6c6f7765604482015266642072616e676560c81b6064820152608401610ed9565b3360009081526025602052604081205490036130c457602480549060006130be83615075565b91905055505b602154600160c01b900460ff161561312957601554816017546130e7919061508e565b11156131295760405162461bcd60e51b815260206004820152601160248201527012185c990818d85c08195e18d959591959607a1b6044820152606401610ed9565b601454610100900460ff16156132ef576003546001600160a01b031660009081526026602090815260408083203384529091529020546131ab5760405162461bcd60e51b815260206004820152601760248201527f41646472657373206e6f742077686974656c69737465640000000000000000006044820152606401610ed9565b6003546001600160a01b0316600090815260266020908152604080832033845290915290205481111561322c5760405162461bcd60e51b815260206004820152602360248201527f416d6f756e7420657863656564732077686974656c69737420616c6c6f63617460448201526234b7b760e91b6064820152608401610ed9565b6003546001600160a01b0316600090815260266020908152604080832033845282528083205460259092529091205461326690839061508e565b11156132b45760405162461bcd60e51b815260206004820152601d60248201527f4d6178696d756d207075726368617365206361702065786365656465640000006044820152606401610ed9565b6003546001600160a01b03166000908152602660209081526040808320338452909152812080548392906132e9908490614f33565b90915550505b60006132fa826122f5565b602154909150600160b01b900460ff161561339857806010546028546133209190614f33565b101561333e5760405162461bcd60e51b8152600401610ed9906150a1565b336000908152602760205260408120600101805483929061336090849061508e565b9091555050336000908152602760205260408120600181015490556010805483929061338d90849061508e565b909155506134979050565b602154600160c01b900460ff1615613497576010546003546040516370a0823160e01b81523060048201528392916001600160a01b0316906370a0823190602401602060405180830381865afa1580156133f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061341a9190614cfc565b6134249190614f33565b10156134425760405162461bcd60e51b8152600401610ed9906150a1565b336000908152602760205260408120600101805483929061346490849061508e565b9091555050336000908152602760205260408120600181015490556010805483929061349190849061508e565b90915550505b33600090815260256020526040812080548492906134b690849061508e565b9250508190555081601760008282546134cf919061508e565b9091555050604080518381526020810183905233917f8fafebcaf9d154343dad25669bfa277f4fbacd7ac6b0c4fed522580e040a0f33910160405180910390a250505050610fc360018055565b61365260405180610440016040528060608152602001606081526020016000815260200160006001600160a01b0316815260200160608152602001606081526020016000815260200160008152602001600081526020016000815260200160001515815260200160001515815260200160001515815260200160001515815260200160008152602001600081526020016060815260200160008152602001600081526020016000151581526020016000151581526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160001515815260200160001515815260200160006001600160a01b0316815260200160001515815260200160006001600160a01b03168152602001600081526020016000151581525090565b6040518061044001604052806005805461366b90614dbc565b80601f016020809104026020016040519081016040528092919081815260200182805461369790614dbc565b80156136e45780601f106136b9576101008083540402835291602001916136e4565b820191906000526020600020905b8154815290600101906020018083116136c757829003601f168201915b50505050508152602001600680546136fb90614dbc565b80601f016020809104026020016040519081016040528092919081815260200182805461372790614dbc565b80156137745780601f1061374957610100808354040283529160200191613774565b820191906000526020600020905b81548152906001019060200180831161375757829003601f168201915b505050505081526020016004548152602001600360009054906101000a90046001600160a01b03166001600160a01b03168152602001600d805480602002602001604051908101604052809291908181526020016000905b828210156138785783829060005260206000200180546137eb90614dbc565b80601f016020809104026020016040519081016040528092919081815260200182805461381790614dbc565b80156138645780601f1061383957610100808354040283529160200191613864565b820191906000526020600020905b81548152906001019060200180831161384757829003601f168201915b5050505050815260200190600101906137cc565b505050508152602001600e805461388e90614dbc565b80601f01602080910402602001604051908101604052809291908181526020018280546138ba90614dbc565b80156139075780601f106138dc57610100808354040283529160200191613907565b820191906000526020600020905b8154815290600101906020018083116138ea57829003601f168201915b5050509183525050600754602082015260085460408201526015546060820152601654608082015260145460ff610100918290048116151560a0840152602154600160b01b81048216151560c0850152601e548216151560e0850152600160b81b900416151590820152601754610120820152602454610140820152600f80546101609092019161399790614dbc565b80601f01602080910402602001604051908101604052809291908181526020018280546139c390614dbc565b8015613a105780601f106139e557610100808354040283529160200191613a10565b820191906000526020600020905b8154815290600101906020018083116139f357829003601f168201915b50505091835250506012546020820152601354604082015260215460ff600160a81b8204811615156060840152600160a01b909104161515608082015260195460a0820152601a5460c0820152600a5460e0820152600b5461010082015261012001613a846000546001600160a01b031690565b6001600160a01b03168152602254602082015260145460ff16151560408201526012546060909101904210801590613abe57506013544211155b8015613ace575060155460175411155b8015613ae25750600254610100900460ff16155b1515815230602082015260215460ff600160c01b909104811615156040830152601e54610100908190046001600160a01b0316606084015260235460808401526002540416151560a090910152919050565b613b3c613bd0565b6001600160a01b038116613b6657604051631e4fbdf760e01b815260006004820152602401610ed9565b610fc381613c61565b6019546001600160a01b0382166000908152602760205260408120600201549091613b999161508e565b421192915050565b613ba9613bd0565b601480549115156101000261ff0019909216919091179055565b600f805461283f90614dbc565b6000546001600160a01b0316331461112c5760405163118cdaa760e01b8152336004820152602401610ed9565b6040516001600160a01b03838116602483015260448201839052613c5c91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050614078565b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613cb96140e9565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b600260015403613d2657604051633ee5aeb560e01b815260040160405180910390fd5b6002600155565b602154600160a81b900460ff1615613efa576019546001600160a01b038216600090815260276020526040902060020154613d68919061508e565b4211613db65760405162461bcd60e51b815260206004820152601c60248201527f56657374696e6720696e74657276616c206e6f742072656163686564000000006044820152606401610ed9565b601a546001600160a01b038216600090815260276020526040812054909161271091613de29190614f1c565b613dec9190615036565b6001600160a01b038316600090815260276020526040902060010154909150811115613e3057506001600160a01b0381166000908152602760205260409020600101545b600354613e47906001600160a01b03168383613bfd565b6001600160a01b03821660009081526027602052604081206001018054839290613e72908490614f33565b90915550506001600160a01b0382166000908152602760205260408120426002820155600301549003613ebf576001600160a01b0382166000908152602760205260409020426003909101555b816001600160a01b03167f896e034966eaaf1adc54acc0f257056febbd300c9e47182cf761982cf1f5e43082604051612ae091815260200190565b6001600160a01b03808216600090815260276020526040812060010180549190556003549091613ebf91168383613bfd565b60008082613f3e856305f5e100614f1c565b613f489190615036565b90506000613f5a826305f5e100615036565b95945050505050565b60006064602354601754613f779190614f1c565b613f819190615036565b9050600060085482613f939190614f1c565b9050613f9e8161410c565b60298190559050613faf818361413f565b602254613fbc904261508e565b60225560408051828152602081018490527f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b910160405180910390a15050565b6140046142c8565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613ce63390565b6040516001600160a01b0384811660248301528381166044830152606482018390526140729186918216906323b872dd90608401613c2a565b50505050565b600080602060008451602086016000885af18061409b576040513d6000823e3d81fd5b50506000513d915081156140b35780600114156140c0565b6001600160a01b0384163b155b1561407257604051635274afe760e01b81526001600160a01b0385166004820152602401610ed9565b60025460ff1661112c57604051638dfc202b60e01b815260040160405180910390fd5b600060095460045460126141209190614f33565b61412a919061508e565b61413590600a61502a565b6123359083615036565b60205460035461415c916001600160a01b039182169116846142ec565b601e5460ff16156141fc5760205460035460405163f305d71960e01b81526001600160a01b0391821660048201526024810185905260006044820181905260648201523060848201524260a482015291169063f305d71990839060c40160606040518083038185885af11580156141d7573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906122ee91906150e6565b602054601e5461421e916001600160a01b0361010090920482169116836142ec565b602054600354601e5460405162e8e33760e81b81526001600160a01b03928316600482015261010090910482166024820152604481018590526064810184905260006084820181905260a48201523060c48201524260e482015291169063e8e3370090610104016060604051808303816000875af11580156142a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122ee91906150e6565b60025460ff161561112c5760405163d93c066560e01b815260040160405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b17905261433d848261437c565b614072576040516001600160a01b0384811660248301526000604483015261437291869182169063095ea7b390606401613c2a565b6140728482614078565b6000806000806020600086516020880160008a5af192503d915060005190508280156143c1575081156143b257806001146143c1565b6000866001600160a01b03163b115b9695505050505050565b803580151581146143db57600080fd5b919050565b6000806000606084860312156143f557600080fd5b6143fe846143cb565b95602085013595506040909401359392505050565b6000806000806080858703121561442957600080fd5b614432856143cb565b966020860135965060408601359560600135945092505050565b6001600160a01b0381168114610fc357600080fd5b80356143db8161444c565b60006020828403121561447e57600080fd5b81356144898161444c565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156144cf576144cf614490565b604052919050565b600067ffffffffffffffff8211156144f1576144f1614490565b5060051b60200190565b600082601f83011261450c57600080fd5b8135602061452161451c836144d7565b6144a6565b8083825260208201915060208460051b87010193508684111561454357600080fd5b602086015b8481101561456857803561455b8161444c565b8352918301918301614548565b509695505050505050565b600082601f83011261458457600080fd5b8135602061459461451c836144d7565b8083825260208201915060208460051b8701019350868411156145b657600080fd5b602086015b8481101561456857803583529183019183016145bb565b600082601f8301126145e357600080fd5b813560206145f361451c836144d7565b8083825260208201915060208460051b87010193508684111561461557600080fd5b602086015b848110156145685761462b816143cb565b835291830191830161461a565b600067ffffffffffffffff82111561465257614652614490565b50601f01601f191660200190565b600082601f83011261467157600080fd5b8135602061468161451c836144d7565b82815260059290921b840181019181810190868411156146a057600080fd5b8286015b8481101561456857803567ffffffffffffffff8111156146c45760008081fd5b8701603f810189136146d65760008081fd5b8481013560406146e861451c83614638565b8281528b828486010111156146fd5760008081fd5b82828501898301376000928101880192909252508452509183019183016146a4565b60008060008060008060c0878903121561473857600080fd5b61474187614461565b955061474f60208801614461565b9450604087013567ffffffffffffffff8082111561476c57600080fd5b6147788a838b016144fb565b9550606089013591508082111561478e57600080fd5b61479a8a838b01614573565b945060808901359150808211156147b057600080fd5b6147bc8a838b016145d2565b935060a08901359150808211156147d257600080fd5b506147df89828a01614660565b9150509295509295509295565b60008083601f8401126147fe57600080fd5b50813567ffffffffffffffff81111561481657600080fd5b6020830191508360208260051b850101111561483157600080fd5b9250929050565b6000806000806040858703121561484e57600080fd5b843567ffffffffffffffff8082111561486657600080fd5b614872888389016147ec565b9096509450602087013591508082111561488b57600080fd5b50614898878288016147ec565b95989497509550505050565b6000602082840312156148b657600080fd5b5035919050565b60005b838110156148d85781810151838201526020016148c0565b50506000910152565b600081518084526148f98160208601602086016148bd565b601f01601f19169290920160200192915050565b60208152600061448960208301846148e1565b6000806040838503121561493357600080fd5b823561493e8161444c565b9150602083013561494e8161444c565b809150509250929050565b6000806040838503121561496c57600080fd5b82356149778161444c565b946020939093013593505050565b60006020828403121561499757600080fd5b813567ffffffffffffffff8111156149ae57600080fd5b612a6884828501614660565b60008282518085526020808601955060208260051b8401016020860160005b84811015614a0757601f198684030189526149f58383516148e1565b988401989250908301906001016149d9565b5090979650505050505050565b6020815260008251610440806020850152614a336104608501836148e1565b91506020850151601f1980868503016040870152614a5184836148e1565b93506040870151606087015260608701519150614a7960808701836001600160a01b03169052565b60808701519150808685030160a0870152614a9484836149ba565b935060a08701519150808685030160c0870152614ab184836148e1565b60c088015160e0888101919091528801516101008089019190915288015161012080890191909152880151610140808901919091528801519094509150610160614afe8188018415159052565b8701519150610180614b138782018415159052565b87015191506101a0614b288782018415159052565b87015191506101c0614b3d8782018415159052565b8701516101e08781019190915287015161020080880191909152870151868503820161022080890191909152909250614b7685846148e1565b90880151610240888101919091528801516102608089019190915288015190945091506102809050614bab8187018315159052565b86015190506102a0614bc08682018315159052565b8601516102c0868101919091528601516102e08087019190915286015161030080870191909152860151610320808701919091528601519050610340614c10818701836001600160a01b03169052565b860151610360868101919091528601519050610380614c328187018315159052565b86015190506103a0614c478682018315159052565b86015190506103c0614c63868201836001600160a01b03169052565b86015190506103e0614c788682018315159052565b8601519050610400614c94868201836001600160a01b03169052565b8601516104208681019190915290950151151593019290925250919050565b600060208284031215614cc557600080fd5b614489826143cb565b60208082526014908201527350726573616c65207374696c6c2061637469766560601b604082015260600190565b600060208284031215614d0e57600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b600060208284031215614d3d57600080fd5b815160ff8116811461448957600080fd5b600060208284031215614d6057600080fd5b815167ffffffffffffffff811115614d7757600080fd5b8201601f81018413614d8857600080fd5b8051614d9661451c82614638565b818152856020838501011115614dab57600080fd5b613f5a8260208301602086016148bd565b600181811c90821680614dd057607f821691505b602082108103614df057634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613c5c576000816000526020600020601f850160051c81016020861015614e1f5750805b601f850160051c820191505b81811015614e3e57828155600101614e2b565b505050505050565b815167ffffffffffffffff811115614e6057614e60614490565b614e7481614e6e8454614dbc565b84614df6565b602080601f831160018114614ea95760008415614e915750858301515b600019600386901b1c1916600185901b178555614e3e565b600085815260208120601f198616915b82811015614ed857888601518255948401946001909101908401614eb9565b5085821015614ef65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141761233557612335614f06565b8181038181111561233557612335614f06565b600181815b80851115614f81578160001904821115614f6757614f67614f06565b80851615614f7457918102915b93841c9390800290614f4b565b509250929050565b600082614f9857506001612335565b81614fa557506000612335565b8160018114614fbb5760028114614fc557614fe1565b6001915050612335565b60ff841115614fd657614fd6614f06565b50506001821b612335565b5060208310610133831016604e8410600b8410161715615004575081810a612335565b61500e8383614f46565b806000190482111561502257615022614f06565b029392505050565b60006144898383614f89565b60008261505357634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561506a57600080fd5b81516144898161444c565b60006001820161508757615087614f06565b5060010190565b8082018082111561233557612335614f06565b60208082526025908201527f496e73756666696369656e742070726573616c6520746f6b656e7320617661696040820152646c61626c6560d81b606082015260800190565b6000806000606084860312156150fb57600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220e242e30cd586699c5b22736b94c4818cec18e2c9f0bdc82955d5721b5a57e9f464736f6c63430008160033