ETH Price: $3,469.80 (+3.01%)

Contract

0xe047705117Eb07e712C3d684f5B18E74577e83aC
 

Overview

ETH Balance

0.0008 ETH

Eth Value

$2.78 (@ $3,469.80/ETH)

Token Holdings

Transaction Hash
Method
Block
From
To
Approve213663102024-12-09 17:02:3515 days ago1733763755IN
BitcashPay: BCP Token
0 ETH0.0009993641.3029814
Approve213538522024-12-07 23:20:3517 days ago1733613635IN
BitcashPay: BCP Token
0 ETH0.000453199.81621024
Approve213121622024-12-02 3:32:2322 days ago1733110343IN
BitcashPay: BCP Token
0 ETH0.0003555214.69346527
Approve211023362024-11-02 20:27:1152 days ago1730579231IN
BitcashPay: BCP Token
0 ETH0.000135495.6
Approve210995822024-11-02 11:12:4752 days ago1730545967IN
BitcashPay: BCP Token
0 ETH0.00011134.6
Approve210852362024-10-31 11:11:4754 days ago1730373107IN
BitcashPay: BCP Token
0 ETH0.000227449.4
Approve210826992024-10-31 2:41:1154 days ago1730342471IN
BitcashPay: BCP Token
0 ETH0.000426249.17043957
Transfer210618812024-10-28 4:55:1157 days ago1730091311IN
BitcashPay: BCP Token
0 ETH0.000228253.74648484
Approve210088692024-10-20 19:26:1165 days ago1729452371IN
BitcashPay: BCP Token
0 ETH0.000194258.02833358
Approve208511032024-09-28 19:04:1187 days ago1727550251IN
BitcashPay: BCP Token
0 ETH0.000157626.51456209
Approve208461622024-09-28 2:31:2388 days ago1727490683IN
BitcashPay: BCP Token
0 ETH0.000211478.74028318
Approve207526962024-09-15 1:21:59101 days ago1726363319IN
BitcashPay: BCP Token
0 ETH0.000023410.96787627
Approve207036992024-09-08 5:07:23107 days ago1725772043IN
BitcashPay: BCP Token
0 ETH0.000034411.42225008
Approve207036752024-09-08 5:02:23107 days ago1725771743IN
BitcashPay: BCP Token
0 ETH0.000037361.5442014
Approve205746052024-08-21 4:28:23125 days ago1724214503IN
BitcashPay: BCP Token
0 ETH0.000085481.8392651
Approve205425462024-08-16 17:00:35130 days ago1723827635IN
BitcashPay: BCP Token
0 ETH0.000082393.40543764
Approve205310152024-08-15 2:21:47132 days ago1723688507IN
BitcashPay: BCP Token
0 ETH0.000092451.98904949
Approve205310062024-08-15 2:19:47132 days ago1723688387IN
BitcashPay: BCP Token
0 ETH0.000124162.68867197
Transfer203425442024-07-19 19:03:35158 days ago1721415815IN
BitcashPay: BCP Token
0 ETH0.00029826.8081421
Transfer203425172024-07-19 18:58:11158 days ago1721415491IN
BitcashPay: BCP Token
0 ETH0.000221895.06607377
Approve201976042024-06-29 13:20:59178 days ago1719667259IN
BitcashPay: BCP Token
0 ETH0.000123592.67839357
Approve200612612024-06-10 11:54:11197 days ago1718020451IN
BitcashPay: BCP Token
0 ETH0.000117494.48539623
Approve200612502024-06-10 11:51:59197 days ago1718020319IN
BitcashPay: BCP Token
0 ETH0.000108024.46460073
Approve199850422024-05-30 20:29:35208 days ago1717100975IN
BitcashPay: BCP Token
0 ETH0.000222279.1862927
Approve199059012024-05-19 18:54:47219 days ago1716144887IN
BitcashPay: BCP Token
0 ETH0.000140853.0343054
View all transactions

Latest 6 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
161429552022-12-08 22:24:11747 days ago1670538251
BitcashPay: BCP Token
0.009 ETH
156106082022-09-25 13:12:47821 days ago1664111567
BitcashPay: BCP Token
0.03 ETH
132664582021-09-21 2:38:071190 days ago1632191887
BitcashPay: BCP Token
0.1 ETH
132664532021-09-21 2:37:121190 days ago1632191832
BitcashPay: BCP Token
0.1 ETH
115241072020-12-25 17:20:001460 days ago1608916800
BitcashPay: BCP Token
0.5 ETH
115182862020-12-24 19:43:301461 days ago1608839010
BitcashPay: BCP Token
0.5098 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BitcashPay

Compiler Version
v0.6.7+commit.b8d736ae

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
pragma solidity >=0.4.21 <0.7.0;

library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

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

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

contract ReentrancyGuard {
    // Booleans are more expensive than uint256 or any type that takes up a full
    // word because each write operation emits an extra SLOAD to first read the
    // slot's contents, replace the bits taken up by the boolean, and then write
    // back. This is the compiler's defense against contract upgrades and
    // pointer aliasing, and it cannot be disabled.

    // The values being non-zero value makes deployment a bit more expensive,
    // but in exchange the refund on every call to nonReentrant will be lower in
    // amount. Since refunds are capped to a percentage of the total
    // transaction's gas, it is best to keep them low in cases like this one, to
    // increase the likelihood of the full refund coming into effect.
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor () internal {
        _status = _NOT_ENTERED;
    }

    /**
     * @dev Prevents a contract from calling itself, directly or indirectly.
     * Calling a `nonReentrant` function from another `nonReentrant`
     * function is not supported. It is possible to prevent this from happening
     * by making the `nonReentrant` function external, and make it call a
     * `private` function that does the actual work.
     */
    modifier nonReentrant() {
        // On the first call to nonReentrant, _notEntered will be true
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");

        // Any calls to nonReentrant after this point will fail
        _status = _ENTERED;

        _;

        // By storing the original value once again, a refund is triggered (see
        // https://eips.ethereum.org/EIPS/eip-2200)
        _status = _NOT_ENTERED;
    }
}


