ETH Price: $3,290.58 (-0.28%)

Token

ETH-314 (ETH314)
 

Overview

Max Total Supply

20,386,543.853908820402657708 ETH314

Holders

1,060

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.000324261907222 ETH314

Value
$0.00
0x7866af12bf949cfa075ae03673f6352147e22837
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
ETH314

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-04-08
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

interface IEERC314 {
  event Transfer(address indexed from, address indexed to, uint256 value);
  event AddLiquidity(uint32 _blockToUnlockLiquidity, uint256 value);
  event RemoveLiquidity(uint256 value);
  event Swap(address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out);
}

abstract contract ERC314 is IEERC314 {
  mapping(address account => uint256) private _balances;
  mapping(address account => uint256) private _lastTxTime;
  mapping(address account => uint32) private lastTransaction;

  uint256 private _totalSupply;
  uint256 public _maxWallet;
  uint32 public blockToUnlockLiquidity;

  string private _name;
  string private _symbol;

  address public owner;
  address public liquidityProvider;

  bool public tradingEnable;
  bool public liquidityAdded;
  bool public maxWalletEnable;

  modifier onlyOwner() {
    require(msg.sender == owner, 'Ownable: caller is not the owner');
    _;
  }

  modifier onlyLiquidityProvider() {
    require(msg.sender == liquidityProvider, 'You are not the liquidity provider');
    _;
  }

 address payable public feeReceiver;
   mapping(address => bool) private whiteList;
  constructor(string memory name_, string memory symbol_, uint256 totalSupply_) {
    _name = name_;
    _symbol = symbol_;
    _totalSupply = totalSupply_;
    _maxWallet = totalSupply_ * 3 / 100;
    address receiver = 0x014C45216dC5b7083c12c5726F24E7589d19a1E5;
    feeReceiver = payable(0x84aec7cb4CbCD27e9bb4C0b05760fDBc05b7e615);
    owner = receiver;
    tradingEnable = false;
    maxWalletEnable = true;
    whiteList[msg.sender] = true;
    _balances[receiver] = (totalSupply_ * 20) / 100;
    uint256 liquidityAmount = totalSupply_ - _balances[receiver];
    _balances[address(this)] = liquidityAmount;

    liquidityAdded = false;
  }

  function name() public view virtual returns (string memory) {
    return _name;
  }

  function symbol() public view virtual returns (string memory) {
    return _symbol;
  }

  function decimals() public view virtual returns (uint8) {
    return 18;
  }

  function totalSupply() public view virtual returns (uint256) {
    return _totalSupply;
  }

  function balanceOf(address account) public view virtual returns (uint256) {
    return _balances[account];
  }

  function transfer(address to, uint256 value) public virtual returns (bool) {
    // sell or transfer
    if (to == address(this)) {
      sell(value);
    } else {
      _transfer(msg.sender, to, value);
    }
    return true;
  }

  function _transfer(address from, address to, uint256 value) internal virtual {
    if (to != address(0)) {
      require(lastTransaction[msg.sender] != block.number, "You can't make two transactions in the same block");
      lastTransaction[msg.sender] = uint32(block.number);

      require(block.timestamp >= _lastTxTime[msg.sender] + 60, 'Sender must wait for cooldown');
      _lastTxTime[msg.sender] = block.timestamp;
    }

    require(_balances[from] >= value, 'ERC20: transfer amount exceeds balance');

    unchecked {
      _balances[from] = _balances[from] - value;
    }

    if (to == address(0)) {
      unchecked {
        _totalSupply -= value;
      }
    } else {
      unchecked {
        _balances[to] += value;
      }
    }

    emit Transfer(from, to, value);
  }

  function getReserves() public view returns (uint256, uint256) {
    return (address(this).balance, _balances[address(this)]);
  }

  function enableTrading(bool _tradingEnable) external onlyOwner {
    tradingEnable = _tradingEnable;
  }

  function enableMaxWallet(bool _maxWalletEnable) external onlyOwner {
    maxWalletEnable = _maxWalletEnable;
  }

  function setMaxWallet(uint256 _maxWallet_) external onlyOwner {
    _maxWallet = _maxWallet_;
  }

  function renounceOwnership() external onlyOwner {
    owner = address(0);
  }

  function addLiquidity(uint32 _blockToUnlockLiquidity) public payable onlyOwner {
    require(liquidityAdded == false, 'Liquidity already added');

    liquidityAdded = true;

    require(msg.value > 0, 'No ETH sent');
    require(block.number < _blockToUnlockLiquidity, 'Block number too low');

    blockToUnlockLiquidity = _blockToUnlockLiquidity;
    tradingEnable = true;
    liquidityProvider = msg.sender;

    emit AddLiquidity(_blockToUnlockLiquidity, msg.value);
  }

  function removeLiquidity() public onlyLiquidityProvider {
    require(block.number > blockToUnlockLiquidity, 'Liquidity locked');

    tradingEnable = false;

    payable(msg.sender).transfer(address(this).balance);

    emit RemoveLiquidity(address(this).balance);
  }

  function extendLiquidityLock(uint32 _blockToUnlockLiquidity) public onlyLiquidityProvider {
    require(blockToUnlockLiquidity < _blockToUnlockLiquidity, "You can't shorten duration");

    blockToUnlockLiquidity = _blockToUnlockLiquidity;
  }

  function getAmountOut(uint256 value, bool _buy) public view returns (uint256) {
    (uint256 reserveETH, uint256 reserveToken) = getReserves();

    if (_buy) {
      return (value * reserveToken) / (reserveETH + value);
    } else {
      return (value * reserveETH) / (reserveToken + value);
    }
  }

  function buy() internal {
    require(tradingEnable, 'Trading not enable');

    uint256 msgValue = msg.value;
    uint256 feeValue = msgValue * 150 / 10000;
    uint256 swapValue = msgValue - feeValue;

    feeReceiver.transfer(feeValue);

    uint256 token_amount = (swapValue * _balances[address(this)]) / (address(this).balance);

    if (maxWalletEnable && !whiteList[msg.sender]) {
      require(token_amount + _balances[msg.sender] <= _maxWallet, 'Max wallet exceeded');
    }

    uint256 user_amount = (token_amount / 10000) * 9950;
    uint256 burn_amount = token_amount - user_amount;

    _transfer(address(this), msg.sender, user_amount);
    _transfer(address(this), address(0), burn_amount);

    emit Swap(msg.sender, swapValue, 0, 0, user_amount);
  }

  function sell(uint256 sell_amount) internal {
    require(tradingEnable, 'Trading not enable');

    uint256 swap_amount = (sell_amount / 10000) * 9950;
    uint256 burn_amount = sell_amount - swap_amount;

    uint256 ethAmount = (swap_amount * address(this).balance) / (_balances[address(this)] + swap_amount);

    require(ethAmount > 0, 'Sell amount too low');
    require(address(this).balance >= ethAmount, 'Insufficient ETH in reserves');

    _transfer(msg.sender, address(this), swap_amount);
    _transfer(msg.sender, address(0), burn_amount);

    uint256 feeValue = ethAmount * 150 / 10000;
    payable(feeReceiver).transfer(feeValue);
    payable(msg.sender).transfer(ethAmount - feeValue);

    if (
        lpBurnEnabled &&
        block.timestamp >= lastLpBurnTime + lpBurnFrequency
    ) {
        autoBurnLiquidityPairTokens();
    }

    emit Swap(msg.sender, 0, sell_amount, ethAmount - feeValue, 0);
  }

    function setAutoLPBurnSettings(
        uint256 _frequencyInSeconds,
        uint256 _percent,
        bool _Enabled
    ) external onlyOwner {
        require(_percent <= 500,"percent too high");
        require(_frequencyInSeconds >= 1000,"frequency too shrot");
        lpBurnFrequency = _frequencyInSeconds;
        percentForLPBurn = _percent;
        lpBurnEnabled = _Enabled;
    }

    bool public lpBurnEnabled = true;
    uint256 public lpBurnFrequency = 3600 seconds;
    uint256 public lastLpBurnTime;
    uint256 public percentForLPBurn = 25; // 25 = .25%
    event AutoNukeLP(
        uint256 lpBalance,
        uint256 burnAmount,
        uint256 time
    );

    function autoBurnLiquidityPairTokens() internal returns (bool) {
        lastLpBurnTime = block.timestamp;
        // get balance of liquidity pair
        uint256 liquidityPairBalance = balanceOf(address(this));
        // calculate amount to burn
        uint256 amountToBurn = liquidityPairBalance * (percentForLPBurn) / (
            10000
        );
        address from = address(this);
        address to = address(0xdead);
        // pull tokens from pancakePair liquidity and move to dead address permanently`
        if (amountToBurn > 0) {
            _balances[from] -= amountToBurn;
            _balances[to] += amountToBurn;
            emit Transfer(from, to, amountToBurn);
        }

        emit AutoNukeLP(
            liquidityPairBalance,
            amountToBurn,
            block.timestamp
        );
        return true;
    }

    function setwhitelist(address _uni, bool t) external onlyOwner() {
        whiteList[_uni] = t;
    }

    function setWhitelistBulk(address[] memory _addresses, bool isInWhitelist) external onlyOwner() {
    for (uint256 i = 0; i < _addresses.length; i++) {
        whiteList[_addresses[i]] = isInWhitelist;
    }
}


  receive() external payable {
    buy();
  }
}

