623 txs
605 calls
constructor
constructor(address _creator, address _promotor, address _usdtToken, address _router, address _quoter)
functions
ADMIN_FEE
viewfunction ADMIN_FEE() view returns (uint256)
allowedTokens
viewfunction allowedTokens(address) view returns (bool)
BOOSTER_POOL_CONTRIBUTION
viewfunction BOOSTER_POOL_CONTRIBUTION() view returns (uint256)
boosterDays
viewfunction boosterDays(address, uint256) view returns (uint256)
boosterFund
viewfunction boosterFund(uint256) view returns (uint256)
boosterMembers
viewfunction boosterMembers(uint256) view returns (uint256)
boosterPreviousUpdated
viewfunction boosterPreviousUpdated() view returns (uint256)
boosterShares
viewfunction boosterShares(address, uint256) view returns (uint256)
creator
viewfunction creator() view returns (address)
dayWiseDirect
viewfunction dayWiseDirect(address, uint256) view returns (uint256)
earnings
viewfunction earnings(address) view returns (uint256 levelBonus, uint256 riMagicBonus, uint256 twoXmagicBonus, uint256 levelMagicBonus)
getAllMined
viewfunction getAllMined(address _userAddress) view returns (uint256[])
getBoosterClaimable
viewfunction getBoosterClaimable(address userAddress) view returns (uint256 claimable)
getBoosterFund
viewfunction getBoosterFund(uint256 day) view returns (uint256)
getClaimableToken
viewfunction getClaimableToken(address user, address tokenOut) view returns (uint256 claimable)
getCurrentDay
viewfunction getCurrentDay() view returns (uint256)
getDirectsCount
viewfunction getDirectsCount(address user) view returns (uint256)
getEstimate
viewfunction getEstimate(address tokenOut, uint256 usdtAmount) view returns (uint256 estimatedAmount)
getReferrals
viewfunction getReferrals(address _user) view returns (address[])
getTotalIncome
viewfunction getTotalIncome(address user) view returns (uint256 totalIncome)
getUserStakes
viewfunction getUserStakes(address _user) view returns (tuple[])
LEVEL_PERCENTAGE
viewfunction LEVEL_PERCENTAGE() view returns (uint256)
levelMagicPercentage
viewfunction levelMagicPercentage(uint256) view returns (uint256)
levelPercentages
viewfunction levelPercentages(uint256) view returns (uint256)
MIN_INVEST
viewfunction MIN_INVEST() view returns (uint256)
MIN_SWAP_AMOUNT
viewfunction MIN_SWAP_AMOUNT() view returns (uint256)
pancakeRouter
viewfunction pancakeRouter() view returns (address)
PAYOUT_SPLIT
viewfunction PAYOUT_SPLIT() view returns (uint256)
promotor
viewfunction promotor() view returns (address)
quoter
viewfunction quoter() view returns (address)
requireDirects
viewfunction requireDirects(uint256) view returns (uint256)
ROI_RATE
viewfunction ROI_RATE() view returns (uint256)
SIX_MONTHS
viewfunction SIX_MONTHS() view returns (uint256)
startTimestamp
viewfunction startTimestamp() view returns (uint256)
SWAP_FEE
viewfunction SWAP_FEE() view returns (uint256)
timeInterval
viewfunction timeInterval() view returns (uint256)
tokenStakes
viewfunction tokenStakes(address, address, uint256) view returns (uint256 amount, uint256 startTime, uint256 lockPeriod, bool claimed)
totalBoosterShares
viewfunction totalBoosterShares(uint256) view returns (uint256)
totalUsers
viewfunction totalUsers() view returns (uint256)
TWELVE_MONTHS
viewfunction TWELVE_MONTHS() view returns (uint256)
usdtToken
viewfunction usdtToken() view returns (address)
userList
viewfunction userList(uint256) view returns (address)
userMined
viewfunction userMined(address _userAddress) view returns (uint256)
users
viewfunction users(address) view returns (bool isExist, uint256 userId, address referrer, uint256 joiningTime, uint256 boosterLastClaim, uint256 swapWallet, uint256 selfInvestment, bool booster)
addAllowedToken
nonpayablefunction addAllowedToken(address token)
claimBooster
nonpayablefunction claimBooster()
claimROI
nonpayablefunction claimROI()
claimToken
nonpayablefunction claimToken(address tokenOut)
renounceOwnership
nonpayablefunction renounceOwnership()
stake
nonpayablefunction stake(uint256 amount, address _referrer)
swapUSDTForToken
nonpayablefunction swapUSDTForToken(address tokenOut, uint256 usdtAmount, uint8 option, uint24 fee, uint256 amountOutMinimum, uint160 sqrtPriceLimitX96)
events
LevelBonusPaid
event LevelBonusPaid(address indexed _from, address indexed referrer, address indexed user, uint256 level, uint256 paid, uint256 amount)
OwnershipRenounced
event OwnershipRenounced(address indexed previousOwner)
RiMagicBonusPaid
event RiMagicBonusPaid(address indexed user, uint256 amount)
RiPoolAchieved
event RiPoolAchieved(address indexed user, uint256 day, uint256 shares)
TokenAllowed
event TokenAllowed(address indexed token)
TwoXBonusPaid
event TwoXBonusPaid(address indexed user, uint256 amount)
TxLevelBonusPaid
event TxLevelBonusPaid(address indexed _from, address indexed referrer, address indexed user, uint256 level, uint256 amount)
UserRegistered
event UserRegistered(address indexed user, address indexed sponsor, uint256 amount)
errors
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x5f6011819055620151806016556101c06040526080908152600460a052600660c052600860e052600a610100819052600c61012052600e6101405260106101605260126101805260146101a05261005891601791610322565b5060408051610140810182526103208152610190602082015261012c9181019190915260c8606082015260646080820152603260a0820181905260c0820181905260e0820152601961010082018190526101208201526100bc90602190600a610365565b5060408051610140810182526107d081526103e860208201526101f49181019190915260c8606082015260966080820152603260a0820181905260c0820181905260e08201526019610100820181905261012082015261012090602b90600a610365565b5034801561012c575f5ffd5b506040516132bb3803806132bb83398101604081905261014b916103c8565b60015f81905580546001600160a01b031916331790556001600160a01b0385166101bc5760405162461bcd60e51b815260206004820152601e60248201527f43726561746f722063616e6e6f74206265207a65726f2061646472657373000060448201526064015b60405180910390fd5b6001600160a01b0384166102125760405162461bcd60e51b815260206004820152601f60248201527f50726f6d6f746f722063616e6e6f74206265207a65726f20616464726573730060448201526064016101b3565b601480546001600160a01b03199081166001600160a01b03888116919091179092556015805482168784161790556002805482168684161790556003805482168584161790556004805490911691831691909117905563687fd1a060125561027933610283565b505050505061044e565b6001600160a01b0381165f9081526005602081905260408220805460ff1916600190811782556003820180546001600160a01b03191690554260048301819055919092015560118054919290916102db908490610429565b90915550506011546001600160a01b039091165f818152600560209081526040808320600201859055938252600790529190912080546001600160a01b0319169091179055565b82600a8101928215610355579160200282015b82811115610355578251829060ff16905591602001919060010190610335565b50610361929150610399565b5090565b82600a8101928215610355579160200282015b82811115610355578251829061ffff16905591602001919060010190610378565b5b80821115610361575f815560010161039a565b80516001600160a01b03811681146103c3575f5ffd5b919050565b5f5f5f5f5f60a086880312156103dc575f5ffd5b6103e5866103ad565b94506103f3602087016103ad565b9350610401604087016103ad565b925061040f606087016103ad565b915061041d608087016103ad565b90509295509295909350565b8082018082111561044857634e487b7160e01b5f52601160045260245ffd5b92915050565b612e608061045b5f395ff3fe608060405234801561000f575f5ffd5b50600436106102e5575f3560e01c80637c4a485c11610195578063be54d9a4116100e4578063d0f09bd91161009e578063e6fd48bc11610079578063e6fd48bc14610747578063e744092e14610750578063f56392d714610782578063fe2b7fda146107b7575f5ffd5b8063d0f09bd91461070d578063d63bf8ef1461072c578063e0dd2cd514610734575f5ffd5b8063be54d9a4146106af578063bff1f9e1146106c2578063c1dd48f0146106cb578063c21ebd07146106d4578063c2d3c677146106e7578063c6bbd5a7146106fa575f5ffd5b806399f34c121161014f578063a7c592441161012a578063a7c59244146105c6578063a87430ba146105e6578063a98ad46c14610692578063ba579c74146106a5575f5ffd5b806399f34c12146105705780639f4216e81461057f578063a7800bfd146105a7575f5ffd5b80637c4a485c1461050e578063842e29811461051957806388431361146105395780638a72ed511461054c5780638f5164381461055f578063906317ba14610568575f5ffd5b806341a0894d116102515780635636b8ff1161020b578063715018a6116101e6578063715018a6146104c9578063747a3a9d146104d1578063768aebde1461040d5780637acb7757146104fb575f5ffd5b80635636b8ff146103675780636758863a146104ae5780636c4fea7b146104c1575f5ffd5b806341a0894d146103ed5780634469ed141461040d57806347049e9e146104155780634eeb69c714610428578063543fd3131461043b57806354fe51a81461048f575f5ffd5b806328c2a982116102a257806328c2a9821461036f5780633262973d1461038257806332f289cf146103ac5780633e6968b6146103bf57806341151ce4146103c75780634178617f146103da575f5ffd5b806302d05d3f146102e957806305e1c7bd1461031957806318551c99146103235780631b85aa49146103445780632298037614610354578063279f4b3a14610367575b5f5ffd5b6014546102fc906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6103216107df565b005b6103366103313660046129d7565b610abb565b604051908152602001610310565b61033668056bc75e2d6310000081565b610321610362366004612a0e565b610b6a565b610336601481565b61033661037d366004612a86565b611059565b610336610390366004612a86565b600c60209081525f928352604080842090915290825290205481565b6103216103ba366004612ab0565b611084565b6103366111a8565b6103366103d5366004612ab0565b6111d4565b6103216103e8366004612ab0565b611223565b6104006103fb366004612ab0565b611318565b6040516103109190612acb565b610336600a81565b610336610423366004612b16565b61138b565b610336610436366004612b16565b6113a1565b61046f610449366004612ab0565b60066020525f908152604090208054600182015460028301546003909301549192909184565b604080519485526020850193909352918301526060820152608001610310565b61033661049d366004612b16565b60096020525f908152604090205481565b6103366104bc366004612a86565b6113c9565b610321611508565b6103216116e1565b6103366104df366004612a86565b600d60209081525f928352604080842090915290825290205481565b610321610509366004612b2d565b611771565b6103366301e1338081565b61052c610527366004612ab0565b611d2c565b6040516103109190612b50565b610336610547366004612ab0565b611dd2565b6015546102fc906001600160a01b031681565b61033660165481565b610336603281565b610336674563918244f4000081565b6102fc61058d366004612b16565b60076020525f90815260409020546001600160a01b031681565b6103366105b5366004612b16565b600e6020525f908152604090205481565b6105d96105d4366004612ab0565b611eb9565b6040516103109190612bb7565b6106456105f4366004612ab0565b600560208190525f91825260409091208054600282015460038301546004840154948401546006850154600786015460089096015460ff9586169794966001600160a01b0390941695929391921688565b60408051981515895260208901979097526001600160a01b03909516958701959095526060860192909252608085015260a084015260c0830191909152151560e082015261010001610310565b6002546102fc906001600160a01b031681565b61033662ed4e0081565b6103366106bd366004612b16565b611f6f565b61033660115481565b61033660135481565b6003546102fc906001600160a01b031681565b6103366106f5366004612ab0565b611f7e565b6004546102fc906001600160a01b031681565b61033661071b366004612b16565b600a6020525f908152604090205481565b610336605081565b610336610742366004612b16565b611feb565b61033660125481565b61077261075e366004612ab0565b60106020525f908152604090205460ff1681565b6040519015158152602001610310565b610795610790366004612bee565b611ffa565b6040805194855260208501939093529183015215156060820152608001610310565b6103366107c5366004612ab0565b6001600160a01b03165f9081526008602052604090205490565b6107e761204c565b335f9081526005602052604081205460ff1661081e5760405162461bcd60e51b815260040161081590612c2c565b60405180910390fd5b335f908152600b60205260409020805461087a5760405162461bcd60e51b815260206004820152601e60248201527f4e6f20626f6f7374657220617661696c61626c6520746f20636c61696d2100006044820152606401610815565b5f805b8254811015610922575f83828154811061089957610899612c59565b905f5260205f20015490506108ac6111a8565b811015610906575f818152600e6020908152604080832054338452600d8352818420858552909252909120546108e1836113a1565b6108eb9190612c81565b6108f59190612cac565b6108ff9086612cbf565b9450610919565b61090e6111a8565b810361091957600192505b5060010161087d565b50335f908152600b6020526040812061093a91612995565b801561096c57335f908152600b602052604090206109566111a8565b81546001810183555f9283526020909220909101555b61097633846120a3565b92505f83116109c75760405162461bcd60e51b815260206004820181905260248201527f4e6f206d6f726520626f6f7374657220696e636f6d6520796f752068617665216044820152606401610815565b6109f53360646109d8605087612c81565b6109e29190612cac565b6002546001600160a01b03169190612139565b6064610a02600a85612c81565b610a0c9190612cac565b335f9081526005602052604081206006018054909190610a2d908490612cbf565b90915550610a5290506064610a43600a86612c81565b610a4d9190612cac565b61219d565b335f9081526006602052604081206001018054859290610a73908490612cbf565b909155505060405183815233907feb250a3d8300f758824de8facd699f93b19c08bde60c406fa509a49e0cf1f7959060200160405180910390a2505050610ab960015f55565b565b6001600160a01b038083165f908152600f602090815260408083209385168352929052908120815b8154811015610b62575f828281548110610aff57610aff612c59565b5f9182526020909120600490910201600381015490915060ff16158015610b39575080600201548160010154610b359190612cbf565b4210155b8015610b455750805415155b15610b59578054610b569085612cbf565b93505b50600101610ae3565b505092915050565b610b7261204c565b6001600160a01b0386165f9081526010602052604090205460ff16610bcd5760405162461bcd60e51b8152602060048201526011602482015270151bdad95b881b9bdd08185b1b1bddd959607a1b6044820152606401610815565b335f9081526005602052604090205460ff16610bfb5760405162461bcd60e51b815260040161081590612c2c565b674563918244f40000851015610c4b5760405162461bcd60e51b815260206004820152601560248201527410995b1bddc81b5a5b881cddd85c08185b5bdd5b9d605a1b6044820152606401610815565b8360ff1660011480610c6057508360ff166002145b610c9d5760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b21037b83a34b7b760911b6044820152606401610815565b335f90815260056020526040902060060154851115610cfe5760405162461bcd60e51b815260206004820152601860248201527f496e73756666696369656e7420737761702077616c6c657400000000000000006044820152606401610815565b335f9081526005602052604081206006018054879290610d1f908490612cd2565b90915550506002546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa158015610d6a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612ce5565b905085811015610de05760405162461bcd60e51b815260206004820152601d60248201527f496e73756666696369656e74205553445420696e20636f6e74726163740000006044820152606401610815565b60025460035460405163095ea7b360e01b81526001600160a01b0391821660048201525f602482015291169063095ea7b3906044016020604051808303815f875af1158015610e31573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e559190612cfc565b5060025460035460405163095ea7b360e01b81526001600160a01b0391821660048201526024810189905291169063095ea7b3906044016020604051808303815f875af1158015610ea8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ecc9190612cfc565b5060408051610100810182526002546001600160a01b0390811682528916602082015262ffffff8616918101919091523060608201525f9060808101610f144261012c612cbf565b81526020810189905260408082018790526001600160a01b03808716606090930192909252600354905163414bf38960e01b81529293505f9291169063414bf38990610f64908590600401612d1b565b6020604051808303815f875af1158015610f80573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa49190612ce5565b90505f8760ff16600114610fbc576301e13380610fc1565b62ed4e005b335f908152600f602090815260408083206001600160a01b038f1684528252808320815160808101835296875242878401908152918701948552606087018481528154600180820184559286529390942096516004909302909601918255519481019490945590516002840155516003909201805460ff19169215159290921790915550611051915061225a9050565b505050505050565b600b602052815f5260405f208181548110611072575f80fd5b905f5260205f20015f91509150505481565b61108c61204c565b335f908152600f602090815260408083206001600160a01b03851684529091528120815b8154811015611156575f8282815481106110cc576110cc612c59565b5f9182526020909120600490910201600381015490915060ff161580156111065750806002015481600101546111029190612cbf565b4210155b80156111125750805415155b1561114d5760038101805460ff19166001179055805461113e906001600160a01b038716903390612139565b805461114a9085612cbf565b93505b506001016110b0565b505f821161119a5760405162461bcd60e51b81526020600482015260116024820152704e6f7468696e6720636c61696d61626c6560781b6044820152606401610815565b50506111a560015f55565b50565b5f601654601254426111ba9190612cd2565b6111c49190612cac565b6111cf906001612cbf565b905090565b5f80805b6001600160a01b0384165f9081526005602052604090206001015481101561121c575f6112058583612260565b90506112118184612cbf565b9250506001016111d8565b5092915050565b6001546001600160a01b031633146112775760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610815565b6001600160a01b0381166112cd5760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e20616464726573732063616e6e6f74206265207a65726f000000006044820152606401610815565b6001600160a01b0381165f81815260106020526040808220805460ff19166001179055517fbeceb48aeaa805aeae57be163cca6249077a18734e408a85aa74e875c43738099190a250565b6001600160a01b0381165f9081526008602090815260409182902080548351818402810184019094528084526060939283018282801561137f57602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311611361575b50505050509050919050565b601781600a811061139a575f80fd5b0154905081565b5f6113ab82612346565b5f838152600960205260409020546113c39190612cbf565b92915050565b5f5f82116114195760405162461bcd60e51b815260206004820181905260248201527f416d6f756e74206d7573742062652067726561746572207468616e207a65726f6044820152606401610815565b6001600160a01b0383165f9081526010602052604090205460ff166114745760405162461bcd60e51b8152602060048201526011602482015270151bdad95b881b9bdd08185b1b1bddd959607a1b6044820152606401610815565b6004805460025460405163f7729d4360e01b81526001600160a01b039182169381019390935285811660248401526127106044840152606483018590525f6084840152169063f7729d439060a401602060405180830381865afa1580156114dd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115019190612ce5565b9392505050565b335f9081526005602052604090205460ff166115365760405162461bcd60e51b815260040161081590612c2c565b5f805b335f908152600560205260409020600101548110156115da57335f90815260056020526040812060010180548390811061157557611575612c59565b905f5260205f20906005020190505f61158e3384612260565b90505f61159b33836120a3565b905080156115cf5780836003015f8282546115b69190612cbf565b909155506115c690508186612cbf565b42600285015594505b505050600101611539565b505f811161161d5760405162461bcd60e51b815260206004820152601060248201526f4e6f7468696e6720746f20636c61696d60801b6044820152606401610815565b335f908152600660205260408120600201805483929061163e908490612cbf565b9091555061165590503360646109d8605085612c81565b6116656064610a43600a84612c81565b6064611672600a83612c81565b61167c9190612cac565b335f908152600560205260408120600601805490919061169d908490612cbf565b909155505060405181815233907f0e5c1c01f84fef086724719077d24415f797378f12d203810179e0dd8687d3319060200160405180910390a26111a533826123b2565b6001546001600160a01b031633146117355760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610815565b600180546001600160a01b03191690556040515f907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c64820908290a2565b68056bc75e2d63100000821015801561179a575061179868056bc75e2d6310000083612d91565b155b6117d75760405162461bcd60e51b815260206004820152600e60248201526d125b9d985b1a5908185b5bdd5b9d60921b6044820152606401610815565b6001600160a01b038116158061180957506001600160a01b0381165f9081526005602052604090205460ff1615156001145b6118555760405162461bcd60e51b815260206004820152601760248201527f526566657272657220646f6573206e6f742065786973740000000000000000006044820152606401610815565b336001600160a01b038216036118ad5760405162461bcd60e51b815260206004820152601760248201527f52656665727265722063616e6e6f742062652073656c660000000000000000006044820152606401610815565b336118fa5760405162461bcd60e51b815260206004820152601d60248201527f53656e6465722063616e6e6f74206265207a65726f20616464726573730000006044820152606401610815565b5f6119036111a8565b60025490915061191e906001600160a01b03163330866125fa565b335f9081526005602052604090205460ff16611a2857335f90815260056020819052604082208054600160ff199091168117825542600483018190556003830180546001600160a01b0319166001600160a01b0389161790559190920155601180549192909161198f908490612cbf565b9091555050601154335f818152600560209081526040808320600201859055938252600790529190912080546001600160a01b03191690911790556001600160a01b038216158015906119eb57506001600160a01b0382163314155b15611a28576001600160a01b0382165f9081526008602090815260408220805460018101825590835291200180546001600160a01b031916331790555b6040518381526001600160a01b0383169033907f05345a91f639184e946e5aac384b1e9f74ae9ab08d775a7deddb3180cebecb239060200160405180910390a36001600160a01b0382165f908152600c602090815260408083208484529091528120805491611a9683612da4565b90915550506001600160a01b0382165f908152600c6020908152604080832084845290915281205490611aca600283612cac565b6001600160a01b0385165f908152600d602090815260408083208784529091529020549091508082118015611b3857506001600160a01b0385165f90815260056020526040902060070154600a90611b23906021612c81565b611b2d9190612cac565b611b3686611f7e565b105b15611c24575f611b488284612cd2565b6001600160a01b0387165f908152600d602090815260408083208984528252808320879055600e909152812080549293508392909190611b89908490612cbf565b90915550505f829003611bde576001600160a01b0386165f908152600b60209081526040808320805460018101825590845282842001889055878352600a9091528120805491611bd883612da4565b91905055505b60408051868152602081018390526001600160a01b038816917f4789e259befd4d7ae5f6eedbbde5d917365ce445a33c69fa772550bdd03289ed910160405180910390a2505b5f6040518060a001604052808881526020014281526020014281526020015f8152602001600a8960055f336001600160a01b03166001600160a01b031681526020019081526020015f2060070154611c7c9190612cbf565b611c87906016612c81565b611c919190612cac565b9052335f81815260056020818152604080842060018082018054808301825590875284872089519190960290950194855592870151928401929092558501516002830155606085015160038301556080850151600490920191909155918152600790910180549293508992909190611d0a908490612cbf565b90915550611d1a90503388612639565b611d2387612885565b50505050505050565b6001600160a01b0381165f908152600560209081526040808320600101805482518185028101850190935280835260609492939192909184015b82821015611dc7578382905f5260205f2090600502016040518060a00160405290815f820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505081526020019060010190611d66565b505050509050919050565b6001600160a01b0381165f908152600b60205260408120805415611eb3575f5b8154811015611eb1575f828281548110611e0e57611e0e612c59565b905f5260205f2001549050611e216111a8565b81108015611e4b57506001600160a01b0385165f9081526005602052604090205460ff1615156001145b15611ea8575f818152600e60209081526040808320546001600160a01b0389168452600d835281842085855290925290912054611e87836113a1565b611e919190612c81565b611e9b9190612cac565b611ea59085612cbf565b93505b50600101611df2565b505b50919050565b6001600160a01b0381165f908152600560205260408120600101546060919067ffffffffffffffff811115611ef057611ef0612dbc565b604051908082528060200260200182016040528015611f19578160200160208202803683370190505b5090505f5b6001600160a01b0384165f9081526005602052604090206001015481101561121c57611f4a8482612260565b828281518110611f5c57611f5c612c59565b6020908102919091010152600101611f1e565b602b81600a811061139a575f80fd5b6001600160a01b0381165f9081526006602090815260408083208151608081018352815480825260018301549482018590526002830154938201849052600390920154606082018190529093909291611fd79190612cbf565b611fe19190612cbf565b6115019190612cbf565b602181600a811061139a575f80fd5b600f602052825f5260405f20602052815f5260405f20818154811061201d575f80fd5b5f9182526020909120600490910201805460018201546002830154600390930154919550935090915060ff1684565b60025f540361209d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610815565b60025f55565b6001545f906001600160a01b03908116908416036120c25750806113c3565b6001600160a01b0383165f90815260056020526040812060070154600a906120eb906021612c81565b6120f59190612cac565b90505f61210185611f7e565b61210b9083612cd2565b90508161211786611f7e565b6121219086612cbf565b11156121305791506113c39050565b50919392505050565b6040516001600160a01b0383811660248301526044820183905261219891859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050612929565b505050565b6014546001600160a01b0316158015906121c157506015546001600160a01b031615155b61220d5760405162461bcd60e51b815260206004820152601760248201527f436f6d70616e792077616c6c657473206e6f74207365740000000000000000006044820152606401610815565b5f612219600283612cac565b601454600254919250612239916001600160a01b03908116911683612139565b601554600254612256916001600160a01b03918216911683612139565b5050565b60015f55565b6001600160a01b0382165f90815260056020526040812060010180548291908490811061228f5761228f612c59565b905f5260205f20906005020190505f6016548260020154426122b19190612cd2565b6122bb9190612cac565b90505f612710603283855f01546122d29190612c81565b6122dc9190612c81565b6122e69190612cac565b90508260040154816122f788611f7e565b6123019190612cbf565b111561233d57826004015461231587611f7e565b101561233a5761232486611f7e565b83600401546123339190612cd2565b905061233d565b505f5b95945050505050565b5f805b6001831180156123735750600a5f612362600186612cd2565b81526020019081526020015f20545f145b8015612380575082601354105b156113c3578261238f81612dd0565b5f818152600960205260409020549094506123ab915082612cbf565b9050612349565b6001600160a01b038083165f908152600560205260408120600301549091169080805b600a811015611051576001600160a01b038416158061240c57506001600160a01b0384165f9081526005602052604090205460ff16155b61105157601781600a811061242357612423612c59565b01546001600160a01b0385165f908152600860205260409020541015612468576001600160a01b039384165f90815260056020526040902060030154909316926125f2565b5f602b82600a811061247c5761247c612c59565b015490505f61271061248e8389612c81565b6124989190612cac565b9050868111156124ba5760405162461bcd60e51b815260040161081590612de5565b6124c48286612cbf565b94506124d08185612cbf565b93505f6124dd87836120a3565b905080156125ce576124f68760646109d8605085612c81565b6125066064610a43600a84612c81565b6064612513600a83612c81565b61251d9190612cac565b6001600160a01b0388165f9081526005602052604081206006018054909190612547908490612cbf565b90915550506001600160a01b0387165f9081526006602052604081206003018054839290612576908490612cbf565b90915550506001600160a01b03808a16908816337f6b94aa82f70d43f24b09ccdb65b48b8d943e56661bd6c6bc749530139dfd13666125b6886001612cbf565b60408051918252602082018890520160405180910390a45b5050506001600160a01b039384165f90815260056020526040902060030154909316925b6001016123d5565b6040516001600160a01b0384811660248301528381166044830152606482018390526126339186918216906323b872dd90608401612166565b50505050565b6001600160a01b038083165f908152600560205260408120600301549091169080805b600a811015611051576001600160a01b038416158061269357506001600160a01b0384165f9081526005602052604090205460ff16155b61105157601781600a81106126aa576126aa612c59565b01546001600160a01b0385165f9081526008602052604090205410156126ef576001600160a01b039384165f908152600560205260409020600301549093169261287d565b5f602182600a811061270357612703612c59565b015490505f6127106127158389612c81565b61271f9190612cac565b9050868111156127415760405162461bcd60e51b815260040161081590612de5565b61274b8286612cbf565b94506127578185612cbf565b93505f61276487836120a3565b905080156127d45761277d8760646109d8605085612c81565b61278d6064610a43600a84612c81565b606461279a600a83612c81565b6127a49190612cac565b6001600160a01b0388165f90815260056020526040812060060180549091906127ce908490612cbf565b90915550505b6001600160a01b0387165f90815260066020526040812080548392906127fb908490612cbf565b90915550506001600160a01b03808a16908816337ff5050c4855f1a9c3cf75e57e18fb0aaec105338956055ade2836d29b7e1bfec561283b886001612cbf565b6040805191825260208201879052810187905260600160405180910390a45050506001600160a01b039384165f90815260056020526040902060030154909316925b60010161265c565b5f61288e6111a8565b9050606461289e60026014612cac565b6128a89084612c81565b6128b29190612cac565b5f82815260096020526040812080549091906128cf908490612cbf565b90915550606490506128e360026014612cac565b6128ed9084612c81565b6128f79190612cac565b60095f612905846001612cbf565b81526020019081526020015f205f8282546129209190612cbf565b90915550505050565b5f5f60205f8451602086015f885af180612948576040513d5f823e3d81fd5b50505f513d9150811561295f57806001141561296c565b6001600160a01b0384163b155b1561263357604051635274afe760e01b81526001600160a01b0385166004820152602401610815565b5080545f8255905f5260205f20908101906111a591905b808211156129bf575f81556001016129ac565b5090565b6001600160a01b03811681146111a5575f5ffd5b5f5f604083850312156129e8575f5ffd5b82356129f3816129c3565b91506020830135612a03816129c3565b809150509250929050565b5f5f5f5f5f5f60c08789031215612a23575f5ffd5b8635612a2e816129c3565b955060208701359450604087013560ff81168114612a4a575f5ffd5b9350606087013562ffffff81168114612a61575f5ffd5b92506080870135915060a0870135612a78816129c3565b809150509295509295509295565b5f5f60408385031215612a97575f5ffd5b8235612aa2816129c3565b946020939093013593505050565b5f60208284031215612ac0575f5ffd5b8135611501816129c3565b602080825282518282018190525f918401906040840190835b81811015612b0b5783516001600160a01b0316835260209384019390920191600101612ae4565b509095945050505050565b5f60208284031215612b26575f5ffd5b5035919050565b5f5f60408385031215612b3e575f5ffd5b823591506020830135612a03816129c3565b602080825282518282018190525f918401906040840190835b81811015612b0b57835180518452602081015160208501526040810151604085015260608101516060850152608081015160808501525060a083019250602084019350600181019050612b69565b602080825282518282018190525f918401906040840190835b81811015612b0b578351835260209384019390920191600101612bd0565b5f5f5f60608486031215612c00575f5ffd5b8335612c0b816129c3565b92506020840135612c1b816129c3565b929592945050506040919091013590565b602080825260139082015272155cd95c88191bd95cc81b9bdd08195e1a5cdd606a1b604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176113c3576113c3612c6d565b634e487b7160e01b5f52601260045260245ffd5b5f82612cba57612cba612c98565b500490565b808201808211156113c3576113c3612c6d565b818103818111156113c3576113c3612c6d565b5f60208284031215612cf5575f5ffd5b5051919050565b5f60208284031215612d0c575f5ffd5b81518015158114611501575f5ffd5b81516001600160a01b03908116825260208084015182169083015260408084015162ffffff169083015260608084015191821690830152610100820190506080830151608083015260a083015160a083015260c083015160c083015260e083015161121c60e08401826001600160a01b03169052565b5f82612d9f57612d9f612c98565b500690565b5f60018201612db557612db5612c6d565b5060010190565b634e487b7160e01b5f52604160045260245ffd5b5f81612dde57612dde612c6d565b505f190190565b60208082526025908201527f4c6576656c20696e636f6d65206578636565647320617661696c61626c6520746040820152646f6b656e7360d81b60608201526080019056fea2646970667358221220044db4f211b79c8551413ad5606be9497b153d2c15d0320f26c55db51de5564e64736f6c634300081c003300000000000000000000000046dfe9b97363d6f2084a657a7a23cd39db86c56d0000000000000000000000001a918650402fec8ca56ecb9fc0e060f27d09f55600000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000001b81d678ffb9c0263b24a97847620c99d213eb14000000000000000000000000b048bbc1ee6b733fffcfb9e9cef7375518e25997