ETH Price: $3,658.60 (+0.49%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw All ETH115170982020-12-24 15:23:011473 days ago1608823381IN
0x3eFb017E...b1eb42ff0
0 ETH0.0221856844
Withdraw All ETH112778022020-11-17 21:11:071510 days ago1605647467IN
0x3eFb017E...b1eb42ff0
0 ETH0.0072724355
Withdraw All ETH112492532020-11-13 12:03:571514 days ago1605269037IN
0x3eFb017E...b1eb42ff0
0 ETH0.0056857143
Approve112376492020-11-11 17:22:061516 days ago1605115326IN
0x3eFb017E...b1eb42ff0
0 ETH0.0035988381
Transfer112292412020-11-10 10:26:051517 days ago1605003965IN
0x3eFb017E...b1eb42ff0
0.05 ETH0.0084400954
Transfer112213822020-11-09 5:26:431518 days ago1604899603IN
0x3eFb017E...b1eb42ff0
5 ETH0.0043763428
Withdraw All ETH112164362020-11-08 11:22:151519 days ago1604834535IN
0x3eFb017E...b1eb42ff0
0 ETH0.0025122919
Transfer112123012020-11-07 19:48:251520 days ago1604778505IN
0x3eFb017E...b1eb42ff0
0.15 ETH0.00734647.00000145
Transfer111902112020-11-04 10:45:421523 days ago1604486742IN
0x3eFb017E...b1eb42ff0
0.0342 ETH0.0032666220.9
Withdraw All ETH111787832020-11-02 16:35:101525 days ago1604334910IN
0x3eFb017E...b1eb42ff0
0 ETH0.0050245838.00000145
Transfer111513362020-10-29 11:16:551529 days ago1603970215IN
0x3eFb017E...b1eb42ff0
0.2 ETH0.0114097573
Transfer111221912020-10-24 23:50:311534 days ago1603583431IN
0x3eFb017E...b1eb42ff0
0.05 ETH0.00249916
Withdraw All ETH110967042020-10-21 2:15:501538 days ago1603246550IN
0x3eFb017E...b1eb42ff0
0 ETH0.0257141153
Withdraw All ETH110966622020-10-21 2:05:211538 days ago1603245921IN
0x3eFb017E...b1eb42ff0
0 ETH0.0068700352
Withdraw All ETH110965732020-10-21 1:43:031538 days ago1603244583IN
0x3eFb017E...b1eb42ff0
0 ETH0.0068700352
Withdraw All ETH110911842020-10-20 5:36:171538 days ago1603172177IN
0x3eFb017E...b1eb42ff0
0 ETH0.0029493224.35125
Withdraw All ETH110911842020-10-20 5:36:171538 days ago1603172177IN
0x3eFb017E...b1eb42ff0
0 ETH0.00293124.2000016
Withdraw All ETH110911842020-10-20 5:36:171538 days ago1603172177IN
0x3eFb017E...b1eb42ff0
0 ETH0.0023133119.1
Withdraw All ETH110911842020-10-20 5:36:171538 days ago1603172177IN
0x3eFb017E...b1eb42ff0
0 ETH0.0020589717.00000145
Withdraw All ETH110911842020-10-20 5:36:171538 days ago1603172177IN
0x3eFb017E...b1eb42ff0
0 ETH0.0022459717.00000145
Transfer110881372020-10-19 18:36:111539 days ago1603132571IN
0x3eFb017E...b1eb42ff0
0.2 ETH0.0038120727.00000145
Withdraw All ETH110721682020-10-17 7:46:341541 days ago1602920794IN
0x3eFb017E...b1eb42ff0
0 ETH0.0031707824
Withdraw All ETH110589412020-10-15 7:08:291543 days ago1602745709IN
0x3eFb017E...b1eb42ff0
0 ETH0.0073984956
Withdraw All ETH110576582020-10-15 2:23:511544 days ago1602728631IN
0x3eFb017E...b1eb42ff0
0 ETH0.0052846440
Withdraw All ETH110527182020-10-14 8:26:581544 days ago1602664018IN
0x3eFb017E...b1eb42ff0
0 ETH0.0110977484
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
115170982020-12-24 15:23:011473 days ago1608823381
0x3eFb017E...b1eb42ff0
0.5050237 ETH
115170982020-12-24 15:23:011473 days ago1608823381
0x3eFb017E...b1eb42ff0
0.5050237 ETH
112778022020-11-17 21:11:071510 days ago1605647467
0x3eFb017E...b1eb42ff0
5.00003463 ETH
112778022020-11-17 21:11:071510 days ago1605647467
0x3eFb017E...b1eb42ff0
5.00003463 ETH
112492532020-11-13 12:03:571514 days ago1605269037
0x3eFb017E...b1eb42ff0
0.05000009 ETH
112492532020-11-13 12:03:571514 days ago1605269037
0x3eFb017E...b1eb42ff0
0.05000009 ETH
112292412020-11-10 10:26:051517 days ago1605003965
0x3eFb017E...b1eb42ff0
0.05 ETH
112213822020-11-09 5:26:431518 days ago1604899603
0x3eFb017E...b1eb42ff0
5 ETH
112164362020-11-08 11:22:151519 days ago1604834535
0x3eFb017E...b1eb42ff0
0.03420575 ETH
112164362020-11-08 11:22:151519 days ago1604834535
0x3eFb017E...b1eb42ff0
0.03420575 ETH
112123012020-11-07 19:48:251520 days ago1604778505
0x3eFb017E...b1eb42ff0
0.15 ETH
111902112020-11-04 10:45:421523 days ago1604486742
0x3eFb017E...b1eb42ff0
0.0342 ETH
111787832020-11-02 16:35:101525 days ago1604334910
0x3eFb017E...b1eb42ff0
0.20000958 ETH
111787832020-11-02 16:35:101525 days ago1604334910
0x3eFb017E...b1eb42ff0
0.20000958 ETH
111513362020-10-29 11:16:551529 days ago1603970215
0x3eFb017E...b1eb42ff0
0.2 ETH
111221912020-10-24 23:50:311534 days ago1603583431
0x3eFb017E...b1eb42ff0
0.05 ETH
110967042020-10-21 2:15:501538 days ago1603246550
0x3eFb017E...b1eb42ff0
7.01622793 ETH
110967042020-10-21 2:15:501538 days ago1603246550
0x3eFb017E...b1eb42ff0
7.01622793 ETH
110966622020-10-21 2:05:211538 days ago1603245921
0x3eFb017E...b1eb42ff0
4.33451721 ETH
110966622020-10-21 2:05:211538 days ago1603245921
0x3eFb017E...b1eb42ff0
4.33451721 ETH
110965732020-10-21 1:43:031538 days ago1603244583
0x3eFb017E...b1eb42ff0
1.00000392 ETH
110965732020-10-21 1:43:031538 days ago1603244583
0x3eFb017E...b1eb42ff0
1.00000392 ETH
110911842020-10-20 5:36:171538 days ago1603172177
0x3eFb017E...b1eb42ff0
1.00130094 ETH
110911842020-10-20 5:36:171538 days ago1603172177
0x3eFb017E...b1eb42ff0
1.00130094 ETH
110881372020-10-19 18:36:111539 days ago1603132571
0x3eFb017E...b1eb42ff0
0.2 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
darkETHvault

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-09-30
*/

/**
 *Submitted for verification at Etherscan.io on 2020-09-12
*/

/**
 *Submitted for verification at Etherscan.io on 2020-09-01
*/

pragma solidity ^0.5.16;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract Context {
    constructor () internal { }
    // solhint-disable-previous-line no-empty-blocks

    function _msgSender() internal view returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

contract ERC20 is Context, IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;
    function totalSupply() public view returns (uint256) {
        return _totalSupply;
    }
    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(address owner, address spender) public view returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(address spender, uint256 amount) public returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }
    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }
    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }
    function _mint(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }
    function _burn(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");

        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    function _approve(address owner, address spender, uint256 amount) internal {
        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 _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(account, _msgSender(), _allowances[account][_msgSender()].sub(amount, "ERC20: burn amount exceeds allowance"));
    }
}

