ETH Price: $1,961.23 (-4.68%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer116977042021-01-21 8:31:271863 days ago1611217887IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0044224686
Transfer116662972021-01-16 12:39:301867 days ago1610800770IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0017577582
Transfer116662832021-01-16 12:36:021867 days ago1610800562IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0026598273
Transfer116661402021-01-16 12:03:471867 days ago1610798627IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0010920151
Transfer116661262021-01-16 11:59:381867 days ago1610798378IN
0x55bC1a7c...40EDfAc0c
0 ETH0.002159342
Transfer116602932021-01-15 14:42:101868 days ago1610721730IN
0x55bC1a7c...40EDfAc0c
0 ETH0.00237939111
Transfer116601692021-01-15 14:13:311868 days ago1610720011IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0016619470
Transfer116601692021-01-15 14:13:311868 days ago1610720011IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0016031844
Transfer116451352021-01-13 6:51:121871 days ago1610520672IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0008574440
Transfer116451192021-01-13 6:47:231871 days ago1610520443IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0013845638
Transfer116065412021-01-07 8:44:331877 days ago1610009073IN
0x55bC1a7c...40EDfAc0c
0 ETH0.002401886
Transfer116065382021-01-07 8:44:211877 days ago1610009061IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0026252394
Transfer115536772020-12-30 6:06:421885 days ago1609308402IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0030616384
Transfer115536592020-12-30 6:02:151885 days ago1609308135IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0016514977
Transfer115535662020-12-30 5:41:561885 days ago1609306916IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0026971574.00000269
Transfer115224772020-12-25 11:16:201890 days ago1608894980IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0015657143.00000145
Transfer115224712020-12-25 11:15:201890 days ago1608894920IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0021083841.00000145
Transfer115221152020-12-25 9:58:471890 days ago1608890327IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0026233972
Transfer115135942020-12-24 2:28:061891 days ago1608776886IN
0x55bC1a7c...40EDfAc0c
0 ETH0.00429661118
Transfer115134702020-12-24 2:00:431891 days ago1608775243IN
0x55bC1a7c...40EDfAc0c
0 ETH0.00392336140
Approve114253012020-12-10 12:57:191904 days ago1607605039IN
0x55bC1a7c...40EDfAc0c
0 ETH0.001138945.00000145
Transfer114161832020-12-09 3:14:361906 days ago1607483676IN
0x55bC1a7c...40EDfAc0c
0 ETH0.001601644
Transfer114128222020-12-08 14:59:171906 days ago1607439557IN
0x55bC1a7c...40EDfAc0c
0 ETH0.00109230
Approve113922282020-12-05 10:55:471910 days ago1607165747IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0010123640
Transfer113852642020-12-04 9:22:491911 days ago1607073769IN
0x55bC1a7c...40EDfAc0c
0 ETH0.0018570151.00000145
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
NUX

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2020-10-26
*/

/**
 *Submitted for verification at Etherscan.io on 2020-07-26
*/

pragma solidity 0.5.16;

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

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

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

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

    mapping (address => uint) private _balances;

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

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

        _beforeTokenTransfer(sender, recipient, amount);

        _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, uint amount) internal {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

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

        _beforeTokenTransfer(account, address(0), amount);

        _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, uint 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);
    }

     /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be to transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal { }
}

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

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

    /**
     * @dev Returns the cap on the token's total supply.
     */
    function cap() public view returns (uint256) {
        return _cap;
    }

}

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

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

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

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

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

        return c;
    }
}

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

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

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

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

    function safeApprove(IERC20 token, address spender, uint 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 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");
        }
    }
}

/**
 * NUX Token
 */
pragma solidity 0.5.16;

