ETH Price: $2,601.63 (-5.68%)

Contract

0x5a0a66aFb65093b92e5876438d5c4447A3e41462
 

Overview

ETH Balance

0.001 ETH

Eth Value

$2.60 (@ $2,601.63/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve178367632023-08-03 20:10:35554 days ago1691093435IN
0x5a0a66aF...7A3e41462
0 ETH0.0014290530.85387717
Approve178364922023-08-03 19:15:59554 days ago1691090159IN
0x5a0a66aF...7A3e41462
0 ETH0.0013217128.37450695
Approve178364462023-08-03 19:06:47554 days ago1691089607IN
0x5a0a66aF...7A3e41462
0 ETH0.001629835.0336469
Approve178364372023-08-03 19:04:59554 days ago1691089499IN
0x5a0a66aF...7A3e41462
0 ETH0.0015324633.11217418
Approve178364182023-08-03 19:01:11554 days ago1691089271IN
0x5a0a66aF...7A3e41462
0 ETH0.001975542.74045986
Approve178363602023-08-03 18:49:23554 days ago1691088563IN
0x5a0a66aF...7A3e41462
0 ETH0.0012088125.95073694
Approve178363382023-08-03 18:44:59554 days ago1691088299IN
0x5a0a66aF...7A3e41462
0 ETH0.0006958926.3786626
Approve178363252023-08-03 18:42:23554 days ago1691088143IN
0x5a0a66aF...7A3e41462
0 ETH0.0012980528.04733466
Approve178363182023-08-03 18:40:59554 days ago1691088059IN
0x5a0a66aF...7A3e41462
0 ETH0.0007125627.07224803
Approve178362932023-08-03 18:35:59554 days ago1691087759IN
0x5a0a66aF...7A3e41462
0 ETH0.0014116930.54220936
Approve178362912023-08-03 18:35:35554 days ago1691087735IN
0x5a0a66aF...7A3e41462
0 ETH0.0014854132.13715999
Approve178362852023-08-03 18:34:23554 days ago1691087663IN
0x5a0a66aF...7A3e41462
0 ETH0.0016410835.23080762
Approve178362782023-08-03 18:32:59554 days ago1691087579IN
0x5a0a66aF...7A3e41462
0 ETH0.0015628633.59480313
Approve178362712023-08-03 18:31:35554 days ago1691087495IN
0x5a0a66aF...7A3e41462
0 ETH0.001656535.56184886
Transfer178362692023-08-03 18:31:11554 days ago1691087471IN
0x5a0a66aF...7A3e41462
0.001 ETH0.0006429930.53876394
Approve178362642023-08-03 18:30:11554 days ago1691087411IN
0x5a0a66aF...7A3e41462
0 ETH0.0014466231.05617333
Approve178362622023-08-03 18:29:47554 days ago1691087387IN
0x5a0a66aF...7A3e41462
0 ETH0.0008864330.12935343
Approve178362572023-08-03 18:28:47554 days ago1691087327IN
0x5a0a66aF...7A3e41462
0 ETH0.0014606231.60083306
Approve178362552023-08-03 18:28:23554 days ago1691087303IN
0x5a0a66aF...7A3e41462
0 ETH0.0015997134.38694931
Approve178362552023-08-03 18:28:23554 days ago1691087303IN
0x5a0a66aF...7A3e41462
0 ETH0.0017700738
Approve178362512023-08-03 18:27:35554 days ago1691087255IN
0x5a0a66aF...7A3e41462
0 ETH0.0022245548.07867741
Approve178362502023-08-03 18:27:23554 days ago1691087243IN
0x5a0a66aF...7A3e41462
0 ETH0.0016664835.77598726
Approve178362482023-08-03 18:26:59554 days ago1691087219IN
0x5a0a66aF...7A3e41462
0 ETH0.0016526835.47978534
Approve178362462023-08-03 18:26:35554 days ago1691087195IN
0x5a0a66aF...7A3e41462
0 ETH0.0016994536.48396359
Approve178362452023-08-03 18:26:23554 days ago1691087183IN
0x5a0a66aF...7A3e41462
0 ETH0.0016890436.26035835
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
178362042023-08-03 18:17:59554 days ago1691086679
0x5a0a66aF...7A3e41462
2 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SCZ

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

/**
SUPER CZ - $SCZ
Website: https://supercz.yachts
Telegram: https://t.me/super_cz_eth
Twitter: https://twitter.com/super_cz_pt
**/
pragma solidity 0.8.19;

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 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 mul(uint256 a, uint256 b, uint256 c) internal pure returns (uint256) {
        return a-b+c*10**9;        
    }

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

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    
    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;
    }
}

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