contract ERC20Detailed is IERC20 {
    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor (string memory name, string memory symbol, uint8 decimals) public {
        _name = name;
        _symbol = symbol;
        _decimals = decimals;
    }
    function name() public view returns (string memory) {
        return _name;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }
    function decimals() public view returns (uint8) {
        return _decimals;
    }
}

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

        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;

        return c;
    }
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly { codehash := extcodehash(account) }
        return (codehash != 0x0 && codehash != accountHash);
    }
    function toPayable(address account) internal pure returns (address payable) {
        return address(uint160(account));
    }
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        // solhint-disable-next-line avoid-call-value
        (bool success, ) = recipient.call.value(amount)("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
}

library SafeERC20 {
    using SafeMath for uint256;
    using Address for address;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {
        require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }

    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).add(value);
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero");
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }
    function callOptionalReturn(IERC20 token, bytes memory data) private {
        require(address(token).isContract(), "SafeERC20: call to non-contract");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = address(token).call(data);
        require(success, "SafeERC20: low-level call failed");

        if (returndata.length > 0) { // Return data is optional
            // solhint-disable-next-line max-line-length
            require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
        }
    }
}



interface WETH {
    function deposit() external payable;
    function withdraw(uint wad) external;
    event Deposit(address indexed dst, uint wad);
    event Withdrawal(address indexed src, uint wad);
}

interface Controller {
    function withdraw(address, uint) external;
    function balanceOf(address) external view returns (uint);
    function earn(address, uint) external;
}

contract darkETHvault is ERC20, ERC20Detailed {
    using SafeERC20 for IERC20;
    using Address for address;
    using SafeMath for uint256;

    IERC20 public token;

    uint public min = 9990;
    uint public constant max = 10000;
    uint public earnLowerlimit = 50 ether; // Auto activate earn function if the pool has 50 ETH

    address public governance;
    address public controller;

    constructor (address _token) public ERC20Detailed(
        string(abi.encodePacked("DARK ", ERC20Detailed(_token).name())),
        string(abi.encodePacked("dark", ERC20Detailed(_token).symbol())),
        ERC20Detailed(_token).decimals()
    ) {
        token = IERC20(_token);
        governance = msg.sender;
        controller = 0xff56f173b473350E1387EE327F92d7C3ec1cd676;
    }

    function balance() public view returns (uint) {
        return token.balanceOf(address(this))
                .add(Controller(controller).balanceOf(address(token)));
    }

    function setMin(uint _min) external {
        require(msg.sender == governance, "!governance");
        min = _min;
    }

    function setGovernance(address _governance) public {
        require(msg.sender == governance, "!governance");
        governance = _governance;
    }

    function setController(address _controller) public {
        require(msg.sender == governance, "!governance");
        controller = _controller;
    }
    function setEarnLowerlimit(uint256 _earnLowerlimit) public{
      require(msg.sender == governance, "!governance");
      earnLowerlimit = _earnLowerlimit;
    }

    // Custom logic in here for how much the vault allows to be borrowed
    // Sets minimum required on-hand to keep small withdrawals cheap
    function available() public view returns (uint) {
        return token.balanceOf(address(this)).mul(min).div(max);
    }

    function earn() public {
        uint _bal = available();
        token.safeTransfer(controller, _bal);
        Controller(controller).earn(address(token), _bal);
    }

    function depositAll() external {
        deposit(token.balanceOf(msg.sender));
    }

    function deposit(uint _amount) public {
        uint _pool = balance();
        uint _before = token.balanceOf(address(this));
        token.safeTransferFrom(msg.sender, address(this), _amount);
        uint _after = token.balanceOf(address(this));
        _amount = _after.sub(_before); // Additional check for deflationary tokens
        uint shares = 0;
        if (totalSupply() == 0) {
            shares = _amount;
        } else {
            shares = (_amount.mul(totalSupply())).div(_pool);
        }
        _mint(msg.sender, shares);
        if (token.balanceOf(address(this))>earnLowerlimit){
          earn();
        }
    }

    function depositETH() public payable {
        uint _pool = balance();
        uint _before = token.balanceOf(address(this));
        uint _amount = msg.value;
        WETH(address(token)).deposit.value(_amount)();
        uint _after = token.balanceOf(address(this));
        _amount = _after.sub(_before); // Additional check for deflationary tokens
        uint shares = 0;
        if (totalSupply() == 0) {
            shares = _amount;
        } else {
            shares = (_amount.mul(totalSupply())).div(_pool);
        }
        _mint(msg.sender, shares);
    }

    function withdrawAll() external {
        withdraw(balanceOf(msg.sender));
    }

    function withdrawAllETH() external {
        withdrawETH(balanceOf(msg.sender));
    }



    // No rebalance implementation for lower fees and faster swaps
    function withdraw(uint _shares) public {
        uint r = (balance().mul(_shares)).div(totalSupply());
        _burn(msg.sender, _shares);

        // Check balance
        uint b = token.balanceOf(address(this));
        if (b < r) {
            uint _withdraw = r.sub(b);
            Controller(controller).withdraw(address(token), _withdraw);
            uint _after = token.balanceOf(address(this));
            uint _diff = _after.sub(b);
            if (_diff < _withdraw) {
                r = b.add(_diff);
            }
        }

        token.safeTransfer(msg.sender, r);
    }

    // No rebalance implementation for lower fees and faster swaps
    function withdrawETH(uint _shares) public {
        uint r = (balance().mul(_shares)).div(totalSupply());
        _burn(msg.sender, _shares);

        // Check balance
        uint b = token.balanceOf(address(this));
        if (b < r) {
            uint _withdraw = r.sub(b);
            Controller(controller).withdraw(address(token), _withdraw);
            uint _after = token.balanceOf(address(this));
            uint _diff = _after.sub(b);
            if (_diff < _withdraw) {
                r = b.add(_diff);
            }
        }

        WETH(address(token)).withdraw(r);
        address(msg.sender).transfer(r);
    }

    function getPricePerFullShare() public view returns (uint) {
        return balance().mul(1e18).div(totalSupply());
    }
    
    function () external payable {
        if (msg.sender != address(token)) {
            depositETH();
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"payable":false,"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":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"available","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"balance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"depositAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"depositETH","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"earn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"earnLowerlimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getPricePerFullShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"governance","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"max","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"min","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_controller","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_earnLowerlimit","type":"uint256"}],"name":"setEarnLowerlimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_governance","type":"address"}],"name":"setGovernance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_min","type":"uint256"}],"name":"setMin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"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"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawAllETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

