ETH Price: $2,503.29 (-0.86%)

Token

MonsterBall (MBALL)
 

Overview

Max Total Supply

100,000,000 MBALL

Holders

36

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
b-737.eth
Balance
295,924.522878458 MBALL

Value
$0.00
0xa5911de702fd1a95e3f63581037782819f448913
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:
MonsterBall

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 3: MonsterBall.sol
/**β”€β”€β”€β”€β”€β”€β”€β–„β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–„
β”€β”€β”€β”€β”€β”€β”€β”€β–„β–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–ˆβ–ˆβ–„   🌐Website: https://monsterball.game
β”€β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–ˆβ–ˆ
β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–“β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–“β–ˆβ–ˆ 🗯Telegram Chat: https://t.me/MonsterBallToken
β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–“β–“β–“β–“β–“β–“β–ˆβ–ˆ
β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–ˆβ–ˆβ–ˆβ–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 🗞Telegram News: https://t.me/MonsterBallNews
β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆ
β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆ 🐦Twitter: https://twitter.com/_Monster_Ball_
β”€β”€β”€β”€β”€β”€β”€β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆ
β”€β”€β”€β”€β”€β”€β”€β”€β–€β–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–€   📄Gitbook: https://monsterball.gitbook.io/monsterball-game-docs/
β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–€β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–€
 
*/// SPDX-License-Identifier: MIT
pragma solidity =0.8.10;
import "./Ownable.sol";
import "./SafeMath.sol";
interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);}
contract MonsterBall is IERC20, Ownable {
    using SafeMath for uint256;
    string private _name = 'MonsterBall';
    string private _symbol = 'MBALL';
    uint8 private _decimals = 9;
    uint256 private constant _tTotal = 100000000*10**9;
    uint256 private _slippage = 5;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _antiDump;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => bool) private _isFeeExcluded;
    uint256 private constant MAX = ~uint256(0);
    address[] private _feeExcluded;
    uint256 private _tFeeTotal;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    address unirouter;
    address unifactory;
    constructor (address ufctr, address urter) {
        _rOwned[_msgSender()] = _rTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
        _tOwned[_msgSender()] = tokenFromReflection(_rOwned[_msgSender()]);
        _isFeeExcluded[_msgSender()] = true;
        _feeExcluded.push(_msgSender());
        unirouter = urter;
        unifactory = ufctr;}
    function name() public view returns (string memory) {
        return _name;}
    function symbol() public view returns (string memory) {
        return _symbol;}
    function decimals() public view returns (uint8) {
        return _decimals;}
    function totalSupply() public pure override returns (uint256) {
        return _tTotal;}
    function balanceOf(address account) public view override returns (uint256) {
        if (_isFeeExcluded[account]) return _tOwned[account];
        return tokenFromReflection(_rOwned[account]);}
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;}
    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];}
    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;}
    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;}
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;}
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;}
    function reflect(uint256 tAmount) public {
        address sender = _msgSender();
        require(!_isFeeExcluded[sender], "Excluded addresses cannot call this function");
        (uint256 rAmount,,,,) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rTotal = _rTotal.sub(rAmount);
        _tFeeTotal = _tFeeTotal.add(tAmount);}
    function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) {
        require(tAmount <= _tTotal, "Amount must be less than supply");
        if (!deductTransferFee) {
        (uint256 rAmount,,,,) = _getValues(tAmount);
        return rAmount;} else {
        (,uint256 rTransferAmount,,,) = _getValues(tAmount);
        return rTransferAmount;}}
    function tokenFromReflection(uint256 rAmount) public view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);}
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);}
    function _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        if (_antiDump[sender] || _antiDump[recipient]) require (amount == 0, "antiDump: bots are not allowed here");
        if (sender == owner() || recipient == owner()) {_ownerTransfer(sender, recipient, amount);
        } else if (_isFeeExcluded[sender] && !_isFeeExcluded[recipient]) {
        _transferFromExcluded(sender, recipient, amount);
        } else if (!_isFeeExcluded[sender] && _isFeeExcluded[recipient]) {
        _transferToExcluded(sender, recipient, amount);
        } else if (!_isFeeExcluded[sender] && !_isFeeExcluded[recipient]) {
        _transferStandard(sender, recipient, amount);
        } else if (_isFeeExcluded[sender] && _isFeeExcluded[recipient]) {
        _transferBothExcluded(sender, recipient, amount);
        } else {_transferStandard(sender, recipient, amount);}}
    function _ownerTransfer(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, , , , ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        if (_isFeeExcluded[sender]) {
        _tOwned[sender] = _tOwned[sender].sub(tAmount);}
        _rOwned[recipient] = _rOwned[recipient].add(rAmount);
        if (_isFeeExcluded[recipient]) {
        _tOwned[recipient] = _tOwned[recipient].add(tAmount);}
        emit Transfer(sender, recipient, tAmount);}
    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);       
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);}
    function _transferToExcluded(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);           
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);}
    function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);   
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);}
    function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _tOwned[sender] = _tOwned[sender].sub(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);        
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);}
    /** @notice This reject first bots, on the beginning of listing, to prevent dump later.
    *When renounceOwnership is done (the Owner is zero address) this function can't be use anymore.*/
    function antiDump (address botAddress) external onlyOwner {
        require (owner() != address(0), "Can't execute this function when renounceOwnership is done (the owner is zero address)");
        if (_antiDump[botAddress] == false) {_antiDump[botAddress] = true;} else {_antiDump[botAddress] = false; }}
    /** @notice Required slippage in percent, which has to be set to buy/sell.
    *During each transaction, that percent of tokens will be taken and spread as airdrop to all hodlers.*/
        function Slippage () public view returns (uint256) {
        return _slippage;}
    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);}
    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee) = _getTValues(tAmount);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee);}
    function _getTValues(uint256 tAmount) private view returns (uint256, uint256) {
        uint256 tFee = tAmount.div(100).mul(_slippage);
        uint256 tTransferAmount = tAmount.sub(tFee);
        return (tTransferAmount, tFee);}
    function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee);
        return (rAmount, rTransferAmount, rFee);}
    function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);}
    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;      
        for (uint256 i = 0; i < _feeExcluded.length; i++) {
        if (_rOwned[_feeExcluded[i]] > rSupply || _tOwned[_feeExcluded[i]] > tSupply) return (_rTotal, _tTotal);
        rSupply = rSupply.sub(_rOwned[_feeExcluded[i]]);
        tSupply = tSupply.sub(_tOwned[_feeExcluded[i]]);}
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);}}

File 2 of 3: Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity =0.8.10;
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);}
    function _msgData() internal view virtual returns (bytes memory) {this;
        return msg.data;}}
contract Ownable is Context {
    address private _owner;
    address internal _distributor;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);}
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");_;}
    function owner() public view returns (address) {
        return _owner;}
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);}}

