Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000,000 VLX
Holders
981
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,800 VLXValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
VALLIXToken
Compiler Version
v0.5.9+commit.e560f70d
Contract Source Code (Solidity Multiple files format)
pragma solidity ^0.5.9; import "./ERC20Interface.sol"; import "./OwnerHelper.sol"; import "./SafeMath.sol"; contract VALLIXToken is ERC20Interface, OwnerHelper { using SafeMath for uint; string public name; uint public decimals; string public symbol; uint constant private E18 = 1000000000000000000; uint constant private month = 2592000; uint constant public maxTotalSupply = 10000000000 * E18; uint constant public maxSaleSupply = 2000000000 * E18; uint constant public maxCrowdSupply = 1600000000 * E18; uint constant public maxMktSupply = 2800000000 * E18; uint constant public maxTeamSupply = 1600000000 * E18; uint constant public maxReserveSupply = 1600000000 * E18; uint constant public maxAdvisorSupply = 400000000 * E18; uint constant public teamVestingSupplyPerTime = 100000000 * E18; uint constant public teamVestingDate = 2 * month; uint constant public teamVestingTime = 16; uint public totalTokenSupply; uint public tokenIssuedSale; uint public privateIssuedSale; uint public publicIssuedSale; uint public tokenIssuedCrowd; uint public tokenIssuedMkt; uint public tokenIssuedTeam; uint public tokenIssuedReserve; uint public tokenIssuedAdvisor; uint public burnTokenSupply; mapping (address => uint) public balances; mapping (address => mapping ( address => uint )) public approvals; mapping (address => uint) public privateFirstWallet; mapping (address => uint) public privateSecondWallet; mapping (address => uint) public privateThirdWallet; mapping (address => uint) public privateFourthWallet; mapping (uint => uint) public teamVestingTimeAtSupply; bool public tokenLock = true; bool public saleTime = true; uint public endSaleTime = 0; event Burn(address indexed _from, uint _value); event SaleIssue(address indexed _to, uint _tokens); event CrowdIssue(address indexed _to, uint _tokens); event MktIssue(address indexed _to, uint _tokens); event TeamIssue(address indexed _to, uint _tokens); event ReserveIssue(address indexed _to, uint _tokens); event AdvisorIssue(address indexed _to, uint _tokens); event TokenUnLock(address indexed _to, uint _tokens); constructor() public { name = "VALLIX Token"; decimals = 18; symbol = "VLX"; totalTokenSupply = 10000000000 * E18; balances[master] = totalTokenSupply; tokenIssuedSale = 0; tokenIssuedCrowd = 0; tokenIssuedMkt = 0; tokenIssuedTeam = 0; tokenIssuedReserve = 0; tokenIssuedAdvisor = 0; require(maxTotalSupply == maxSaleSupply + maxCrowdSupply + maxMktSupply + maxTeamSupply + maxReserveSupply + maxAdvisorSupply); require(maxTeamSupply == teamVestingSupplyPerTime * teamVestingTime); } function totalSupply() view public returns (uint) { return totalTokenSupply; } function balanceOf(address _who) view public returns (uint) { uint balance = balances[_who]; balance = balance.add(privateFirstWallet[_who] + privateSecondWallet[_who] + privateThirdWallet[_who] + privateFourthWallet[_who]); return balance; } function transfer(address _to, uint _value) public returns (bool) { require(isTransferable() == true); require(balances[msg.sender] >= _value); balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(msg.sender, _to, _value); return true; } function approve(address _spender, uint _value) public returns (bool) { require(isTransferable() == true); require(balances[msg.sender] >= _value); approvals[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } function allowance(address _owner, address _spender) view public returns (uint) { return approvals[_owner][_spender]; } function transferFrom(address _from, address _to, uint _value) public returns (bool) { require(isTransferable() == true); require(balances[_from] >= _value); require(approvals[_from][msg.sender] >= _value); approvals[_from][msg.sender] = approvals[_from][msg.sender].sub(_value); balances[_from] = balances[_from].sub(_value); balances[_to] = balances[_to].add(_value); emit Transfer(_from, _to, _value); return true; } function privateIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxSaleSupply >= tokenIssuedSale.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add( tokens.mul(40)/100 ); privateFirstWallet[_to] = privateFirstWallet[_to].add( tokens.mul(30)/100 ); privateSecondWallet[_to] = privateSecondWallet[_to].add( tokens.mul(30)/100 ); tokenIssuedSale = tokenIssuedSale.add(tokens); privateIssuedSale = privateIssuedSale.add(tokens); emit SaleIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function publicIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxSaleSupply >= tokenIssuedSale.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); tokenIssuedSale = tokenIssuedSale.add(tokens); publicIssuedSale = publicIssuedSale.add(tokens); emit SaleIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function seedIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxSaleSupply >= tokenIssuedSale.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add( tokens.mul(15)/100 ); privateFirstWallet[_to] = privateFirstWallet[_to].add( tokens.mul(15)/100 ); privateSecondWallet[_to] = privateSecondWallet[_to].add( tokens.mul(20)/100 ); privateThirdWallet[_to] = privateThirdWallet[_to].add( tokens.mul(20)/100 ); privateFourthWallet[_to] = privateFourthWallet[_to].add( tokens.mul(30)/100 ); tokenIssuedSale = tokenIssuedSale.add(tokens); privateIssuedSale = privateIssuedSale.add(tokens); emit SaleIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function crowdIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxCrowdSupply >= tokenIssuedCrowd.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); tokenIssuedCrowd = tokenIssuedCrowd.add(tokens); emit CrowdIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function mktIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxMktSupply >= tokenIssuedMkt.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); tokenIssuedMkt = tokenIssuedMkt.add(tokens); emit MktIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function reserveIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxReserveSupply >= tokenIssuedReserve.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); tokenIssuedReserve = tokenIssuedReserve.add(tokens); emit ReserveIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function teamIssueVesting(address _to, uint _time) onlyMaster public { require(saleTime == false); require(teamVestingTime >= _time); uint time = now; require( ( ( endSaleTime + (_time * teamVestingDate) ) < time ) && ( teamVestingTimeAtSupply[_time] > 0 )); uint tokens = teamVestingTimeAtSupply[_time]; require(maxTeamSupply >= tokenIssuedTeam.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); teamVestingTimeAtSupply[_time] = 0; tokenIssuedTeam = tokenIssuedTeam.add(tokens); emit TeamIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function advisorIssue(address _to, uint _value) onlyMaster public { uint tokens = _value * E18; require(maxAdvisorSupply >= tokenIssuedAdvisor.add(tokens)); balances[msg.sender] = balances[msg.sender].sub(tokens); balances[_to] = balances[_to].add(tokens); tokenIssuedAdvisor = tokenIssuedAdvisor.add(tokens); emit AdvisorIssue(_to, tokens); emit Transfer(msg.sender, _to, tokens); } function isTransferable() private view returns (bool) { if(tokenLock == false) { return true; } else if(msg.sender == manager) { return true; } return false; } function setTokenUnlock() onlyManager public { require(tokenLock == true); require(saleTime == false); tokenLock = false; } function setTokenLock() onlyManager public { require(tokenLock == false); tokenLock = true; } function privateUnlock(address _to) onlyManager public { require(tokenLock == false); require(saleTime == false); uint time = now; uint unlockTokens = 0; if( (time >= endSaleTime.add(month)) && (privateFirstWallet[_to] > 0) ) { balances[_to] = balances[_to].add(privateFirstWallet[_to]); unlockTokens = unlockTokens.add(privateFirstWallet[_to]); privateFirstWallet[_to] = 0; } if( (time >= endSaleTime.add(month * 2)) && (privateSecondWallet[_to] > 0) ) { balances[_to] = balances[_to].add(privateSecondWallet[_to]); unlockTokens = unlockTokens.add(privateSecondWallet[_to]); privateSecondWallet[_to] = 0; } if( (time >= endSaleTime.add(month * 3)) && (privateThirdWallet[_to] > 0) ) { balances[_to] = balances[_to].add(privateThirdWallet[_to]); unlockTokens = unlockTokens.add(privateThirdWallet[_to]); privateThirdWallet[_to] = 0; } if( (time >= endSaleTime.add(month * 4)) && (privateFourthWallet[_to] > 0) ) { balances[_to] = balances[_to].add(privateFourthWallet[_to]); unlockTokens = unlockTokens.add(privateFourthWallet[_to]); privateFourthWallet[_to] = 0; } emit TokenUnLock(_to, unlockTokens); } function () payable external { revert(); } function endSale() onlyManager public { require(saleTime == true); saleTime = false; uint time = now; endSaleTime = time; for(uint i = 1; i <= teamVestingTime; i++) { teamVestingTimeAtSupply[i] = teamVestingTimeAtSupply[i].add(teamVestingSupplyPerTime); } } function transferAnyERC20Token(address tokenAddress, uint tokens) onlyManager public returns (bool success) { return ERC20Interface(tokenAddress).transfer(manager, tokens); } function burnToken(uint _value) onlyManager public { uint tokens = _value * E18; require(balances[msg.sender] >= tokens); balances[msg.sender] = balances[msg.sender].sub(tokens); burnTokenSupply = burnTokenSupply.add(tokens); totalTokenSupply = totalTokenSupply.sub(tokens); emit Burn(msg.sender, tokens); } function close() onlyMaster public { selfdestruct(msg.sender); } }
pragma solidity ^0.5.9; contract ERC20Interface { event Transfer( address indexed _from, address indexed _to, uint _value); event Approval( address indexed _owner, address indexed _spender, uint _value); function totalSupply() view public returns (uint _supply); function balanceOf( address _who ) public view returns (uint _value); function transfer( address _to, uint _value) public returns (bool _success); function approve( address _spender, uint _value ) public returns (bool _success); function allowance( address _owner, address _spender ) public view returns (uint _allowance); function transferFrom( address _from, address _to, uint _value) public returns (bool _success); }
pragma solidity ^0.5.9; contract OwnerHelper { address public master; address public manager; event ChangeMaster(address indexed _from, address indexed _to); event ChangeManager(address indexed _from, address indexed _to); modifier onlyMaster { require(msg.sender == master); _; } modifier onlyManager { require(msg.sender == manager); _; } constructor() public { master = msg.sender; } function transferMastership(address _to) onlyMaster public { require(_to != master); require(_to != manager); require(_to != address(0x0)); address from = master; master = _to; emit ChangeMaster(from, _to); } function transferManager(address _to) onlyMaster public { require(_to != master); require(_to != manager); require(_to != address(0x0)); address from = manager; manager = _to; emit ChangeManager(from, _to); } }
pragma solidity ^0.5.9; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0, "SafeMath: modulo by zero"); return a % b; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"privateIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"saleTime","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"crowdIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalTokenSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"burnTokenSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"privateThirdWallet","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxTotalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"endSale","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_time","type":"uint256"}],"name":"teamIssueVesting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"privateFourthWallet","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"close","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"privateIssuedSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"manager","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxTeamSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamVestingSupplyPerTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"endSaleTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"privateFirstWallet","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_who","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burnToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"reserveIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"setTokenUnlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"publicIssuedSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"setTokenLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedAdvisor","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"approvals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxMktSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxAdvisorSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"seedIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxSaleSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamVestingTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxCrowdSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"teamVestingTimeAtSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"privateSecondWallet","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"transferManager","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedCrowd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"transferMastership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mktIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedTeam","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxReserveSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"privateUnlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokenAddress","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"publicIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"advisorIssue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedMkt","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"master","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenIssuedReserve","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamVestingDate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"SaleIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"CrowdIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"MktIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"TeamIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"ReserveIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"AdvisorIssue","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_tokens","type":"uint256"}],"name":"TokenUnLock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"ChangeMaster","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"ChangeManager","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
60806040526001601660006101000a81548160ff0219169083151502179055506001601660016101000a81548160ff02191690831515021790555060006017553480156200004c57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600c81526020017f56414c4c495820546f6b656e000000000000000000000000000000000000000081525060029080519060200190620000da9291906200028a565b5060126003819055506040518060400160405280600381526020017f564c58000000000000000000000000000000000000000000000000000000000081525060049080519060200190620001309291906200028a565b50670de0b6b3a76400006402540be40002600581905550600554600f60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060068190555060006009819055506000600a819055506000600b819055506000600c819055506000600d81905550670de0b6b3a76400006317d7840002670de0b6b3a7640000635f5e100002670de0b6b3a7640000635f5e100002670de0b6b3a764000063a6e49c0002670de0b6b3a7640000635f5e100002670de0b6b3a76400006377359400020101010101670de0b6b3a76400006402540be40002146200025857600080fd5b6010670de0b6b3a76400006305f5e1000202670de0b6b3a7640000635f5e100002146200028457600080fd5b62000339565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002cd57805160ff1916838001178555620002fe565b82800160010185558215620002fe579182015b82811115620002fd578251825591602001919060010190620002e0565b5b5090506200030d919062000311565b5090565b6200033691905b808211156200033257600081600090555060010162000318565b5090565b90565b614e8380620003496000396000f3fe6080604052600436106103815760003560e01c80638ece19f6116101d1578063c2f08d3e11610102578063dc60457c116100a0578063e718234d1161006f578063e718234d146112b8578063ee97f7f3146112e7578063f73997b51461133e578063f98ed23f1461136957610381565b8063dc60457c14611152578063dd62ed3e146111ad578063de27283514611232578063de85a4a91461128d57610381565b8063cfa15bcd116100dc578063cfa15bcd14611038578063cffb47cf14611063578063d8f5d0981461108e578063dc39d06d146110df57610381565b8063c2f08d3e14610f61578063c3f5968714610f8c578063c57c7b6214610fdd57610381565b8063ad5da5761161016f578063b378fd3011610149578063b378fd3014610e31578063b3ddbab414610e5c578063b6e2d31314610eab578063ba0e930a14610f1057610381565b8063ad5da57614610d80578063b29418d514610ddb578063b35c721814610e0657610381565b8063a32ce11e116101ab578063a32ce11e14610c32578063a438145014610cb7578063a711b66414610ce2578063a9059cbb14610d0d57610381565b80638ece19f614610b6057806395d89b4114610b77578063a04d4aa214610c0757610381565b8063380d831b116102b657806353b37a04116102545780637b47ec1a116102235780637b47ec1a14610a885780637f3a247214610ac35780638430085914610b1e578063882e17f614610b3557610381565b806353b37a041461096857806358371ccd146109935780636f5d75c7146109be57806370a0823114610a2357610381565b806343d726d61161029057806343d726d6146108a457806345b781b3146108bb578063481c6a75146108e65780634b2596c71461093d57610381565b8063380d831b146107cd5780634168de57146107e457806341ee8b151461083f57610381565b8063206bc0a0116103235780632459588e116102fd5780632459588e146106ad57806327e235e3146107125780632ab4d05214610777578063313ce567146107a257610381565b8063206bc0a0146105c457806322b0aa47146105ef57806323b872dd1461061a57610381565b80631596facb1161035f5780631596facb146104e457806315f973a71461051357806318160ddd1461056e5780631ca8b6cb1461059957610381565b806306fdde0314610386578063095ea7b3146104165780630e3c956314610489575b600080fd5b34801561039257600080fd5b5061039b611394565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103db5780820151818401526020810190506103c0565b50505050905090810190601f1680156104085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561042257600080fd5b5061046f6004803603604081101561043957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611432565b604051808215151515815260200191505060405180910390f35b34801561049557600080fd5b506104e2600480360360408110156104ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611588565b005b3480156104f057600080fd5b506104f96119b8565b604051808215151515815260200191505060405180910390f35b34801561051f57600080fd5b5061056c6004803603604081101561053657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119cb565b005b34801561057a57600080fd5b50610583611c5f565b6040518082815260200191505060405180910390f35b3480156105a557600080fd5b506105ae611c69565b6040518082815260200191505060405180910390f35b3480156105d057600080fd5b506105d9611c6f565b6040518082815260200191505060405180910390f35b3480156105fb57600080fd5b50610604611c75565b6040518082815260200191505060405180910390f35b34801561062657600080fd5b506106936004803603606081101561063d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c7b565b604051808215151515815260200191505060405180910390f35b3480156106b957600080fd5b506106fc600480360360208110156106d057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612013565b6040518082815260200191505060405180910390f35b34801561071e57600080fd5b506107616004803603602081101561073557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061202b565b6040518082815260200191505060405180910390f35b34801561078357600080fd5b5061078c612043565b6040518082815260200191505060405180910390f35b3480156107ae57600080fd5b506107b7612056565b6040518082815260200191505060405180910390f35b3480156107d957600080fd5b506107e261205c565b005b3480156107f057600080fd5b5061083d6004803603604081101561080757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612168565b005b34801561084b57600080fd5b5061088e6004803603602081101561086257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612489565b6040518082815260200191505060405180910390f35b3480156108b057600080fd5b506108b96124a1565b005b3480156108c757600080fd5b506108d0612513565b6040518082815260200191505060405180910390f35b3480156108f257600080fd5b506108fb612519565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561094957600080fd5b5061095261253f565b6040518082815260200191505060405180910390f35b34801561097457600080fd5b5061097d612551565b6040518082815260200191505060405180910390f35b34801561099f57600080fd5b506109a8612563565b6040518082815260200191505060405180910390f35b3480156109ca57600080fd5b50610a0d600480360360208110156109e157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612569565b6040518082815260200191505060405180910390f35b348015610a2f57600080fd5b50610a7260048036036020811015610a4657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612581565b6040518082815260200191505060405180910390f35b348015610a9457600080fd5b50610ac160048036036020811015610aab57600080fd5b81019080803590602001909291905050506126e6565b005b348015610acf57600080fd5b50610b1c60048036036040811015610ae657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506128b8565b005b348015610b2a57600080fd5b50610b33612b4c565b005b348015610b4157600080fd5b50610b4a612c03565b6040518082815260200191505060405180910390f35b348015610b6c57600080fd5b50610b75612c09565b005b348015610b8357600080fd5b50610b8c612ca0565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610bcc578082015181840152602081019050610bb1565b50505050905090810190601f168015610bf95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c1357600080fd5b50610c1c612d3e565b6040518082815260200191505060405180910390f35b348015610c3e57600080fd5b50610ca160048036036040811015610c5557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d44565b6040518082815260200191505060405180910390f35b348015610cc357600080fd5b50610ccc612d69565b6040518082815260200191505060405180910390f35b348015610cee57600080fd5b50610cf7612d7b565b6040518082815260200191505060405180910390f35b348015610d1957600080fd5b50610d6660048036036040811015610d3057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612d8d565b604051808215151515815260200191505060405180910390f35b348015610d8c57600080fd5b50610dd960048036036040811015610da357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f8c565b005b348015610de757600080fd5b50610df0613520565b6040518082815260200191505060405180910390f35b348015610e1257600080fd5b50610e1b613532565b6040518082815260200191505060405180910390f35b348015610e3d57600080fd5b50610e46613537565b6040518082815260200191505060405180910390f35b348015610e6857600080fd5b50610e9560048036036020811015610e7f57600080fd5b8101908080359060200190929190505050613549565b6040518082815260200191505060405180910390f35b348015610eb757600080fd5b50610efa60048036036020811015610ece57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613561565b6040518082815260200191505060405180910390f35b348015610f1c57600080fd5b50610f5f60048036036020811015610f3357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613579565b005b348015610f6d57600080fd5b50610f76613787565b6040518082815260200191505060405180910390f35b348015610f9857600080fd5b50610fdb60048036036020811015610faf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061378d565b005b348015610fe957600080fd5b506110366004803603604081101561100057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613999565b005b34801561104457600080fd5b5061104d613c2d565b6040518082815260200191505060405180910390f35b34801561106f57600080fd5b50611078613c33565b6040518082815260200191505060405180910390f35b34801561109a57600080fd5b506110dd600480360360208110156110b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613c45565b005b3480156110eb57600080fd5b506111386004803603604081101561110257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506144a9565b604051808215151515815260200191505060405180910390f35b34801561115e57600080fd5b506111ab6004803603604081101561117557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506145f1565b005b3480156111b957600080fd5b5061121c600480360360408110156111d057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506148a0565b6040518082815260200191505060405180910390f35b34801561123e57600080fd5b5061128b6004803603604081101561125557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050614927565b005b34801561129957600080fd5b506112a2614bbb565b6040518082815260200191505060405180910390f35b3480156112c457600080fd5b506112cd614bc1565b604051808215151515815260200191505060405180910390f35b3480156112f357600080fd5b506112fc614bd4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561134a57600080fd5b50611353614bf9565b6040518082815260200191505060405180910390f35b34801561137557600080fd5b5061137e614bff565b6040518082815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561142a5780601f106113ff5761010080835404028352916020019161142a565b820191906000526020600020905b81548152906001019060200180831161140d57829003601f168201915b505050505081565b600060011515611440614c09565b15151461144c57600080fd5b81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561149857600080fd5b81601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115e157600080fd5b6000670de0b6b3a76400008202905061160581600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561161f57600080fd5b61167181600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061172360646116cd602884614da790919063ffffffff16565b816116d457fe5b04600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117d5606461177f601e84614da790919063ffffffff16565b8161178657fe5b04601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118876064611831601e84614da790919063ffffffff16565b8161183857fe5b04601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118df81600654614c9690919063ffffffff16565b6006819055506118fa81600754614c9690919063ffffffff16565b6007819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b601660019054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a2457600080fd5b6000670de0b6b3a764000082029050611a4881600954614c9690919063ffffffff16565b670de0b6b3a7640000635f5e1000021015611a6257600080fd5b611ab481600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b4981600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ba181600954614c9690919063ffffffff16565b6009819055508273ffffffffffffffffffffffffffffffffffffffff167f732d29c9b61c6a1729d4c1dabc195a741462f69777b0e17b281f981fd1af33a6826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600554905090565b60055481565b60065481565b600e5481565b600060011515611c89614c09565b151514611c9557600080fd5b81600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611ce157600080fd5b81601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611d6a57600080fd5b611df982601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecb82600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f6082600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60136020528060005260406000206000915090505481565b600f6020528060005260406000206000915090505481565b670de0b6b3a76400006402540be4000281565b60035481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120b657600080fd5b60011515601660019054906101000a900460ff161515146120d657600080fd5b6000601660016101000a81548160ff0219169083151502179055506000429050806017819055506000600190505b6010811161216457612140670de0b6b3a76400006305f5e100026015600084815260200190815260200160002054614c9690919063ffffffff16565b60156000838152602001908152602001600020819055508080600101915050612104565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146121c157600080fd5b60001515601660019054906101000a900460ff161515146121e157600080fd5b80601010156121ef57600080fd5b60004290508062278d00600202830260175401108015612222575060006015600084815260200190815260200160002054115b61222b57600080fd5b60006015600084815260200190815260200160002054905061225881600b54614c9690919063ffffffff16565b670de0b6b3a7640000635f5e100002101561227257600080fd5b6122c481600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061235981600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060156000858152602001908152602001600020819055506123ca81600b54614c9690919063ffffffff16565b600b819055508373ffffffffffffffffffffffffffffffffffffffff167fb07ce9bd9a0d0e9adec838711c53cbe1430a690e9c520e9232dc9478dbd85f31826040518082815260200191505060405180910390a28373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505050565b60146020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124fa57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b60075481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a7640000635f5e10000281565b670de0b6b3a76400006305f5e1000281565b60175481565b60116020528060005260406000206000915090505481565b600080600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506126db601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401010182614c9690919063ffffffff16565b905080915050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461274057600080fd5b6000670de0b6b3a76400008202905080600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561279b57600080fd5b6127ed81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061284581600e54614c9690919063ffffffff16565b600e8190555061286081600554614d1e90919063ffffffff16565b6005819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461291157600080fd5b6000670de0b6b3a76400008202905061293581600c54614c9690919063ffffffff16565b670de0b6b3a7640000635f5e100002101561294f57600080fd5b6129a181600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a3681600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a8e81600c54614c9690919063ffffffff16565b600c819055508273ffffffffffffffffffffffffffffffffffffffff167f73e5488a9a164a48f73cbb1c7845edc0ff8439459e1e92a7bfee2da0e4b5194e826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612ba657600080fd5b60011515601660009054906101000a900460ff16151514612bc657600080fd5b60001515601660019054906101000a900460ff16151514612be657600080fd5b6000601660006101000a81548160ff021916908315150217905550565b60085481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612c6357600080fd5b60001515601660009054906101000a900460ff16151514612c8357600080fd5b6001601660006101000a81548160ff021916908315150217905550565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612d365780601f10612d0b57610100808354040283529160200191612d36565b820191906000526020600020905b815481529060010190602001808311612d1957829003601f168201915b505050505081565b600d5481565b6010602052816000526040600020602052806000526040600020600091509150505481565b670de0b6b3a764000063a6e49c000281565b670de0b6b3a76400006317d784000281565b600060011515612d9b614c09565b151514612da757600080fd5b81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612df357600080fd5b612e4582600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612eda82600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612fe557600080fd5b6000670de0b6b3a76400008202905061300981600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561302357600080fd5b61307581600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061312760646130d1600f84614da790919063ffffffff16565b816130d857fe5b04600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506131d96064613183600f84614da790919063ffffffff16565b8161318a57fe5b04601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061328b6064613235601484614da790919063ffffffff16565b8161323c57fe5b04601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061333d60646132e7601484614da790919063ffffffff16565b816132ee57fe5b04601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133ef6064613399601e84614da790919063ffffffff16565b816133a057fe5b04601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061344781600654614c9690919063ffffffff16565b60068190555061346281600754614c9690919063ffffffff16565b6007819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b670de0b6b3a764000063773594000281565b601081565b670de0b6b3a7640000635f5e10000281565b60156020528060005260406000206000915090505481565b60126020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146135d257600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561362c57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561368757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156136c157600080fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f034ab062c9c6c8ddd60650a40372b1d413588174682d4ca1a4e53aa37589ab2d60405160405180910390a35050565b60095481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146137e657600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561384057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561389b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156138d557600080fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fafdef03f445192706b5a78764c79537b329794ddc270a432de8af7cc1e350b5b60405160405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146139f257600080fd5b6000670de0b6b3a764000082029050613a1681600a54614c9690919063ffffffff16565b670de0b6b3a764000063a6e49c00021015613a3057600080fd5b613a8281600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b1781600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b6f81600a54614c9690919063ffffffff16565b600a819055508273ffffffffffffffffffffffffffffffffffffffff167f0c17226450db6e575fa6cef1e6c9972cb00d826dbd529639acc6bca7b663b3a9826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600b5481565b670de0b6b3a7640000635f5e10000281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613c9f57600080fd5b60001515601660009054906101000a900460ff16151514613cbf57600080fd5b60001515601660019054906101000a900460ff16151514613cdf57600080fd5b60004290506000809050613d0162278d00601754614c9690919063ffffffff16565b8210158015613d4f57506000601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15613ec257613de5601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613e7a601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b613edd600262278d0002601754614c9690919063ffffffff16565b8210158015613f2b57506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561409e57613fc1601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614056601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6140b9600362278d0002601754614c9690919063ffffffff16565b821015801561410757506000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561427a5761419d601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614232601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b614295600462278d0002601754614c9690919063ffffffff16565b82101580156142e357506000601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561445657614379601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061440e601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff167fb12f43980a4ffdbc281c198aa32f5ea64a390cb206d1b275dc1d8ebeb4ea4f31826040518082815260200191505060405180910390a2505050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461450557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156145ae57600080fd5b505af11580156145c2573d6000803e3d6000fd5b505050506040513d60208110156145d857600080fd5b8101908080519060200190929190505050905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461464a57600080fd5b6000670de0b6b3a76400008202905061466e81600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561468857600080fd5b6146da81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061476f81600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506147c781600654614c9690919063ffffffff16565b6006819055506147e281600854614c9690919063ffffffff16565b6008819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461498057600080fd5b6000670de0b6b3a7640000820290506149a481600d54614c9690919063ffffffff16565b670de0b6b3a76400006317d784000210156149be57600080fd5b614a1081600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614aa581600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614afd81600d54614c9690919063ffffffff16565b600d819055508273ffffffffffffffffffffffffffffffffffffffff167f9efd2e6c1f6a2e7fb0cb8af4985b9fa767eeaf48be0f79f7fcb48d41616821b2826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600a5481565b601660009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b62278d0060020281565b6000801515601660009054906101000a900460ff1615151415614c2f5760019050614c93565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415614c8e5760019050614c93565b600090505b90565b600080828401905083811015614d14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600082821115614d96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600080831415614dba5760009050614e27565b6000828402905082848281614dcb57fe5b0414614e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180614e2e6021913960400191505060405180910390fd5b809150505b9291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72305820cd000ccbbeaeb21e7c6047af4e07762a2717627697fcb8e57c27b02403c63f6064736f6c63430005090032
Deployed Bytecode
0x6080604052600436106103815760003560e01c80638ece19f6116101d1578063c2f08d3e11610102578063dc60457c116100a0578063e718234d1161006f578063e718234d146112b8578063ee97f7f3146112e7578063f73997b51461133e578063f98ed23f1461136957610381565b8063dc60457c14611152578063dd62ed3e146111ad578063de27283514611232578063de85a4a91461128d57610381565b8063cfa15bcd116100dc578063cfa15bcd14611038578063cffb47cf14611063578063d8f5d0981461108e578063dc39d06d146110df57610381565b8063c2f08d3e14610f61578063c3f5968714610f8c578063c57c7b6214610fdd57610381565b8063ad5da5761161016f578063b378fd3011610149578063b378fd3014610e31578063b3ddbab414610e5c578063b6e2d31314610eab578063ba0e930a14610f1057610381565b8063ad5da57614610d80578063b29418d514610ddb578063b35c721814610e0657610381565b8063a32ce11e116101ab578063a32ce11e14610c32578063a438145014610cb7578063a711b66414610ce2578063a9059cbb14610d0d57610381565b80638ece19f614610b6057806395d89b4114610b77578063a04d4aa214610c0757610381565b8063380d831b116102b657806353b37a04116102545780637b47ec1a116102235780637b47ec1a14610a885780637f3a247214610ac35780638430085914610b1e578063882e17f614610b3557610381565b806353b37a041461096857806358371ccd146109935780636f5d75c7146109be57806370a0823114610a2357610381565b806343d726d61161029057806343d726d6146108a457806345b781b3146108bb578063481c6a75146108e65780634b2596c71461093d57610381565b8063380d831b146107cd5780634168de57146107e457806341ee8b151461083f57610381565b8063206bc0a0116103235780632459588e116102fd5780632459588e146106ad57806327e235e3146107125780632ab4d05214610777578063313ce567146107a257610381565b8063206bc0a0146105c457806322b0aa47146105ef57806323b872dd1461061a57610381565b80631596facb1161035f5780631596facb146104e457806315f973a71461051357806318160ddd1461056e5780631ca8b6cb1461059957610381565b806306fdde0314610386578063095ea7b3146104165780630e3c956314610489575b600080fd5b34801561039257600080fd5b5061039b611394565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103db5780820151818401526020810190506103c0565b50505050905090810190601f1680156104085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561042257600080fd5b5061046f6004803603604081101561043957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611432565b604051808215151515815260200191505060405180910390f35b34801561049557600080fd5b506104e2600480360360408110156104ac57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611588565b005b3480156104f057600080fd5b506104f96119b8565b604051808215151515815260200191505060405180910390f35b34801561051f57600080fd5b5061056c6004803603604081101561053657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119cb565b005b34801561057a57600080fd5b50610583611c5f565b6040518082815260200191505060405180910390f35b3480156105a557600080fd5b506105ae611c69565b6040518082815260200191505060405180910390f35b3480156105d057600080fd5b506105d9611c6f565b6040518082815260200191505060405180910390f35b3480156105fb57600080fd5b50610604611c75565b6040518082815260200191505060405180910390f35b34801561062657600080fd5b506106936004803603606081101561063d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c7b565b604051808215151515815260200191505060405180910390f35b3480156106b957600080fd5b506106fc600480360360208110156106d057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612013565b6040518082815260200191505060405180910390f35b34801561071e57600080fd5b506107616004803603602081101561073557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061202b565b6040518082815260200191505060405180910390f35b34801561078357600080fd5b5061078c612043565b6040518082815260200191505060405180910390f35b3480156107ae57600080fd5b506107b7612056565b6040518082815260200191505060405180910390f35b3480156107d957600080fd5b506107e261205c565b005b3480156107f057600080fd5b5061083d6004803603604081101561080757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612168565b005b34801561084b57600080fd5b5061088e6004803603602081101561086257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612489565b6040518082815260200191505060405180910390f35b3480156108b057600080fd5b506108b96124a1565b005b3480156108c757600080fd5b506108d0612513565b6040518082815260200191505060405180910390f35b3480156108f257600080fd5b506108fb612519565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561094957600080fd5b5061095261253f565b6040518082815260200191505060405180910390f35b34801561097457600080fd5b5061097d612551565b6040518082815260200191505060405180910390f35b34801561099f57600080fd5b506109a8612563565b6040518082815260200191505060405180910390f35b3480156109ca57600080fd5b50610a0d600480360360208110156109e157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612569565b6040518082815260200191505060405180910390f35b348015610a2f57600080fd5b50610a7260048036036020811015610a4657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612581565b6040518082815260200191505060405180910390f35b348015610a9457600080fd5b50610ac160048036036020811015610aab57600080fd5b81019080803590602001909291905050506126e6565b005b348015610acf57600080fd5b50610b1c60048036036040811015610ae657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506128b8565b005b348015610b2a57600080fd5b50610b33612b4c565b005b348015610b4157600080fd5b50610b4a612c03565b6040518082815260200191505060405180910390f35b348015610b6c57600080fd5b50610b75612c09565b005b348015610b8357600080fd5b50610b8c612ca0565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610bcc578082015181840152602081019050610bb1565b50505050905090810190601f168015610bf95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c1357600080fd5b50610c1c612d3e565b6040518082815260200191505060405180910390f35b348015610c3e57600080fd5b50610ca160048036036040811015610c5557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d44565b6040518082815260200191505060405180910390f35b348015610cc357600080fd5b50610ccc612d69565b6040518082815260200191505060405180910390f35b348015610cee57600080fd5b50610cf7612d7b565b6040518082815260200191505060405180910390f35b348015610d1957600080fd5b50610d6660048036036040811015610d3057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612d8d565b604051808215151515815260200191505060405180910390f35b348015610d8c57600080fd5b50610dd960048036036040811015610da357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f8c565b005b348015610de757600080fd5b50610df0613520565b6040518082815260200191505060405180910390f35b348015610e1257600080fd5b50610e1b613532565b6040518082815260200191505060405180910390f35b348015610e3d57600080fd5b50610e46613537565b6040518082815260200191505060405180910390f35b348015610e6857600080fd5b50610e9560048036036020811015610e7f57600080fd5b8101908080359060200190929190505050613549565b6040518082815260200191505060405180910390f35b348015610eb757600080fd5b50610efa60048036036020811015610ece57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613561565b6040518082815260200191505060405180910390f35b348015610f1c57600080fd5b50610f5f60048036036020811015610f3357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613579565b005b348015610f6d57600080fd5b50610f76613787565b6040518082815260200191505060405180910390f35b348015610f9857600080fd5b50610fdb60048036036020811015610faf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061378d565b005b348015610fe957600080fd5b506110366004803603604081101561100057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613999565b005b34801561104457600080fd5b5061104d613c2d565b6040518082815260200191505060405180910390f35b34801561106f57600080fd5b50611078613c33565b6040518082815260200191505060405180910390f35b34801561109a57600080fd5b506110dd600480360360208110156110b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613c45565b005b3480156110eb57600080fd5b506111386004803603604081101561110257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506144a9565b604051808215151515815260200191505060405180910390f35b34801561115e57600080fd5b506111ab6004803603604081101561117557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506145f1565b005b3480156111b957600080fd5b5061121c600480360360408110156111d057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506148a0565b6040518082815260200191505060405180910390f35b34801561123e57600080fd5b5061128b6004803603604081101561125557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050614927565b005b34801561129957600080fd5b506112a2614bbb565b6040518082815260200191505060405180910390f35b3480156112c457600080fd5b506112cd614bc1565b604051808215151515815260200191505060405180910390f35b3480156112f357600080fd5b506112fc614bd4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561134a57600080fd5b50611353614bf9565b6040518082815260200191505060405180910390f35b34801561137557600080fd5b5061137e614bff565b6040518082815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561142a5780601f106113ff5761010080835404028352916020019161142a565b820191906000526020600020905b81548152906001019060200180831161140d57829003601f168201915b505050505081565b600060011515611440614c09565b15151461144c57600080fd5b81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561149857600080fd5b81601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115e157600080fd5b6000670de0b6b3a76400008202905061160581600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561161f57600080fd5b61167181600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061172360646116cd602884614da790919063ffffffff16565b816116d457fe5b04600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117d5606461177f601e84614da790919063ffffffff16565b8161178657fe5b04601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118876064611831601e84614da790919063ffffffff16565b8161183857fe5b04601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506118df81600654614c9690919063ffffffff16565b6006819055506118fa81600754614c9690919063ffffffff16565b6007819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b601660019054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a2457600080fd5b6000670de0b6b3a764000082029050611a4881600954614c9690919063ffffffff16565b670de0b6b3a7640000635f5e1000021015611a6257600080fd5b611ab481600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b4981600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ba181600954614c9690919063ffffffff16565b6009819055508273ffffffffffffffffffffffffffffffffffffffff167f732d29c9b61c6a1729d4c1dabc195a741462f69777b0e17b281f981fd1af33a6826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600554905090565b60055481565b60065481565b600e5481565b600060011515611c89614c09565b151514611c9557600080fd5b81600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611ce157600080fd5b81601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611d6a57600080fd5b611df982601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecb82600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f6082600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60136020528060005260406000206000915090505481565b600f6020528060005260406000206000915090505481565b670de0b6b3a76400006402540be4000281565b60035481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120b657600080fd5b60011515601660019054906101000a900460ff161515146120d657600080fd5b6000601660016101000a81548160ff0219169083151502179055506000429050806017819055506000600190505b6010811161216457612140670de0b6b3a76400006305f5e100026015600084815260200190815260200160002054614c9690919063ffffffff16565b60156000838152602001908152602001600020819055508080600101915050612104565b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146121c157600080fd5b60001515601660019054906101000a900460ff161515146121e157600080fd5b80601010156121ef57600080fd5b60004290508062278d00600202830260175401108015612222575060006015600084815260200190815260200160002054115b61222b57600080fd5b60006015600084815260200190815260200160002054905061225881600b54614c9690919063ffffffff16565b670de0b6b3a7640000635f5e100002101561227257600080fd5b6122c481600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061235981600f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060156000858152602001908152602001600020819055506123ca81600b54614c9690919063ffffffff16565b600b819055508373ffffffffffffffffffffffffffffffffffffffff167fb07ce9bd9a0d0e9adec838711c53cbe1430a690e9c520e9232dc9478dbd85f31826040518082815260200191505060405180910390a28373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505050565b60146020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124fa57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b60075481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a7640000635f5e10000281565b670de0b6b3a76400006305f5e1000281565b60175481565b60116020528060005260406000206000915090505481565b600080600f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506126db601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401010182614c9690919063ffffffff16565b905080915050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461274057600080fd5b6000670de0b6b3a76400008202905080600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561279b57600080fd5b6127ed81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061284581600e54614c9690919063ffffffff16565b600e8190555061286081600554614d1e90919063ffffffff16565b6005819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461291157600080fd5b6000670de0b6b3a76400008202905061293581600c54614c9690919063ffffffff16565b670de0b6b3a7640000635f5e100002101561294f57600080fd5b6129a181600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a3681600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a8e81600c54614c9690919063ffffffff16565b600c819055508273ffffffffffffffffffffffffffffffffffffffff167f73e5488a9a164a48f73cbb1c7845edc0ff8439459e1e92a7bfee2da0e4b5194e826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612ba657600080fd5b60011515601660009054906101000a900460ff16151514612bc657600080fd5b60001515601660019054906101000a900460ff16151514612be657600080fd5b6000601660006101000a81548160ff021916908315150217905550565b60085481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612c6357600080fd5b60001515601660009054906101000a900460ff16151514612c8357600080fd5b6001601660006101000a81548160ff021916908315150217905550565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612d365780601f10612d0b57610100808354040283529160200191612d36565b820191906000526020600020905b815481529060010190602001808311612d1957829003601f168201915b505050505081565b600d5481565b6010602052816000526040600020602052806000526040600020600091509150505481565b670de0b6b3a764000063a6e49c000281565b670de0b6b3a76400006317d784000281565b600060011515612d9b614c09565b151514612da757600080fd5b81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612df357600080fd5b612e4582600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612eda82600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612fe557600080fd5b6000670de0b6b3a76400008202905061300981600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561302357600080fd5b61307581600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061312760646130d1600f84614da790919063ffffffff16565b816130d857fe5b04600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506131d96064613183600f84614da790919063ffffffff16565b8161318a57fe5b04601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061328b6064613235601484614da790919063ffffffff16565b8161323c57fe5b04601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061333d60646132e7601484614da790919063ffffffff16565b816132ee57fe5b04601360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506133ef6064613399601e84614da790919063ffffffff16565b816133a057fe5b04601460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061344781600654614c9690919063ffffffff16565b60068190555061346281600754614c9690919063ffffffff16565b6007819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b670de0b6b3a764000063773594000281565b601081565b670de0b6b3a7640000635f5e10000281565b60156020528060005260406000206000915090505481565b60126020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146135d257600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561362c57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561368757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156136c157600080fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f034ab062c9c6c8ddd60650a40372b1d413588174682d4ca1a4e53aa37589ab2d60405160405180910390a35050565b60095481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146137e657600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561384057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561389b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156138d557600080fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fafdef03f445192706b5a78764c79537b329794ddc270a432de8af7cc1e350b5b60405160405180910390a35050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146139f257600080fd5b6000670de0b6b3a764000082029050613a1681600a54614c9690919063ffffffff16565b670de0b6b3a764000063a6e49c00021015613a3057600080fd5b613a8281600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b1781600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b6f81600a54614c9690919063ffffffff16565b600a819055508273ffffffffffffffffffffffffffffffffffffffff167f0c17226450db6e575fa6cef1e6c9972cb00d826dbd529639acc6bca7b663b3a9826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600b5481565b670de0b6b3a7640000635f5e10000281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613c9f57600080fd5b60001515601660009054906101000a900460ff16151514613cbf57600080fd5b60001515601660019054906101000a900460ff16151514613cdf57600080fd5b60004290506000809050613d0162278d00601754614c9690919063ffffffff16565b8210158015613d4f57506000601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15613ec257613de5601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613e7a601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b613edd600262278d0002601754614c9690919063ffffffff16565b8210158015613f2b57506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561409e57613fc1601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614056601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6140b9600362278d0002601754614c9690919063ffffffff16565b821015801561410757506000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561427a5761419d601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614232601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b614295600462278d0002601754614c9690919063ffffffff16565b82101580156142e357506000601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561445657614379601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061440e601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482614c9690919063ffffffff16565b90506000601460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff167fb12f43980a4ffdbc281c198aa32f5ea64a390cb206d1b275dc1d8ebeb4ea4f31826040518082815260200191505060405180910390a2505050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461450557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156145ae57600080fd5b505af11580156145c2573d6000803e3d6000fd5b505050506040513d60208110156145d857600080fd5b8101908080519060200190929190505050905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461464a57600080fd5b6000670de0b6b3a76400008202905061466e81600654614c9690919063ffffffff16565b670de0b6b3a7640000637735940002101561468857600080fd5b6146da81600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061476f81600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506147c781600654614c9690919063ffffffff16565b6006819055506147e281600854614c9690919063ffffffff16565b6008819055508273ffffffffffffffffffffffffffffffffffffffff167f07c5eb0c2da0dd34a57523f87ea471b21890f00a504311f9959b3fd2d8120864826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461498057600080fd5b6000670de0b6b3a7640000820290506149a481600d54614c9690919063ffffffff16565b670de0b6b3a76400006317d784000210156149be57600080fd5b614a1081600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614d1e90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614aa581600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054614c9690919063ffffffff16565b600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614afd81600d54614c9690919063ffffffff16565b600d819055508273ffffffffffffffffffffffffffffffffffffffff167f9efd2e6c1f6a2e7fb0cb8af4985b9fa767eeaf48be0f79f7fcb48d41616821b2826040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600a5481565b601660009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c5481565b62278d0060020281565b6000801515601660009054906101000a900460ff1615151415614c2f5760019050614c93565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415614c8e5760019050614c93565b600090505b90565b600080828401905083811015614d14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600082821115614d96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600080831415614dba5760009050614e27565b6000828402905082848281614dcb57fe5b0414614e22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180614e2e6021913960400191505060405180910390fd5b809150505b9291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72305820cd000ccbbeaeb21e7c6047af4e07762a2717627697fcb8e57c27b02403c63f6064736f6c63430005090032
Deployed Bytecode Sourcemap
116:13361:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12328:8;;;212:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;212:18:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;212:18:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4005:335;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4005:335:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4005:335:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5044:782;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5044:782:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5044:782:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1925:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1925:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7362:494;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7362:494:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7362:494:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3178:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3178:98:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1090:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1090:28:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1131:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1131:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1418;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1418:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4499:533;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4499:533:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4499:533:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1701:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1701:51:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1701:51:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1458:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1458:41:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1458:41:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;401:59;;8:9:-1;5:2;;;30:1;27;20:12;5:2;401:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;237:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;237:20:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12356:392;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12356:392:3;;;:::i;:::-;;8876:803;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8876:803:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8876:803:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1759:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1759:52:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1759:52:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13391:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13391:83:3;;;:::i;:::-;;1165:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1165:29:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;86:22:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;86:22:1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;671:59:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;671:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;875:69;;8:9:-1;5:2;;;30:1;27;20:12;5:2;875:69:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1959:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1959:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1584:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1584:51:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1584:51:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3288:300;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3288:300:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3288:300:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12968:411;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12968:411:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12968:411:3;;;;;;;;;;;;;;;;;:::i;:::-;;8362:506;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8362:506:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8362:506:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10495:170;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10495:170:3;;;:::i;:::-;;1201:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1201:28:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10677:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10677:131:3;;;:::i;:::-;;264:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;264:20:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;264:20:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1375:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1375:30:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1506:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1506:65:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1506:65:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;605:59;;8:9:-1;5:2;;;30:1;27;20:12;5:2;605:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;803;;8:9:-1;5:2;;;30:1;27;20:12;5:2;803:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3600:393;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3600:393:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3600:393:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6394:960;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6394:960:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6394:960:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;473:59;;8:9:-1;5:2;;;30:1;27;20:12;5:2;473:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1021:56;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1021:56:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;539:59;;8:9:-1;5:2;;;30:1;27;20:12;5:2;539:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1824:53;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1824:53:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1824:53:3;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1642:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1642:52:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1642:52:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;810:292:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;810:292:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;810:292:1;;;;;;;;;;;;;;;;;;;:::i;:::-;;1236:28:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1236:28:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;526:276:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;526:276:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;526:276:1;;;;;;;;;;;;;;;;;;;:::i;:::-;;7868:482:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7868:482:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7868:482:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1304:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1304:27:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;737:59;;8:9:-1;5:2;;;30:1;27;20:12;5:2;737:59:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10820:1451;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10820:1451:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10820:1451:3;;;;;;;;;;;;;;;;;;;:::i;:::-;;12763:193;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12763:193:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12763:193:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5834:548;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5834:548:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5834:548:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4352:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4352:139:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4352:139:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9691:516;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9691:516:3;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9691:516:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1271:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1271:26:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1890:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1890:28:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;58:21:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;58:21:1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1338:30:3;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1338:30:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;951:63;;8:9:-1;5:2;;;30:1;27;20:12;5:2;951:63:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;212:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4005:335::-;4069:4;4119;4099:24;;:16;:14;:16::i;:::-;:24;;;4091:33;;;;;;4167:6;4143:8;:20;4152:10;4143:20;;;;;;;;;;;;;;;;:30;;4135:39;;;;;;4229:6;4195:9;:21;4205:10;4195:21;;;;;;;;;;;;;;;:31;4217:8;4195:31;;;;;;;;;;;;;;;:40;;;;4282:8;4261:38;;4270:10;4261:38;;;4292:6;4261:38;;;;;;;;;;;;;;;;;;4327:4;4320:11;;4005:335;;;;:::o;5044:782::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;5136:11:3;325:19;5150:6;:12;5136:26;;5198:27;5218:6;5198:15;;:19;;:27;;;;:::i;:::-;325:19;516:10;:16;5181:44;;5173:53;;;;;;5270:32;5295:6;5270:8;:20;5279:10;5270:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;5247:8;:20;5256:10;5247:20;;;;;;;;;;;;;;;:55;;;;5357:39;5391:3;5376:14;5387:2;5376:6;:10;;:14;;;;:::i;:::-;:18;;;;;;5357:8;:13;5366:3;5357:13;;;;;;;;;;;;;;;;:17;;:39;;;;:::i;:::-;5323:8;:13;5332:3;5323:13;;;;;;;;;;;;;;;:73;;;;5441:49;5485:3;5470:14;5481:2;5470:6;:10;;:14;;;;:::i;:::-;:18;;;;;;5441;:23;5460:3;5441:23;;;;;;;;;;;;;;;;:27;;:49;;;;:::i;:::-;5407:18;:23;5426:3;5407:23;;;;;;;;;;;;;;;:83;;;;5535:50;5580:3;5565:14;5576:2;5565:6;:10;;:14;;;;:::i;:::-;:18;;;;;;5535:19;:24;5555:3;5535:24;;;;;;;;;;;;;;;;:28;;:50;;;;:::i;:::-;5501:19;:24;5521:3;5501:24;;;;;;;;;;;;;;;:84;;;;5624:27;5644:6;5624:15;;:19;;:27;;;;:::i;:::-;5606:15;:45;;;;5682:29;5704:6;5682:17;;:21;;:29;;;;:::i;:::-;5662:17;:49;;;;5747:3;5737:22;;;5752:6;5737:22;;;;;;;;;;;;;;;;;;5806:3;5785:33;;5794:10;5785:33;;;5811:6;5785:33;;;;;;;;;;;;;;;;;;334:1:1;5044:782:3;;:::o;1925:27::-;;;;;;;;;;;;;:::o;7362:494::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;7442:11:3;325:19;7456:6;:12;7442:26;;7505:28;7526:6;7505:16;;:20;;:28;;;;:::i;:::-;325:19;582:10;:16;7487:46;;7479:55;;;;;;7578:32;7603:6;7578:8;:20;7587:10;7578:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7555:8;:20;7564:10;7555:20;;;;;;;;;;;;;;;:55;;;;7647:25;7665:6;7647:8;:13;7656:3;7647:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;7631:8;:13;7640:3;7631:13;;;;;;;;;;;;;;;:41;;;;7712:28;7733:6;7712:16;;:20;;:28;;;;:::i;:::-;7693:16;:47;;;;7777:3;7766:23;;;7782:6;7766:23;;;;;;;;;;;;;;;;;;7836:3;7815:33;;7824:10;7815:33;;;7841:6;7815:33;;;;;;;;;;;;;;;;;;334:1:1;7362:494:3;;:::o;3178:98::-;3222:4;3252:16;;3245:23;;3178:98;:::o;1090:28::-;;;;:::o;1131:27::-;;;;:::o;1418:::-;;;;:::o;4499:533::-;4578:4;4629;4609:24;;:16;:14;:16::i;:::-;:24;;;4601:33;;;;;;4672:6;4653:8;:15;4662:5;4653:15;;;;;;;;;;;;;;;;:25;;4645:34;;;;;;4730:6;4698:9;:16;4708:5;4698:16;;;;;;;;;;;;;;;:28;4715:10;4698:28;;;;;;;;;;;;;;;;:38;;4690:47;;;;;;4789:40;4822:6;4789:9;:16;4799:5;4789:16;;;;;;;;;;;;;;;:28;4806:10;4789:28;;;;;;;;;;;;;;;;:32;;:40;;;;:::i;:::-;4758:9;:16;4768:5;4758:16;;;;;;;;;;;;;;;:28;4775:10;4758:28;;;;;;;;;;;;;;;:71;;;;4858:27;4878:6;4858:8;:15;4867:5;4858:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;4840:8;:15;4849:5;4840:15;;;;;;;;;;;;;;;:45;;;;4913:25;4931:6;4913:8;:13;4922:3;4913:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;4896:8;:13;4905:3;4896:13;;;;;;;;;;;;;;;:42;;;;4980:3;4964:28;;4973:5;4964:28;;;4985:6;4964:28;;;;;;;;;;;;;;;;;;5020:4;5013:11;;4499:533;;;;;:::o;1701:51::-;;;;;;;;;;;;;;;;;:::o;1458:41::-;;;;;;;;;;;;;;;;;:::o;401:59::-;325:19;443:11;:17;401:59;:::o;237:20::-;;;;:::o;12356:392::-;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;12430:4:3;12418:16;;:8;;;;;;;;;;;:16;;;12410:25;;;;;;12467:5;12456:8;;:16;;;;;;;;;;;;;;;;;;12493:9;12505:3;12493:15;;12543:4;12529:11;:18;;;;12572:6;12581:1;12572:10;;12568:164;1075:2;12584:1;:20;12568:164;;12664:56;325:19;929:9;:15;12664:23;:26;12688:1;12664:26;;;;;;;;;;;;:30;;:56;;;;:::i;:::-;12635:23;:26;12659:1;12635:26;;;;;;;;;;;:85;;;;12606:3;;;;;;;12568:164;;;;433:1:1;12356:392:3:o;8876:803::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;8981:5:3;8969:17;;:8;;;;;;;;;;;:17;;;8961:26;;;;;;9025:5;1075:2;9006:24;;8998:33;;;;;;9052:9;9064:3;9052:15;;9135:4;381:7;1005:1;:9;9106:5;:23;9091:11;;:39;9089:50;9087:96;;;;;9180:1;9147:23;:30;9171:5;9147:30;;;;;;;;;;;;:34;9087:96;9078:106;;;;;;9205:11;9219:23;:30;9243:5;9219:30;;;;;;;;;;;;9205:44;;9287:27;9307:6;9287:15;;:19;;:27;;;;:::i;:::-;325:19;714:10;:16;9270:44;;9262:53;;;;;;9359:32;9384:6;9359:8;:20;9368:10;9359:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9336:8;:20;9345:10;9336:20;;;;;;;;;;;;;;;:55;;;;9428:25;9446:6;9428:8;:13;9437:3;9428:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;9412:8;:13;9421:3;9412:13;;;;;;;;;;;;;;;:41;;;;9497:1;9464:23;:30;9488:5;9464:30;;;;;;;;;;;:34;;;;9537:27;9557:6;9537:15;;:19;;:27;;;;:::i;:::-;9519:15;:45;;;;9600:3;9590:22;;;9605:6;9590:22;;;;;;;;;;;;;;;;;;9659:3;9638:33;;9647:10;9638:33;;;9664:6;9638:33;;;;;;;;;;;;;;;;;;334:1:1;;8876:803:3;;:::o;1759:52::-;;;;;;;;;;;;;;;;;:::o;13391:83::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;13455:10:3;13442:24;;;1165:29;;;;:::o;86:22:1:-;;;;;;;;;;;;;:::o;671:59:3:-;325:19;714:10;:16;671:59;:::o;875:69::-;325:19;929:9;:15;875:69;:::o;1959:27::-;;;;:::o;1584:51::-;;;;;;;;;;;;;;;;;:::o;3288:300::-;3342:4;3365:12;3380:8;:14;3389:4;3380:14;;;;;;;;;;;;;;;;3365:29;;3425:120;3519:19;:25;3539:4;3519:25;;;;;;;;;;;;;;;;3492:18;:24;3511:4;3492:24;;;;;;;;;;;;;;;;3464:19;:25;3484:4;3464:25;;;;;;;;;;;;;;;;3437:18;:24;3456:4;3437:24;;;;;;;;;;;;;;;;:52;:79;:107;3425:7;:11;;:120;;;;:::i;:::-;3415:130;;3573:7;3566:14;;;3288:300;;;:::o;12968:411::-;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;13035:11:3;325:19;13049:6;:12;13035:26;;13114:6;13090:8;:20;13099:10;13090:20;;;;;;;;;;;;;;;;:30;;13082:39;;;;;;13165:32;13190:6;13165:8;:20;13174:10;13165:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;13142:8;:20;13151:10;13142:20;;;;;;;;;;;;;;;:55;;;;13236:27;13256:6;13236:15;;:19;;:27;;;;:::i;:::-;13218:15;:45;;;;13293:28;13314:6;13293:16;;:20;;:28;;;;:::i;:::-;13274:16;:47;;;;13352:10;13347:24;;;13364:6;13347:24;;;;;;;;;;;;;;;;;;433:1:1;12968:411:3;:::o;8362:506::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;8444:11:3;325:19;8458:6;:12;8444:26;;8509:30;8532:6;8509:18;;:22;;:30;;;;:::i;:::-;325:19;780:10;:16;8489:50;;8481:59;;;;;;8584:32;8609:6;8584:8;:20;8593:10;8584:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8561:8;:20;8570:10;8561:20;;;;;;;;;;;;;;;:55;;;;8653:25;8671:6;8653:8;:13;8662:3;8653:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;8637:8;:13;8646:3;8637:13;;;;;;;;;;;;;;;:41;;;;8720:30;8743:6;8720:18;;:22;;:30;;;;:::i;:::-;8699:18;:51;;;;8789:3;8776:25;;;8794:6;8776:25;;;;;;;;;;;;;;;;;;8848:3;8827:33;;8836:10;8827:33;;;8853:6;8827:33;;;;;;;;;;;;;;;;;;334:1:1;8362:506:3;;:::o;10495:170::-;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;10577:4:3;10564:17;;:9;;;;;;;;;;;:17;;;10556:26;;;;;;10613:5;10601:17;;:8;;;;;;;;;;;:17;;;10593:26;;;;;;10652:5;10640:9;;:17;;;;;;;;;;;;;;;;;;10495:170::o;1201:28::-;;;;:::o;10677:131::-;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;10757:5:3;10744:18;;:9;;;;;;;;;;;:18;;;10736:27;;;;;;10796:4;10784:9;;:16;;;;;;;;;;;;;;;;;;10677:131::o;264:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1375:30::-;;;;:::o;1506:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;605:59::-;325:19;648:10;:16;605:59;:::o;803:::-;325:19;847:9;:15;803:59;:::o;3600:393::-;3660:4;3711;3691:24;;:16;:14;:16::i;:::-;:24;;;3683:33;;;;;;3759:6;3735:8;:20;3744:10;3735:20;;;;;;;;;;;;;;;;:30;;3727:39;;;;;;3810:32;3835:6;3810:8;:20;3819:10;3810:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;3787:8;:20;3796:10;3787:20;;;;;;;;;;;;;;;:55;;;;3869:25;3887:6;3869:8;:13;3878:3;3869:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;3853:8;:13;3862:3;3853:13;;;;;;;;;;;;;;;:41;;;;3941:3;3920:33;;3929:10;3920:33;;;3946:6;3920:33;;;;;;;;;;;;;;;;;;3981:4;3974:11;;3600:393;;;;:::o;6394:960::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;6483:11:3;325:19;6497:6;:12;6483:26;;6545:27;6565:6;6545:15;;:19;;:27;;;;:::i;:::-;325:19;516:10;:16;6528:44;;6520:53;;;;;;6617:32;6642:6;6617:8;:20;6626:10;6617:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6594:8;:20;6603:10;6594:20;;;;;;;;;;;;;;;:55;;;;6704:39;6738:3;6723:14;6734:2;6723:6;:10;;:14;;;;:::i;:::-;:18;;;;;;6704:8;:13;6713:3;6704:13;;;;;;;;;;;;;;;;:17;;:39;;;;:::i;:::-;6670:8;:13;6679:3;6670:13;;;;;;;;;;;;;;;:73;;;;6788:49;6832:3;6817:14;6828:2;6817:6;:10;;:14;;;;:::i;:::-;:18;;;;;;6788;:23;6807:3;6788:23;;;;;;;;;;;;;;;;:27;;:49;;;;:::i;:::-;6754:18;:23;6773:3;6754:23;;;;;;;;;;;;;;;:83;;;;6882:50;6927:3;6912:14;6923:2;6912:6;:10;;:14;;;;:::i;:::-;:18;;;;;;6882:19;:24;6902:3;6882:24;;;;;;;;;;;;;;;;:28;;:50;;;;:::i;:::-;6848:19;:24;6868:3;6848:24;;;;;;;;;;;;;;;:84;;;;6977:49;7021:3;7006:14;7017:2;7006:6;:10;;:14;;;;:::i;:::-;:18;;;;;;6977;:23;6996:3;6977:23;;;;;;;;;;;;;;;;:27;;:49;;;;:::i;:::-;6943:18;:23;6962:3;6943:23;;;;;;;;;;;;;;;:83;;;;7071:50;7116:3;7101:14;7112:2;7101:6;:10;;:14;;;;:::i;:::-;:18;;;;;;7071:19;:24;7091:3;7071:24;;;;;;;;;;;;;;;;:28;;:50;;;;:::i;:::-;7037:19;:24;7057:3;7037:24;;;;;;;;;;;;;;;:84;;;;7152:27;7172:6;7152:15;;:19;;:27;;;;:::i;:::-;7134:15;:45;;;;7210:29;7232:6;7210:17;;:21;;:29;;;;:::i;:::-;7190:17;:49;;;;7275:3;7265:22;;;7280:6;7265:22;;;;;;;;;;;;;;;;;;7334:3;7313:33;;7322:10;7313:33;;;7339:6;7313:33;;;;;;;;;;;;;;;;;;334:1:1;6394:960:3;;:::o;473:59::-;325:19;516:10;:16;473:59;:::o;1021:56::-;1075:2;1021:56;:::o;539:59::-;325:19;582:10;:16;539:59;:::o;1824:53::-;;;;;;;;;;;;;;;;;:::o;1642:52::-;;;;;;;;;;;;;;;;;:::o;810:292:1:-;316:6;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;897:6;;;;;;;;;;;890:13;;:3;:13;;;;882:22;;;;;;930:7;;;;;;;;;;;923:14;;:3;:14;;;;915:23;;;;;;972:3;957:19;;:3;:19;;;;949:28;;;;;;998:12;1013:7;;;;;;;;;;;998:22;;1041:3;1031:7;;:13;;;;;;;;;;;;;;;;;;1090:3;1070:24;;1084:4;1070:24;;;;;;;;;;;;334:1;810:292;:::o;1236:28:3:-;;;;:::o;526:276:1:-;316:6;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;616:6;;;;;;;;;;;609:13;;:3;:13;;;;601:22;;;;;;649:7;;;;;;;;;;;642:14;;:3;:14;;;;634:23;;;;;;691:3;676:19;;:3;:19;;;;668:28;;;;;;709:12;724:6;;;;;;;;;;;709:21;;750:3;741:6;;:12;;;;;;;;;;;;;;;;;;790:3;771:23;;784:4;771:23;;;;;;;;;;;;334:1;526:276;:::o;7868:482:3:-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;7946:11:3;325:19;7960:6;:12;7946:26;;8007;8026:6;8007:14;;:18;;:26;;;;:::i;:::-;325:19;648:10;:16;7991:42;;7983:51;;;;;;8078:32;8103:6;8078:8;:20;8087:10;8078:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8055:8;:20;8064:10;8055:20;;;;;;;;;;;;;;;:55;;;;8147:25;8165:6;8147:8;:13;8156:3;8147:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;8131:8;:13;8140:3;8131:13;;;;;;;;;;;;;;;:41;;;;8210:26;8229:6;8210:14;;:18;;:26;;;;:::i;:::-;8193:14;:43;;;;8271:3;8262:21;;;8276:6;8262:21;;;;;;;;;;;;;;;;;;8330:3;8309:33;;8318:10;8309:33;;;8335:6;8309:33;;;;;;;;;;;;;;;;;;334:1:1;7868:482:3;;:::o;1304:27::-;;;;:::o;737:59::-;325:19;780:10;:16;737:59;:::o;10820:1451::-;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;10912:5:3;10899:18;;:9;;;;;;;;;;;:18;;;10891:27;;;;;;10949:5;10937:17;;:8;;;;;;;;;;;:17;;;10929:26;;;;;;10976:9;10988:3;10976:15;;11002:17;11022:1;11002:21;;11049:22;381:7;11049:11;;:15;;:22;;;;:::i;:::-;11041:4;:30;;11040:65;;;;;11103:1;11077:18;:23;11096:3;11077:23;;;;;;;;;;;;;;;;:27;11040:65;11036:279;;;11148:42;11166:18;:23;11185:3;11166:23;;;;;;;;;;;;;;;;11148:8;:13;11157:3;11148:13;;;;;;;;;;;;;;;;:17;;:42;;;;:::i;:::-;11132:8;:13;11141:3;11132:13;;;;;;;;;;;;;;;:58;;;;11220:41;11237:18;:23;11256:3;11237:23;;;;;;;;;;;;;;;;11220:12;:16;;:41;;;;:::i;:::-;11205:56;;11302:1;11276:18;:23;11295:3;11276:23;;;;;;;;;;;;;;;:27;;;;11036:279;11348:26;11372:1;381:7;11364:9;11348:11;;:15;;:26;;;;:::i;:::-;11340:4;:34;;11339:70;;;;;11407:1;11380:19;:24;11400:3;11380:24;;;;;;;;;;;;;;;;:28;11339:70;11335:287;;;11452:43;11470:19;:24;11490:3;11470:24;;;;;;;;;;;;;;;;11452:8;:13;11461:3;11452:13;;;;;;;;;;;;;;;;:17;;:43;;;;:::i;:::-;11436:8;:13;11445:3;11436:13;;;;;;;;;;;;;;;:59;;;;11525:42;11542:19;:24;11562:3;11542:24;;;;;;;;;;;;;;;;11525:12;:16;;:42;;;;:::i;:::-;11510:57;;11609:1;11582:19;:24;11602:3;11582:24;;;;;;;;;;;;;;;:28;;;;11335:287;11647:26;11671:1;381:7;11663:9;11647:11;;:15;;:26;;;;:::i;:::-;11639:4;:34;;11638:69;;;;;11705:1;11679:18;:23;11698:3;11679:23;;;;;;;;;;;;;;;;:27;11638:69;11634:283;;;11750:42;11768:18;:23;11787:3;11768:23;;;;;;;;;;;;;;;;11750:8;:13;11759:3;11750:13;;;;;;;;;;;;;;;;:17;;:42;;;;:::i;:::-;11734:8;:13;11743:3;11734:13;;;;;;;;;;;;;;;:58;;;;11822:41;11839:18;:23;11858:3;11839:23;;;;;;;;;;;;;;;;11822:12;:16;;:41;;;;:::i;:::-;11807:56;;11904:1;11878:18;:23;11897:3;11878:23;;;;;;;;;;;;;;;:27;;;;11634:283;11942:26;11966:1;381:7;11958:9;11942:11;;:15;;:26;;;;:::i;:::-;11934:4;:34;;11933:70;;;;;12001:1;11974:19;:24;11994:3;11974:24;;;;;;;;;;;;;;;;:28;11933:70;11929:287;;;12046:43;12064:19;:24;12084:3;12064:24;;;;;;;;;;;;;;;;12046:8;:13;12055:3;12046:13;;;;;;;;;;;;;;;;:17;;:43;;;;:::i;:::-;12030:8;:13;12039:3;12030:13;;;;;;;;;;;;;;;:59;;;;12119:42;12136:19;:24;12156:3;12136:24;;;;;;;;;;;;;;;;12119:12;:16;;:42;;;;:::i;:::-;12104:57;;12203:1;12176:19;:24;12196:3;12176:24;;;;;;;;;;;;;;;:28;;;;11929:287;12245:3;12233:30;;;12250:12;12233:30;;;;;;;;;;;;;;;;;;433:1:1;;10820:1451:3;:::o;12763:193::-;12857:12;414:7:1;;;;;;;;;;;400:21;;:10;:21;;;392:30;;;;;;12909:12:3;12894:37;;;12932:7;;;;;;;;;;;12941:6;12894:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12894:54:3;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12894:54:3;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12894:54:3;;;;;;;;;;;;;;;;12887:61;;12763:193;;;;:::o;5834:548::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;5915:11:3;325:19;5929:6;:12;5915:26;;5977:27;5997:6;5977:15;;:19;;:27;;;;:::i;:::-;325:19;516:10;:16;5960:44;;5952:53;;;;;;6049:32;6074:6;6049:8;:20;6058:10;6049:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6026:8;:20;6035:10;6026:20;;;;;;;;;;;;;;;:55;;;;6118:25;6136:6;6118:8;:13;6127:3;6118:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;6102:8;:13;6111:3;6102:13;;;;;;;;;;;;;;;:41;;;;6182:27;6202:6;6182:15;;:19;;:27;;;;:::i;:::-;6164:15;:45;;;;6239:28;6260:6;6239:16;;:20;;:28;;;;:::i;:::-;6220:16;:47;;;;6303:3;6293:22;;;6308:6;6293:22;;;;;;;;;;;;;;;;;;6362:3;6341:33;;6350:10;6341:33;;;6367:6;6341:33;;;;;;;;;;;;;;;;;;334:1:1;5834:548:3;;:::o;4352:139::-;4426:4;4456:9;:17;4466:6;4456:17;;;;;;;;;;;;;;;:27;4474:8;4456:27;;;;;;;;;;;;;;;;4449:34;;4352:139;;;;:::o;9691:516::-;316:6:1;;;;;;;;;;;302:20;;:10;:20;;;294:29;;;;;;9773:11:3;325:19;9787:6;:12;9773:26;;9848:30;9871:6;9848:18;;:22;;:30;;;;:::i;:::-;325:19;847:9;:15;9828:50;;9820:59;;;;;;9923:32;9948:6;9923:8;:20;9932:10;9923:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9900:8;:20;9909:10;9900:20;;;;;;;;;;;;;;;:55;;;;9992:25;10010:6;9992:8;:13;10001:3;9992:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;9976:8;:13;9985:3;9976:13;;;;;;;;;;;;;;;:41;;;;10059:30;10082:6;10059:18;;:22;;:30;;;;:::i;:::-;10038:18;:51;;;;10128:3;10115:25;;;10133:6;10115:25;;;;;;;;;;;;;;;;;;10187:3;10166:33;;10175:10;10166:33;;;10192:6;10166:33;;;;;;;;;;;;;;;;;;334:1:1;9691:516:3;;:::o;1271:26::-;;;;:::o;1890:28::-;;;;;;;;;;;;;:::o;58:21:1:-;;;;;;;;;;;;;:::o;1338:30:3:-;;;;:::o;951:63::-;381:7;1005:1;:9;951:63;:::o;10215:268::-;10263:4;10301:5;10288:18;;:9;;;;;;;;;;;:18;;;10285:158;;;10339:4;10332:11;;;;10285:158;10387:7;;;;;;;;;;;10373:21;;:10;:21;;;10370:73;;;10427:4;10420:11;;;;10370:73;10470:5;10463:12;;10215:268;;:::o;57:186:2:-;115:7;140:9;156:1;152;:5;140:17;;181:1;176;:6;;168:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;234:1;227:8;;;57:186;;;;:::o;251:189::-;309:7;347:1;342;:6;;334:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;394:9;410:1;406;:5;394:17;;431:1;424:8;;;251:189;;;;:::o;448:255::-;506:7;540:1;535;:6;531:47;;;565:1;558:8;;;;531:47;590:9;606:1;602;:5;590:17;;635:1;630;626;:5;;;;;;:10;618:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;694:1;687:8;;;448:255;;;;;:::o
Swarm Source
bzzr://cd000ccbbeaeb21e7c6047af4e07762a2717627697fcb8e57c27b02403c63f60
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.