contract NUX is ERC20, ERC20Detailed {
    using SafeERC20 for IERC20;
    using Address for address;
    using SafeMath for uint;

    address public governance;
    address public pendingGov;

    mapping (address => bool) public minters;

    event NewPendingGov(address oldPendingGov, address newPendingGov);

    event NewGov(address oldGov, address newGov);

    // Modifiers
    modifier onlyGov() {
        require(msg.sender == governance, "NUX-Token: You are not the governance");
        _;
    }

    constructor () public ERC20Detailed("NUX", "NUX", 18, 100000000 * 10 ** 18) {
        governance = tx.origin;
    }

    /** 
     * Minte Token for Account
     * @param _account minter
     * @param _amount amount
     */
    function mint(address _account, uint256 _amount) external {
        require(minters[msg.sender], "NUX-Token: You are not the minter");
        _mint(_account, _amount);
    }
    
    /** 
     * Add minter
     * @param _minter minter
     */
    function addMinter(address _minter) external onlyGov {
        minters[_minter] = true;
    }
    
    /** 
     * Remove minter
     * @param _minter minter
     */
    function removeMinter(address _minter) external onlyGov {
        minters[_minter] = false;
    }

    /** 
     * Set new governance
     * @param _pendingGov the new governance
     */
    function setPendingGov(address _pendingGov)
        external
        onlyGov
    {
        address oldPendingGov = pendingGov;
        pendingGov = _pendingGov;
        emit NewPendingGov(oldPendingGov, _pendingGov);
    }

    /** 
     * lets msg.sender accept governance
     */
    function acceptGov()
        external {
        require(msg.sender == pendingGov, "NUX-Token: You are not the pending governance");
        address oldGov = governance;
        governance = pendingGov;
        pendingGov = address(0);
        emit NewGov(oldGov, governance);
    }

    /**
     * @dev See {ERC20-_beforeTokenTransfer}.
     *
     * Requirements:
     *
     * - minted tokens must not cause the total supply to go over the cap.
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal {
        super._beforeTokenTransfer(from, to, amount);

        if (from == address(0)) { // When minting tokens
            require(totalSupply().add(amount) <= cap(), "NUX-Token: Capacity exceeded");
        }
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"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":false,"internalType":"address","name":"oldGov","type":"address"},{"indexed":false,"internalType":"address","name":"newGov","type":"address"}],"name":"NewGov","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldPendingGov","type":"address"},{"indexed":false,"internalType":"address","name":"newPendingGov","type":"address"}],"name":"NewPendingGov","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"},{"constant":false,"inputs":[],"name":"acceptGov","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"addMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"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":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":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":false,"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"minters","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pendingGov","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"removeMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_pendingGov","type":"address"}],"name":"setPendingGov","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":"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"}]

60806040523480156200001157600080fd5b506040518060400160405280600381526020017f4e555800000000000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4e5558000000000000000000000000000000000000000000000000000000000081525060126a52b7d2dcc80cd2e40000008360039080519060200190620000a49291906200012b565b508260049080519060200190620000bd9291906200012b565b5081600560006101000a81548160ff021916908360ff160217905550806006819055505050505032600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001da565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200016e57805160ff19168380011785556200019f565b828001600101855582156200019f579182015b828111156200019e57825182559160200191906001019062000181565b5b509050620001ae9190620001b2565b5090565b620001d791905b80821115620001d3576000816000905550600101620001b9565b5090565b90565b611dba80620001ea6000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c80635aa6e675116100ad578063a457c2d711610071578063a457c2d7146105b5578063a9059cbb1461061b578063dd62ed3e14610681578063efdf0bb0146106f9578063f46eccc41461073d5761012c565b80635aa6e6751461044257806370a082311461048c5780637bc6729b146104e457806395d89b41146104ee578063983b2d56146105715761012c565b80633092afd5116100f45780633092afd514610308578063313ce5671461034c578063355274ea14610370578063395093511461038e57806340c10f19146103f45761012c565b806306fdde0314610131578063095ea7b3146101b457806318160ddd1461021a57806323b872dd1461023857806325240810146102be575b600080fd5b610139610799565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017957808201518184015260208101905061015e565b50505050905090810190601f1680156101a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610200600480360360408110156101ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061083b565b604051808215151515815260200191505060405180910390f35b610222610859565b6040518082815260200191505060405180910390f35b6102a46004803603606081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610863565b604051808215151515815260200191505060405180910390f35b6102c661093c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61034a6004803603602081101561031e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610962565b005b610354610a63565b604051808260ff1660ff16815260200191505060405180910390f35b610378610a7a565b6040518082815260200191505060405180910390f35b6103da600480360360408110156103a457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a84565b604051808215151515815260200191505060405180910390f35b6104406004803603604081101561040a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b37565b005b61044a610be7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104ce600480360360208110156104a257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c0d565b6040518082815260200191505060405180910390f35b6104ec610c55565b005b6104f6610e83565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561053657808201518184015260208101905061051b565b50505050905090810190601f1680156105635780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105b36004803603602081101561058757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f25565b005b610601600480360360408110156105cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611026565b604051808215151515815260200191505060405180910390f35b6106676004803603604081101561063157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110f3565b604051808215151515815260200191505060405180910390f35b6106e36004803603604081101561069757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611111565b6040518082815260200191505060405180910390f35b61073b6004803603602081101561070f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611198565b005b61077f6004803603602081101561075357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611341565b604051808215151515815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108315780601f1061080657610100808354040283529160200191610831565b820191906000526020600020905b81548152906001019060200180831161081457829003601f168201915b5050505050905090565b600061084f610848611361565b8484611369565b6001905092915050565b6000600254905090565b6000610870848484611560565b6109318461087c611361565b61092c85604051806060016040528060288152602001611caa60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108e2611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b611369565b600190509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600560009054906101000a900460ff16905090565b6000600654905090565b6000610b2d610a91611361565b84610b288560016000610aa2611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b611369565b6001905092915050565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611d656021913960400191505060405180910390fd5b610be38282611969565b5050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cfb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180611c35602d913960400191505060405180910390fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d552381600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a150565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f1b5780601f10610ef057610100808354040283529160200191610f1b565b820191906000526020600020905b815481529060010190602001808311610efe57829003601f168201915b5050505050905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006110e9611033611361565b846110e485604051806060016040528060258152602001611d40602591396001600061105d611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b611369565b6001905092915050565b6000611107611100611361565b8484611560565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461123e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f6163d5b9efd962645dd649e6e48a61bcb0f9df00997a2398b80d135a9ab0c61e8183604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a15050565b60096020528060005260406000206000915054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180611d1c6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611475576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180611c626022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156115e6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cd26025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561166c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611c126023913960400191505060405180910390fd5b611677838383611b30565b6116e281604051806060016040528060268152602001611c84602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611775816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008383111582906118ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611893578082015181840152602081019050611878565b50505050905090810190601f1680156118c05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008082840190508381101561195f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b611a1860008383611b30565b611a2d816002546118e190919063ffffffff16565b600281905550611a84816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b611b3b838383611c0c565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c0757611b78610a7a565b611b9282611b84610859565b6118e190919063ffffffff16565b1115611c06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4e55582d546f6b656e3a2043617061636974792065786365656465640000000081525060200191505060405180910390fd5b5b505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734e55582d546f6b656e3a20596f7520617265206e6f74207468652070656e64696e6720676f7665726e616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f20616464726573734e55582d546f6b656e3a20596f7520617265206e6f742074686520676f7665726e616e636545524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4e55582d546f6b656e3a20596f7520617265206e6f7420746865206d696e746572a265627a7a723158204689841e0dca16a9512a208137044e95730e00067e6b020d816ef5af5f61928c64736f6c63430005100032

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c80635aa6e675116100ad578063a457c2d711610071578063a457c2d7146105b5578063a9059cbb1461061b578063dd62ed3e14610681578063efdf0bb0146106f9578063f46eccc41461073d5761012c565b80635aa6e6751461044257806370a082311461048c5780637bc6729b146104e457806395d89b41146104ee578063983b2d56146105715761012c565b80633092afd5116100f45780633092afd514610308578063313ce5671461034c578063355274ea14610370578063395093511461038e57806340c10f19146103f45761012c565b806306fdde0314610131578063095ea7b3146101b457806318160ddd1461021a57806323b872dd1461023857806325240810146102be575b600080fd5b610139610799565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017957808201518184015260208101905061015e565b50505050905090810190601f1680156101a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610200600480360360408110156101ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061083b565b604051808215151515815260200191505060405180910390f35b610222610859565b6040518082815260200191505060405180910390f35b6102a46004803603606081101561024e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610863565b604051808215151515815260200191505060405180910390f35b6102c661093c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61034a6004803603602081101561031e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610962565b005b610354610a63565b604051808260ff1660ff16815260200191505060405180910390f35b610378610a7a565b6040518082815260200191505060405180910390f35b6103da600480360360408110156103a457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a84565b604051808215151515815260200191505060405180910390f35b6104406004803603604081101561040a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b37565b005b61044a610be7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104ce600480360360208110156104a257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c0d565b6040518082815260200191505060405180910390f35b6104ec610c55565b005b6104f6610e83565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561053657808201518184015260208101905061051b565b50505050905090810190601f1680156105635780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105b36004803603602081101561058757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f25565b005b610601600480360360408110156105cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611026565b604051808215151515815260200191505060405180910390f35b6106676004803603604081101561063157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110f3565b604051808215151515815260200191505060405180910390f35b6106e36004803603604081101561069757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611111565b6040518082815260200191505060405180910390f35b61073b6004803603602081101561070f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611198565b005b61077f6004803603602081101561075357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611341565b604051808215151515815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108315780601f1061080657610100808354040283529160200191610831565b820191906000526020600020905b81548152906001019060200180831161081457829003601f168201915b5050505050905090565b600061084f610848611361565b8484611369565b6001905092915050565b6000600254905090565b6000610870848484611560565b6109318461087c611361565b61092c85604051806060016040528060288152602001611caa60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108e2611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b611369565b600190509392505050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600560009054906101000a900460ff16905090565b6000600654905090565b6000610b2d610a91611361565b84610b288560016000610aa2611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b611369565b6001905092915050565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611d656021913960400191505060405180910390fd5b610be38282611969565b5050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cfb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180611c35602d913960400191505060405180910390fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f1f14cfc03e486d23acee577b07bc0b3b23f4888c91fcdba5e0fef5a2549d552381600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a150565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f1b5780601f10610ef057610100808354040283529160200191610f1b565b820191906000526020600020905b815481529060010190602001808311610efe57829003601f168201915b5050505050905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610fcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006110e9611033611361565b846110e485604051806060016040528060258152602001611d40602591396001600061105d611361565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b611369565b6001905092915050565b6000611107611100611361565b8484611560565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461123e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cf76025913960400191505060405180910390fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f6163d5b9efd962645dd649e6e48a61bcb0f9df00997a2398b80d135a9ab0c61e8183604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a15050565b60096020528060005260406000206000915054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180611d1c6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611475576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180611c626022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156115e6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611cd26025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561166c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611c126023913960400191505060405180910390fd5b611677838383611b30565b6116e281604051806060016040528060268152602001611c84602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118219092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611775816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008383111582906118ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611893578082015181840152602081019050611878565b50505050905090810190601f1680156118c05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008082840190508381101561195f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a0c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b611a1860008383611b30565b611a2d816002546118e190919063ffffffff16565b600281905550611a84816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118e190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b611b3b838383611c0c565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c0757611b78610a7a565b611b9282611b84610859565b6118e190919063ffffffff16565b1115611c06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4e55582d546f6b656e3a2043617061636974792065786365656465640000000081525060200191505060405180910390fd5b5b505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f20616464726573734e55582d546f6b656e3a20596f7520617265206e6f74207468652070656e64696e6720676f7665726e616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f20616464726573734e55582d546f6b656e3a20596f7520617265206e6f742074686520676f7665726e616e636545524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4e55582d546f6b656e3a20596f7520617265206e6f7420746865206d696e746572a265627a7a723158204689841e0dca16a9512a208137044e95730e00067e6b020d816ef5af5f61928c64736f6c63430005100032

Deployed Bytecode Sourcemap

8843:2485:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8843:2485:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5371:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5371:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1712:151;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1712:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1201:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1869:303;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1869:303:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9016:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10048:99;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10048:99:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5557:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5726:75;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2178:209;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2178:209:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9613:177;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9613:177:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8984:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1295:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1295:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10545:288;;;:::i;:::-;;5462:89;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5462:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9870:95;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9870:95:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;2393:260;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2393:260:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1410:157;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1410:157:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1573:133;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1573:133:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10247:229;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10247:229:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;9050:40;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9050:40:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5371:85;5410:13;5443:5;5436:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5371:85;:::o;1712:151::-;1777:4;1794:39;1803:12;:10;:12::i;:::-;1817:7;1826:6;1794:8;:39::i;:::-;1851:4;1844:11;;1712:151;;;;:::o;1201:88::-;1245:4;1269:12;;1262:19;;1201:88;:::o;1869:303::-;1957:4;1974:36;1984:6;1992:9;2003:6;1974:9;:36::i;:::-;2021:121;2030:6;2038:12;:10;:12::i;:::-;2052:89;2090:6;2052:89;;;;;;;;;;;;;;;;;:11;:19;2064:6;2052:19;;;;;;;;;;;;;;;:33;2072:12;:10;:12::i;:::-;2052:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;2021:8;:121::i;:::-;2160:4;2153:11;;1869:303;;;;;:::o;9016:25::-;;;;;;;;;;;;;:::o;10048:99::-;9296:10;;;;;;;;;;;9282:24;;:10;:24;;;9274:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10134:5;10115:7;:16;10123:7;10115:16;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;10048:99;:::o;5557:85::-;5600:5;5625:9;;;;;;;;;;;5618:16;;5557:85;:::o;5726:75::-;5762:7;5789:4;;5782:11;;5726:75;:::o;2178:209::-;2257:4;2274:83;2283:12;:10;:12::i;:::-;2297:7;2306:50;2345:10;2306:11;:25;2318:12;:10;:12::i;:::-;2306:25;;;;;;;;;;;;;;;:34;2332:7;2306:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;2274:8;:83::i;:::-;2375:4;2368:11;;2178:209;;;;:::o;9613:177::-;9690:7;:19;9698:10;9690:19;;;;;;;;;;;;;;;;;;;;;;;;;9682:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9758:24;9764:8;9774:7;9758:5;:24::i;:::-;9613:177;;:::o;8984:25::-;;;;;;;;;;;;;:::o;1295:109::-;1354:4;1378:9;:18;1388:7;1378:18;;;;;;;;;;;;;;;;1371:25;;1295:109;;;:::o;10545:288::-;10617:10;;;;;;;;;;;10603:24;;:10;:24;;;10595:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10688:14;10705:10;;;;;;;;;;;10688:27;;10739:10;;;;;;;;;;;10726;;:23;;;;;;;;;;;;;;;;;;10781:1;10760:10;;:23;;;;;;;;;;;;;;;;;;10799:26;10806:6;10814:10;;;;;;;;;;;10799:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10545:288;:::o;5462:89::-;5503:13;5536:7;5529:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5462:89;:::o;9870:95::-;9296:10;;;;;;;;;;;9282:24;;:10;:24;;;9274:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9953:4;9934:7;:16;9942:7;9934:16;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;9870:95;:::o;2393:260::-;2477:4;2494:129;2503:12;:10;:12::i;:::-;2517:7;2526:96;2565:15;2526:96;;;;;;;;;;;;;;;;;:11;:25;2538:12;:10;:12::i;:::-;2526:25;;;;;;;;;;;;;;;:34;2552:7;2526:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;2494:8;:129::i;:::-;2641:4;2634:11;;2393:260;;;;:::o;1410:157::-;1478:4;1495:42;1505:12;:10;:12::i;:::-;1519:9;1530:6;1495:9;:42::i;:::-;1555:4;1548:11;;1410:157;;;;:::o;1573:133::-;1647:4;1671:11;:18;1683:5;1671:18;;;;;;;;;;;;;;;:27;1690:7;1671:27;;;;;;;;;;;;;;;;1664:34;;1573:133;;;;:::o;10247:229::-;9296:10;;;;;;;;;;;9282:24;;:10;:24;;;9274:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10342:21;10366:10;;;;;;;;;;;10342:34;;10400:11;10387:10;;:24;;;;;;;;;;;;;;;;;;10427:41;10441:13;10456:11;10427:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9359:1;10247:229;:::o;9050:40::-;;;;;;;;;;;;;;;;;;;;;;:::o;864:98::-;909:15;944:10;937:17;;864:98;:::o;3979:335::-;4087:1;4070:19;;:5;:19;;;;4062:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4168:1;4149:21;;:7;:21;;;;4141:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4252:6;4222:11;:18;4234:5;4222:18;;;;;;;;;;;;;;;:27;4241:7;4222:27;;;;;;;;;;;;;;;:36;;;;4290:7;4274:32;;4283:5;4274:32;;;4299:6;4274:32;;;;;;;;;;;;;;;;;;3979:335;;;:::o;2659:528::-;2772:1;2754:20;;:6;:20;;;;2746:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2856:1;2835:23;;:9;:23;;;;2827:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2911:47;2932:6;2940:9;2951:6;2911:20;:47::i;:::-;2991:71;3013:6;2991:71;;;;;;;;;;;;;;;;;:9;:17;3001:6;2991:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;2971:9;:17;2981:6;2971:17;;;;;;;;;;;;;;;:91;;;;3096:32;3121:6;3096:9;:20;3106:9;3096:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;3073:9;:20;3083:9;3073:20;;;;;;;;;;;;;;;:55;;;;3161:9;3144:35;;3153:6;3144:35;;;3172:6;3144:35;;;;;;;;;;;;;;;;;;2659:528;;;:::o;6142:180::-;6222:4;6252:1;6247;:6;;6255:12;6239:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6239:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6279:6;6292:1;6288;:5;6279:14;;6313:1;6306:8;;;6142:180;;;;;:::o;5834:169::-;5886:4;5903:6;5916:1;5912;:5;5903:14;;5941:1;5936;:6;;5928:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5994:1;5987:8;;;5834:169;;;;:::o;3193:367::-;3285:1;3266:21;;:7;:21;;;;3258:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3336:49;3365:1;3369:7;3378:6;3336:20;:49::i;:::-;3413:24;3430:6;3413:12;;:16;;:24;;;;:::i;:::-;3398:12;:39;;;;3469:30;3492:6;3469:9;:18;3479:7;3469:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;3448:9;:18;3458:7;3448:18;;;;;;;;;;;;;;;:51;;;;3536:7;3515:37;;3532:1;3515:37;;;3545:6;3515:37;;;;;;;;;;;;;;;;;;3193:367;;:::o;11020:305::-;11112:44;11139:4;11145:2;11149:6;11112:26;:44::i;:::-;11189:1;11173:18;;:4;:18;;;11169:149;;;11268:5;:3;:5::i;:::-;11239:25;11257:6;11239:13;:11;:13::i;:::-;:17;;:25;;;;:::i;:::-;:34;;11231:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11169:149;11020:305;;;:::o;4918:84::-;;;;:::o

Swarm Source

bzzr://4689841e0dca16a9512a208137044e95730e00067e6b020d816ef5af5f61928c

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.