contract BitcashPay is ReentrancyGuard{

    using SafeMath for uint256;

    string public constant name          =           'BitcashPay';
    string public constant symbol        =           'BCP';
    uint public totalSupply;
    uint8 public constant decimals       =           8;
    address payable owner;
    uint public buyPriceEth              =           100 szabo;
    uint public sellPriceEth             =           100 szabo;
    uint private constant MULTIPLIER     =           100000000;

    bool public directSellAllowed       =           false;
    bool public directBuyAllowed        =           false;

    bool public directTransferAllowed   =           false;

    uint public reservedCoin            =           175000000;
    address payable PresaleAddress;

    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowed;
    
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);

    uint private releaseTime = 1627776000;
    
    constructor() ReentrancyGuard() public {
        uint _totalSupply = 850000000;
        owner = msg.sender;
        balanceOf[msg.sender] = _totalSupply.mul(MULTIPLIER);
        totalSupply = _totalSupply.mul(MULTIPLIER);
    }

    modifier ownerOnly {
        if (msg.sender != owner && msg.sender != address(this)) revert("Access Denied!");
        _;
    }

    function burnToken(address account, uint256 amount) ownerOnly public returns (bool success) {
        require(account != address(0), "ERC20: burn from the zero address");

        balanceOf[account] = balanceOf[account].sub(amount.mul(MULTIPLIER), "ERC20: burn amount exceeds balance");
        totalSupply = totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
        return true;
    }

    function transferEther(address payable _to, uint _amount) public ownerOnly returns (bool success)
    {
        uint amount = _amount * 10 ** 18;
        _to.transfer(amount.div(1000));
        return true;
    }

    function setBuyPrice(uint buyPrice) public ownerOnly {
        buyPriceEth = buyPrice;
    }

    function setSellPrice(uint sellPrice) public ownerOnly {
        sellPriceEth = sellPrice;
    }

    function allowDirectBuy() private {
        directBuyAllowed = true;
    }

    function allowDirectSell() private {
        directSellAllowed = true;
    }

    function allowDirectTransfer() private {
        directTransferAllowed = true;
    }

    function denyDirectBuy() private {
        directBuyAllowed = false;
    }

    function denyDirectSell() private {
        directSellAllowed = false;
    }

    function denyDirectTransfer() private {
        directTransferAllowed = false;
    }

    function ownerAllowDirectBuy() public ownerOnly {
        allowDirectBuy();
    }

    function ownerAllowDirectSell() public ownerOnly {
        allowDirectSell();
    }

    function ownerAllowDirectTransfer() public ownerOnly {
        allowDirectTransfer();
    }

    function ownerDenyDirectBuy() public ownerOnly {
        denyDirectBuy();
    }

    function ownerDenyDirectSell() public ownerOnly {
        denyDirectSell();
    }

    function ownerDenyDirectTransfer() public ownerOnly {
        denyDirectTransfer();
    }


    function setPresaleAddress(address payable _presaleAddress) public ownerOnly {
        PresaleAddress = _presaleAddress;
    }


    function transfer(address _to, uint _amount) public nonReentrant returns (bool success){
        if (msg.sender != owner && _to == address(this) && directSellAllowed) {
            sellBitcashPayAgainstEther(_amount);                             
            return true;
        }
        _transfer(msg.sender, _to, _amount);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
        if (balanceOf[_from] >= _value && allowed[_from][msg.sender] >= _value && balanceOf[_to] + _value > balanceOf[_to]) {
            balanceOf[_from] -= _value;
            balanceOf[_to] += _value;
            allowed[_from][msg.sender] -= _value;
            emit Transfer(_from, _to, _value);
            return true;
        } else { return false; }
    }

    function approve(address _spender, uint256 _value) public returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    function allowance(address _owner, address _spender) public view returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(directTransferAllowed || releaseTime <= block.timestamp, "Direct Transfer is now allowed this time.");
        require(balanceOf[sender] > amount, "Insufficient Balance");
        if(msg.sender == address(this)) {
            require(releaseTime <= block.timestamp, "Reserved token is still locked");
        }

        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        balanceOf[sender] = balanceOf[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        balanceOf[recipient] = balanceOf[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function sellBitcashPayAgainstEther(uint amount) private nonReentrant returns (uint refund_amount) {
        allowDirectTransfer();
        refund_amount = (amount.div(MULTIPLIER)).mul(sellPriceEth);

        require(sellPriceEth != 0, "Sell price cannot be zero");
        require(amount.div(MULTIPLIER) >= 100, "Minimum of 100 BCP is required.");
        require(address(this).balance > refund_amount, "Contract Insuficient Balance");
        
        msg.sender.transfer(refund_amount);

        balanceOf[msg.sender] = balanceOf[msg.sender].sub(amount, "ERC20: transfer amount exceeds balance");
        balanceOf[owner] = balanceOf[owner].add(amount);

        emit Transfer(address(this), msg.sender, amount);
        denyDirectTransfer();
        return refund_amount;
    }

    event Bonus (address to, uint value);

    function getBonus(address _to, uint256 _value) public nonReentrant returns (uint bonus) {
        require(msg.sender == PresaleAddress, "Access Denied!");
        balanceOf[owner] = balanceOf[owner].sub(_value, "ERC20: transfer amount exceeds balance");
        balanceOf[_to] = balanceOf[_to].add(_value);
        
        emit Bonus(_to, _value.div(MULTIPLIER));
        return bonus;
    }

    function airDropper(address[] memory _to, uint[] memory _value) public nonReentrant ownerOnly returns (uint) {
        uint i = 0;
        while (i < _to.length) {
            balanceOf[owner] = balanceOf[owner].sub(_value[i].mul(MULTIPLIER), "ERC20: transfer amount exceeds balance");
            balanceOf[_to[i]] = balanceOf[_to[i]].add(_value[i].mul(MULTIPLIER));
            i += 1;
        }
        return i;
    }

    event Sold(address _from, address _to, uint _amount);

    function buyBitcashPayAgainstEther(address payable _sender, uint256 _amount) public nonReentrant returns (uint amount_sold) {
        allowDirectTransfer();
        if(balanceOf[_sender] == 0) {
            balanceOf[_sender] = balanceOf[_sender].add(MULTIPLIER);
            balanceOf[_sender] = balanceOf[_sender].sub(MULTIPLIER);
        }
        amount_sold = _amount.div(buyPriceEth);
        amount_sold = amount_sold.mul(MULTIPLIER);

        _transfer(owner, _sender, amount_sold);

        emit Sold(owner, _sender, amount_sold);
        denyDirectTransfer();
        return amount_sold;
    }

    event Received(address _from, uint _amount);

    receive() external payable {
        require(directBuyAllowed, "Direct buy to the contract is not available");
        if (msg.sender != owner) {
            buyBitcashPayAgainstEther(msg.sender, msg.value);
        }
        emit Received(msg.sender, msg.value);
    }



}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Bonus","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Sold","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"_to","type":"address[]"},{"internalType":"uint256[]","name":"_value","type":"uint256[]"}],"name":"airDropper","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnToken","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_sender","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"buyBitcashPayAgainstEther","outputs":[{"internalType":"uint256","name":"amount_sold","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyPriceEth","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"directBuyAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"directSellAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"directTransferAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"getBonus","outputs":[{"internalType":"uint256","name":"bonus","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerAllowDirectBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ownerAllowDirectSell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ownerAllowDirectTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ownerDenyDirectBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ownerDenyDirectSell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ownerDenyDirectTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reservedCoin","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellPriceEth","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyPrice","type":"uint256"}],"name":"setBuyPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_presaleAddress","type":"address"}],"name":"setPresaleAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"sellPrice","type":"uint256"}],"name":"setSellPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transferEther","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052655af3107a4000600355655af3107a40006004556000600560006101000a81548160ff0219169083151502179055506000600560016101000a81548160ff0219169083151502179055506000600560026101000a81548160ff021916908315150217905550630a6e49c0600655636105e400600a553480156200008657600080fd5b50600160008190555060006332a9f880905033600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000f76305f5e100826200016560201b62002d181790919060201c565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001586305f5e100826200016560201b62002d181790919060201c565b60018190555050620001f0565b6000808314156200017a5760009050620001ea565b60008284029050828482816200018c57fe5b0414620001e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018062003c1d6021913960400191505060405180910390fd5b809150505b92915050565b613a1d80620002006000396000f3fe6080604052600436106101d05760003560e01c806363ae8d6c116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610ba3578063e2c149ea14610c28578063ec1dfe7114610c57578063fc6634b914610cc657610308565b8063a9059cbb14610a55578063b69295d014610ac8578063bdb9f28d14610adf578063d1df306c14610b3057610308565b8063899117c4116100d1578063899117c4146108165780638a49297e1461082d57806395d89b4114610858578063a3b429b5146108e857610308565b806363ae8d6c1461074757806370a08231146107825780638055e1ed146107e757610308565b806323b872dd1161016f57806353e42eb91161013e57806353e42eb9146106695780635639bb3c1461068057806357f4b0cb146106ab5780635c658165146106c257610308565b806323b872dd1461055f5780632d0018ca146105f2578063313ce56714610609578063413669621461063a57610308565b806306fdde03116101ab57806306fdde031461041a578063095ea7b3146104aa578063159489231461051d57806318160ddd1461053457610308565b80625383cb1461030d578063015129a11461037c57806305b1137b146103a757610308565b3661030857600560019054906101000a900460ff1661023a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b8152602001806138c2602b913960400191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461029b576102993334610d01565b505b7f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258743334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b600080fd5b34801561031957600080fd5b506103666004803603604081101561033057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d01565b6040518082815260200191505060405180910390f35b34801561038857600080fd5b5061039161103e565b6040518082815260200191505060405180910390f35b3480156103b357600080fd5b50610400600480360360408110156103ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611044565b604051808215151515815260200191505060405180910390f35b34801561042657600080fd5b5061042f6111b8565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561046f578082015181840152602081019050610454565b50505050905090810190601f16801561049c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104b657600080fd5b50610503600480360360408110156104cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506111f1565b604051808215151515815260200191505060405180910390f35b34801561052957600080fd5b506105326112e3565b005b34801561054057600080fd5b506105496113ea565b6040518082815260200191505060405180910390f35b34801561056b57600080fd5b506105d86004803603606081101561058257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113f0565b604051808215151515815260200191505060405180910390f35b3480156105fe57600080fd5b506106076116eb565b005b34801561061557600080fd5b5061061e6117f2565b604051808260ff1660ff16815260200191505060405180910390f35b34801561064657600080fd5b5061064f6117f7565b604051808215151515815260200191505060405180910390f35b34801561067557600080fd5b5061067e61180a565b005b34801561068c57600080fd5b50610695611911565b6040518082815260200191505060405180910390f35b3480156106b757600080fd5b506106c0611917565b005b3480156106ce57600080fd5b50610731600480360360408110156106e557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a1e565b6040518082815260200191505060405180910390f35b34801561075357600080fd5b506107806004803603602081101561076a57600080fd5b8101908080359060200190929190505050611a43565b005b34801561078e57600080fd5b506107d1600480360360208110156107a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b4a565b6040518082815260200191505060405180910390f35b3480156107f357600080fd5b506107fc611b62565b604051808215151515815260200191505060405180910390f35b34801561082257600080fd5b5061082b611b75565b005b34801561083957600080fd5b50610842611c7c565b6040518082815260200191505060405180910390f35b34801561086457600080fd5b5061086d611c82565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108ad578082015181840152602081019050610892565b50505050905090810190601f1680156108da5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108f457600080fd5b50610a3f6004803603604081101561090b57600080fd5b810190808035906020019064010000000081111561092857600080fd5b82018360208201111561093a57600080fd5b8035906020019184602083028401116401000000008311171561095c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156109bc57600080fd5b8201836020820111156109ce57600080fd5b803590602001918460208302840111640100000000831117156109f057600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050611cbb565b6040518082815260200191505060405180910390f35b348015610a6157600080fd5b50610aae60048036036040811015610a7857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612067565b604051808215151515815260200191505060405180910390f35b348015610ad457600080fd5b50610add6121c1565b005b348015610aeb57600080fd5b50610b2e60048036036020811015610b0257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122c8565b005b348015610b3c57600080fd5b50610b8960048036036040811015610b5357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612409565b604051808215151515815260200191505060405180910390f35b348015610baf57600080fd5b50610c1260048036036040811015610bc657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506126de565b6040518082815260200191505060405180910390f35b348015610c3457600080fd5b50610c3d612765565b604051808215151515815260200191505060405180910390f35b348015610c6357600080fd5b50610cb060048036036040811015610c7a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612778565b6040518082815260200191505060405180910390f35b348015610cd257600080fd5b50610cff60048036036020811015610ce957600080fd5b8101908080359060200190929190505050612ad8565b005b600060026000541415610d7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550610d8c612bdf565b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610f0757610e2a6305f5e100600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ec36305f5e100600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c8490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610f1c60035483612cce90919063ffffffff16565b9050610f356305f5e10082612d1890919063ffffffff16565b9050610f64600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168483612d9e565b7ff3ecb4dab83f41da3035ff9cb3a2ef0c3027ebb89ae4e4b822d7c109e869a2fc600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168483604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a161102d61322b565b809050600160008190555092915050565b60045481565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156110d057503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6000670de0b6b3a7640000830290508373ffffffffffffffffffffffffffffffffffffffff166108fc6111816103e884612cce90919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156111ac573d6000803e3d6000fd5b50600191505092915050565b6040518060400160405280600a81526020017f426974636173685061790000000000000000000000000000000000000000000081525081565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561136d57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156113e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6113e8613248565b565b60015481565b600081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156114bd575081600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156115485750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156116df5781600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506116e4565b600090505b9392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561177557503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156117e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6117f061322b565b565b600881565b600560019054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561189457503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611907576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b61190f613265565b565b60035481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156119a157503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611a14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b611a1c613282565b565b6009602052816000526040600020602052806000526040600020600091509150505481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611acd57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b8060038190555050565b60086020528060005260406000206000915090505481565b600560029054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611bff57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611c72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b611c7a61329f565b565b60065481565b6040518060400160405280600381526020017f424350000000000000000000000000000000000000000000000000000000000081525081565b600060026000541415611d36576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611dc857503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611e3b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b60008090505b835181101561205557611f01611e776305f5e100858481518110611e6157fe5b6020026020010151612d1890919063ffffffff16565b6040518060600160405280602681526020016139326026913960086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ff4611f936305f5e100858481518110611f7d57fe5b6020026020010151612d1890919063ffffffff16565b60086000878581518110611fa357fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b6008600086848151811061200457fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600181019050611e41565b80915050600160008190555092915050565b6000600260005414156120e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561217357503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b801561218b5750600560009054906101000a900460ff165b156121a3576121998261337c565b50600190506121b3565b6121ae338484612d9e565b600190505b600160008190555092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561224b57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156122be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6122c6612bdf565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561235257503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561249557503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15612508576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561258e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806139a26021913960400191505060405180910390fd5b6126106125a86305f5e10084612d1890919063ffffffff16565b60405180606001604052806022815260200161391060229139600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061266882600154612c8490919063ffffffff16565b600181905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900460ff1681565b6000600260005414156127f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146128be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b61294c826040518060600160405280602681526020016139326026913960086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a0382600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f98dcaeced95369821fc42e6b1e87d724bad86c549e4d6f1b69cc88eeb115438783612a7f6305f5e10085612cce90919063ffffffff16565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1809050600160008190555092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612b6257503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15612bd5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b8060048190555050565b6001600560026101000a81548160ff021916908315150217905550565b600080828401905083811015612c7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000612cc683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506132bc565b905092915050565b6000612d1083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506137fb565b905092915050565b600080831415612d2b5760009050612d98565b6000828402905082848281612d3c57fe5b0414612d93576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806139816021913960400191505060405180910390fd5b809150505b92915050565b600560029054906101000a900460ff1680612dbb575042600a5411155b612e10576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806139586029913960400191505060405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411612ec4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f496e73756666696369656e742042616c616e636500000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415612f715742600a541115612f70576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f526573657276656420746f6b656e206973207374696c6c206c6f636b6564000081525060200191505060405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ff7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806139c36025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561307d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806138ed6023913960400191505060405180910390fd5b6130e98160405180606001604052806026815260200161393260269139600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061317e81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600560026101000a81548160ff021916908315150217905550565b6001600560006101000a81548160ff021916908315150217905550565b6001600560016101000a81548160ff021916908315150217905550565b6000600560016101000a81548160ff021916908315150217905550565b6000600560006101000a81548160ff021916908315150217905550565b6000838311158290613369576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561332e578082015181840152602081019050613313565b50505050905090810190601f16801561335b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000600260005414156133f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550613407612bdf565b6134326004546134246305f5e10085612cce90919063ffffffff16565b612d1890919063ffffffff16565b9050600060045414156134ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f53656c6c2070726963652063616e6e6f74206265207a65726f0000000000000081525060200191505060405180910390fd5b60646134c66305f5e10084612cce90919063ffffffff16565b101561353a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4d696e696d756d206f6620313030204243502069732072657175697265642e0081525060200191505060405180910390fd5b8047116135af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f436f6e747261637420496e737566696369656e742042616c616e63650000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156135f5573d6000803e3d6000fd5b506136628260405180606001604052806026815260200161393260269139600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506137198260086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36137eb61322b565b8090506001600081905550919050565b600080831182906138a7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561386c578082015181840152602081019050613851565b50505050905090810190601f1680156138995780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816138b357fe5b04905080915050939250505056fe4469726563742062757920746f2074686520636f6e7472616374206973206e6f7420617661696c61626c6545524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365446972656374205472616e73666572206973206e6f7720616c6c6f77656420746869732074696d652e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373a264697066735822122017c39c13ea88ba4c1761121289c8d0f77307efb0331321572b72cb06124e13a764736f6c63430006070033536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77