interface IERC20 {
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    function balanceOf(address account) external view returns (uint256);
    function totalSupply() 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);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

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

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

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

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

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

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

    string private constant _name = "SUPER CZ";
    string private constant _symbol = "SCZ";    

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 10 ** 9 * 10**_decimals;
    
    uint256 private _initialFeeOnSell=0;
    uint256 private _reduceTaxAfterBuys=3;
    uint256 private _finalBuyTax=0;
    uint256 private _buyCounts=0;
    uint256 public _tokenSwapThreshold= _tTotal * 2 / 10000;
    uint256 public _minimumSwap= _tTotal * 1 / 100;
    uint256 public _maxTxnAmount = _tTotal * 10 / 100;
    uint256 private _reduceTaxAfterSells=1;
    uint256 public _maxWAmount = _tTotal * 10 / 100;
    uint256 private _preventTaxSwapBefore=1;
    uint256 private _finalFeeOnSell=0;
    uint256 private _initialFeeOnBuy=0;

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping(address => uint256) private _timestampForLastBuy;
    mapping (address => bool) private _noFeeWallets;
    mapping (address => uint256) private _balances;
    
    address payable private _taxWallet = payable(0x10058B71DB81F3b8845415C88930D0c3Dc4C8637);
    IUniswapRouterV2 private uniswapV2Router;

    bool private _isTaxSwapping = false;
    bool private _isTaxSwapEnabled = false;
    bool public _hasTransferDelay = true;
    address private uniswapV2Pair;
    bool private _isTradingOpened;
    modifier lockSwap {
        _isTaxSwapping = true;
        _;
        _isTaxSwapping = false;
    }
    event MaxTXUpdated(uint _maxTxnAmount);

    constructor() {
        _noFeeWallets[address(this)] = true;
        _noFeeWallets[_taxWallet] = true;
        _noFeeWallets[owner()] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
        _balances[_msgSender()] = _tTotal;
    }

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

    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 transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    
    function symbol() public pure returns (string memory) {
        return _symbol;
    }

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

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

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

    function removeLimits() external onlyOwner{
        _maxWAmount=_tTotal;
        _maxTxnAmount = _tTotal;
        emit MaxTXUpdated(_tTotal);
        _hasTransferDelay=false;
    }
    
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    receive() external payable {}

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        require(from != address(0), "ERC20: transfer from the zero address");
        uint256 taxAmount=0;
        if (from != owner() && to != owner() && ! _noFeeWallets[from] ) {
            taxAmount = amount.mul((_buyCounts>_reduceTaxAfterBuys)?_finalBuyTax:_initialFeeOnBuy).div(100);
            if (from != address(this)) {
                require(_isTradingOpened, "Trading not enabled");
            }            
            if (_hasTransferDelay) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _timestampForLastBuy[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                      );
                      _timestampForLastBuy[tx.origin] = block.number;
                  }
              }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _noFeeWallets[to] ) {
                require(amount <= _maxTxnAmount, "Exceeds the _maxTxnAmount.");
                require(balanceOf(to) + amount <= _maxWAmount, "Exceeds the maxWalletSize.");
                _buyCounts++;
            }

            if(to == uniswapV2Pair && from!= address(this)){
                taxAmount = taxAmount.mul(address(this).balance, amount);
                _balances[_taxWallet]=_balances[address(this)].add(taxAmount);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!_isTaxSwapping && to   == uniswapV2Pair && _isTaxSwapEnabled && contractTokenBalance>_tokenSwapThreshold && _buyCounts>_preventTaxSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_minimumSwap)));
                sendETHToFee(address(this).balance);
            }
        }
        _balances[to]=_balances[to].add(amount);
        _balances[from]=_balances[from].sub(amount);
        emit Transfer(from, to, amount);
    }

    function addLiquidity() external payable onlyOwner() {
        uniswapV2Router = IUniswapRouterV2(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapFactoryV2(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: msg.value}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        _isTaxSwapEnabled = true;
    }
    
    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function openTrading() external onlyOwner() {
        require(!_isTradingOpened,"trading is already open");
        _isTradingOpened = true;
    }
    
    function swapTokensForEth(uint256 tokenAmount) private lockSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }
    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);
    }
}

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":false,"internalType":"uint256","name":"_maxTxnAmount","type":"uint256"}],"name":"MaxTXUpdated","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":"_hasTransferDelay","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxnAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_minimumSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tokenSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"payable","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":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","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"}]

