ERC-20
Overview
Max Total Supply
1,527.9987200014 DAA
Holders
111
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 10 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
TokenDAA
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-06-06 */ pragma solidity >=0.4.22 <0.6.0; interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; } interface CitizenInterface { function pushGametRefIncome(address _sender) external payable; function pushGametRefIncomeToken(address _sender, uint256 _amount) external; function addGameWinIncome(address _citizen, uint256 _value, bool _enough) external; function addGameEthSpendWin(address _citizen, uint256 _value, uint256 _valuewin, bool _enough) external; } library SafeMath { int256 constant private INT256_MIN = -2**255; /** * @dev Multiplies two unsigned integers, reverts on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b); return c; } /** * @dev Multiplies two signed integers, reverts on overflow. */ function mul(int256 a, int256 b) internal pure returns (int256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } require(!(a == -1 && b == INT256_MIN)); // This is the only case of overflow not detected by the check below int256 c = a * b; require(c / a == b); return c; } /** * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Integer division of two signed integers truncating the quotient, reverts on division by zero. */ function div(int256 a, int256 b) internal pure returns (int256) { require(b != 0); // Solidity only automatically asserts when dividing by 0 require(!(b == -1 && a == INT256_MIN)); // This is the only case of overflow int256 c = a / b; return c; } /** * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a); uint256 c = a - b; return c; } /** * @dev Subtracts two signed integers, reverts on overflow. */ function sub(int256 a, int256 b) internal pure returns (int256) { int256 c = a - b; require((b >= 0 && c <= a) || (b < 0 && c > a)); return c; } /** * @dev Adds two unsigned integers, reverts on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a); return c; } /** * @dev Adds two signed integers, reverts on overflow. */ function add(int256 a, int256 b) internal pure returns (int256) { int256 c = a + b; require((b >= 0 && c >= a) || (b < 0 && c < a)); return c; } /** * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo), * reverts when dividing by zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } } contract TokenDAA { modifier onlyCoreContract() { require(isCoreContract[msg.sender], "admin required"); _; } modifier onlyAdmin() { require(msg.sender == devTeam1, "admin required"); _; } using SafeMath for *; // Public variables of the token string public name; string public symbol; uint8 public decimals = 10; uint256 public totalSupply; uint256 public totalSupplyBurned; uint256 public unitRate; // This creates an array with all balances mapping (address => uint256) public balanceOf; mapping (address => uint256) public totalSupplyByAddress; mapping (address => mapping (address => uint256)) public allowance; // Mining Token uint256 public HARD_TOTAL_SUPPLY = 20000000; uint256 public HARD_TOTAL_SUPPLY_BY_LEVEL = 200000; uint8 public MAX_LEVEL = 9; uint8 public MAX_ROUND = 10; uint256[10] public ETH_WIN = [uint(55),60,65,70,75,80,85,90,95,100]; // take 3 demical rest is 15 uint256[10] public ETH_LOSE = [uint(50),55,60,65,70,75,80,85,90,95]; // take 3 demical rest is 15 uint8 public currentRound = 1; uint8 public currentLevel = 0; mapping (uint256 => mapping(uint256 =>uint256)) public totalSupplyByLevel; // Event event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed _owner, address indexed _spender, uint256 _value); event Burn(address indexed from, uint256 value, uint256 creationDate); // Contract mapping (address => bool) public isCoreContract; uint256 public coreContractSum; address[] public coreContracts; CitizenInterface CitizenContract; address devTeam1; address devTeam2; address devTeam3; address devTeam4; // Freeze Tokens uint256 LIMIT_FREEZE_TOKEN = 10; struct Profile{ uint256 citizenBalanceToken; uint256 citizenBalanceEth; mapping(uint256=>uint256) citizenFrozenBalance; uint256 lastDividendPulledRound; } uint256 public currentRoundDividend=1; struct DividendRound{ uint256 totalEth; uint256 totalEthCredit; uint256 totalToken; uint256 totalTokenCredit; uint256 totalFrozenBalance; uint256 endRoundTime; } uint8 public BURN_TOKEN_PERCENT = 50; uint8 public DIVIDEND_FOR_CURRENT_PERCENT = 70; uint8 public DIVIDEND_KEEP_NEXT_PERCENT = 30; uint256 public NEXT_DEVIDEND_ROUND= 1209600; // 2 week = 1209600 seconds uint256 public clockDevidend; mapping (uint256 => DividendRound) public dividendRound; mapping (address => Profile) public citizen; /** * Constructor function * * Initializes contract with initial supply tokens to the creator of the contract */ constructor(address[4] _devTeam) public { // totalSupply = initialSupply * 10 ** uint256(decimals); // Update total supply with the decimal amount totalSupply = 0; unitRate = 10 ** uint256(decimals); HARD_TOTAL_SUPPLY = HARD_TOTAL_SUPPLY.mul(unitRate); HARD_TOTAL_SUPPLY_BY_LEVEL = HARD_TOTAL_SUPPLY_BY_LEVEL.mul(unitRate); LIMIT_FREEZE_TOKEN = LIMIT_FREEZE_TOKEN.mul(unitRate); for (uint i = 0; i < ETH_WIN.length; i++){ ETH_WIN[i] = ETH_WIN[i].mul(10 ** uint256(15)); ETH_LOSE[i]= ETH_LOSE[i].mul(10 ** uint256(15)); } balanceOf[msg.sender] = totalSupply; // Give the creator all initial tokens name = "DABANKING"; // Set the name for display purposes symbol = "DAA"; // Set the symbol for display purposes clockDevidend = 1561899600; devTeam1 = _devTeam[0]; devTeam2 = _devTeam[1]; devTeam3 = _devTeam[2]; devTeam4 = _devTeam[3]; } // DAAContract, TicketContract, CitizenContract function joinNetwork(address[3] _contract) public { require(address(CitizenContract) == 0x0,"already setup"); CitizenContract = CitizenInterface(_contract[2]); for(uint256 i =0; i<3; i++){ isCoreContract[_contract[i]]=true; coreContracts.push(_contract[i]); } coreContractSum = 3; } function changeDev4(address _address) public onlyAdmin(){ require(_address!=0x0,"Invalid address"); devTeam4 = _address; } function addCoreContract(address _address) public // [dev1] onlyAdmin() { require(_address!=0x0,"Invalid address"); isCoreContract[_address] = true; coreContracts.push(_address); coreContractSum+=1; } function balanceOf(address _sender) public view returns(uint256) { return balanceOf[_sender] - citizen[_sender].citizenFrozenBalance[currentRoundDividend]; } function getBalanceOf(address _sender) public view returns(uint256) { return balanceOf[_sender] - citizen[_sender].citizenFrozenBalance[currentRoundDividend]; } /** * Internal transfer, only can be called by this contract */ function _transfer(address _from, address _to, uint _value) internal { // Prevent transfer to 0x0 address. Use burn() instead require(_to != address(0x0)); // Check if the sender has enough require(getBalanceOf(_from) >= _value); // Check for overflows require(balanceOf[_to] + _value >= balanceOf[_to]); // Save this for an assertion in the future uint previousBalances = balanceOf[_from] + balanceOf[_to]; // Subtract from the sender balanceOf[_from] -= _value; // Add the same to the recipient balanceOf[_to] += _value; if (_to == address(this)){ citizen[msg.sender].citizenBalanceToken += _value; } emit Transfer(_from, _to, _value); // Asserts are used to use static analysis to find bugs in your code. They should never fail assert(balanceOf[_from] + balanceOf[_to] == previousBalances); } function citizenFreeze(uint _value) public returns (bool success) { require(balanceOf[msg.sender]-citizen[msg.sender].citizenFrozenBalance[currentRoundDividend]>= _value); require(citizen[msg.sender].citizenFrozenBalance[currentRoundDividend] + _value >= LIMIT_FREEZE_TOKEN,"Must over than limit"); citizen[msg.sender].citizenFrozenBalance[currentRoundDividend] += _value; dividendRound[currentRoundDividend].totalFrozenBalance += _value; return true; } function citizenUnfreeze() public returns (bool success) { require(citizen[msg.sender].citizenFrozenBalance[currentRoundDividend]>0); dividendRound[currentRoundDividend].totalFrozenBalance -= citizen[msg.sender].citizenFrozenBalance[currentRoundDividend]; citizen[msg.sender].citizenFrozenBalance[currentRoundDividend]=0; return true; } function getCitizenFreezing(address _sender) public view returns(uint256){ return citizen[_sender].citizenFrozenBalance[currentRoundDividend]; } function getCitizenFreezingBuyRound(address _sender, uint256 _round) public view returns(uint256){ return citizen[_sender].citizenFrozenBalance[_round]; } function getCitizenDevidendBuyRound(address _sender, uint256 _round) public view returns(uint256){ uint256 _totalEth = dividendRound[_round].totalEth; if (dividendRound[_round].totalEthCredit==0&÷ndRound[_round].totalFrozenBalance>0){ return _totalEth*citizen[_sender].citizenFrozenBalance[_round]/dividendRound[_round].totalFrozenBalance; } return 0; } function getDividendView(address _sender) public view returns(uint256){ uint256 _last_round = citizen[_sender].lastDividendPulledRound; if (_last_round + 100 < currentRoundDividend) _last_round = currentRoundDividend - 100; uint256 _sum; uint256 _citizen_fronzen; uint256 _totalEth; for (uint256 i = _last_round;i<currentRoundDividend;i++){ _totalEth = dividendRound[i].totalEth; if (dividendRound[i].totalEthCredit==0&÷ndRound[i].totalFrozenBalance>0){ _citizen_fronzen = citizen[_sender].citizenFrozenBalance[i]; _sum = _sum.add(_totalEth.mul(_citizen_fronzen).div(dividendRound[i].totalFrozenBalance)); } } return _sum; } function getDividendPull(address _sender, uint256 _value) public returns(uint256){ uint256 _last_round = citizen[_sender].lastDividendPulledRound; if (_last_round + 100 < currentRoundDividend) _last_round = currentRoundDividend - 100; uint256 _sum; uint256 _citizen_fronzen; uint256 _totalEth; for (uint256 i = _last_round;i<currentRoundDividend;i++){ _totalEth = dividendRound[i].totalEth; if (dividendRound[i].totalEthCredit==0&÷ndRound[i].totalFrozenBalance>0){ _citizen_fronzen = citizen[_sender].citizenFrozenBalance[i]; _sum = _sum.add(_totalEth.mul(_citizen_fronzen).div(dividendRound[i].totalFrozenBalance)); } } if (_value.add(_sum)==0){ require(dividendRound[currentRoundDividend].totalEthCredit==0); } if (citizen[_sender].citizenBalanceEth>0&÷ndRound[currentRoundDividend].totalEthCredit==0){ _sum = _sum.add(citizen[_sender].citizenBalanceEth); citizen[_sender].citizenBalanceEth = 0; } _sender.transfer(_sum); citizen[_sender].lastDividendPulledRound = currentRoundDividend; return _sum; } // automatic after 2 share 70% weeks keep 30% next round [dev4] function endDividendRound() public { require(msg.sender==devTeam4); require(now>clockDevidend); dividendRound[currentRoundDividend].endRoundTime = now; uint256 _for_next_round; if (dividendRound[currentRoundDividend].totalEthCredit>0){ // mean totalEth is <0 _for_next_round = dividendRound[currentRoundDividend].totalEth; dividendRound[currentRoundDividend+1].totalEth = _for_next_round; dividendRound[currentRoundDividend+1].totalEthCredit = dividendRound[currentRoundDividend].totalEthCredit; } else{ _for_next_round = dividendRound[currentRoundDividend].totalEth*DIVIDEND_KEEP_NEXT_PERCENT/100; dividendRound[currentRoundDividend].totalEth = dividendRound[currentRoundDividend].totalEth*DIVIDEND_FOR_CURRENT_PERCENT/100; dividendRound[currentRoundDividend+1].totalEth = _for_next_round; } if (dividendRound[currentRoundDividend].totalTokenCredit>0){ dividendRound[currentRoundDividend+1].totalToken = dividendRound[currentRoundDividend].totalToken; dividendRound[currentRoundDividend+1].totalTokenCredit = dividendRound[currentRoundDividend].totalTokenCredit; } else{ // Burn 50% token _for_next_round = dividendRound[currentRoundDividend].totalToken*BURN_TOKEN_PERCENT/100; dividendRound[currentRoundDividend+1].totalToken = _for_next_round; burnFrom(address(this),_for_next_round); burnFrom(devTeam2,_for_next_round*4/6); // balanceOf[address(this)] = balanceOf[address(this)].sub(_for_next_round); // balanceOf[devTeam2] = balanceOf[devTeam2].sub(); // totalSupply = totalSupply.sub(_for_next_round*10/6); } currentRoundDividend+=1; clockDevidend= clockDevidend.add(NEXT_DEVIDEND_ROUND); } // share 100% dividen [dev 1] function nextDividendRound() onlyAdmin() public { require(dividendRound[currentRoundDividend].totalEth>0); dividendRound[currentRoundDividend].endRoundTime = now; currentRoundDividend+=1; // clockDevidend = clockDevidend.add(NEXT_DEVIDEND_ROUND); } function citizenDeposit(uint _value) public returns (bool success) { require(getBalanceOf(msg.sender)>=_value); _transfer(msg.sender, address(this), _value); return true; } function citizenUseDeposit(address _citizen, uint _value) onlyCoreContract() public{ require(citizen[_citizen].citizenBalanceToken >= _value,"Not enough Token"); dividendRound[currentRoundDividend].totalToken += _value; if (dividendRound[currentRoundDividend].totalToken>dividendRound[currentRoundDividend].totalTokenCredit&÷ndRound[currentRoundDividend].totalTokenCredit>0){ dividendRound[currentRoundDividend].totalToken = dividendRound[currentRoundDividend].totalToken.sub(dividendRound[currentRoundDividend].totalTokenCredit); dividendRound[currentRoundDividend].totalTokenCredit=0; } citizen[_citizen].citizenBalanceToken-=_value; } function pushDividend() public payable{ uint256 _value = msg.value; dividendRound[currentRoundDividend].totalEth = dividendRound[currentRoundDividend].totalEth.add(_value); if (dividendRound[currentRoundDividend].totalEth>dividendRound[currentRoundDividend].totalEthCredit&÷ndRound[currentRoundDividend].totalEthCredit>0){ dividendRound[currentRoundDividend].totalEth = dividendRound[currentRoundDividend].totalEth.sub(dividendRound[currentRoundDividend].totalEthCredit); dividendRound[currentRoundDividend].totalEthCredit=0; } } function payOut(address _winner, uint256 _unit, uint256 _value, uint256 _valuebet) onlyCoreContract() public{ if (_unit==0){ citizenMintToken(_winner,_valuebet,1); if (dividendRound[currentRoundDividend].totalEth<_value){ // ghi no citizen citizen[_winner].citizenBalanceEth+=_value; CitizenContract.addGameEthSpendWin(_winner, _valuebet, _value, false); dividendRound[currentRoundDividend].totalEthCredit+=_value; } else{ _winner.transfer(_value); CitizenContract.addGameEthSpendWin(_winner, _valuebet, _value, true); dividendRound[currentRoundDividend].totalEth = dividendRound[currentRoundDividend].totalEth.sub(_value); } } else{ if (dividendRound[currentRoundDividend].totalToken<_value){ dividendRound[currentRoundDividend].totalTokenCredit += _value; citizen[_winner].citizenBalanceToken+=_value; } else { dividendRound[currentRoundDividend].totalToken -= _value; citizen[_winner].citizenBalanceToken+=_value; } } } // Tomorrow function pushGameRefIncome(address _sender,uint256 _unit, uint256 _value) public onlyCoreContract(){ if (_unit==1){ dividendRound[currentRoundDividend].totalEth = dividendRound[currentRoundDividend].totalEth.sub(_value); CitizenContract.pushGametRefIncome.value(_value)(_sender); }else{ CitizenContract.pushGametRefIncomeToken(_sender,_value); } } function citizenWithdrawDeposit(uint _value) public returns (bool success){ require(citizen[msg.sender].citizenBalanceToken >=_value); _transfer(address(this),msg.sender,_value); citizen[msg.sender].citizenBalanceToken-=_value; return true; } function ethToToken(uint256 _ethAmount, int8 _is_win) private view returns(uint256){ if (_is_win==1) { return uint256(_ethAmount) * unitRate / uint256(ETH_WIN[currentLevel]);} return _ethAmount * unitRate / uint256(ETH_LOSE[currentLevel]) ; } function citizenMintToken(address _buyer, uint256 _buyPrice, int8 _is_win) public onlyCoreContract() returns(uint256) { uint256 revTokens = ethToToken( _buyPrice, _is_win); if (revTokens*10/6 + totalSupplyByLevel[currentRound][currentLevel] > HARD_TOTAL_SUPPLY_BY_LEVEL){ uint256 revTokenCurrentLevel = HARD_TOTAL_SUPPLY_BY_LEVEL.sub(totalSupplyByLevel[currentRound][currentLevel]); revTokenCurrentLevel = revTokenCurrentLevel*6/10; balanceOf[_buyer]= balanceOf[_buyer].add(revTokenCurrentLevel); emit Transfer(0x0, _buyer, revTokenCurrentLevel); totalSupplyByAddress[_buyer] = totalSupplyByAddress[_buyer].add(revTokenCurrentLevel); balanceOf[devTeam2] = balanceOf[devTeam2].add(revTokenCurrentLevel*4/6); emit Transfer(0x0, devTeam2, revTokenCurrentLevel*4/6); totalSupply = totalSupply.add(revTokenCurrentLevel*10/6); totalSupplyByLevel[currentRound][currentLevel] = HARD_TOTAL_SUPPLY_BY_LEVEL; // End round uplevel if (currentLevel+1>MAX_LEVEL){ if(currentRound+1>MAX_ROUND){ return revTokenCurrentLevel; } currentRound+=1; currentLevel=0; } else { currentLevel+=1; } // Push pushDividend change to each 2 weeks return revTokenCurrentLevel; } else { balanceOf[_buyer]= balanceOf[_buyer].add(revTokens); emit Transfer(0x0, _buyer, revTokens); totalSupplyByAddress[_buyer] = totalSupplyByAddress[_buyer].add(revTokens); balanceOf[devTeam2] = balanceOf[devTeam2].add(revTokens*4/6); emit Transfer(0x0, devTeam2, revTokens*4/6); totalSupply = totalSupply.add(revTokens*10/6); totalSupplyByLevel[currentRound][currentLevel] = totalSupplyByLevel[currentRound][currentLevel].add(revTokens*10/6); return revTokens; } } function getCitizenBalanceEth(address _sender) view public returns(uint256){ return citizen[_sender].citizenBalanceEth; } /** * Transfer tokens * * Send `_value` tokens to `_to` from your account * * @param _to The address of the recipient * @param _value the amount to send */ function transfer(address _to, uint256 _value) public returns (bool success) { _transfer(msg.sender, _to, _value); return true; } /** * Transfer tokens from other address * * Send `_value` tokens to `_to` on behalf of `_from` * * @param _from The address of the sender * @param _to The address of the recipient * @param _value the amount to send */ function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { require(_value <= allowance[_from][msg.sender]); // Check allowance allowance[_from][msg.sender] -= _value; _transfer(_from, _to, _value); return true; } /** * Set allowance for other address * * Allows `_spender` to spend no more than `_value` tokens on your behalf * * @param _spender The address authorized to spend * @param _value the max amount they can spend */ function approve(address _spender, uint256 _value) public returns (bool success) { allowance[msg.sender][_spender] = _value; // emit Approval(msg.sender, _spender, _value); return true; } /** * Set allowance for other address and notify * * Allows `_spender` to spend no more than `_value` tokens on your behalf, and then ping the contract about it * * @param _spender The address authorized to spend * @param _value the max amount they can spend * @param _extraData some extra information to send to the approved contract */ function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) { tokenRecipient spender = tokenRecipient(_spender); if (approve(_spender, _value)) { spender.receiveApproval(msg.sender, _value, address(this), _extraData); return true; } } /** * Destroy tokens * * Remove `_value` tokens from the system irreversibly * * @param _value the amount of money to burn */ function burn(uint256 _value) public returns (bool success) { require(balanceOf[msg.sender] >= _value); // Check if the sender has enough balanceOf[msg.sender] -= _value; // Subtract from the sender totalSupply -= _value; // Updates totalSupply emit Burn(msg.sender, _value, now); return true; } /** * Destroy tokens from other account * * Remove `_value` tokens from the system irreversibly on behalf of `_from`. * * @param _from the address of the sender * @param _value the amount of money to burn */ function burnFrom(address _from, uint256 _value) public returns (bool success) { require(balanceOf[_from] >= _value); // Check if the targeted balance is enough // require(_value <= allowance[_from][msg.sender]); // Check allowance balanceOf[_from] -= _value; // Subtract from the targeted balance // allowance[_from][msg.sender] -= _value; // Subtract from the sender's allowance totalSupply -= _value; // Update totalSupply totalSupplyBurned += _value; emit Burn(_from, _value, now); return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_round","type":"uint256"}],"name":"getCitizenFreezingBuyRound","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_citizen","type":"address"},{"name":"_value","type":"uint256"}],"name":"citizenUseDeposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_sender","type":"address"},{"name":"_value","type":"uint256"}],"name":"getDividendPull","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_buyer","type":"address"},{"name":"_buyPrice","type":"uint256"},{"name":"_is_win","type":"int8"}],"name":"citizenMintToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"totalSupplyByLevel","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getDividendView","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"unitRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"citizenDeposit","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getCitizenBalanceEth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contract","type":"address[3]"}],"name":"joinNetwork","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"DIVIDEND_KEEP_NEXT_PERCENT","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"citizenFreeze","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"ETH_LOSE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"citizenWithdrawDeposit","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"nextDividendRound","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getCitizenFreezing","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"HARD_TOTAL_SUPPLY_BY_LEVEL","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"},{"name":"_round","type":"uint256"}],"name":"getCitizenDevidendBuyRound","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"ETH_WIN","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"coreContracts","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"endDividendRound","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"}],"name":"burnFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"BURN_TOKEN_PERCENT","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addCoreContract","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupplyBurned","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentRound","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"citizen","outputs":[{"name":"citizenBalanceToken","type":"uint256"},{"name":"citizenBalanceEth","type":"uint256"},{"name":"lastDividendPulledRound","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getBalanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentLevel","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"MAX_LEVEL","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"NEXT_DEVIDEND_ROUND","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":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_sender","type":"address"},{"name":"_unit","type":"uint256"},{"name":"_value","type":"uint256"}],"name":"pushGameRefIncome","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAX_ROUND","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"currentRoundDividend","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pushDividend","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"totalSupplyByAddress","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"changeDev4","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"citizenUnfreeze","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isCoreContract","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_winner","type":"address"},{"name":"_unit","type":"uint256"},{"name":"_value","type":"uint256"},{"name":"_valuebet","type":"uint256"}],"name":"payOut","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"HARD_TOTAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"dividendRound","outputs":[{"name":"totalEth","type":"uint256"},{"name":"totalEthCredit","type":"uint256"},{"name":"totalToken","type":"uint256"},{"name":"totalTokenCredit","type":"uint256"},{"name":"totalFrozenBalance","type":"uint256"},{"name":"endRoundTime","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"coreContractSum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"clockDevidend","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"DIVIDEND_FOR_CURRENT_PERCENT","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_devTeam","type":"address[4]"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"creationDate","type":"uint256"}],"name":"Burn","type":"event"}]
Contract Creation Code
6080604052600a600260006101000a81548160ff021916908360ff1602179055506301312d0060095562030d40600a556009600b60006101000a81548160ff021916908360ff160217905550600a600b60016101000a81548160ff021916908360ff1602179055506101406040519081016040528060378152602001603c81526020016041815260200160468152602001604b81526020016050815260200160558152602001605a8152602001605f81526020016064815250600c90600a620000ca929190620005e2565b50610140604051908101604052806032815260200160378152602001603c81526020016041815260200160468152602001604b81526020016050815260200160558152602001605a8152602001605f815250601690600a6200012e929190620005e2565b506001602060006101000a81548160ff021916908360ff1602179055506000602060016101000a81548160ff021916908360ff160217905550600a602a556001602b556032602c60006101000a81548160ff021916908360ff1602179055506046602c60016101000a81548160ff021916908360ff160217905550601e602c60026101000a81548160ff021916908360ff16021790555062127500602d55348015620001d957600080fd5b506040516080806200539983398101806040528101908091905050600080600381905550600260009054906101000a900460ff1660ff16600a0a60058190555062000240600554600954620005a06401000000000262004801179091906401000000009004565b6009819055506200026d600554600a54620005a06401000000000262004801179091906401000000009004565b600a819055506200029a600554602a54620005a06401000000000262004801179091906401000000009004565b602a81905550600090505b600a8110156200035757620002e7600f600a0a600c83600a81101515620002c857fe5b0154620005a06401000000000262004801179091906401000000009004565b600c82600a81101515620002f757fe5b018190555062000334600f600a0a601683600a811015156200031557fe5b0154620005a06401000000000262004801179091906401000000009004565b601682600a811015156200034457fe5b01819055508080600101915050620002a5565b600354600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506040805190810160405280600981526020017f444142414e4b494e47000000000000000000000000000000000000000000000081525060009080519060200190620003ea92919062000627565b506040805190810160405280600381526020017f4441410000000000000000000000000000000000000000000000000000000000815250600190805190602001906200043892919062000627565b50635d18b250602e819055508160006004811015156200045457fe5b6020020151602660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816001600481101515620004a957fe5b6020020151602760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816002600481101515620004fe57fe5b6020020151602860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160036004811015156200055357fe5b6020020151602960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050620006d6565b6000806000841415620005b75760009150620005db565b8284029050828482811515620005c957fe5b04141515620005d757600080fd5b8091505b5092915050565b82600a810192821562000614579160200282015b8281111562000613578251825591602001919060010190620005f6565b5b509050620006239190620006ae565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200066a57805160ff19168380011785556200069b565b828001600101855582156200069b579182015b828111156200069a5782518255916020019190600101906200067d565b5b509050620006aa9190620006ae565b5090565b620006d391905b80821115620006cf576000816000905550600101620006b5565b5090565b90565b614cb380620006e66000396000f30060806040526004361061029e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063012c56cc146102a357806306fdde0314610304578063095ea7b314610394578063096024e4146103f9578063159fb08a1461044657806318160ddd146104a757806318af295f146104d257806323b872dd14610540578063291603f4146105c5578063292a01c8146106105780632e8c9026146106675780632eb684c9146106925780632f9dfc99146106d7578063313ce5671461072e5780633187b8711461075f578063381c5f92146107b157806339c846d5146107e2578063418751ea1461082757806342966c68146108685780634cf13f5c146108ad57806352a8f201146108f257806359012e8e14610909578063647ca4b2146109605780636a227a491461098b5780636b2192a2146109ec5780637021c15d14610a2d57806370a0823114610a9a57806370b0d06614610af157806379cc679014610b085780637a7d974d14610b6d5780637b71b38414610b9e578063859f6d8a14610be15780638a19c8bc14610c0c57806395d89b4114610c3d5780639b86a6db14610ccd5780639b96eece14610d325780639dc4b9c914610d89578063a49062d414610dba578063a8b5d65414610deb578063a9059cbb14610e16578063b462554714610e7b578063b4ac62c514610ed2578063b94e5c6814610f03578063ba604da614610f2e578063bbe9628a14610f38578063c620356914610f8f578063c6ee602914610fd2578063cae9ca5114611001578063d22a20cd146110ac578063dd62ed3e14611107578063e06a37da1461117e578063e6dd5155146111df578063e936694f1461120a578063ee5023e51461126e578063f52a00ca14611299578063f6710bf6146112c4575b600080fd5b3480156102af57600080fd5b506102ee600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112f5565b6040518082815260200191505060405180910390f35b34801561031057600080fd5b50610319611353565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035957808201518184015260208101905061033e565b50505050905090810190601f1680156103865780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103a057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113f1565b604051808215151515815260200191505060405180910390f35b34801561040557600080fd5b50610444600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061147e565b005b34801561045257600080fd5b50610491600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061174d565b6040518082815260200191505060405180910390f35b3480156104b357600080fd5b506104bc611abc565b6040518082815260200191505060405180910390f35b3480156104de57600080fd5b5061052a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803560000b9060200190929190505050611ac2565b6040518082815260200191505060405180910390f35b34801561054c57600080fd5b506105ab600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612480565b604051808215151515815260200191505060405180910390f35b3480156105d157600080fd5b506105fa60048036038101908080359060200190929190803590602001909291905050506125ad565b6040518082815260200191505060405180910390f35b34801561061c57600080fd5b50610651600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125d2565b6040518082815260200191505060405180910390f35b34801561067357600080fd5b5061067c61275e565b6040518082815260200191505060405180910390f35b34801561069e57600080fd5b506106bd60048036038101908080359060200190929190505050612764565b604051808215151515815260200191505060405180910390f35b3480156106e357600080fd5b50610718600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612791565b6040518082815260200191505060405180910390f35b34801561073a57600080fd5b506107436127dd565b604051808260ff1660ff16815260200191505060405180910390f35b34801561076b57600080fd5b506107af60048036038101908080606001906003806020026040519081016040528092919082600360200280828437820191505050505091929192905050506127f0565b005b3480156107bd57600080fd5b506107c66129fe565b604051808260ff1660ff16815260200191505060405180910390f35b3480156107ee57600080fd5b5061080d60048036038101908080359060200190929190505050612a11565b604051808215151515815260200191505060405180910390f35b34801561083357600080fd5b5061085260048036038101908080359060200190929190505050612c1b565b6040518082815260200191505060405180910390f35b34801561087457600080fd5b5061089360048036038101908080359060200190929190505050612c35565b604051808215151515815260200191505060405180910390f35b3480156108b957600080fd5b506108d860048036038101908080359060200190929190505050612d41565b604051808215151515815260200191505060405180910390f35b3480156108fe57600080fd5b50610907612df8565b005b34801561091557600080fd5b5061094a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f14565b6040518082815260200191505060405180910390f35b34801561096c57600080fd5b50610975612f73565b6040518082815260200191505060405180910390f35b34801561099757600080fd5b506109d6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f79565b6040518082815260200191505060405180910390f35b3480156109f857600080fd5b50610a1760048036038101908080359060200190929190505050613060565b6040518082815260200191505060405180910390f35b348015610a3957600080fd5b50610a586004803603810190808035906020019092919050505061307a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610aa657600080fd5b50610adb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506130b8565b6040518082815260200191505060405180910390f35b348015610afd57600080fd5b50610b06613158565b005b348015610b1457600080fd5b50610b53600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613497565b604051808215151515815260200191505060405180910390f35b348015610b7957600080fd5b50610b826135b4565b604051808260ff1660ff16815260200191505060405180910390f35b348015610baa57600080fd5b50610bdf600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135c7565b005b348015610bed57600080fd5b50610bf66137ed565b6040518082815260200191505060405180910390f35b348015610c1857600080fd5b50610c216137f3565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c4957600080fd5b50610c52613806565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c92578082015181840152602081019050610c77565b50505050905090810190601f168015610cbf5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cd957600080fd5b50610d0e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138a4565b60405180848152602001838152602001828152602001935050505060405180910390f35b348015610d3e57600080fd5b50610d73600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138ce565b6040518082815260200191505060405180910390f35b348015610d9557600080fd5b50610d9e61396e565b604051808260ff1660ff16815260200191505060405180910390f35b348015610dc657600080fd5b50610dcf613981565b604051808260ff1660ff16815260200191505060405180910390f35b348015610df757600080fd5b50610e00613994565b6040518082815260200191505060405180910390f35b348015610e2257600080fd5b50610e61600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061399a565b604051808215151515815260200191505060405180910390f35b348015610e8757600080fd5b50610ed0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506139b1565b005b348015610ede57600080fd5b50610ee7613c80565b604051808260ff1660ff16815260200191505060405180910390f35b348015610f0f57600080fd5b50610f18613c93565b6040518082815260200191505060405180910390f35b610f36613c99565b005b348015610f4457600080fd5b50610f79600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613dc2565b6040518082815260200191505060405180910390f35b348015610f9b57600080fd5b50610fd0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613dda565b005b348015610fde57600080fd5b50610fe7613f72565b604051808215151515815260200191505060405180910390f35b34801561100d57600080fd5b50611092600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506140b4565b604051808215151515815260200191505060405180910390f35b3480156110b857600080fd5b506110ed600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614237565b604051808215151515815260200191505060405180910390f35b34801561111357600080fd5b50611168600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614257565b6040518082815260200191505060405180910390f35b34801561118a57600080fd5b506111dd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919050505061427c565b005b3480156111eb57600080fd5b506111f461477f565b6040518082815260200191505060405180910390f35b34801561121657600080fd5b5061123560048036038101908080359060200190929190505050614785565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561127a57600080fd5b506112836147c1565b6040518082815260200191505060405180910390f35b3480156112a557600080fd5b506112ae6147c7565b6040518082815260200191505060405180910390f35b3480156112d057600080fd5b506112d96147cd565b604051808260ff1660ff16815260200191505060405180910390f35b6000603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201600083815260200190815260200160002054905092915050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e95780601f106113be576101008083540402835291602001916113e9565b820191906000526020600020905b8154815290600101906020018083116113cc57829003601f168201915b505050505081565b600081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561153f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b80603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101515156115f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4e6f7420656e6f75676820546f6b656e0000000000000000000000000000000081525060200191505060405180910390fd5b80602f6000602b54815260200190815260200160002060020160008282540192505081905550602f6000602b54815260200190815260200160002060030154602f6000602b5481526020019081526020016000206002015411801561167657506000602f6000602b54815260200190815260200160002060030154115b156116f9576116be602f6000602b54815260200190815260200160002060030154602f6000602b548152602001908152602001600020600201546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600201819055506000602f6000602b548152602001908152602001600020600301819055505b80603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055505050565b600080600080600080603060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549450602b546064860110156117b1576064602b540394505b8490505b602b548110156118cc57602f60008281526020019081526020016000206000015491506000602f60008381526020019081526020016000206001015414801561181457506000602f600083815260200190815260200160002060040154115b156118bf57603060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008281526020019081526020016000205492506118bc6118ad602f60008481526020019081526020016000206004015461189f868661480190919063ffffffff16565b61483f90919063ffffffff16565b8561486990919063ffffffff16565b93505b80806001019150506117b5565b60006118e1858961486990919063ffffffff16565b141561190f576000602f6000602b5481526020019081526020016000206001015414151561190e57600080fd5b5b6000603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015411801561197957506000602f6000602b54815260200190815260200160002060010154145b15611a1e576119d3603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548561486990919063ffffffff16565b93506000603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b8773ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f19350505050158015611a64573d6000803e3d6000fd5b50602b54603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550839550505050505092915050565b60035481565b6000806000602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611b88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b611b92858561488a565b9150600a5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff168152602001908152602001600020546006600a8502811515611bef57fe5b040111156120b057611c5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff16815260200190815260200160002054600a546147e090919063ffffffff16565b9050600a60068202811515611c6557fe5b049050611cba81600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3611d9f81600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e65600660048302811515611df457fe5b0460066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b60066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600660048502811515611f3557fe5b046040518082815260200191505060405180910390a3611f6f6006600a8302811515611f5d57fe5b0460035461486990919063ffffffff16565b600381905550600a5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff16815260200190815260200160002081905550600b60009054906101000a900460ff1660ff166001602060019054906101000a900460ff160160ff16111561207957600b60019054906101000a900460ff1660ff166001602060009054906101000a900460ff160160ff16111561202a57809250612477565b6001602060008282829054906101000a900460ff160192506101000a81548160ff021916908360ff1602179055506000602060016101000a81548160ff021916908360ff1602179055506120a8565b6001602060018282829054906101000a900460ff160192506101000a81548160ff021916908360ff1602179055505b809250612477565b61210282600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36121e782600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ad60066004840281151561223c57fe5b0460066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b60066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60066004860281151561237d57fe5b046040518082815260200191505060405180910390a36123b76006600a84028115156123a557fe5b0460035461486990919063ffffffff16565b6003819055506124276006600a84028115156123cf57fe5b0460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff1681526020019081526020016000205461486990919063ffffffff16565b60216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff168152602001908152602001600020819055508192505b50509392505050565b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561250d57600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506125a284848461490c565b600190509392505050565b6021602052816000526040600020602052806000526040600020600091509150505481565b600080600080600080603060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549450602b54606486011015612636576064602b540394505b8490505b602b5481101561275157602f60008281526020019081526020016000206000015491506000602f60008381526020019081526020016000206001015414801561269957506000602f600083815260200190815260200160002060040154115b1561274457603060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000828152602001908152602001600020549250612741612732602f600084815260200190815260200160002060040154612724868661480190919063ffffffff16565b61483f90919063ffffffff16565b8561486990919063ffffffff16565b93505b808060010191505061263a565b8395505050505050919050565b60055481565b600081612770336138ce565b1015151561277d57600080fd5b61278833308461490c565b60019050919050565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b600260009054906101000a900460ff1681565b600080602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156128a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f616c72656164792073657475700000000000000000000000000000000000000081525060200191505060405180910390fd5b8160026003811015156128b057fe5b6020020151602560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600090505b60038110156129f257600160226000848460038110151561291757fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506024828260038110151561297d57fe5b602002015190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505080806001019150506128fa565b60036023819055505050565b602c60029054906101000a900460ff1681565b600081603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540310151515612ab857600080fd5b602a5482603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020540110151515612b89576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4d757374206f766572207468616e206c696d697400000000000000000000000081525060200191505060405180910390fd5b81603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b5481526020019081526020016000206000828254019250508190555081602f6000602b5481526020019081526020016000206004016000828254019250508190555060019050919050565b601681600a81101515612c2a57fe5b016000915090505481565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612c8557600080fd5b81600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a8342604051808381526020018281526020019250505060405180910390a260019050919050565b600081603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410151515612d9457600080fd5b612d9f30338461490c565b81603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555060019050919050565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612ebd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b6000602f6000602b54815260200190815260200160002060000154111515612ee457600080fd5b42602f6000602b548152602001908152602001600020600501819055506001602b60008282540192505081905550565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020549050919050565b600a5481565b600080602f60008481526020019081526020016000206000015490506000602f600085815260200190815260200160002060010154148015612fd157506000602f600085815260200190815260200160002060040154115b1561305457602f600084815260200190815260200160002060040154603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201600085815260200190815260200160002054820281151561304c57fe5b049150613059565b600091505b5092915050565b600c81600a8110151561306f57fe5b016000915090505481565b60248181548110151561308957fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054039050919050565b6000602960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131b657600080fd5b602e54421115156131c657600080fd5b42602f6000602b548152602001908152602001600020600501819055506000602f6000602b54815260200190815260200160002060010154111561327c57602f6000602b54815260200190815260200160002060000154905080602f60006001602b5401815260200190815260200160002060000181905550602f6000602b54815260200190815260200160002060010154602f60006001602b540181526020019081526020016000206001018190555061332d565b6064602c60029054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060000154028115156132b457fe5b0490506064602c60019054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060000154028115156132ef57fe5b04602f6000602b5481526020019081526020016000206000018190555080602f60006001602b54018152602001908152602001600020600001819055505b6000602f6000602b5481526020019081526020016000206003015411156133c357602f6000602b54815260200190815260200160002060020154602f60006001602b5401815260200190815260200160002060020181905550602f6000602b54815260200190815260200160002060030154602f60006001602b5401815260200190815260200160002060030181905550613466565b6064602c60009054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060020154028115156133fb57fe5b04905080602f60006001602b54018152602001908152602001600020600201819055506134283082613497565b50613464602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660066004840281151561345e57fe5b04613497565b505b6001602b6000828254019250508190555061348e602d54602e5461486990919063ffffffff16565b602e8190555050565b600081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156134e757600080fd5b81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008282540392505081905550816004600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a8342604051808381526020018281526020019250505060405180910390a26001905092915050565b602c60009054906101000a900460ff1681565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561368c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151561371b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b6001602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060248190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160236000828254019250508190555050565b60045481565b602060009054906101000a900460ff1681565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561389c5780601f106138715761010080835404028352916020019161389c565b820191906000526020600020905b81548152906001019060200180831161387f57829003601f168201915b505050505081565b60306020528060005260406000206000915090508060000154908060010154908060030154905083565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054039050919050565b602060019054906101000a900460ff1681565b600b60009054906101000a900460ff1681565b602d5481565b60006139a733848461490c565b6001905092915050565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515613a72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b6001821415613b9d57613aa681602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b54815260200190815260200160002060000181905550602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637b42c8ef82856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019150506000604051808303818588803b158015613b7f57600080fd5b505af1158015613b93573d6000803e3d6000fd5b5050505050613c7b565b602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637f2be88484836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015613c6257600080fd5b505af1158015613c76573d6000803e3d6000fd5b505050505b505050565b600b60019054906101000a900460ff1681565b602b5481565b6000349050613cc981602f6000602b5481526020019081526020016000206000015461486990919063ffffffff16565b602f6000602b54815260200190815260200160002060000181905550602f6000602b54815260200190815260200160002060010154602f6000602b54815260200190815260200160002060000154118015613d3c57506000602f6000602b54815260200190815260200160002060010154115b15613dbf57613d84602f6000602b54815260200190815260200160002060010154602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600001819055506000602f6000602b548152602001908152602001600020600101819055505b50565b60076020528060005260406000206000915090505481565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613e9f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515613f2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b80602960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054111515613fd757600080fd5b603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054602f6000602b548152602001908152602001600020600401600082825403925050819055506000603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020819055506001905090565b6000808490506140c485856113f1565b1561422e578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156141be5780820151818401526020810190506141a3565b50505050905090810190601f1680156141eb5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561420d57600080fd5b505af1158015614221573d6000803e3d6000fd5b505050506001915061422f565b5b509392505050565b60226020528060005260406000206000915054906101000a900460ff1681565b6008602052816000526040600020602052806000526040600020600091509150505481565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561433d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008314156146665761435284826001611ac2565b5081602f6000602b5481526020019081526020016000206000015410156144e05781603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008282540192505081905550602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663964dc97b85838560006040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182151515158152602001945050505050600060405180830381600087803b15801561449d57600080fd5b505af11580156144b1573d6000803e3d6000fd5b5050505081602f6000602b54815260200190815260200160002060010160008282540192505081905550614661565b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015614526573d6000803e3d6000fd5b50602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663964dc97b85838560016040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182151515158152602001945050505050600060405180830381600087803b15801561460157600080fd5b505af1158015614615573d6000803e3d6000fd5b5050505061464482602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600001819055505b614779565b81602f6000602b5481526020019081526020016000206002015410156147015781602f6000602b5481526020019081526020016000206003016000828254019250508190555081603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282540192505081905550614778565b81602f6000602b5481526020019081526020016000206002016000828254039250508190555081603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055505b5b50505050565b60095481565b602f6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154905086565b60235481565b602e5481565b602c60019054906101000a900460ff1681565b6000808383111515156147f257600080fd5b82840390508091505092915050565b60008060008414156148165760009150614838565b828402905082848281151561482757fe5b0414151561483457600080fd5b8091505b5092915050565b60008060008311151561485157600080fd5b828481151561485c57fe5b0490508091505092915050565b600080828401905083811015151561488057600080fd5b8091505092915050565b600060018260000b14156148d157600c602060019054906101000a900460ff1660ff16600a811015156148b957fe5b015460055484028115156148c957fe5b049050614906565b6016602060019054906101000a900460ff1660ff16600a811015156148f257fe5b0154600554840281151561490257fe5b0490505b92915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561494957600080fd5b81614953856138ce565b1015151561496057600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101515156149ef57600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905081600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415614b915781603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a380600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401141515614c8157fe5b505050505600a165627a7a72305820888857fe053e5a0a849974af050165542193b42c1007fb451c5cf4baae80d9c8002900000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab78500000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab785000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e631230000000000000000000000001bdf504b2ecf7a43c3ec5847ae950292ca2883c1
Deployed Bytecode
0x60806040526004361061029e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063012c56cc146102a357806306fdde0314610304578063095ea7b314610394578063096024e4146103f9578063159fb08a1461044657806318160ddd146104a757806318af295f146104d257806323b872dd14610540578063291603f4146105c5578063292a01c8146106105780632e8c9026146106675780632eb684c9146106925780632f9dfc99146106d7578063313ce5671461072e5780633187b8711461075f578063381c5f92146107b157806339c846d5146107e2578063418751ea1461082757806342966c68146108685780634cf13f5c146108ad57806352a8f201146108f257806359012e8e14610909578063647ca4b2146109605780636a227a491461098b5780636b2192a2146109ec5780637021c15d14610a2d57806370a0823114610a9a57806370b0d06614610af157806379cc679014610b085780637a7d974d14610b6d5780637b71b38414610b9e578063859f6d8a14610be15780638a19c8bc14610c0c57806395d89b4114610c3d5780639b86a6db14610ccd5780639b96eece14610d325780639dc4b9c914610d89578063a49062d414610dba578063a8b5d65414610deb578063a9059cbb14610e16578063b462554714610e7b578063b4ac62c514610ed2578063b94e5c6814610f03578063ba604da614610f2e578063bbe9628a14610f38578063c620356914610f8f578063c6ee602914610fd2578063cae9ca5114611001578063d22a20cd146110ac578063dd62ed3e14611107578063e06a37da1461117e578063e6dd5155146111df578063e936694f1461120a578063ee5023e51461126e578063f52a00ca14611299578063f6710bf6146112c4575b600080fd5b3480156102af57600080fd5b506102ee600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112f5565b6040518082815260200191505060405180910390f35b34801561031057600080fd5b50610319611353565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035957808201518184015260208101905061033e565b50505050905090810190601f1680156103865780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156103a057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113f1565b604051808215151515815260200191505060405180910390f35b34801561040557600080fd5b50610444600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061147e565b005b34801561045257600080fd5b50610491600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061174d565b6040518082815260200191505060405180910390f35b3480156104b357600080fd5b506104bc611abc565b6040518082815260200191505060405180910390f35b3480156104de57600080fd5b5061052a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803560000b9060200190929190505050611ac2565b6040518082815260200191505060405180910390f35b34801561054c57600080fd5b506105ab600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612480565b604051808215151515815260200191505060405180910390f35b3480156105d157600080fd5b506105fa60048036038101908080359060200190929190803590602001909291905050506125ad565b6040518082815260200191505060405180910390f35b34801561061c57600080fd5b50610651600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125d2565b6040518082815260200191505060405180910390f35b34801561067357600080fd5b5061067c61275e565b6040518082815260200191505060405180910390f35b34801561069e57600080fd5b506106bd60048036038101908080359060200190929190505050612764565b604051808215151515815260200191505060405180910390f35b3480156106e357600080fd5b50610718600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612791565b6040518082815260200191505060405180910390f35b34801561073a57600080fd5b506107436127dd565b604051808260ff1660ff16815260200191505060405180910390f35b34801561076b57600080fd5b506107af60048036038101908080606001906003806020026040519081016040528092919082600360200280828437820191505050505091929192905050506127f0565b005b3480156107bd57600080fd5b506107c66129fe565b604051808260ff1660ff16815260200191505060405180910390f35b3480156107ee57600080fd5b5061080d60048036038101908080359060200190929190505050612a11565b604051808215151515815260200191505060405180910390f35b34801561083357600080fd5b5061085260048036038101908080359060200190929190505050612c1b565b6040518082815260200191505060405180910390f35b34801561087457600080fd5b5061089360048036038101908080359060200190929190505050612c35565b604051808215151515815260200191505060405180910390f35b3480156108b957600080fd5b506108d860048036038101908080359060200190929190505050612d41565b604051808215151515815260200191505060405180910390f35b3480156108fe57600080fd5b50610907612df8565b005b34801561091557600080fd5b5061094a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612f14565b6040518082815260200191505060405180910390f35b34801561096c57600080fd5b50610975612f73565b6040518082815260200191505060405180910390f35b34801561099757600080fd5b506109d6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f79565b6040518082815260200191505060405180910390f35b3480156109f857600080fd5b50610a1760048036038101908080359060200190929190505050613060565b6040518082815260200191505060405180910390f35b348015610a3957600080fd5b50610a586004803603810190808035906020019092919050505061307a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610aa657600080fd5b50610adb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506130b8565b6040518082815260200191505060405180910390f35b348015610afd57600080fd5b50610b06613158565b005b348015610b1457600080fd5b50610b53600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613497565b604051808215151515815260200191505060405180910390f35b348015610b7957600080fd5b50610b826135b4565b604051808260ff1660ff16815260200191505060405180910390f35b348015610baa57600080fd5b50610bdf600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135c7565b005b348015610bed57600080fd5b50610bf66137ed565b6040518082815260200191505060405180910390f35b348015610c1857600080fd5b50610c216137f3565b604051808260ff1660ff16815260200191505060405180910390f35b348015610c4957600080fd5b50610c52613806565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c92578082015181840152602081019050610c77565b50505050905090810190601f168015610cbf5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610cd957600080fd5b50610d0e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138a4565b60405180848152602001838152602001828152602001935050505060405180910390f35b348015610d3e57600080fd5b50610d73600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506138ce565b6040518082815260200191505060405180910390f35b348015610d9557600080fd5b50610d9e61396e565b604051808260ff1660ff16815260200191505060405180910390f35b348015610dc657600080fd5b50610dcf613981565b604051808260ff1660ff16815260200191505060405180910390f35b348015610df757600080fd5b50610e00613994565b6040518082815260200191505060405180910390f35b348015610e2257600080fd5b50610e61600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061399a565b604051808215151515815260200191505060405180910390f35b348015610e8757600080fd5b50610ed0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506139b1565b005b348015610ede57600080fd5b50610ee7613c80565b604051808260ff1660ff16815260200191505060405180910390f35b348015610f0f57600080fd5b50610f18613c93565b6040518082815260200191505060405180910390f35b610f36613c99565b005b348015610f4457600080fd5b50610f79600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613dc2565b6040518082815260200191505060405180910390f35b348015610f9b57600080fd5b50610fd0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613dda565b005b348015610fde57600080fd5b50610fe7613f72565b604051808215151515815260200191505060405180910390f35b34801561100d57600080fd5b50611092600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506140b4565b604051808215151515815260200191505060405180910390f35b3480156110b857600080fd5b506110ed600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614237565b604051808215151515815260200191505060405180910390f35b34801561111357600080fd5b50611168600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614257565b6040518082815260200191505060405180910390f35b34801561118a57600080fd5b506111dd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919050505061427c565b005b3480156111eb57600080fd5b506111f461477f565b6040518082815260200191505060405180910390f35b34801561121657600080fd5b5061123560048036038101908080359060200190929190505050614785565b60405180878152602001868152602001858152602001848152602001838152602001828152602001965050505050505060405180910390f35b34801561127a57600080fd5b506112836147c1565b6040518082815260200191505060405180910390f35b3480156112a557600080fd5b506112ae6147c7565b6040518082815260200191505060405180910390f35b3480156112d057600080fd5b506112d96147cd565b604051808260ff1660ff16815260200191505060405180910390f35b6000603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201600083815260200190815260200160002054905092915050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113e95780601f106113be576101008083540402835291602001916113e9565b820191906000526020600020905b8154815290600101906020018083116113cc57829003601f168201915b505050505081565b600081600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561153f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b80603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154101515156115f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4e6f7420656e6f75676820546f6b656e0000000000000000000000000000000081525060200191505060405180910390fd5b80602f6000602b54815260200190815260200160002060020160008282540192505081905550602f6000602b54815260200190815260200160002060030154602f6000602b5481526020019081526020016000206002015411801561167657506000602f6000602b54815260200190815260200160002060030154115b156116f9576116be602f6000602b54815260200190815260200160002060030154602f6000602b548152602001908152602001600020600201546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600201819055506000602f6000602b548152602001908152602001600020600301819055505b80603060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825403925050819055505050565b600080600080600080603060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549450602b546064860110156117b1576064602b540394505b8490505b602b548110156118cc57602f60008281526020019081526020016000206000015491506000602f60008381526020019081526020016000206001015414801561181457506000602f600083815260200190815260200160002060040154115b156118bf57603060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008281526020019081526020016000205492506118bc6118ad602f60008481526020019081526020016000206004015461189f868661480190919063ffffffff16565b61483f90919063ffffffff16565b8561486990919063ffffffff16565b93505b80806001019150506117b5565b60006118e1858961486990919063ffffffff16565b141561190f576000602f6000602b5481526020019081526020016000206001015414151561190e57600080fd5b5b6000603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015411801561197957506000602f6000602b54815260200190815260200160002060010154145b15611a1e576119d3603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548561486990919063ffffffff16565b93506000603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b8773ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f19350505050158015611a64573d6000803e3d6000fd5b50602b54603060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550839550505050505092915050565b60035481565b6000806000602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611b88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b611b92858561488a565b9150600a5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff168152602001908152602001600020546006600a8502811515611bef57fe5b040111156120b057611c5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff16815260200190815260200160002054600a546147e090919063ffffffff16565b9050600a60068202811515611c6557fe5b049050611cba81600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3611d9f81600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e65600660048302811515611df457fe5b0460066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b60066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600660048502811515611f3557fe5b046040518082815260200191505060405180910390a3611f6f6006600a8302811515611f5d57fe5b0460035461486990919063ffffffff16565b600381905550600a5460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff16815260200190815260200160002081905550600b60009054906101000a900460ff1660ff166001602060019054906101000a900460ff160160ff16111561207957600b60019054906101000a900460ff1660ff166001602060009054906101000a900460ff160160ff16111561202a57809250612477565b6001602060008282829054906101000a900460ff160192506101000a81548160ff021916908360ff1602179055506000602060016101000a81548160ff021916908360ff1602179055506120a8565b6001602060018282829054906101000a900460ff160192506101000a81548160ff021916908360ff1602179055505b809250612477565b61210282600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36121e782600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ad60066004840281151561223c57fe5b0460066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461486990919063ffffffff16565b60066000602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60066004860281151561237d57fe5b046040518082815260200191505060405180910390a36123b76006600a84028115156123a557fe5b0460035461486990919063ffffffff16565b6003819055506124276006600a84028115156123cf57fe5b0460216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff1681526020019081526020016000205461486990919063ffffffff16565b60216000602060009054906101000a900460ff1660ff1681526020019081526020016000206000602060019054906101000a900460ff1660ff168152602001908152602001600020819055508192505b50509392505050565b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561250d57600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506125a284848461490c565b600190509392505050565b6021602052816000526040600020602052806000526040600020600091509150505481565b600080600080600080603060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549450602b54606486011015612636576064602b540394505b8490505b602b5481101561275157602f60008281526020019081526020016000206000015491506000602f60008381526020019081526020016000206001015414801561269957506000602f600083815260200190815260200160002060040154115b1561274457603060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000828152602001908152602001600020549250612741612732602f600084815260200190815260200160002060040154612724868661480190919063ffffffff16565b61483f90919063ffffffff16565b8561486990919063ffffffff16565b93505b808060010191505061263a565b8395505050505050919050565b60055481565b600081612770336138ce565b1015151561277d57600080fd5b61278833308461490c565b60019050919050565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b600260009054906101000a900460ff1681565b600080602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156128a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f616c72656164792073657475700000000000000000000000000000000000000081525060200191505060405180910390fd5b8160026003811015156128b057fe5b6020020151602560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600090505b60038110156129f257600160226000848460038110151561291757fe5b602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506024828260038110151561297d57fe5b602002015190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505080806001019150506128fa565b60036023819055505050565b602c60029054906101000a900460ff1681565b600081603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540310151515612ab857600080fd5b602a5482603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020540110151515612b89576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f4d757374206f766572207468616e206c696d697400000000000000000000000081525060200191505060405180910390fd5b81603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b5481526020019081526020016000206000828254019250508190555081602f6000602b5481526020019081526020016000206004016000828254019250508190555060019050919050565b601681600a81101515612c2a57fe5b016000915090505481565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612c8557600080fd5b81600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a8342604051808381526020018281526020019250505060405180910390a260019050919050565b600081603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015410151515612d9457600080fd5b612d9f30338461490c565b81603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254039250508190555060019050919050565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612ebd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b6000602f6000602b54815260200190815260200160002060000154111515612ee457600080fd5b42602f6000602b548152602001908152602001600020600501819055506001602b60008282540192505081905550565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020549050919050565b600a5481565b600080602f60008481526020019081526020016000206000015490506000602f600085815260200190815260200160002060010154148015612fd157506000602f600085815260200190815260200160002060040154115b1561305457602f600084815260200190815260200160002060040154603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201600085815260200190815260200160002054820281151561304c57fe5b049150613059565b600091505b5092915050565b600c81600a8110151561306f57fe5b016000915090505481565b60248181548110151561308957fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054039050919050565b6000602960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156131b657600080fd5b602e54421115156131c657600080fd5b42602f6000602b548152602001908152602001600020600501819055506000602f6000602b54815260200190815260200160002060010154111561327c57602f6000602b54815260200190815260200160002060000154905080602f60006001602b5401815260200190815260200160002060000181905550602f6000602b54815260200190815260200160002060010154602f60006001602b540181526020019081526020016000206001018190555061332d565b6064602c60029054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060000154028115156132b457fe5b0490506064602c60019054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060000154028115156132ef57fe5b04602f6000602b5481526020019081526020016000206000018190555080602f60006001602b54018152602001908152602001600020600001819055505b6000602f6000602b5481526020019081526020016000206003015411156133c357602f6000602b54815260200190815260200160002060020154602f60006001602b5401815260200190815260200160002060020181905550602f6000602b54815260200190815260200160002060030154602f60006001602b5401815260200190815260200160002060030181905550613466565b6064602c60009054906101000a900460ff1660ff16602f6000602b54815260200190815260200160002060020154028115156133fb57fe5b04905080602f60006001602b54018152602001908152602001600020600201819055506134283082613497565b50613464602760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660066004840281151561345e57fe5b04613497565b505b6001602b6000828254019250508190555061348e602d54602e5461486990919063ffffffff16565b602e8190555050565b600081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156134e757600080fd5b81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600360008282540392505081905550816004600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff167f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a8342604051808381526020018281526020019250505060405180910390a26001905092915050565b602c60009054906101000a900460ff1681565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561368c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415151561371b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b6001602260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060248190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160236000828254019250508190555050565b60045481565b602060009054906101000a900460ff1681565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561389c5780601f106138715761010080835404028352916020019161389c565b820191906000526020600020905b81548152906001019060200180831161387f57829003601f168201915b505050505081565b60306020528060005260406000206000915090508060000154908060010154908060030154905083565b6000603060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054039050919050565b602060019054906101000a900460ff1681565b600b60009054906101000a900460ff1681565b602d5481565b60006139a733848461490c565b6001905092915050565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515613a72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b6001821415613b9d57613aa681602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b54815260200190815260200160002060000181905550602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637b42c8ef82856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019150506000604051808303818588803b158015613b7f57600080fd5b505af1158015613b93573d6000803e3d6000fd5b5050505050613c7b565b602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637f2be88484836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015613c6257600080fd5b505af1158015613c76573d6000803e3d6000fd5b505050505b505050565b600b60019054906101000a900460ff1681565b602b5481565b6000349050613cc981602f6000602b5481526020019081526020016000206000015461486990919063ffffffff16565b602f6000602b54815260200190815260200160002060000181905550602f6000602b54815260200190815260200160002060010154602f6000602b54815260200190815260200160002060000154118015613d3c57506000602f6000602b54815260200190815260200160002060010154115b15613dbf57613d84602f6000602b54815260200190815260200160002060010154602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600001819055506000602f6000602b548152602001908152602001600020600101819055505b50565b60076020528060005260406000206000915090505481565b602660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515613e9f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515613f2e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b80602960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054111515613fd757600080fd5b603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b54815260200190815260200160002054602f6000602b548152602001908152602001600020600401600082825403925050819055506000603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000602b548152602001908152602001600020819055506001905090565b6000808490506140c485856113f1565b1561422e578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156141be5780820151818401526020810190506141a3565b50505050905090810190601f1680156141eb5780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561420d57600080fd5b505af1158015614221573d6000803e3d6000fd5b505050506001915061422f565b5b509392505050565b60226020528060005260406000206000915054906101000a900460ff1681565b6008602052816000526040600020602052806000526040600020600091509150505481565b602260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561433d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f61646d696e20726571756972656400000000000000000000000000000000000081525060200191505060405180910390fd5b60008314156146665761435284826001611ac2565b5081602f6000602b5481526020019081526020016000206000015410156144e05781603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008282540192505081905550602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663964dc97b85838560006040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182151515158152602001945050505050600060405180830381600087803b15801561449d57600080fd5b505af11580156144b1573d6000803e3d6000fd5b5050505081602f6000602b54815260200190815260200160002060010160008282540192505081905550614661565b8373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015614526573d6000803e3d6000fd5b50602560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663964dc97b85838560016040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182151515158152602001945050505050600060405180830381600087803b15801561460157600080fd5b505af1158015614615573d6000803e3d6000fd5b5050505061464482602f6000602b548152602001908152602001600020600001546147e090919063ffffffff16565b602f6000602b548152602001908152602001600020600001819055505b614779565b81602f6000602b5481526020019081526020016000206002015410156147015781602f6000602b5481526020019081526020016000206003016000828254019250508190555081603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282540192505081905550614778565b81602f6000602b5481526020019081526020016000206002016000828254039250508190555081603060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055505b5b50505050565b60095481565b602f6020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050154905086565b60235481565b602e5481565b602c60019054906101000a900460ff1681565b6000808383111515156147f257600080fd5b82840390508091505092915050565b60008060008414156148165760009150614838565b828402905082848281151561482757fe5b0414151561483457600080fd5b8091505b5092915050565b60008060008311151561485157600080fd5b828481151561485c57fe5b0490508091505092915050565b600080828401905083811015151561488057600080fd5b8091505092915050565b600060018260000b14156148d157600c602060019054906101000a900460ff1660ff16600a811015156148b957fe5b015460055484028115156148c957fe5b049050614906565b6016602060019054906101000a900460ff1660ff16600a811015156148f257fe5b0154600554840281151561490257fe5b0490505b92915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561494957600080fd5b81614953856138ce565b1015151561496057600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101515156149ef57600080fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401905081600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415614b915781603060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825401925050819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a380600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401141515614c8157fe5b505050505600a165627a7a72305820888857fe053e5a0a849974af050165542193b42c1007fb451c5cf4baae80d9c80029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab78500000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab785000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e631230000000000000000000000001bdf504b2ecf7a43c3ec5847ae950292ca2883c1
-----Decoded View---------------
Arg [0] : _devTeam (address[4]): 0x62DCD99F4A4439223e1735F4290f55852E1ab785,0x62DCD99F4A4439223e1735F4290f55852E1ab785,0xa06Cd23aA37C39095D8CFe3A0fd2654331e63123,0x1BDF504b2eCf7A43C3eC5847aE950292Ca2883c1
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 00000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab785
Arg [1] : 00000000000000000000000062dcd99f4a4439223e1735f4290f55852e1ab785
Arg [2] : 000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e63123
Arg [3] : 0000000000000000000000001bdf504b2ecf7a43c3ec5847ae950292ca2883c1
Deployed Bytecode Sourcemap
3993:22274:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11411:168;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11411:168:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4326:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4326:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4326:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23804:228;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23804:228:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16667:719;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16667:719:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12809:1261;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12809:1261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4411:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4411:26:0;;;;;;;;;;;;;;;;;;;;;;;20330:2118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20330:2118:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23239:296;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23239:296:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5228:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5228:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12017:780;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12017:780:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4483:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4483:23:0;;;;;;;;;;;;;;;;;;;;;;;16451:204;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16451:204:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22460:135;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22460:135:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4378:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4378:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8103:372;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8103:372:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6487:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6487:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10333:503;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10333:503:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5053:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5053:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24962:379;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24962:379:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19745:283;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19745:283:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16144:289;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16144:289:0;;;;;;11237:158;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11237:158:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4826:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4826:50:0;;;;;;;;;;;;;;;;;;;;;;;11592:413;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11592:413:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4950:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4950:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5679:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5679:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8908:171;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8908:171:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14151:1946;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14151:1946:0;;;;;;25604:660;;8:9:-1;5:2;;;30:1;27;20:12;5:2;25604:660:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6391:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6391:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8640:256;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8640:256:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4444:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4444:32:0;;;;;;;;;;;;;;;;;;;;;;;5156:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5156:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4351:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4351:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4351:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6719:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6719:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9093:174;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9093:174:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5192:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5192:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4883:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4883:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6538:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6538:43:0;;;;;;;;;;;;;;;;;;;;;;;22807:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22807:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19309:428;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19309:428:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4916:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4916:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6121:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6121:37:0;;;;;;;;;;;;;;;;;;;;;;;17398:602;;;;;;4613:56;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4613:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8487:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8487:145:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10848:377;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10848:377:0;;;;;;;;;;;;;;;;;;;;;;;;;;;24431:356;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24431:356:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5588:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5588:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4676:66;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4676:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18012:1268;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18012:1268:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4776:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4776:43:0;;;;;;;;;;;;;;;;;;;;;;;6657:55;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6657:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5642:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5642:30:0;;;;;;;;;;;;;;;;;;;;;;;6616:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6616:28:0;;;;;;;;;;;;;;;;;;;;;;;6434:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6434:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;11411:168;11500:7;11526;:16;11534:7;11526:16;;;;;;;;;;;;;;;:37;;:45;11564:6;11526:45;;;;;;;;;;;;11519:52;;11411:168;;;;:::o;4326:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;23804:228::-;23880:12;23939:6;23905:9;:21;23915:10;23905:21;;;;;;;;;;;;;;;:31;23927:8;23905:31;;;;;;;;;;;;;;;:40;;;;24020:4;24013:11;;23804:228;;;;:::o;16667:719::-;4071:14;:26;4086:10;4071:26;;;;;;;;;;;;;;;;;;;;;;;;;4063:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16810:6;16769:7;:17;16777:8;16769:17;;;;;;;;;;;;;;;:37;;;:47;;16761:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16897:6;16847:13;:35;16861:20;;16847:35;;;;;;;;;;;:46;;;:56;;;;;;;;;;;16965:13;:35;16979:20;;16965:35;;;;;;;;;;;:52;;;16918:13;:35;16932:20;;16918:35;;;;;;;;;;;:46;;;:99;:155;;;;;17072:1;17019:13;:35;17033:20;;17019:35;;;;;;;;;;;:52;;;:54;16918:155;16914:409;;;17138:104;17189:13;:35;17203:20;;17189:35;;;;;;;;;;;:52;;;17138:13;:35;17152:20;;17138:35;;;;;;;;;;;:46;;;:50;;:104;;;;:::i;:::-;17089:13;:35;17103:20;;17089:35;;;;;;;;;;;:46;;:153;;;;17310:1;17257:13;:35;17271:20;;17257:35;;;;;;;;;;;:52;;:54;;;;16914:409;17372:6;17333:7;:17;17341:8;17333:17;;;;;;;;;;;;;;;:37;;;:45;;;;;;;;;;;16667:719;;:::o;12809:1261::-;12882:7;12901:19;13071:12;13094:24;13129:17;13162:9;12923:7;:16;12931:7;12923:16;;;;;;;;;;;;;;;:40;;;12901:62;;12998:20;;12992:3;12978:11;:17;:40;12974:86;;;13057:3;13034:20;;:26;13020:40;;12974:86;13174:11;13162:23;;13157:414;13188:20;;13186:1;:22;13157:414;;;13240:13;:16;13254:1;13240:16;;;;;;;;;;;:25;;;13228:37;;13317:1;13284:13;:16;13298:1;13284:16;;;;;;;;;;;:31;;;:34;:73;;;;;13356:1;13320:13;:16;13334:1;13320:16;;;;;;;;;;;:35;;;:37;13284:73;13280:280;;;13396:7;:16;13404:7;13396:16;;;;;;;;;;;;;;;:37;;:40;13434:1;13396:40;;;;;;;;;;;;13377:59;;13462:82;13471:72;13507:13;:16;13521:1;13507:16;;;;;;;;;;;:35;;;13471:31;13485:16;13471:9;:13;;:31;;;;:::i;:::-;:35;;:72;;;;:::i;:::-;13462:4;:8;;:82;;;;:::i;:::-;13455:89;;13280:280;13209:3;;;;;;;13157:414;;;13603:1;13585:16;13596:4;13585:6;:10;;:16;;;;:::i;:::-;:19;13581:116;;;13680:1;13628:13;:35;13642:20;;13628:35;;;;;;;;;;;:50;;;:53;13620:62;;;;;;;;13581:116;13746:1;13711:7;:16;13719:7;13711:16;;;;;;;;;;;;;;;:34;;;:36;:91;;;;;13801:1;13749:13;:35;13763:20;;13749:35;;;;;;;;;;;:50;;;:53;13711:91;13707:227;;;13825:44;13834:7;:16;13842:7;13834:16;;;;;;;;;;;;;;;:34;;;13825:4;:8;;:44;;;;:::i;:::-;13818:51;;13921:1;13884:7;:16;13892:7;13884:16;;;;;;;;;;;;;;;:34;;:38;;;;13707:227;13944:7;:16;;:22;13961:4;13944:22;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13944:22:0;14020:20;;13977:7;:16;13985:7;13977:16;;;;;;;;;;;;;;;:40;;:63;;;;14058:4;14051:11;;12809:1261;;;;;;;;;:::o;4411:26::-;;;;:::o;20330:2118::-;20439:7;20459:17;20635:28;4071:14;:26;4086:10;4071:26;;;;;;;;;;;;;;;;;;;;;;;;;4063:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20479:31;20491:9;20502:7;20479:10;:31::i;:::-;20459:51;;20593:26;;20544:18;:32;20563:12;;;;;;;;;;;20544:32;;;;;;;;;;;;;:46;20577:12;;;;;;;;;;;20544:46;;;;;;;;;;;;;;20540:1;20537:2;20527:9;:12;:14;;;;;;;;:63;:92;20523:1918;;;20666:78;20697:18;:32;20716:12;;;;;;;;;;;20697:32;;;;;;;;;;;;;:46;20730:12;;;;;;;;;;;20697:46;;;;;;;;;;;;;;20666:26;;:30;;:78;;;;:::i;:::-;20635:109;;20805:2;20803:1;20782:20;:22;:25;;;;;;;;20759:48;;20841:43;20863:20;20841:9;:17;20851:6;20841:17;;;;;;;;;;;;;;;;:21;;:43;;;;:::i;:::-;20822:9;:17;20832:6;20822:17;;;;;;;;;;;;;;;:62;;;;20918:6;20904:43;;20913:3;20904:43;20926:20;20904:43;;;;;;;;;;;;;;;;;;20993:54;21026:20;20993;:28;21014:6;20993:28;;;;;;;;;;;;;;;;:32;;:54;;;;:::i;:::-;20962:20;:28;20983:6;20962:28;;;;;;;;;;;;;;;:85;;;;21084:49;21131:1;21129;21108:20;:22;:24;;;;;;;;21084:9;:19;21094:8;;;;;;;;;;;21084:19;;;;;;;;;;;;;;;;:23;;:49;;;;:::i;:::-;21062:9;:19;21072:8;;;;;;;;;;;21062:19;;;;;;;;;;;;;;;:71;;;;21167:8;;;;;;;;;;;21153:49;;21162:3;21153:49;21200:1;21198;21177:20;:22;:24;;;;;;;;21153:49;;;;;;;;;;;;;;;;;;21245:42;21285:1;21282:2;21261:20;:23;:25;;;;;;;;21245:11;;:15;;:42;;;;:::i;:::-;21231:11;:56;;;;21351:26;;21302:18;:32;21321:12;;;;;;;;;;;21302:32;;;;;;;;;;;;;:46;21335:12;;;;;;;;;;;21302:46;;;;;;;;;;;;;:75;;;;21459:9;;;;;;;;;;;21444:24;;21457:1;21444:12;;;;;;;;;;;:14;:24;;;21440:284;;;21506:9;;;;;;;;;;;21491:24;;21504:1;21491:12;;;;;;;;;;;:14;:24;;;21488:98;;;21546:20;21539:27;;;;21488:98;21618:1;21604:12;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21651:1;21638:12;;:14;;;;;;;;;;;;;;;;;;21440:284;;;21707:1;21693:12;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21440:284;21816:20;21809:27;;;;20523:1918;21888:32;21910:9;21888;:17;21898:6;21888:17;;;;;;;;;;;;;;;;:21;;:32;;;;:::i;:::-;21869:9;:17;21879:6;21869:17;;;;;;;;;;;;;;;:51;;;;21954:6;21940:32;;21949:3;21940:32;21962:9;21940:32;;;;;;;;;;;;;;;;;;22018:43;22051:9;22018:20;:28;22039:6;22018:28;;;;;;;;;;;;;;;;:32;;:43;;;;:::i;:::-;21987:20;:28;22008:6;21987:28;;;;;;;;;;;;;;;:74;;;;22098:38;22134:1;22132;22122:9;:11;:13;;;;;;;;22098:9;:19;22108:8;;;;;;;;;;;22098:19;;;;;;;;;;;;;;;;:23;;:38;;;;:::i;:::-;22076:9;:19;22086:8;;;;;;;;;;;22076:19;;;;;;;;;;;;;;;:60;;;;22170:8;;;;;;;;;;;22156:38;;22165:3;22156:38;22192:1;22190;22180:9;:11;:13;;;;;;;;22156:38;;;;;;;;;;;;;;;;;;22237:31;22266:1;22263:2;22253:9;:12;:14;;;;;;;;22237:11;;:15;;:31;;;;:::i;:::-;22223:11;:45;;;;22332:66;22396:1;22393:2;22383:9;:12;:14;;;;;;;;22332:18;:32;22351:12;;;;;;;;;;;22332:32;;;;;;;;;;;;;:46;22365:12;;;;;;;;;;;22332:46;;;;;;;;;;;;;;:50;;:66;;;;:::i;:::-;22283:18;:32;22302:12;;;;;;;;;;;22283:32;;;;;;;;;;;;;:46;22316:12;;;;;;;;;;;22283:46;;;;;;;;;;;;;:115;;;;22420:9;22413:16;;4127:1;20330:2118;;;;;;;:::o;23239:296::-;23321:12;23364:9;:16;23374:5;23364:16;;;;;;;;;;;;;;;:28;23381:10;23364:28;;;;;;;;;;;;;;;;23354:6;:38;;23346:47;;;;;;;;23459:6;23427:9;:16;23437:5;23427:16;;;;;;;;;;;;;;;:28;23444:10;23427:28;;;;;;;;;;;;;;;;:38;;;;;;;;;;;23476:29;23486:5;23493:3;23498:6;23476:9;:29::i;:::-;23523:4;23516:11;;23239:296;;;;;:::o;5228:73::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12017:780::-;12079:7;12098:19;12268:12;12291:24;12326:17;12359:9;12120:7;:16;12128:7;12120:16;;;;;;;;;;;;;;;:40;;;12098:62;;12195:20;;12189:3;12175:11;:17;:40;12171:86;;;12254:3;12231:20;;:26;12217:40;;12171:86;12371:11;12359:23;;12354:414;12385:20;;12383:1;:22;12354:414;;;12437:13;:16;12451:1;12437:16;;;;;;;;;;;:25;;;12425:37;;12514:1;12481:13;:16;12495:1;12481:16;;;;;;;;;;;:31;;;:34;:73;;;;;12553:1;12517:13;:16;12531:1;12517:16;;;;;;;;;;;:35;;;:37;12481:73;12477:280;;;12593:7;:16;12601:7;12593:16;;;;;;;;;;;;;;;:37;;:40;12631:1;12593:40;;;;;;;;;;;;12574:59;;12659:82;12668:72;12704:13;:16;12718:1;12704:16;;;;;;;;;;;:35;;;12668:31;12682:16;12668:9;:13;;:31;;;;:::i;:::-;:35;;:72;;;;:::i;:::-;12659:4;:8;;:82;;;;:::i;:::-;12652:89;;12477:280;12406:3;;;;;;;12354:414;;;12785:4;12778:11;;12017:780;;;;;;;;:::o;4483:23::-;;;;:::o;16451:204::-;16504:12;16563:6;16537:24;16550:10;16537:12;:24::i;:::-;:32;;16529:41;;;;;;;;16581:44;16591:10;16611:4;16618:6;16581:9;:44::i;:::-;16643:4;16636:11;;16451:204;;;:::o;22460:135::-;22527:7;22553;:16;22561:7;22553:16;;;;;;;;;;;;;;;:34;;;22546:41;;22460:135;;;:::o;4378:26::-;;;;;;;;;;;;;:::o;8103:372::-;8308:9;8214:3;8194:15;;;;;;;;;;;8186:31;;;8178:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8280:9;8290:1;8280:12;;;;;;;;;;;;;8245:15;;:48;;;;;;;;;;;;;;;;;;8319:1;8308:12;;8304:134;8324:1;8322;:3;8304:134;;;8375:4;8346:14;:28;8361:9;8371:1;8361:12;;;;;;;;;;;;;8346:28;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;8394:13;8413:9;8423:1;8413:12;;;;;;;;;;;;;8394:32;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;8394:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8327:3;;;;;;;8304:134;;;8466:1;8448:15;:19;;;;8103:372;;:::o;6487:44::-;;;;;;;;;;;;;:::o;10333:503::-;10385:12;10505:6;10440:7;:19;10448:10;10440:19;;;;;;;;;;;;;;;:40;;:62;10481:20;;10440:62;;;;;;;;;;;;10418:9;:21;10428:10;10418:21;;;;;;;;;;;;;;;;:84;:93;;10410:102;;;;;;;;10606:18;;10596:6;10531:7;:19;10539:10;10531:19;;;;;;;;;;;;;;;:40;;:62;10572:20;;10531:62;;;;;;;;;;;;:71;:93;;10523:125;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10725:6;10659:7;:19;10667:10;10659:19;;;;;;;;;;;;;;;:40;;:62;10700:20;;10659:62;;;;;;;;;;;;:72;;;;;;;;;;;10800:6;10742:13;:35;10756:20;;10742:35;;;;;;;;;;;:54;;;:64;;;;;;;;;;;10824:4;10817:11;;10333:503;;;:::o;5053:67::-;;;;;;;;;;;;;;;;;;;;:::o;24962:379::-;25008:12;25066:6;25041:9;:21;25051:10;25041:21;;;;;;;;;;;;;;;;:31;;25033:40;;;;;;;;25145:6;25120:9;:21;25130:10;25120:21;;;;;;;;;;;;;;;;:31;;;;;;;;;;;25216:6;25201:11;;:21;;;;;;;;;;;25287:10;25282:29;;;25299:6;25307:3;25282:29;;;;;;;;;;;;;;;;;;;;;;;;25329:4;25322:11;;24962:379;;;:::o;19745:283::-;19806:12;19880:6;19838:7;:19;19846:10;19838:19;;;;;;;;;;;;;;;:39;;;:48;;19830:57;;;;;;;;19898:42;19916:4;19922:10;19933:6;19898:9;:42::i;:::-;19992:6;19951:7;:19;19959:10;19951:19;;;;;;;;;;;;;;;:39;;;:47;;;;;;;;;;;20016:4;20009:11;;19745:283;;;:::o;16144:289::-;4202:8;;;;;;;;;;;4188:22;;:10;:22;;;4180:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16256:1;16211:13;:35;16225:20;;16211:35;;;;;;;;;;;:44;;;:46;16203:55;;;;;;;;16320:3;16269:13;:35;16283:20;;16269:35;;;;;;;;;;;:48;;:54;;;;16356:1;16334:20;;:23;;;;;;;;;;;16144:289::o;11237:158::-;11302:7;11328;:16;11336:7;11328:16;;;;;;;;;;;;;;;:37;;:59;11366:20;;11328:59;;;;;;;;;;;;11321:66;;11237:158;;;:::o;4826:50::-;;;;:::o;11592:413::-;11681:7;11700:17;11720:13;:21;11734:6;11720:21;;;;;;;;;;;:30;;;11700:50;;11803:1;11765:13;:21;11779:6;11765:21;;;;;;;;;;;:36;;;:39;:83;;;;;11847:1;11806:13;:21;11820:6;11806:21;;;;;;;;;;;:40;;;:42;11765:83;11761:218;;;11927:13;:21;11941:6;11927:21;;;;;;;;;;;:40;;;11881:7;:16;11889:7;11881:16;;;;;;;;;;;;;;;:37;;:45;11919:6;11881:45;;;;;;;;;;;;11871:9;:55;:96;;;;;;;;11864:103;;;;11761:218;11996:1;11989:8;;11592:413;;;;;;:::o;4950:67::-;;;;;;;;;;;;;;;;;;;;:::o;5679:30::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8908:171::-;8964:7;9012;:16;9020:7;9012:16;;;;;;;;;;;;;;;:37;;:59;9050:20;;9012:59;;;;;;;;;;;;8991:9;:18;9001:7;8991:18;;;;;;;;;;;;;;;;:80;8984:87;;8908:171;;;:::o;14151:1946::-;14339:23;14217:8;;;;;;;;;;;14205:20;;:10;:20;;;14197:29;;;;;;;;14249:13;;14245:3;:17;14237:26;;;;;;;;14325:3;14274:13;:35;14288:20;;14274:35;;;;;;;;;;;:48;;:54;;;;14428:1;14377:13;:35;14391:20;;14377:35;;;;;;;;;;;:50;;;:52;14373:731;;;14499:13;:35;14513:20;;14499:35;;;;;;;;;;;:44;;;14481:62;;14606:15;14557:13;:37;14592:1;14571:20;;:22;14557:37;;;;;;;;;;;:46;;:64;;;;14690:13;:35;14704:20;;14690:35;;;;;;;;;;;:50;;;14635:13;:37;14670:1;14649:20;;:22;14635:37;;;;;;;;;;;:52;;:105;;;;14373:731;;;14871:3;14844:26;;;;;;;;;;;14799:71;;:13;:35;14813:20;;14799:35;;;;;;;;;;;:44;;;:71;:75;;;;;;;;14781:93;;15010:3;14981:28;;;;;;;;;;;14936:73;;:13;:35;14950:20;;14936:35;;;;;;;;;;;:44;;;:73;:77;;;;;;;;14889:13;:35;14903:20;;14889:35;;;;;;;;;;;:44;;:124;;;;15077:15;15028:13;:37;15063:1;15042:20;;:22;15028:37;;;;;;;;;;;:46;;:64;;;;14373:731;15171:1;15118:13;:35;15132:20;;15118:35;;;;;;;;;;;:52;;;:54;15114:878;;;15239:13;:35;15253:20;;15239:35;;;;;;;;;;;:46;;;15188:13;:37;15223:1;15202:20;;:22;15188:37;;;;;;;;;;;:48;;:97;;;;15357:13;:35;15371:20;;15357:35;;;;;;;;;;;:52;;;15300:13;:37;15335:1;15314:20;;:22;15300:37;;;;;;;;;;;:54;;:109;;;;15114:878;;;15565:3;15546:18;;;;;;;;;;;15499:65;;:13;:35;15513:20;;15499:35;;;;;;;;;;;:46;;;:65;:69;;;;;;;;15481:87;;15634:15;15583:13;:37;15618:1;15597:20;;:22;15583:37;;;;;;;;;;;:48;;:66;;;;15664:39;15681:4;15687:15;15664:8;:39::i;:::-;;15718:38;15727:8;;;;;;;;;;;15754:1;15752;15736:15;:17;:19;;;;;;;;15718:8;:38::i;:::-;;15114:878;16024:1;16002:20;;:23;;;;;;;;;;;16051:38;16069:19;;16051:13;;:17;;:38;;;;:::i;:::-;16036:13;:53;;;;14151:1946;:::o;25604:660::-;25669:12;25722:6;25702:9;:16;25712:5;25702:16;;;;;;;;;;;;;;;;:26;;25694:35;;;;;;;;25901:6;25881:9;:16;25891:5;25881:16;;;;;;;;;;;;;;;;:26;;;;;;;;;;;26099:6;26084:11;;:21;;;;;;;;;;;26188:6;26167:17;;:27;;;;;;;;;;;26215:5;26210:24;;;26222:6;26230:3;26210:24;;;;;;;;;;;;;;;;;;;;;;;;26252:4;26245:11;;25604:660;;;;:::o;6391:36::-;;;;;;;;;;;;;:::o;8640:256::-;4202:8;;;;;;;;;;;4188:22;;:10;:22;;;4180:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8756:3;8746:8;:13;;;;8738:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8816:4;8789:14;:24;8804:8;8789:24;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;8831:13;8850:8;8831:28;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;8831:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8887:1;8870:15;;:18;;;;;;;;;;;8640:256;:::o;4444:32::-;;;;:::o;5156:29::-;;;;;;;;;;;;;:::o;4351:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6719:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9093:174::-;9152:7;9200;:16;9208:7;9200:16;;;;;;;;;;;;;;;:37;;:59;9238:20;;9200:59;;;;;;;;;;;;9179:9;:18;9189:7;9179:18;;;;;;;;;;;;;;;;:80;9172:87;;9093:174;;;:::o;5192:29::-;;;;;;;;;;;;;:::o;4883:26::-;;;;;;;;;;;;;:::o;6538:43::-;;;;:::o;22807:152::-;22870:12;22895:34;22905:10;22917:3;22922:6;22895:9;:34::i;:::-;22947:4;22940:11;;22807:152;;;;:::o;19309:428::-;4071:14;:26;4086:10;4071:26;;;;;;;;;;;;;;;;;;;;;;;;;4063:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19430:1;19423:5;:8;19419:301;;;19494:56;19543:6;19494:13;:35;19508:20;;19494:35;;;;;;;;;;;:44;;;:48;;:56;;;;:::i;:::-;19447:13;:35;19461:20;;19447:35;;;;;;;;;;;:44;;:103;;;;19565:15;;;;;;;;;;;:34;;;19606:6;19614:7;19565:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19565:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19565:57:0;;;;;19419:301;;;19653:15;;;;;;;;;;;:39;;;19693:7;19701:6;19653:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19653:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19653:55:0;;;;19419:301;19309:428;;;:::o;4916:27::-;;;;;;;;;;;;;:::o;6121:37::-;;;;:::o;17398:602::-;17447:14;17464:9;17447:26;;17531:56;17580:6;17531:13;:35;17545:20;;17531:35;;;;;;;;;;;:44;;;:48;;:56;;;;:::i;:::-;17484:13;:35;17498:20;;17484:35;;;;;;;;;;;:44;;:103;;;;17647:13;:35;17661:20;;17647:35;;;;;;;;;;;:50;;;17602:13;:35;17616:20;;17602:35;;;;;;;;;;;:44;;;:95;:149;;;;;17750:1;17699:13;:35;17713:20;;17699:35;;;;;;;;;;;:50;;;:52;17602:149;17598:395;;;17814:100;17863:13;:35;17877:20;;17863:35;;;;;;;;;;;:50;;;17814:13;:35;17828:20;;17814:35;;;;;;;;;;;:44;;;:48;;:100;;;;:::i;:::-;17767:13;:35;17781:20;;17767:35;;;;;;;;;;;:44;;:147;;;;17980:1;17929:13;:35;17943:20;;17929:35;;;;;;;;;;;:50;;:52;;;;17598:395;17398:602;:::o;4613:56::-;;;;;;;;;;;;;;;;;:::o;8487:145::-;4202:8;;;;;;;;;;;4188:22;;:10;:22;;;4180:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8572:3;8562:8;:13;;;;8554:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8616:8;8605;;:19;;;;;;;;;;;;;;;;;;8487:145;:::o;10848:377::-;10891:12;10987:1;10924:7;:19;10932:10;10924:19;;;;;;;;;;;;;;;:40;;:62;10965:20;;10924:62;;;;;;;;;;;;:64;10916:73;;;;;;;;11058:7;:19;11066:10;11058:19;;;;;;;;;;;;;;;:40;;:62;11099:20;;11058:62;;;;;;;;;;;;11000:13;:35;11014:20;;11000:35;;;;;;;;;;;:54;;;:120;;;;;;;;;;;11194:1;11131:7;:19;11139:10;11131:19;;;;;;;;;;;;;;;:40;;:62;11172:20;;11131:62;;;;;;;;;;;:64;;;;11213:4;11206:11;;10848:377;:::o;24431:356::-;24541:12;24566:22;24606:8;24566:49;;24630:25;24638:8;24648:6;24630:7;:25::i;:::-;24626:154;;;24672:7;:23;;;24696:10;24708:6;24724:4;24731:10;24672:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;24672:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24672:70:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24672:70:0;;;;24764:4;24757:11;;;;24626:154;24431:356;;;;;;;:::o;5588:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;4676:66::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;18012:1268::-;4071:14;:26;4086:10;4071:26;;;;;;;;;;;;;;;;;;;;;;;;;4063:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18142:1;18135:5;:8;18131:1142;;;18159:37;18176:7;18184:9;18194:1;18159:16;:37::i;:::-;;18260:6;18215:13;:35;18229:20;;18215:35;;;;;;;;;;;:44;;;:51;18211:620;;;18358:6;18322:7;:16;18330:7;18322:16;;;;;;;;;;;;;;;:34;;;:42;;;;;;;;;;;18383:15;;;;;;;;;;;:34;;;18418:7;18427:9;18438:6;18446:5;18383:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18383:69:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18383:69:0;;;;18523:6;18471:13;:35;18485:20;;18471:35;;;;;;;;;;;:50;;;:58;;;;;;;;;;;18211:620;;;18582:7;:16;;:24;18599:6;18582:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18582:24:0;18625:15;;;;;;;;;;;:34;;;18660:7;18669:9;18680:6;18688:4;18625:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18625:68:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18625:68:0;;;;18759:56;18808:6;18759:13;:35;18773:20;;18759:35;;;;;;;;;;;:44;;;:48;;:56;;;;:::i;:::-;18712:13;:35;18726:20;;18712:35;;;;;;;;;;;:44;;:103;;;;18211:620;18131:1142;;;18922:6;18875:13;:35;18889:20;;18875:35;;;;;;;;;;;:46;;;:53;18871:391;;;19004:6;18948:13;:35;18962:20;;18948:35;;;;;;;;;;;:52;;;:62;;;;;;;;;;;19067:6;19029:7;:16;19037:7;19029:16;;;;;;;;;;;;;;;:36;;;:44;;;;;;;;;;;18871:391;;;19177:6;19127:13;:35;19141:20;;19127:35;;;;;;;;;;;:46;;;:56;;;;;;;;;;;19240:6;19202:7;:16;19210:7;19202:16;;;;;;;;;;;;;;;:36;;;:44;;;;;;;;;;;18871:391;18131:1142;18012:1268;;;;:::o;4776:43::-;;;;:::o;6657:55::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5642:30::-;;;;:::o;6616:28::-;;;;:::o;6434:46::-;;;;;;;;;;;;;:::o;2789:150::-;2847:7;2893:9;2880:1;2875;:6;;2867:15;;;;;;;;2909:1;2905;:5;2893:17;;2930:1;2923:8;;2789:150;;;;;:::o;722:433::-;780:7;1079:9;1029:1;1024;:6;1020:47;;;1054:1;1047:8;;;;1020:47;1095:1;1091;:5;1079:17;;1124:1;1119;1115;:5;;;;;;;;:10;1107:19;;;;;;;;1146:1;1139:8;;722:433;;;;;;:::o;1927:303::-;1985:7;2097:9;2084:1;2080;:5;2072:14;;;;;;;;2113:1;2109;:5;;;;;;;;2097:17;;2221:1;2214:8;;1927:303;;;;;:::o;3292:150::-;3350:7;3370:9;3386:1;3382;:5;3370:17;;3411:1;3406;:6;;3398:15;;;;;;;;3433:1;3426:8;;3292:150;;;;;:::o;20040:278::-;20115:7;20147:1;20138:7;:10;;;20134:103;;;20213:7;20221:12;;;;;;;;;;;20213:21;;;;;;;;;;;;;20194:8;;20180:10;20172:30;:63;;;;;;;;20165:70;;;;20134:103;20286:8;20295:12;;;;;;;;;;;20286:22;;;;;;;;;;;;;20267:8;;20254:10;:21;:55;;;;;;;;20247:62;;20040:278;;;;;:::o;9357:968::-;9778:21;9524:3;9509:19;;:3;:19;;;;9501:28;;;;;;;;9614:6;9591:19;9604:5;9591:12;:19::i;:::-;:29;;9583:38;;;;;;;;9699:9;:14;9709:3;9699:14;;;;;;;;;;;;;;;;9689:6;9672:9;:14;9682:3;9672:14;;;;;;;;;;;;;;;;:23;:41;;9664:50;;;;;;;;9821:9;:14;9831:3;9821:14;;;;;;;;;;;;;;;;9802:9;:16;9812:5;9802:16;;;;;;;;;;;;;;;;:33;9778:57;;9903:6;9883:9;:16;9893:5;9883:16;;;;;;;;;;;;;;;;:26;;;;;;;;;;;9980:6;9962:9;:14;9972:3;9962:14;;;;;;;;;;;;;;;;:24;;;;;;;;;;;10016:4;10001:20;;:3;:20;;;9997:101;;;10080:6;10037:7;:19;10045:10;10037:19;;;;;;;;;;;;;;;:39;;;:49;;;;;;;;;;;9997:101;10131:3;10115:28;;10124:5;10115:28;;;10136:6;10115:28;;;;;;;;;;;;;;;;;;10300:16;10282:9;:14;10292:3;10282:14;;;;;;;;;;;;;;;;10263:9;:16;10273:5;10263:16;;;;;;;;;;;;;;;;:33;:53;10256:61;;;;;;9357:968;;;;:::o
Swarm Source
bzzr://888857fe053e5a0a849974af050165542193b42c1007fb451c5cf4baae80d9c8
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.