Deployed Bytecode

0x6080604052600436106101d05760003560e01c806363ae8d6c116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610ba3578063e2c149ea14610c28578063ec1dfe7114610c57578063fc6634b914610cc657610308565b8063a9059cbb14610a55578063b69295d014610ac8578063bdb9f28d14610adf578063d1df306c14610b3057610308565b8063899117c4116100d1578063899117c4146108165780638a49297e1461082d57806395d89b4114610858578063a3b429b5146108e857610308565b806363ae8d6c1461074757806370a08231146107825780638055e1ed146107e757610308565b806323b872dd1161016f57806353e42eb91161013e57806353e42eb9146106695780635639bb3c1461068057806357f4b0cb146106ab5780635c658165146106c257610308565b806323b872dd1461055f5780632d0018ca146105f2578063313ce56714610609578063413669621461063a57610308565b806306fdde03116101ab57806306fdde031461041a578063095ea7b3146104aa578063159489231461051d57806318160ddd1461053457610308565b80625383cb1461030d578063015129a11461037c57806305b1137b146103a757610308565b3661030857600560019054906101000a900460ff1661023a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b8152602001806138c2602b913960400191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461029b576102993334610d01565b505b7f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f885258743334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b600080fd5b34801561031957600080fd5b506103666004803603604081101561033057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d01565b6040518082815260200191505060405180910390f35b34801561038857600080fd5b5061039161103e565b6040518082815260200191505060405180910390f35b3480156103b357600080fd5b50610400600480360360408110156103ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611044565b604051808215151515815260200191505060405180910390f35b34801561042657600080fd5b5061042f6111b8565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561046f578082015181840152602081019050610454565b50505050905090810190601f16801561049c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104b657600080fd5b50610503600480360360408110156104cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506111f1565b604051808215151515815260200191505060405180910390f35b34801561052957600080fd5b506105326112e3565b005b34801561054057600080fd5b506105496113ea565b6040518082815260200191505060405180910390f35b34801561056b57600080fd5b506105d86004803603606081101561058257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113f0565b604051808215151515815260200191505060405180910390f35b3480156105fe57600080fd5b506106076116eb565b005b34801561061557600080fd5b5061061e6117f2565b604051808260ff1660ff16815260200191505060405180910390f35b34801561064657600080fd5b5061064f6117f7565b604051808215151515815260200191505060405180910390f35b34801561067557600080fd5b5061067e61180a565b005b34801561068c57600080fd5b50610695611911565b6040518082815260200191505060405180910390f35b3480156106b757600080fd5b506106c0611917565b005b3480156106ce57600080fd5b50610731600480360360408110156106e557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a1e565b6040518082815260200191505060405180910390f35b34801561075357600080fd5b506107806004803603602081101561076a57600080fd5b8101908080359060200190929190505050611a43565b005b34801561078e57600080fd5b506107d1600480360360208110156107a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b4a565b6040518082815260200191505060405180910390f35b3480156107f357600080fd5b506107fc611b62565b604051808215151515815260200191505060405180910390f35b34801561082257600080fd5b5061082b611b75565b005b34801561083957600080fd5b50610842611c7c565b6040518082815260200191505060405180910390f35b34801561086457600080fd5b5061086d611c82565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108ad578082015181840152602081019050610892565b50505050905090810190601f1680156108da5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108f457600080fd5b50610a3f6004803603604081101561090b57600080fd5b810190808035906020019064010000000081111561092857600080fd5b82018360208201111561093a57600080fd5b8035906020019184602083028401116401000000008311171561095c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156109bc57600080fd5b8201836020820111156109ce57600080fd5b803590602001918460208302840111640100000000831117156109f057600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050611cbb565b6040518082815260200191505060405180910390f35b348015610a6157600080fd5b50610aae60048036036040811015610a7857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612067565b604051808215151515815260200191505060405180910390f35b348015610ad457600080fd5b50610add6121c1565b005b348015610aeb57600080fd5b50610b2e60048036036020811015610b0257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122c8565b005b348015610b3c57600080fd5b50610b8960048036036040811015610b5357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612409565b604051808215151515815260200191505060405180910390f35b348015610baf57600080fd5b50610c1260048036036040811015610bc657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506126de565b6040518082815260200191505060405180910390f35b348015610c3457600080fd5b50610c3d612765565b604051808215151515815260200191505060405180910390f35b348015610c6357600080fd5b50610cb060048036036040811015610c7a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612778565b6040518082815260200191505060405180910390f35b348015610cd257600080fd5b50610cff60048036036020811015610ce957600080fd5b8101908080359060200190929190505050612ad8565b005b600060026000541415610d7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550610d8c612bdf565b6000600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610f0757610e2a6305f5e100600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ec36305f5e100600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612c8490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610f1c60035483612cce90919063ffffffff16565b9050610f356305f5e10082612d1890919063ffffffff16565b9050610f64600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168483612d9e565b7ff3ecb4dab83f41da3035ff9cb3a2ef0c3027ebb89ae4e4b822d7c109e869a2fc600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168483604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a161102d61322b565b809050600160008190555092915050565b60045481565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156110d057503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6000670de0b6b3a7640000830290508373ffffffffffffffffffffffffffffffffffffffff166108fc6111816103e884612cce90919063ffffffff16565b9081150290604051600060405180830381858888f193505050501580156111ac573d6000803e3d6000fd5b50600191505092915050565b6040518060400160405280600a81526020017f426974636173685061790000000000000000000000000000000000000000000081525081565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561136d57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156113e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6113e8613248565b565b60015481565b600081600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156114bd575081600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b80156115485750600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401115b156116df5781600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555081600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190506116e4565b600090505b9392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561177557503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156117e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6117f061322b565b565b600881565b600560019054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561189457503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611907576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b61190f613265565b565b60035481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156119a157503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611a14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b611a1c613282565b565b6009602052816000526040600020602052806000526040600020600091509150505481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611acd57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b8060038190555050565b60086020528060005260406000206000915090505481565b600560029054906101000a900460ff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611bff57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611c72576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b611c7a61329f565b565b60065481565b6040518060400160405280600381526020017f424350000000000000000000000000000000000000000000000000000000000081525081565b600060026000541415611d36576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611dc857503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15611e3b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b60008090505b835181101561205557611f01611e776305f5e100858481518110611e6157fe5b6020026020010151612d1890919063ffffffff16565b6040518060600160405280602681526020016139326026913960086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ff4611f936305f5e100858481518110611f7d57fe5b6020026020010151612d1890919063ffffffff16565b60086000878581518110611fa357fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b6008600086848151811061200457fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600181019050611e41565b80915050600160008190555092915050565b6000600260005414156120e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561217357503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b801561218b5750600560009054906101000a900460ff165b156121a3576121998261337c565b50600190506121b3565b6121ae338484612d9e565b600190505b600160008190555092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561224b57503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156122be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b6122c6612bdf565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561235257503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b156123c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561249557503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15612508576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561258e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806139a26021913960400191505060405180910390fd5b6126106125a86305f5e10084612d1890919063ffffffff16565b60405180606001604052806022815260200161391060229139600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061266882600154612c8490919063ffffffff16565b600181905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900460ff1681565b6000600260005414156127f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146128be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b61294c826040518060600160405280602681526020016139326026913960086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612a0382600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f98dcaeced95369821fc42e6b1e87d724bad86c549e4d6f1b69cc88eeb115438783612a7f6305f5e10085612cce90919063ffffffff16565b604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1809050600160008190555092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612b6257503073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15612bd5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4163636573732044656e6965642100000000000000000000000000000000000081525060200191505060405180910390fd5b8060048190555050565b6001600560026101000a81548160ff021916908315150217905550565b600080828401905083811015612c7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000612cc683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506132bc565b905092915050565b6000612d1083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506137fb565b905092915050565b600080831415612d2b5760009050612d98565b6000828402905082848281612d3c57fe5b0414612d93576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806139816021913960400191505060405180910390fd5b809150505b92915050565b600560029054906101000a900460ff1680612dbb575042600a5411155b612e10576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806139586029913960400191505060405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411612ec4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f496e73756666696369656e742042616c616e636500000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415612f715742600a541115612f70576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f526573657276656420746f6b656e206973207374696c6c206c6f636b6564000081525060200191505060405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ff7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806139c36025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561307d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806138ed6023913960400191505060405180910390fd5b6130e98160405180606001604052806026815260200161393260269139600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061317e81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000600560026101000a81548160ff021916908315150217905550565b6001600560006101000a81548160ff021916908315150217905550565b6001600560016101000a81548160ff021916908315150217905550565b6000600560016101000a81548160ff021916908315150217905550565b6000600560006101000a81548160ff021916908315150217905550565b6000838311158290613369576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561332e578082015181840152602081019050613313565b50505050905090810190601f16801561335b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000600260005414156133f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550613407612bdf565b6134326004546134246305f5e10085612cce90919063ffffffff16565b612d1890919063ffffffff16565b9050600060045414156134ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f53656c6c2070726963652063616e6e6f74206265207a65726f0000000000000081525060200191505060405180910390fd5b60646134c66305f5e10084612cce90919063ffffffff16565b101561353a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f4d696e696d756d206f6620313030204243502069732072657175697265642e0081525060200191505060405180910390fd5b8047116135af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f436f6e747261637420496e737566696369656e742042616c616e63650000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156135f5573d6000803e3d6000fd5b506136628260405180606001604052806026815260200161393260269139600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132bc9092919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506137198260086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bfc90919063ffffffff16565b60086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36137eb61322b565b8090506001600081905550919050565b600080831182906138a7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561386c578082015181840152602081019050613851565b50505050905090810190601f1680156138995780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816138b357fe5b04905080915050939250505056fe4469726563742062757920746f2074686520636f6e7472616374206973206e6f7420617661696c61626c6545524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365446972656374205472616e73666572206973206e6f7720616c6c6f77656420746869732074696d652e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373a264697066735822122017c39c13ea88ba4c1761121289c8d0f77307efb0331321572b72cb06124e13a764736f6c63430006070033