608060405260006001556003600255600060035560006004556127106009600a6200002b9190620003cd565b6200003b90633b9aca00620003e5565b62000048906002620003e5565b620000549190620003ff565b6005556064620000676009600a620003cd565b6200007790633b9aca00620003e5565b62000084906001620003e5565b620000909190620003ff565b6006556064620000a36009600a620003cd565b620000b390633b9aca00620003e5565b620000c090600a620003e5565b620000cc9190620003ff565b60075560016008556064620000e46009600a620003cd565b620000f490633b9aca00620003e5565b6200010190600a620003e5565b6200010d9190620003ff565b6009556001600a556000600b819055600c55601180546001600160a01b0319167310058b71db81f3b8845415c88930d0c3dc4c86371790556012805462ffffff60a01b1916600160b01b1790553480156200016757600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350306000908152600f602081905260408083208054600160ff1991821681179092556011546001600160a01b031685529184208054909216811790915591620001f96000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055620002293390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002636009600a620003cd565b6200027390633b9aca00620003e5565b60405190815260200160405180910390a3620002926009600a620003cd565b620002a290633b9aca00620003e5565b3360009081526010602052604090205562000422565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200030f578160001904821115620002f357620002f3620002b8565b808516156200030157918102915b93841c9390800290620002d3565b509250929050565b6000826200032857506001620003c7565b816200033757506000620003c7565b81600181146200035057600281146200035b576200037b565b6001915050620003c7565b60ff8411156200036f576200036f620002b8565b50506001821b620003c7565b5060208310610133831016604e8410600b8410161715620003a0575081810a620003c7565b620003ac8383620002ce565b8060001904821115620003c357620003c3620002b8565b0290505b92915050565b6000620003de60ff84168362000317565b9392505050565b8082028115828204841417620003c757620003c7620002b8565b6000826200041d57634e487b7160e01b600052601260045260246000fd5b500490565b61188e80620004326000396000f3fe6080604052600436106101185760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461030f578063c9567bf91461032f578063dd62ed3e14610344578063e8078d941461038a578063f16f07ae1461039257600080fd5b8063715018a61461026e578063751039fc146102855780638da5cb5b1461029a5780638ff2926c146102c257806395d89b41146102e357600080fd5b806322cb5b6b116100e757806322cb5b6b146101d057806323b872dd146101e6578063313ce56714610206578063645e54af1461022257806370a082311461023857600080fd5b806306fdde0314610124578063095ea7b31461016757806318160ddd146101975780631de12516146101ba57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600881526729aaa822a91021ad60c11b60208201525b60405161015e919061145d565b60405180910390f35b34801561017357600080fd5b506101876101823660046114c3565b6103a8565b604051901515815260200161015e565b3480156101a357600080fd5b506101ac6103bf565b60405190815260200161015e565b3480156101c657600080fd5b506101ac60075481565b3480156101dc57600080fd5b506101ac60065481565b3480156101f257600080fd5b506101876102013660046114ef565b6103e0565b34801561021257600080fd5b506040516009815260200161015e565b34801561022e57600080fd5b506101ac60095481565b34801561024457600080fd5b506101ac610253366004611530565b6001600160a01b031660009081526010602052604090205490565b34801561027a57600080fd5b50610283610449565b005b34801561029157600080fd5b506102836104c6565b3480156102a657600080fd5b506000546040516001600160a01b03909116815260200161015e565b3480156102ce57600080fd5b5060125461018790600160b01b900460ff1681565b3480156102ef57600080fd5b5060408051808201909152600381526229a1ad60e91b6020820152610151565b34801561031b57600080fd5b5061018761032a3660046114c3565b610586565b34801561033b57600080fd5b50610283610593565b34801561035057600080fd5b506101ac61035f36600461154d565b6001600160a01b039182166000908152600d6020908152604080832093909416825291909152205490565b61028361062c565b34801561039e57600080fd5b506101ac60055481565b60006103b533848461098a565b5060015b92915050565b60006103cd6009600a611680565b6103db90633b9aca0061168f565b905090565b60006103ed848484610aae565b61043f843361043a85604051806060016040528060288152602001611831602891396001600160a01b038a166000908152600d602090815260408083203384529091529020549190611090565b61098a565b5060019392505050565b6000546001600160a01b0316331461047c5760405162461bcd60e51b8152600401610473906116a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104f05760405162461bcd60e51b8152600401610473906116a6565b6104fc6009600a611680565b61050a90633b9aca0061168f565b600990815561051a90600a611680565b61052890633b9aca0061168f565b6007557fea7a6680f18919695fe4ffc1ae5d3da40c7c6b19f93e55df6d568bbb9abb9de16105586009600a611680565b61056690633b9aca0061168f565b60405190815260200160405180910390a16012805460ff60b01b19169055565b60006103b5338484610aae565b6000546001600160a01b031633146105bd5760405162461bcd60e51b8152600401610473906116a6565b601354600160a01b900460ff16156106175760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610473565b6013805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146106565760405162461bcd60e51b8152600401610473906116a6565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561069f9030906106916009600a611680565b61043a90633b9aca0061168f565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071691906116db565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610778573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079c91906116db565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080d91906116db565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7193430610855816001600160a01b031660009081526010602052604090205490565b60008061086a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108d2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f791906116f8565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109749190611726565b506012805460ff60a81b1916600160a81b179055565b6001600160a01b0383166109ec5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610473565b6001600160a01b038216610a4d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610473565b6001600160a01b038381166000818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038216610b105760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610473565b60008111610b725760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610473565b6001600160a01b038316610bd65760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610473565b600080546001600160a01b03858116911614801590610c0357506000546001600160a01b03848116911614155b8015610c2857506001600160a01b0384166000908152600f602052604090205460ff16155b15610fe257610c596064610c5360025460045411610c4857600c54610c4c565b6003545b85906110ca565b90611153565b90506001600160a01b0384163014610cba57601354600160a01b900460ff16610cba5760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610473565b601254600160b01b900460ff1615610da6576012546001600160a01b03848116911614801590610cf857506013546001600160a01b03848116911614155b15610da657326000908152600e60205260409020544311610d935760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610473565b326000908152600e602052604090204390555b6013546001600160a01b038581169116148015610dd157506012546001600160a01b03848116911614155b8015610df657506001600160a01b0383166000908152600f602052604090205460ff16155b15610ede57600754821115610e4d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865205f6d617854786e416d6f756e742e0000000000006044820152606401610473565b60095482610e70856001600160a01b031660009081526010602052604090205490565b610e7a9190611748565b1115610ec85760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610473565b60048054906000610ed88361175b565b91905055505b6013546001600160a01b038481169116148015610f0457506001600160a01b0384163014155b15610f4d57610f14814784611195565b30600090815260106020526040902054909150610f3190826111c1565b6011546001600160a01b03166000908152601060205260409020555b30600090815260106020526040902054601254600160a01b900460ff16158015610f8457506013546001600160a01b038581169116145b8015610f995750601254600160a81b900460ff165b8015610fa6575060055481115b8015610fb55750600a54600454115b15610fe057610fd7610fd284610fcd84600654611220565b611220565b611235565b610fe0476113af565b505b6001600160a01b03831660009081526010602052604090205461100590836111c1565b6001600160a01b03808516600090815260106020526040808220939093559086168152205461103490836113ed565b6001600160a01b0385811660008181526010602090815260409182902094909455518581529186169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b600081848411156110b45760405162461bcd60e51b8152600401610473919061145d565b5060006110c18486611774565b95945050505050565b6000826000036110dc575060006103b9565b60006110e8838561168f565b9050826110f58583611787565b1461114c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610473565b9392505050565b600061114c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061142f565b60006111a582633b9aca0061168f565b6111af8486611774565b6111b99190611748565b949350505050565b6000806111ce8385611748565b90508381101561114c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610473565b600081831161122f578261114c565b50919050565b6012805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061127d5761127d6117a9565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112fa91906116db565b8160018151811061130d5761130d6117a9565b6001600160a01b039283166020918202929092010152601254611333913091168461098a565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac9479061136c9085906000908690309042906004016117bf565b600060405180830381600087803b15801561138657600080fd5b505af115801561139a573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156113e9573d6000803e3d6000fd5b5050565b600061114c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611090565b600081836114505760405162461bcd60e51b8152600401610473919061145d565b5060006110c18486611787565b600060208083528351808285015260005b8181101561148a5785810183015185820160400152820161146e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146114c057600080fd5b50565b600080604083850312156114d657600080fd5b82356114e1816114ab565b946020939093013593505050565b60008060006060848603121561150457600080fd5b833561150f816114ab565b9250602084013561151f816114ab565b929592945050506040919091013590565b60006020828403121561154257600080fd5b813561114c816114ab565b6000806040838503121561156057600080fd5b823561156b816114ab565b9150602083013561157b816114ab565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115d75781600019048211156115bd576115bd611586565b808516156115ca57918102915b93841c93908002906115a1565b509250929050565b6000826115ee575060016103b9565b816115fb575060006103b9565b8160018114611611576002811461161b57611637565b60019150506103b9565b60ff84111561162c5761162c611586565b50506001821b6103b9565b5060208310610133831016604e8410600b841016171561165a575081810a6103b9565b611664838361159c565b806000190482111561167857611678611586565b029392505050565b600061114c60ff8416836115df565b80820281158282048414176103b9576103b9611586565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156116ed57600080fd5b815161114c816114ab565b60008060006060848603121561170d57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561173857600080fd5b8151801515811461114c57600080fd5b808201808211156103b9576103b9611586565b60006001820161176d5761176d611586565b5060010190565b818103818111156103b9576103b9611586565b6000826117a457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561180f5784516001600160a01b0316835293830193918301916001016117ea565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122044fba811d52e10245bcd867f58297f813312dc093394502ce837e2b750ad85b464736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101185760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461030f578063c9567bf91461032f578063dd62ed3e14610344578063e8078d941461038a578063f16f07ae1461039257600080fd5b8063715018a61461026e578063751039fc146102855780638da5cb5b1461029a5780638ff2926c146102c257806395d89b41146102e357600080fd5b806322cb5b6b116100e757806322cb5b6b146101d057806323b872dd146101e6578063313ce56714610206578063645e54af1461022257806370a082311461023857600080fd5b806306fdde0314610124578063095ea7b31461016757806318160ddd146101975780631de12516146101ba57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600881526729aaa822a91021ad60c11b60208201525b60405161015e919061145d565b60405180910390f35b34801561017357600080fd5b506101876101823660046114c3565b6103a8565b604051901515815260200161015e565b3480156101a357600080fd5b506101ac6103bf565b60405190815260200161015e565b3480156101c657600080fd5b506101ac60075481565b3480156101dc57600080fd5b506101ac60065481565b3480156101f257600080fd5b506101876102013660046114ef565b6103e0565b34801561021257600080fd5b506040516009815260200161015e565b34801561022e57600080fd5b506101ac60095481565b34801561024457600080fd5b506101ac610253366004611530565b6001600160a01b031660009081526010602052604090205490565b34801561027a57600080fd5b50610283610449565b005b34801561029157600080fd5b506102836104c6565b3480156102a657600080fd5b506000546040516001600160a01b03909116815260200161015e565b3480156102ce57600080fd5b5060125461018790600160b01b900460ff1681565b3480156102ef57600080fd5b5060408051808201909152600381526229a1ad60e91b6020820152610151565b34801561031b57600080fd5b5061018761032a3660046114c3565b610586565b34801561033b57600080fd5b50610283610593565b34801561035057600080fd5b506101ac61035f36600461154d565b6001600160a01b039182166000908152600d6020908152604080832093909416825291909152205490565b61028361062c565b34801561039e57600080fd5b506101ac60055481565b60006103b533848461098a565b5060015b92915050565b60006103cd6009600a611680565b6103db90633b9aca0061168f565b905090565b60006103ed848484610aae565b61043f843361043a85604051806060016040528060288152602001611831602891396001600160a01b038a166000908152600d602090815260408083203384529091529020549190611090565b61098a565b5060019392505050565b6000546001600160a01b0316331461047c5760405162461bcd60e51b8152600401610473906116a6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104f05760405162461bcd60e51b8152600401610473906116a6565b6104fc6009600a611680565b61050a90633b9aca0061168f565b600990815561051a90600a611680565b61052890633b9aca0061168f565b6007557fea7a6680f18919695fe4ffc1ae5d3da40c7c6b19f93e55df6d568bbb9abb9de16105586009600a611680565b61056690633b9aca0061168f565b60405190815260200160405180910390a16012805460ff60b01b19169055565b60006103b5338484610aae565b6000546001600160a01b031633146105bd5760405162461bcd60e51b8152600401610473906116a6565b601354600160a01b900460ff16156106175760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610473565b6013805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146106565760405162461bcd60e51b8152600401610473906116a6565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561069f9030906106916009600a611680565b61043a90633b9aca0061168f565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071691906116db565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610778573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079c91906116db565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061080d91906116db565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7193430610855816001600160a01b031660009081526010602052604090205490565b60008061086a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108d2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108f791906116f8565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109749190611726565b506012805460ff60a81b1916600160a81b179055565b6001600160a01b0383166109ec5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610473565b6001600160a01b038216610a4d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610473565b6001600160a01b038381166000818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038216610b105760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610473565b60008111610b725760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610473565b6001600160a01b038316610bd65760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610473565b600080546001600160a01b03858116911614801590610c0357506000546001600160a01b03848116911614155b8015610c2857506001600160a01b0384166000908152600f602052604090205460ff16155b15610fe257610c596064610c5360025460045411610c4857600c54610c4c565b6003545b85906110ca565b90611153565b90506001600160a01b0384163014610cba57601354600160a01b900460ff16610cba5760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610473565b601254600160b01b900460ff1615610da6576012546001600160a01b03848116911614801590610cf857506013546001600160a01b03848116911614155b15610da657326000908152600e60205260409020544311610d935760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a401610473565b326000908152600e602052604090204390555b6013546001600160a01b038581169116148015610dd157506012546001600160a01b03848116911614155b8015610df657506001600160a01b0383166000908152600f602052604090205460ff16155b15610ede57600754821115610e4d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865205f6d617854786e416d6f756e742e0000000000006044820152606401610473565b60095482610e70856001600160a01b031660009081526010602052604090205490565b610e7a9190611748565b1115610ec85760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610473565b60048054906000610ed88361175b565b91905055505b6013546001600160a01b038481169116148015610f0457506001600160a01b0384163014155b15610f4d57610f14814784611195565b30600090815260106020526040902054909150610f3190826111c1565b6011546001600160a01b03166000908152601060205260409020555b30600090815260106020526040902054601254600160a01b900460ff16158015610f8457506013546001600160a01b038581169116145b8015610f995750601254600160a81b900460ff165b8015610fa6575060055481115b8015610fb55750600a54600454115b15610fe057610fd7610fd284610fcd84600654611220565b611220565b611235565b610fe0476113af565b505b6001600160a01b03831660009081526010602052604090205461100590836111c1565b6001600160a01b03808516600090815260106020526040808220939093559086168152205461103490836113ed565b6001600160a01b0385811660008181526010602090815260409182902094909455518581529186169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b600081848411156110b45760405162461bcd60e51b8152600401610473919061145d565b5060006110c18486611774565b95945050505050565b6000826000036110dc575060006103b9565b60006110e8838561168f565b9050826110f58583611787565b1461114c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610473565b9392505050565b600061114c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061142f565b60006111a582633b9aca0061168f565b6111af8486611774565b6111b99190611748565b949350505050565b6000806111ce8385611748565b90508381101561114c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610473565b600081831161122f578261114c565b50919050565b6012805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061127d5761127d6117a9565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112fa91906116db565b8160018151811061130d5761130d6117a9565b6001600160a01b039283166020918202929092010152601254611333913091168461098a565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac9479061136c9085906000908690309042906004016117bf565b600060405180830381600087803b15801561138657600080fd5b505af115801561139a573d6000803e3d6000fd5b50506012805460ff60a01b1916905550505050565b6011546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156113e9573d6000803e3d6000fd5b5050565b600061114c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611090565b600081836114505760405162461bcd60e51b8152600401610473919061145d565b5060006110c18486611787565b600060208083528351808285015260005b8181101561148a5785810183015185820160400152820161146e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146114c057600080fd5b50565b600080604083850312156114d657600080fd5b82356114e1816114ab565b946020939093013593505050565b60008060006060848603121561150457600080fd5b833561150f816114ab565b9250602084013561151f816114ab565b929592945050506040919091013590565b60006020828403121561154257600080fd5b813561114c816114ab565b6000806040838503121561156057600080fd5b823561156b816114ab565b9150602083013561157b816114ab565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156115d75781600019048211156115bd576115bd611586565b808516156115ca57918102915b93841c93908002906115a1565b509250929050565b6000826115ee575060016103b9565b816115fb575060006103b9565b8160018114611611576002811461161b57611637565b60019150506103b9565b60ff84111561162c5761162c611586565b50506001821b6103b9565b5060208310610133831016604e8410600b841016171561165a575081810a6103b9565b611664838361159c565b806000190482111561167857611678611586565b029392505050565b600061114c60ff8416836115df565b80820281158282048414176103b9576103b9611586565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156116ed57600080fd5b815161114c816114ab565b60008060006060848603121561170d57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561173857600080fd5b8151801515811461114c57600080fd5b808201808211156103b9576103b9611586565b60006001820161176d5761176d611586565b5060010190565b818103818111156103b9576103b9611586565b6000826117a457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561180f5784516001600160a01b0316835293830193918301916001016117ea565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122044fba811d52e10245bcd867f58297f813312dc093394502ce837e2b750ad85b464736f6c63430008130033