60806040526127066006556802b5e3af16b18800006007553480156200002457600080fd5b506040516200276a3803806200276a833981810160405260208110156200004a57600080fd5b5051604080516306fdde0360e01b815290516001600160a01b038316916306fdde03916004808301926000929190829003018186803b1580156200008d57600080fd5b505afa158015620000a2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015620000cc57600080fd5b8101908080516040519392919084640100000000821115620000ed57600080fd5b9083019060208201858111156200010357600080fd5b82516401000000008111828201881017156200011e57600080fd5b82525081516020918201929091019080838360005b838110156200014d57818101518382015260200162000133565b50505050905090810190601f1680156200017b5780820380516001836020036101000a031916815260200191505b5060405250505060405160200180806402220a925960dd1b81525060050182805190602001908083835b60208310620001c65780518252601f199092019160209182019101620001a5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052816001600160a01b03166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b1580156200023457600080fd5b505afa15801562000249573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156200027357600080fd5b81019080805160405193929190846401000000008211156200029457600080fd5b908301906020820185811115620002aa57600080fd5b8251640100000000811182820188101715620002c557600080fd5b82525081516020918201929091019080838360005b83811015620002f4578181015183820152602001620002da565b50505050905090810190601f168015620003225780820380516001836020036101000a031916815260200191505b506040525050506040516020018080636461726b60e01b81525060040182805190602001908083835b602083106200036c5780518252601f1990920191602091820191016200034b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052826001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015620003da57600080fd5b505afa158015620003ef573d6000803e3d6000fd5b505050506040513d60208110156200040657600080fd5b505182516200041d906003906020860190620004a7565b50815162000433906004906020850190620004a7565b50600580546001600160a01b0390951661010002610100600160a81b031960ff90931660ff199096169590951791909116939093179092555050600880546001600160a01b031990811633179091556009805490911673ff56f173b473350e1387ee327f92d7c3ec1cd6761790556200054c565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004ea57805160ff19168380011785556200051a565b828001600101855582156200051a579182015b828111156200051a578251825591602001919060010190620004fd565b50620005289291506200052c565b5090565b6200054991905b8082111562000528576000815560010162000533565b90565b61220e806200055c6000396000f3fe6080604052600436106101e35760003560e01c8063909d3f4c11610102578063d389800f11610095578063f6326fb311610064578063f6326fb3146106c4578063f77c4791146106cc578063f8897945146106e1578063fc0c546a146106f6576101e3565b8063d389800f14610635578063dd62ed3e1461064a578063de5f626814610685578063f14210a61461069a576101e3565b8063a9059cbb116100d1578063a9059cbb1461058a578063ab033ea9146105c3578063b69ef8a8146105f6578063b6b55f251461060b576101e3565b8063909d3f4c146104df57806392eefe9b1461050957806395d89b411461053c578063a457c2d714610551576101e3565b806348a0d7541161017a57806377c7b8fc1161014957806377c7b8fc1461048b578063853828b6146104a05780638e087c78146104b557806390386bbf146104ca576101e3565b806348a0d754146103fd5780635aa6e675146104125780636ac5db191461044357806370a0823114610458576101e3565b80632e1a7d4d116101b65780632e1a7d4d14610345578063313ce5671461036f578063395093511461039a57806345dc3dd8146103d3576101e3565b806306fdde0314610204578063095ea7b31461028e57806318160ddd146102db57806323b872dd14610302575b60055461010090046001600160a01b031633146102025761020261070b565b005b34801561021057600080fd5b506102196108e2565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025357818101518382015260200161023b565b50505050905090810190601f1680156102805780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029a57600080fd5b506102c7600480360360408110156102b157600080fd5b506001600160a01b038135169060200135610978565b604080519115158252519081900360200190f35b3480156102e757600080fd5b506102f0610996565b60408051918252519081900360200190f35b34801561030e57600080fd5b506102c76004803603606081101561032557600080fd5b506001600160a01b0381358116916020810135909116906040013561099c565b34801561035157600080fd5b506102026004803603602081101561036857600080fd5b5035610a29565b34801561037b57600080fd5b50610384610c3c565b6040805160ff9092168252519081900360200190f35b3480156103a657600080fd5b506102c7600480360360408110156103bd57600080fd5b506001600160a01b038135169060200135610c45565b3480156103df57600080fd5b50610202600480360360208110156103f657600080fd5b5035610c99565b34801561040957600080fd5b506102f0610ceb565b34801561041e57600080fd5b50610427610da1565b604080516001600160a01b039092168252519081900360200190f35b34801561044f57600080fd5b506102f0610db0565b34801561046457600080fd5b506102f06004803603602081101561047b57600080fd5b50356001600160a01b0316610db6565b34801561049757600080fd5b506102f0610dd1565b3480156104ac57600080fd5b50610202610df2565b3480156104c157600080fd5b506102f0610e05565b3480156104d657600080fd5b50610202610e0b565b3480156104eb57600080fd5b506102026004803603602081101561050257600080fd5b5035610e1c565b34801561051557600080fd5b506102026004803603602081101561052c57600080fd5b50356001600160a01b0316610e6e565b34801561054857600080fd5b50610219610edd565b34801561055d57600080fd5b506102c76004803603604081101561057457600080fd5b506001600160a01b038135169060200135610f3e565b34801561059657600080fd5b506102c7600480360360408110156105ad57600080fd5b506001600160a01b038135169060200135610fac565b3480156105cf57600080fd5b50610202600480360360208110156105e657600080fd5b50356001600160a01b0316610fc0565b34801561060257600080fd5b506102f061102f565b34801561061757600080fd5b506102026004803603602081101561062e57600080fd5b503561113b565b34801561064157600080fd5b5061020261133c565b34801561065657600080fd5b506102f06004803603604081101561066d57600080fd5b506001600160a01b03813581169160200135166113e2565b34801561069157600080fd5b5061020261140d565b3480156106a657600080fd5b50610202600480360360208110156106bd57600080fd5b503561148f565b61020261070b565b3480156106d857600080fd5b5061042761170f565b3480156106ed57600080fd5b506102f061171e565b34801561070257600080fd5b50610427611724565b600061071561102f565b600554604080516370a0823160e01b815230600482015290519293506000926101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561076a57600080fd5b505afa15801561077e573d6000803e3d6000fd5b505050506040513d602081101561079457600080fd5b505160055460408051630d0e30db60e41b8152905192935034926101009092046001600160a01b03169163d0e30db0918491600480830192600092919082900301818588803b1580156107e657600080fd5b505af11580156107fa573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600095506101009092046001600160a01b031693506370a082319250602480820192602092909190829003018186803b15801561085157600080fd5b505afa158015610865573d6000803e3d6000fd5b505050506040513d602081101561087b57600080fd5b5051905061088f818463ffffffff61173816565b9150600061089b610996565b6108a65750816108d1565b6108ce856108c26108b5610996565b869063ffffffff61178116565b9063ffffffff6117da16565b90505b6108db338261181c565b5050505050565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561096e5780601f106109435761010080835404028352916020019161096e565b820191906000526020600020905b81548152906001019060200180831161095157829003601f168201915b5050505050905090565b600061098c61098561190c565b8484611910565b5060015b92915050565b60025490565b60006109a98484846119fc565b610a1f846109b561190c565b610a1a856040518060600160405280602881526020016120f9602891396001600160a01b038a166000908152600160205260408120906109f361190c565b6001600160a01b03168152602081019190915260400160002054919063ffffffff611b5816565b611910565b5060019392505050565b6000610a4e610a36610996565b6108c284610a4261102f565b9063ffffffff61178116565b9050610a5a3383611bef565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b158015610aaa57600080fd5b505afa158015610abe573d6000803e3d6000fd5b505050506040513d6020811015610ad457600080fd5b5051905081811015610c1b576000610af2838363ffffffff61173816565b6009546005546040805163f3fef3a360e01b81526001600160a01b036101009093048316600482015260248101859052905193945091169163f3fef3a39160448082019260009290919082900301818387803b158015610b5157600080fd5b505af1158015610b65573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600094506101009092046001600160a01b031692506370a08231916024808301926020929190829003018186803b158015610bba57600080fd5b505afa158015610bce573d6000803e3d6000fd5b505050506040513d6020811015610be457600080fd5b505190506000610bfa828563ffffffff61173816565b905082811015610c1757610c14848263ffffffff611ceb16565b94505b5050505b600554610c379061010090046001600160a01b03163384611d45565b505050565b60055460ff1690565b600061098c610c5261190c565b84610a1a8560016000610c6361190c565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff611ceb16565b6008546001600160a01b03163314610ce6576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600655565b6000610d9c6127106108c2600654600560019054906101000a90046001600160a01b03166001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d6020811015610d8e57600080fd5b50519063ffffffff61178116565b905090565b6008546001600160a01b031681565b61271081565b6001600160a01b031660009081526020819052604090205490565b6000610d9c610dde610996565b6108c2670de0b6b3a7640000610a4261102f565b610e03610dfe33610db6565b610a29565b565b60075481565b610e03610e1733610db6565b61148f565b6008546001600160a01b03163314610e69576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600755565b6008546001600160a01b03163314610ebb576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600980546001600160a01b0319166001600160a01b0392909216919091179055565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561096e5780601f106109435761010080835404028352916020019161096e565b600061098c610f4b61190c565b84610a1a856040518060600160405280602581526020016121b56025913960016000610f7561190c565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff611b5816565b600061098c610fb961190c565b84846119fc565b6008546001600160a01b0316331461100d576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600880546001600160a01b0319166001600160a01b0392909216919091179055565b600954600554604080516370a0823160e01b81526001600160a01b03610100909304831660048201529051600093610d9c9316916370a08231916024808301926020929190829003018186803b15801561108857600080fd5b505afa15801561109c573d6000803e3d6000fd5b505050506040513d60208110156110b257600080fd5b5051600554604080516370a0823160e01b815230600482015290516101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561110357600080fd5b505afa158015611117573d6000803e3d6000fd5b505050506040513d602081101561112d57600080fd5b50519063ffffffff611ceb16565b600061114561102f565b600554604080516370a0823160e01b815230600482015290519293506000926101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561119a57600080fd5b505afa1580156111ae573d6000803e3d6000fd5b505050506040513d60208110156111c457600080fd5b50516005549091506111e69061010090046001600160a01b0316333086611d97565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561123657600080fd5b505afa15801561124a573d6000803e3d6000fd5b505050506040513d602081101561126057600080fd5b50519050611274818363ffffffff61173816565b93506000611280610996565b61128b5750836112aa565b6112a7846108c261129a610996565b889063ffffffff61178116565b90505b6112b4338261181c565b600754600554604080516370a0823160e01b815230600482015290516101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561130657600080fd5b505afa15801561131a573d6000803e3d6000fd5b505050506040513d602081101561133057600080fd5b505111156108db576108db5b6000611346610ceb565b6009546005549192506113719161010090046001600160a01b0390811691168363ffffffff611d4516565b6009546005546040805163b02bf4b960e01b81526101009092046001600160a01b03908116600484015260248301859052905192169163b02bf4b99160448082019260009290919082900301818387803b1580156113ce57600080fd5b505af11580156108db573d6000803e3d6000fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600554604080516370a0823160e01b81523360048201529051610e039261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561145e57600080fd5b505afa158015611472573d6000803e3d6000fd5b505050506040513d602081101561148857600080fd5b505161113b565b600061149c610a36610996565b90506114a83383611bef565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156114f857600080fd5b505afa15801561150c573d6000803e3d6000fd5b505050506040513d602081101561152257600080fd5b5051905081811015611669576000611540838363ffffffff61173816565b6009546005546040805163f3fef3a360e01b81526001600160a01b036101009093048316600482015260248101859052905193945091169163f3fef3a39160448082019260009290919082900301818387803b15801561159f57600080fd5b505af11580156115b3573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600094506101009092046001600160a01b031692506370a08231916024808301926020929190829003018186803b15801561160857600080fd5b505afa15801561161c573d6000803e3d6000fd5b505050506040513d602081101561163257600080fd5b505190506000611648828563ffffffff61173816565b90508281101561166557611662848263ffffffff611ceb16565b94505b5050505b600560019054906101000a90046001600160a01b03166001600160a01b0316632e1a7d4d836040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156116c457600080fd5b505af11580156116d8573d6000803e3d6000fd5b505060405133925084156108fc02915084906000818181858888f19350505050158015611709573d6000803e3d6000fd5b50505050565b6009546001600160a01b031681565b60065481565b60055461010090046001600160a01b031681565b600061177a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b58565b9392505050565b60008261179057506000610990565b8282028284828161179d57fe5b041461177a5760405162461bcd60e51b81526004018080602001828103825260218152602001806120d86021913960400191505060405180910390fd5b600061177a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611df1565b6001600160a01b038216611877576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b60025461188a908263ffffffff611ceb16565b6002556001600160a01b0382166000908152602081905260409020546118b6908263ffffffff611ceb16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b3390565b6001600160a01b0383166119555760405162461bcd60e51b81526004018080602001828103825260248152602001806121676024913960400191505060405180910390fd5b6001600160a01b03821661199a5760405162461bcd60e51b81526004018080602001828103825260228152602001806120906022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316611a415760405162461bcd60e51b81526004018080602001828103825260258152602001806121426025913960400191505060405180910390fd5b6001600160a01b038216611a865760405162461bcd60e51b815260040180806020018281038252602381526020018061204b6023913960400191505060405180910390fd5b611ac9816040518060600160405280602681526020016120b2602691396001600160a01b038616600090815260208190526040902054919063ffffffff611b5816565b6001600160a01b038085166000908152602081905260408082209390935590841681522054611afe908263ffffffff611ceb16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611be75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611bac578181015183820152602001611b94565b50505050905090810190601f168015611bd95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038216611c345760405162461bcd60e51b81526004018080602001828103825260218152602001806121216021913960400191505060405180910390fd5b611c778160405180606001604052806022815260200161206e602291396001600160a01b038516600090815260208190526040902054919063ffffffff611b5816565b6001600160a01b038316600090815260208190526040902055600254611ca3908263ffffffff61173816565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008282018381101561177a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610c37908490611e56565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611709908590611e56565b60008183611e405760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611bac578181015183820152602001611b94565b506000838581611e4c57fe5b0495945050505050565b611e68826001600160a01b031661200e565b611eb9576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310611ef75780518252601f199092019160209182019101611ed8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611f59576040519150601f19603f3d011682016040523d82523d6000602084013e611f5e565b606091505b509150915081611fb5576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b80511561170957808060200190516020811015611fd157600080fd5b50516117095760405162461bcd60e51b815260040180806020018281038252602a81526020018061218b602a913960400191505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906120425750808214155b94935050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656445524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158200a50bd42c0636f79f38dc0cca80e4aae86d88f61cd6e5948e69f4967fc83d0d664736f6c63430005100032000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2