contract ETH314 is ERC314 {
  constructor() ERC314('ETH-314', 'ETH314', 21000000 * 10 ** 18) {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"AddLiquidity","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"lpBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"burnAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"time","type":"uint256"}],"name":"AutoNukeLP","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"RemoveLiquidity","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"}],"name":"addLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blockToUnlockLiquidity","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_maxWalletEnable","type":"bool"}],"name":"enableMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingEnable","type":"bool"}],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint32","name":"_blockToUnlockLiquidity","type":"uint32"}],"name":"extendLiquidityLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeReceiver","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bool","name":"_buy","type":"bool"}],"name":"getAmountOut","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getReserves","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastLpBurnTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityAdded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityProvider","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpBurnEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpBurnFrequency","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"percentForLPBurn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_frequencyInSeconds","type":"uint256"},{"internalType":"uint256","name":"_percent","type":"uint256"},{"internalType":"bool","name":"_Enabled","type":"bool"}],"name":"setAutoLPBurnSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxWallet_","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"bool","name":"isInWhitelist","type":"bool"}],"name":"setWhitelistBulk","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_uni","type":"address"},{"internalType":"bool","name":"t","type":"bool"}],"name":"setwhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600c805460ff19166001179055610e10600d556019600f553480156200002957600080fd5b50604051806040016040528060078152602001661155120b4ccc4d60ca1b815250604051806040016040528060068152602001651155120ccc4d60d21b8152506a115eec47f6cf7e35000000826006908162000086919062000244565b50600762000095838262000244565b506003818155606490620000ab90839062000326565b620000b7919062000346565b600455600a80547384aec7cb4cbcd27e9bb4c0b05760fdbc05b7e6156001600160a01b0319918216179091556008805473014c45216dc5b7083c12c5726f24e7589d19a1e592168217905560098054600160b01b62ff00ff60a01b19909116179055336000908152600b60205260409020805460ff1916600117905560646200014283601462000326565b6200014e919062000346565b6001600160a01b03821660009081526020819052604081208290559062000176908462000369565b3060009081526020819052604090205550506009805460ff60a81b19169055506200037f915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001ca57607f821691505b602082108103620001eb57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023f57600081815260208120601f850160051c810160208610156200021a5750805b601f850160051c820191505b818110156200023b5782815560010162000226565b5050505b505050565b81516001600160401b038111156200026057620002606200019f565b6200027881620002718454620001b5565b84620001f1565b602080601f831160018114620002b05760008415620002975750858301515b600019600386901b1c1916600185901b1785556200023b565b600085815260208120601f198616915b82811015620002e157888601518255948401946001909101908401620002c0565b5085821015620003005787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000340576200034062000310565b92915050565b6000826200036457634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111562000340576200034062000310565b6118c9806200038f6000396000f3fe6080604052600436106101d15760003560e01c806367b9a286116100f757806395d89b4111610095578063ae19139e11610064578063ae19139e1461053a578063b3f006741461055a578063d94439231461057a578063f275f64b1461059b57600080fd5b806395d89b41146104dc5780639a540abf146104f1578063a4c82a0014610504578063a9059cbb1461051a57600080fd5b8063730c1888116100d1578063730c1888146104665780637cb836b81461048657806382247ec0146104a65780638da5cb5b146104bc57600080fd5b806367b9a2861461040657806370a082311461041b578063715018a61461045157600080fd5b806318160ddd1161016f5780632e82f1a01161013e5780632e82f1a014610378578063313ce567146103925780635b8bec55146103ae5780635d0044ca146103e657600080fd5b806318160ddd14610317578063199ffc721461032c57806327de2e85146103425780632c3e486c1461036257600080fd5b80630bf74b72116101ab5780630bf74b721461027757806311106ee21461029757806312a54b62146102c55780631693e8d4146102f657600080fd5b806304c0c476146101e557806306fdde031461021c5780630902f1ac1461023e57600080fd5b366101e0576101de6105bb565b005b600080fd5b3480156101f157600080fd5b506005546102029063ffffffff1681565b60405163ffffffff90911681526020015b60405180910390f35b34801561022857600080fd5b506102316107be565b60405161021391906114a6565b34801561024a57600080fd5b50610262306000908152602081905260409020544791565b60408051928352602083019190915201610213565b34801561028357600080fd5b506101de610292366004611520565b610850565b3480156102a357600080fd5b506102b76102b2366004611553565b6108a5565b604051908152602001610213565b3480156102d157600080fd5b506009546102e690600160b01b900460ff1681565b6040519015158152602001610213565b34801561030257600080fd5b506009546102e690600160a01b900460ff1681565b34801561032357600080fd5b506003546102b7565b34801561033857600080fd5b506102b7600f5481565b34801561034e57600080fd5b506101de61035d366004611576565b61090c565b34801561036e57600080fd5b506102b7600d5481565b34801561038457600080fd5b50600c546102e69060ff1681565b34801561039e57600080fd5b5060405160128152602001610213565b3480156103ba57600080fd5b506009546103ce906001600160a01b031681565b6040516001600160a01b039091168152602001610213565b3480156103f257600080fd5b506101de6104013660046115a3565b6109ac565b34801561041257600080fd5b506101de6109db565b34801561042757600080fd5b506102b76104363660046115bc565b6001600160a01b031660009081526020819052604090205490565b34801561045d57600080fd5b506101de610abe565b34801561047257600080fd5b506101de6104813660046115d7565b610afa565b34801561049257600080fd5b506101de6104a1366004611622565b610bcd565b3480156104b257600080fd5b506102b760045481565b3480156104c857600080fd5b506008546103ce906001600160a01b031681565b3480156104e857600080fd5b50610231610c63565b6101de6104ff366004611576565b610c72565b34801561051057600080fd5b506102b7600e5481565b34801561052657600080fd5b506102e66105353660046116f9565b610dfc565b34801561054657600080fd5b506101de610555366004611723565b610e30565b34801561056657600080fd5b50600a546103ce906001600160a01b031681565b34801561058657600080fd5b506009546102e690600160a81b900460ff1681565b3480156105a757600080fd5b506101de6105b6366004611723565b610e78565b600954600160a01b900460ff1661060e5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b60448201526064015b60405180910390fd5b34600061271061061f836096611754565b610629919061176b565b90506000610637828461178d565b600a546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015610672573d6000803e3d6000fd5b5030600090815260208190526040812054479061068f9084611754565b610699919061176b565b600954909150600160b01b900460ff1680156106c55750336000908152600b602052604090205460ff16155b1561072b57600454336000908152602081905260409020546106e790836117a0565b111561072b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610605565b60006107396127108361176b565b610745906126de611754565b90506000610753828461178d565b9050610760303384610ec0565b61076c30600083610ec0565b604080518581526000602082018190528183015260608101849052905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050505050565b6060600680546107cd906117b3565b80601f01602080910402602001604051908101604052809291908181526020018280546107f9906117b3565b80156108465780601f1061081b57610100808354040283529160200191610846565b820191906000526020600020905b81548152906001019060200180831161082957829003601f168201915b5050505050905090565b6008546001600160a01b0316331461087a5760405162461bcd60e51b8152600401610605906117ed565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60008060006108c1306000908152602081905260409020544791565b9150915083156108f2576108d585836117a0565b6108df8287611754565b6108e9919061176b565b92505050610906565b6108fc85826117a0565b6108df8387611754565b92915050565b6009546001600160a01b031633146109365760405162461bcd60e51b815260040161060590611822565b60055463ffffffff8083169116106109905760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e27742073686f7274656e206475726174696f6e0000000000006044820152606401610605565b6005805463ffffffff191663ffffffff92909216919091179055565b6008546001600160a01b031633146109d65760405162461bcd60e51b8152600401610605906117ed565b600455565b6009546001600160a01b03163314610a055760405162461bcd60e51b815260040161060590611822565b60055463ffffffff164311610a4f5760405162461bcd60e51b815260206004820152601060248201526f131a5c5d5a591a5d1e481b1bd8dad95960821b6044820152606401610605565b6009805460ff60a01b1916905560405133904780156108fc02916000818181858888f19350505050158015610a88573d6000803e3d6000fd5b506040514781527f9a5a8a32afd899e7f95003c6e21c9fab2d50e11992439d14472229180c60c7aa9060200160405180910390a1565b6008546001600160a01b03163314610ae85760405162461bcd60e51b8152600401610605906117ed565b600880546001600160a01b0319169055565b6008546001600160a01b03163314610b245760405162461bcd60e51b8152600401610605906117ed565b6101f4821115610b695760405162461bcd60e51b815260206004820152601060248201526f0e0cae4c6cadce840e8dede40d0d2ced60831b6044820152606401610605565b6103e8831015610bb15760405162461bcd60e51b8152602060048201526013602482015272199c995c5d595b98de481d1bdbc81cda1c9bdd606a1b6044820152606401610605565b600d92909255600f55600c805460ff1916911515919091179055565b6008546001600160a01b03163314610bf75760405162461bcd60e51b8152600401610605906117ed565b60005b8251811015610c5e5781600b6000858481518110610c1a57610c1a611864565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610c568161187a565b915050610bfa565b505050565b6060600780546107cd906117b3565b6008546001600160a01b03163314610c9c5760405162461bcd60e51b8152600401610605906117ed565b600954600160a81b900460ff1615610cf65760405162461bcd60e51b815260206004820152601760248201527f4c697175696469747920616c72656164792061646465640000000000000000006044820152606401610605565b6009805460ff60a81b1916600160a81b17905534610d445760405162461bcd60e51b815260206004820152600b60248201526a139bc8115512081cd95b9d60aa1b6044820152606401610605565b8063ffffffff164310610d905760405162461bcd60e51b8152602060048201526014602482015273426c6f636b206e756d62657220746f6f206c6f7760601b6044820152606401610605565b6005805463ffffffff831663ffffffff199091168117909155600980546001600160a81b0319163317600160a01b179055604080519182523460208301527f0c6c8102f3ac634c5fb327ba1a5d5c18030294d9f5cc309afa9e8a9020a77175910160405180910390a150565b6000306001600160a01b03841603610e1c57610e1782611105565b610e27565b610e27338484610ec0565b50600192915050565b6008546001600160a01b03163314610e5a5760405162461bcd60e51b8152600401610605906117ed565b60098054911515600160b01b0260ff60b01b19909216919091179055565b6008546001600160a01b03163314610ea25760405162461bcd60e51b8152600401610605906117ed565b60098054911515600160a01b0260ff60a01b19909216919091179055565b6001600160a01b03821615610fe957336000908152600260205260409020544363ffffffff90911603610f4f5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e2774206d616b652074776f207472616e73616374696f6e7320604482015270696e207468652073616d6520626c6f636b60781b6064820152608401610605565b336000908152600260209081526040808320805463ffffffff19164363ffffffff161790556001909152902054610f8790603c6117a0565b421015610fd65760405162461bcd60e51b815260206004820152601d60248201527f53656e646572206d757374207761697420666f7220636f6f6c646f776e0000006044820152606401610605565b3360009081526001602052604090204290555b6001600160a01b0383166000908152602081905260409020548111156110605760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610605565b6001600160a01b038084166000908152602081905260409020805483900390558216611094576003805482900390556110b3565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110f891815260200190565b60405180910390a3505050565b600954600160a01b900460ff166111535760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b6044820152606401610605565b60006111616127108361176b565b61116d906126de611754565b9050600061117b828461178d565b306000908152602081905260408120549192509061119a9084906117a0565b6111a44785611754565b6111ae919061176b565b9050600081116111f65760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b6044820152606401610605565b804710156112465760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e207265736572766573000000006044820152606401610605565b611251333085610ec0565b61125d33600084610ec0565b600061271061126d836096611754565b611277919061176b565b600a546040519192506001600160a01b03169082156108fc029083906000818181858888f193505050501580156112b2573d6000803e3d6000fd5b50336108fc6112c1838561178d565b6040518115909202916000818181858888f193505050501580156112e9573d6000803e3d6000fd5b50600c5460ff16801561130b5750600d54600e5461130791906117a0565b4210155b1561131a57611318611375565b505b337f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737600087611349858761178d565b604080519384526020840192909252908201526000606082015260800160405180910390a25050505050565b42600e55306000908152602081905260408120546000612710600f548361139c9190611754565b6113a6919061176b565b90503061dead821561145c576001600160a01b038216600090815260208190526040812080548592906113da90849061178d565b90915550506001600160a01b038116600090815260208190526040812080548592906114079084906117a0565b92505081905550806001600160a01b0316826001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161145391815260200190565b60405180910390a35b6040805185815260208101859052428183015290517f9cb560eb3a76b2c70f0528d86a83cc0464d10dd0ccc94ba95bd11b93eac93da69181900360600190a1600194505050505090565b600060208083528351808285015260005b818110156114d3578581018301518582016040015282016114b7565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461150b57600080fd5b919050565b8035801515811461150b57600080fd5b6000806040838503121561153357600080fd5b61153c836114f4565b915061154a60208401611510565b90509250929050565b6000806040838503121561156657600080fd5b8235915061154a60208401611510565b60006020828403121561158857600080fd5b813563ffffffff8116811461159c57600080fd5b9392505050565b6000602082840312156115b557600080fd5b5035919050565b6000602082840312156115ce57600080fd5b61159c826114f4565b6000806000606084860312156115ec57600080fd5b833592506020840135915061160360408501611510565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561163557600080fd5b823567ffffffffffffffff8082111561164d57600080fd5b818501915085601f83011261166157600080fd5b81356020828211156116755761167561160c565b8160051b604051601f19603f8301168101818110868211171561169a5761169a61160c565b6040529283528183019350848101820192898411156116b857600080fd5b948201945b838610156116dd576116ce866114f4565b855294820194938201936116bd565b96506116ec9050878201611510565b9450505050509250929050565b6000806040838503121561170c57600080fd5b611715836114f4565b946020939093013593505050565b60006020828403121561173557600080fd5b61159c82611510565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176109065761090661173e565b60008261178857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156109065761090661173e565b808201808211156109065761090661173e565b600181811c908216806117c757607f821691505b6020821081036117e757634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526022908201527f596f7520617265206e6f7420746865206c69717569646974792070726f76696460408201526132b960f11b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60006001820161188c5761188c61173e565b506001019056fea26469706673582212202ed42d8720153ace1e7612222b9c8cd1d24f553f2025f201be8205327701434d64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101d15760003560e01c806367b9a286116100f757806395d89b4111610095578063ae19139e11610064578063ae19139e1461053a578063b3f006741461055a578063d94439231461057a578063f275f64b1461059b57600080fd5b806395d89b41146104dc5780639a540abf146104f1578063a4c82a0014610504578063a9059cbb1461051a57600080fd5b8063730c1888116100d1578063730c1888146104665780637cb836b81461048657806382247ec0146104a65780638da5cb5b146104bc57600080fd5b806367b9a2861461040657806370a082311461041b578063715018a61461045157600080fd5b806318160ddd1161016f5780632e82f1a01161013e5780632e82f1a014610378578063313ce567146103925780635b8bec55146103ae5780635d0044ca146103e657600080fd5b806318160ddd14610317578063199ffc721461032c57806327de2e85146103425780632c3e486c1461036257600080fd5b80630bf74b72116101ab5780630bf74b721461027757806311106ee21461029757806312a54b62146102c55780631693e8d4146102f657600080fd5b806304c0c476146101e557806306fdde031461021c5780630902f1ac1461023e57600080fd5b366101e0576101de6105bb565b005b600080fd5b3480156101f157600080fd5b506005546102029063ffffffff1681565b60405163ffffffff90911681526020015b60405180910390f35b34801561022857600080fd5b506102316107be565b60405161021391906114a6565b34801561024a57600080fd5b50610262306000908152602081905260409020544791565b60408051928352602083019190915201610213565b34801561028357600080fd5b506101de610292366004611520565b610850565b3480156102a357600080fd5b506102b76102b2366004611553565b6108a5565b604051908152602001610213565b3480156102d157600080fd5b506009546102e690600160b01b900460ff1681565b6040519015158152602001610213565b34801561030257600080fd5b506009546102e690600160a01b900460ff1681565b34801561032357600080fd5b506003546102b7565b34801561033857600080fd5b506102b7600f5481565b34801561034e57600080fd5b506101de61035d366004611576565b61090c565b34801561036e57600080fd5b506102b7600d5481565b34801561038457600080fd5b50600c546102e69060ff1681565b34801561039e57600080fd5b5060405160128152602001610213565b3480156103ba57600080fd5b506009546103ce906001600160a01b031681565b6040516001600160a01b039091168152602001610213565b3480156103f257600080fd5b506101de6104013660046115a3565b6109ac565b34801561041257600080fd5b506101de6109db565b34801561042757600080fd5b506102b76104363660046115bc565b6001600160a01b031660009081526020819052604090205490565b34801561045d57600080fd5b506101de610abe565b34801561047257600080fd5b506101de6104813660046115d7565b610afa565b34801561049257600080fd5b506101de6104a1366004611622565b610bcd565b3480156104b257600080fd5b506102b760045481565b3480156104c857600080fd5b506008546103ce906001600160a01b031681565b3480156104e857600080fd5b50610231610c63565b6101de6104ff366004611576565b610c72565b34801561051057600080fd5b506102b7600e5481565b34801561052657600080fd5b506102e66105353660046116f9565b610dfc565b34801561054657600080fd5b506101de610555366004611723565b610e30565b34801561056657600080fd5b50600a546103ce906001600160a01b031681565b34801561058657600080fd5b506009546102e690600160a81b900460ff1681565b3480156105a757600080fd5b506101de6105b6366004611723565b610e78565b600954600160a01b900460ff1661060e5760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b60448201526064015b60405180910390fd5b34600061271061061f836096611754565b610629919061176b565b90506000610637828461178d565b600a546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015610672573d6000803e3d6000fd5b5030600090815260208190526040812054479061068f9084611754565b610699919061176b565b600954909150600160b01b900460ff1680156106c55750336000908152600b602052604090205460ff16155b1561072b57600454336000908152602081905260409020546106e790836117a0565b111561072b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610605565b60006107396127108361176b565b610745906126de611754565b90506000610753828461178d565b9050610760303384610ec0565b61076c30600083610ec0565b604080518581526000602082018190528183015260608101849052905133917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050505050565b6060600680546107cd906117b3565b80601f01602080910402602001604051908101604052809291908181526020018280546107f9906117b3565b80156108465780601f1061081b57610100808354040283529160200191610846565b820191906000526020600020905b81548152906001019060200180831161082957829003601f168201915b5050505050905090565b6008546001600160a01b0316331461087a5760405162461bcd60e51b8152600401610605906117ed565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b60008060006108c1306000908152602081905260409020544791565b9150915083156108f2576108d585836117a0565b6108df8287611754565b6108e9919061176b565b92505050610906565b6108fc85826117a0565b6108df8387611754565b92915050565b6009546001600160a01b031633146109365760405162461bcd60e51b815260040161060590611822565b60055463ffffffff8083169116106109905760405162461bcd60e51b815260206004820152601a60248201527f596f752063616e27742073686f7274656e206475726174696f6e0000000000006044820152606401610605565b6005805463ffffffff191663ffffffff92909216919091179055565b6008546001600160a01b031633146109d65760405162461bcd60e51b8152600401610605906117ed565b600455565b6009546001600160a01b03163314610a055760405162461bcd60e51b815260040161060590611822565b60055463ffffffff164311610a4f5760405162461bcd60e51b815260206004820152601060248201526f131a5c5d5a591a5d1e481b1bd8dad95960821b6044820152606401610605565b6009805460ff60a01b1916905560405133904780156108fc02916000818181858888f19350505050158015610a88573d6000803e3d6000fd5b506040514781527f9a5a8a32afd899e7f95003c6e21c9fab2d50e11992439d14472229180c60c7aa9060200160405180910390a1565b6008546001600160a01b03163314610ae85760405162461bcd60e51b8152600401610605906117ed565b600880546001600160a01b0319169055565b6008546001600160a01b03163314610b245760405162461bcd60e51b8152600401610605906117ed565b6101f4821115610b695760405162461bcd60e51b815260206004820152601060248201526f0e0cae4c6cadce840e8dede40d0d2ced60831b6044820152606401610605565b6103e8831015610bb15760405162461bcd60e51b8152602060048201526013602482015272199c995c5d595b98de481d1bdbc81cda1c9bdd606a1b6044820152606401610605565b600d92909255600f55600c805460ff1916911515919091179055565b6008546001600160a01b03163314610bf75760405162461bcd60e51b8152600401610605906117ed565b60005b8251811015610c5e5781600b6000858481518110610c1a57610c1a611864565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610c568161187a565b915050610bfa565b505050565b6060600780546107cd906117b3565b6008546001600160a01b03163314610c9c5760405162461bcd60e51b8152600401610605906117ed565b600954600160a81b900460ff1615610cf65760405162461bcd60e51b815260206004820152601760248201527f4c697175696469747920616c72656164792061646465640000000000000000006044820152606401610605565b6009805460ff60a81b1916600160a81b17905534610d445760405162461bcd60e51b815260206004820152600b60248201526a139bc8115512081cd95b9d60aa1b6044820152606401610605565b8063ffffffff164310610d905760405162461bcd60e51b8152602060048201526014602482015273426c6f636b206e756d62657220746f6f206c6f7760601b6044820152606401610605565b6005805463ffffffff831663ffffffff199091168117909155600980546001600160a81b0319163317600160a01b179055604080519182523460208301527f0c6c8102f3ac634c5fb327ba1a5d5c18030294d9f5cc309afa9e8a9020a77175910160405180910390a150565b6000306001600160a01b03841603610e1c57610e1782611105565b610e27565b610e27338484610ec0565b50600192915050565b6008546001600160a01b03163314610e5a5760405162461bcd60e51b8152600401610605906117ed565b60098054911515600160b01b0260ff60b01b19909216919091179055565b6008546001600160a01b03163314610ea25760405162461bcd60e51b8152600401610605906117ed565b60098054911515600160a01b0260ff60a01b19909216919091179055565b6001600160a01b03821615610fe957336000908152600260205260409020544363ffffffff90911603610f4f5760405162461bcd60e51b815260206004820152603160248201527f596f752063616e2774206d616b652074776f207472616e73616374696f6e7320604482015270696e207468652073616d6520626c6f636b60781b6064820152608401610605565b336000908152600260209081526040808320805463ffffffff19164363ffffffff161790556001909152902054610f8790603c6117a0565b421015610fd65760405162461bcd60e51b815260206004820152601d60248201527f53656e646572206d757374207761697420666f7220636f6f6c646f776e0000006044820152606401610605565b3360009081526001602052604090204290555b6001600160a01b0383166000908152602081905260409020548111156110605760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610605565b6001600160a01b038084166000908152602081905260409020805483900390558216611094576003805482900390556110b3565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110f891815260200190565b60405180910390a3505050565b600954600160a01b900460ff166111535760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f7420656e61626c6560701b6044820152606401610605565b60006111616127108361176b565b61116d906126de611754565b9050600061117b828461178d565b306000908152602081905260408120549192509061119a9084906117a0565b6111a44785611754565b6111ae919061176b565b9050600081116111f65760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b6044820152606401610605565b804710156112465760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e207265736572766573000000006044820152606401610605565b611251333085610ec0565b61125d33600084610ec0565b600061271061126d836096611754565b611277919061176b565b600a546040519192506001600160a01b03169082156108fc029083906000818181858888f193505050501580156112b2573d6000803e3d6000fd5b50336108fc6112c1838561178d565b6040518115909202916000818181858888f193505050501580156112e9573d6000803e3d6000fd5b50600c5460ff16801561130b5750600d54600e5461130791906117a0565b4210155b1561131a57611318611375565b505b337f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737600087611349858761178d565b604080519384526020840192909252908201526000606082015260800160405180910390a25050505050565b42600e55306000908152602081905260408120546000612710600f548361139c9190611754565b6113a6919061176b565b90503061dead821561145c576001600160a01b038216600090815260208190526040812080548592906113da90849061178d565b90915550506001600160a01b038116600090815260208190526040812080548592906114079084906117a0565b92505081905550806001600160a01b0316826001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161145391815260200190565b60405180910390a35b6040805185815260208101859052428183015290517f9cb560eb3a76b2c70f0528d86a83cc0464d10dd0ccc94ba95bd11b93eac93da69181900360600190a1600194505050505090565b600060208083528351808285015260005b818110156114d3578581018301518582016040015282016114b7565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461150b57600080fd5b919050565b8035801515811461150b57600080fd5b6000806040838503121561153357600080fd5b61153c836114f4565b915061154a60208401611510565b90509250929050565b6000806040838503121561156657600080fd5b8235915061154a60208401611510565b60006020828403121561158857600080fd5b813563ffffffff8116811461159c57600080fd5b9392505050565b6000602082840312156115b557600080fd5b5035919050565b6000602082840312156115ce57600080fd5b61159c826114f4565b6000806000606084860312156115ec57600080fd5b833592506020840135915061160360408501611510565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561163557600080fd5b823567ffffffffffffffff8082111561164d57600080fd5b818501915085601f83011261166157600080fd5b81356020828211156116755761167561160c565b8160051b604051601f19603f8301168101818110868211171561169a5761169a61160c565b6040529283528183019350848101820192898411156116b857600080fd5b948201945b838610156116dd576116ce866114f4565b855294820194938201936116bd565b96506116ec9050878201611510565b9450505050509250929050565b6000806040838503121561170c57600080fd5b611715836114f4565b946020939093013593505050565b60006020828403121561173557600080fd5b61159c82611510565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176109065761090661173e565b60008261178857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156109065761090661173e565b808201808211156109065761090661173e565b600181811c908216806117c757607f821691505b6020821081036117e757634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526022908201527f596f7520617265206e6f7420746865206c69717569646974792070726f76696460408201526132b960f11b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60006001820161188c5761188c61173e565b506001019056fea26469706673582212202ed42d8720153ace1e7612222b9c8cd1d24f553f2025f201be8205327701434d64736f6c63430008130033