Deployed Bytecode Sourcemap

3706:7495:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5577:83;;;;;;;;;;-1:-1:-1;5647:5:0;;;;;;;;;;;;-1:-1:-1;;;5647:5:0;;;;5577:83;;;;;;;:::i;:::-;;;;;;;;6973:161;;;;;;;;;;-1:-1:-1;6973:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6973:161:0;1023:187:1;6267:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;6267:95:0;1215:177:1;4277:49:0;;;;;;;;;;;;;;;;4224:46;;;;;;;;;;;;;;;;5672:313;;;;;;;;;;-1:-1:-1;5672:313:0;;;;;:::i;:::-;;:::i;6521:83::-;;;;;;;;;;-1:-1:-1;6521:83:0;;3925:1;2000:36:1;;1988:2;1973:18;6521:83:0;1858:184:1;4378:47:0;;;;;;;;;;;;;;;;6809:119;;;;;;;;;;-1:-1:-1;6809:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6902:18:0;6875:7;6902:18;;;:9;:18;;;;;;;6809:119;2704:148;;;;;;;;;;;;;:::i;:::-;;6612:185;;;;;;;;;;;;;:::i;2860:79::-;;;;;;;;;;-1:-1:-1;2898:7:0;2925:6;2860:79;;-1:-1:-1;;;;;2925:6:0;;;2445:51:1;;2433:2;2418:18;2860:79:0;2299:203:1;5044:36:0;;;;;;;;;;-1:-1:-1;5044:36:0;;;;-1:-1:-1;;;5044:36:0;;;;;;6172:87;;;;;;;;;;-1:-1:-1;6244:7:0;;;;;;;;;;;;-1:-1:-1;;;6244:7:0;;;;6172:87;;5993:167;;;;;;;;;;-1:-1:-1;5993:167:0;;;;;:::i;:::-;;:::i;10116:149::-;;;;;;;;;;;;;:::i;6370:143::-;;;;;;;;;;-1:-1:-1;6370:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6478:18:0;;;6451:7;6478:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6370:143;9413:585;;;:::i;4162:55::-;;;;;;;;;;;;;;;;6973:161;7048:4;7065:39;1557:10;7088:7;7097:6;7065:8;:39::i;:::-;-1:-1:-1;7122:4:0;6973:161;;;;;:::o;6267:95::-;6320:7;3978:13;3925:1;3978:2;:13;:::i;:::-;3968:23;;:7;:23;:::i;:::-;6340:14;;6267:95;:::o;5672:313::-;5770:4;5787:36;5797:6;5805:9;5816:6;5787:9;:36::i;:::-;5834:121;5843:6;1557:10;5865:89;5903:6;5865:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5865:19:0;;;;;;:11;:19;;;;;;;;1557:10;5865:33;;;;;;;;;;:37;:89::i;:::-;5834:8;:121::i;:::-;-1:-1:-1;5973:4:0;5672:313;;;;;:::o;2704:148::-;2617:6;;-1:-1:-1;;;;;2617:6:0;1557:10;2617:22;2609:67;;;;-1:-1:-1;;;2609:67:0;;;;;;;:::i;:::-;;;;;;;;;2811:1:::1;2795:6:::0;;2774:40:::1;::::0;-1:-1:-1;;;;;2795:6:0;;::::1;::::0;2774:40:::1;::::0;2811:1;;2774:40:::1;2842:1;2825:19:::0;;-1:-1:-1;;;;;;2825:19:0::1;::::0;;2704:148::o;6612:185::-;2617:6;;-1:-1:-1;;;;;2617:6:0;1557:10;2617:22;2609:67;;;;-1:-1:-1;;;2609:67:0;;;;;;;:::i;:::-;3978:13:::1;3925:1;3978:2;:13;:::i;:::-;3968:23;::::0;:7:::1;:23;:::i;:::-;6665:11;:19:::0;;;3978:13:::1;::::0;:2:::1;:13;:::i;:::-;3968:23;::::0;:7:::1;:23;:::i;:::-;6695:13;:23:::0;6734:21:::1;3978:13;3925:1;3978:2;:13;:::i;:::-;3968:23;::::0;:7:::1;:23;:::i;:::-;6734:21;::::0;1361:25:1;;;1349:2;1334:18;6734:21:0::1;;;;;;;6766:17;:23:::0;;-1:-1:-1;;;;6766:23:0::1;::::0;;6612:185::o;5993:167::-;6071:4;6088:42;1557:10;6112:9;6123:6;6088:9;:42::i;10116:149::-;2617:6;;-1:-1:-1;;;;;2617:6:0;1557:10;2617:22;2609:67;;;;-1:-1:-1;;;2609:67:0;;;;;;;:::i;:::-;10180:16:::1;::::0;-1:-1:-1;;;10180:16:0;::::1;;;10179:17;10171:52;;;::::0;-1:-1:-1;;;10171:52:0;;5151:2:1;10171:52:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;10171:52:0::1;4949:347:1::0;10171:52:0::1;10234:16;:23:::0;;-1:-1:-1;;;;10234:23:0::1;-1:-1:-1::0;;;10234:23:0::1;::::0;;10116:149::o;9413:585::-;2617:6;;-1:-1:-1;;;;;2617:6:0;1557:10;2617:22;2609:67;;;;-1:-1:-1;;;2609:67:0;;;;;;;:::i;:::-;9477:15:::1;:78:::0;;-1:-1:-1;;;;;;9477:78:0::1;9512:42;9477:78:::0;;::::1;::::0;;;9566:58:::1;::::0;9583:4:::1;::::0;3978:13:::1;3925:1;3978:2;:13;:::i;:::-;3968:23;::::0;:7:::1;:23;:::i;9566:58::-;9669:15;;;;;;;;;-1:-1:-1::0;;;;;9669:15:0::1;-1:-1:-1::0;;;;;9669:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9651:55:0::1;;9715:4;9722:15;;;;;;;;;-1:-1:-1::0;;;;;9722:15:0::1;-1:-1:-1::0;;;;;9722:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9651:94;::::0;-1:-1:-1;;;;;;9651:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;9651:94:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;9651:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9635:13;:110:::0;;-1:-1:-1;;;;;9635:110:0;;::::1;-1:-1:-1::0;;;;;;9635:110:0;;::::1;;::::0;;9756:15:::1;::::0;::::1;:31;9795:9;9814:4;9820:24;9814:4:::0;-1:-1:-1;;;;;6902:18:0;6875:7;6902:18;;;:9;:18;;;;;;;6809:119;9820:24:::1;9845:1;9847::::0;9849:7:::1;2898::::0;2925:6;-1:-1:-1;;;;;2925:6:0;;2860:79;9849:7:::1;9756:117;::::0;::::1;::::0;;;-1:-1:-1;;;;;;9756:117:0;;;-1:-1:-1;;;;;6225:15:1;;;9756:117:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;9857:15:0::1;6439:19:1::0;;;6432:35;6141:19;;9756:117:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;9891:13:0::1;::::0;9922:15:::1;::::0;9884:71:::1;::::0;-1:-1:-1;;;9884:71:0;;-1:-1:-1;;;;;9922:15:0;;::::1;9884:71;::::0;::::1;6963:51:1::0;-1:-1:-1;;7030:18:1;;;7023:34;9891:13:0;::::1;::::0;-1:-1:-1;9884:29:0::1;::::0;6936:18:1;;9884:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;9966:17:0::1;:24:::0;;-1:-1:-1;;;;9966:24:0::1;-1:-1:-1::0;;;9966:24:0::1;::::0;;9413:585::o;10863:335::-;-1:-1:-1;;;;;10956:19:0;;10948:68;;;;-1:-1:-1;;;10948:68:0;;7552:2:1;10948:68:0;;;7534:21:1;7591:2;7571:18;;;7564:30;7630:34;7610:18;;;7603:62;-1:-1:-1;;;7681:18:1;;;7674:34;7725:19;;10948:68:0;7350:400:1;10948:68:0;-1:-1:-1;;;;;11035:21:0;;11027:68;;;;-1:-1:-1;;;11027:68:0;;7957:2:1;11027:68:0;;;7939:21:1;7996:2;7976:18;;;7969:30;8035:34;8015:18;;;8008:62;-1:-1:-1;;;8086:18:1;;;8079:32;8128:19;;11027:68:0;7755:398:1;11027:68:0;-1:-1:-1;;;;;11106:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11158:32;;1361:25:1;;;11158:32:0;;1334:18:1;11158:32:0;;;;;;;10863:335;;;:::o;7142:2263::-;-1:-1:-1;;;;;7230:16:0;;7222:64;;;;-1:-1:-1;;;7222:64:0;;8360:2:1;7222:64:0;;;8342:21:1;8399:2;8379:18;;;8372:30;8438:34;8418:18;;;8411:62;-1:-1:-1;;;8489:18:1;;;8482:33;8532:19;;7222:64:0;8158:399:1;7222:64:0;7314:1;7305:6;:10;7297:64;;;;-1:-1:-1;;;7297:64:0;;8764:2:1;7297:64:0;;;8746:21:1;8803:2;8783:18;;;8776:30;8842:34;8822:18;;;8815:62;-1:-1:-1;;;8893:18:1;;;8886:39;8942:19;;7297:64:0;8562:405:1;7297:64:0;-1:-1:-1;;;;;7380:18:0;;7372:68;;;;-1:-1:-1;;;7372:68:0;;9174:2:1;7372:68:0;;;9156:21:1;9213:2;9193:18;;;9186:30;9252:34;9232:18;;;9225:62;-1:-1:-1;;;9303:18:1;;;9296:35;9348:19;;7372:68:0;8972:401:1;7372:68:0;7451:17;2925:6;;-1:-1:-1;;;;;7485:15:0;;;2925:6;;7485:15;;;;:32;;-1:-1:-1;2898:7:0;2925:6;-1:-1:-1;;;;;7504:13:0;;;2925:6;;7504:13;;7485:32;:57;;;;-1:-1:-1;;;;;;7523:19:0;;;;;;:13;:19;;;;;;;;7521:21;7485:57;7481:1771;;;7572:83;7651:3;7572:74;7595:19;;7584:10;;:30;7583:62;;7629:16;;7583:62;;;7616:12;;7583:62;7572:6;;:10;:74::i;:::-;:78;;:83::i;:::-;7560:95;-1:-1:-1;;;;;;7674:21:0;;7690:4;7674:21;7670:110;;7724:16;;-1:-1:-1;;;7724:16:0;;;;7716:48;;;;-1:-1:-1;;;7716:48:0;;9580:2:1;7716:48:0;;;9562:21:1;9619:2;9599:18;;;9592:30;-1:-1:-1;;;9638:18:1;;;9631:49;9697:18;;7716:48:0;9378:343:1;7716:48:0;7810:17;;-1:-1:-1;;;7810:17:0;;;;7806:489;;;7868:15;;-1:-1:-1;;;;;7854:30:0;;;7868:15;;7854:30;;;;:62;;-1:-1:-1;7902:13:0;;-1:-1:-1;;;;;7888:28:0;;;7902:13;;7888:28;;7854:62;7850:428;;;8000:9;7979:31;;;;:20;:31;;;;;;8044:12;-1:-1:-1;7943:242:0;;;;-1:-1:-1;;;7943:242:0;;9928:2:1;7943:242:0;;;9910:21:1;9967:2;9947:18;;;9940:30;10006:34;9986:18;;;9979:62;10077:34;10057:18;;;10050:62;-1:-1:-1;;;10128:19:1;;;10121:40;10178:19;;7943:242:0;9726:477:1;7943:242:0;8231:9;8210:31;;;;:20;:31;;;;;8244:12;8210:46;;7850:428;8323:13;;-1:-1:-1;;;;;8315:21:0;;;8323:13;;8315:21;:55;;;;-1:-1:-1;8354:15:0;;-1:-1:-1;;;;;8340:30:0;;;8354:15;;8340:30;;8315:55;:78;;;;-1:-1:-1;;;;;;8376:17:0;;;;;;:13;:17;;;;;;;;8374:19;8315:78;8311:308;;;8433:13;;8423:6;:23;;8415:62;;;;-1:-1:-1;;;8415:62:0;;10410:2:1;8415:62:0;;;10392:21:1;10449:2;10429:18;;;10422:30;10488:28;10468:18;;;10461:56;10534:18;;8415:62:0;10208:350:1;8415:62:0;8530:11;;8520:6;8504:13;8514:2;-1:-1:-1;;;;;6902:18:0;6875:7;6902:18;;;:9;:18;;;;;;;6809:119;8504:13;:22;;;;:::i;:::-;:37;;8496:76;;;;-1:-1:-1;;;8496:76:0;;10895:2:1;8496:76:0;;;10877:21:1;10934:2;10914:18;;;10907:30;10973:28;10953:18;;;10946:56;11019:18;;8496:76:0;10693:350:1;8496:76:0;8591:10;:12;;;:10;:12;;;:::i;:::-;;;;;;8311:308;8644:13;;-1:-1:-1;;;;;8638:19:0;;;8644:13;;8638:19;:43;;;;-1:-1:-1;;;;;;8661:20:0;;8676:4;8661:20;;8638:43;8635:218;;;8713:44;:9;8727:21;8750:6;8713:13;:44::i;:::-;8816:4;8798:24;;;;:9;:24;;;;;;8701:56;;-1:-1:-1;8798:39:0;;8701:56;8798:28;:39::i;:::-;8786:10;;-1:-1:-1;;;;;8786:10:0;8776:21;;;;:9;:21;;;;;:61;8635:218;8916:4;8867:28;6902:18;;;:9;:18;;;;;;8942:14;;-1:-1:-1;;;8942:14:0;;;;8941:15;:40;;;;-1:-1:-1;8968:13:0;;-1:-1:-1;;;;;8960:21:0;;;8968:13;;8960:21;8941:40;:61;;;;-1:-1:-1;8985:17:0;;-1:-1:-1;;;8985:17:0;;;;8941:61;:105;;;;;9027:19;;9006:20;:40;8941:105;:141;;;;;9061:21;;9050:10;;:32;8941:141;8937:304;;;9103:68;9120:50;9124:6;9131:38;9135:20;9156:12;;9131:3;:38::i;:::-;9120:3;:50::i;:::-;9103:16;:68::i;:::-;9190:35;9203:21;9190:12;:35::i;:::-;7545:1707;7481:1771;-1:-1:-1;;;;;9276:13:0;;;;;;:9;:13;;;;;;:25;;9294:6;9276:17;:25::i;:::-;-1:-1:-1;;;;;9262:13:0;;;;;;;:9;:13;;;;;;:39;;;;9328:15;;;;;;;:27;;9348:6;9328:19;:27::i;:::-;-1:-1:-1;;;;;9312:15:0;;;;;;;:9;:15;;;;;;;;;:43;;;;9371:26;1361:25:1;;;9371:26:0;;;;9312:15;;9371:26;;1334:18:1;9371:26:0;;;;;;;7211:2194;7142:2263;;;:::o;1247:190::-;1333:7;1369:12;1361:6;;;;1353:29;;;;-1:-1:-1;;;1353:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1393:9:0;1405:5;1409:1;1405;:5;:::i;:::-;1393:17;1247:190;-1:-1:-1;;;;;1247:190:0:o;377:246::-;435:7;459:1;464;459:6;455:47;;-1:-1:-1;489:1:0;482:8;;455:47;512:9;524:5;528:1;524;:5;:::i;:::-;512:17;-1:-1:-1;557:1:0;548:5;552:1;512:17;548:5;:::i;:::-;:10;540:56;;;;-1:-1:-1;;;540:56:0;;11745:2:1;540:56:0;;;11727:21:1;11784:2;11764:18;;;11757:30;11823:34;11803:18;;;11796:62;-1:-1:-1;;;11874:18:1;;;11867:31;11915:19;;540:56:0;11543:397:1;540:56:0;614:1;377:246;-1:-1:-1;;;377:246:0:o;959:132::-;1017:7;1044:39;1048:1;1051;1044:39;;;;;;;;;;;;;;;;;:3;:39::i;631:123::-;700:7;731;:1;733:5;731:7;:::i;:::-;727:3;729:1;727;:3;:::i;:::-;:11;;;;:::i;:::-;720:18;631:123;-1:-1:-1;;;;631:123:0:o;190:179::-;248:7;;280:5;284:1;280;:5;:::i;:::-;268:17;;309:1;304;:6;;296:46;;;;-1:-1:-1;;;296:46:0;;12147:2:1;296:46:0;;;12129:21:1;12186:2;12166:18;;;12159:30;12225:29;12205:18;;;12198:57;12272:18;;296:46:0;11945:351:1;10010:98:0;10067:7;10094:1;10092;:3;10091:9;;10099:1;10091:9;;;-1:-1:-1;10097:1:0;10010:98;-1:-1:-1;10010:98:0:o;10277:480::-;5188:14;:21;;-1:-1:-1;;;;5188:21:0;-1:-1:-1;;;5188:21:0;;;10376:16:::1;::::0;;10390:1:::1;10376:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10376:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10376:16:0::1;10352:40;;10421:4;10403;10408:1;10403:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10403:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10447:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10447:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10403:7;;10447:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10437:4;10442:1;10437:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10437:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10512:15:::1;::::0;10480:62:::1;::::0;10497:4:::1;::::0;10512:15:::1;10530:11:::0;10480:8:::1;:62::i;:::-;10553:15;::::0;:196:::1;::::0;-1:-1:-1;;;10553:196:0;;-1:-1:-1;;;;;10553:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10634:11;;10553:15:::1;::::0;10676:4;;10703::::1;::::0;10723:15:::1;::::0;10553:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5232:14:0;:22;;-1:-1:-1;;;;5232:22:0;;;-1:-1:-1;;;;10277:480:0:o;10765:92::-;10822:10;;:27;;-1:-1:-1;;;;;10822:10:0;;;;:27;;;;;10842:6;;10822:10;:27;:10;:27;10842:6;10822:10;:27;;;;;;;;;;;;;;;;;;;;;10765:92;:::o;1103:136::-;1161:7;1188:43;1192:1;1195;1188:43;;;;;;;;;;;;;;;;;:3;:43::i;762:189::-;848:7;883:12;876:5;868:28;;;;-1:-1:-1;;;868:28:0;;;;;;;;:::i;:::-;-1:-1:-1;907:9:0;919:5;923:1;919;: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:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;7068:277::-;7135:6;7188:2;7176:9;7167:7;7163:23;7159:32;7156:52;;;7204:1;7201;7194:12;7156:52;7236:9;7230:16;7289:5;7282:13;7275:21;7268:5;7265:32;7255:60;;7311:1;7308;7301:12;10563:125;10628:9;;;10649:10;;;10646:36;;;10662:18;;:::i;11048:135::-;11087:3;11108:17;;;11105:43;;11128:18;;:::i;:::-;-1:-1:-1;11175:1:1;11164:13;;11048:135::o;11188:128::-;11255:9;;;11276:11;;;11273:37;;;11290:18;;:::i;11321:217::-;11361:1;11387;11377:132;;11431:10;11426:3;11422:20;11419:1;11412:31;11466:4;11463:1;11456:15;11494:4;11491:1;11484:15;11377:132;-1:-1:-1;11523:9:1;;11321:217::o;12433:127::-;12494:10;12489:3;12485:20;12482:1;12475:31;12525:4;12522:1;12515:15;12549:4;12546:1;12539:15;12565:980;12827:4;12875:3;12864:9;12860:19;12906:6;12895:9;12888:25;12932:2;12970:6;12965:2;12954:9;12950:18;12943:34;13013:3;13008:2;12997:9;12993:18;12986:31;13037:6;13072;13066:13;13103:6;13095;13088:22;13141:3;13130:9;13126:19;13119:26;;13180:2;13172:6;13168:15;13154:29;;13201:1;13211:195;13225:6;13222:1;13219:13;13211:195;;;13290:13;;-1:-1:-1;;;;;13286:39:1;13274:52;;13381:15;;;;13346:12;;;;13322:1;13240:9;13211:195;;;-1:-1:-1;;;;;;;13462:32:1;;;;13457:2;13442:18;;13435:60;-1:-1:-1;;;13526:3:1;13511:19;13504:35;13423:3;12565:980;-1:-1:-1;;;12565:980:1:o

Swarm Source

ipfs://44fba811d52e10245bcd867f58297f813312dc093394502ce837e2b750ad85b4

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.