ETH Price: $2,936.80 (+4.14%)
 

Overview

Max Total Supply

990,000,000 ALC

Holders

4,422

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 6 Decimals)

Balance
0 ALC

Value
$0.00
0x9754ae1d37c9f44617f5ea60c34c292f9d08c9ea
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x2C6E8E74...5AFcc6142
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Token

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
File 1 of 1 : Token.sol
pragma solidity ^0.4.24;

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; }

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        require(c >= a);
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b <= a);
        c = a - b;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a * b;
        require(a == 0 || c / a == b);
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b > 0);
        c = a / b;
    }
}

contract Token {
    using SafeMath for uint256;

    string public name;
    string public symbol;
    uint8 public decimals = 6;
    uint256 public totalSupply;
    address public owner;

    address[] public ownerContracts;
    address public userPool;
    address public platformPool;
    address public smPool;

    //  burnPoolAddresses
    mapping(string => address) burnPoolAddresses;

    mapping (address => uint256) public balanceOf;

    mapping (address => mapping (address => uint256)) public allowance;

    event Transfer(address indexed from, address indexed to, uint256 value);

    event TransferETH(address indexed from, address indexed to, uint256 value);

    event Burn(address indexed from, uint256 value);

    //990000000,"Alchemy Coin","ALC"
    constructor(
        uint256 initialSupply,
        string tokenName,
        string tokenSymbol
    ) payable public  {
        totalSupply = initialSupply * 10 ** uint256(decimals);
        balanceOf[msg.sender] = totalSupply;
        name = tokenName;
        symbol = tokenSymbol;
        owner = msg.sender;
    }

    // onlyOwner
    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function setOwnerContracts(address _adr) public onlyOwner {
        if(_adr != 0x0){
            ownerContracts.push(_adr);
        }
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address _newOwner) public onlyOwner {
        if (_newOwner != address(0)) {
            owner = _newOwner;
        }
    }

    /**
     * @dev See `IERC20.transfer`.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function _transfer(address _from, address _to, uint _value) internal {
        require(userPool != 0x0);
        require(platformPool != 0x0);
        require(smPool != 0x0);
        // check zero address
        require(_to != 0x0);
        // check zero address
        require(_value > 0);
        require(balanceOf[_from] >= _value);
        require(balanceOf[_to] + _value >= balanceOf[_to]);
        uint previousBalances = balanceOf[_from].add(balanceOf[_to]);
        balanceOf[_from] = balanceOf[_from].sub(_value);
        uint256 burnTotal = 0;
        uint256 platformTotal = 0;
        // burn
        if (this == _to) {
            burnTotal = _value*3;
            platformTotal = _value.mul(15).div(100);
            require(balanceOf[owner] >= (burnTotal + platformTotal));
            balanceOf[userPool] = balanceOf[userPool].add(burnTotal);
            balanceOf[platformPool] = balanceOf[platformPool].add(platformTotal);
            balanceOf[owner] -= (burnTotal + platformTotal);
            emit Transfer(_from, _to, _value);
            emit Transfer(owner, userPool, burnTotal);
            emit Transfer(owner, platformPool, platformTotal);
            emit Burn(_from, _value);
        } else if (smPool == _from) {
            address smBurnAddress = burnPoolAddresses["smBurn"];
            require(smBurnAddress != 0x0);
            burnTotal = _value*3;
            platformTotal = _value.mul(15).div(100);
            require(balanceOf[owner] >= (burnTotal + platformTotal));
            balanceOf[userPool] = balanceOf[userPool].add(burnTotal);
            balanceOf[platformPool] = balanceOf[platformPool].add(platformTotal);
            balanceOf[owner] -= (burnTotal + platformTotal);
            emit Transfer(_from, _to, _value);
            emit Transfer(_to, smBurnAddress, _value);
            emit Transfer(owner, userPool, burnTotal);
            emit Transfer(owner, platformPool, platformTotal);
            emit Burn(_to, _value);
        } else {
            address appBurnAddress = burnPoolAddresses["appBurn"];
            address webBurnAddress = burnPoolAddresses["webBurn"];
            address normalBurnAddress = burnPoolAddresses["normalBurn"];
            if (_to == appBurnAddress || _to == webBurnAddress || _to == normalBurnAddress) {
                burnTotal = _value*3;
                platformTotal = _value.mul(15).div(100);
                require(balanceOf[owner] >= (burnTotal + platformTotal));
                balanceOf[userPool] = balanceOf[userPool].add(burnTotal);
                balanceOf[platformPool] = balanceOf[platformPool].add(platformTotal);
                balanceOf[owner] -= (burnTotal + platformTotal);
                emit Transfer(_from, _to, _value);
                emit Transfer(owner, userPool, burnTotal);
                emit Transfer(owner, platformPool, platformTotal);
                emit Burn(_from, _value);
            } else {
                balanceOf[_to] = balanceOf[_to].add(_value);
                emit Transfer(_from, _to, _value);
                assert(balanceOf[_from] + balanceOf[_to] == previousBalances);
            }

        }
    }

    /**
     * @dev See `IERC20.transfer`.
     *
     * Requirements:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address _to, uint256 _value) public {
        _transfer(msg.sender, _to, _value);
    }

    function transferTo(address _to, uint256 _value) public {
        require(_contains());
        _transfer(tx.origin, _to, _value);
    }

    /**
     * @dev See `IERC20.transferFrom`.
     *
     * Emits an `Approval` event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of `ERC20`;
     *
     * Requirements:
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `value`.
     * - the caller must have allowance for `sender`'s tokens of at least
     * `amount`.
     */
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
        require(_value <= allowance[_from][msg.sender]);
        allowance[_from][msg.sender] -= _value;
        _transfer(_from, _to, _value);
        return true;
    }

    /**
     * batch
     */
    function transferArray(address[] _to, uint256[] _value) public {
        require(_to.length == _value.length);
        uint256 sum = 0;
        for(uint256 i = 0; i< _value.length; i++) {
            sum += _value[i];
        }
        require(balanceOf[msg.sender] >= sum);
        for(uint256 k = 0; k < _to.length; k++){
            _transfer(msg.sender, _to[k], _value[k]);
        }
    }

    function setUserPoolAddress(address _userPoolAddress, address _platformPoolAddress, address _smPoolAddress) public onlyOwner {
        require(_userPoolAddress != 0x0);
        require(_platformPoolAddress != 0x0);
        require(_smPoolAddress != 0x0);
        userPool = _userPoolAddress;
        platformPool = _platformPoolAddress;
        smPool = _smPoolAddress;
    }

    function setBurnPoolAddress(string key, address _burnPoolAddress) public onlyOwner {
        if (_burnPoolAddress != 0x0)
        burnPoolAddresses[key] = _burnPoolAddress;
    }

    function  getBurnPoolAddress(string key) public view returns (address) {
        return burnPoolAddresses[key];
    }

    function smTransfer(address _to, uint256 _value) public returns (bool)  {
        require(smPool == msg.sender);
        _transfer(msg.sender, _to, _value);
        return true;
    }

    function burnTransfer(address _from, uint256 _value, string key) public returns (bool)  {
        require(burnPoolAddresses[key] != 0x0);
        _transfer(_from, burnPoolAddresses[key], _value);
        return true;
    }

    function () payable public {
    }

    function getETHBalance() view public returns(uint){
        return address(this).balance;
    }

    function transferETH(address[] _tos) public onlyOwner returns (bool) {
        require(_tos.length > 0);
        require(address(this).balance > 0);
        for(uint32 i=0;i<_tos.length;i++){
            _tos[i].transfer(address(this).balance/_tos.length);
            emit TransferETH(owner, _tos[i], address(this).balance/_tos.length);
        }
        return true;
    }

    function transferETH(address _to, uint256 _value) payable public onlyOwner returns (bool){
        require(_value > 0);
        require(address(this).balance >= _value);
        require(_to != address(0));
        _to.transfer(_value);
        emit TransferETH(owner, _to, _value);
        return true;
    }

    function transferETH(address _to) payable public onlyOwner returns (bool){
        require(_to != address(0));
        require(address(this).balance > 0);
        _to.transfer(address(this).balance);
        emit TransferETH(owner, _to, address(this).balance);
        return true;
    }

    function transferETH() payable public onlyOwner returns (bool){
        require(address(this).balance > 0);
        owner.transfer(address(this).balance);
        emit TransferETH(owner, owner, address(this).balance);
        return true;
    }

    /**
     * @dev See `IERC20.approve`.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address _spender, uint256 _value) public
    returns (bool success) {
        allowance[msg.sender][_spender] = _value;
        return true;
    }

    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, this, _extraData);
            return true;
        }
    }

    /**
     * @dev Destoys `amount` tokens from the caller.
     *
     * See `ERC20._burn`.
     */
    function burn(uint256 _value) public returns (bool) {
        require(balanceOf[msg.sender] >= _value);
        balanceOf[msg.sender] -= _value;
        totalSupply -= _value;
        emit Burn(msg.sender, _value);
        return true;
    }

    /**
     * @dev Destoys `amount` tokens from `account`.`amount` is then deducted
     * from the caller's allowance.
     *
     * See `_burn` and `_approve`.
     */
    function burnFrom(address _from, uint256 _value) public returns (bool) {
        require(balanceOf[_from] >= _value);
        require(_value <= allowance[_from][msg.sender]);
        balanceOf[_from] -= _value;
        allowance[_from][msg.sender] -= _value;
        totalSupply -= _value;
        emit Burn(_from, _value);
        return true;
    }

    // funding
    function funding() payable public returns (bool) {
        require(msg.value <= balanceOf[owner]);
        // SafeMath.sub will throw if there is not enough balance.
        balanceOf[owner] = balanceOf[owner].sub(msg.value);
        balanceOf[tx.origin] = balanceOf[tx.origin].add(msg.value);
        emit Transfer(owner, tx.origin, msg.value);
        return true;
    }

    function _contains() internal view returns (bool) {
        for(uint i = 0; i < ownerContracts.length; i++){
            if(ownerContracts[i] == msg.sender){
                return true;
            }
        }
        return false;
    }
}