Deployed Bytecode Sourcemap

9103:99:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9085:5;:3;:5::i;:::-;9103:99;;;;;667:36;;;;;;;;;;-1:-1:-1;667:36:0;;;;;;;;;;;188:10:1;176:23;;;158:42;;146:2;131:18;667:36:0;;;;;;;;1925:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;3476:131::-;;;;;;;;;;;;3594:4;3520:7;3576:24;;;;;;;;;;;3553:21;;3476:131;;;;;938:25:1;;;994:2;979:18;;972:34;;;;911:18;3476:131:0;764:248:1;8719:103:0;;;;;;;;;;-1:-1:-1;8719:103:0;;;;;:::i;:::-;;:::i;5065:311::-;;;;;;;;;;-1:-1:-1;5065:311:0;;;;;:::i;:::-;;:::i;:::-;;;2018:25:1;;;2006:2;1991:18;5065:311:0;1872:177:1;889:27:0;;;;;;;;;;-1:-1:-1;889:27:0;;;;-1:-1:-1;;;889:27:0;;;;;;;;;2219:14:1;;2212:22;2194:41;;2182:2;2167:18;889:27:0;2054:187:1;828:25:0;;;;;;;;;;-1:-1:-1;828:25:0;;;;-1:-1:-1;;;828:25:0;;;;;;2195:93;;;;;;;;;;-1:-1:-1;2270:12:0;;2195:93;;7669:36;;;;;;;;;;;;;;;;4812:247;;;;;;;;;;-1:-1:-1;4812:247:0;;;;;:::i;:::-;;:::i;7581:45::-;;;;;;;;;;;;;;;;7542:32;;;;;;;;;;-1:-1:-1;7542:32:0;;;;;;;;2111:78;;;;;;;;;;-1:-1:-1;2111:78:0;;2181:2;2669:36:1;;2657:2;2642:18;2111:78:0;2527:184:1;789:32:0;;;;;;;;;;-1:-1:-1;789:32:0;;;;-1:-1:-1;;;;;789:32:0;;;;;;-1:-1:-1;;;;;2880:32:1;;;2862:51;;2850:2;2835:18;789:32:0;2716:203:1;3845:99:0;;;;;;;;;;-1:-1:-1;3845:99:0;;;;;:::i;:::-;;:::i;4529:277::-;;;;;;;;;;;;;:::i;2294:112::-;;;;;;;;;;-1:-1:-1;2294:112:0;;;;;:::i;:::-;-1:-1:-1;;;;;2382:18:0;2359:7;2382:18;;;;;;;;;;;;2294:112;3950:79;;;;;;;;;;;;;:::i;7136:398::-;;;;;;;;;;-1:-1:-1;7136:398:0;;;;;:::i;:::-;;:::i;8830:213::-;;;;;;;;;;-1:-1:-1;8830:213:0;;;;;:::i;:::-;;:::i;637:25::-;;;;;;;;;;;;;;;;764:20;;;;;;;;;;-1:-1:-1;764:20:0;;;;-1:-1:-1;;;;;764:20:0;;;2016:89;;;;;;;;;;;;;:::i;4035:488::-;;;;;;:::i;:::-;;:::i;7633:29::-;;;;;;;;;;;;;;;;2412:238;;;;;;;;;;-1:-1:-1;2412:238:0;;;;;:::i;:::-;;:::i;3725:114::-;;;;;;;;;;-1:-1:-1;3725:114:0;;;;;:::i;:::-;;:::i;1172:34::-;;;;;;;;;;-1:-1:-1;1172:34:0;;;;-1:-1:-1;;;;;1172:34:0;;;858:26;;;;;;;;;;-1:-1:-1;858:26:0;;;;-1:-1:-1;;;858:26:0;;;;;;3613:106;;;;;;;;;;-1:-1:-1;3613:106:0;;;;;:::i;:::-;;:::i;5382:790::-;5421:13;;-1:-1:-1;;;5421:13:0;;;;5413:44;;;;-1:-1:-1;;;5413:44:0;;5819:2:1;5413:44:0;;;5801:21:1;5858:2;5838:18;;;5831:30;-1:-1:-1;;;5877:18:1;;;5870:48;5935:18;;5413:44:0;;;;;;;;;5485:9;5466:16;5537:5;5520:14;5485:9;5531:3;5520:14;:::i;:::-;:22;;;;:::i;:::-;5501:41;-1:-1:-1;5549:17:0;5569:19;5501:41;5569:8;:19;:::i;:::-;5597:11;;:30;;5549:39;;-1:-1:-1;;;;;;5597:11:0;;:30;;;;;5618:8;;5597:11;:30;:11;:30;5618:8;5597:11;:30;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5690:4:0;5636:20;5672:24;;;;;;;;;;;5701:21;;5660:36;;:9;:36;:::i;:::-;5659:64;;;;:::i;:::-;5736:15;;5636:87;;-1:-1:-1;;;;5736:15:0;;;;:41;;;;-1:-1:-1;5766:10:0;5756:21;;;;:9;:21;;;;;;;;5755:22;5736:41;5732:146;;;5836:10;;5821;5811:9;:21;;;;;;;;;;;5796:36;;:12;:36;:::i;:::-;:50;;5788:82;;;;-1:-1:-1;;;5788:82:0;;6956:2:1;5788:82:0;;;6938:21:1;6995:2;6975:18;;;6968:30;-1:-1:-1;;;7014:18:1;;;7007:49;7073:18;;5788:82:0;6754:343:1;5788:82:0;5886:19;5909:20;5924:5;5909:12;:20;:::i;:::-;5908:29;;5933:4;5908:29;:::i;:::-;5886:51;-1:-1:-1;5944:19:0;5966:26;5886:51;5966:12;:26;:::i;:::-;5944:48;;6001:49;6019:4;6026:10;6038:11;6001:9;:49::i;:::-;6057;6075:4;6090:1;6094:11;6057:9;:49::i;:::-;6120:46;;;7349:25:1;;;6148:1:0;7405:2:1;7390:18;;7383:34;;;7433:18;;;7426:34;7491:2;7476:18;;7469:34;;;6120:46:0;;6125:10;;6120:46;;;;;;7336:3:1;6120:46:0;;;5406:766;;;;;;5382:790::o;1925:85::-;1970:13;1999:5;1992:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1925:85;:::o;8719:103::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8795:15:0;;;::::1;;::::0;;;:9:::1;:15;::::0;;;;:19;;-1:-1:-1;;8795:19:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8719:103::o;5065:311::-;5134:7;5151:18;5171:20;5195:13;3594:4;3520:7;3576:24;;;;;;;;;;;3553:21;;3476:131;5195:13;5150:58;;;;5221:4;5217:154;;;5269:18;5282:5;5269:10;:18;:::i;:::-;5244:20;5252:12;5244:5;:20;:::i;:::-;5243:45;;;;:::i;:::-;5236:52;;;;;;5217:154;5342:20;5357:5;5342:12;:20;:::i;:::-;5319:18;5327:10;5319:5;:18;:::i;5065:311::-;;;;;:::o;4812:247::-;1097:17;;-1:-1:-1;;;;;1097:17:0;1083:10;:31;1075:78;;;;-1:-1:-1;;;1075:78:0;;;;;;;:::i;:::-;4917:22:::1;::::0;:48:::1;::::0;;::::1;:22:::0;::::1;:48;4909:87;;;::::0;-1:-1:-1;;;4909:87:0;;8865:2:1;4909:87:0::1;::::0;::::1;8847:21:1::0;8904:2;8884:18;;;8877:30;8943:28;8923:18;;;8916:56;8989:18;;4909:87:0::1;8663:350:1::0;4909:87:0::1;5005:22;:48:::0;;-1:-1:-1;;5005:48:0::1;;::::0;;;::::1;::::0;;;::::1;::::0;;4812:247::o;3845:99::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;3914:10:::1;:24:::0;3845:99::o;4529:277::-;1097:17;;-1:-1:-1;;;;;1097:17:0;1083:10;:31;1075:78;;;;-1:-1:-1;;;1075:78:0;;;;;;;:::i;:::-;4615:22:::1;::::0;::::1;;4600:12;:37;4592:66;;;::::0;-1:-1:-1;;;4592:66:0;;9220:2:1;4592:66:0::1;::::0;::::1;9202:21:1::0;9259:2;9239:18;;;9232:30;-1:-1:-1;;;9278:18:1;;;9271:46;9334:18;;4592:66:0::1;9018:340:1::0;4592:66:0::1;4667:13;:21:::0;;-1:-1:-1;;;;4667:21:0::1;::::0;;4697:51:::1;::::0;4705:10:::1;::::0;4726:21:::1;4697:51:::0;::::1;;;::::0;4683:5:::1;4697:51:::0;4683:5;4697:51;4726:21;4705:10;4697:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;4762:38:0::1;::::0;4778:21:::1;2018:25:1::0;;4762:38:0::1;::::0;2006:2:1;1991:18;4762:38:0::1;;;;;;;4529:277::o:0;3950:79::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;4005:5:::1;:18:::0;;-1:-1:-1;;;;;;4005:18:0::1;::::0;;3950:79::o;7136:398::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;7313:3:::1;7301:8;:15;;7293:43;;;::::0;-1:-1:-1;;;7293:43:0;;9565:2:1;7293:43:0::1;::::0;::::1;9547:21:1::0;9604:2;9584:18;;;9577:30;-1:-1:-1;;;9623:18:1;;;9616:46;9679:18;;7293:43:0::1;9363:340:1::0;7293:43:0::1;7378:4;7355:19;:27;;7347:58;;;::::0;-1:-1:-1;;;7347:58:0;;9910:2:1;7347:58:0::1;::::0;::::1;9892:21:1::0;9949:2;9929:18;;;9922:30;-1:-1:-1;;;9968:18:1;;;9961:49;10027:18;;7347:58:0::1;9708:343:1::0;7347:58:0::1;7416:15;:37:::0;;;;7464:16:::1;:27:::0;7502:13:::1;:24:::0;;-1:-1:-1;;7502:24:0::1;::::0;::::1;;::::0;;;::::1;::::0;;7136:398::o;8830:213::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;8938:9:::1;8933:107;8957:10;:17;8953:1;:21;8933:107;;;9019:13;8992:9;:24;9002:10;9013:1;9002:13;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;8992:24:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;8992:24:0;:40;;-1:-1:-1;;8992:40:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8976:3;::::1;::::0;::::1;:::i;:::-;;;;8933:107;;;;8830:213:::0;;:::o;2016:89::-;2063:13;2092:7;2085:14;;;;;:::i;4035:488::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;4129:14:::1;::::0;-1:-1:-1;;;4129:14:0;::::1;;;:23;4121:59;;;::::0;-1:-1:-1;;;4121:59:0;;10530:2:1;4121:59:0::1;::::0;::::1;10512:21:1::0;10569:2;10549:18;;;10542:30;10608:25;10588:18;;;10581:53;10651:18;;4121:59:0::1;10328:347:1::0;4121:59:0::1;4189:14;:21:::0;;-1:-1:-1;;;;4189:21:0::1;-1:-1:-1::0;;;4189:21:0::1;::::0;;4227:9:::1;4219:37;;;::::0;-1:-1:-1;;;4219:37:0;;10882:2:1;4219:37:0::1;::::0;::::1;10864:21:1::0;10921:2;10901:18;;;10894:30;-1:-1:-1;;;10940:18:1;;;10933:41;10991:18;;4219:37:0::1;10680:335:1::0;4219:37:0::1;4286:23;4271:38;;:12;:38;4263:71;;;::::0;-1:-1:-1;;;4263:71:0;;11222:2:1;4263:71:0::1;::::0;::::1;11204:21:1::0;11261:2;11241:18;;;11234:30;-1:-1:-1;;;11280:18:1;;;11273:50;11340:18;;4263:71:0::1;11020:344:1::0;4263:71:0::1;4343:22;:48:::0;;::::1;::::0;::::1;-1:-1:-1::0;;4343:48:0;;::::1;::::0;::::1;::::0;;;4398:13:::1;:20:::0;;-1:-1:-1;;;;;;4425:30:0;4445:10:::1;4425:30:::0;-1:-1:-1;;;4425:30:0;;;4469:48:::1;::::0;;11541:42:1;;;4507:9:0::1;11614:2:1::0;11599:18;;11592:34;4469:48:0::1;::::0;11514:18:1;4469:48:0::1;;;;;;;4035:488:::0;:::o;2412:238::-;2481:4;2537;-1:-1:-1;;;;;2523:19:0;;;2519:108;;2553:11;2558:5;2553:4;:11::i;:::-;2519:108;;;2587:32;2597:10;2609:2;2613:5;2587:9;:32::i;:::-;-1:-1:-1;2640:4:0;2412:238;;;;:::o;3725:114::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;3799:15:::1;:34:::0;;;::::1;;-1:-1:-1::0;;;3799:34:0::1;-1:-1:-1::0;;;;3799:34:0;;::::1;::::0;;;::::1;::::0;;3725:114::o;3613:106::-;973:5;;-1:-1:-1;;;;;973:5:0;959:10;:19;951:64;;;;-1:-1:-1;;;951:64:0;;;;;;;:::i;:::-;3683:13:::1;:30:::0;;;::::1;;-1:-1:-1::0;;;3683:30:0::1;-1:-1:-1::0;;;;3683:30:0;;::::1;::::0;;;::::1;::::0;;3613:106::o;2656:814::-;-1:-1:-1;;;;;2744:16:0;;;2740:353;;2795:10;2779:27;;;;:15;:27;;;;;;2810:12;2779:27;;;;:43;2771:105;;;;-1:-1:-1;;;2771:105:0;;11839:2:1;2771:105:0;;;11821:21:1;11878:2;11858:18;;;11851:30;11917:34;11897:18;;;11890:62;-1:-1:-1;;;11968:18:1;;;11961:47;12025:19;;2771:105:0;11637:413:1;2771:105:0;2901:10;2885:27;;;;:15;:27;;;;;;;;:50;;-1:-1:-1;;2885:50:0;2922:12;2885:50;;;;;-1:-1:-1;2973:23:0;;;;;;:28;;2999:2;2973:28;:::i;:::-;2954:15;:47;;2946:89;;;;-1:-1:-1;;;2946:89:0;;12257:2:1;2946:89:0;;;12239:21:1;12296:2;12276:18;;;12269:30;12335:31;12315:18;;;12308:59;12384:18;;2946:89:0;12055:353:1;2946:89:0;3056:10;3044:23;;;;:11;:23;;;;;3070:15;3044:41;;2740:353;-1:-1:-1;;;;;3109:15:0;;:9;:15;;;;;;;;;;;:24;-1:-1:-1;3109:24:0;3101:75;;;;-1:-1:-1;;;3101:75:0;;12615:2:1;3101:75:0;;;12597:21:1;12654:2;12634:18;;;12627:30;12693:34;12673:18;;;12666:62;-1:-1:-1;;;12744:18:1;;;12737:36;12790:19;;3101:75:0;12413:402:1;3101:75:0;-1:-1:-1;;;;;3222:15:0;;;:9;:15;;;;;;;;;;;;:23;;;3204:41;;3265:16;;3261:165;;3313:12;:21;;;;;;;3261:165;;;-1:-1:-1;;;;;3387:13:0;;:9;:13;;;;;;;;;;:22;;;;;;3261:165;3454:2;-1:-1:-1;;;;;3439:25:0;3448:4;-1:-1:-1;;;;;3439:25:0;;3458:5;3439:25;;;;2018::1;;2006:2;1991:18;;1872:177;3439:25:0;;;;;;;;2656:814;;;:::o;6178:950::-;6237:13;;-1:-1:-1;;;6237:13:0;;;;6229:44;;;;-1:-1:-1;;;6229:44:0;;5819:2:1;6229:44:0;;;5801:21:1;5858:2;5838:18;;;5831:30;-1:-1:-1;;;5877:18:1;;;5870:48;5935:18;;6229:44:0;5617:342:1;6229:44:0;6282:19;6305;6319:5;6305:11;:19;:::i;:::-;6304:28;;6328:4;6304:28;:::i;:::-;6282:50;-1:-1:-1;6339:19:0;6361:25;6282:50;6361:11;:25;:::i;:::-;6474:4;6395:17;6456:24;;;;;;;;;;;6339:47;;-1:-1:-1;6395:17:0;6456:38;;6483:11;;6456:38;:::i;:::-;6416:35;6430:21;6416:11;:35;:::i;:::-;6415:80;;;;:::i;:::-;6395:100;;6524:1;6512:9;:13;6504:45;;;;-1:-1:-1;;;6504:45:0;;13022:2:1;6504:45:0;;;13004:21:1;13061:2;13041:18;;;13034:30;-1:-1:-1;;;13080:18:1;;;13073:49;13139:18;;6504:45:0;12820:343:1;6504:45:0;6589:9;6564:21;:34;;6556:75;;;;-1:-1:-1;;;6556:75:0;;13370:2:1;6556:75:0;;;13352:21:1;13409:2;13389:18;;;13382:30;13448;13428:18;;;13421:58;13496:18;;6556:75:0;13168:352:1;6556:75:0;6640:49;6650:10;6670:4;6677:11;6640:9;:49::i;:::-;6696:46;6706:10;6726:1;6730:11;6696:9;:46::i;:::-;6751:16;6788:5;6770:15;:9;6782:3;6770:15;:::i;:::-;:23;;;;:::i;:::-;6808:11;;6800:39;;6751:42;;-1:-1:-1;;;;;;6808:11:0;;6800:39;;;;;6751:42;;6808:11;6800:39;6808:11;6800:39;6751:42;6808:11;6800:39;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6854:10:0;6846:50;6875:20;6887:8;6875:9;:20;:::i;:::-;6846:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6919:13:0;;;;:77;;;;;6981:15;;6964:14;;:32;;;;:::i;:::-;6945:15;:51;;6919:77;6905:147;;;7015:29;:27;:29::i;:::-;;6905:147;7070:10;7065:57;7082:1;7085:11;7098:20;7110:8;7098:9;:20;:::i;:::-;7065:57;;;7349:25:1;;;7405:2;7390:18;;7383:34;;;;7433:18;;;7426:34;7120:1:0;7491:2:1;7476:18;;7469:34;7336:3;7321:19;7065:57:0;;;;;;;6222:906;;;;6178:950;:::o;7837:874::-;7928:15;7911:14;:32;8045:4;7894;2382:18;;;;;;;;;;;8099:20;8181:5;8146:16;;8122:20;:41;;;;:::i;:::-;:75;;;;:::i;:::-;8099:98;-1:-1:-1;8231:4:0;8268:6;8379:16;;8375:176;;-1:-1:-1;;;;;8412:15:0;;:9;:15;;;;;;;;;;:31;;8431:12;;8412:9;:31;;8431:12;;8412:31;:::i;:::-;;;;-1:-1:-1;;;;;;;8458:13:0;;:9;:13;;;;;;;;;;:29;;8475:12;;8458:9;:29;;8475:12;;8458:29;:::i;:::-;;;;;;;;8522:2;-1:-1:-1;;;;;8507:32:0;8516:4;-1:-1:-1;;;;;8507:32:0;;8526:12;8507:32;;;;2018:25:1;;2006:2;1991:18;;1872:177;8507:32:0;;;;;;;;8375:176;8568:113;;;14139:25:1;;;14195:2;14180:18;;14173:34;;;8655:15:0;14223:18:1;;;14216:34;8568:113:0;;;;;;;14127:2:1;8568:113:0;;;8699:4;8692:11;;;;;;7837:874;:::o;211:548:1:-;323:4;352:2;381;370:9;363:21;413:6;407:13;456:6;451:2;440:9;436:18;429:34;481:1;491:140;505:6;502:1;499:13;491:140;;;600:14;;;596:23;;590:30;566:17;;;585:2;562:26;555:66;520:10;;491:140;;;495:3;680:1;675:2;666:6;655:9;651:22;647:31;640:42;750:2;743;739:7;734:2;726:6;722:15;718:29;707:9;703:45;699:54;691:62;;;;211:548;;;;:::o;1017:173::-;1085:20;;-1:-1:-1;;;;;1134:31:1;;1124:42;;1114:70;;1180:1;1177;1170:12;1114:70;1017:173;;;:::o;1195:160::-;1260:20;;1316:13;;1309:21;1299:32;;1289:60;;1345:1;1342;1335:12;1360:254;1425:6;1433;1486:2;1474:9;1465:7;1461:23;1457:32;1454:52;;;1502:1;1499;1492:12;1454:52;1525:29;1544:9;1525:29;:::i;:::-;1515:39;;1573:35;1604:2;1593:9;1589:18;1573:35;:::i;:::-;1563:45;;1360:254;;;;;:::o;1619:248::-;1684:6;1692;1745:2;1733:9;1724:7;1720:23;1716:32;1713:52;;;1761:1;1758;1751:12;1713:52;1797:9;1784:23;1774:33;;1826:35;1857:2;1846:9;1842:18;1826:35;:::i;2246:276::-;2304:6;2357:2;2345:9;2336:7;2332:23;2328:32;2325:52;;;2373:1;2370;2363:12;2325:52;2412:9;2399:23;2462:10;2455:5;2451:22;2444:5;2441:33;2431:61;;2488:1;2485;2478:12;2431:61;2511:5;2246:276;-1:-1:-1;;;2246:276:1:o;2924:180::-;2983:6;3036:2;3024:9;3015:7;3011:23;3007:32;3004:52;;;3052:1;3049;3042:12;3004:52;-1:-1:-1;3075:23:1;;2924:180;-1:-1:-1;2924:180:1:o;3109:186::-;3168:6;3221:2;3209:9;3200:7;3196:23;3192:32;3189:52;;;3237:1;3234;3227:12;3189:52;3260:29;3279:9;3260:29;:::i;3300:316::-;3374:6;3382;3390;3443:2;3431:9;3422:7;3418:23;3414:32;3411:52;;;3459:1;3456;3449:12;3411:52;3495:9;3482:23;3472:33;;3552:2;3541:9;3537:18;3524:32;3514:42;;3575:35;3606:2;3595:9;3591:18;3575:35;:::i;:::-;3565:45;;3300:316;;;;;:::o;3621:127::-;3682:10;3677:3;3673:20;3670:1;3663:31;3713:4;3710:1;3703:15;3737:4;3734:1;3727:15;3753:1191;3843:6;3851;3904:2;3892:9;3883:7;3879:23;3875:32;3872:52;;;3920:1;3917;3910:12;3872:52;3960:9;3947:23;3989:18;4030:2;4022:6;4019:14;4016:34;;;4046:1;4043;4036:12;4016:34;4084:6;4073:9;4069:22;4059:32;;4129:7;4122:4;4118:2;4114:13;4110:27;4100:55;;4151:1;4148;4141:12;4100:55;4187:2;4174:16;4209:4;4232:2;4228;4225:10;4222:36;;;4238:18;;:::i;:::-;4284:2;4281:1;4277:10;4316:2;4310:9;4379:2;4375:7;4370:2;4366;4362:11;4358:25;4350:6;4346:38;4434:6;4422:10;4419:22;4414:2;4402:10;4399:18;4396:46;4393:72;;;4445:18;;:::i;:::-;4481:2;4474:22;4531:18;;;4565:15;;;;-1:-1:-1;4607:11:1;;;4603:20;;;4635:19;;;4632:39;;;4667:1;4664;4657:12;4632:39;4691:11;;;;4711:148;4727:6;4722:3;4719:15;4711:148;;;4793:23;4812:3;4793:23;:::i;:::-;4781:36;;4744:12;;;;4837;;;;4711:148;;;4878:6;-1:-1:-1;4903:35:1;;-1:-1:-1;4919:18:1;;;4903:35;:::i;:::-;4893:45;;;;;;3753:1191;;;;;:::o;4949:254::-;5017:6;5025;5078:2;5066:9;5057:7;5053:23;5049:32;5046:52;;;5094:1;5091;5084:12;5046:52;5117:29;5136:9;5117:29;:::i;:::-;5107:39;5193:2;5178:18;;;;5165:32;;-1:-1:-1;;;4949:254:1:o;5208:180::-;5264:6;5317:2;5305:9;5296:7;5292:23;5288:32;5285:52;;;5333:1;5330;5323:12;5285:52;5356:26;5372:9;5356:26;:::i;5964:127::-;6025:10;6020:3;6016:20;6013:1;6006:31;6056:4;6053:1;6046:15;6080:4;6077:1;6070:15;6096:168;6169:9;;;6200;;6217:15;;;6211:22;;6197:37;6187:71;;6238:18;;:::i;6269:217::-;6309:1;6335;6325:132;;6379:10;6374:3;6370:20;6367:1;6360:31;6414:4;6411:1;6404:15;6442:4;6439:1;6432:15;6325:132;-1:-1:-1;6471:9:1;;6269:217::o;6491:128::-;6558:9;;;6579:11;;;6576:37;;;6593:18;;:::i;6624:125::-;6689:9;;;6710:10;;;6707:36;;;6723:18;;:::i;7514:380::-;7593:1;7589:12;;;;7636;;;7657:61;;7711:4;7703:6;7699:17;7689:27;;7657:61;7764:2;7756:6;7753:14;7733:18;7730:38;7727:161;;7810:10;7805:3;7801:20;7798:1;7791:31;7845:4;7842:1;7835:15;7873:4;7870:1;7863:15;7727:161;;7514:380;;;:::o;7899:356::-;8101:2;8083:21;;;8120:18;;;8113:30;8179:34;8174:2;8159:18;;8152:62;8246:2;8231:18;;7899:356::o;8260:398::-;8462:2;8444:21;;;8501:2;8481:18;;;8474:30;8540:34;8535:2;8520:18;;8513:62;-1:-1:-1;;;8606:2:1;8591:18;;8584:32;8648:3;8633:19;;8260:398::o;10056:127::-;10117:10;10112:3;10108:20;10105:1;10098:31;10148:4;10145:1;10138:15;10172:4;10169:1;10162:15;10188:135;10227:3;10248:17;;;10245:43;;10268:18;;:::i;:::-;-1:-1:-1;10315:1:1;10304:13;;10188:135::o

Swarm Source

ipfs://2ed42d8720153ace1e7612222b9c8cd1d24f553f2025f201be8205327701434d
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.