Deployed Bytecode Sourcemap

6624:8383:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14769:16;;;;;;;;;;;14761:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14862:5;;;;;;;;;;;14848:19;;:10;:19;;;14844:100;;14884:48;14910:10;14922:9;14884:25;:48::i;:::-;;14844:100;14959:31;14968:10;14980:9;14959:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;6624:8383;;12:1:-1;9;2:12;14046:617:0;;5:9:-1;2:2;;;27:1;24;17:12;2:2;14046:617:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;14046:617:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7015:58;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7015:58:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8585:217;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8585:217:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8585:217:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6706:61;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6706:61:0;;;:::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;6706:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11096:214;;5:9:-1;2:2;;;27:1;24;17:12;2:2;11096:214:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;11096:214:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9637:85;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9637:85:0;;;:::i;:::-;;6835:23;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6835:23:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10618:470;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10618:470:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10618:470:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10011:91;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10011:91:0;;;:::i;:::-;;6865:50;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6865:50:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7207:53;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7207:53:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9546:83;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9546:83:0;;;:::i;:::-;;6950:58;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6950:58:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9831:81;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9831:81:0;;;:::i;:::-;;7485:62;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7485:62:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7485:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8810:94;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8810:94:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8810:94:0;;;;;;;;;;;;;;;;;:::i;:::-;;7434:44;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7434:44:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7434:44:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7269:53;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7269:53:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9920:83;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9920:83:0;;;:::i;:::-;;7331:57;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7331:57:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6774:54;;5:9:-1;2:2;;;27:1;24;17:12;2:2;6774:54:0;;;:::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;6774:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13548:429;;5:9:-1;2:2;;;27:1;24;17:12;2:2;13548:429:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;13548:429:0;;;;;;;;;;27:11:-1;14;11:28;8:2;;;52:1;49;42:12;8:2;13548:429:0;;41:9:-1;34:4;18:14;14:25;11:40;8:2;;;64:1;61;54:12;8:2;13548:429:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;13548:429:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;13548:429:0;;;;;;;;;;;;;;;;;27:11:-1;14;11:28;8:2;;;52:1;49;42:12;8:2;13548:429:0;;41:9:-1;34:4;18:14;14:25;11:40;8:2;;;64:1;61;54:12;8:2;13548:429:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;13548:429:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;13548:429:0;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10250:360;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10250:360:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10250:360:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9730:93;;5:9:-1;2:2;;;27:1;24;17:12;2:2;9730:93:0;;;:::i;:::-;;10112:128;;5:9:-1;2:2;;;27:1;24;17:12;2:2;10112:128:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;10112:128:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8158:419;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8158:419:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8158:419:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11318:144;;5:9:-1;2:2;;;27:1;24;17:12;2:2;11318:144:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;11318:144:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7147:53;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7147:53:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13141:399;;5:9:-1;2:2;;;27:1;24;17:12;2:2;13141:399:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;13141:399:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8912:98;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8912:98:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8912:98:0;;;;;;;;;;;;;;;;;:::i;:::-;;14046:617;14152:16;5667:1;6273:7;;:19;;6265:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5667:1;6406:7;:18;;;;14181:21:::1;:19;:21::i;:::-;14238:1;14216:9;:18;14226:7;14216:18;;;;;;;;;;;;;;;;:23;14213:180;;;14277:34;7129:9;14277;:18;14287:7;14277:18;;;;;;;;;;;;;;;;:22;;:34;;;;:::i;:::-;14256:9;:18;14266:7;14256:18;;;;;;;;;;;;;;;:55;;;;14347:34;7129:9;14347;:18;14357:7;14347:18;;;;;;;;;;;;;;;;:22;;:34;;;;:::i;:::-;14326:9;:18;14336:7;14326:18;;;;;;;;;;;;;;;:55;;;;14213:180;14417:24;14429:11;;14417:7;:11;;:24;;;;:::i;:::-;14403:38;;14466:27;7129:9;14466:11;:15;;:27;;;;:::i;:::-;14452:41;;14506:38;14516:5;;;;;;;;;;;14523:7;14532:11;14506:9;:38::i;:::-;14562:33;14567:5;;;;;;;;;;;14574:7;14583:11;14562:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14606:20;:18;:20::i;:::-;14644:11;14637:18;;5623:1:::0;6585:7;:22;;;;14046:617;;;;:::o;7015:58::-;;;;:::o;8585:217::-;8669:12;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;8699:11:::1;8723:8;8713:7;:18;8699:32;;8742:3;:12;;:30;8755:16;8766:4;8755:6;:10;;:16;;;;:::i;:::-;8742:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;8742:30:0;8790:4;8783:11;;;8585:217:::0;;;;:::o;6706:61::-;;;;;;;;;;;;;;;;;;;:::o;11096:214::-;11163:12;11220:6;11188:7;:19;11196:10;11188:19;;;;;;;;;;;;;;;:29;11208:8;11188:29;;;;;;;;;;;;;;;:38;;;;11263:8;11242:38;;11251:10;11242:38;;;11273:6;11242:38;;;;;;;;;;;;;;;;;;11298:4;11291:11;;11096:214;;;;:::o;9637:85::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;9697:17:::1;:15;:17::i;:::-;9637:85::o:0;6835:23::-;;;;:::o;10618:470::-;10700:12;10749:6;10729:9;:16;10739:5;10729:16;;;;;;;;;;;;;;;;:26;;:66;;;;;10789:6;10759:7;:14;10767:5;10759:14;;;;;;;;;;;;;;;:26;10774:10;10759:26;;;;;;;;;;;;;;;;:36;;10729:66;:110;;;;;10825:9;:14;10835:3;10825:14;;;;;;;;;;;;;;;;10816:6;10799:9;:14;10809:3;10799:14;;;;;;;;;;;;;;;;:23;:40;10729:110;10725:356;;;10876:6;10856:9;:16;10866:5;10856:16;;;;;;;;;;;;;;;;:26;;;;;;;;;;;10915:6;10897:9;:14;10907:3;10897:14;;;;;;;;;;;;;;;;:24;;;;;;;;;;;10966:6;10936:7;:14;10944:5;10936:14;;;;;;;;;;;;;;;:26;10951:10;10936:26;;;;;;;;;;;;;;;;:36;;;;;;;;;;;11008:3;10992:28;;11001:5;10992:28;;;11013:6;10992:28;;;;;;;;;;;;;;;;;;11042:4;11035:11;;;;10725:356;11073:5;11066:12;;10618:470;;;;;;:::o;10011:91::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;10074:20:::1;:18;:20::i;:::-;10011:91::o:0;6865:50::-;6914:1;6865:50;:::o;7207:53::-;;;;;;;;;;;;;:::o;9546:83::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;9605:16:::1;:14;:16::i;:::-;9546:83::o:0;6950:58::-;;;;:::o;9831:81::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;9889:15:::1;:13;:15::i;:::-;9831:81::o:0;7485:62::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8810:94::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;8888:8:::1;8874:11;:22;;;;8810:94:::0;:::o;7434:44::-;;;;;;;;;;;;;;;;;:::o;7269:53::-;;;;;;;;;;;;;:::o;9920:83::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;9979:16:::1;:14;:16::i;:::-;9920:83::o:0;7331:57::-;;;;:::o;6774:54::-;;;;;;;;;;;;;;;;;;;:::o;13548:429::-;13651:4;5667:1;6273:7;;:19;;6265:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5667:1;6406:7;:18;;;;8068:5:::1;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;8050:80;13668:6:::2;13677:1:::0;13668:10:::2;;13689:262;13700:3;:10;13696:1;:14;13689:262;;;13746:89;13767:25;7129:9;13767:6;13774:1;13767:9;;;;;;;;;;;;;;:13;;:25;;;;:::i;:::-;13746:89;;;;;;;;;;;;;;;;;:9;:16;13756:5;;;;;;;;;;;13746:16;;;;;;;;;;;;;;;;:20;;:89;;;;;:::i;:::-;13727:9;:16;13737:5;;;;;;;;;;;13727:16;;;;;;;;;;;;;;;:108;;;;13870:48;13892:25;7129:9;13892:6;13899:1;13892:9;;;;;;;;;;;;;;:13;;:25;;;;:::i;:::-;13870:9;:17;13880:3;13884:1;13880:6;;;;;;;;;;;;;;13870:17;;;;;;;;;;;;;;;;:21;;:48;;;;:::i;:::-;13850:9;:17;13860:3;13864:1;13860:6;;;;;;;;;;;;;;13850:17;;;;;;;;;;;;;;;:68;;;;13938:1;13933:6;;;;13689:262;;;13968:1;13961:8;;;5623:1:::0;6585:7;:22;;;;13548:429;;;;:::o;10250:360::-;10324:12;5667:1;6273:7;;:19;;6265:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5667:1;6406:7;:18;;;;10366:5:::1;;;;;;;;;;;10352:19;;:10;:19;;;;:43;;;;;10390:4;10375:20;;:3;:20;;;10352:43;:64;;;;;10399:17;;;;;;;;;;;10352:64;10348:187;;;10433:35;10460:7;10433:26;:35::i;:::-;;10519:4;10512:11;;;;10348:187;10545:35;10555:10;10567:3;10572:7;10545:9;:35::i;:::-;10598:4;10591:11;;6437:1;5623::::0;6585:7;:22;;;;10250:360;;;;:::o;9730:93::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;9794:21:::1;:19;:21::i;:::-;9730:93::o:0;10112:128::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;10217:15:::1;10200:14;;:32;;;;;;;;;;;;;;;;;;10112:128:::0;:::o;8158:419::-;8236:12;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;8288:1:::1;8269:21;;:7;:21;;;;8261:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8362:84;8385:22;7129:9;8385:6;:10;;:22;;;;:::i;:::-;8362:84;;;;;;;;;;;;;;;;;:9;:18;8372:7;8362:18;;;;;;;;;;;;;;;;:22;;:84;;;;;:::i;:::-;8341:9;:18;8351:7;8341:18;;;;;;;;;;;;;;;:105;;;;8471:23;8487:6;8471:11;;:15;;:23;;;;:::i;:::-;8457:11;:37;;;;8536:1;8510:37;;8519:7;8510:37;;;8540:6;8510:37;;;;;;;;;;;;;;;;;;8565:4;8558:11;;8158:419:::0;;;;:::o;11318:144::-;11392:17;11429:7;:15;11437:6;11429:15;;;;;;;;;;;;;;;:25;11445:8;11429:25;;;;;;;;;;;;;;;;11422:32;;11318:144;;;;:::o;7147:53::-;;;;;;;;;;;;;:::o;13141:399::-;13217:10;5667:1;6273:7;;:19;;6265:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5667:1;6406:7;:18;;;;13262:14:::1;;;;;;;;;;;13248:28;;:10;:28;;;13240:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;13325:70;13346:6;13325:70;;;;;;;;;;;;;;;;;:9;:16;13335:5;;;;;;;;;;;13325:16;;;;;;;;;;;;;;;;:20;;:70;;;;;:::i;:::-;13306:9;:16;13316:5;;;;;;;;;;;13306:16;;;;;;;;;;;;;;;:89;;;;13423:26;13442:6;13423:9;:14;13433:3;13423:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;13406:9;:14;13416:3;13406:14;;;;;;;;;;;;;;;:43;;;;13475:34;13481:3;13486:22;7129:9;13486:6;:10;;:22;;;;:::i;:::-;13475:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;13527:5;13520:12;;5623:1:::0;6585:7;:22;;;;13141:399;;;;:::o;8912:98::-;8068:5;;;;;;;;;;;8054:19;;:10;:19;;;;:50;;;;;8099:4;8077:27;;:10;:27;;;;8054:50;8050:80;;;8106:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8050:80;8993:9:::1;8978:12;:24;;;;8912:98:::0;:::o;9188:86::-;9262:4;9238:21;;:28;;;;;;;;;;;;;;;;;;9188:86::o;332:181::-;390:7;410:9;426:1;422;:5;410:17;;451:1;446;:6;;438:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;504:1;497:8;;;332:181;;;;:::o;796:136::-;854:7;881:43;885:1;888;881:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;874:50;;796:136;;;;:::o;2633:132::-;2691:7;2718:39;2722:1;2725;2718:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2711:46;;2633:132;;;;:::o;1686:471::-;1744:7;1994:1;1989;:6;1985:47;;;2019:1;2012:8;;;;1985:47;2044:9;2060:1;2056;:5;2044:17;;2089:1;2084;2080;:5;;;;;;:10;2072:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2148:1;2141:8;;;1686:471;;;;;:::o;11470:813::-;11576:21;;;;;;;;;;;:55;;;;11616:15;11601:11;;:30;;11576:55;11568:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11716:6;11696:9;:17;11706:6;11696:17;;;;;;;;;;;;;;;;:26;11688:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11783:4;11761:27;;:10;:27;;;11758:132;;;11828:15;11813:11;;:30;;11805:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11758:132;11928:1;11910:20;;:6;:20;;;;11902:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12012:1;11991:23;;:9;:23;;;;11983:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12087;12109:6;12087:71;;;;;;;;;;;;;;;;;:9;:17;12097:6;12087:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;12067:9;:17;12077:6;12067:17;;;;;;;;;;;;;;;:91;;;;12192:32;12217:6;12192:9;:20;12202:9;12192:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;12169:9;:20;12179:9;12169:20;;;;;;;;;;;;;;;:55;;;;12257:9;12240:35;;12249:6;12240:35;;;12268:6;12240:35;;;;;;;;;;;;;;;;;;11470:813;;;:::o;9452:86::-;9525:5;9501:21;;:29;;;;;;;;;;;;;;;;;;9452:86::o;9102:78::-;9168:4;9148:17;;:24;;;;;;;;;;;;;;;;;;9102:78::o;9018:76::-;9082:4;9063:16;;:23;;;;;;;;;;;;;;;;;;9018:76::o;9282:::-;9345:5;9326:16;;:24;;;;;;;;;;;;;;;;;;9282:76::o;9366:78::-;9431:5;9411:17;;:25;;;;;;;;;;;;;;;;;;9366:78::o;1235:192::-;1321:7;1354:1;1349;:6;;1357:12;1341: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;1341:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1381:9;1397:1;1393;:5;1381:17;;1418:1;1411:8;;;1235:192;;;;;:::o;12291:797::-;12370:18;5667:1;6273:7;;:19;;6265:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5667:1;6406:7;:18;;;;12401:21:::1;:19;:21::i;:::-;12449:42;12478:12;;12450:22;7129:9;12450:6;:10;;:22;;;;:::i;:::-;12449:28;;:42;;;;:::i;:::-;12433:58;;12528:1;12512:12;;:17;;12504:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;12604:3;12578:22;7129:9;12578:6;:10;;:22;;;;:::i;:::-;:29;;12570:73;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;12686:13;12662:21;:37;12654:78;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;12753:10;:19;;:34;12773:13;12753:34;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;12753:34:0;12824:75;12850:6;12824:75;;;;;;;;;;;;;;;;;:9;:21;12834:10;12824:21;;;;;;;;;;;;;;;;:25;;:75;;;;;:::i;:::-;12800:9;:21;12810:10;12800:21;;;;;;;;;;;;;;;:99;;;;12929:28;12950:6;12929:9;:16;12939:5;;;;;;;;;;;12929:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;12910:9;:16;12920:5;;;;;;;;;;;12910:16;;;;;;;;;;;;;;;:47;;;;12999:10;12975:43;;12992:4;12975:43;;;13011:6;12975:43;;;;;;;;;;;;;;;;;;13029:20;:18;:20::i;:::-;13067:13;13060:20;;5623:1:::0;6585:7;:22;;;;12291:797;;;:::o;3261:278::-;3347:7;3379:1;3375;:5;3382:12;3367:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;3367:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3406:9;3422:1;3418;:5;;;;;;3406:17;;3530:1;3523:8;;;3261:278;;;;;:::o

Swarm Source

ipfs://17c39c13ea88ba4c1761121289c8d0f77307efb0331321572b72cb06124e13a7

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

BitCashPay is as an “All in One” crypto platform that offers a crypto bank, lending, Academy, fiat gateway, exchange & much more!

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.