Settings
{
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_userPoolAddress","type":"address"},{"name":"_platformPoolAddress","type":"address"},{"name":"_smPoolAddress","type":"address"}],"name":"setUserPoolAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","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":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"userPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"platformPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tos","type":"address[]"}],"name":"transferETH","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getETHBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"key","type":"string"}],"name":"burnTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"}],"name":"burnFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferETH","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"key","type":"string"},{"name":"_burnPoolAddress","type":"address"}],"name":"setBurnPoolAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address[]"},{"name":"_value","type":"uint256[]"}],"name":"transferArray","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"smTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"key","type":"string"}],"name":"getBurnPoolAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","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":false,"inputs":[],"name":"funding","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_adr","type":"address"}],"name":"setOwnerContracts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"smPool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"transferETH","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","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":"transferETH","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"ownerContracts","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"initialSupply","type":"uint256"},{"name":"tokenName","type":"string"},{"name":"tokenSymbol","type":"string"}],"payable":true,"stateMutability":"payable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"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":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TransferETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"}]

60806040526006600260006101000a81548160ff021916908360ff1602179055506040516200424f3803806200424f833981018060405281019080805190602001909291908051820192919060200180518201929190505050600260009054906101000a900460ff1660ff16600a0a8302600381905550600354600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160009080519060200190620000d492919062000138565b508060019080519060200190620000ed92919062000138565b5033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050620001e7565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017b57805160ff1916838001178555620001ac565b82800160010185558215620001ac579182015b82811115620001ab5782518255916020019190600101906200018e565b5b509050620001bb9190620001bf565b5090565b620001e491905b80821115620001e0576000816000905550600101620001c6565b5090565b90565b61405880620001f76000396000f300608060405260043610610196576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063050708631461019857806306fdde031461021b578063095ea7b3146102ab57806318160ddd146103105780631adc69301461033b57806323b872dd146103925780632ccb1b3014610417578063313ce5671461046457806333518806146104955780633817d5ba146104ec57806342966c681461056a5780636e947298146105af57806370a08231146105da57806370fd5d771461063157806379cc6790146106dc5780637b1a490914610741578063896b2afb146107995780638da5cb5b14610822578063942d468b1461087957806395d89b4114610922578063a9059cbb146109b2578063b145ffcd146109ff578063bec0ee8d14610a64578063cae9ca5114610b0d578063cb4c86b714610bb8578063cf5b2edf14610bda578063d48fdd6014610c1d578063d50f6bf014610c74578063dd62ed3e14610cc2578063e28d717b14610d39578063f2fde38b14610d5b578063f7f9829814610d9e575b005b3480156101a457600080fd5b50610219600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0b565b005b34801561022757600080fd5b50610230610fa1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610270578082015181840152602081019050610255565b50505050905090810190601f16801561029d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102b757600080fd5b506102f6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061103f565b604051808215151515815260200191505060405180910390f35b34801561031c57600080fd5b506103256110cc565b6040518082815260200191505060405180910390f35b34801561034757600080fd5b506103506110d2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561039e57600080fd5b506103fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110f8565b604051808215151515815260200191505060405180910390f35b34801561042357600080fd5b50610462600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611225565b005b34801561047057600080fd5b50610479611247565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104a157600080fd5b506104aa61125a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104f857600080fd5b5061055060048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611280565b604051808215151515815260200191505060405180910390f35b34801561057657600080fd5b506105956004803603810190808035906020019092919050505061148e565b604051808215151515815260200191505060405180910390f35b3480156105bb57600080fd5b506105c4611592565b6040518082815260200191505060405180910390f35b3480156105e657600080fd5b5061061b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115b1565b6040518082815260200191505060405180910390f35b34801561063d57600080fd5b506106c2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506115c9565b604051808215151515815260200191505060405180910390f35b3480156106e857600080fd5b50610727600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061171c565b604051808215151515815260200191505060405180910390f35b61077f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611936565b604051808215151515815260200191505060405180910390f35b3480156107a557600080fd5b50610820600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611add565b005b34801561082e57600080fd5b50610837611c08565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561088557600080fd5b506109206004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611c2e565b005b34801561092e57600080fd5b50610937611d27565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561097757808201518184015260208101905061095c565b50505050905090810190601f1680156109a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109be57600080fd5b506109fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dc5565b005b348015610a0b57600080fd5b50610a4a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dd4565b604051808215151515815260200191505060405180910390f35b348015610a7057600080fd5b50610acb600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611e47565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b1957600080fd5b50610b9e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611edc565b604051808215151515815260200191505060405180910390f35b610bc061205f565b604051808215151515815260200191505060405180910390f35b348015610be657600080fd5b50610c1b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122cd565b005b348015610c2957600080fd5b50610c326123b3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610ca8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506123d9565b604051808215151515815260200191505060405180910390f35b348015610cce57600080fd5b50610d23600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061259e565b6040518082815260200191505060405180910390f35b610d416125c3565b604051808215151515815260200191505060405180910390f35b348015610d6757600080fd5b50610d9c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061278e565b005b348015610daa57600080fd5b50610dc960048036038101908080359060200190929190505050612865565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6757600080fd5b60008373ffffffffffffffffffffffffffffffffffffffff1614151515610e8d57600080fd5b60008273ffffffffffffffffffffffffffffffffffffffff1614151515610eb357600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515610ed957600080fd5b82600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110375780601f1061100c57610100808354040283529160200191611037565b820191906000526020600020905b81548152906001019060200180831161101a57829003601f168201915b505050505081565b600081600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b60035481565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561118557600080fd5b81600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555061121a8484846128a3565b600190509392505050565b61122d613efe565b151561123857600080fd5b6112433283836128a3565b5050565b600260009054906101000a900460ff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112df57600080fd5b600083511115156112ef57600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561131557600080fd5b600090505b82518163ffffffff16101561148457828163ffffffff1681518110151561133d57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff166108fc84513073ffffffffffffffffffffffffffffffffffffffff163181151561138357fe5b049081150290604051600060405180830381858888f193505050501580156113af573d6000803e3d6000fd5b50828163ffffffff168151811015156113c457fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a685513073ffffffffffffffffffffffffffffffffffffffff163181151561146157fe5b046040518082815260200191505060405180910390a3808060010191505061131a565b6001915050919050565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156114de57600080fd5b81600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b600a6020528060005260406000206000915090505481565b6000806009836040518082805190602001908083835b60208310151561160457805182526020820191506020810190506020830392506115df565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561167b57600080fd5b611711846009846040518082805190602001908083835b6020831015156116b75780518252602082019150602081019050602083039250611692565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856128a3565b600190509392505050565b600081600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561176c57600080fd5b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156117f757600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561199457600080fd5b6000821115156119a357600080fd5b813073ffffffffffffffffffffffffffffffffffffffff1631101515156119c957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a0557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611a4b573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a6846040518082815260200191505060405180910390a36001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b3957600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515611c0457806009836040518082805190602001908083835b602083101515611b925780518252602082019150602081019050602083039250611b6d565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600083518551141515611c4357600080fd5b60009250600091505b8351821015611c7e578382815181101515611c6357fe5b90602001906020020151830192508180600101925050611c4c565b82600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611ccc57600080fd5b600090505b8451811015611d2057611d13338683815181101515611cec57fe5b906020019060200201518684815181101515611d0457fe5b906020019060200201516128a3565b8080600101915050611cd1565b5050505050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dbd5780601f10611d9257610100808354040283529160200191611dbd565b820191906000526020600020905b815481529060010190602001808311611da057829003601f168201915b505050505081565b611dd03383836128a3565b5050565b60003373ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611e3257600080fd5b611e3d3384846128a3565b6001905092915050565b60006009826040518082805190602001908083835b602083101515611e815780518252602082019150602081019050602083039250611e5c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600080849050611eec858561103f565b15612056578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611fe6578082015181840152602081019050611fcb565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561203557600080fd5b505af1158015612049573d6000803e3d6000fd5b5050505060019150612057565b5b509392505050565b6000600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205434111515156120d157600080fd5b61214534600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f9f90919063ffffffff16565b600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121fc34600a60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef346040518082815260200191505060405180910390a36001905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561232957600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415156123b05760058190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b50565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561243757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561247357600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561249957600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156124f6573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a63073ffffffffffffffffffffffffffffffffffffffff16316040518082815260200191505060405180910390a360019050919050565b600b602052816000526040600020602052806000526040600020600091509150505481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561262157600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561264757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156126c6573d6000803e3d6000fd5b50600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a63073ffffffffffffffffffffffffffffffffffffffff16316040518082815260200191505060405180910390a36001905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127ea57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415156128625780600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60058181548110151561287457fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600080600080600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515156128f557600080fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561293d57600080fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561298557600080fd5b60008973ffffffffffffffffffffffffffffffffffffffff16141515156129ab57600080fd5b6000881115156129ba57600080fd5b87600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612a0857600080fd5b600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205488600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540110151515612a9757600080fd5b612b28600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b9650612b7c88600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f9f90919063ffffffff16565b600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060009550600094508873ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614156130c957600388029550612c286064612c1a600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612c9c57600080fd5b612d1086600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612de985600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38973ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef2565b8973ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156136d957600960405180807f736d4275726e00000000000000000000000000000000000000000000000000008152506006019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060008473ffffffffffffffffffffffffffffffffffffffff16141515156131a657600080fd5b6003880295506131d360646131c5600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561324757600080fd5b6132bb86600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061339485600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38873ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef1565b600960405180807f6170704275726e000000000000000000000000000000000000000000000000008152506007019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169250600960405180807f7765624275726e000000000000000000000000000000000000000000000000008152506007019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600960405180807f6e6f726d616c4275726e00000000000000000000000000000000000000000000815250600a019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508273ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16148061386157508173ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16145b8061389757508073ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16145b15613d6a576003880295506138c960646138bb600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561393d57600080fd5b6139b186600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613a8a85600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38973ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef0565b613dbc88600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a386600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401141515613eef57fe5b5b5b5b50505050505050505050565b600080600090505b600580549050811015613f96573373ffffffffffffffffffffffffffffffffffffffff16600582815481101515613f3957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415613f895760019150613f9b565b8080600101915050613f06565b600091505b5090565b6000828211151515613fb057600080fd5b818303905092915050565b60008183019050828110151515613fd157600080fd5b92915050565b600081830290506000831480613ff75750818382811515613ff457fe5b04145b151561400257600080fd5b92915050565b6000808211151561401857600080fd5b818381151561402357fe5b049050929150505600a165627a7a72305820c09662cb8faac45e4b83a893de6cee9f58d2f8384a5b0cf0383956f37cb8597b0029000000000000000000000000000000000000000000000000000000003b023380000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000c416c6368656d7920436f696e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003414c430000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610610196576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063050708631461019857806306fdde031461021b578063095ea7b3146102ab57806318160ddd146103105780631adc69301461033b57806323b872dd146103925780632ccb1b3014610417578063313ce5671461046457806333518806146104955780633817d5ba146104ec57806342966c681461056a5780636e947298146105af57806370a08231146105da57806370fd5d771461063157806379cc6790146106dc5780637b1a490914610741578063896b2afb146107995780638da5cb5b14610822578063942d468b1461087957806395d89b4114610922578063a9059cbb146109b2578063b145ffcd146109ff578063bec0ee8d14610a64578063cae9ca5114610b0d578063cb4c86b714610bb8578063cf5b2edf14610bda578063d48fdd6014610c1d578063d50f6bf014610c74578063dd62ed3e14610cc2578063e28d717b14610d39578063f2fde38b14610d5b578063f7f9829814610d9e575b005b3480156101a457600080fd5b50610219600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0b565b005b34801561022757600080fd5b50610230610fa1565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610270578082015181840152602081019050610255565b50505050905090810190601f16801561029d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102b757600080fd5b506102f6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061103f565b604051808215151515815260200191505060405180910390f35b34801561031c57600080fd5b506103256110cc565b6040518082815260200191505060405180910390f35b34801561034757600080fd5b506103506110d2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561039e57600080fd5b506103fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110f8565b604051808215151515815260200191505060405180910390f35b34801561042357600080fd5b50610462600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611225565b005b34801561047057600080fd5b50610479611247565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104a157600080fd5b506104aa61125a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104f857600080fd5b5061055060048036038101908080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611280565b604051808215151515815260200191505060405180910390f35b34801561057657600080fd5b506105956004803603810190808035906020019092919050505061148e565b604051808215151515815260200191505060405180910390f35b3480156105bb57600080fd5b506105c4611592565b6040518082815260200191505060405180910390f35b3480156105e657600080fd5b5061061b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115b1565b6040518082815260200191505060405180910390f35b34801561063d57600080fd5b506106c2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506115c9565b604051808215151515815260200191505060405180910390f35b3480156106e857600080fd5b50610727600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061171c565b604051808215151515815260200191505060405180910390f35b61077f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611936565b604051808215151515815260200191505060405180910390f35b3480156107a557600080fd5b50610820600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611add565b005b34801561082e57600080fd5b50610837611c08565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561088557600080fd5b506109206004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611c2e565b005b34801561092e57600080fd5b50610937611d27565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561097757808201518184015260208101905061095c565b50505050905090810190601f1680156109a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156109be57600080fd5b506109fd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dc5565b005b348015610a0b57600080fd5b50610a4a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dd4565b604051808215151515815260200191505060405180910390f35b348015610a7057600080fd5b50610acb600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611e47565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b1957600080fd5b50610b9e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611edc565b604051808215151515815260200191505060405180910390f35b610bc061205f565b604051808215151515815260200191505060405180910390f35b348015610be657600080fd5b50610c1b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122cd565b005b348015610c2957600080fd5b50610c326123b3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610ca8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506123d9565b604051808215151515815260200191505060405180910390f35b348015610cce57600080fd5b50610d23600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061259e565b6040518082815260200191505060405180910390f35b610d416125c3565b604051808215151515815260200191505060405180910390f35b348015610d6757600080fd5b50610d9c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061278e565b005b348015610daa57600080fd5b50610dc960048036038101908080359060200190929190505050612865565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6757600080fd5b60008373ffffffffffffffffffffffffffffffffffffffff1614151515610e8d57600080fd5b60008273ffffffffffffffffffffffffffffffffffffffff1614151515610eb357600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff1614151515610ed957600080fd5b82600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110375780601f1061100c57610100808354040283529160200191611037565b820191906000526020600020905b81548152906001019060200180831161101a57829003601f168201915b505050505081565b600081600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001905092915050565b60035481565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561118557600080fd5b81600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555061121a8484846128a3565b600190509392505050565b61122d613efe565b151561123857600080fd5b6112433283836128a3565b5050565b600260009054906101000a900460ff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156112df57600080fd5b600083511115156112ef57600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561131557600080fd5b600090505b82518163ffffffff16101561148457828163ffffffff1681518110151561133d57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff166108fc84513073ffffffffffffffffffffffffffffffffffffffff163181151561138357fe5b049081150290604051600060405180830381858888f193505050501580156113af573d6000803e3d6000fd5b50828163ffffffff168151811015156113c457fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a685513073ffffffffffffffffffffffffffffffffffffffff163181151561146157fe5b046040518082815260200191505060405180910390a3808060010191505061131a565b6001915050919050565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156114de57600080fd5b81600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a260019050919050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b600a6020528060005260406000206000915090505481565b6000806009836040518082805190602001908083835b60208310151561160457805182526020820191506020810190506020830392506115df565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561167b57600080fd5b611711846009846040518082805190602001908083835b6020831015156116b75780518252602082019150602081019050602083039250611692565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856128a3565b600190509392505050565b600081600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561176c57600080fd5b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156117f757600080fd5b81600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550816003600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a26001905092915050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561199457600080fd5b6000821115156119a357600080fd5b813073ffffffffffffffffffffffffffffffffffffffff1631101515156119c957600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611a0557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611a4b573d6000803e3d6000fd5b508273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a6846040518082815260200191505060405180910390a36001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b3957600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff16141515611c0457806009836040518082805190602001908083835b602083101515611b925780518252602082019150602081019050602083039250611b6d565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600083518551141515611c4357600080fd5b60009250600091505b8351821015611c7e578382815181101515611c6357fe5b90602001906020020151830192508180600101925050611c4c565b82600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611ccc57600080fd5b600090505b8451811015611d2057611d13338683815181101515611cec57fe5b906020019060200201518684815181101515611d0457fe5b906020019060200201516128a3565b8080600101915050611cd1565b5050505050565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dbd5780601f10611d9257610100808354040283529160200191611dbd565b820191906000526020600020905b815481529060010190602001808311611da057829003601f168201915b505050505081565b611dd03383836128a3565b5050565b60003373ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515611e3257600080fd5b611e3d3384846128a3565b6001905092915050565b60006009826040518082805190602001908083835b602083101515611e815780518252602082019150602081019050602083039250611e5c565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600080849050611eec858561103f565b15612056578073ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611fe6578082015181840152602081019050611fcb565b50505050905090810190601f1680156120135780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561203557600080fd5b505af1158015612049573d6000803e3d6000fd5b5050505060019150612057565b5b509392505050565b6000600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205434111515156120d157600080fd5b61214534600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f9f90919063ffffffff16565b600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121fc34600a60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a60003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503273ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef346040518082815260200191505060405180910390a36001905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561232957600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff161415156123b05760058190806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505b50565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561243757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561247357600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561249957600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156124f6573d6000803e3d6000fd5b508173ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a63073ffffffffffffffffffffffffffffffffffffffff16316040518082815260200191505060405180910390a360019050919050565b600b602052816000526040600020602052806000526040600020600091509150505481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561262157600080fd5b60003073ffffffffffffffffffffffffffffffffffffffff163111151561264757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f193505050501580156126c6573d6000803e3d6000fd5b50600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb417e19f030bde3b90ec59aeed617934f679c9071dde0be604082db6586346a63073ffffffffffffffffffffffffffffffffffffffff16316040518082815260200191505060405180910390a36001905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156127ea57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415156128625780600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60058181548110151561287457fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600080600080600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515156128f557600080fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561293d57600080fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561298557600080fd5b60008973ffffffffffffffffffffffffffffffffffffffff16141515156129ab57600080fd5b6000881115156129ba57600080fd5b87600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612a0857600080fd5b600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205488600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020540110151515612a9757600080fd5b612b28600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b9650612b7c88600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613f9f90919063ffffffff16565b600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060009550600094508873ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614156130c957600388029550612c286064612c1a600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612c9c57600080fd5b612d1086600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612de985600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38973ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef2565b8973ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156136d957600960405180807f736d4275726e00000000000000000000000000000000000000000000000000008152506006019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935060008473ffffffffffffffffffffffffffffffffffffffff16141515156131a657600080fd5b6003880295506131d360646131c5600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561324757600080fd5b6132bb86600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061339485600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38873ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef1565b600960405180807f6170704275726e000000000000000000000000000000000000000000000000008152506007019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169250600960405180807f7765624275726e000000000000000000000000000000000000000000000000008152506007019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600960405180807f6e6f726d616c4275726e00000000000000000000000000000000000000000000815250600a019050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508273ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16148061386157508173ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16145b8061389757508073ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff16145b15613d6a576003880295506138c960646138bb600f8b613fd790919063ffffffff16565b61400890919063ffffffff16565b9450848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561393d57600080fd5b6139b186600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613a8a85600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550848601600a6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a3600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef886040518082815260200191505060405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040518082815260200191505060405180910390a38973ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5896040518082815260200191505060405180910390a2613ef0565b613dbc88600a60008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613fbb90919063ffffffff16565b600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508873ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8a6040518082815260200191505060405180910390a386600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600a60008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401141515613eef57fe5b5b5b5b50505050505050505050565b600080600090505b600580549050811015613f96573373ffffffffffffffffffffffffffffffffffffffff16600582815481101515613f3957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415613f895760019150613f9b565b8080600101915050613f06565b600091505b5090565b6000828211151515613fb057600080fd5b818303905092915050565b60008183019050828110151515613fd157600080fd5b92915050565b600081830290506000831480613ff75750818382811515613ff457fe5b04145b151561400257600080fd5b92915050565b6000808211151561401857600080fd5b818381151561402357fe5b049050929150505600a165627a7a72305820c09662cb8faac45e4b83a893de6cee9f58d2f8384a5b0cf0383956f37cb8597b0029