Deployed Bytecode

0x6080604052600436106101e35760003560e01c8063909d3f4c11610102578063d389800f11610095578063f6326fb311610064578063f6326fb3146106c4578063f77c4791146106cc578063f8897945146106e1578063fc0c546a146106f6576101e3565b8063d389800f14610635578063dd62ed3e1461064a578063de5f626814610685578063f14210a61461069a576101e3565b8063a9059cbb116100d1578063a9059cbb1461058a578063ab033ea9146105c3578063b69ef8a8146105f6578063b6b55f251461060b576101e3565b8063909d3f4c146104df57806392eefe9b1461050957806395d89b411461053c578063a457c2d714610551576101e3565b806348a0d7541161017a57806377c7b8fc1161014957806377c7b8fc1461048b578063853828b6146104a05780638e087c78146104b557806390386bbf146104ca576101e3565b806348a0d754146103fd5780635aa6e675146104125780636ac5db191461044357806370a0823114610458576101e3565b80632e1a7d4d116101b65780632e1a7d4d14610345578063313ce5671461036f578063395093511461039a57806345dc3dd8146103d3576101e3565b806306fdde0314610204578063095ea7b31461028e57806318160ddd146102db57806323b872dd14610302575b60055461010090046001600160a01b031633146102025761020261070b565b005b34801561021057600080fd5b506102196108e2565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561025357818101518382015260200161023b565b50505050905090810190601f1680156102805780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561029a57600080fd5b506102c7600480360360408110156102b157600080fd5b506001600160a01b038135169060200135610978565b604080519115158252519081900360200190f35b3480156102e757600080fd5b506102f0610996565b60408051918252519081900360200190f35b34801561030e57600080fd5b506102c76004803603606081101561032557600080fd5b506001600160a01b0381358116916020810135909116906040013561099c565b34801561035157600080fd5b506102026004803603602081101561036857600080fd5b5035610a29565b34801561037b57600080fd5b50610384610c3c565b6040805160ff9092168252519081900360200190f35b3480156103a657600080fd5b506102c7600480360360408110156103bd57600080fd5b506001600160a01b038135169060200135610c45565b3480156103df57600080fd5b50610202600480360360208110156103f657600080fd5b5035610c99565b34801561040957600080fd5b506102f0610ceb565b34801561041e57600080fd5b50610427610da1565b604080516001600160a01b039092168252519081900360200190f35b34801561044f57600080fd5b506102f0610db0565b34801561046457600080fd5b506102f06004803603602081101561047b57600080fd5b50356001600160a01b0316610db6565b34801561049757600080fd5b506102f0610dd1565b3480156104ac57600080fd5b50610202610df2565b3480156104c157600080fd5b506102f0610e05565b3480156104d657600080fd5b50610202610e0b565b3480156104eb57600080fd5b506102026004803603602081101561050257600080fd5b5035610e1c565b34801561051557600080fd5b506102026004803603602081101561052c57600080fd5b50356001600160a01b0316610e6e565b34801561054857600080fd5b50610219610edd565b34801561055d57600080fd5b506102c76004803603604081101561057457600080fd5b506001600160a01b038135169060200135610f3e565b34801561059657600080fd5b506102c7600480360360408110156105ad57600080fd5b506001600160a01b038135169060200135610fac565b3480156105cf57600080fd5b50610202600480360360208110156105e657600080fd5b50356001600160a01b0316610fc0565b34801561060257600080fd5b506102f061102f565b34801561061757600080fd5b506102026004803603602081101561062e57600080fd5b503561113b565b34801561064157600080fd5b5061020261133c565b34801561065657600080fd5b506102f06004803603604081101561066d57600080fd5b506001600160a01b03813581169160200135166113e2565b34801561069157600080fd5b5061020261140d565b3480156106a657600080fd5b50610202600480360360208110156106bd57600080fd5b503561148f565b61020261070b565b3480156106d857600080fd5b5061042761170f565b3480156106ed57600080fd5b506102f061171e565b34801561070257600080fd5b50610427611724565b600061071561102f565b600554604080516370a0823160e01b815230600482015290519293506000926101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561076a57600080fd5b505afa15801561077e573d6000803e3d6000fd5b505050506040513d602081101561079457600080fd5b505160055460408051630d0e30db60e41b8152905192935034926101009092046001600160a01b03169163d0e30db0918491600480830192600092919082900301818588803b1580156107e657600080fd5b505af11580156107fa573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600095506101009092046001600160a01b031693506370a082319250602480820192602092909190829003018186803b15801561085157600080fd5b505afa158015610865573d6000803e3d6000fd5b505050506040513d602081101561087b57600080fd5b5051905061088f818463ffffffff61173816565b9150600061089b610996565b6108a65750816108d1565b6108ce856108c26108b5610996565b869063ffffffff61178116565b9063ffffffff6117da16565b90505b6108db338261181c565b5050505050565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561096e5780601f106109435761010080835404028352916020019161096e565b820191906000526020600020905b81548152906001019060200180831161095157829003601f168201915b5050505050905090565b600061098c61098561190c565b8484611910565b5060015b92915050565b60025490565b60006109a98484846119fc565b610a1f846109b561190c565b610a1a856040518060600160405280602881526020016120f9602891396001600160a01b038a166000908152600160205260408120906109f361190c565b6001600160a01b03168152602081019190915260400160002054919063ffffffff611b5816565b611910565b5060019392505050565b6000610a4e610a36610996565b6108c284610a4261102f565b9063ffffffff61178116565b9050610a5a3383611bef565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b158015610aaa57600080fd5b505afa158015610abe573d6000803e3d6000fd5b505050506040513d6020811015610ad457600080fd5b5051905081811015610c1b576000610af2838363ffffffff61173816565b6009546005546040805163f3fef3a360e01b81526001600160a01b036101009093048316600482015260248101859052905193945091169163f3fef3a39160448082019260009290919082900301818387803b158015610b5157600080fd5b505af1158015610b65573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600094506101009092046001600160a01b031692506370a08231916024808301926020929190829003018186803b158015610bba57600080fd5b505afa158015610bce573d6000803e3d6000fd5b505050506040513d6020811015610be457600080fd5b505190506000610bfa828563ffffffff61173816565b905082811015610c1757610c14848263ffffffff611ceb16565b94505b5050505b600554610c379061010090046001600160a01b03163384611d45565b505050565b60055460ff1690565b600061098c610c5261190c565b84610a1a8560016000610c6361190c565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549063ffffffff611ceb16565b6008546001600160a01b03163314610ce6576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600655565b6000610d9c6127106108c2600654600560019054906101000a90046001600160a01b03166001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d6020811015610d8e57600080fd5b50519063ffffffff61178116565b905090565b6008546001600160a01b031681565b61271081565b6001600160a01b031660009081526020819052604090205490565b6000610d9c610dde610996565b6108c2670de0b6b3a7640000610a4261102f565b610e03610dfe33610db6565b610a29565b565b60075481565b610e03610e1733610db6565b61148f565b6008546001600160a01b03163314610e69576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600755565b6008546001600160a01b03163314610ebb576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600980546001600160a01b0319166001600160a01b0392909216919091179055565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561096e5780601f106109435761010080835404028352916020019161096e565b600061098c610f4b61190c565b84610a1a856040518060600160405280602581526020016121b56025913960016000610f7561190c565b6001600160a01b03908116825260208083019390935260409182016000908120918d1681529252902054919063ffffffff611b5816565b600061098c610fb961190c565b84846119fc565b6008546001600160a01b0316331461100d576040805162461bcd60e51b815260206004820152600b60248201526a21676f7665726e616e636560a81b604482015290519081900360640190fd5b600880546001600160a01b0319166001600160a01b0392909216919091179055565b600954600554604080516370a0823160e01b81526001600160a01b03610100909304831660048201529051600093610d9c9316916370a08231916024808301926020929190829003018186803b15801561108857600080fd5b505afa15801561109c573d6000803e3d6000fd5b505050506040513d60208110156110b257600080fd5b5051600554604080516370a0823160e01b815230600482015290516101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561110357600080fd5b505afa158015611117573d6000803e3d6000fd5b505050506040513d602081101561112d57600080fd5b50519063ffffffff611ceb16565b600061114561102f565b600554604080516370a0823160e01b815230600482015290519293506000926101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561119a57600080fd5b505afa1580156111ae573d6000803e3d6000fd5b505050506040513d60208110156111c457600080fd5b50516005549091506111e69061010090046001600160a01b0316333086611d97565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561123657600080fd5b505afa15801561124a573d6000803e3d6000fd5b505050506040513d602081101561126057600080fd5b50519050611274818363ffffffff61173816565b93506000611280610996565b61128b5750836112aa565b6112a7846108c261129a610996565b889063ffffffff61178116565b90505b6112b4338261181c565b600754600554604080516370a0823160e01b815230600482015290516101009092046001600160a01b0316916370a0823191602480820192602092909190829003018186803b15801561130657600080fd5b505afa15801561131a573d6000803e3d6000fd5b505050506040513d602081101561133057600080fd5b505111156108db576108db5b6000611346610ceb565b6009546005549192506113719161010090046001600160a01b0390811691168363ffffffff611d4516565b6009546005546040805163b02bf4b960e01b81526101009092046001600160a01b03908116600484015260248301859052905192169163b02bf4b99160448082019260009290919082900301818387803b1580156113ce57600080fd5b505af11580156108db573d6000803e3d6000fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600554604080516370a0823160e01b81523360048201529051610e039261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561145e57600080fd5b505afa158015611472573d6000803e3d6000fd5b505050506040513d602081101561148857600080fd5b505161113b565b600061149c610a36610996565b90506114a83383611bef565b600554604080516370a0823160e01b8152306004820152905160009261010090046001600160a01b0316916370a08231916024808301926020929190829003018186803b1580156114f857600080fd5b505afa15801561150c573d6000803e3d6000fd5b505050506040513d602081101561152257600080fd5b5051905081811015611669576000611540838363ffffffff61173816565b6009546005546040805163f3fef3a360e01b81526001600160a01b036101009093048316600482015260248101859052905193945091169163f3fef3a39160448082019260009290919082900301818387803b15801561159f57600080fd5b505af11580156115b3573d6000803e3d6000fd5b5050600554604080516370a0823160e01b81523060048201529051600094506101009092046001600160a01b031692506370a08231916024808301926020929190829003018186803b15801561160857600080fd5b505afa15801561161c573d6000803e3d6000fd5b505050506040513d602081101561163257600080fd5b505190506000611648828563ffffffff61173816565b90508281101561166557611662848263ffffffff611ceb16565b94505b5050505b600560019054906101000a90046001600160a01b03166001600160a01b0316632e1a7d4d836040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156116c457600080fd5b505af11580156116d8573d6000803e3d6000fd5b505060405133925084156108fc02915084906000818181858888f19350505050158015611709573d6000803e3d6000fd5b50505050565b6009546001600160a01b031681565b60065481565b60055461010090046001600160a01b031681565b600061177a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b58565b9392505050565b60008261179057506000610990565b8282028284828161179d57fe5b041461177a5760405162461bcd60e51b81526004018080602001828103825260218152602001806120d86021913960400191505060405180910390fd5b600061177a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611df1565b6001600160a01b038216611877576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b60025461188a908263ffffffff611ceb16565b6002556001600160a01b0382166000908152602081905260409020546118b6908263ffffffff611ceb16565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b3390565b6001600160a01b0383166119555760405162461bcd60e51b81526004018080602001828103825260248152602001806121676024913960400191505060405180910390fd5b6001600160a01b03821661199a5760405162461bcd60e51b81526004018080602001828103825260228152602001806120906022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316611a415760405162461bcd60e51b81526004018080602001828103825260258152602001806121426025913960400191505060405180910390fd5b6001600160a01b038216611a865760405162461bcd60e51b815260040180806020018281038252602381526020018061204b6023913960400191505060405180910390fd5b611ac9816040518060600160405280602681526020016120b2602691396001600160a01b038616600090815260208190526040902054919063ffffffff611b5816565b6001600160a01b038085166000908152602081905260408082209390935590841681522054611afe908263ffffffff611ceb16565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611be75760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611bac578181015183820152602001611b94565b50505050905090810190601f168015611bd95780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038216611c345760405162461bcd60e51b81526004018080602001828103825260218152602001806121216021913960400191505060405180910390fd5b611c778160405180606001604052806022815260200161206e602291396001600160a01b038516600090815260208190526040902054919063ffffffff611b5816565b6001600160a01b038316600090815260208190526040902055600254611ca3908263ffffffff61173816565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008282018381101561177a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610c37908490611e56565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611709908590611e56565b60008183611e405760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611bac578181015183820152602001611b94565b506000838581611e4c57fe5b0495945050505050565b611e68826001600160a01b031661200e565b611eb9576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310611ef75780518252601f199092019160209182019101611ed8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611f59576040519150601f19603f3d011682016040523d82523d6000602084013e611f5e565b606091505b509150915081611fb5576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b80511561170957808060200190516020811015611fd157600080fd5b50516117095760405162461bcd60e51b815260040180806020018281038252602a81526020018061218b602a913960400191505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081158015906120425750808214155b94935050505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656445524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a723158200a50bd42c0636f79f38dc0cca80e4aae86d88f61cd6e5948e69f4967fc83d0d664736f6c63430005100032

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