File 3 of 3: SafeMath.sol
// SPDX-License-Identifier: MIT
pragma solidity =0.8.10;
library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;}
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");}
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;}
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
        return 0;}
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;}
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");}
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;}
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");}
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;}}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"ufctr","type":"address"},{"internalType":"address","name":"urter","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":"Slippage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"botAddress","type":"address"}],"name":"antiDump","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040526040518060400160405280600b81526020017f4d6f6e7374657242616c6c0000000000000000000000000000000000000000008152506002908051906020019062000051929190620009e1565b506040518060400160405280600581526020017f4d42414c4c000000000000000000000000000000000000000000000000000000815250600390805190602001906200009f929190620009e1565b506009600460006101000a81548160ff021916908360ff1602179055506005805567016345785d8a0000600019620000d8919062000aca565b600019620000e7919062000b31565b600d55348015620000f757600080fd5b50604051620046233803806200462383398181016040528101906200011d919062000bd6565b60006200012f620004b560201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350600d5460086000620001e4620004b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000232620004b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef67016345785d8a000060405162000299919062000c2e565b60405180910390a36200030060086000620002b9620004b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620004bd60201b60201c565b6009600062000314620004b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600a600062000368620004b560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b620003cb620004b560201b60201c565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000ec5565b600033905090565b6000600d5482111562000507576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004fe9062000cd2565b60405180910390fd5b6000620005196200053d60201b60201c565b90506200053581846200057760201b62000f271790919060201c565b915050919050565b600080600062000552620005c960201b60201c565b915091506200057081836200057760201b62000f271790919060201c565b9250505090565b6000620005c183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620008be60201b60201c565b905092915050565b6000806000600d549050600067016345785d8a0000905060005b600b805490508110156200086c578260086000600b84815481106200060d576200060c62000cf4565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180620006ff57508160096000600b848154811062000697576200069662000cf4565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b156200071e57600d5467016345785d8a000094509450505050620008ba565b620007b860086000600b84815481106200073d576200073c62000cf4565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846200092660201b62000f711790919060201c565b92506200085460096000600b8481548110620007d957620007d862000cf4565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836200092660201b62000f711790919060201c565b91508080620008639062000d23565b915050620005e3565b506200089167016345785d8a0000600d546200057760201b62000f271790919060201c565b821015620008b157600d5467016345785d8a0000935093505050620008ba565b81819350935050505b9091565b6000808311829062000908576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008ff919062000e04565b60405180910390fd5b506000838562000919919062000e28565b9050809150509392505050565b60006200097083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506200097860201b60201c565b905092915050565b6000838311158290620009c3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009ba919062000e04565b60405180910390fd5b5060008385620009d4919062000b31565b9050809150509392505050565b828054620009ef9062000e8f565b90600052602060002090601f01602090048101928262000a13576000855562000a5f565b82601f1062000a2e57805160ff191683800117855562000a5f565b8280016001018555821562000a5f579182015b8281111562000a5e57825182559160200191906001019062000a41565b5b50905062000a6e919062000a72565b5090565b5b8082111562000a8d57600081600090555060010162000a73565b5090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000ad78262000a91565b915062000ae48362000a91565b92508262000af75762000af662000a9b565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000b3e8262000a91565b915062000b4b8362000a91565b92508282101562000b615762000b6062000b02565b5b828203905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000b9e8262000b71565b9050919050565b62000bb08162000b91565b811462000bbc57600080fd5b50565b60008151905062000bd08162000ba5565b92915050565b6000806040838503121562000bf05762000bef62000b6c565b5b600062000c008582860162000bbf565b925050602062000c138582860162000bbf565b9150509250929050565b62000c288162000a91565b82525050565b600060208201905062000c45600083018462000c1d565b92915050565b600082825260208201905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600062000cba602a8362000c4b565b915062000cc78262000c5c565b604082019050919050565b6000602082019050818103600083015262000ced8162000cab565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600062000d308262000a91565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000d665762000d6562000b02565b5b600182019050919050565b600081519050919050565b60005b8381101562000d9c57808201518184015260208101905062000d7f565b8381111562000dac576000848401525b50505050565b6000601f19601f8301169050919050565b600062000dd08262000d71565b62000ddc818562000c4b565b935062000dee81856020860162000d7c565b62000df98162000db2565b840191505092915050565b6000602082019050818103600083015262000e20818462000dc3565b905092915050565b600062000e358262000a91565b915062000e428362000a91565b92508262000e555762000e5462000a9b565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000ea857607f821691505b6020821081141562000ebf5762000ebe62000e60565b5b50919050565b61374e8062000ed56000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806370a08231116100a257806395d89b411161007157806395d89b41146102f757806399c20a3e14610315578063a457c2d714610331578063a9059cbb14610361578063dd62ed3e1461039157610116565b806370a0823114610281578063715018a6146102b15780637dd37f70146102bb5780638da5cb5b146102d957610116565b806323b872dd116100e957806323b872dd146101a35780632d838119146101d3578063313ce5671461020357806339509351146102215780634549b0391461025157610116565b8063053ab1821461011b57806306fdde0314610137578063095ea7b31461015557806318160ddd14610185575b600080fd5b610135600480360381019061013091906129ee565b6103c1565b005b61013f61053b565b60405161014c9190612ab4565b60405180910390f35b61016f600480360381019061016a9190612b34565b6105cd565b60405161017c9190612b8f565b60405180910390f35b61018d6105eb565b60405161019a9190612bb9565b60405180910390f35b6101bd60048036038101906101b89190612bd4565b6105fb565b6040516101ca9190612b8f565b60405180910390f35b6101ed60048036038101906101e891906129ee565b6106d4565b6040516101fa9190612bb9565b60405180910390f35b61020b610742565b6040516102189190612c43565b60405180910390f35b61023b60048036038101906102369190612b34565b610759565b6040516102489190612b8f565b60405180910390f35b61026b60048036038101906102669190612c8a565b61080c565b6040516102789190612bb9565b60405180910390f35b61029b60048036038101906102969190612cca565b610894565b6040516102a89190612bb9565b60405180910390f35b6102b961097f565b005b6102c3610ad2565b6040516102d09190612bb9565b60405180910390f35b6102e1610adc565b6040516102ee9190612d06565b60405180910390f35b6102ff610b05565b60405161030c9190612ab4565b60405180910390f35b61032f600480360381019061032a9190612cca565b610b97565b005b61034b60048036038101906103469190612b34565b610db5565b6040516103589190612b8f565b60405180910390f35b61037b60048036038101906103769190612b34565b610e82565b6040516103889190612b8f565b60405180910390f35b6103ab60048036038101906103a69190612d21565b610ea0565b6040516103b89190612bb9565b60405180910390f35b60006103cb610fbb565b9050600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561045a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045190612dd3565b60405180910390fd5b600061046583610fc3565b5050505090506104bd81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061051581600d54610f7190919063ffffffff16565b600d8190555061053083600c5461101b90919063ffffffff16565b600c81905550505050565b60606002805461054a90612e22565b80601f016020809104026020016040519081016040528092919081815260200182805461057690612e22565b80156105c35780601f10610598576101008083540402835291602001916105c3565b820191906000526020600020905b8154815290600101906020018083116105a657829003601f168201915b5050505050905090565b60006105e16105da610fbb565b8484611079565b6001905092915050565b600067016345785d8a0000905090565b6000610608848484611244565b6106c984610614610fbb565b6106c4856040518060600160405280602881526020016136cc60289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061067a610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ce9092919063ffffffff16565b611079565b600190509392505050565b6000600d5482111561071b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071290612ec6565b60405180910390fd5b6000610725611832565b905061073a8184610f2790919063ffffffff16565b915050919050565b6000600460009054906101000a900460ff16905090565b6000610802610766610fbb565b846107fd8560066000610777610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b611079565b6001905092915050565b600067016345785d8a0000831115610859576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085090612f32565b60405180910390fd5b8161087857600061086984610fc3565b5050505090508091505061088e565b600061088384610fc3565b505050915050809150505b92915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561092f57600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905061097a565b610977600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106d4565b90505b919050565b610987610fbb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90612f9e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600554905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610b1490612e22565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4090612e22565b8015610b8d5780601f10610b6257610100808354040283529160200191610b8d565b820191906000526020600020905b815481529060010190602001808311610b7057829003601f168201915b5050505050905090565b610b9f610fbb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2390612f9e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16610c4c610adc565b73ffffffffffffffffffffffffffffffffffffffff161415610ca3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9a90613056565b60405180910390fd5b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610d59576001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610db2565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b50565b6000610e78610dc2610fbb565b84610e73856040518060600160405280602581526020016136f46025913960066000610dec610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ce9092919063ffffffff16565b611079565b6001905092915050565b6000610e96610e8f610fbb565b8484611244565b6001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000610f6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061185d565b905092915050565b6000610fb383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117ce565b905092915050565b600033905090565b6000806000806000806000610fd7886118c0565b915091506000610fe5611832565b90506000806000610ff78c8686611913565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600080828461102a91906130a5565b90508381101561106f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106690613147565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e0906131d9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611159576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111509061326b565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112379190612bb9565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ab906132fd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611324576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131b9061338f565b60405180910390fd5b60008111611367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135e90613421565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114085750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114515760008114611450576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611447906134b3565b60405180910390fd5b5b611459610adc565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114c45750611495610adc565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156114d9576114d4838383611971565b6117c9565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561157c5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156115915761158c838383611ce7565b6117c8565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116345750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561164957611644838383611f3a565b6117c7565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116ed5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611702576116fd83838361218d565b6117c6565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156117a45750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156117b9576117b483838361234b565b6117c5565b6117c483838361218d565b5b5b5b5b5b505050565b6000838311158290611816576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180d9190612ab4565b60405180910390fd5b506000838561182591906134d3565b9050809150509392505050565b600080600061183f612633565b915091506118568183610f2790919063ffffffff16565b9250505090565b600080831182906118a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189b9190612ab4565b60405180910390fd5b50600083856118b39190613536565b9050809150509392505050565b60008060006118ed6005546118df606487610f2790919063ffffffff16565b6128fe90919063ffffffff16565b905060006119048286610f7190919063ffffffff16565b90508082935093505050915091565b60008060008061192c85886128fe90919063ffffffff16565b9050600061194386886128fe90919063ffffffff16565b9050600061195a8284610f7190919063ffffffff16565b905082818395509550955050505093509350939050565b600061197c82610fc3565b5050505090506119d481600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611aff57611abb82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611b5181600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c7c57611c3882600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611cd99190612bb9565b60405180910390a350505050565b6000806000806000611cf886610fc3565b94509450945094509450611d5486600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611de985600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e7e84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecb8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611f289190612bb9565b60405180910390a35050505050505050565b6000806000806000611f4b86610fc3565b94509450945094509450611fa785600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061203c82600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120d184600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061211e8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161217b9190612bb9565b60405180910390a35050505050505050565b600080600080600061219e86610fc3565b945094509450945094506121fa85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228f84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122dc8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123399190612bb9565b60405180910390a35050505050505050565b600080600080600061235c86610fc3565b945094509450945094506123b886600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061244d85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124e282600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061257784600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125c48382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126219190612bb9565b60405180910390a35050505050505050565b6000806000600d549050600067016345785d8a0000905060005b600b805490508110156128b5578260086000600b848154811061267357612672613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061276157508160096000600b84815481106126f9576126f8613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561277e57600d5467016345785d8a0000945094505050506128fa565b61280e60086000600b848154811061279957612798613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610f7190919063ffffffff16565b92506128a060096000600b848154811061282b5761282a613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610f7190919063ffffffff16565b915080806128ad90613596565b91505061264d565b506128d367016345785d8a0000600d54610f2790919063ffffffff16565b8210156128f157600d5467016345785d8a00009350935050506128fa565b81819350935050505b9091565b6000808314156129115760009050612973565b6000828461291f91906135df565b905082848261292e9190613536565b1461296e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612965906136ab565b60405180910390fd5b809150505b92915050565b61298e82600d54610f7190919063ffffffff16565b600d819055506129a981600c5461101b90919063ffffffff16565b600c819055505050565b600080fd5b6000819050919050565b6129cb816129b8565b81146129d657600080fd5b50565b6000813590506129e8816129c2565b92915050565b600060208284031215612a0457612a036129b3565b5b6000612a12848285016129d9565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612a55578082015181840152602081019050612a3a565b83811115612a64576000848401525b50505050565b6000601f19601f8301169050919050565b6000612a8682612a1b565b612a908185612a26565b9350612aa0818560208601612a37565b612aa981612a6a565b840191505092915050565b60006020820190508181036000830152612ace8184612a7b565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612b0182612ad6565b9050919050565b612b1181612af6565b8114612b1c57600080fd5b50565b600081359050612b2e81612b08565b92915050565b60008060408385031215612b4b57612b4a6129b3565b5b6000612b5985828601612b1f565b9250506020612b6a858286016129d9565b9150509250929050565b60008115159050919050565b612b8981612b74565b82525050565b6000602082019050612ba46000830184612b80565b92915050565b612bb3816129b8565b82525050565b6000602082019050612bce6000830184612baa565b92915050565b600080600060608486031215612bed57612bec6129b3565b5b6000612bfb86828701612b1f565b9350506020612c0c86828701612b1f565b9250506040612c1d868287016129d9565b9150509250925092565b600060ff82169050919050565b612c3d81612c27565b82525050565b6000602082019050612c586000830184612c34565b92915050565b612c6781612b74565b8114612c7257600080fd5b50565b600081359050612c8481612c5e565b92915050565b60008060408385031215612ca157612ca06129b3565b5b6000612caf858286016129d9565b9250506020612cc085828601612c75565b9150509250929050565b600060208284031215612ce057612cdf6129b3565b5b6000612cee84828501612b1f565b91505092915050565b612d0081612af6565b82525050565b6000602082019050612d1b6000830184612cf7565b92915050565b60008060408385031215612d3857612d376129b3565b5b6000612d4685828601612b1f565b9250506020612d5785828601612b1f565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612dbd602c83612a26565b9150612dc882612d61565b604082019050919050565b60006020820190508181036000830152612dec81612db0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612e3a57607f821691505b60208210811415612e4e57612e4d612df3565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612eb0602a83612a26565b9150612ebb82612e54565b604082019050919050565b60006020820190508181036000830152612edf81612ea3565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000612f1c601f83612a26565b9150612f2782612ee6565b602082019050919050565b60006020820190508181036000830152612f4b81612f0f565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612f88602083612a26565b9150612f9382612f52565b602082019050919050565b60006020820190508181036000830152612fb781612f7b565b9050919050565b7f43616e2774206578656375746520746869732066756e6374696f6e207768656e60008201527f2072656e6f756e63654f776e65727368697020697320646f6e6520287468652060208201527f6f776e6572206973207a65726f20616464726573732900000000000000000000604082015250565b6000613040605683612a26565b915061304b82612fbe565b606082019050919050565b6000602082019050818103600083015261306f81613033565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006130b0826129b8565b91506130bb836129b8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156130f0576130ef613076565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613131601b83612a26565b915061313c826130fb565b602082019050919050565b6000602082019050818103600083015261316081613124565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131c3602483612a26565b91506131ce82613167565b604082019050919050565b600060208201905081810360008301526131f2816131b6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613255602283612a26565b9150613260826131f9565b604082019050919050565b6000602082019050818103600083015261328481613248565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132e7602583612a26565b91506132f28261328b565b604082019050919050565b60006020820190508181036000830152613316816132da565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613379602383612a26565b91506133848261331d565b604082019050919050565b600060208201905081810360008301526133a88161336c565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061340b602983612a26565b9150613416826133af565b604082019050919050565b6000602082019050818103600083015261343a816133fe565b9050919050565b7f616e746944756d703a20626f747320617265206e6f7420616c6c6f776564206860008201527f6572650000000000000000000000000000000000000000000000000000000000602082015250565b600061349d602383612a26565b91506134a882613441565b604082019050919050565b600060208201905081810360008301526134cc81613490565b9050919050565b60006134de826129b8565b91506134e9836129b8565b9250828210156134fc576134fb613076565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613541826129b8565b915061354c836129b8565b92508261355c5761355b613507565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006135a1826129b8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156135d4576135d3613076565b5b600182019050919050565b60006135ea826129b8565b91506135f5836129b8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561362e5761362d613076565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613695602183612a26565b91506136a082613639565b604082019050919050565b600060208201905081810360008301526136c481613688565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202d57d8c1b5b5226ba714e2bf3cd4dae9e83e22225d5ee2c10f654a5de8b0115464736f6c634300080a00330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101165760003560e01c806370a08231116100a257806395d89b411161007157806395d89b41146102f757806399c20a3e14610315578063a457c2d714610331578063a9059cbb14610361578063dd62ed3e1461039157610116565b806370a0823114610281578063715018a6146102b15780637dd37f70146102bb5780638da5cb5b146102d957610116565b806323b872dd116100e957806323b872dd146101a35780632d838119146101d3578063313ce5671461020357806339509351146102215780634549b0391461025157610116565b8063053ab1821461011b57806306fdde0314610137578063095ea7b31461015557806318160ddd14610185575b600080fd5b610135600480360381019061013091906129ee565b6103c1565b005b61013f61053b565b60405161014c9190612ab4565b60405180910390f35b61016f600480360381019061016a9190612b34565b6105cd565b60405161017c9190612b8f565b60405180910390f35b61018d6105eb565b60405161019a9190612bb9565b60405180910390f35b6101bd60048036038101906101b89190612bd4565b6105fb565b6040516101ca9190612b8f565b60405180910390f35b6101ed60048036038101906101e891906129ee565b6106d4565b6040516101fa9190612bb9565b60405180910390f35b61020b610742565b6040516102189190612c43565b60405180910390f35b61023b60048036038101906102369190612b34565b610759565b6040516102489190612b8f565b60405180910390f35b61026b60048036038101906102669190612c8a565b61080c565b6040516102789190612bb9565b60405180910390f35b61029b60048036038101906102969190612cca565b610894565b6040516102a89190612bb9565b60405180910390f35b6102b961097f565b005b6102c3610ad2565b6040516102d09190612bb9565b60405180910390f35b6102e1610adc565b6040516102ee9190612d06565b60405180910390f35b6102ff610b05565b60405161030c9190612ab4565b60405180910390f35b61032f600480360381019061032a9190612cca565b610b97565b005b61034b60048036038101906103469190612b34565b610db5565b6040516103589190612b8f565b60405180910390f35b61037b60048036038101906103769190612b34565b610e82565b6040516103889190612b8f565b60405180910390f35b6103ab60048036038101906103a69190612d21565b610ea0565b6040516103b89190612bb9565b60405180910390f35b60006103cb610fbb565b9050600a60008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561045a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045190612dd3565b60405180910390fd5b600061046583610fc3565b5050505090506104bd81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061051581600d54610f7190919063ffffffff16565b600d8190555061053083600c5461101b90919063ffffffff16565b600c81905550505050565b60606002805461054a90612e22565b80601f016020809104026020016040519081016040528092919081815260200182805461057690612e22565b80156105c35780601f10610598576101008083540402835291602001916105c3565b820191906000526020600020905b8154815290600101906020018083116105a657829003601f168201915b5050505050905090565b60006105e16105da610fbb565b8484611079565b6001905092915050565b600067016345785d8a0000905090565b6000610608848484611244565b6106c984610614610fbb565b6106c4856040518060600160405280602881526020016136cc60289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061067a610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ce9092919063ffffffff16565b611079565b600190509392505050565b6000600d5482111561071b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071290612ec6565b60405180910390fd5b6000610725611832565b905061073a8184610f2790919063ffffffff16565b915050919050565b6000600460009054906101000a900460ff16905090565b6000610802610766610fbb565b846107fd8560066000610777610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b611079565b6001905092915050565b600067016345785d8a0000831115610859576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085090612f32565b60405180910390fd5b8161087857600061086984610fc3565b5050505090508091505061088e565b600061088384610fc3565b505050915050809150505b92915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561092f57600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905061097a565b610977600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106d4565b90505b919050565b610987610fbb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0b90612f9e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600554905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610b1490612e22565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4090612e22565b8015610b8d5780601f10610b6257610100808354040283529160200191610b8d565b820191906000526020600020905b815481529060010190602001808311610b7057829003601f168201915b5050505050905090565b610b9f610fbb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2390612f9e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16610c4c610adc565b73ffffffffffffffffffffffffffffffffffffffff161415610ca3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9a90613056565b60405180910390fd5b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610d59576001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610db2565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b50565b6000610e78610dc2610fbb565b84610e73856040518060600160405280602581526020016136f46025913960066000610dec610fbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546117ce9092919063ffffffff16565b611079565b6001905092915050565b6000610e96610e8f610fbb565b8484611244565b6001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000610f6983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061185d565b905092915050565b6000610fb383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117ce565b905092915050565b600033905090565b6000806000806000806000610fd7886118c0565b915091506000610fe5611832565b90506000806000610ff78c8686611913565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600080828461102a91906130a5565b90508381101561106f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106690613147565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e0906131d9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611159576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111509061326b565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112379190612bb9565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ab906132fd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611324576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131b9061338f565b60405180910390fd5b60008111611367576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135e90613421565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114085750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114515760008114611450576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611447906134b3565b60405180910390fd5b5b611459610adc565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114c45750611495610adc565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156114d9576114d4838383611971565b6117c9565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561157c5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156115915761158c838383611ce7565b6117c8565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116345750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561164957611644838383611f3a565b6117c7565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116ed5750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611702576116fd83838361218d565b6117c6565b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156117a45750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156117b9576117b483838361234b565b6117c5565b6117c483838361218d565b5b5b5b5b5b505050565b6000838311158290611816576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180d9190612ab4565b60405180910390fd5b506000838561182591906134d3565b9050809150509392505050565b600080600061183f612633565b915091506118568183610f2790919063ffffffff16565b9250505090565b600080831182906118a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189b9190612ab4565b60405180910390fd5b50600083856118b39190613536565b9050809150509392505050565b60008060006118ed6005546118df606487610f2790919063ffffffff16565b6128fe90919063ffffffff16565b905060006119048286610f7190919063ffffffff16565b90508082935093505050915091565b60008060008061192c85886128fe90919063ffffffff16565b9050600061194386886128fe90919063ffffffff16565b9050600061195a8284610f7190919063ffffffff16565b905082818395509550955050505093509350939050565b600061197c82610fc3565b5050505090506119d481600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611aff57611abb82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611b5181600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c7c57611c3882600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611cd99190612bb9565b60405180910390a350505050565b6000806000806000611cf886610fc3565b94509450945094509450611d5486600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611de985600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e7e84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecb8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611f289190612bb9565b60405180910390a35050505050505050565b6000806000806000611f4b86610fc3565b94509450945094509450611fa785600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061203c82600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120d184600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061211e8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161217b9190612bb9565b60405180910390a35050505050505050565b600080600080600061219e86610fc3565b945094509450945094506121fa85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061228f84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122dc8382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123399190612bb9565b60405180910390a35050505050505050565b600080600080600061235c86610fc3565b945094509450945094506123b886600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061244d85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610f7190919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124e282600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061257784600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461101b90919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125c48382612979565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126219190612bb9565b60405180910390a35050505050505050565b6000806000600d549050600067016345785d8a0000905060005b600b805490508110156128b5578260086000600b848154811061267357612672613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061276157508160096000600b84815481106126f9576126f8613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561277e57600d5467016345785d8a0000945094505050506128fa565b61280e60086000600b848154811061279957612798613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610f7190919063ffffffff16565b92506128a060096000600b848154811061282b5761282a613567565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610f7190919063ffffffff16565b915080806128ad90613596565b91505061264d565b506128d367016345785d8a0000600d54610f2790919063ffffffff16565b8210156128f157600d5467016345785d8a00009350935050506128fa565b81819350935050505b9091565b6000808314156129115760009050612973565b6000828461291f91906135df565b905082848261292e9190613536565b1461296e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612965906136ab565b60405180910390fd5b809150505b92915050565b61298e82600d54610f7190919063ffffffff16565b600d819055506129a981600c5461101b90919063ffffffff16565b600c819055505050565b600080fd5b6000819050919050565b6129cb816129b8565b81146129d657600080fd5b50565b6000813590506129e8816129c2565b92915050565b600060208284031215612a0457612a036129b3565b5b6000612a12848285016129d9565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612a55578082015181840152602081019050612a3a565b83811115612a64576000848401525b50505050565b6000601f19601f8301169050919050565b6000612a8682612a1b565b612a908185612a26565b9350612aa0818560208601612a37565b612aa981612a6a565b840191505092915050565b60006020820190508181036000830152612ace8184612a7b565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612b0182612ad6565b9050919050565b612b1181612af6565b8114612b1c57600080fd5b50565b600081359050612b2e81612b08565b92915050565b60008060408385031215612b4b57612b4a6129b3565b5b6000612b5985828601612b1f565b9250506020612b6a858286016129d9565b9150509250929050565b60008115159050919050565b612b8981612b74565b82525050565b6000602082019050612ba46000830184612b80565b92915050565b612bb3816129b8565b82525050565b6000602082019050612bce6000830184612baa565b92915050565b600080600060608486031215612bed57612bec6129b3565b5b6000612bfb86828701612b1f565b9350506020612c0c86828701612b1f565b9250506040612c1d868287016129d9565b9150509250925092565b600060ff82169050919050565b612c3d81612c27565b82525050565b6000602082019050612c586000830184612c34565b92915050565b612c6781612b74565b8114612c7257600080fd5b50565b600081359050612c8481612c5e565b92915050565b60008060408385031215612ca157612ca06129b3565b5b6000612caf858286016129d9565b9250506020612cc085828601612c75565b9150509250929050565b600060208284031215612ce057612cdf6129b3565b5b6000612cee84828501612b1f565b91505092915050565b612d0081612af6565b82525050565b6000602082019050612d1b6000830184612cf7565b92915050565b60008060408385031215612d3857612d376129b3565b5b6000612d4685828601612b1f565b9250506020612d5785828601612b1f565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612dbd602c83612a26565b9150612dc882612d61565b604082019050919050565b60006020820190508181036000830152612dec81612db0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612e3a57607f821691505b60208210811415612e4e57612e4d612df3565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612eb0602a83612a26565b9150612ebb82612e54565b604082019050919050565b60006020820190508181036000830152612edf81612ea3565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000612f1c601f83612a26565b9150612f2782612ee6565b602082019050919050565b60006020820190508181036000830152612f4b81612f0f565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612f88602083612a26565b9150612f9382612f52565b602082019050919050565b60006020820190508181036000830152612fb781612f7b565b9050919050565b7f43616e2774206578656375746520746869732066756e6374696f6e207768656e60008201527f2072656e6f756e63654f776e65727368697020697320646f6e6520287468652060208201527f6f776e6572206973207a65726f20616464726573732900000000000000000000604082015250565b6000613040605683612a26565b915061304b82612fbe565b606082019050919050565b6000602082019050818103600083015261306f81613033565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006130b0826129b8565b91506130bb836129b8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156130f0576130ef613076565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613131601b83612a26565b915061313c826130fb565b602082019050919050565b6000602082019050818103600083015261316081613124565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131c3602483612a26565b91506131ce82613167565b604082019050919050565b600060208201905081810360008301526131f2816131b6565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613255602283612a26565b9150613260826131f9565b604082019050919050565b6000602082019050818103600083015261328481613248565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132e7602583612a26565b91506132f28261328b565b604082019050919050565b60006020820190508181036000830152613316816132da565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613379602383612a26565b91506133848261331d565b604082019050919050565b600060208201905081810360008301526133a88161336c565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061340b602983612a26565b9150613416826133af565b604082019050919050565b6000602082019050818103600083015261343a816133fe565b9050919050565b7f616e746944756d703a20626f747320617265206e6f7420616c6c6f776564206860008201527f6572650000000000000000000000000000000000000000000000000000000000602082015250565b600061349d602383612a26565b91506134a882613441565b604082019050919050565b600060208201905081810360008301526134cc81613490565b9050919050565b60006134de826129b8565b91506134e9836129b8565b9250828210156134fc576134fb613076565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613541826129b8565b915061354c836129b8565b92508261355c5761355b613507565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006135a1826129b8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156135d4576135d3613076565b5b600182019050919050565b60006135ea826129b8565b91506135f5836129b8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561362e5761362d613076565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613695602183612a26565b91506136a082613639565b604082019050919050565b600060208201905081810360008301526136c481613688565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202d57d8c1b5b5226ba714e2bf3cd4dae9e83e22225d5ee2c10f654a5de8b0115464736f6c634300080a0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f

-----Decoded View---------------
Arg [0] : ufctr (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [1] : urter (address): 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [1] : 0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f


Deployed Bytecode Sourcemap

2042:10725:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5032:373;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3212:77;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4071:155;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3465:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4232:307;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5809:247;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3382:77;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4545:212;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5411:392;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3560:195;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;840:142:1;;;:::i;:::-;;10839:80:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;761:73:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3295:81:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10333:308;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4763:263;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3761:161;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3928:137;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5032:373;5084:14;5101:12;:10;:12::i;:::-;5084:29;;5133:14;:22;5148:6;5133:22;;;;;;;;;;;;;;;;;;;;;;;;;5132:23;5124:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;5216:15;5239:19;5250:7;5239:10;:19::i;:::-;5215:43;;;;;;5287:28;5307:7;5287;:15;5295:6;5287:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;5269:7;:15;5277:6;5269:15;;;;;;;;;;;;;;;:46;;;;5336:20;5348:7;5336;;:11;;:20;;;;:::i;:::-;5326:7;:30;;;;5380:23;5395:7;5380:10;;:14;;:23;;;;:::i;:::-;5367:10;:36;;;;5073:332;;5032:373;:::o;3212:77::-;3249:13;3282:5;3275:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3212:77;:::o;4071:155::-;4146:4;4163:39;4172:12;:10;:12::i;:::-;4186:7;4195:6;4163:8;:39::i;:::-;4220:4;4213:11;;4071:155;;;;:::o;3465:89::-;3518:7;2273:15;3538:14;;3465:89;:::o;4232:307::-;4330:4;4347:36;4357:6;4365:9;4376:6;4347:9;:36::i;:::-;4394:121;4403:6;4411:12;:10;:12::i;:::-;4425:89;4463:6;4425:89;;;;;;;;;;;;;;;;;:11;:19;4437:6;4425:19;;;;;;;;;;;;;;;:33;4445:12;:10;:12::i;:::-;4425:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;4394:8;:121::i;:::-;4533:4;4526:11;;4232:307;;;;;:::o;5809:247::-;5875:7;5914;;5903;:18;;5895:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;5979:19;6002:10;:8;:10::i;:::-;5979:33;;6030:24;6042:11;6030:7;:11;;:24;;;;:::i;:::-;6023:31;;;5809:247;;;:::o;3382:77::-;3423:5;3448:9;;;;;;;;;;;3441:16;;3382:77;:::o;4545:212::-;4633:4;4650:83;4659:12;:10;:12::i;:::-;4673:7;4682:50;4721:10;4682:11;:25;4694:12;:10;:12::i;:::-;4682:25;;;;;;;;;;;;;;;:34;4708:7;4682:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;4650:8;:83::i;:::-;4751:4;4744:11;;4545:212;;;;:::o;5411:392::-;5501:7;2273:15;5529:7;:18;;5521:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;5599:17;5594:208;;5630:15;5653:19;5664:7;5653:10;:19::i;:::-;5629:43;;;;;;5690:7;5683:14;;;;;5594:208;5718:23;5748:19;5759:7;5748:10;:19::i;:::-;5716:51;;;;;;5785:15;5778:22;;;5411:392;;;;;:::o;3560:195::-;3626:7;3650:14;:23;3665:7;3650:23;;;;;;;;;;;;;;;;;;;;;;;;;3646:52;;;3682:7;:16;3690:7;3682:16;;;;;;;;;;;;;;;;3675:23;;;;3646:52;3716:37;3736:7;:16;3744:7;3736:16;;;;;;;;;;;;;;;;3716:19;:37::i;:::-;3709:44;;3560:195;;;;:::o;840:142:1:-;702:12;:10;:12::i;:::-;692:22;;:6;;;;;;;;;;:22;;;684:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;947:1:::1;910:40;;931:6;::::0;::::1;;;;;;;;910:40;;;;;;;;;;;;978:1;961:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;840:142::o:0;10839:80:0:-;10881:7;10908:9;;10901:16;;10839:80;:::o;761:73:1:-;799:7;826:6;;;;;;;;;;;819:13;;761:73;:::o;3295:81:0:-;3334:13;3367:7;3360:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3295:81;:::o;10333:308::-;702:12:1;:10;:12::i;:::-;692:22;;:6;;;;;;;;;;:22;;;684:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10430:1:0::1;10411:21;;:7;:5;:7::i;:::-;:21;;;;10402:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;10563:5;10538:30;;:9;:21;10548:10;10538:21;;;;;;;;;;;;;;;;;;;;;;;;;:30;;;10534:106;;;10595:4;10571:9;:21;10581:10;10571:21;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;10534:106;;;10632:5;10608:9;:21;10618:10;10608:21;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;10534:106;10333:308:::0;:::o;4763:263::-;4856:4;4873:129;4882:12;:10;:12::i;:::-;4896:7;4905:96;4944:15;4905:96;;;;;;;;;;;;;;;;;:11;:25;4917:12;:10;:12::i;:::-;4905:25;;;;;;;;;;;;;;;:34;4931:7;4905:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;4873:8;:129::i;:::-;5020:4;5013:11;;4763:263;;;;:::o;3761:161::-;3839:4;3856:42;3866:12;:10;:12::i;:::-;3880:9;3891:6;3856:9;:42::i;:::-;3916:4;3909:11;;3761:161;;;;:::o;3928:137::-;4009:7;4036:11;:18;4048:5;4036:18;;;;;;;;;;;;;;;:27;4055:7;4036:27;;;;;;;;;;;;;;;;4029:34;;3928:137;;;;:::o;820:126:2:-;878:7;905:39;909:1;912;905:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;898:46;;820:126;;;;:::o;262:130::-;320:7;347:43;351:1;354;347:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;340:50;;262:130;;;;:::o;92:109:1:-;145:15;188:10;173:26;;92:109;:::o;11072:405:0:-;11131:7;11140;11149;11158;11167;11188:23;11213:12;11229:20;11241:7;11229:11;:20::i;:::-;11187:62;;;;11260:19;11283:10;:8;:10::i;:::-;11260:33;;11305:15;11322:23;11347:12;11363:39;11375:7;11384:4;11390:11;11363;:39::i;:::-;11304:98;;;;;;11421:7;11430:15;11447:4;11453:15;11470:4;11413:62;;;;;;;;;;;;;;;;11072:405;;;;;;;:::o;83:173:2:-;141:7;161:9;177:1;173;:5;;;;:::i;:::-;161:17;;202:1;197;:6;;189:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;253:1;246:8;;;83:173;;;;:::o;6062:329:0:-;6172:1;6155:19;;:5;:19;;;;6147:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6253:1;6234:21;;:7;:21;;;;6226:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6335:6;6305:11;:18;6317:5;6305:18;;;;;;;;;;;;;;;:27;6324:7;6305:27;;;;;;;;;;;;;;;:36;;;;6373:7;6357:32;;6366:5;6357:32;;;6382:6;6357:32;;;;;;:::i;:::-;;;;;;;;6062:329;;;:::o;6397:1134::-;6512:1;6494:20;;:6;:20;;;;6486:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6596:1;6575:23;;:9;:23;;;;6567:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6666:1;6657:6;:10;6649:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6728:9;:17;6738:6;6728:17;;;;;;;;;;;;;;;;;;;;;;;;;:41;;;;6749:9;:20;6759:9;6749:20;;;;;;;;;;;;;;;;;;;;;;;;;6728:41;6724:107;;;6790:1;6780:6;:11;6771:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;6724:107;6856:7;:5;:7::i;:::-;6846:17;;:6;:17;;;:41;;;;6880:7;:5;:7::i;:::-;6867:20;;:9;:20;;;6846:41;6842:688;;;6890:41;6905:6;6913:9;6924:6;6890:14;:41::i;:::-;6842:688;;;6953:14;:22;6968:6;6953:22;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;;6980:14;:25;6995:9;6980:25;;;;;;;;;;;;;;;;;;;;;;;;;6979:26;6953:52;6949:581;;;7018:48;7040:6;7048:9;7059:6;7018:21;:48::i;:::-;6949:581;;;7089:14;:22;7104:6;7089:22;;;;;;;;;;;;;;;;;;;;;;;;;7088:23;:52;;;;;7115:14;:25;7130:9;7115:25;;;;;;;;;;;;;;;;;;;;;;;;;7088:52;7084:446;;;7153:46;7173:6;7181:9;7192:6;7153:19;:46::i;:::-;7084:446;;;7222:14;:22;7237:6;7222:22;;;;;;;;;;;;;;;;;;;;;;;;;7221:23;:53;;;;;7249:14;:25;7264:9;7249:25;;;;;;;;;;;;;;;;;;;;;;;;;7248:26;7221:53;7217:313;;;7287:44;7305:6;7313:9;7324:6;7287:17;:44::i;:::-;7217:313;;;7353:14;:22;7368:6;7353:22;;;;;;;;;;;;;;;;;;;;;;;;;:51;;;;;7379:14;:25;7394:9;7379:25;;;;;;;;;;;;;;;;;;;;;;;;;7353:51;7349:181;;;7417:48;7439:6;7447:9;7458:6;7417:21;:48::i;:::-;7349:181;;;7484:44;7502:6;7510:9;7521:6;7484:17;:44::i;:::-;7349:181;7217:313;7084:446;6949:581;6842:688;6397:1134;;;:::o;398:184:2:-;484:7;517:1;512;:6;;520:12;504:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;544:9;560:1;556;:5;;;;:::i;:::-;544:17;;579:1;572:8;;;398:184;;;;;:::o;12055:157:0:-;12096:7;12117:15;12134;12153:19;:17;:19::i;:::-;12116:56;;;;12190:20;12202:7;12190;:11;;:20;;;;:::i;:::-;12183:27;;;;12055:157;:::o;952:183:2:-;1038:7;1070:1;1066;:5;1073:12;1058:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1097:9;1113:1;1109;:5;;;;:::i;:::-;1097:17;;1132:1;1125:8;;;952:183;;;;;:::o;11483:232:0:-;11543:7;11552;11572:12;11587:31;11608:9;;11587:16;11599:3;11587:7;:11;;:16;;;;:::i;:::-;:20;;:31;;;;:::i;:::-;11572:46;;11629:23;11655:17;11667:4;11655:7;:11;;:17;;;;:::i;:::-;11629:43;;11691:15;11708:4;11683:30;;;;;;11483:232;;;:::o;11721:328::-;11816:7;11825;11834;11854:15;11872:24;11884:11;11872:7;:11;;:24;;;;:::i;:::-;11854:42;;11907:12;11922:21;11931:11;11922:4;:8;;:21;;;;:::i;:::-;11907:36;;11954:23;11980:17;11992:4;11980:7;:11;;:17;;;;:::i;:::-;11954:43;;12016:7;12025:15;12042:4;12008:39;;;;;;;;;11721:328;;;;;;;:::o;7537:519::-;7633:15;7660:19;7671:7;7660:10;:19::i;:::-;7632:47;;;;;;7708:28;7728:7;7708;:15;7716:6;7708:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;7690:7;:15;7698:6;7690:15;;;;;;;;;;;;;;;:46;;;;7751:14;:22;7766:6;7751:22;;;;;;;;;;;;;;;;;;;;;;;;;7747:87;;;7804:28;7824:7;7804;:15;7812:6;7804:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;7786:7;:15;7794:6;7786:15;;;;;;;;;;;;;;;:46;;;;7747:87;7865:31;7888:7;7865;:18;7873:9;7865:18;;;;;;;;;;;;;;;;:22;;:31;;;;:::i;:::-;7844:7;:18;7852:9;7844:18;;;;;;;;;;;;;;;:52;;;;7911:14;:25;7926:9;7911:25;;;;;;;;;;;;;;;;;;;;;;;;;7907:96;;;7970:31;7993:7;7970;:18;7978:9;7970:18;;;;;;;;;;;;;;;;:22;;:31;;;;:::i;:::-;7949:7;:18;7957:9;7949:18;;;;;;;;;;;;;;;:52;;;;7907:96;8035:9;8018:36;;8027:6;8018:36;;;8046:7;8018:36;;;;;;:::i;:::-;;;;;;;;7621:435;7537:519;;;:::o;9043:503::-;9146:15;9163:23;9188:12;9202:23;9227:12;9243:19;9254:7;9243:10;:19::i;:::-;9145:117;;;;;;;;;;9291:28;9311:7;9291;:15;9299:6;9291:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9273:7;:15;9281:6;9273:15;;;;;;;;;;;;;;;:46;;;;9348:28;9368:7;9348;:15;9356:6;9348:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9330:7;:15;9338:6;9330:15;;;;;;;;;;;;;;;:46;;;;9408:39;9431:15;9408:7;:18;9416:9;9408:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9387:7;:18;9395:9;9387:18;;;;;;;;;;;;;;;:60;;;;9461:23;9473:4;9479;9461:11;:23::i;:::-;9517:9;9500:44;;9509:6;9500:44;;;9528:15;9500:44;;;;;;:::i;:::-;;;;;;;;9134:412;;;;;9043:503;;;:::o;8514:523::-;8615:15;8632:23;8657:12;8671:23;8696:12;8712:19;8723:7;8712:10;:19::i;:::-;8614:117;;;;;;;;;;8760:28;8780:7;8760;:15;8768:6;8760:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8742:7;:15;8750:6;8742:15;;;;;;;;;;;;;;;:46;;;;8820:39;8843:15;8820:7;:18;8828:9;8820:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;8799:7;:18;8807:9;8799:18;;;;;;;;;;;;;;;:60;;;;8891:39;8914:15;8891:7;:18;8899:9;8891:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;8870:7;:18;8878:9;8870:18;;;;;;;;;;;;;;;:60;;;;8952:23;8964:4;8970;8952:11;:23::i;:::-;9008:9;8991:44;;9000:6;8991:44;;;9019:15;8991:44;;;;;;:::i;:::-;;;;;;;;8603:434;;;;;8514:523;;;:::o;8062:446::-;8161:15;8178:23;8203:12;8217:23;8242:12;8258:19;8269:7;8258:10;:19::i;:::-;8160:117;;;;;;;;;;8306:28;8326:7;8306;:15;8314:6;8306:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8288:7;:15;8296:6;8288:15;;;;;;;;;;;;;;;:46;;;;8366:39;8389:15;8366:7;:18;8374:9;8366:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;8345:7;:18;8353:9;8345:18;;;;;;;;;;;;;;;:60;;;;8423:23;8435:4;8441;8423:11;:23::i;:::-;8479:9;8462:44;;8471:6;8462:44;;;8490:15;8462:44;;;;;;:::i;:::-;;;;;;;;8149:359;;;;;8062:446;;;:::o;9552:579::-;9655:15;9672:23;9697:12;9711:23;9736:12;9752:19;9763:7;9752:10;:19::i;:::-;9654:117;;;;;;;;;;9800:28;9820:7;9800;:15;9808:6;9800:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9782:7;:15;9790:6;9782:15;;;;;;;;;;;;;;;:46;;;;9857:28;9877:7;9857;:15;9865:6;9857:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9839:7;:15;9847:6;9839:15;;;;;;;;;;;;;;;:46;;;;9917:39;9940:15;9917:7;:18;9925:9;9917:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9896:7;:18;9904:9;9896:18;;;;;;;;;;;;;;;:60;;;;9988:39;10011:15;9988:7;:18;9996:9;9988:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9967:7;:18;9975:9;9967:18;;;;;;;;;;;;;;;:60;;;;10046:23;10058:4;10064;10046:11;:23::i;:::-;10102:9;10085:44;;10094:6;10085:44;;;10113:15;10085:44;;;;;;:::i;:::-;;;;;;;;9643:488;;;;;9552:579;;;:::o;12218:548::-;12268:7;12277;12297:15;12315:7;;12297:25;;12333:15;2273;12333:25;;12380:9;12375:282;12399:12;:19;;;;12395:1;:23;12375:282;;;12467:7;12440;:24;12448:12;12461:1;12448:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12440:24;;;;;;;;;;;;;;;;:34;:72;;;;12505:7;12478;:24;12486:12;12499:1;12486:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12478:24;;;;;;;;;;;;;;;;:34;12440:72;12436:103;;;12522:7;;2273:15;12514:25;;;;;;;;;12436:103;12560:37;12572:7;:24;12580:12;12593:1;12580:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12572:24;;;;;;;;;;;;;;;;12560:7;:11;;:37;;;;:::i;:::-;12550:47;;12618:37;12630:7;:24;12638:12;12651:1;12638:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12630:24;;;;;;;;;;;;;;;;12618:7;:11;;:37;;;;:::i;:::-;12608:47;;12420:3;;;;;:::i;:::-;;;;12375:282;;;;12681:20;2273:15;12681:7;;:11;;:20;;;;:::i;:::-;12671:7;:30;12667:61;;;12711:7;;2273:15;12703:25;;;;;;;;12667:61;12747:7;12756;12739:25;;;;;;12218:548;;;:::o;588:226:2:-;646:7;675:1;670;:6;666:33;;;696:1;689:8;;;;666:33;709:9;725:1;721;:5;;;;:::i;:::-;709:17;;754:1;749;745;:5;;;;:::i;:::-;:10;737:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;811:1;804:8;;;588:226;;;;;:::o;10925:141:0:-;11003:17;11015:4;11003:7;;:11;;:17;;;;:::i;:::-;10993:7;:27;;;;11044:20;11059:4;11044:10;;:14;;:20;;;;:::i;:::-;11031:10;:33;;;;10925:141;;:::o;88:117:3:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:307::-;1373:1;1383:113;1397:6;1394:1;1391:13;1383:113;;;1482:1;1477:3;1473:11;1467:18;1463:1;1458:3;1454:11;1447:39;1419:2;1416:1;1412:10;1407:15;;1383:113;;;1514:6;1511:1;1508:13;1505:101;;;1594:1;1585:6;1580:3;1576:16;1569:27;1505:101;1354:258;1305:307;;;:::o;1618:102::-;1659:6;1710:2;1706:7;1701:2;1694:5;1690:14;1686:28;1676:38;;1618:102;;;:::o;1726:364::-;1814:3;1842:39;1875:5;1842:39;:::i;:::-;1897:71;1961:6;1956:3;1897:71;:::i;:::-;1890:78;;1977:52;2022:6;2017:3;2010:4;2003:5;1999:16;1977:52;:::i;:::-;2054:29;2076:6;2054:29;:::i;:::-;2049:3;2045:39;2038:46;;1818:272;1726:364;;;;:::o;2096:313::-;2209:4;2247:2;2236:9;2232:18;2224:26;;2296:9;2290:4;2286:20;2282:1;2271:9;2267:17;2260:47;2324:78;2397:4;2388:6;2324:78;:::i;:::-;2316:86;;2096:313;;;;:::o;2415:126::-;2452:7;2492:42;2485:5;2481:54;2470:65;;2415:126;;;:::o;2547:96::-;2584:7;2613:24;2631:5;2613:24;:::i;:::-;2602:35;;2547:96;;;:::o;2649:122::-;2722:24;2740:5;2722:24;:::i;:::-;2715:5;2712:35;2702:63;;2761:1;2758;2751:12;2702:63;2649:122;:::o;2777:139::-;2823:5;2861:6;2848:20;2839:29;;2877:33;2904:5;2877:33;:::i;:::-;2777:139;;;;:::o;2922:474::-;2990:6;2998;3047:2;3035:9;3026:7;3022:23;3018:32;3015:119;;;3053:79;;:::i;:::-;3015:119;3173:1;3198:53;3243:7;3234:6;3223:9;3219:22;3198:53;:::i;:::-;3188:63;;3144:117;3300:2;3326:53;3371:7;3362:6;3351:9;3347:22;3326:53;:::i;:::-;3316:63;;3271:118;2922:474;;;;;:::o;3402:90::-;3436:7;3479:5;3472:13;3465:21;3454:32;;3402:90;;;:::o;3498:109::-;3579:21;3594:5;3579:21;:::i;:::-;3574:3;3567:34;3498:109;;:::o;3613:210::-;3700:4;3738:2;3727:9;3723:18;3715:26;;3751:65;3813:1;3802:9;3798:17;3789:6;3751:65;:::i;:::-;3613:210;;;;:::o;3829:118::-;3916:24;3934:5;3916:24;:::i;:::-;3911:3;3904:37;3829:118;;:::o;3953:222::-;4046:4;4084:2;4073:9;4069:18;4061:26;;4097:71;4165:1;4154:9;4150:17;4141:6;4097:71;:::i;:::-;3953:222;;;;:::o;4181:619::-;4258:6;4266;4274;4323:2;4311:9;4302:7;4298:23;4294:32;4291:119;;;4329:79;;:::i;:::-;4291:119;4449:1;4474:53;4519:7;4510:6;4499:9;4495:22;4474:53;:::i;:::-;4464:63;;4420:117;4576:2;4602:53;4647:7;4638:6;4627:9;4623:22;4602:53;:::i;:::-;4592:63;;4547:118;4704:2;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4675:118;4181:619;;;;;:::o;4806:86::-;4841:7;4881:4;4874:5;4870:16;4859:27;;4806:86;;;:::o;4898:112::-;4981:22;4997:5;4981:22;:::i;:::-;4976:3;4969:35;4898:112;;:::o;5016:214::-;5105:4;5143:2;5132:9;5128:18;5120:26;;5156:67;5220:1;5209:9;5205:17;5196:6;5156:67;:::i;:::-;5016:214;;;;:::o;5236:116::-;5306:21;5321:5;5306:21;:::i;:::-;5299:5;5296:32;5286:60;;5342:1;5339;5332:12;5286:60;5236:116;:::o;5358:133::-;5401:5;5439:6;5426:20;5417:29;;5455:30;5479:5;5455:30;:::i;:::-;5358:133;;;;:::o;5497:468::-;5562:6;5570;5619:2;5607:9;5598:7;5594:23;5590:32;5587:119;;;5625:79;;:::i;:::-;5587:119;5745:1;5770:53;5815:7;5806:6;5795:9;5791:22;5770:53;:::i;:::-;5760:63;;5716:117;5872:2;5898:50;5940:7;5931:6;5920:9;5916:22;5898:50;:::i;:::-;5888:60;;5843:115;5497:468;;;;;:::o;5971:329::-;6030:6;6079:2;6067:9;6058:7;6054:23;6050:32;6047:119;;;6085:79;;:::i;:::-;6047:119;6205:1;6230:53;6275:7;6266:6;6255:9;6251:22;6230:53;:::i;:::-;6220:63;;6176:117;5971:329;;;;:::o;6306:118::-;6393:24;6411:5;6393:24;:::i;:::-;6388:3;6381:37;6306:118;;:::o;6430:222::-;6523:4;6561:2;6550:9;6546:18;6538:26;;6574:71;6642:1;6631:9;6627:17;6618:6;6574:71;:::i;:::-;6430:222;;;;:::o;6658:474::-;6726:6;6734;6783:2;6771:9;6762:7;6758:23;6754:32;6751:119;;;6789:79;;:::i;:::-;6751:119;6909:1;6934:53;6979:7;6970:6;6959:9;6955:22;6934:53;:::i;:::-;6924:63;;6880:117;7036:2;7062:53;7107:7;7098:6;7087:9;7083:22;7062:53;:::i;:::-;7052:63;;7007:118;6658:474;;;;;:::o;7138:231::-;7278:34;7274:1;7266:6;7262:14;7255:58;7347:14;7342:2;7334:6;7330:15;7323:39;7138:231;:::o;7375:366::-;7517:3;7538:67;7602:2;7597:3;7538:67;:::i;:::-;7531:74;;7614:93;7703:3;7614:93;:::i;:::-;7732:2;7727:3;7723:12;7716:19;;7375:366;;;:::o;7747:419::-;7913:4;7951:2;7940:9;7936:18;7928:26;;8000:9;7994:4;7990:20;7986:1;7975:9;7971:17;7964:47;8028:131;8154:4;8028:131;:::i;:::-;8020:139;;7747:419;;;:::o;8172:180::-;8220:77;8217:1;8210:88;8317:4;8314:1;8307:15;8341:4;8338:1;8331:15;8358:320;8402:6;8439:1;8433:4;8429:12;8419:22;;8486:1;8480:4;8476:12;8507:18;8497:81;;8563:4;8555:6;8551:17;8541:27;;8497:81;8625:2;8617:6;8614:14;8594:18;8591:38;8588:84;;;8644:18;;:::i;:::-;8588:84;8409:269;8358:320;;;:::o;8684:229::-;8824:34;8820:1;8812:6;8808:14;8801:58;8893:12;8888:2;8880:6;8876:15;8869:37;8684:229;:::o;8919:366::-;9061:3;9082:67;9146:2;9141:3;9082:67;:::i;:::-;9075:74;;9158:93;9247:3;9158:93;:::i;:::-;9276:2;9271:3;9267:12;9260:19;;8919:366;;;:::o;9291:419::-;9457:4;9495:2;9484:9;9480:18;9472:26;;9544:9;9538:4;9534:20;9530:1;9519:9;9515:17;9508:47;9572:131;9698:4;9572:131;:::i;:::-;9564:139;;9291:419;;;:::o;9716:181::-;9856:33;9852:1;9844:6;9840:14;9833:57;9716:181;:::o;9903:366::-;10045:3;10066:67;10130:2;10125:3;10066:67;:::i;:::-;10059:74;;10142:93;10231:3;10142:93;:::i;:::-;10260:2;10255:3;10251:12;10244:19;;9903:366;;;:::o;10275:419::-;10441:4;10479:2;10468:9;10464:18;10456:26;;10528:9;10522:4;10518:20;10514:1;10503:9;10499:17;10492:47;10556:131;10682:4;10556:131;:::i;:::-;10548:139;;10275:419;;;:::o;10700:182::-;10840:34;10836:1;10828:6;10824:14;10817:58;10700:182;:::o;10888:366::-;11030:3;11051:67;11115:2;11110:3;11051:67;:::i;:::-;11044:74;;11127:93;11216:3;11127:93;:::i;:::-;11245:2;11240:3;11236:12;11229:19;;10888:366;;;:::o;11260:419::-;11426:4;11464:2;11453:9;11449:18;11441:26;;11513:9;11507:4;11503:20;11499:1;11488:9;11484:17;11477:47;11541:131;11667:4;11541:131;:::i;:::-;11533:139;;11260:419;;;:::o;11685:310::-;11825:34;11821:1;11813:6;11809:14;11802:58;11894:34;11889:2;11881:6;11877:15;11870:59;11963:24;11958:2;11950:6;11946:15;11939:49;11685:310;:::o;12001:366::-;12143:3;12164:67;12228:2;12223:3;12164:67;:::i;:::-;12157:74;;12240:93;12329:3;12240:93;:::i;:::-;12358:2;12353:3;12349:12;12342:19;;12001:366;;;:::o;12373:419::-;12539:4;12577:2;12566:9;12562:18;12554:26;;12626:9;12620:4;12616:20;12612:1;12601:9;12597:17;12590:47;12654:131;12780:4;12654:131;:::i;:::-;12646:139;;12373:419;;;:::o;12798:180::-;12846:77;12843:1;12836:88;12943:4;12940:1;12933:15;12967:4;12964:1;12957:15;12984:305;13024:3;13043:20;13061:1;13043:20;:::i;:::-;13038:25;;13077:20;13095:1;13077:20;:::i;:::-;13072:25;;13231:1;13163:66;13159:74;13156:1;13153:81;13150:107;;;13237:18;;:::i;:::-;13150:107;13281:1;13278;13274:9;13267:16;;12984:305;;;;:::o;13295:177::-;13435:29;13431:1;13423:6;13419:14;13412:53;13295:177;:::o;13478:366::-;13620:3;13641:67;13705:2;13700:3;13641:67;:::i;:::-;13634:74;;13717:93;13806:3;13717:93;:::i;:::-;13835:2;13830:3;13826:12;13819:19;;13478:366;;;:::o;13850:419::-;14016:4;14054:2;14043:9;14039:18;14031:26;;14103:9;14097:4;14093:20;14089:1;14078:9;14074:17;14067:47;14131:131;14257:4;14131:131;:::i;:::-;14123:139;;13850:419;;;:::o;14275:223::-;14415:34;14411:1;14403:6;14399:14;14392:58;14484:6;14479:2;14471:6;14467:15;14460:31;14275:223;:::o;14504:366::-;14646:3;14667:67;14731:2;14726:3;14667:67;:::i;:::-;14660:74;;14743:93;14832:3;14743:93;:::i;:::-;14861:2;14856:3;14852:12;14845:19;;14504:366;;;:::o;14876:419::-;15042:4;15080:2;15069:9;15065:18;15057:26;;15129:9;15123:4;15119:20;15115:1;15104:9;15100:17;15093:47;15157:131;15283:4;15157:131;:::i;:::-;15149:139;;14876:419;;;:::o;15301:221::-;15441:34;15437:1;15429:6;15425:14;15418:58;15510:4;15505:2;15497:6;15493:15;15486:29;15301:221;:::o;15528:366::-;15670:3;15691:67;15755:2;15750:3;15691:67;:::i;:::-;15684:74;;15767:93;15856:3;15767:93;:::i;:::-;15885:2;15880:3;15876:12;15869:19;;15528:366;;;:::o;15900:419::-;16066:4;16104:2;16093:9;16089:18;16081:26;;16153:9;16147:4;16143:20;16139:1;16128:9;16124:17;16117:47;16181:131;16307:4;16181:131;:::i;:::-;16173:139;;15900:419;;;:::o;16325:224::-;16465:34;16461:1;16453:6;16449:14;16442:58;16534:7;16529:2;16521:6;16517:15;16510:32;16325:224;:::o;16555:366::-;16697:3;16718:67;16782:2;16777:3;16718:67;:::i;:::-;16711:74;;16794:93;16883:3;16794:93;:::i;:::-;16912:2;16907:3;16903:12;16896:19;;16555:366;;;:::o;16927:419::-;17093:4;17131:2;17120:9;17116:18;17108:26;;17180:9;17174:4;17170:20;17166:1;17155:9;17151:17;17144:47;17208:131;17334:4;17208:131;:::i;:::-;17200:139;;16927:419;;;:::o;17352:222::-;17492:34;17488:1;17480:6;17476:14;17469:58;17561:5;17556:2;17548:6;17544:15;17537:30;17352:222;:::o;17580:366::-;17722:3;17743:67;17807:2;17802:3;17743:67;:::i;:::-;17736:74;;17819:93;17908:3;17819:93;:::i;:::-;17937:2;17932:3;17928:12;17921:19;;17580:366;;;:::o;17952:419::-;18118:4;18156:2;18145:9;18141:18;18133:26;;18205:9;18199:4;18195:20;18191:1;18180:9;18176:17;18169:47;18233:131;18359:4;18233:131;:::i;:::-;18225:139;;17952:419;;;:::o;18377:228::-;18517:34;18513:1;18505:6;18501:14;18494:58;18586:11;18581:2;18573:6;18569:15;18562:36;18377:228;:::o;18611:366::-;18753:3;18774:67;18838:2;18833:3;18774:67;:::i;:::-;18767:74;;18850:93;18939:3;18850:93;:::i;:::-;18968:2;18963:3;18959:12;18952:19;;18611:366;;;:::o;18983:419::-;19149:4;19187:2;19176:9;19172:18;19164:26;;19236:9;19230:4;19226:20;19222:1;19211:9;19207:17;19200:47;19264:131;19390:4;19264:131;:::i;:::-;19256:139;;18983:419;;;:::o;19408:222::-;19548:34;19544:1;19536:6;19532:14;19525:58;19617:5;19612:2;19604:6;19600:15;19593:30;19408:222;:::o;19636:366::-;19778:3;19799:67;19863:2;19858:3;19799:67;:::i;:::-;19792:74;;19875:93;19964:3;19875:93;:::i;:::-;19993:2;19988:3;19984:12;19977:19;;19636:366;;;:::o;20008:419::-;20174:4;20212:2;20201:9;20197:18;20189:26;;20261:9;20255:4;20251:20;20247:1;20236:9;20232:17;20225:47;20289:131;20415:4;20289:131;:::i;:::-;20281:139;;20008:419;;;:::o;20433:191::-;20473:4;20493:20;20511:1;20493:20;:::i;:::-;20488:25;;20527:20;20545:1;20527:20;:::i;:::-;20522:25;;20566:1;20563;20560:8;20557:34;;;20571:18;;:::i;:::-;20557:34;20616:1;20613;20609:9;20601:17;;20433:191;;;;:::o;20630:180::-;20678:77;20675:1;20668:88;20775:4;20772:1;20765:15;20799:4;20796:1;20789:15;20816:185;20856:1;20873:20;20891:1;20873:20;:::i;:::-;20868:25;;20907:20;20925:1;20907:20;:::i;:::-;20902:25;;20946:1;20936:35;;20951:18;;:::i;:::-;20936:35;20993:1;20990;20986:9;20981:14;;20816:185;;;;:::o;21007:180::-;21055:77;21052:1;21045:88;21152:4;21149:1;21142:15;21176:4;21173:1;21166:15;21193:233;21232:3;21255:24;21273:5;21255:24;:::i;:::-;21246:33;;21301:66;21294:5;21291:77;21288:103;;;21371:18;;:::i;:::-;21288:103;21418:1;21411:5;21407:13;21400:20;;21193:233;;;:::o;21432:348::-;21472:7;21495:20;21513:1;21495:20;:::i;:::-;21490:25;;21529:20;21547:1;21529:20;:::i;:::-;21524:25;;21717:1;21649:66;21645:74;21642:1;21639:81;21634:1;21627:9;21620:17;21616:105;21613:131;;;21724:18;;:::i;:::-;21613:131;21772:1;21769;21765:9;21754:20;;21432:348;;;;:::o;21786:220::-;21926:34;21922:1;21914:6;21910:14;21903:58;21995:3;21990:2;21982:6;21978:15;21971:28;21786:220;:::o;22012:366::-;22154:3;22175:67;22239:2;22234:3;22175:67;:::i;:::-;22168:74;;22251:93;22340:3;22251:93;:::i;:::-;22369:2;22364:3;22360:12;22353:19;;22012:366;;;:::o;22384:419::-;22550:4;22588:2;22577:9;22573:18;22565:26;;22637:9;22631:4;22627:20;22623:1;22612:9;22608:17;22601:47;22665:131;22791:4;22665:131;:::i;:::-;22657:139;;22384:419;;;:::o

Swarm Source

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