Deployed Bytecode Sourcemap

714:11535:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7488:382;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7488:382:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;771:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;771: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;771:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10181:167;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10181:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;855:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;855:26:0;;;;;;;;;;;;;;;;;;;;;;;955:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;955:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6772:265;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6772:265:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6162:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6162:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;823:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;823:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;985:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;985:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8771:382;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8771:382:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10800:247;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10800:247:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8666:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8666:97:0;;;;;;;;;;;;;;;;;;;;;;;1129:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1129:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8389:226;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8389:226:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11232:358;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11232:358:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9161:315;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7878:181;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7878:181:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;888:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;888:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7077:403;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7077:403:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;796:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;796: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;796:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6047:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6047:107:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8194:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8194:187:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8067:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8067:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10356:329;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10356:329:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11614:379;;;;;;;;;;;;;;;;;;;;;;;;;;;1955:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1955:143:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1019:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1019:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9484:293;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1183:66;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1183:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9785:249;;;;;;;;;;;;;;;;;;;;;;;;;;;2253:154;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2253:154:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;917:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;917:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7488:382;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;7652:3;7632:16;:23;;;;7624:32;;;;;;;;7699:3;7675:20;:27;;;;7667:36;;;;;;;;7740:3;7722:14;:21;;;;7714:30;;;;;;;;7766:16;7755:8;;:27;;;;;;;;;;;;;;;;;;7808:20;7793:12;;:35;;;;;;;;;;;;;;;;;;7848:14;7839:6;;:23;;;;;;;;;;;;;;;;;;7488:382;;;:::o;771:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10181:167::-;10253:12;10312:6;10278:9;:21;10288:10;10278:21;;;;;;;;;;;;;;;:31;10300:8;10278:31;;;;;;;;;;;;;;;:40;;;;10336:4;10329:11;;10181:167;;;;:::o;855:26::-;;;;:::o;955:23::-;;;;;;;;;;;;;:::o;6772:265::-;6854:4;6889:9;:16;6899:5;6889:16;;;;;;;;;;;;;;;:28;6906:10;6889:28;;;;;;;;;;;;;;;;6879:6;:38;;6871:47;;;;;;;;6961:6;6929:9;:16;6939:5;6929:16;;;;;;;;;;;;;;;:28;6946:10;6929:28;;;;;;;;;;;;;;;;:38;;;;;;;;;;;6978:29;6988:5;6995:3;7000:6;6978:9;:29::i;:::-;7025:4;7018:11;;6772:265;;;;;:::o;6162:139::-;6237:11;:9;:11::i;:::-;6229:20;;;;;;;;6260:33;6270:9;6281:3;6286:6;6260:9;:33::i;:::-;6162:139;;:::o;823:25::-;;;;;;;;;;;;;:::o;985:27::-;;;;;;;;;;;;;:::o;8771:382::-;8834:4;8935:8;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;8873:1;8859:4;:11;:15;8851:24;;;;;;;;8918:1;8902:4;8894:21;;;:25;8886:34;;;;;;;;8944:1;8935:10;;8931:193;8948:4;:11;8946:1;:13;;;8931:193;;;8979:4;8984:1;8979:7;;;;;;;;;;;;;;;;;;;;:16;;:51;9018:4;:11;9004:4;8996:21;;;:33;;;;;;;;8979:51;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8979:51:0;9069:4;9074:1;9069:7;;;;;;;;;;;;;;;;;;;;9050:62;;9062:5;;;;;;;;;;;9050:62;;;9100:4;:11;9086:4;9078:21;;;:33;;;;;;;;9050:62;;;;;;;;;;;;;;;;;;8960:3;;;;;;;8931:193;;;9141:4;9134:11;;8771:382;;;;:::o;10800:247::-;10846:4;10896:6;10871:9;:21;10881:10;10871:21;;;;;;;;;;;;;;;;:31;;10863:40;;;;;;;;10939:6;10914:9;:21;10924:10;10914:21;;;;;;;;;;;;;;;;:31;;;;;;;;;;;10971:6;10956:11;;:21;;;;;;;;;;;10998:10;10993:24;;;11010:6;10993:24;;;;;;;;;;;;;;;;;;11035:4;11028:11;;10800:247;;;:::o;8666:97::-;8711:4;8742;8734:21;;;8727:28;;8666:97;:::o;1129:45::-;;;;;;;;;;;;;;;;;:::o;8389:226::-;8470:4;8522:3;8496:17;8514:3;8496:22;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8496:22:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;;8488:38;;;;;;;;8537:48;8547:5;8554:17;8572:3;8554:22;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8554:22:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8578:6;8537:9;:48::i;:::-;8603:4;8596:11;;8389:226;;;;;:::o;11232:358::-;11297:4;11342:6;11322:9;:16;11332:5;11322:16;;;;;;;;;;;;;;;;:26;;11314:35;;;;;;;;11378:9;:16;11388:5;11378:16;;;;;;;;;;;;;;;:28;11395:10;11378:28;;;;;;;;;;;;;;;;11368:6;:38;;11360:47;;;;;;;;11438:6;11418:9;:16;11428:5;11418:16;;;;;;;;;;;;;;;;:26;;;;;;;;;;;11487:6;11455:9;:16;11465:5;11455:16;;;;;;;;;;;;;;;:28;11472:10;11455:28;;;;;;;;;;;;;;;;:38;;;;;;;;;;;11519:6;11504:11;;:21;;;;;;;;;;;11546:5;11541:19;;;11553:6;11541:19;;;;;;;;;;;;;;;;;;11578:4;11571:11;;11232:358;;;;:::o;9161:315::-;9245:4;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;9278:1;9269:6;:10;9261:19;;;;;;;;9324:6;9307:4;9299:21;;;:31;;9291:40;;;;;;;;9365:1;9350:17;;:3;:17;;;;9342:26;;;;;;;;9379:3;:12;;:20;9392:6;9379:20;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9379:20:0;9434:3;9415:31;;9427:5;;;;;;;;;;;9415:31;;;9439:6;9415:31;;;;;;;;;;;;;;;;;;9464:4;9457:11;;9161:315;;;;:::o;7878:181::-;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;7996:3;7976:16;:23;;;;7972:79;;;8035:16;8010:17;8028:3;8010:22;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8010:22:0;;;;;;;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;7972:79;7878:181;;:::o;888:20::-;;;;;;;;;;;;;:::o;7077:403::-;7198:11;7228:9;7371;7173:6;:13;7159:3;:10;:27;7151:36;;;;;;;;7212:1;7198:15;;7240:1;7228:13;;7224:85;7246:6;:13;7243:1;:16;7224:85;;;7288:6;7295:1;7288:9;;;;;;;;;;;;;;;;;;7281:16;;;;7261:3;;;;;;;7224:85;;;7352:3;7327:9;:21;7337:10;7327:21;;;;;;;;;;;;;;;;:28;;7319:37;;;;;;;;7383:1;7371:13;;7367:106;7390:3;:10;7386:1;:14;7367:106;;;7421:40;7431:10;7443:3;7447:1;7443:6;;;;;;;;;;;;;;;;;;7451;7458:1;7451:9;;;;;;;;;;;;;;;;;;7421;:40::i;:::-;7402:3;;;;;;;7367:106;;;7077:403;;;;;:::o;796:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6047:107::-;6112:34;6122:10;6134:3;6139:6;6112:9;:34::i;:::-;6047:107;;:::o;8194:187::-;8259:4;8295:10;8285:20;;:6;;;;;;;;;;;:20;;;8277:29;;;;;;;;8317:34;8327:10;8339:3;8344:6;8317:9;:34::i;:::-;8369:4;8362:11;;8194:187;;;;:::o;8067:119::-;8129:7;8156:17;8174:3;8156:22;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8156:22:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8149:29;;8067:119;;;:::o;10356:329::-;10448:12;10473:22;10513:8;10473:49;;10537:25;10545:8;10555:6;10537:7;:25::i;:::-;10533:145;;;10579:7;:23;;;10603:10;10615:6;10623:4;10629:10;10579:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;10579:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10579:61:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10579:61:0;;;;10662:4;10655:11;;;;10533:145;10356:329;;;;;;;:::o;11614:379::-;11657:4;11695:9;:16;11705:5;;;;;;;;;;;11695:16;;;;;;;;;;;;;;;;11682:9;:29;;11674:38;;;;;;;;11810:31;11831:9;11810;:16;11820:5;;;;;;;;;;;11810:16;;;;;;;;;;;;;;;;:20;;:31;;;;:::i;:::-;11791:9;:16;11801:5;;;;;;;;;;;11791:16;;;;;;;;;;;;;;;:50;;;;11875:35;11900:9;11875;:20;11885:9;11875:20;;;;;;;;;;;;;;;;:24;;:35;;;;:::i;:::-;11852:9;:20;11862:9;11852:20;;;;;;;;;;;;;;;:58;;;;11942:9;11926:37;;11935:5;;;;;;;;;;;11926:37;;;11953:9;11926:37;;;;;;;;;;;;;;;;;;11981:4;11974:11;;11614:379;:::o;1955:143::-;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;2035:3;2027:4;:11;;;;2024:67;;;2054:14;2074:4;2054:25;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2054:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2024:67;1955:143;:::o;1019:21::-;;;;;;;;;;;;;:::o;9484:293::-;9552:4;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;9591:1;9576:17;;:3;:17;;;;9568:26;;;;;;;;9637:1;9621:4;9613:21;;;:25;9605:34;;;;;;;;9650:3;:12;;:35;9671:4;9663:21;;;9650:35;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9650:35:0;9720:3;9701:46;;9713:5;;;;;;;;;;;9701:46;;;9733:4;9725:21;;;9701:46;;;;;;;;;;;;;;;;;;9765:4;9758:11;;9484:293;;;:::o;1183:66::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9785:249::-;9842:4;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;9890:1;9874:4;9866:21;;;:25;9858:34;;;;;;;;9903:5;;;;;;;;;;;:14;;:37;9926:4;9918:21;;;9903:37;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9903:37:0;9975:5;;;;;;;;;;;9956:48;;9968:5;;;;;;;;;;;9956:48;;;9990:4;9982:21;;;9956:48;;;;;;;;;;;;;;;;;;10022:4;10015:11;;9785:249;:::o;2253:154::-;1921:5;;;;;;;;;;;1907:19;;:10;:19;;;1899:28;;;;;;;;2352:1;2331:23;;:9;:23;;;;2327:73;;;2379:9;2371:5;;:17;;;;;;;;;;;;;;;;;;2327:73;2253:154;:::o;917:31::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2620:3214::-;3036:21;3165:17;3197:21;3904;4669:22;4737;4805:25;2720:3;2708:8;;;;;;;;;;;:15;;;;2700:24;;;;;;;;2759:3;2743:12;;;;;;;;;;;:19;;;;2735:28;;;;;;;;2792:3;2782:6;;;;;;;;;;;:13;;;;2774:22;;;;;;;;2853:3;2846;:10;;;;2838:19;;;;;;;;2916:1;2907:6;:10;2899:19;;;;;;;;2957:6;2937:9;:16;2947:5;2937:16;;;;;;;;;;;;;;;;:26;;2929:35;;;;;;;;3010:9;:14;3020:3;3010:14;;;;;;;;;;;;;;;;3000:6;2983:9;:14;2993:3;2983:14;;;;;;;;;;;;;;;;:23;:41;;2975:50;;;;;;;;3060:36;3081:9;:14;3091:3;3081:14;;;;;;;;;;;;;;;;3060:9;:16;3070:5;3060:16;;;;;;;;;;;;;;;;:20;;:36;;;;:::i;:::-;3036:60;;3126:28;3147:6;3126:9;:16;3136:5;3126:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;3107:9;:16;3117:5;3107:16;;;;;;;;;;;;;;;:47;;;;3185:1;3165:21;;3221:1;3197:25;;3262:3;3254:11;;:4;:11;;;3250:2577;;;3301:1;3294:6;:8;3282:20;;3333:23;3352:3;3333:14;3344:2;3333:6;:10;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;3317:39;;3412:13;3400:9;:25;3379:9;:16;3389:5;;;;;;;;;;;3379:16;;;;;;;;;;;;;;;;:47;;3371:56;;;;;;;;3464:34;3488:9;3464;:19;3474:8;;;;;;;;;;;3464:19;;;;;;;;;;;;;;;;:23;;:34;;;;:::i;:::-;3442:9;:19;3452:8;;;;;;;;;;;3442:19;;;;;;;;;;;;;;;:56;;;;3539:42;3567:13;3539:9;:23;3549:12;;;;;;;;;;;3539:23;;;;;;;;;;;;;;;;:27;;:42;;;;:::i;:::-;3513:9;:23;3523:12;;;;;;;;;;;3513:23;;;;;;;;;;;;;;;:68;;;;3629:13;3617:9;:25;3596:9;:16;3606:5;;;;;;;;;;;3596:16;;;;;;;;;;;;;;;;:47;;;;;;;;;;;3679:3;3663:28;;3672:5;3663:28;;;3684:6;3663:28;;;;;;;;;;;;;;;;;;3727:8;;;;;;;;;;;3711:36;;3720:5;;;;;;;;;;;3711:36;;;3737:9;3711:36;;;;;;;;;;;;;;;;;;3783:12;;;;;;;;;;;3767:44;;3776:5;;;;;;;;;;;3767:44;;;3797:13;3767:44;;;;;;;;;;;;;;;;;;3836:5;3831:19;;;3843:6;3831:19;;;;;;;;;;;;;;;;;;3250:2577;;;3882:5;3872:15;;:6;;;;;;;;;;;:15;;;3868:1959;;;3928:17;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3904:51;;3995:3;3978:13;:20;;;;3970:29;;;;;;;;4033:1;4026:6;:8;4014:20;;4065:23;4084:3;4065:14;4076:2;4065:6;:10;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;4049:39;;4144:13;4132:9;:25;4111:9;:16;4121:5;;;;;;;;;;;4111:16;;;;;;;;;;;;;;;;:47;;4103:56;;;;;;;;4196:34;4220:9;4196;:19;4206:8;;;;;;;;;;;4196:19;;;;;;;;;;;;;;;;:23;;:34;;;;:::i;:::-;4174:9;:19;4184:8;;;;;;;;;;;4174:19;;;;;;;;;;;;;;;:56;;;;4271:42;4299:13;4271:9;:23;4281:12;;;;;;;;;;;4271:23;;;;;;;;;;;;;;;;:27;;:42;;;;:::i;:::-;4245:9;:23;4255:12;;;;;;;;;;;4245:23;;;;;;;;;;;;;;;:68;;;;4361:13;4349:9;:25;4328:9;:16;4338:5;;;;;;;;;;;4328:16;;;;;;;;;;;;;;;;:47;;;;;;;;;;;4411:3;4395:28;;4404:5;4395:28;;;4416:6;4395:28;;;;;;;;;;;;;;;;;;4457:13;4443:36;;4452:3;4443:36;;;4472:6;4443:36;;;;;;;;;;;;;;;;;;4515:8;;;;;;;;;;;4499:36;;4508:5;;;;;;;;;;;4499:36;;;4525:9;4499:36;;;;;;;;;;;;;;;;;;4571:12;;;;;;;;;;;4555:44;;4564:5;;;;;;;;;;;4555:44;;;4585:13;4555:44;;;;;;;;;;;;;;;;;;4624:3;4619:17;;;4629:6;4619:17;;;;;;;;;;;;;;;;;;3868:1959;;;4694:17;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4669:53;;4762:17;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4737:53;;4833:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4805:59;;4890:14;4883:21;;:3;:21;;;:46;;;;4915:14;4908:21;;:3;:21;;;4883:46;:74;;;;4940:17;4933:24;;:3;:24;;;4883:74;4879:935;;;4997:1;4990:6;:8;4978:20;;5033:23;5052:3;5033:14;5044:2;5033:6;:10;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;5017:39;;5116:13;5104:9;:25;5083:9;:16;5093:5;;;;;;;;;;;5083:16;;;;;;;;;;;;;;;;:47;;5075:56;;;;;;;;5172:34;5196:9;5172;:19;5182:8;;;;;;;;;;;5172:19;;;;;;;;;;;;;;;;:23;;:34;;;;:::i;:::-;5150:9;:19;5160:8;;;;;;;;;;;5150:19;;;;;;;;;;;;;;;:56;;;;5251:42;5279:13;5251:9;:23;5261:12;;;;;;;;;;;5251:23;;;;;;;;;;;;;;;;:27;;:42;;;;:::i;:::-;5225:9;:23;5235:12;;;;;;;;;;;5225:23;;;;;;;;;;;;;;;:68;;;;5345:13;5333:9;:25;5312:9;:16;5322:5;;;;;;;;;;;5312:16;;;;;;;;;;;;;;;;:47;;;;;;;;;;;5399:3;5383:28;;5392:5;5383:28;;;5404:6;5383:28;;;;;;;;;;;;;;;;;;5451:8;;;;;;;;;;;5435:36;;5444:5;;;;;;;;;;;5435:36;;;5461:9;5435:36;;;;;;;;;;;;;;;;;;5511:12;;;;;;;;;;;5495:44;;5504:5;;;;;;;;;;;5495:44;;;5525:13;5495:44;;;;;;;;;;;;;;;;;;5568:5;5563:19;;;5575:6;5563:19;;;;;;;;;;;;;;;;;;4879:935;;;5640:26;5659:6;5640:9;:14;5650:3;5640:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;5623:9;:14;5633:3;5623:14;;;;;;;;;;;;;;;:43;;;;5706:3;5690:28;;5699:5;5690:28;;;5711:6;5690:28;;;;;;;;;;;;;;;;;;5781:16;5763:9;:14;5773:3;5763:14;;;;;;;;;;;;;;;;5744:9;:16;5754:5;5744:16;;;;;;;;;;;;;;;;:33;:53;5737:61;;;;;;4879:935;3868:1959;3250:2577;2620:3214;;;;;;;;;;:::o;12001:245::-;12045:4;12066:6;12075:1;12066:10;;12062:154;12082:14;:21;;;;12078:1;:25;12062:154;;;12148:10;12127:31;;:14;12142:1;12127:17;;;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;12124:81;;;12185:4;12178:11;;;;12124:81;12105:3;;;;;;;12062:154;;;12233:5;12226:12;;12001:245;;;:::o;313:123::-;371:9;406:1;401;:6;;393:15;;;;;;;;427:1;423;:5;419:9;;313:123;;;;:::o;184:::-;242:9;272:1;268;:5;264:9;;297:1;292;:6;;284:15;;;;;;;;184:123;;;;:::o;442:137::-;500:9;530:1;526;:5;522:9;;555:1;550;:6;:20;;;;569:1;564;560;:5;;;;;;;;:10;550:20;542:29;;;;;;;;442:137;;;;:::o;585:122::-;643:9;677:1;673;:5;665:14;;;;;;;;698:1;694;:5;;;;;;;;690:9;;585:122;;;;:::o

Swarm Source

bzzr://c09662cb8faac45e4b83a893de6cee9f58d2f8384a5b0cf0383956f37cb8597b
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.