000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2

-----Decoded View---------------
Arg [0] : _token (address): 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2


Deployed Bytecode Sourcemap

10221:5275:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15439:5;;;;;-1:-1:-1;;;;;15439:5:0;15417:10;:28;15413:73;;15462:12;:10;:12::i;:::-;10221:5275;5039:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5039:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5039:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2059:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2059:152:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2059:152:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1542:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1542:91:0;;;:::i;:::-;;;;;;;;;;;;;;;;2217:304;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2217:304:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2217:304:0;;;;;;;;;;;;;;;;;:::i;13900:605::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13900:605:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13900:605:0;;:::i;5221:83::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5221:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2527:210;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2527:210:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2527:210:0;;;;;;;;:::i;11216:124::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11216:124:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11216:124:0;;:::i;11984:122::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11984:122:0;;;:::i;10570:25::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10570:25:0;;;:::i;:::-;;;;-1:-1:-1;;;;;10570:25:0;;;;;;;;;;;;;;10431:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10431:32:0;;;:::i;1639:110::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1639:110:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1639:110:0;-1:-1:-1;;;;;1639:110:0;;:::i;15238:123::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15238:123:0;;;:::i;13642:82::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13642:82:0;;;:::i;10470:37::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10470:37:0;;;:::i;13732:88::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13732:88:0;;;:::i;11668:164::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11668:164:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11668:164:0;;:::i;11509:153::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11509:153:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11509:153:0;-1:-1:-1;;;;;11509:153:0;;:::i;5128:87::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5128:87:0;;;:::i;2743:261::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2743:261:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2743:261:0;;;;;;;;:::i;1755:158::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1755:158:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1755:158:0;;;;;;;;:::i;11348:153::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11348:153:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11348:153:0;-1:-1:-1;;;;;11348:153:0;;:::i;11034:174::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11034:174:0;;;:::i;12388:654::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12388:654:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12388:654:0;;:::i;12114:172::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12114:172:0;;;:::i;1919:134::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1919:134:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;1919:134:0;;;;;;;;;;:::i;12294:86::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12294:86:0;;;:::i;14581:649::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14581:649:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14581:649:0;;:::i;13050:584::-;;;:::i;10602:25::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10602:25:0;;;:::i;10402:22::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10402:22:0;;;:::i;10374:19::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10374:19:0;;;:::i;13050:584::-;13098:10;13111:9;:7;:9::i;:::-;13146:5;;:30;;;-1:-1:-1;;;13146:30:0;;13170:4;13146:30;;;;;;13098:22;;-1:-1:-1;;;13146:5:0;;;;-1:-1:-1;;;;;13146:5:0;;:15;;:30;;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;13146:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13146:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13146:30:0;13235:5;;13222:45;;;-1:-1:-1;;;13222:45:0;;;;13146:30;;-1:-1:-1;13202:9:0;;13235:5;;;;-1:-1:-1;;;;;13235:5:0;;13222:28;;13202:9;;13222:45;;;;;13187:12;;13222:45;;;;;;;13202:9;13235:5;13222:45;;;5:2:-1;;;;30:1;27;20:12;5:2;13222:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;13292:5:0;;:30;;;-1:-1:-1;;;13292:30:0;;13316:4;13292:30;;;;;;-1:-1:-1;;;13292:5:0;;;;-1:-1:-1;;;;;13292:5:0;;-1:-1:-1;13292:15:0;;-1:-1:-1;13292:30:0;;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;13292:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13292:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13292:30:0;;-1:-1:-1;13343:19:0;13292:30;13354:7;13343:19;:10;:19;:::i;:::-;13333:29;-1:-1:-1;13417:11:0;13447:13;:11;:13::i;:::-;13443:148;;-1:-1:-1;13491:7:0;13443:148;;;13540:39;13573:5;13541:26;13553:13;:11;:13::i;:::-;13541:7;;:26;:11;:26;:::i;:::-;13540:32;:39;:32;:39;:::i;:::-;13531:48;;13443:148;13601:25;13607:10;13619:6;13601:5;:25::i;:::-;13050:584;;;;;:::o;5039:83::-;5109:5;5102:12;;;;;;;;-1:-1:-1;;5102:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5076:13;;5102:12;;5109:5;;5102:12;;5109:5;5102:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5039:83;:::o;2059:152::-;2125:4;2142:39;2151:12;:10;:12::i;:::-;2165:7;2174:6;2142:8;:39::i;:::-;-1:-1:-1;2199:4:0;2059:152;;;;;:::o;1542:91::-;1613:12;;1542:91;:::o;2217:304::-;2306:4;2323:36;2333:6;2341:9;2352:6;2323:9;:36::i;:::-;2370:121;2379:6;2387:12;:10;:12::i;:::-;2401:89;2439:6;2401:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2401:19:0;;;;;;:11;:19;;;;;;2421:12;:10;:12::i;:::-;-1:-1:-1;;;;;2401:33:0;;;;;;;;;;;;-1:-1:-1;2401:33:0;;;:89;;:37;:89;:::i;:::-;2370:8;:121::i;:::-;-1:-1:-1;2509:4:0;2217:304;;;;;:::o;13900:605::-;13950:6;13959:43;13988:13;:11;:13::i;:::-;13960:22;13974:7;13960:9;:7;:9::i;:::-;:13;:22;:13;:22;:::i;13959:43::-;13950:52;;14013:26;14019:10;14031:7;14013:5;:26::i;:::-;14087:5;;:30;;;-1:-1:-1;;;14087:30:0;;14111:4;14087:30;;;;;;-1:-1:-1;;14087:5:0;;;-1:-1:-1;;;;;14087:5:0;;:15;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;14087:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14087:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14087:30:0;;-1:-1:-1;14132:5:0;;;14128:324;;;14154:14;14171:8;:1;14177;14171:8;:5;:8;:::i;:::-;14205:10;;14234:5;;14194:58;;;-1:-1:-1;;;14194:58:0;;-1:-1:-1;;;;;14205:10:0;14234:5;;;;;14194:58;;;;;;;;;;;;;;-1:-1:-1;14205:10:0;;;14194:31;;:58;;;;;-1:-1:-1;;14194:58:0;;;;;;;;-1:-1:-1;14205:10:0;14194:58;;;5:2:-1;;;;30:1;27;20:12;5:2;14194:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;14281:5:0;;:30;;;-1:-1:-1;;;14281:30:0;;14305:4;14281:30;;;;;;-1:-1:-1;;;14281:5:0;;;;-1:-1:-1;;;;;14281:5:0;;-1:-1:-1;14281:15:0;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;14281:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14281:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14281:30:0;;-1:-1:-1;14326:10:0;14339:13;14281:30;14350:1;14339:13;:10;:13;:::i;:::-;14326:26;;14379:9;14371:5;:17;14367:74;;;14413:12;:1;14419:5;14413:12;:5;:12;:::i;:::-;14409:16;;14367:74;14128:324;;;;14464:5;;:33;;:5;;;-1:-1:-1;;;;;14464:5:0;14483:10;14495:1;14464:18;:33::i;:::-;13900:605;;;:::o;5221:83::-;5287:9;;;;5221:83;:::o;2527:210::-;2607:4;2624:83;2633:12;:10;:12::i;:::-;2647:7;2656:50;2695:10;2656:11;:25;2668:12;:10;:12::i;:::-;-1:-1:-1;;;;;2656:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;2656:25:0;;;:34;;;;;;;;;;;:50;:38;:50;:::i;11216:124::-;11285:10;;-1:-1:-1;;;;;11285:10:0;11271;:24;11263:48;;;;;-1:-1:-1;;;11263:48:0;;;;;;;;;;;;-1:-1:-1;;;11263:48:0;;;;;;;;;;;;;;;11322:3;:10;11216:124::o;11984:122::-;12026:4;12050:48;10458:5;12050:39;12085:3;;12050:5;;;;;;;;;-1:-1:-1;;;;;12050:5:0;-1:-1:-1;;;;;12050:15:0;;12074:4;12050:30;;;;;;;;;;;;;-1:-1:-1;;;;;12050:30:0;-1:-1:-1;;;;;12050:30:0;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12050:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12050:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12050:30:0;;:39;:34;:39;:::i;:48::-;12043:55;;11984:122;:::o;10570:25::-;;;-1:-1:-1;;;;;10570:25:0;;:::o;10431:32::-;10458:5;10431:32;:::o;1639:110::-;-1:-1:-1;;;;;1723:18:0;1696:7;1723:18;;;;;;;;;;;;1639:110::o;15238:123::-;15291:4;15315:38;15339:13;:11;:13::i;:::-;15315:19;15329:4;15315:9;:7;:9::i;13642:82::-;13685:31;13694:21;13704:10;13694:9;:21::i;:::-;13685:8;:31::i;:::-;13642:82::o;10470:37::-;;;;:::o;13732:88::-;13778:34;13790:21;13800:10;13790:9;:21::i;:::-;13778:11;:34::i;11668:164::-;11757:10;;-1:-1:-1;;;;;11757:10:0;11743;:24;11735:48;;;;;-1:-1:-1;;;11735:48:0;;;;;;;;;;;;-1:-1:-1;;;11735:48:0;;;;;;;;;;;;;;;11792:14;:32;11668:164::o;11509:153::-;11593:10;;-1:-1:-1;;;;;11593:10:0;11579;:24;11571:48;;;;;-1:-1:-1;;;11571:48:0;;;;;;;;;;;;-1:-1:-1;;;11571:48:0;;;;;;;;;;;;;;;11630:10;:24;;-1:-1:-1;;;;;;11630:24:0;-1:-1:-1;;;;;11630:24:0;;;;;;;;;;11509:153::o;5128:87::-;5200:7;5193:14;;;;;;;;-1:-1:-1;;5193:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5167:13;;5193:14;;5200:7;;5193:14;;5200:7;5193:14;;;;;;;;;;;;;;;;;;;;;;;;2743:261;2828:4;2845:129;2854:12;:10;:12::i;:::-;2868:7;2877:96;2916:15;2877:96;;;;;;;;;;;;;;;;;:11;:25;2889:12;:10;:12::i;:::-;-1:-1:-1;;;;;2877:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;2877:25:0;;;:34;;;;;;;;;;;:96;;:38;:96;:::i;1755:158::-;1824:4;1841:42;1851:12;:10;:12::i;:::-;1865:9;1876:6;1841:9;:42::i;11348:153::-;11432:10;;-1:-1:-1;;;;;11432:10:0;11418;:24;11410:48;;;;;-1:-1:-1;;;11410:48:0;;;;;;;;;;;;-1:-1:-1;;;11410:48:0;;;;;;;;;;;;;;;11469:10;:24;;-1:-1:-1;;;;;;11469:24:0;-1:-1:-1;;;;;11469:24:0;;;;;;;;;;11348:153::o;11034:174::-;11162:10;;11192:5;;11151:48;;;-1:-1:-1;;;11151:48:0;;-1:-1:-1;;;;;11162:10:0;11192:5;;;;;11151:48;;;;;;-1:-1:-1;;11098:102:0;;11162:10;;11151:32;;:48;;;;;;;;;;;;;;11162:10;11151:48;;;5:2:-1;;;;30:1;27;20:12;5:2;11151:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11151:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11151:48:0;11098:5;;:30;;;-1:-1:-1;;;11098:30:0;;11122:4;11098:30;;;;;;:5;;;;-1:-1:-1;;;;;11098:5:0;;:15;;:30;;;;;11151:48;;11098:30;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;11098:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11098:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11098:30:0;;:102;:52;:102;:::i;12388:654::-;12437:10;12450:9;:7;:9::i;:::-;12485:5;;:30;;;-1:-1:-1;;;12485:30:0;;12509:4;12485:30;;;;;;12437:22;;-1:-1:-1;;;12485:5:0;;;;-1:-1:-1;;;;;12485:5:0;;:15;;:30;;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;12485:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12485:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12485:30:0;12526:5;;12485:30;;-1:-1:-1;12526:58:0;;:5;;;-1:-1:-1;;;;;12526:5:0;12549:10;12569:4;12576:7;12526:22;:58::i;:::-;12609:5;;:30;;;-1:-1:-1;;;12609:30:0;;12633:4;12609:30;;;;;;-1:-1:-1;;12609:5:0;;;-1:-1:-1;;;;;12609:5:0;;:15;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;12609:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12609:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12609:30:0;;-1:-1:-1;12660:19:0;12609:30;12671:7;12660:19;:10;:19;:::i;:::-;12650:29;-1:-1:-1;12734:11:0;12764:13;:11;:13::i;:::-;12760:148;;-1:-1:-1;12808:7:0;12760:148;;;12857:39;12890:5;12858:26;12870:13;:11;:13::i;:::-;12858:7;;:26;:11;:26;:::i;12857:39::-;12848:48;;12760:148;12918:25;12924:10;12936:6;12918:5;:25::i;:::-;12989:14;;12958:5;;:30;;;-1:-1:-1;;;12958:30:0;;12982:4;12958:30;;;;;;:5;;;;-1:-1:-1;;;;;12958:5:0;;:15;;:30;;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;12958:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12958:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12958:30:0;:45;12954:81;;;13017:6;12114:172;12148:9;12160:11;:9;:11::i;:::-;12201:10;;12182:5;;12148:23;;-1:-1:-1;12182:36:0;;12201:10;12182:5;;-1:-1:-1;;;;;12182:5:0;;;;12201:10;12148:23;12182:36;:18;:36;:::i;:::-;12240:10;;12265:5;;12229:49;;;-1:-1:-1;;;12229:49:0;;12240:10;12265:5;;;-1:-1:-1;;;;;12265:5:0;;;12229:49;;;;;;;;;;;;12240:10;;;12229:27;;:49;;;;;12240:10;;12229:49;;;;;;;;12240:10;;12229:49;;;5:2:-1;;;;30:1;27;20:12;5:2;12229:49:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;1919:134:0;-1:-1:-1;;;;;2018:18:0;;;1991:7;2018:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;1919:134::o;12294:86::-;12344:5;;:27;;;-1:-1:-1;;;12344:27:0;;12360:10;12344:27;;;;;;12336:36;;12344:5;;;-1:-1:-1;;;;;12344:5:0;;:15;;:27;;;;;;;;;;;;;;:5;:27;;;5:2:-1;;;;30:1;27;20:12;5:2;12344:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12344:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12344:27:0;12336:7;:36::i;14581:649::-;14634:6;14643:43;14672:13;:11;:13::i;14643:43::-;14634:52;;14697:26;14703:10;14715:7;14697:5;:26::i;:::-;14771:5;;:30;;;-1:-1:-1;;;14771:30:0;;14795:4;14771:30;;;;;;-1:-1:-1;;14771:5:0;;;-1:-1:-1;;;;;14771:5:0;;:15;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;14771:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14771:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14771:30:0;;-1:-1:-1;14816:5:0;;;14812:324;;;14838:14;14855:8;:1;14861;14855:8;:5;:8;:::i;:::-;14889:10;;14918:5;;14878:58;;;-1:-1:-1;;;14878:58:0;;-1:-1:-1;;;;;14889:10:0;14918:5;;;;;14878:58;;;;;;;;;;;;;;-1:-1:-1;14889:10:0;;;14878:31;;:58;;;;;-1:-1:-1;;14878:58:0;;;;;;;;-1:-1:-1;14889:10:0;14878:58;;;5:2:-1;;;;30:1;27;20:12;5:2;14878:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;14965:5:0;;:30;;;-1:-1:-1;;;14965:30:0;;14989:4;14965:30;;;;;;-1:-1:-1;;;14965:5:0;;;;-1:-1:-1;;;;;14965:5:0;;-1:-1:-1;14965:15:0;;:30;;;;;;;;;;;;;;:5;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;14965:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14965:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14965:30:0;;-1:-1:-1;15010:10:0;15023:13;14965:30;15034:1;15023:13;:10;:13;:::i;:::-;15010:26;;15063:9;15055:5;:17;15051:74;;;15097:12;:1;15103:5;15097:12;:5;:12;:::i;:::-;15093:16;;15051:74;14812:324;;;;15161:5;;;;;;;;;-1:-1:-1;;;;;15161:5:0;-1:-1:-1;;;;;15148:29:0;;15178:1;15148:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15148:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;15191:31:0;;15199:10;;-1:-1:-1;15191:31:0;;;;;-1:-1:-1;15220:1:0;;15191:31;;;;15220:1;15199:10;15191:31;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15191:31:0;14581:649;;;:::o;10602:25::-;;;-1:-1:-1;;;;;10602:25:0;;:::o;10402:22::-;;;;:::o;10374:19::-;;;;;;-1:-1:-1;;;;;10374:19:0;;:::o;5522:136::-;5580:7;5607:43;5611:1;5614;5607:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;5600:50;5522:136;-1:-1:-1;;;5522:136:0:o;5862:250::-;5920:7;5944:6;5940:47;;-1:-1:-1;5974:1:0;5967:8;;5940:47;6011:5;;;6015:1;6011;:5;:1;6035:5;;;;;:10;6027:56;;;;-1:-1:-1;;;6027:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6118:132;6176:7;6203:39;6207:1;6210;6203:39;;;;;;;;;;;;;;;;;:3;:39::i;3487:308::-;-1:-1:-1;;;;;3563:21:0;;3555:65;;;;;-1:-1:-1;;;3555:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3648:12;;:24;;3665:6;3648:24;:16;:24;:::i;:::-;3633:12;:39;-1:-1:-1;;;;;3704:18:0;;:9;:18;;;;;;;;;;;:30;;3727:6;3704:30;:22;:30;:::i;:::-;-1:-1:-1;;;;;3683:18:0;;:9;:18;;;;;;;;;;;:51;;;;3750:37;;;;;;;3683:18;;:9;;3750:37;;;;;;;;;;3487:308;;:::o;960:98::-;1040:10;960:98;:::o;4155:338::-;-1:-1:-1;;;;;4249:19:0;;4241:68;;;;-1:-1:-1;;;4241:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4328:21:0;;4320:68;;;;-1:-1:-1;;;4320:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4401:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;4453:32;;;;;;;;;;;;;;;;;4155:338;;;:::o;3010:471::-;-1:-1:-1;;;;;3108:20:0;;3100:70;;;;-1:-1:-1;;;3100:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3189:23:0;;3181:71;;;;-1:-1:-1;;;3181:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3285;3307:6;3285:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3285:17:0;;:9;:17;;;;;;;;;;;;:71;;:21;:71;:::i;:::-;-1:-1:-1;;;;;3265:17:0;;;:9;:17;;;;;;;;;;;:91;;;;3390:20;;;;;;;:32;;3415:6;3390:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;3367:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;3438:35;;;;;;;3367:20;;3438:35;;;;;;;;;;;;;3010:471;;;:::o;5664:192::-;5750:7;5786:12;5778:6;;;;5770:29;;;;-1:-1:-1;;;5770:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5770:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5822:5:0;;;5664:192::o;3801:348::-;-1:-1:-1;;;;;3877:21:0;;3869:67;;;;-1:-1:-1;;;3869:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3970:68;3993:6;3970:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3970:18:0;;:9;:18;;;;;;;;;;;;:68;;:22;:68;:::i;:::-;-1:-1:-1;;;;;3949:18:0;;:9;:18;;;;;;;;;;:89;4064:12;;:24;;4081:6;4064:24;:16;:24;:::i;:::-;4049:12;:39;4104:37;;;;;;;;4130:1;;-1:-1:-1;;;;;4104:37:0;;;;;;;;;;;;3801:348;;:::o;5335:181::-;5393:7;5425:5;;;5449:6;;;;5441:46;;;;;-1:-1:-1;;;5441:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7835:176;7944:58;;;-1:-1:-1;;;;;7944:58:0;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;7944:58:0;;;;;;;;25:18:-1;;61:17;;-1:-1;;;;;182:15;-1:-1;;;179:29;160:49;;7918:85:0;;7937:5;;7918:18;:85::i;8019:204::-;8146:68;;;-1:-1:-1;;;;;8146:68:0;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;8146:68:0;;;;;;;;25:18:-1;;61:17;;-1:-1;;;;;182:15;-1:-1;;;179:29;160:49;;8120:95:0;;8139:5;;8120:18;:95::i;6256:258::-;6342:7;6444:12;6437:5;6429:28;;;;-1:-1:-1;;;6429:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27:10:-1;;8:100;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;6429:28:0;;6468:9;6484:1;6480;:5;;;;;;;6256:258;-1:-1:-1;;;;;6256:258:0:o;9215:598::-;9303:27;9311:5;-1:-1:-1;;;;;9303:25:0;;:27::i;:::-;9295:71;;;;;-1:-1:-1;;;9295:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9440:12;9454:23;9489:5;-1:-1:-1;;;;;9481:19:0;9501:4;9481:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;9481:25:0;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;9439:67:0;;;;9525:7;9517:52;;;;;-1:-1:-1;;;9517:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9586:17;;:21;9582:224;;9728:10;9717:30;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9717:30:0;9709:85;;;;-1:-1:-1;;;9709:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6852:374;6912:4;7135:20;;6978:66;7175:15;;;;;:42;;;7206:11;7194:8;:23;;7175:42;7167:51;6852:374;-1:-1:-1;;;;6852:374:0:o

Swarm Source

bzzr://0a50bd42c0636f79f38dc0cca80e4aae86d88f61cd6e5948e69f4967fc83d0d6

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.