More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 21,563 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Tokens | 45474637 | 638 days ago | IN | 0 POL | 0.00122088 | ||||
Withdraw Token | 38780268 | 811 days ago | IN | 0 POL | 0.0029235 | ||||
Claim Tokens | 34926502 | 907 days ago | IN | 0 POL | 0.00169363 | ||||
Claim Tokens | 34926424 | 907 days ago | IN | 0 POL | 0.00177644 | ||||
Claim Tokens | 34926355 | 907 days ago | IN | 0 POL | 0.00179192 | ||||
Claim Tokens | 34925894 | 907 days ago | IN | 0 POL | 0.00176088 | ||||
Claim Tokens | 34919636 | 907 days ago | IN | 0 POL | 0.00176838 | ||||
Claim Tokens | 34919478 | 907 days ago | IN | 0 POL | 0.00182969 | ||||
Claim Tokens | 34919252 | 907 days ago | IN | 0 POL | 0.00177932 | ||||
Claim Tokens | 34919076 | 907 days ago | IN | 0 POL | 0.00173778 | ||||
Claim Tokens | 32525670 | 965 days ago | IN | 0 POL | 0.00169428 | ||||
Claim Tokens | 32525631 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 32525631 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 32525488 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 32525481 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 32525472 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 32525373 | 965 days ago | IN | 0 POL | 0.00161937 | ||||
Claim Tokens | 31843253 | 983 days ago | IN | 0 POL | 0.00270436 | ||||
Claim Tokens | 31843249 | 983 days ago | IN | 0 POL | 0.00356107 | ||||
Claim Tokens | 31426613 | 994 days ago | IN | 0 POL | 0.00213974 | ||||
Claim Tokens | 31283037 | 998 days ago | IN | 0 POL | 0.00585582 | ||||
Claim Tokens | 31283034 | 998 days ago | IN | 0 POL | 0.00585582 | ||||
Claim Tokens | 31283027 | 998 days ago | IN | 0 POL | 0.00585582 | ||||
Claim Tokens | 31283027 | 998 days ago | IN | 0 POL | 0.0046048 | ||||
Claim Tokens | 31283027 | 998 days ago | IN | 0 POL | 0.0046048 |
Latest 6 internal transactions
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
21748632 | 1245 days ago | 20,000 POL | ||||
21748589 | 1245 days ago | 2,898.50913664 POL | ||||
21748519 | 1245 days ago | 1 POL | ||||
21747344 | 1245 days ago | 0.01 POL | ||||
21695034 | 1247 days ago | Contract Creation | 0 POL | |||
21695034 | 1247 days ago | Contract Creation | 0 POL |
Loading...
Loading
Contract Name:
AVX_IDO
Compiler Version
v0.8.4+commit.c7e474f2
Contract Source Code (Solidity)
/** *Submitted for verification at polygonscan.com on 2021-11-23 */ // SPDX-License-Identifier: none pragma solidity ^0.8.4; interface AggregatorV3Interface { function decimals() external view returns (uint); function description() external view returns (string memory); function version() external view returns (uint); // getRoundData and latestRoundData should both raise "No data present" // if they do not have data to report, instead of returning unset values // which could be misinterpreted as actual reported values. function getRoundData(uint80 _roundId) external view returns ( uint roundId, uint answer, uint startedAt, uint updatedAt, uint answeredInRound ); function latestRoundData() external view returns ( uint roundId, uint answer, uint startedAt, uint updatedAt, uint answeredInRound ); } contract PriceConsumerV3 { AggregatorV3Interface internal priceFeed; constructor() { priceFeed = AggregatorV3Interface(0xAB594600376Ec9fD91F8e885dADF0CE036862dE0); // Mainnet MATIC/USD } function getThePrice() public view returns (uint) { ( uint roundID, uint price, uint startedAt, uint timeStamp, uint answeredInRound ) = priceFeed.latestRoundData(); return price; } } interface BEP20 { function totalSupply() external view returns (uint theTotalSupply); function balanceOf(address _owner) external view returns (uint balance); function transfer(address _to, uint _value) external returns (bool success); function transferFrom(address _from, address _to, uint _value) external returns (bool success); function approve(address _spender, uint _value) external returns (bool success); function allowance(address _owner, address _spender) external view returns (uint remaining); event Transfer(address indexed _from, address indexed _to, uint _value); event Approval(address indexed _owner, address indexed _spender, uint _value); } interface STAKE { function tierCount1() external view returns (uint); function tierCount2() external view returns (uint); function tierCount3() external view returns (uint); function tierCount4() external view returns (uint); function ongoingStakingStatus() external view returns (bool); function userStakeStastus(address) external view returns (bool); function details(address) external view returns(uint topTier, uint[] calldata amounts, uint[] calldata times, bool[] calldata withdrawStatus); } contract StakingDetails { STAKE public stakeGetter; constructor() { stakeGetter = STAKE(0x1843EC59C04ffbf349e21aBd317F6EC874DCAc9F); // live stake contract address } function oneCount() public view returns (uint) { return stakeGetter.tierCount1(); } function twoCount() public view returns (uint) { return stakeGetter.tierCount2(); } function threeCount() public view returns (uint) { return stakeGetter.tierCount3(); } function fourCount() public view returns (uint) { return stakeGetter.tierCount4(); } function stakeStatus(address addr) public view returns(bool){ return stakeGetter.userStakeStastus(addr); } function getTopTier(address addr) public view returns (uint) { ( uint topTier, uint[] memory amounts, uint[] memory times, bool[] memory withdrawStatus ) = stakeGetter.details(addr); return topTier; } } contract AVX_IDO { PriceConsumerV3 priceConsumerV3 = new PriceConsumerV3(); uint public priceOfMATIC = priceConsumerV3.getThePrice(); struct Buyer{ bool buyStatus; uint totalTokensBought; Bought[] bought; } struct Bought { uint tokenBought; uint at; } struct Claim { uint[] claimAmounts; uint[] claimTimes; } StakingDetails stakeDetails = new StakingDetails(); uint public tier1Number = stakeDetails.oneCount(); uint public tier2Number = stakeDetails.twoCount(); uint public tier3Number = stakeDetails.threeCount(); uint public tier4Number = stakeDetails.fourCount(); uint public totalAllocation = 328092 * 10**18; uint public tier1Alloc = 49218 * 10**18; uint public tier2Alloc = 82031 * 10**18; uint public tier3Alloc = 70000 * 10**18; uint public tier4Alloc = 126843 * 10**18; mapping(address => uint) public userAlloc; address public owner = msg.sender; address public claimTokenAddr; address public contractAddr = address(this); uint public buyPrice; uint public buyPriceDecimal; mapping(address => Buyer) public buyer; mapping(address => Claim) claim; bool public saleStatus; uint public saleEndTime; address public updater; uint public time; event Received(address, uint); event TokensBought(address, uint); event OwnershipTransferred(address); constructor() { buyPrice = 16; saleStatus = false; time = 1637766000; // Wednesday, November 24, 2021 8:30:00 PM GMT+05:30 buyPriceDecimal = 100; } /// Fetch user top tier function getUserTier(address addr) public view returns(uint){ return stakeDetails.getTopTier(addr); } function updateLiveMaticPrice() public returns(bool) { priceOfMATIC = priceConsumerV3.getThePrice(); return true; } /** * @dev Buy token * * Requirements: * USD amount should be between 50 and 500 * totalAllocation cannot be overflown * saleStatus has to be true * cannot send zero value transaction */ function buyToken() public payable returns(bool) { bool userStakeStatus = stakeDetails.stakeStatus(msg.sender); address sender = msg.sender; // uint amount = msg.value * priceOfMATIC / 10*10**18; uint userTier = getUserTier(sender); // uint time = block.timestamp; uint tokens = (msg.value * priceOfMATIC / (100000000/buyPriceDecimal)) / buyPrice; uint claimAmount = tokens * 10 / 100; require(saleStatus == true, "Sale not started or has finished"); require(msg.value > 0, "Zero value"); require(userStakeStatus == true,"Not staked"); if(userTier == 0){ if(userAlloc[sender] == 0){ userAlloc[sender] = tier1Alloc / tier1Number; require(tokens <= userAlloc[sender], "User allocation error1"); userAlloc[sender] -= tokens; } else{ require(tokens <= userAlloc[sender], "User Allocation Error2"); userAlloc[sender] -= tokens; } } else if(userTier == 1){ if(userAlloc[sender] == 0){ userAlloc[sender] = tier2Alloc / tier2Number; require(tokens <= userAlloc[sender], "User allocation error3"); userAlloc[sender] -= tokens; } else{ require(tokens <= userAlloc[sender], "User Allocation Error4"); userAlloc[sender] -= tokens; } } else if(userTier == 2){ if(userAlloc[sender] == 0){ userAlloc[sender] = tier3Alloc / tier3Number; require(tokens <= userAlloc[sender], "User allocation error5"); userAlloc[sender] -= tokens; } else{ require(tokens <= userAlloc[sender], "User Allocation Error6"); userAlloc[sender] -= tokens; } } else if(userTier == 3){ if(userAlloc[sender] == 0){ userAlloc[sender] = tier4Alloc / tier4Number; require(tokens <= userAlloc[sender], "User allocation error7"); userAlloc[sender] -= tokens; } else{ require(tokens <= userAlloc[sender], "User Allocation Error8"); userAlloc[sender] -= tokens; } } claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimAmounts.push(claimAmount); claim[sender].claimTimes.push(time); claim[sender].claimTimes.push(time + 7 days); claim[sender].claimTimes.push(time + 14 days); claim[sender].claimTimes.push(time + 21 days); claim[sender].claimTimes.push(time + 28 days); claim[sender].claimTimes.push(time + 35 days); claim[sender].claimTimes.push(time + 42 days); claim[sender].claimTimes.push(time + 49 days); claim[sender].claimTimes.push(time + 56 days); claim[sender].claimTimes.push(time + 63 days); buyer[sender].bought.push(Bought(tokens, block.timestamp)); buyer[sender].totalTokensBought += tokens; buyer[sender].buyStatus = true; emit TokensBought(sender, tokens); return true; } // Set buy price // Upto _price = 3, _price_decimal = 1000 then actual price = 0.0003 function setBuyPrice(uint _price,uint _price_decimal) public { require(msg.sender == owner, "Only owner"); buyPrice = _price; buyPriceDecimal = _price_decimal; } function setTierMemberCount() public { require(msg.sender == owner, "Only owner"); tier1Number = stakeDetails.oneCount(); tier2Number = stakeDetails.twoCount(); tier3Number = stakeDetails.threeCount(); tier4Number = stakeDetails.fourCount(); } // View tokens for bnb function getTokens(uint maticAmt) public view returns(uint tokens) { tokens = (maticAmt * priceOfMATIC / (100000000/buyPriceDecimal)) / buyPrice; return tokens; } // View tokens for busd function getTokensForBusd(uint busdAmount) public view returns(uint tokens) { tokens = busdAmount / buyPrice * buyPriceDecimal; return tokens; } /** * @dev Set sale status * * Only to temporarily pause sale if necessary * Otherwise use 'endSale' function to end sale */ function setSaleStatus(bool status) public returns (bool) { require(msg.sender == owner, "Only owner"); saleStatus = status; return true; } // user stake status function stakeStat(address addr) public view returns(bool){ bool status = stakeDetails.stakeStatus(addr); return status; } /** * @dev End presale * * Requirements: * * Only owner can call this function */ function endSale() public returns (bool) { require(msg.sender == owner, "Only owner"); saleStatus = false; saleEndTime = block.timestamp; return true; } /// Set claim token address function setClaimTokenAddress(address addr) public returns(bool) { require(msg.sender == owner, "Only owner"); claimTokenAddr = addr; return true; } /// Set first claim time function setFirstClaimTime(uint _time) public { require(msg.sender == owner, "Only owner"); time = _time; } /** * @dev Claim tokens * */ function claimTokens(uint index) public returns (bool) { require(claimTokenAddr != address(0), "Claim token address not set"); BEP20 token = BEP20(claimTokenAddr); Claim storage _claim = claim[msg.sender]; uint amount = _claim.claimAmounts[index]; require(buyer[msg.sender].buyStatus == true, "Not bought any tokens"); require(block.timestamp > _claim.claimTimes[index], "Claim time not reached"); require(_claim.claimAmounts[index] != 0, "Already claimed"); token.transfer(msg.sender, amount); delete _claim.claimAmounts[index]; return true; } // Update claims for addresses with multiple entries function updateClaims(address addr, uint[] memory _amounts, uint[] memory _times) public { Claim storage clm = claim[addr]; require(msg.sender == owner || msg.sender == updater, "Permission error"); require(_amounts.length == _times.length, "Array length error"); uint len = _amounts.length; for(uint i = 0; i < len; i++){ clm.claimAmounts.push(_amounts[i]); clm.claimTimes.push(_times[i]); } buyer[addr].buyStatus = true; } // Update claims for multiple addresses with multiple entries function updateMultipleClaims(address[] memory multipleAddr, uint[][] memory _multipleAmounts, uint[][] memory _multipleTimes) public { require(msg.sender == owner || msg.sender == updater, "Permission error"); require(multipleAddr.length == _multipleAmounts.length, "Array length error"); require(_multipleAmounts.length == _multipleTimes.length, "Array length error"); uint addrLength = multipleAddr.length; for(uint i = 0; i < addrLength; i++){ require(_multipleAmounts[i].length == _multipleTimes[i].length, "Array length error"); address addr = multipleAddr[i]; Claim storage clm = claim[addr]; uint len = _multipleAmounts[i].length; for(uint j = 0; j < len; j++){ clm.claimAmounts.push(_multipleAmounts[i][j]); clm.claimTimes.push(_multipleTimes[i][j]); } buyer[addr].buyStatus = true; } } // add same claim to multiple addresses function updateClaimWithSameEntryForMultiAddress(address[] memory addr, uint[] memory amt, uint[] memory at) public { require(msg.sender == owner || msg.sender == updater, "Permission error"); require(amt.length == at.length, "Array length error"); for(uint i = 0; i < addr.length; i++){ address singleAddr = addr[i]; for(uint j = 0; j < amt.length; j++){ claim[singleAddr].claimAmounts.push(amt[j]); claim[singleAddr].claimTimes.push(at[j]); } buyer[singleAddr].buyStatus = true; } } // remove and update all chaims for single address function removeAndUpdateClaims(address addr, uint[] memory _amounts, uint[] memory _times) public { delete claim[addr]; Claim storage clm = claim[addr]; require(msg.sender == owner || msg.sender == updater, "Permission error"); require(_amounts.length == _times.length, "Array length error"); uint len = _amounts.length; for(uint i = 0; i < len; i++){ clm.claimAmounts.push(_amounts[i]); clm.claimTimes.push(_times[i]); } buyer[addr].buyStatus = true; } // Update entry for user at particular index function indexValueUpdate(address addr, uint index, uint amount, uint _time) public { require(msg.sender == owner || msg.sender == updater, "Permission error"); claim[addr].claimAmounts[index] = amount; claim[addr].claimTimes[index] = _time; } // Set updater address function setUpdaterAddress(address to) public { require(msg.sender == owner, "Only owner"); updater = to; } /// Tier allocation left function getTier1Allocation() public view returns(uint) { return tier1Alloc; } function getTier2Allocation() public view returns(uint) { return tier2Alloc; } function getTier3Allocation() public view returns(uint) { return tier3Alloc; } function getTier4Allocation() public view returns(uint) { return tier4Alloc; } /// Get user allocation left function userAllocationLeft(address user) public view returns(uint amount) { uint tier = getUserTier(user); bool staked = stakeStat(user); if(staked == false){ amount = 0; } else{ if(userBuyStatus(user) == false){ if(tier == 0){ amount = tier1Alloc / tier1Number; } else if(tier ==1){ amount = tier2Alloc / tier2Number; } else if(tier == 2){ amount = tier3Alloc / tier3Number; } else if(tier == 3){ amount = tier4Alloc / tier4Number; } } else{ amount = userAlloc[user]; } } return amount; } /// Return tier number values function tier1Count() public view returns (uint){ return tier1Number; } function tier2Count() public view returns (uint){ return tier2Number; } function tier3Count() public view returns (uint){ return tier3Number; } function tier4Count() public view returns (uint){ return tier4Number; } /// View owner address function getOwner() public view returns(address){ return owner; } /// View sale end time function viewSaleEndTime() public view returns(uint) { return saleEndTime; } /// View Buy Price function viewPrice() public view returns(uint){ return buyPrice; } /// Return bought status of user function userBuyStatus(address user) public view returns (bool) { return buyer[user].buyStatus; } /// Return sale status function showSaleStatus() public view returns (bool) { return saleStatus; } /// Return updater address function viewUpdater() public view returns (address) { return updater; } /// Show Buyer Details function claimDetails(address addr) public view returns(uint[] memory amounts, uint[] memory times){ uint len = claim[addr].claimAmounts.length; amounts = new uint[](len); times = new uint[](len); for(uint i = 0; i < len; i++){ amounts[i] = claim[addr].claimAmounts[i]; times[i] = claim[addr].claimTimes[i]; } return (amounts, times); } /// Show USD Price of 1 MATIC function usdPrice(uint amount) external view returns(uint) { uint maticAmt = amount * priceOfMATIC; return maticAmt/100000000; } // Owner Token Withdraw // Only owner can withdraw token function withdrawToken(address tokenAddress, address to, uint amount) public returns(bool) { require(msg.sender == owner, "Only owner"); require(to != address(0), "Cannot send to zero address"); BEP20 token = BEP20(tokenAddress); token.transfer(to, amount); return true; } // Owner wMATIC Withdraw // Only owner can withdraw wMATIC from contract function withdrawMATIC(address payable to, uint amount) public returns(bool) { require(msg.sender == owner, "Only owner"); require(to != address(0), "Cannot send to zero address"); to.transfer(amount); return true; } // Ownership Transfer // Only owner can call this function function transferOwnership(address to) public returns(bool) { require(msg.sender == owner, "Only owner"); require(to != address(0), "Cannot transfer ownership to zero address"); owner = to; emit OwnershipTransferred(to); return true; } // Fallback receive() external payable { emit Received(msg.sender, msg.value); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"","type":"address"},{"indexed":false,"internalType":"uint256","name":"","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"","type":"address"},{"indexed":false,"internalType":"uint256","name":"","type":"uint256"}],"name":"TokensBought","type":"event"},{"inputs":[],"name":"buyPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyPriceDecimal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"buyer","outputs":[{"internalType":"bool","name":"buyStatus","type":"bool"},{"internalType":"uint256","name":"totalTokensBought","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"claimDetails","outputs":[{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"times","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimTokenAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"claimTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"contractAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endSale","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTier1Allocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTier2Allocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTier3Allocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTier4Allocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maticAmt","type":"uint256"}],"name":"getTokens","outputs":[{"internalType":"uint256","name":"tokens","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"busdAmount","type":"uint256"}],"name":"getTokensForBusd","outputs":[{"internalType":"uint256","name":"tokens","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getUserTier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"_time","type":"uint256"}],"name":"indexValueUpdate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"priceOfMATIC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"_times","type":"uint256[]"}],"name":"removeAndUpdateClaims","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saleEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"saleStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"},{"internalType":"uint256","name":"_price_decimal","type":"uint256"}],"name":"setBuyPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setClaimTokenAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_time","type":"uint256"}],"name":"setFirstClaimTime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"setSaleStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTierMemberCount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"setUpdaterAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"showSaleStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"stakeStat","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1Alloc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1Count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1Number","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier2Alloc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier2Count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier2Number","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier3Alloc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier3Count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier3Number","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier4Alloc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier4Count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier4Number","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"time","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalAllocation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"addr","type":"address[]"},{"internalType":"uint256[]","name":"amt","type":"uint256[]"},{"internalType":"uint256[]","name":"at","type":"uint256[]"}],"name":"updateClaimWithSameEntryForMultiAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"_times","type":"uint256[]"}],"name":"updateClaims","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updateLiveMaticPrice","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"multipleAddr","type":"address[]"},{"internalType":"uint256[][]","name":"_multipleAmounts","type":"uint256[][]"},{"internalType":"uint256[][]","name":"_multipleTimes","type":"uint256[][]"}],"name":"updateMultipleClaims","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updater","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"usdPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userAlloc","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"userAllocationLeft","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"userBuyStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"viewPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"viewSaleEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"viewUpdater","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawMATIC","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526040516200001290620003b5565b604051809103906000f0801580156200002f573d6000803e3d6000fd5b50600080546001600160a01b0319166001600160a01b0392909216918217905560408051638c3c9a5560e01b81529051638c3c9a5591600480820192602092909190829003018186803b1580156200008657600080fd5b505afa1580156200009b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c19190620003d1565b600155604051620000d290620003c3565b604051809103906000f080158015620000ef573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b039290921691821790556040805163b662ce3b60e01b8152905163b662ce3b91600480820192602092909190829003018186803b1580156200014657600080fd5b505afa1580156200015b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001819190620003d1565b600355600260009054906101000a90046001600160a01b03166001600160a01b0316637d7617fb6040518163ffffffff1660e01b815260040160206040518083038186803b158015620001d357600080fd5b505afa158015620001e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020e9190620003d1565b60049081556002546040805163171bed6160e11b815290516001600160a01b0390921692632e37dac2928282019260209290829003018186803b1580156200025557600080fd5b505afa1580156200026a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002909190620003d1565b600555600260009054906101000a90046001600160a01b03166001600160a01b031663f727c33a6040518163ffffffff1660e01b815260040160206040518083038186803b158015620002e257600080fd5b505afa158015620002f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031d9190620003d1565b600655694579e7284e1564f00000600755690a6c1cf5d7dc27c8000060085569115ee8cfc922945c0000600955690ed2b525841adfc00000600a55691adc2c3d28fbc90c0000600b55600d80546001600160a01b03199081163317909155600f8054909116301790553480156200039357600080fd5b50601080556014805460ff1916905563619e53706017556064601155620003ea565b6101a1806200349f83390190565b610661806200364083390190565b600060208284031215620003e3578081fd5b5051919050565b6130a580620003fa6000396000f3fe60806040526004361061039b5760003560e01c8063893d20e8116101dc578063cd3212fa11610102578063e0bf0188116100a0578063ed338ff11161006f578063ed338ff114610a56578063f1f7571d14610a6c578063f2fde38b14610a82578063f9020e3314610aa257600080fd5b8063e0bf0188146109eb578063e4d2620e14610a01578063e93f3f8d14610a21578063eafe083e14610a4157600080fd5b8063d6fbe2c3116100dc578063d6fbe2c314610976578063d7dcdcec14610996578063d897833e146109ab578063df034cd0146109cb57600080fd5b8063cd3212fa14610921578063d0c027a214610936578063d3c9cc261461095657600080fd5b8063a9ba24fd1161017a578063c0029d7411610149578063c0029d74146108aa578063c32470ae146108bf578063c677fcb9146108d5578063ccaea9421461090357600080fd5b8063a9ba24fd146107ea578063b63686dc1461080a578063b774820814610820578063bb96aa1d1461087157600080fd5b806392403b35116101b657806392403b3514610798578063a3a7647c146107ad578063a4821719146107c2578063a6be3a62146107ca57600080fd5b8063893d20e81461073a5780638da5cb5b1461075857806391afc4321461077857600080fd5b806346e04a2f116102c15780636cb4f7ff1161025f57806379203dc41161022e57806379203dc4146106e057806380865e9d146106f657806384fddbd71461070e5780638620410b1461072457600080fd5b80636cb4f7ff14610674578063710c36a81461068a57806373e6c7dc146106aa578063784c6d1b146106c057600080fd5b8063521e0f4f1161029b578063521e0f4f1461061357806366565036146106285780636768e6ce146106485780636bc513441461065e57600080fd5b806346e04a2f146105bd5780634ad73da5146105dd5780634cd37362146105f357600080fd5b8063218ea175116103395780633333af8c116103085780633333af8c1461055e57806336ac114614610573578063380d831b146105935780633ea8106f146105a857600080fd5b8063218ea175146104f45780632652ff62146105145780632dcbba951461053457806330cc6c2d1461054957600080fd5b806315a5d9d81161037557806315a5d9d81461047157806316ada547146104a95780631a1564eb146104bf5780631b4d03a2146104df57600080fd5b806301e33667146103df5780631112653b1461041457806312e8e35f1461044f57600080fd5b366103da57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874910160405180910390a1005b600080fd5b3480156103eb57600080fd5b506103ff6103fa366004612c24565b610abc565b60405190151581526020015b60405180910390f35b34801561042057600080fd5b5061044161042f366004612bdd565b600c6020526000908152604090205481565b60405190815260200161040b565b34801561045b57600080fd5b5061046f61046a366004612c64565b610bd9565b005b34801561047d57600080fd5b50600f54610491906001600160a01b031681565b6040516001600160a01b03909116815260200161040b565b3480156104b557600080fd5b5061044160175481565b3480156104cb57600080fd5b50600e54610491906001600160a01b031681565b3480156104eb57600080fd5b50600654610441565b34801561050057600080fd5b5061044161050f366004612e0f565b610d57565b34801561052057600080fd5b5061046f61052f366004612c64565b610d7a565b34801561054057600080fd5b50600854610441565b34801561055557600080fd5b50600b54610441565b34801561056a57600080fd5b50600554610441565b34801561057f57600080fd5b5061046f61058e366004612cd7565b610e9a565b34801561059f57600080fd5b506103ff610f7c565b3480156105b457600080fd5b506103ff610fbd565b3480156105c957600080fd5b506103ff6105d8366004612e0f565b61104e565b3480156105e957600080fd5b5061044160045481565b3480156105ff57600080fd5b5061046f61060e366004612e0f565b6112f6565b34801561061f57600080fd5b5061046f611325565b34801561063457600080fd5b5061046f610643366004612d8b565b611558565b34801561065457600080fd5b5061044160035481565b34801561066a57600080fd5b50610441600a5481565b34801561068057600080fd5b5061044160095481565b34801561069657600080fd5b506104416106a5366004612e0f565b611701565b3480156106b657600080fd5b5061044160085481565b3480156106cc57600080fd5b506103ff6106db366004612bdd565b611729565b3480156106ec57600080fd5b5061044160075481565b34801561070257600080fd5b5060145460ff166103ff565b34801561071a57600080fd5b50610441600b5481565b34801561073057600080fd5b5061044160105481565b34801561074657600080fd5b50600d546001600160a01b0316610491565b34801561076457600080fd5b50600d54610491906001600160a01b031681565b34801561078457600080fd5b5061046f610793366004612bdd565b61177c565b3480156107a457600080fd5b50600454610441565b3480156107b957600080fd5b50600354610441565b6103ff6117c8565b3480156107d657600080fd5b506103ff6107e5366004612bf9565b61218b565b3480156107f657600080fd5b506103ff610805366004612bdd565b61224e565b34801561081657600080fd5b5061044160015481565b34801561082c57600080fd5b5061085a61083b366004612bdd565b6012602052600090815260409020805460019091015460ff9091169082565b60408051921515835260208301919091520161040b565b34801561087d57600080fd5b506103ff61088c366004612bdd565b6001600160a01b031660009081526012602052604090205460ff1690565b3480156108b657600080fd5b50600954610441565b3480156108cb57600080fd5b5061044160115481565b3480156108e157600080fd5b506108f56108f0366004612bdd565b6122cf565b60405161040b929190612e9a565b34801561090f57600080fd5b506016546001600160a01b0316610491565b34801561092d57600080fd5b50600a54610441565b34801561094257600080fd5b5061046f610951366004612d11565b6124a3565b34801561096257600080fd5b50610441610971366004612e0f565b612759565b34801561098257600080fd5b50610441610991366004612bdd565b612791565b3480156109a257600080fd5b50601054610441565b3480156109b757600080fd5b506103ff6109c6366004612dd7565b612869565b3480156109d757600080fd5b50601654610491906001600160a01b031681565b3480156109f757600080fd5b5061044160055481565b348015610a0d57600080fd5b50610441610a1c366004612bdd565b6128ad565b348015610a2d57600080fd5b5061046f610a3c366004612e3f565b61292b565b348015610a4d57600080fd5b50601554610441565b348015610a6257600080fd5b5061044160155481565b348015610a7857600080fd5b5061044160065481565b348015610a8e57600080fd5b506103ff610a9d366004612bdd565b612960565b348015610aae57600080fd5b506014546103ff9060ff1681565b600d546000906001600160a01b03163314610af25760405162461bcd60e51b8152600401610ae990612f1e565b60405180910390fd5b6001600160a01b038316610b485760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f206164647265737300000000006044820152606401610ae9565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820184905285919082169063a9059cbb90604401602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bcd9190612df3565b50600195945050505050565b6001600160a01b038316600090815260136020526040812090610bfc8282612a4e565b610c0a600183016000612a4e565b50506001600160a01b038381166000908152601360205260409020600d54909116331480610c4257506016546001600160a01b031633145b610c5e5760405162461bcd60e51b8152600401610ae990612ef4565b8151835114610c7f5760405162461bcd60e51b8152600401610ae990612ec8565b825160005b81811015610d2c5782600001858281518110610cb057634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001818101855560009485529290932090920191909155845190840190859083908110610cfb57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181018455600093845291909220015580610d2481613005565b915050610c84565b5050506001600160a01b039092166000908152601260205260409020805460ff191660011790555050565b600060115460105483610d6a9190612faf565b610d749190612fcf565b92915050565b6001600160a01b038381166000908152601360205260409020600d54909116331480610db057506016546001600160a01b031633145b610dcc5760405162461bcd60e51b8152600401610ae990612ef4565b8151835114610ded5760405162461bcd60e51b8152600401610ae990612ec8565b825160005b81811015610d2c5782600001858281518110610e1e57634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001818101855560009485529290932090920191909155845190840190859083908110610e6957634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181018455600093845291909220015580610e9281613005565b915050610df2565b600d546001600160a01b0316331480610ebd57506016546001600160a01b031633145b610ed95760405162461bcd60e51b8152600401610ae990612ef4565b6001600160a01b0384166000908152601360205260409020805483919085908110610f1457634e487b7160e01b600052603260045260246000fd5b90600052602060002001819055508060136000866001600160a01b03166001600160a01b031681526020019081526020016000206001018481548110610f6a57634e487b7160e01b600052603260045260246000fd5b60009182526020909120015550505050565b600d546000906001600160a01b03163314610fa95760405162461bcd60e51b8152600401610ae990612f1e565b506014805460ff1916905542601555600190565b60008060009054906101000a90046001600160a01b03166001600160a01b0316638c3c9a556040518163ffffffff1660e01b815260040160206040518083038186803b15801561100c57600080fd5b505afa158015611020573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110449190612e27565b6001908155919050565b600e546000906001600160a01b03166110a95760405162461bcd60e51b815260206004820152601b60248201527f436c61696d20746f6b656e2061646472657373206e6f742073657400000000006044820152606401610ae9565b600e5433600090815260136020526040812080546001600160a01b03909316929091908290869081106110ec57634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910154338352601290915260409091205490915060ff1615156001146111575760405162461bcd60e51b81526020600482015260156024820152744e6f7420626f7567687420616e7920746f6b656e7360581b6044820152606401610ae9565b81600101858154811061117a57634e487b7160e01b600052603260045260246000fd5b906000526020600020015442116111cc5760405162461bcd60e51b815260206004820152601660248201527510db185a5b481d1a5b59481b9bdd081c995858da195960521b6044820152606401610ae9565b8160000185815481106111ef57634e487b7160e01b600052603260045260246000fd5b90600052602060002001546000141561123c5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e4818db185a5b5959608a1b6044820152606401610ae9565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b15801561128457600080fd5b505af1158015611298573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112bc9190612df3565b508160000185815481106112e057634e487b7160e01b600052603260045260246000fd5b6000918252602082200155506001949350505050565b600d546001600160a01b031633146113205760405162461bcd60e51b8152600401610ae990612f1e565b601755565b600d546001600160a01b0316331461134f5760405162461bcd60e51b8152600401610ae990612f1e565b600260009054906101000a90046001600160a01b03166001600160a01b031663b662ce3b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561139d57600080fd5b505afa1580156113b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d59190612e27565b60035560025460408051637d7617fb60e01b815290516001600160a01b0390921691637d7617fb91600480820192602092909190829003018186803b15801561141d57600080fd5b505afa158015611431573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114559190612e27565b60049081556002546040805163171bed6160e11b815290516001600160a01b0390921692632e37dac2928282019260209290829003018186803b15801561149b57600080fd5b505afa1580156114af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d39190612e27565b60055560025460408051637b93e19d60e11b815290516001600160a01b039092169163f727c33a91600480820192602092909190829003018186803b15801561151b57600080fd5b505afa15801561152f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115539190612e27565b600655565b600d546001600160a01b031633148061157b57506016546001600160a01b031633145b6115975760405162461bcd60e51b8152600401610ae990612ef4565b80518251146115b85760405162461bcd60e51b8152600401610ae990612ec8565b60005b83518110156116fb5760008482815181106115e657634e487b7160e01b600052603260045260246000fd5b6020026020010151905060005b84518110156116c6576001600160a01b0382166000908152601360205260409020855186908390811061163657634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181810185556000948552838520909101919091556001600160a01b038516835260139091526040909120855191019085908390811061169557634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001810184556000938452919092200155806116be81613005565b9150506115f3565b506001600160a01b03166000908152601260205260409020805460ff19166001179055806116f381613005565b9150506115bb565b50505050565b600080600154836117129190612fcf565b90506117226305f5e10082612faf565b9392505050565b600d546000906001600160a01b031633146117565760405162461bcd60e51b8152600401610ae990612f1e565b50600e80546001600160a01b0319166001600160a01b0392909216919091179055600190565b600d546001600160a01b031633146117a65760405162461bcd60e51b8152600401610ae990612f1e565b601680546001600160a01b0319166001600160a01b0392909216919091179055565b6002546040516321cf208760e01b815233600482015260009182916001600160a01b03909116906321cf20879060240160206040518083038186803b15801561181057600080fd5b505afa158015611824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118489190612df3565b9050336000611856826128ad565b905060006010546011546305f5e10061186f9190612faf565b60015461187c9034612fcf565b6118869190612faf565b6118909190612faf565b9050600060646118a183600a612fcf565b6118ab9190612faf565b60145490915060ff1615156001146119055760405162461bcd60e51b815260206004820181905260248201527f53616c65206e6f742073746172746564206f72206861732066696e69736865646044820152606401610ae9565b600034116119425760405162461bcd60e51b815260206004820152600a6024820152695a65726f2076616c756560b01b6044820152606401610ae9565b6001851515146119815760405162461bcd60e51b815260206004820152600a602482015269139bdd081cdd185ad95960b21b6044820152606401610ae9565b82611aaa576001600160a01b0384166000908152600c6020526040902054611a49576003546008546119b39190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723160501b6044820152606401610ae9565b6001600160a01b0384166000908152600c602052604081208054849290611a3e908490612fee565b90915550611dc69050565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b81526020600482015260166024820152752ab9b2b91020b63637b1b0ba34b7b71022b93937b91960511b6044820152606401610ae9565b8260011415611ba4576001600160a01b0384166000908152600c6020526040902054611b4357600454600954611ae09190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723360501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b8152602060048201526016602482015275155cd95c88105b1b1bd8d85d1a5bdb88115c9c9bdc8d60521b6044820152606401610ae9565b8260021415611c9e576001600160a01b0384166000908152600c6020526040902054611c3d57600554600a54611bda9190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723560501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b81526020600482015260166024820152752ab9b2b91020b63637b1b0ba34b7b71022b93937b91b60511b6044820152606401610ae9565b8260031415611dc6576001600160a01b0384166000908152600c6020526040902054611d3757600654600b54611cd49190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723760501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611d985760405162461bcd60e51b81526020600482015260166024820152750aae6cae44082d8d8dec6c2e8d2dedc408ae4e4dee4760531b6044820152606401610ae9565b6001600160a01b0384166000908152600c602052604081208054849290611dc0908490612fee565b90915550505b6001600160a01b0384166000818152601360209081526040822080546001818101835582855283852091820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455909101869055601780549282018054928301815580865293852090910191909155929091529054611e909062093a80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611ed29062127500612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f1490621baf80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f56906224ea00612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f9890622e2480612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611fda9062375f00612f97565b81546001818101845560009384526020808520909201929092556001600160a01b038716835260139052604090912060175491019061201c9062409980612f97565b81546001818101845560009384526020808520909201929092556001600160a01b038716835260139052604090912060175491019061205e906249d400612f97565b81546001818101845560009384526020808520909201929092556001600160a01b03871683526013905260409091206017549101906120a09062530e80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168084526012808352604080862081518083019092528882524282860190815260028083018054808a018255908a52878a2094519102909301928355519186019190915591855290915201805484929061211e908490612f97565b90915550506001600160a01b038416600081815260126020908152604091829020805460ff19166001179055815192835282018490527f745f661b8143944fb883f50694ebed3a871e43c451d9d4bf4648a9d551d7e47a910160405180910390a160019550505050505090565b600d546000906001600160a01b031633146121b85760405162461bcd60e51b8152600401610ae990612f1e565b6001600160a01b03831661220e5760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f206164647265737300000000006044820152606401610ae9565b6040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015612244573d6000803e3d6000fd5b5060019392505050565b6002546040516321cf208760e01b81526001600160a01b03838116600483015260009283929116906321cf20879060240160206040518083038186803b15801561229757600080fd5b505afa1580156122ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117229190612df3565b6001600160a01b03811660009081526013602052604090205460609081908067ffffffffffffffff81111561231457634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561233d578160200160208202803683370190505b5092508067ffffffffffffffff81111561236757634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015612390578160200160208202803683370190505b50915060005b8181101561249c576001600160a01b03851660009081526013602052604090208054829081106123d657634e487b7160e01b600052603260045260246000fd5b906000526020600020015484828151811061240157634e487b7160e01b600052603260045260246000fd5b60200260200101818152505060136000866001600160a01b03166001600160a01b03168152602001908152602001600020600101818154811061245457634e487b7160e01b600052603260045260246000fd5b906000526020600020015483828151811061247f57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061249481613005565b915050612396565b5050915091565b600d546001600160a01b03163314806124c657506016546001600160a01b031633145b6124e25760405162461bcd60e51b8152600401610ae990612ef4565b81518351146125035760405162461bcd60e51b8152600401610ae990612ec8565b80518251146125245760405162461bcd60e51b8152600401610ae990612ec8565b825160005b818110156127525782818151811061255157634e487b7160e01b600052603260045260246000fd5b60200260200101515184828151811061257a57634e487b7160e01b600052603260045260246000fd5b602002602001015151146125a05760405162461bcd60e51b8152600401610ae990612ec8565b60008582815181106125c257634e487b7160e01b600052603260045260246000fd5b60200260200101519050600060136000836001600160a01b03166001600160a01b031681526020019081526020016000209050600086848151811061261757634e487b7160e01b600052603260045260246000fd5b602002602001015151905060005b8181101561271b578260000188868151811061265157634e487b7160e01b600052603260045260246000fd5b6020026020010151828151811061267857634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825460018181018555600094855292909320909201919091558751908401908890879081106126c357634e487b7160e01b600052603260045260246000fd5b602002602001015182815181106126ea57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825460018101845560009384529190922001558061271381613005565b915050612625565b5050506001600160a01b03166000908152601260205260409020805460ff191660011790558061274a81613005565b915050612529565b5050505050565b60006010546011546305f5e1006127709190612faf565b60015461277d9085612fcf565b6127879190612faf565b610d749190612faf565b60008061279d836128ad565b905060006127aa8461224e565b9050806127ba5760009250612862565b6001600160a01b03841660009081526012602052604090205460ff1661284657816127f6576003546008546127ef9190612faf565b9250612862565b816001141561280f576004546009546127ef9190612faf565b816002141561282857600554600a546127ef9190612faf565b816003141561284157600654600b546127ef9190612faf565b612862565b6001600160a01b0384166000908152600c602052604090205492505b5050919050565b600d546000906001600160a01b031633146128965760405162461bcd60e51b8152600401610ae990612f1e565b506014805460ff1916911515919091179055600190565b600254604051630e5b649760e01b81526001600160a01b0383811660048301526000921690630e5b64979060240160206040518083038186803b1580156128f357600080fd5b505afa158015612907573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d749190612e27565b600d546001600160a01b031633146129555760405162461bcd60e51b8152600401610ae990612f1e565b601091909155601155565b600d546000906001600160a01b0316331461298d5760405162461bcd60e51b8152600401610ae990612f1e565b6001600160a01b0382166129f55760405162461bcd60e51b815260206004820152602960248201527f43616e6e6f74207472616e73666572206f776e65727368697020746f207a65726044820152686f206164647265737360b81b6064820152608401610ae9565b600d80546001600160a01b0319166001600160a01b0384169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1506001919050565b5080546000825590600052602060002090810190612a6c9190612a6f565b50565b5b80821115612a845760008155600101612a70565b5090565b600082601f830112612a98578081fd5b81356020612aad612aa883612f73565b612f42565b80838252828201915082860187848660051b8901011115612acc578586fd5b855b85811015612af3578135612ae18161304c565b84529284019290840190600101612ace565b5090979650505050505050565b600082601f830112612b10578081fd5b81356020612b20612aa883612f73565b80838252828201915082860187848660051b8901011115612b3f578586fd5b855b85811015612af357813567ffffffffffffffff811115612b5f578788fd5b612b6d8a87838c0101612b80565b8552509284019290840190600101612b41565b600082601f830112612b90578081fd5b81356020612ba0612aa883612f73565b80838252828201915082860187848660051b8901011115612bbf578586fd5b855b85811015612af357813584529284019290840190600101612bc1565b600060208284031215612bee578081fd5b81356117228161304c565b60008060408385031215612c0b578081fd5b8235612c168161304c565b946020939093013593505050565b600080600060608486031215612c38578081fd5b8335612c438161304c565b92506020840135612c538161304c565b929592945050506040919091013590565b600080600060608486031215612c78578283fd5b8335612c838161304c565b9250602084013567ffffffffffffffff80821115612c9f578384fd5b612cab87838801612b80565b93506040860135915080821115612cc0578283fd5b50612ccd86828701612b80565b9150509250925092565b60008060008060808587031215612cec578081fd5b8435612cf78161304c565b966020860135965060408601359560600135945092505050565b600080600060608486031215612d25578283fd5b833567ffffffffffffffff80821115612d3c578485fd5b612d4887838801612a88565b94506020860135915080821115612d5d578384fd5b612d6987838801612b00565b93506040860135915080821115612d7e578283fd5b50612ccd86828701612b00565b600080600060608486031215612d9f578283fd5b833567ffffffffffffffff80821115612db6578485fd5b612dc287838801612a88565b94506020860135915080821115612c9f578384fd5b600060208284031215612de8578081fd5b813561172281613061565b600060208284031215612e04578081fd5b815161172281613061565b600060208284031215612e20578081fd5b5035919050565b600060208284031215612e38578081fd5b5051919050565b60008060408385031215612e51578182fd5b50508035926020909101359150565b6000815180845260208085019450808401835b83811015612e8f57815187529582019590820190600101612e73565b509495945050505050565b604081526000612ead6040830185612e60565b8281036020840152612ebf8185612e60565b95945050505050565b60208082526012908201527120b93930bc903632b733ba341032b93937b960711b604082015260600190565b60208082526010908201526f2832b936b4b9b9b4b7b71032b93937b960811b604082015260600190565b6020808252600a908201526927b7363c9037bbb732b960b11b604082015260600190565b604051601f8201601f1916810167ffffffffffffffff81118282101715612f6b57612f6b613036565b604052919050565b600067ffffffffffffffff821115612f8d57612f8d613036565b5060051b60200190565b60008219821115612faa57612faa613020565b500190565b600082612fca57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612fe957612fe9613020565b500290565b60008282101561300057613000613020565b500390565b600060001982141561301957613019613020565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114612a6c57600080fd5b8015158114612a6c57600080fdfea26469706673582212201cb1e2fcf169b0d9e4dd584a4fab980cd1f884f04c7009fff1ab851947f8c82e64736f6c63430008040033608060405234801561001057600080fd5b50600080546001600160a01b03191673ab594600376ec9fd91f8e885dadf0ce036862de017905561015b806100466000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638c3c9a5514610030575b600080fd5b61003861004a565b60405190815260200160405180910390f35b60008060008060008060008054906101000a90046001600160a01b03166001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b15801561009f57600080fd5b505afa1580156100b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d791906100e6565b50919998505050505050505050565b600080600080600060a086880312156100fd578081fd5b505083516020850151604086015160608701516080909701519298919750959450909250905056fea26469706673582212209aaf86cee94f5273ef8ef92849f06131fc0b6fcda1887a2fdb726f136cd13c4b64736f6c63430008040033608060405234801561001057600080fd5b50600080546001600160a01b031916731843ec59c04ffbf349e21abd317f6ec874dcac9f17905561061b806100466000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80637d7617fb1161005b5780637d7617fb146100d3578063b662ce3b146100db578063e2f1a254146100e3578063f727c33a1461010e57600080fd5b80630e5b64971461008257806321cf2087146100a85780632e37dac2146100cb575b600080fd5b61009561009036600461042d565b610116565b6040519081526020015b60405180910390f35b6100bb6100b636600461042d565b6101ac565b604051901515815260200161009f565b610095610230565b6100956102bc565b61009561030b565b6000546100f6906001600160a01b031681565b6040516001600160a01b03909116815260200161009f565b61009561035a565b600080546040516324a92f9f60e01b81526001600160a01b038481166004830152839283928392839216906324a92f9f9060240160006040518083038186803b15801561016257600080fd5b505afa158015610176573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261019e919081019061048d565b509198975050505050505050565b6000805460405163409b86c960e11b81526001600160a01b038481166004830152909116906381370d929060240160206040518083038186803b1580156101f257600080fd5b505afa158015610206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022a919061045b565b92915050565b60008060009054906101000a90046001600160a01b03166001600160a01b031663317b06ee6040518163ffffffff1660e01b815260040160206040518083038186803b15801561027f57600080fd5b505afa158015610293573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b79190610475565b905090565b60008060009054906101000a90046001600160a01b03166001600160a01b031663078ad9b06040518163ffffffff1660e01b815260040160206040518083038186803b15801561027f57600080fd5b60008060009054906101000a90046001600160a01b03166001600160a01b031663016078236040518163ffffffff1660e01b815260040160206040518083038186803b15801561027f57600080fd5b60008060009054906101000a90046001600160a01b03166001600160a01b0316639599b1836040518163ffffffff1660e01b815260040160206040518083038186803b15801561027f57600080fd5b600082601f8301126103b9578081fd5b815160206103ce6103c9836105ab565b61057a565b80838252828201915082860187848660051b89010111156103ed578586fd5b855b8581101561040b578151845292840192908401906001016103ef565b5090979650505050505050565b8051801515811461042857600080fd5b919050565b60006020828403121561043e578081fd5b81356001600160a01b0381168114610454578182fd5b9392505050565b60006020828403121561046c578081fd5b61045482610418565b600060208284031215610486578081fd5b5051919050565b600080600080608085870312156104a2578283fd5b8451935060208086015167ffffffffffffffff808211156104c1578586fd5b6104cd89838a016103a9565b955060408801519150808211156104e2578485fd5b6104ee89838a016103a9565b94506060880151915080821115610503578384fd5b508601601f81018813610514578283fd5b80516105226103c9826105ab565b8082825284820191508484018b868560051b8701011115610541578687fd5b8694505b8385101561056a5761055681610418565b835260019490940193918501918501610545565b50979a9699509497505050505050565b604051601f8201601f1916810167ffffffffffffffff811182821017156105a3576105a36105cf565b604052919050565b600067ffffffffffffffff8211156105c5576105c56105cf565b5060051b60200190565b634e487b7160e01b600052604160045260246000fdfea2646970667358221220a3f3d7400167df215971eb596cb89cec93218a91f300390f861d84a75255869e64736f6c63430008040033
Deployed Bytecode
0x60806040526004361061039b5760003560e01c8063893d20e8116101dc578063cd3212fa11610102578063e0bf0188116100a0578063ed338ff11161006f578063ed338ff114610a56578063f1f7571d14610a6c578063f2fde38b14610a82578063f9020e3314610aa257600080fd5b8063e0bf0188146109eb578063e4d2620e14610a01578063e93f3f8d14610a21578063eafe083e14610a4157600080fd5b8063d6fbe2c3116100dc578063d6fbe2c314610976578063d7dcdcec14610996578063d897833e146109ab578063df034cd0146109cb57600080fd5b8063cd3212fa14610921578063d0c027a214610936578063d3c9cc261461095657600080fd5b8063a9ba24fd1161017a578063c0029d7411610149578063c0029d74146108aa578063c32470ae146108bf578063c677fcb9146108d5578063ccaea9421461090357600080fd5b8063a9ba24fd146107ea578063b63686dc1461080a578063b774820814610820578063bb96aa1d1461087157600080fd5b806392403b35116101b657806392403b3514610798578063a3a7647c146107ad578063a4821719146107c2578063a6be3a62146107ca57600080fd5b8063893d20e81461073a5780638da5cb5b1461075857806391afc4321461077857600080fd5b806346e04a2f116102c15780636cb4f7ff1161025f57806379203dc41161022e57806379203dc4146106e057806380865e9d146106f657806384fddbd71461070e5780638620410b1461072457600080fd5b80636cb4f7ff14610674578063710c36a81461068a57806373e6c7dc146106aa578063784c6d1b146106c057600080fd5b8063521e0f4f1161029b578063521e0f4f1461061357806366565036146106285780636768e6ce146106485780636bc513441461065e57600080fd5b806346e04a2f146105bd5780634ad73da5146105dd5780634cd37362146105f357600080fd5b8063218ea175116103395780633333af8c116103085780633333af8c1461055e57806336ac114614610573578063380d831b146105935780633ea8106f146105a857600080fd5b8063218ea175146104f45780632652ff62146105145780632dcbba951461053457806330cc6c2d1461054957600080fd5b806315a5d9d81161037557806315a5d9d81461047157806316ada547146104a95780631a1564eb146104bf5780631b4d03a2146104df57600080fd5b806301e33667146103df5780631112653b1461041457806312e8e35f1461044f57600080fd5b366103da57604080513381523460208201527f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874910160405180910390a1005b600080fd5b3480156103eb57600080fd5b506103ff6103fa366004612c24565b610abc565b60405190151581526020015b60405180910390f35b34801561042057600080fd5b5061044161042f366004612bdd565b600c6020526000908152604090205481565b60405190815260200161040b565b34801561045b57600080fd5b5061046f61046a366004612c64565b610bd9565b005b34801561047d57600080fd5b50600f54610491906001600160a01b031681565b6040516001600160a01b03909116815260200161040b565b3480156104b557600080fd5b5061044160175481565b3480156104cb57600080fd5b50600e54610491906001600160a01b031681565b3480156104eb57600080fd5b50600654610441565b34801561050057600080fd5b5061044161050f366004612e0f565b610d57565b34801561052057600080fd5b5061046f61052f366004612c64565b610d7a565b34801561054057600080fd5b50600854610441565b34801561055557600080fd5b50600b54610441565b34801561056a57600080fd5b50600554610441565b34801561057f57600080fd5b5061046f61058e366004612cd7565b610e9a565b34801561059f57600080fd5b506103ff610f7c565b3480156105b457600080fd5b506103ff610fbd565b3480156105c957600080fd5b506103ff6105d8366004612e0f565b61104e565b3480156105e957600080fd5b5061044160045481565b3480156105ff57600080fd5b5061046f61060e366004612e0f565b6112f6565b34801561061f57600080fd5b5061046f611325565b34801561063457600080fd5b5061046f610643366004612d8b565b611558565b34801561065457600080fd5b5061044160035481565b34801561066a57600080fd5b50610441600a5481565b34801561068057600080fd5b5061044160095481565b34801561069657600080fd5b506104416106a5366004612e0f565b611701565b3480156106b657600080fd5b5061044160085481565b3480156106cc57600080fd5b506103ff6106db366004612bdd565b611729565b3480156106ec57600080fd5b5061044160075481565b34801561070257600080fd5b5060145460ff166103ff565b34801561071a57600080fd5b50610441600b5481565b34801561073057600080fd5b5061044160105481565b34801561074657600080fd5b50600d546001600160a01b0316610491565b34801561076457600080fd5b50600d54610491906001600160a01b031681565b34801561078457600080fd5b5061046f610793366004612bdd565b61177c565b3480156107a457600080fd5b50600454610441565b3480156107b957600080fd5b50600354610441565b6103ff6117c8565b3480156107d657600080fd5b506103ff6107e5366004612bf9565b61218b565b3480156107f657600080fd5b506103ff610805366004612bdd565b61224e565b34801561081657600080fd5b5061044160015481565b34801561082c57600080fd5b5061085a61083b366004612bdd565b6012602052600090815260409020805460019091015460ff9091169082565b60408051921515835260208301919091520161040b565b34801561087d57600080fd5b506103ff61088c366004612bdd565b6001600160a01b031660009081526012602052604090205460ff1690565b3480156108b657600080fd5b50600954610441565b3480156108cb57600080fd5b5061044160115481565b3480156108e157600080fd5b506108f56108f0366004612bdd565b6122cf565b60405161040b929190612e9a565b34801561090f57600080fd5b506016546001600160a01b0316610491565b34801561092d57600080fd5b50600a54610441565b34801561094257600080fd5b5061046f610951366004612d11565b6124a3565b34801561096257600080fd5b50610441610971366004612e0f565b612759565b34801561098257600080fd5b50610441610991366004612bdd565b612791565b3480156109a257600080fd5b50601054610441565b3480156109b757600080fd5b506103ff6109c6366004612dd7565b612869565b3480156109d757600080fd5b50601654610491906001600160a01b031681565b3480156109f757600080fd5b5061044160055481565b348015610a0d57600080fd5b50610441610a1c366004612bdd565b6128ad565b348015610a2d57600080fd5b5061046f610a3c366004612e3f565b61292b565b348015610a4d57600080fd5b50601554610441565b348015610a6257600080fd5b5061044160155481565b348015610a7857600080fd5b5061044160065481565b348015610a8e57600080fd5b506103ff610a9d366004612bdd565b612960565b348015610aae57600080fd5b506014546103ff9060ff1681565b600d546000906001600160a01b03163314610af25760405162461bcd60e51b8152600401610ae990612f1e565b60405180910390fd5b6001600160a01b038316610b485760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f206164647265737300000000006044820152606401610ae9565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820184905285919082169063a9059cbb90604401602060405180830381600087803b158015610b9557600080fd5b505af1158015610ba9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bcd9190612df3565b50600195945050505050565b6001600160a01b038316600090815260136020526040812090610bfc8282612a4e565b610c0a600183016000612a4e565b50506001600160a01b038381166000908152601360205260409020600d54909116331480610c4257506016546001600160a01b031633145b610c5e5760405162461bcd60e51b8152600401610ae990612ef4565b8151835114610c7f5760405162461bcd60e51b8152600401610ae990612ec8565b825160005b81811015610d2c5782600001858281518110610cb057634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001818101855560009485529290932090920191909155845190840190859083908110610cfb57634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181018455600093845291909220015580610d2481613005565b915050610c84565b5050506001600160a01b039092166000908152601260205260409020805460ff191660011790555050565b600060115460105483610d6a9190612faf565b610d749190612fcf565b92915050565b6001600160a01b038381166000908152601360205260409020600d54909116331480610db057506016546001600160a01b031633145b610dcc5760405162461bcd60e51b8152600401610ae990612ef4565b8151835114610ded5760405162461bcd60e51b8152600401610ae990612ec8565b825160005b81811015610d2c5782600001858281518110610e1e57634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001818101855560009485529290932090920191909155845190840190859083908110610e6957634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181018455600093845291909220015580610e9281613005565b915050610df2565b600d546001600160a01b0316331480610ebd57506016546001600160a01b031633145b610ed95760405162461bcd60e51b8152600401610ae990612ef4565b6001600160a01b0384166000908152601360205260409020805483919085908110610f1457634e487b7160e01b600052603260045260246000fd5b90600052602060002001819055508060136000866001600160a01b03166001600160a01b031681526020019081526020016000206001018481548110610f6a57634e487b7160e01b600052603260045260246000fd5b60009182526020909120015550505050565b600d546000906001600160a01b03163314610fa95760405162461bcd60e51b8152600401610ae990612f1e565b506014805460ff1916905542601555600190565b60008060009054906101000a90046001600160a01b03166001600160a01b0316638c3c9a556040518163ffffffff1660e01b815260040160206040518083038186803b15801561100c57600080fd5b505afa158015611020573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110449190612e27565b6001908155919050565b600e546000906001600160a01b03166110a95760405162461bcd60e51b815260206004820152601b60248201527f436c61696d20746f6b656e2061646472657373206e6f742073657400000000006044820152606401610ae9565b600e5433600090815260136020526040812080546001600160a01b03909316929091908290869081106110ec57634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910154338352601290915260409091205490915060ff1615156001146111575760405162461bcd60e51b81526020600482015260156024820152744e6f7420626f7567687420616e7920746f6b656e7360581b6044820152606401610ae9565b81600101858154811061117a57634e487b7160e01b600052603260045260246000fd5b906000526020600020015442116111cc5760405162461bcd60e51b815260206004820152601660248201527510db185a5b481d1a5b59481b9bdd081c995858da195960521b6044820152606401610ae9565b8160000185815481106111ef57634e487b7160e01b600052603260045260246000fd5b90600052602060002001546000141561123c5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e4818db185a5b5959608a1b6044820152606401610ae9565b60405163a9059cbb60e01b8152336004820152602481018290526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b15801561128457600080fd5b505af1158015611298573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112bc9190612df3565b508160000185815481106112e057634e487b7160e01b600052603260045260246000fd5b6000918252602082200155506001949350505050565b600d546001600160a01b031633146113205760405162461bcd60e51b8152600401610ae990612f1e565b601755565b600d546001600160a01b0316331461134f5760405162461bcd60e51b8152600401610ae990612f1e565b600260009054906101000a90046001600160a01b03166001600160a01b031663b662ce3b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561139d57600080fd5b505afa1580156113b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d59190612e27565b60035560025460408051637d7617fb60e01b815290516001600160a01b0390921691637d7617fb91600480820192602092909190829003018186803b15801561141d57600080fd5b505afa158015611431573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114559190612e27565b60049081556002546040805163171bed6160e11b815290516001600160a01b0390921692632e37dac2928282019260209290829003018186803b15801561149b57600080fd5b505afa1580156114af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d39190612e27565b60055560025460408051637b93e19d60e11b815290516001600160a01b039092169163f727c33a91600480820192602092909190829003018186803b15801561151b57600080fd5b505afa15801561152f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115539190612e27565b600655565b600d546001600160a01b031633148061157b57506016546001600160a01b031633145b6115975760405162461bcd60e51b8152600401610ae990612ef4565b80518251146115b85760405162461bcd60e51b8152600401610ae990612ec8565b60005b83518110156116fb5760008482815181106115e657634e487b7160e01b600052603260045260246000fd5b6020026020010151905060005b84518110156116c6576001600160a01b0382166000908152601360205260409020855186908390811061163657634e487b7160e01b600052603260045260246000fd5b6020908102919091018101518254600181810185556000948552838520909101919091556001600160a01b038516835260139091526040909120855191019085908390811061169557634e487b7160e01b600052603260045260246000fd5b60209081029190910181015182546001810184556000938452919092200155806116be81613005565b9150506115f3565b506001600160a01b03166000908152601260205260409020805460ff19166001179055806116f381613005565b9150506115bb565b50505050565b600080600154836117129190612fcf565b90506117226305f5e10082612faf565b9392505050565b600d546000906001600160a01b031633146117565760405162461bcd60e51b8152600401610ae990612f1e565b50600e80546001600160a01b0319166001600160a01b0392909216919091179055600190565b600d546001600160a01b031633146117a65760405162461bcd60e51b8152600401610ae990612f1e565b601680546001600160a01b0319166001600160a01b0392909216919091179055565b6002546040516321cf208760e01b815233600482015260009182916001600160a01b03909116906321cf20879060240160206040518083038186803b15801561181057600080fd5b505afa158015611824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118489190612df3565b9050336000611856826128ad565b905060006010546011546305f5e10061186f9190612faf565b60015461187c9034612fcf565b6118869190612faf565b6118909190612faf565b9050600060646118a183600a612fcf565b6118ab9190612faf565b60145490915060ff1615156001146119055760405162461bcd60e51b815260206004820181905260248201527f53616c65206e6f742073746172746564206f72206861732066696e69736865646044820152606401610ae9565b600034116119425760405162461bcd60e51b815260206004820152600a6024820152695a65726f2076616c756560b01b6044820152606401610ae9565b6001851515146119815760405162461bcd60e51b815260206004820152600a602482015269139bdd081cdd185ad95960b21b6044820152606401610ae9565b82611aaa576001600160a01b0384166000908152600c6020526040902054611a49576003546008546119b39190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723160501b6044820152606401610ae9565b6001600160a01b0384166000908152600c602052604081208054849290611a3e908490612fee565b90915550611dc69050565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b81526020600482015260166024820152752ab9b2b91020b63637b1b0ba34b7b71022b93937b91960511b6044820152606401610ae9565b8260011415611ba4576001600160a01b0384166000908152600c6020526040902054611b4357600454600954611ae09190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723360501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b8152602060048201526016602482015275155cd95c88105b1b1bd8d85d1a5bdb88115c9c9bdc8d60521b6044820152606401610ae9565b8260021415611c9e576001600160a01b0384166000908152600c6020526040902054611c3d57600554600a54611bda9190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723560501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611a165760405162461bcd60e51b81526020600482015260166024820152752ab9b2b91020b63637b1b0ba34b7b71022b93937b91b60511b6044820152606401610ae9565b8260031415611dc6576001600160a01b0384166000908152600c6020526040902054611d3757600654600b54611cd49190612faf565b6001600160a01b0385166000908152600c60205260409020819055821115611a165760405162461bcd60e51b81526020600482015260166024820152755573657220616c6c6f636174696f6e206572726f723760501b6044820152606401610ae9565b6001600160a01b0384166000908152600c6020526040902054821115611d985760405162461bcd60e51b81526020600482015260166024820152750aae6cae44082d8d8dec6c2e8d2dedc408ae4e4dee4760531b6044820152606401610ae9565b6001600160a01b0384166000908152600c602052604081208054849290611dc0908490612fee565b90915550505b6001600160a01b0384166000818152601360209081526040822080546001818101835582855283852091820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455820187905582548082018455909101869055601780549282018054928301815580865293852090910191909155929091529054611e909062093a80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611ed29062127500612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f1490621baf80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f56906224ea00612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611f9890622e2480612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168352601390526040909120601754910190611fda9062375f00612f97565b81546001818101845560009384526020808520909201929092556001600160a01b038716835260139052604090912060175491019061201c9062409980612f97565b81546001818101845560009384526020808520909201929092556001600160a01b038716835260139052604090912060175491019061205e906249d400612f97565b81546001818101845560009384526020808520909201929092556001600160a01b03871683526013905260409091206017549101906120a09062530e80612f97565b81546001818101845560009384526020808520909201929092556001600160a01b0387168084526012808352604080862081518083019092528882524282860190815260028083018054808a018255908a52878a2094519102909301928355519186019190915591855290915201805484929061211e908490612f97565b90915550506001600160a01b038416600081815260126020908152604091829020805460ff19166001179055815192835282018490527f745f661b8143944fb883f50694ebed3a871e43c451d9d4bf4648a9d551d7e47a910160405180910390a160019550505050505090565b600d546000906001600160a01b031633146121b85760405162461bcd60e51b8152600401610ae990612f1e565b6001600160a01b03831661220e5760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f206164647265737300000000006044820152606401610ae9565b6040516001600160a01b0384169083156108fc029084906000818181858888f19350505050158015612244573d6000803e3d6000fd5b5060019392505050565b6002546040516321cf208760e01b81526001600160a01b03838116600483015260009283929116906321cf20879060240160206040518083038186803b15801561229757600080fd5b505afa1580156122ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117229190612df3565b6001600160a01b03811660009081526013602052604090205460609081908067ffffffffffffffff81111561231457634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561233d578160200160208202803683370190505b5092508067ffffffffffffffff81111561236757634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015612390578160200160208202803683370190505b50915060005b8181101561249c576001600160a01b03851660009081526013602052604090208054829081106123d657634e487b7160e01b600052603260045260246000fd5b906000526020600020015484828151811061240157634e487b7160e01b600052603260045260246000fd5b60200260200101818152505060136000866001600160a01b03166001600160a01b03168152602001908152602001600020600101818154811061245457634e487b7160e01b600052603260045260246000fd5b906000526020600020015483828151811061247f57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061249481613005565b915050612396565b5050915091565b600d546001600160a01b03163314806124c657506016546001600160a01b031633145b6124e25760405162461bcd60e51b8152600401610ae990612ef4565b81518351146125035760405162461bcd60e51b8152600401610ae990612ec8565b80518251146125245760405162461bcd60e51b8152600401610ae990612ec8565b825160005b818110156127525782818151811061255157634e487b7160e01b600052603260045260246000fd5b60200260200101515184828151811061257a57634e487b7160e01b600052603260045260246000fd5b602002602001015151146125a05760405162461bcd60e51b8152600401610ae990612ec8565b60008582815181106125c257634e487b7160e01b600052603260045260246000fd5b60200260200101519050600060136000836001600160a01b03166001600160a01b031681526020019081526020016000209050600086848151811061261757634e487b7160e01b600052603260045260246000fd5b602002602001015151905060005b8181101561271b578260000188868151811061265157634e487b7160e01b600052603260045260246000fd5b6020026020010151828151811061267857634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825460018181018555600094855292909320909201919091558751908401908890879081106126c357634e487b7160e01b600052603260045260246000fd5b602002602001015182815181106126ea57634e487b7160e01b600052603260045260246000fd5b602090810291909101810151825460018101845560009384529190922001558061271381613005565b915050612625565b5050506001600160a01b03166000908152601260205260409020805460ff191660011790558061274a81613005565b915050612529565b5050505050565b60006010546011546305f5e1006127709190612faf565b60015461277d9085612fcf565b6127879190612faf565b610d749190612faf565b60008061279d836128ad565b905060006127aa8461224e565b9050806127ba5760009250612862565b6001600160a01b03841660009081526012602052604090205460ff1661284657816127f6576003546008546127ef9190612faf565b9250612862565b816001141561280f576004546009546127ef9190612faf565b816002141561282857600554600a546127ef9190612faf565b816003141561284157600654600b546127ef9190612faf565b612862565b6001600160a01b0384166000908152600c602052604090205492505b5050919050565b600d546000906001600160a01b031633146128965760405162461bcd60e51b8152600401610ae990612f1e565b506014805460ff1916911515919091179055600190565b600254604051630e5b649760e01b81526001600160a01b0383811660048301526000921690630e5b64979060240160206040518083038186803b1580156128f357600080fd5b505afa158015612907573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d749190612e27565b600d546001600160a01b031633146129555760405162461bcd60e51b8152600401610ae990612f1e565b601091909155601155565b600d546000906001600160a01b0316331461298d5760405162461bcd60e51b8152600401610ae990612f1e565b6001600160a01b0382166129f55760405162461bcd60e51b815260206004820152602960248201527f43616e6e6f74207472616e73666572206f776e65727368697020746f207a65726044820152686f206164647265737360b81b6064820152608401610ae9565b600d80546001600160a01b0319166001600160a01b0384169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1506001919050565b5080546000825590600052602060002090810190612a6c9190612a6f565b50565b5b80821115612a845760008155600101612a70565b5090565b600082601f830112612a98578081fd5b81356020612aad612aa883612f73565b612f42565b80838252828201915082860187848660051b8901011115612acc578586fd5b855b85811015612af3578135612ae18161304c565b84529284019290840190600101612ace565b5090979650505050505050565b600082601f830112612b10578081fd5b81356020612b20612aa883612f73565b80838252828201915082860187848660051b8901011115612b3f578586fd5b855b85811015612af357813567ffffffffffffffff811115612b5f578788fd5b612b6d8a87838c0101612b80565b8552509284019290840190600101612b41565b600082601f830112612b90578081fd5b81356020612ba0612aa883612f73565b80838252828201915082860187848660051b8901011115612bbf578586fd5b855b85811015612af357813584529284019290840190600101612bc1565b600060208284031215612bee578081fd5b81356117228161304c565b60008060408385031215612c0b578081fd5b8235612c168161304c565b946020939093013593505050565b600080600060608486031215612c38578081fd5b8335612c438161304c565b92506020840135612c538161304c565b929592945050506040919091013590565b600080600060608486031215612c78578283fd5b8335612c838161304c565b9250602084013567ffffffffffffffff80821115612c9f578384fd5b612cab87838801612b80565b93506040860135915080821115612cc0578283fd5b50612ccd86828701612b80565b9150509250925092565b60008060008060808587031215612cec578081fd5b8435612cf78161304c565b966020860135965060408601359560600135945092505050565b600080600060608486031215612d25578283fd5b833567ffffffffffffffff80821115612d3c578485fd5b612d4887838801612a88565b94506020860135915080821115612d5d578384fd5b612d6987838801612b00565b93506040860135915080821115612d7e578283fd5b50612ccd86828701612b00565b600080600060608486031215612d9f578283fd5b833567ffffffffffffffff80821115612db6578485fd5b612dc287838801612a88565b94506020860135915080821115612c9f578384fd5b600060208284031215612de8578081fd5b813561172281613061565b600060208284031215612e04578081fd5b815161172281613061565b600060208284031215612e20578081fd5b5035919050565b600060208284031215612e38578081fd5b5051919050565b60008060408385031215612e51578182fd5b50508035926020909101359150565b6000815180845260208085019450808401835b83811015612e8f57815187529582019590820190600101612e73565b509495945050505050565b604081526000612ead6040830185612e60565b8281036020840152612ebf8185612e60565b95945050505050565b60208082526012908201527120b93930bc903632b733ba341032b93937b960711b604082015260600190565b60208082526010908201526f2832b936b4b9b9b4b7b71032b93937b960811b604082015260600190565b6020808252600a908201526927b7363c9037bbb732b960b11b604082015260600190565b604051601f8201601f1916810167ffffffffffffffff81118282101715612f6b57612f6b613036565b604052919050565b600067ffffffffffffffff821115612f8d57612f8d613036565b5060051b60200190565b60008219821115612faa57612faa613020565b500190565b600082612fca57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612fe957612fe9613020565b500290565b60008282101561300057613000613020565b500390565b600060001982141561301957613019613020565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114612a6c57600080fd5b8015158114612a6c57600080fdfea26469706673582212201cb1e2fcf169b0d9e4dd584a4fab980cd1f884f04c7009fff1ab851947f8c82e64736f6c63430008040033
Deployed Bytecode Sourcemap
3796:17230:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20984:31;;;20993:10;8471:51:1;;21005:9:0;8553:2:1;8538:18;;8531:34;20984:31:0;;8444:18:1;20984:31:0;;;;;;;3796:17230;;;;;19872:322;;;;;;;;;;-1:-1:-1;19872:322:0;;;;;:::i;:::-;;:::i;:::-;;;9211:14:1;;9204:22;9186:41;;9174:2;9159:18;19872:322:0;;;;;;;;4788:41;;;;;;;;;;-1:-1:-1;4788:41:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;16692:25:1;;;16680:2;16665:18;4788:41:0;16647:76:1;15492:556:0;;;;;;;;;;-1:-1:-1;15492:556:0;;;;;:::i;:::-;;:::i;:::-;;4919:43;;;;;;;;;;-1:-1:-1;4919:43:0;;;;-1:-1:-1;;;;;4919:43:0;;;;;;-1:-1:-1;;;;;8253:32:1;;;8235:51;;8223:2;8208:18;4919:43:0;8190:102:1;5201:16:0;;;;;;;;;;;;;;;;4876:29;;;;;;;;;;-1:-1:-1;4876:29:0;;;;-1:-1:-1;;;;;4876:29:0;;;18258:85;;;;;;;;;;-1:-1:-1;18324:11:0;;18258:85;;10920:177;;;;;;;;;;-1:-1:-1;10920:177:0;;;;;:::i;:::-;;:::i;13142:518::-;;;;;;;;;;-1:-1:-1;13142:518:0;;;;;:::i;:::-;;:::i;16600:92::-;;;;;;;;;;-1:-1:-1;16674:10:0;;16600:92;;16912;;;;;;;;;;-1:-1:-1;16986:10:0;;16912:92;;18161:85;;;;;;;;;;-1:-1:-1;18227:11:0;;18161:85;;16111:275;;;;;;;;;;-1:-1:-1;16111:275:0;;;;;:::i;:::-;;:::i;11770:193::-;;;;;;;;;;;;;:::i;5710:142::-;;;;;;;;;;;;;:::i;12427:639::-;;;;;;;;;;-1:-1:-1;12427:639:0;;;;;:::i;:::-;;:::i;4368:49::-;;;;;;;;;;;;;;;;12231:130;;;;;;;;;;-1:-1:-1;12231:130:0;;;;;:::i;:::-;;:::i;10336:302::-;;;;;;;;;;;;;:::i;14802:622::-;;;;;;;;;;-1:-1:-1;14802:622:0;;;;;:::i;:::-;;:::i;4312:49::-;;;;;;;;;;;;;;;;4689:39;;;;;;;;;;;;;;;;4643;;;;;;;;;;;;;;;;19637:151;;;;;;;;;;-1:-1:-1;19637:151:0;;;;;:::i;:::-;;:::i;4597:39::-;;;;;;;;;;;;;;;;12008:180;;;;;;;;;;-1:-1:-1;12008:180:0;;;;;:::i;:::-;;:::i;4545:45::-;;;;;;;;;;;;;;;;18909:89;;;;;;;;;;-1:-1:-1;18980:10:0;;;;18909:89;;4735:40;;;;;;;;;;;;;;;;4969:20;;;;;;;;;;;;;;;;18383:79;;;;;;;;;;-1:-1:-1;18449:5:0;;-1:-1:-1;;;;;18449:5:0;18383:79;;4836:33;;;;;;;;;;-1:-1:-1;4836:33:0;;;;-1:-1:-1;;;;;4836:33:0;;;16427:130;;;;;;;;;;-1:-1:-1;16427:130:0;;;;;:::i;:::-;;:::i;18064:85::-;;;;;;;;;;-1:-1:-1;18130:11:0;;18064:85;;17967;;;;;;;;;;-1:-1:-1;18033:11:0;;17967:85;;6124:3892;;;:::i;20289:257::-;;;;;;;;;;-1:-1:-1;20289:257:0;;;;;:::i;:::-;;:::i;11486:145::-;;;;;;;;;;-1:-1:-1;11486:145:0;;;;;:::i;:::-;;:::i;3888:56::-;;;;;;;;;;;;;;;;5030:38;;;;;;;;;;-1:-1:-1;5030:38:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9431:14:1;;9424:22;9406:41;;9478:2;9463:18;;9456:34;;;;9379:18;5030:38:0;9361:135:1;18758:111:0;;;;;;;;;;-1:-1:-1;18758:111:0;;;;;:::i;:::-;-1:-1:-1;;;;;18840:11:0;18816:4;18840:11;;;:5;:11;;;;;:21;;;;18758:111;16704:92;;;;;;;;;;-1:-1:-1;16778:10:0;;16704:92;;4996:27;;;;;;;;;;;;;;;;19168:421;;;;;;;;;;-1:-1:-1;19168:421:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;19042:86::-;;;;;;;;;;-1:-1:-1;19113:7:0;;-1:-1:-1;;;;;19113:7:0;19042:86;;16808:92;;;;;;;;;;-1:-1:-1;16882:10:0;;16808:92;;13739:1003;;;;;;;;;;-1:-1:-1;13739:1003:0;;;;;:::i;:::-;;:::i;10684:195::-;;;;;;;;;;-1:-1:-1;10684:195:0;;;;;:::i;:::-;;:::i;17050:870::-;;;;;;;;;;-1:-1:-1;17050:870:0;;;;;:::i;:::-;;:::i;18628:80::-;;;;;;;;;;-1:-1:-1;18692:8:0;;18628:80;;11277:171;;;;;;;;;;-1:-1:-1;11277:171:0;;;;;:::i;:::-;;:::i;5172:22::-;;;;;;;;;;-1:-1:-1;5172:22:0;;;;-1:-1:-1;;;;;5172:22:0;;;4424:51;;;;;;;;;;;;;;;;5583:115;;;;;;;;;;-1:-1:-1;5583:115:0;;;;;:::i;:::-;;:::i;10125:193::-;;;;;;;;;;-1:-1:-1;10125:193:0;;;;;:::i;:::-;;:::i;18502:90::-;;;;;;;;;;-1:-1:-1;18573:11:0;;18502:90;;5142:23;;;;;;;;;;;;;;;;4482:50;;;;;;;;;;;;;;;;20627:285;;;;;;;;;;-1:-1:-1;20627:285:0;;;;;:::i;:::-;;:::i;5113:22::-;;;;;;;;;;-1:-1:-1;5113:22:0;;;;;;;;19872:322;19996:5;;19957:4;;-1:-1:-1;;;;;19996:5:0;19982:10;:19;19974:42;;;;-1:-1:-1;;;19974:42:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;20035:16:0;;20027:56;;;;-1:-1:-1;;;20027:56:0;;13237:2:1;20027:56:0;;;13219:21:1;13276:2;13256:18;;;13249:30;13315:29;13295:18;;;13288:57;13362:18;;20027:56:0;13209:177:1;20027:56:0;20138:26;;-1:-1:-1;;;20138:26:0;;-1:-1:-1;;;;;8489:32:1;;;20138:26:0;;;8471:51:1;8538:18;;;8531:34;;;20114:12:0;;20138:14;;;;;;8444:18:1;;20138:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;20182:4:0;;19872:322;-1:-1:-1;;;;;19872:322:0:o;15492:556::-;-1:-1:-1;;;;;15608:11:0;;;;;;:5;:11;;;;;;15601:18;15608:11;;15601:18;:::i;:::-;;;;;;;:::i;:::-;-1:-1:-1;;;;;;;15650:11:0;;;15630:17;15650:11;;;:5;:11;;;;;15694:5;;15650:11;;15694:5;15680:10;:19;;:44;;-1:-1:-1;15717:7:0;;-1:-1:-1;;;;;15717:7:0;15703:10;:21;15680:44;15672:73;;;;-1:-1:-1;;;15672:73:0;;;;;;;:::i;:::-;15783:6;:13;15764:8;:15;:32;15756:63;;;;-1:-1:-1;;;15756:63:0;;;;;;;:::i;:::-;15841:15;;15830:8;15867:135;15887:3;15883:1;:7;15867:135;;;15911:3;:16;;15933:8;15942:1;15933:11;;;;;;-1:-1:-1;;;15933:11:0;;;;;;;;;;;;;;;;;;;;15911:34;;;;;;;;-1:-1:-1;15911:34:0;;;;;;;;;;;;;;15980:9;;15960:14;;;;15980:6;;15987:1;;15980:9;;;;-1:-1:-1;;;15980:9:0;;;;;;;;;;;;;;;;;;;;15960:30;;;;;;;-1:-1:-1;15960:30:0;;;;;;;;;15892:3;;;;:::i;:::-;;;;15867:135;;;-1:-1:-1;;;;;;;;16012:11:0;;;;;;;:5;:11;;;;;:28;;-1:-1:-1;;16012:28:0;16036:4;16012:28;;;-1:-1:-1;;15492:556:0:o;10920:177::-;10983:11;11050:15;;11039:8;;11026:10;:21;;;;:::i;:::-;:39;;;;:::i;:::-;11017:48;10920:177;-1:-1:-1;;10920:177:0:o;13142:518::-;-1:-1:-1;;;;;13262:11:0;;;13242:17;13262:11;;;:5;:11;;;;;13306:5;;13262:11;;13306:5;13292:10;:19;;:44;;-1:-1:-1;13329:7:0;;-1:-1:-1;;;;;13329:7:0;13315:10;:21;13292:44;13284:73;;;;-1:-1:-1;;;13284:73:0;;;;;;;:::i;:::-;13395:6;:13;13376:8;:15;:32;13368:63;;;;-1:-1:-1;;;13368:63:0;;;;;;;:::i;:::-;13453:15;;13442:8;13479:135;13499:3;13495:1;:7;13479:135;;;13523:3;:16;;13545:8;13554:1;13545:11;;;;;;-1:-1:-1;;;13545:11:0;;;;;;;;;;;;;;;;;;;;13523:34;;;;;;;;-1:-1:-1;13523:34:0;;;;;;;;;;;;;;13592:9;;13572:14;;;;13592:6;;13599:1;;13592:9;;;;-1:-1:-1;;;13592:9:0;;;;;;;;;;;;;;;;;;;;13572:30;;;;;;;-1:-1:-1;13572:30:0;;;;;;;;;13504:3;;;;:::i;:::-;;;;13479:135;;16111:275;16228:5;;-1:-1:-1;;;;;16228:5:0;16214:10;:19;;:44;;-1:-1:-1;16251:7:0;;-1:-1:-1;;;;;16251:7:0;16237:10;:21;16214:44;16206:73;;;;-1:-1:-1;;;16206:73:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16290:11:0;;;;;;:5;:11;;;;;:31;;16324:6;;16290:11;16315:5;;16290:31;;;;-1:-1:-1;;;16290:31:0;;;;;;;;;;;;;;;;:40;;;;16373:5;16341;:11;16347:4;-1:-1:-1;;;;;16341:11:0;-1:-1:-1;;;;;16341:11:0;;;;;;;;;;;;:22;;16364:5;16341:29;;;;;;-1:-1:-1;;;16341:29:0;;;;;;;;;;;;;;;;;;:37;-1:-1:-1;;;;16111:275:0:o;11770:193::-;11844:5;;11805:4;;-1:-1:-1;;;;;11844:5:0;11830:10;:19;11822:42;;;;-1:-1:-1;;;11822:42:0;;;;;;;:::i;:::-;-1:-1:-1;11875:10:0;:18;;-1:-1:-1;;11875:18:0;;;11918:15;11904:11;:29;11875:18;;11770:193::o;5710:142::-;5757:4;5791:15;;;;;;;;;-1:-1:-1;;;;;5791:15:0;-1:-1:-1;;;;;5791:27:0;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5776:12;:44;;;:12;5710:142;-1:-1:-1;5710:142:0:o;12427:639::-;12501:14;;12476:4;;-1:-1:-1;;;;;12501:14:0;12493:68;;;;-1:-1:-1;;;12493:68:0;;16392:2:1;12493:68:0;;;16374:21:1;16431:2;16411:18;;;16404:30;16470:29;16450:18;;;16443:57;16517:18;;12493:68:0;16364:177:1;12493:68:0;12592:14;;12647:10;12572:11;12641:17;;;:5;:17;;;;;12683:26;;-1:-1:-1;;;;;12592:14:0;;;;12641:17;;12572:11;12641:17;;12703:5;;12683:26;;;;-1:-1:-1;;;12683:26:0;;;;;;;;;;;;;;;;;;;;;12734:10;12728:17;;:5;:17;;;;;;;:27;12683:26;;-1:-1:-1;12728:27:0;;:35;;:27;:35;12720:69;;;;-1:-1:-1;;;12720:69:0;;12887:2:1;12720:69:0;;;12869:21:1;12926:2;12906:18;;;12899:30;-1:-1:-1;;;12945:18:1;;;12938:51;13006:18;;12720:69:0;12859:171:1;12720:69:0;12826:6;:17;;12844:5;12826:24;;;;;;-1:-1:-1;;;12826:24:0;;;;;;;;;;;;;;;;;12808:15;:42;12800:77;;;;-1:-1:-1;;;12800:77:0;;14978:2:1;12800:77:0;;;14960:21:1;15017:2;14997:18;;;14990:30;-1:-1:-1;;;15036:18:1;;;15029:52;15098:18;;12800:77:0;14950:172:1;12800:77:0;12896:6;:19;;12916:5;12896:26;;;;;;-1:-1:-1;;;12896:26:0;;;;;;;;;;;;;;;;;12926:1;12896:31;;12888:59;;;;-1:-1:-1;;;12888:59:0;;13944:2:1;12888:59:0;;;13926:21:1;13983:2;13963:18;;;13956:30;-1:-1:-1;;;14002:18:1;;;13995:45;14057:18;;12888:59:0;13916:165:1;12888:59:0;12958:34;;-1:-1:-1;;;12958:34:0;;12973:10;12958:34;;;8471:51:1;8538:18;;;8531:34;;;-1:-1:-1;;;;;12958:14:0;;;;;8444:18:1;;12958:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;13010:6;:19;;13030:5;13010:26;;;;;;-1:-1:-1;;;13010:26:0;;;;;;;;;;;;;;;;;13003:33;-1:-1:-1;13054:4:0;;12427:639;-1:-1:-1;;;;12427:639:0:o;12231:130::-;12310:5;;-1:-1:-1;;;;;12310:5:0;12296:10;:19;12288:42;;;;-1:-1:-1;;;12288:42:0;;;;;;;:::i;:::-;12341:4;:12;12231:130::o;10336:302::-;10406:5;;-1:-1:-1;;;;;10406:5:0;10392:10;:19;10384:42;;;;-1:-1:-1;;;10384:42:0;;;;;;;:::i;:::-;10460:12;;;;;;;;;-1:-1:-1;;;;;10460:12:0;-1:-1:-1;;;;;10460:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10446:11;:37;10508:12;;:23;;;-1:-1:-1;;;10508:23:0;;;;-1:-1:-1;;;;;10508:12:0;;;;:21;;:23;;;;;;;;;;;;;;;:12;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10494:11;:37;;;10556:12;;:25;;;-1:-1:-1;;;10556:25:0;;;;-1:-1:-1;;;;;10556:12:0;;;;:23;;:25;;;;;;;;;;;;:12;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10542:11;:39;10606:12;;:24;;;-1:-1:-1;;;10606:24:0;;;;-1:-1:-1;;;;;10606:12:0;;;;:22;;:24;;;;;;;;;;;;;;;:12;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10592:11;:38;10336:302::o;14802:622::-;14951:5;;-1:-1:-1;;;;;14951:5:0;14937:10;:19;;:44;;-1:-1:-1;14974:7:0;;-1:-1:-1;;;;;14974:7:0;14960:10;:21;14937:44;14929:73;;;;-1:-1:-1;;;14929:73:0;;;;;;;:::i;:::-;15035:2;:9;15021:3;:10;:23;15013:54;;;;-1:-1:-1;;;15013:54:0;;;;;;;:::i;:::-;15092:6;15088:329;15109:4;:11;15104:1;:16;15088:329;;;15141:18;15162:4;15167:1;15162:7;;;;;;-1:-1:-1;;;15162:7:0;;;;;;;;;;;;;;;15141:28;;15188:6;15184:173;15204:3;:10;15200:1;:14;15184:173;;;-1:-1:-1;;;;;15239:17:0;;;;;;:5;:17;;;;;15275:6;;:3;;15279:1;;15275:6;;;;-1:-1:-1;;;15275:6:0;;;;;;;;;;;;;;;;;;;;15239:43;;;;;;;;-1:-1:-1;15239:43:0;;;;;;;;;;;;;-1:-1:-1;;;;;15301:17:0;;;;:5;:17;;;;;;;15335:5;;15301:28;;;15335:2;;15338:1;;15335:5;;;;-1:-1:-1;;;15335:5:0;;;;;;;;;;;;;;;;;;;;15301:40;;;;;;;-1:-1:-1;15301:40:0;;;;;;;;;15216:3;;;;:::i;:::-;;;;15184:173;;;-1:-1:-1;;;;;;15371:17:0;;;;;:5;:17;;;;;:34;;-1:-1:-1;;15371:34:0;15401:4;15371:34;;;15122:3;;;;:::i;:::-;;;;15088:329;;;;14802:622;;;:::o;19637:151::-;19690:4;19707:13;19732:12;;19723:6;:21;;;;:::i;:::-;19707:37;-1:-1:-1;19762:18:0;19771:9;19707:37;19762:18;:::i;:::-;19755:25;19637:151;-1:-1:-1;;;19637:151:0:o;12008:180::-;12106:5;;12067:4;;-1:-1:-1;;;;;12106:5:0;12092:10;:19;12084:42;;;;-1:-1:-1;;;12084:42:0;;;;;;;:::i;:::-;-1:-1:-1;12137:14:0;:21;;-1:-1:-1;;;;;;12137:21:0;-1:-1:-1;;;;;12137:21:0;;;;;;;;;;-1:-1:-1;;12008:180:0:o;16427:130::-;16506:5;;-1:-1:-1;;;;;16506:5:0;16492:10;:19;16484:42;;;;-1:-1:-1;;;16484:42:0;;;;;;;:::i;:::-;16537:7;:12;;-1:-1:-1;;;;;;16537:12:0;-1:-1:-1;;;;;16537:12:0;;;;;;;;;;16427:130::o;6124:3892::-;6217:12;;:36;;-1:-1:-1;;;6217:36:0;;6242:10;6217:36;;;8235:51:1;6167:4:0;;;;-1:-1:-1;;;;;6217:12:0;;;;:24;;8208:18:1;;6217:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6194:59;-1:-1:-1;6281:10:0;6264:14;6382:19;6281:10;6382:11;:19::i;:::-;6366:35;;6463:11;6536:8;;6516:15;;6506:9;:25;;;;:::i;:::-;6490:12;;6478:24;;:9;:24;:::i;:::-;:54;;;;:::i;:::-;6477:67;;;;:::i;:::-;6463:81;-1:-1:-1;6555:16:0;6588:3;6574:11;6463:81;6583:2;6574:11;:::i;:::-;:17;;;;:::i;:::-;6620:10;;6555:36;;-1:-1:-1;6620:10:0;;:18;;:10;:18;6612:63;;;;-1:-1:-1;;;6612:63:0;;15329:2:1;6612:63:0;;;15311:21:1;;;15348:18;;;15341:30;15407:34;15387:18;;;15380:62;15459:18;;6612:63:0;15301:182:1;6612:63:0;6706:1;6694:9;:13;6686:36;;;;-1:-1:-1;;;6686:36:0;;14639:2:1;6686:36:0;;;14621:21:1;14678:2;14658:18;;;14651:30;-1:-1:-1;;;14697:18:1;;;14690:40;14747:18;;6686:36:0;14611:160:1;6686:36:0;6760:4;6741:23;;;;6733:45;;;;-1:-1:-1;;;6733:45:0;;10811:2:1;6733:45:0;;;10793:21:1;10850:2;10830:18;;;10823:30;-1:-1:-1;;;10869:18:1;;;10862:40;10919:18;;6733:45:0;10783:160:1;6733:45:0;6802:13;6799:1833;;-1:-1:-1;;;;;6834:17:0;;;;;;:9;:17;;;;;;6831:393;;6909:11;;6896:10;;:24;;;;:::i;:::-;-1:-1:-1;;;;;6876:17:0;;;;;;:9;:17;;;;;:44;;;6947:27;;;6939:62;;;;-1:-1:-1;;;6939:62:0;;11834:2:1;6939:62:0;;;11816:21:1;11873:2;11853:18;;;11846:30;-1:-1:-1;;;11892:18:1;;;11885:52;11954:18;;6939:62:0;11806:172:1;6939:62:0;-1:-1:-1;;;;;7020:17:0;;;;;;:9;:17;;;;;:27;;7041:6;;7020:17;:27;;7041:6;;7020:27;:::i;:::-;;;;-1:-1:-1;6799:1833:0;;-1:-1:-1;6799:1833:0;6831:393;-1:-1:-1;;;;;7118:17:0;;;;;;:9;:17;;;;;;7108:27;;;7100:62;;;;-1:-1:-1;;;7100:62:0;;14288:2:1;7100:62:0;;;14270:21:1;14327:2;14307:18;;;14300:30;-1:-1:-1;;;14346:18:1;;;14339:52;14408:18;;7100:62:0;14260:172:1;6799:1833:0;7267:8;7279:1;7267:13;7264:1368;;;-1:-1:-1;;;;;7299:17:0;;;;;;:9;:17;;;;;;7296:393;;7374:11;;7361:10;;:24;;;;:::i;:::-;-1:-1:-1;;;;;7341:17:0;;;;;;:9;:17;;;;;:44;;;7412:27;;;7404:62;;;;-1:-1:-1;;;7404:62:0;;15690:2:1;7404:62:0;;;15672:21:1;15729:2;15709:18;;;15702:30;-1:-1:-1;;;15748:18:1;;;15741:52;15810:18;;7404:62:0;15662:172:1;7296:393:0;-1:-1:-1;;;;;7583:17:0;;;;;;:9;:17;;;;;;7573:27;;;7565:62;;;;-1:-1:-1;;;7565:62:0;;13593:2:1;7565:62:0;;;13575:21:1;13632:2;13612:18;;;13605:30;-1:-1:-1;;;13651:18:1;;;13644:52;13713:18;;7565:62:0;13565:172:1;7264:1368:0;7718:8;7730:1;7718:13;7715:917;;;-1:-1:-1;;;;;7750:17:0;;;;;;:9;:17;;;;;;7747:393;;7825:11;;7812:10;;:24;;;;:::i;:::-;-1:-1:-1;;;;;7792:17:0;;;;;;:9;:17;;;;;:44;;;7863:27;;;7855:62;;;;-1:-1:-1;;;7855:62:0;;10460:2:1;7855:62:0;;;10442:21:1;10499:2;10479:18;;;10472:30;-1:-1:-1;;;10518:18:1;;;10511:52;10580:18;;7855:62:0;10432:172:1;7747:393:0;-1:-1:-1;;;;;8034:17:0;;;;;;:9;:17;;;;;;8024:27;;;8016:62;;;;-1:-1:-1;;;8016:62:0;;12185:2:1;8016:62:0;;;12167:21:1;12224:2;12204:18;;;12197:30;-1:-1:-1;;;12243:18:1;;;12236:52;12305:18;;8016:62:0;12157:172:1;7715:917:0;8169:8;8181:1;8169:13;8166:466;;;-1:-1:-1;;;;;8201:17:0;;;;;;:9;:17;;;;;;8198:423;;8276:11;;8263:10;;:24;;;;:::i;:::-;-1:-1:-1;;;;;8243:17:0;;;;;;:9;:17;;;;;:44;;;8314:27;;;8306:62;;;;-1:-1:-1;;;8306:62:0;;12536:2:1;8306:62:0;;;12518:21:1;12575:2;12555:18;;;12548:30;-1:-1:-1;;;12594:18:1;;;12587:52;12656:18;;8306:62:0;12508:172:1;8198:423:0;-1:-1:-1;;;;;8485:17:0;;;;;;:9;:17;;;;;;8475:27;;;8467:62;;;;-1:-1:-1;;;8467:62:0;;16041:2:1;8467:62:0;;;16023:21:1;16080:2;16060:18;;;16053:30;-1:-1:-1;;;16099:18:1;;;16092:52;16161:18;;8467:62:0;16013:172:1;8467:62:0;-1:-1:-1;;;;;8548:17:0;;;;;;:9;:17;;;;;:27;;8569:6;;8548:17;:27;;8569:6;;8548:27;:::i;:::-;;;;-1:-1:-1;;8198:423:0;-1:-1:-1;;;;;8652:13:0;;;;;;:5;:13;;;;;;;:44;;;;;;;;;;;;;;;;;;;;8707;;;;;;;;;;;;8762;;;;;;;;;;;;8817;;;;;;;;;;;;8872;;;;;;;;;;;;8927;;;;;;;;;;;;8982;;;;;;;;;;;;9037;;;;;;;;;;;;9092;;;;;;;;;;;;9147;;;;;;;;;;;;;9242:4;;;9212:24;;;:35;;;;;;;;;;;;;;;;;;;;9258:13;;;;9288:4;;:13;;9295:6;9288:13;:::i;:::-;9258:44;;;;;;;;-1:-1:-1;9258:44:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9313:13:0;;;;:5;:13;;;;;;9343:4;;9313:24;;;9343:14;;9350:7;9343:14;:::i;:::-;9313:45;;;;;;;;-1:-1:-1;9313:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9369:13:0;;;;:5;:13;;;;;;9399:4;;9369:24;;;9399:14;;9406:7;9399:14;:::i;:::-;9369:45;;;;;;;;-1:-1:-1;9369:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9425:13:0;;;;:5;:13;;;;;;9455:4;;9425:24;;;9455:14;;9462:7;9455:14;:::i;:::-;9425:45;;;;;;;;-1:-1:-1;9425:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9481:13:0;;;;:5;:13;;;;;;9511:4;;9481:24;;;9511:14;;9518:7;9511:14;:::i;:::-;9481:45;;;;;;;;-1:-1:-1;9481:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9537:13:0;;;;:5;:13;;;;;;9567:4;;9537:24;;;9567:14;;9574:7;9567:14;:::i;:::-;9537:45;;;;;;;;-1:-1:-1;9537:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9593:13:0;;;;:5;:13;;;;;;9623:4;;9593:24;;;9623:14;;9630:7;9623:14;:::i;:::-;9593:45;;;;;;;;-1:-1:-1;9593:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9649:13:0;;;;:5;:13;;;;;;9679:4;;9649:24;;;9679:14;;9686:7;9679:14;:::i;:::-;9649:45;;;;;;;;-1:-1:-1;9649:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9705:13:0;;;;:5;:13;;;;;;9735:4;;9705:24;;;9735:14;;9742:7;9735:14;:::i;:::-;9705:45;;;;;;;;-1:-1:-1;9705:45:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9781:13:0;;;;;:5;:13;;;;;;;9807:31;;;;;;;;;;;9822:15;9807:31;;;;;;9781:20;;;;:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9850:13;;;;;;:31;:41;;9814:6;;-1:-1:-1;9850:41:0;;9814:6;;9850:41;:::i;:::-;;;;-1:-1:-1;;;;;;;9902:13:0;;;;;;:5;:13;;;;;;;;;:30;;-1:-1:-1;;9902:30:0;9928:4;9902:30;;;9958:28;;8471:51:1;;;8538:18;;8531:34;;;9958:28:0;;8444:18:1;9958:28:0;;;;;;;10004:4;9997:11;;;;;;;6124:3892;:::o;20289:257::-;20399:5;;20360:4;;-1:-1:-1;;;;;20399:5:0;20385:10;:19;20377:42;;;;-1:-1:-1;;;20377:42:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20438:16:0;;20430:56;;;;-1:-1:-1;;;20430:56:0;;13237:2:1;20430:56:0;;;13219:21:1;13276:2;13256:18;;;13249:30;13315:29;13295:18;;;13288:57;13362:18;;20430:56:0;13209:177:1;20430:56:0;20497:19;;-1:-1:-1;;;;;20497:11:0;;;:19;;;;;20509:6;;20497:19;;;;20509:6;20497:11;:19;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20534:4:0;;20289:257;-1:-1:-1;;;20289:257:0:o;11486:145::-;11569:12;;:30;;-1:-1:-1;;;11569:30:0;;-1:-1:-1;;;;;8253:32:1;;;11569:30:0;;;8235:51:1;11539:4:0;;;;11569:12;;;:24;;8208:18:1;;11569:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19168:421::-;-1:-1:-1;;;;;19289:11:0;;19278:8;19289:11;;;:5;:11;;;;;:31;19224:21;;;;19289:31;19341:15;;;;;;-1:-1:-1;;;19341:15:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19341:15:0;;19331:25;;19386:3;19375:15;;;;;;-1:-1:-1;;;19375:15:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;19375:15:0;;19367:23;;19405:6;19401:147;19421:3;19417:1;:7;19401:147;;;-1:-1:-1;;;;;19458:11:0;;;;;;:5;:11;;;;;:27;;19483:1;;19458:27;;;;-1:-1:-1;;;19458:27:0;;;;;;;;;;;;;;;;;19445:7;19453:1;19445:10;;;;;;-1:-1:-1;;;19445:10:0;;;;;;;;;;;;;;:40;;;;;19511:5;:11;19517:4;-1:-1:-1;;;;;19511:11:0;-1:-1:-1;;;;;19511:11:0;;;;;;;;;;;;:22;;19534:1;19511:25;;;;;;-1:-1:-1;;;19511:25:0;;;;;;;;;;;;;;;;;19500:5;19506:1;19500:8;;;;;;-1:-1:-1;;;19500:8:0;;;;;;;;;;;;;;;;;;:36;19426:3;;;;:::i;:::-;;;;19401:147;;;;19558:23;19168:421;;;:::o;13739:1003::-;13906:5;;-1:-1:-1;;;;;13906:5:0;13892:10;:19;;:44;;-1:-1:-1;13929:7:0;;-1:-1:-1;;;;;13929:7:0;13915:10;:21;13892:44;13884:73;;;;-1:-1:-1;;;13884:73:0;;;;;;;:::i;:::-;13999:16;:23;13976:12;:19;:46;13968:77;;;;-1:-1:-1;;;13968:77:0;;;;;;;:::i;:::-;14091:14;:21;14064:16;:23;:48;14056:79;;;;-1:-1:-1;;;14056:79:0;;;;;;;:::i;:::-;14174:19;;14156:15;14204:531;14224:10;14220:1;:14;14204:531;;;14293:14;14308:1;14293:17;;;;;;-1:-1:-1;;;14293:17:0;;;;;;;;;;;;;;;:24;14263:16;14280:1;14263:19;;;;;;-1:-1:-1;;;14263:19:0;;;;;;;;;;;;;;;:26;:54;14255:85;;;;-1:-1:-1;;;14255:85:0;;;;;;;:::i;:::-;14355:12;14370;14383:1;14370:15;;;;;;-1:-1:-1;;;14370:15:0;;;;;;;;;;;;;;;14355:30;;14400:17;14420:5;:11;14426:4;-1:-1:-1;;;;;14420:11:0;-1:-1:-1;;;;;14420:11:0;;;;;;;;;;;;14400:31;;14460:8;14471:16;14488:1;14471:19;;;;;;-1:-1:-1;;;14471:19:0;;;;;;;;;;;;;;;:26;14460:37;;14516:6;14512:169;14532:3;14528:1;:7;14512:169;;;14560:3;:16;;14582;14599:1;14582:19;;;;;;-1:-1:-1;;;14582:19:0;;;;;;;;;;;;;;;14602:1;14582:22;;;;;;-1:-1:-1;;;14582:22:0;;;;;;;;;;;;;;;;;;;;14560:45;;;;;;;;-1:-1:-1;14560:45:0;;;;;;;;;;;;;;14644:17;;14624:14;;;;14644;;14659:1;;14644:17;;;;-1:-1:-1;;;14644:17:0;;;;;;;;;;;;;;;14662:1;14644:20;;;;;;-1:-1:-1;;;14644:20:0;;;;;;;;;;;;;;;;;;;;14624:41;;;;;;;-1:-1:-1;14624:41:0;;;;;;;;;14537:3;;;;:::i;:::-;;;;14512:169;;;-1:-1:-1;;;;;;;;14695:11:0;;;;;:5;:11;;;;;:28;;-1:-1:-1;;14695:28:0;14719:4;14695:28;;;14236:3;;;;:::i;:::-;;;;14204:531;;;;13739:1003;;;;:::o;10684:195::-;10738:11;10839:8;;10819:15;;10809:9;:25;;;;:::i;:::-;10793:12;;10782:23;;:8;:23;:::i;:::-;:53;;;;:::i;:::-;10781:66;;;;:::i;17050:870::-;17112:11;17136:9;17148:17;17160:4;17148:11;:17::i;:::-;17136:29;;17176:11;17190:15;17200:4;17190:9;:15::i;:::-;17176:29;-1:-1:-1;17229:15:0;17226:663;;17269:1;17260:10;;17226:663;;;-1:-1:-1;;;;;18840:11:0;;18816:4;18840:11;;;:5;:11;;;;;:21;;;17311:567;;17365:9;17362:424;;17420:11;;17407:10;;:24;;;;:::i;:::-;17398:33;;17311:567;;17362:424;17477:4;17484:1;17477:8;17474:312;;;17531:11;;17518:10;;:24;;;;:::i;17474:312::-;17588:4;17596:1;17588:9;17585:201;;;17643:11;;17630:10;;:24;;;;:::i;17585:201::-;17700:4;17708:1;17700:9;17697:89;;;17755:11;;17742:10;;:24;;;;:::i;17697:89::-;17311:567;;;-1:-1:-1;;;;;17847:15:0;;;;;;:9;:15;;;;;;;-1:-1:-1;17311:567:0;17899:13;;17050:870;;;:::o;11277:171::-;11368:5;;11329:4;;-1:-1:-1;;;;;11368:5:0;11354:10;:19;11346:42;;;;-1:-1:-1;;;11346:42:0;;;;;;;:::i;:::-;-1:-1:-1;11399:10:0;:19;;-1:-1:-1;;11399:19:0;;;;;;;;;;-1:-1:-1;;11277:171:0:o;5583:115::-;5661:12;;:29;;-1:-1:-1;;;5661:29:0;;-1:-1:-1;;;;;8253:32:1;;;5661:29:0;;;8235:51:1;5638:4:0;;5661:12;;:23;;8208:18:1;;5661:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10125:193::-;10219:5;;-1:-1:-1;;;;;10219:5:0;10205:10;:19;10197:42;;;;-1:-1:-1;;;10197:42:0;;;;;;;:::i;:::-;10250:8;:17;;;;10278:15;:32;10125:193::o;20627:285::-;20720:5;;20681:4;;-1:-1:-1;;;;;20720:5:0;20706:10;:19;20698:42;;;;-1:-1:-1;;;20698:42:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20759:16:0;;20751:70;;;;-1:-1:-1;;;20751:70:0;;10050:2:1;20751:70:0;;;10032:21:1;10089:2;10069:18;;;10062:30;10128:34;10108:18;;;10101:62;-1:-1:-1;;;10179:18:1;;;10172:39;10228:19;;20751:70:0;10022:231:1;20751:70:0;20832:5;:10;;-1:-1:-1;;;;;;20832:10:0;-1:-1:-1;;;;;20832:10:0;;;;;;;;20858:24;;8235:51:1;;;20858:24:0;;8223:2:1;8208:18;20858:24:0;;;;;;;-1:-1:-1;20900:4:0;;20627:285;-1:-1:-1;20627:285:0:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;14:768:1:-;68:5;121:3;114:4;106:6;102:17;98:27;88:2;;143:5;136;129:20;88:2;183:6;170:20;209:4;233:60;249:43;289:2;249:43;:::i;:::-;233:60;:::i;:::-;315:3;339:2;334:3;327:15;367:2;362:3;358:12;351:19;;402:2;394:6;390:15;454:3;449:2;443;440:1;436:10;428:6;424:23;420:32;417:41;414:2;;;475:5;468;461:20;414:2;501:5;515:238;529:2;526:1;523:9;515:238;;;600:3;587:17;617:31;642:5;617:31;:::i;:::-;661:18;;699:12;;;;731;;;;547:1;540:9;515:238;;;-1:-1:-1;771:5:1;;78:704;-1:-1:-1;;;;;;;78:704:1:o;787:879::-;851:5;904:3;897:4;889:6;885:17;881:27;871:2;;926:5;919;912:20;871:2;966:6;953:20;992:4;1016:60;1032:43;1072:2;1032:43;:::i;1016:60::-;1098:3;1122:2;1117:3;1110:15;1150:2;1145:3;1141:12;1134:19;;1185:2;1177:6;1173:15;1237:3;1232:2;1226;1223:1;1219:10;1211:6;1207:23;1203:32;1200:41;1197:2;;;1258:5;1251;1244:20;1197:2;1284:5;1298:339;1312:2;1309:1;1306:9;1298:339;;;1389:3;1376:17;1425:18;1412:11;1409:35;1406:2;;;1461:5;1454;1447:20;1406:2;1494:68;1558:3;1553:2;1539:11;1531:6;1527:24;1523:33;1494:68;:::i;:::-;1482:81;;-1:-1:-1;1583:12:1;;;;1615;;;;1330:1;1323:9;1298:339;;1671:693;1725:5;1778:3;1771:4;1763:6;1759:17;1755:27;1745:2;;1800:5;1793;1786:20;1745:2;1840:6;1827:20;1866:4;1890:60;1906:43;1946:2;1906:43;:::i;1890:60::-;1972:3;1996:2;1991:3;1984:15;2024:2;2019:3;2015:12;2008:19;;2059:2;2051:6;2047:15;2111:3;2106:2;2100;2097:1;2093:10;2085:6;2081:23;2077:32;2074:41;2071:2;;;2132:5;2125;2118:20;2071:2;2158:5;2172:163;2186:2;2183:1;2180:9;2172:163;;;2243:17;;2231:30;;2281:12;;;;2313;;;;2204:1;2197:9;2172:163;;2369:257;2428:6;2481:2;2469:9;2460:7;2456:23;2452:32;2449:2;;;2502:6;2494;2487:22;2449:2;2546:9;2533:23;2565:31;2590:5;2565:31;:::i;2631:333::-;2707:6;2715;2768:2;2756:9;2747:7;2743:23;2739:32;2736:2;;;2789:6;2781;2774:22;2736:2;2833:9;2820:23;2852:31;2877:5;2852:31;:::i;:::-;2902:5;2954:2;2939:18;;;;2926:32;;-1:-1:-1;;;2726:238:1:o;2969:466::-;3046:6;3054;3062;3115:2;3103:9;3094:7;3090:23;3086:32;3083:2;;;3136:6;3128;3121:22;3083:2;3180:9;3167:23;3199:31;3224:5;3199:31;:::i;:::-;3249:5;-1:-1:-1;3306:2:1;3291:18;;3278:32;3319:33;3278:32;3319:33;:::i;:::-;3073:362;;3371:7;;-1:-1:-1;;;3425:2:1;3410:18;;;;3397:32;;3073:362::o;3440:760::-;3567:6;3575;3583;3636:2;3624:9;3615:7;3611:23;3607:32;3604:2;;;3657:6;3649;3642:22;3604:2;3701:9;3688:23;3720:31;3745:5;3720:31;:::i;:::-;3770:5;-1:-1:-1;3826:2:1;3811:18;;3798:32;3849:18;3879:14;;;3876:2;;;3911:6;3903;3896:22;3876:2;3939:61;3992:7;3983:6;3972:9;3968:22;3939:61;:::i;:::-;3929:71;;4053:2;4042:9;4038:18;4025:32;4009:48;;4082:2;4072:8;4069:16;4066:2;;;4103:6;4095;4088:22;4066:2;;4131:63;4186:7;4175:8;4164:9;4160:24;4131:63;:::i;:::-;4121:73;;;3594:606;;;;;:::o;4205:462::-;4291:6;4299;4307;4315;4368:3;4356:9;4347:7;4343:23;4339:33;4336:2;;;4390:6;4382;4375:22;4336:2;4434:9;4421:23;4453:31;4478:5;4453:31;:::i;:::-;4503:5;4555:2;4540:18;;4527:32;;-1:-1:-1;4606:2:1;4591:18;;4578:32;;4657:2;4642:18;4629:32;;-1:-1:-1;4326:341:1;-1:-1:-1;;;4326:341:1:o;4672:931::-;4874:6;4882;4890;4943:2;4931:9;4922:7;4918:23;4914:32;4911:2;;;4964:6;4956;4949:22;4911:2;5009:9;4996:23;5038:18;5079:2;5071:6;5068:14;5065:2;;;5100:6;5092;5085:22;5065:2;5128:61;5181:7;5172:6;5161:9;5157:22;5128:61;:::i;:::-;5118:71;;5242:2;5231:9;5227:18;5214:32;5198:48;;5271:2;5261:8;5258:16;5255:2;;;5292:6;5284;5277:22;5255:2;5320:73;5385:7;5374:8;5363:9;5359:24;5320:73;:::i;:::-;5310:83;;5446:2;5435:9;5431:18;5418:32;5402:48;;5475:2;5465:8;5462:16;5459:2;;;5496:6;5488;5481:22;5459:2;;5524:73;5589:7;5578:8;5567:9;5563:24;5524:73;:::i;5608:861::-;5760:6;5768;5776;5829:2;5817:9;5808:7;5804:23;5800:32;5797:2;;;5850:6;5842;5835:22;5797:2;5895:9;5882:23;5924:18;5965:2;5957:6;5954:14;5951:2;;;5986:6;5978;5971:22;5951:2;6014:61;6067:7;6058:6;6047:9;6043:22;6014:61;:::i;:::-;6004:71;;6128:2;6117:9;6113:18;6100:32;6084:48;;6157:2;6147:8;6144:16;6141:2;;;6178:6;6170;6163:22;6474:251;6530:6;6583:2;6571:9;6562:7;6558:23;6554:32;6551:2;;;6604:6;6596;6589:22;6551:2;6648:9;6635:23;6667:28;6689:5;6667:28;:::i;6730:255::-;6797:6;6850:2;6838:9;6829:7;6825:23;6821:32;6818:2;;;6871:6;6863;6856:22;6818:2;6908:9;6902:16;6927:28;6949:5;6927:28;:::i;6990:190::-;7049:6;7102:2;7090:9;7081:7;7077:23;7073:32;7070:2;;;7123:6;7115;7108:22;7070:2;-1:-1:-1;7151:23:1;;7060:120;-1:-1:-1;7060:120:1:o;7185:194::-;7255:6;7308:2;7296:9;7287:7;7283:23;7279:32;7276:2;;;7329:6;7321;7314:22;7276:2;-1:-1:-1;7357:16:1;;7266:113;-1:-1:-1;7266:113:1:o;7384:258::-;7452:6;7460;7513:2;7501:9;7492:7;7488:23;7484:32;7481:2;;;7534:6;7526;7519:22;7481:2;-1:-1:-1;;7562:23:1;;;7632:2;7617:18;;;7604:32;;-1:-1:-1;7471:171:1:o;7647:437::-;7700:3;7738:5;7732:12;7765:6;7760:3;7753:19;7791:4;7820:2;7815:3;7811:12;7804:19;;7857:2;7850:5;7846:14;7878:3;7890:169;7904:6;7901:1;7898:13;7890:169;;;7965:13;;7953:26;;7999:12;;;;8034:15;;;;7926:1;7919:9;7890:169;;;-1:-1:-1;8075:3:1;;7708:376;-1:-1:-1;;;;;7708:376:1:o;8576:465::-;8833:2;8822:9;8815:21;8796:4;8859:56;8911:2;8900:9;8896:18;8888:6;8859:56;:::i;:::-;8963:9;8955:6;8951:22;8946:2;8935:9;8931:18;8924:50;8991:44;9028:6;9020;8991:44;:::i;:::-;8983:52;8805:236;-1:-1:-1;;;;;8805:236:1:o;9501:342::-;9703:2;9685:21;;;9742:2;9722:18;;;9715:30;-1:-1:-1;;;9776:2:1;9761:18;;9754:48;9834:2;9819:18;;9675:168::o;10948:340::-;11150:2;11132:21;;;11189:2;11169:18;;;11162:30;-1:-1:-1;;;11223:2:1;11208:18;;11201:46;11279:2;11264:18;;11122:166::o;11293:334::-;11495:2;11477:21;;;11534:2;11514:18;;;11507:30;-1:-1:-1;;;11568:2:1;11553:18;;11546:40;11618:2;11603:18;;11467:160::o;16728:275::-;16799:2;16793:9;16864:2;16845:13;;-1:-1:-1;;16841:27:1;16829:40;;16899:18;16884:34;;16920:22;;;16881:62;16878:2;;;16946:18;;:::i;:::-;16982:2;16975:22;16773:230;;-1:-1:-1;16773:230:1:o;17008:183::-;17068:4;17101:18;17093:6;17090:30;17087:2;;;17123:18;;:::i;:::-;-1:-1:-1;17168:1:1;17164:14;17180:4;17160:25;;17077:114::o;17196:128::-;17236:3;17267:1;17263:6;17260:1;17257:13;17254:2;;;17273:18;;:::i;:::-;-1:-1:-1;17309:9:1;;17244:80::o;17329:217::-;17369:1;17395;17385:2;;-1:-1:-1;;;17420:31:1;;17474:4;17471:1;17464:15;17502:4;17427:1;17492:15;17385:2;-1:-1:-1;17531:9:1;;17375:171::o;17551:168::-;17591:7;17657:1;17653;17649:6;17645:14;17642:1;17639:21;17634:1;17627:9;17620:17;17616:45;17613:2;;;17664:18;;:::i;:::-;-1:-1:-1;17704:9:1;;17603:116::o;17724:125::-;17764:4;17792:1;17789;17786:8;17783:2;;;17797:18;;:::i;:::-;-1:-1:-1;17834:9:1;;17773:76::o;17854:135::-;17893:3;-1:-1:-1;;17914:17:1;;17911:2;;;17934:18;;:::i;:::-;-1:-1:-1;17981:1:1;17970:13;;17901:88::o;17994:127::-;18055:10;18050:3;18046:20;18043:1;18036:31;18086:4;18083:1;18076:15;18110:4;18107:1;18100:15;18126:127;18187:10;18182:3;18178:20;18175:1;18168:31;18218:4;18215:1;18208:15;18242:4;18239:1;18232:15;18258:131;-1:-1:-1;;;;;18333:31:1;;18323:42;;18313:2;;18379:1;18376;18369:12;18394:118;18480:5;18473:13;18466:21;18459:5;18456:32;18446:2;;18502:1;18499;18492:12
Swarm Source
ipfs://a3f3d7400167df215971eb596cb89cec93218a91f300390f861d84a75255869e
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.