ETH Price: $2,638.25 (+0.82%)
Gas: 9.21 Gwei

Contract

0xaFd5E3d298444511eC1ec9dAdD302Df573C51C9c
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw USDT119959542021-03-08 5:20:281318 days ago1615180828IN
0xaFd5E3d2...573C51C9c
0 ETH0.0039182486
Redeem118850332021-02-19 4:01:311335 days ago1613707291IN
0xaFd5E3d2...573C51C9c
0 ETH0.01618681148.14
Redeem118820182021-02-18 16:57:291336 days ago1613667449IN
0xaFd5E3d2...573C51C9c
0 ETH0.027463221
Approve118796782021-02-18 8:19:001336 days ago1613636340IN
0xaFd5E3d2...573C51C9c
0 ETH0.00383448167.00000145
0x60806040118337022021-02-11 6:44:101343 days ago1613025850IN
 Create: APIRedeem
0 ETH0.14930896109.00000145

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
APIRedeem

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-02-18
*/

pragma solidity ^0.5.16;

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

        return c;
    }

    function sub(uint a, uint b) internal pure returns (uint) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint a, uint b, string memory errorMessage) internal pure returns (uint) {
        require(b <= a, errorMessage);
        uint c = a - b;

        return c;
    }

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

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

        return c;
    }

    function div(uint a, uint b) internal pure returns (uint) {
        return div(a, b, "SafeMath: division by zero");
    }

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

        return c;
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        // solhint-disable-next-line no-inline-assembly
        assembly {codehash := extcodehash(account)}
        return (codehash != 0x0 && codehash != accountHash);
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint);

    function balanceOf(address account) external view returns (uint);

    function transfer(address recipient, uint amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint amount) external returns (bool);

    function transferFrom(address sender, address recipient, uint amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);
}

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

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

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

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

    function callOptionalReturn(IERC20 token, bytes memory data) private {
        require(address(token).isContract(), "SafeERC20: call to non-contract");

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

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

contract APIRedeem {
    using Address for address;
    using SafeMath for uint;
    using SafeERC20 for IERC20;

    address payable public owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    modifier onlyOwner {
        require(msg.sender == owner, "OnlyOwner methods called by non-owner.");
        _;
    }
    function transferOwnership(address payable newOwner) public onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }


    function withdrawFunds(address payable beneficiary, uint withdrawAmount) public onlyOwner {
        require(withdrawAmount <= address(this).balance, "Withdraw amount larger than balance.");
        beneficiary.transfer(withdrawAmount);
    }

    function withdrawAPI(address payable beneficiary, uint withdrawAmount) public onlyOwner {
        API.safeTransfer(beneficiary, withdrawAmount);
    }

    function withdrawUSDT(address payable beneficiary, uint withdrawAmount) public onlyOwner {
        USDT.safeTransfer(beneficiary, withdrawAmount);
    }
    
    function() external payable {
        if (msg.sender == owner) {
        }
    }

    event Redeem(address indexed player, uint sentUSDT, uint getAPI);

    IERC20 public API = IERC20(0x97F302E3c6096b2dE1185315b4FfC1F7d57C960b);
    IERC20 public USDT = IERC20(0xdAC17F958D2ee523a2206206994597C13D831ec7);

    mapping(address => uint) public redeemLimit;

    constructor () public {
        owner = msg.sender;
    }
    
    function setRedeemLimit(address _player, uint _limit) public onlyOwner {
        redeemLimit[_player] = _limit;
    }

    function redeem(address _referrer, uint _amount) public payable returns (bool) {
        require(_amount % 200e6 == 0, 'USDT value invalid');

        uint limit = redeemLimit[msg.sender].add(200e6);
        require(_amount <= limit, 'redeem value over limit');

        require(_referrer != msg.sender, "referrer is this address");
        require(_referrer != address(0), "referrer is the zero address");
        redeemLimit[_referrer] = redeemLimit[_referrer].add(200e6);


        uint sentUSDT = _amount;
        uint getAPI = sentUSDT.div(1e6).div(2).mul(1e18);
        USDT.safeTransferFrom(msg.sender, address(this), sentUSDT);
        API.safeTransfer(msg.sender, getAPI);
        emit Redeem(msg.sender, sentUSDT, getAPI);

        return true;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"player","type":"address"},{"indexed":false,"internalType":"uint256","name":"sentUSDT","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"getAPI","type":"uint256"}],"name":"Redeem","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"API","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"USDT","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_referrer","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"redeem","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"redeemLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_player","type":"address"},{"internalType":"uint256","name":"_limit","type":"uint256"}],"name":"setRedeemLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"beneficiary","type":"address"},{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"name":"withdrawAPI","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"beneficiary","type":"address"},{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"name":"withdrawFunds","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address payable","name":"beneficiary","type":"address"},{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"name":"withdrawUSDT","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

60806040527397f302e3c6096b2de1185315b4ffc1f7d57c960b600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073dac17f958d2ee523a2206206994597c13d831ec7600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156100ba57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506116b98061010a6000396000f3fe6080604052600436106100915760003560e01c80638da5cb5b116100595780638da5cb5b14610278578063c1075329146102cf578063c54e44eb1461032a578063c761b51b14610381578063f2fde38b146103dc57610091565b80631481794e146100a05780631e9a6950146100fb57806353121661146101615780635ad3d03a146101c65780637d7b009914610221575b6000809054906101000a905050005b3480156100ac57600080fd5b506100f9600480360360408110156100c357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061042d565b005b6101476004803603604081101561011157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610523565b604051808215151515815260200191505060405180910390f35b34801561016d57600080fd5b506101b06004803603602081101561018457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109a0565b6040518082815260200191505060405180910390f35b3480156101d257600080fd5b5061021f600480360360408110156101e957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109b8565b005b34801561022d57600080fd5b50610236610aae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028457600080fd5b5061028d610ad4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102db57600080fd5b50610328600480360360408110156102f257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610af9565b005b34801561033657600080fd5b5061033f610c42565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561038d57600080fd5b506103da600480360360408110156103a457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c68565b005b3480156103e857600080fd5b5061042b600480360360208110156103ff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d55565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b61051f8282600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b5050565b600080630bebc200838161053357fe5b06146105a7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f555344542076616c756520696e76616c6964000000000000000000000000000081525060200191505060405180910390fd5b60006105ff630bebc200600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100f90919063ffffffff16565b905080831115610677576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f72656465656d2076616c7565206f766572206c696d697400000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610719576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f726566657272657220697320746869732061646472657373000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156107bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726566657272657220697320746865207a65726f20616464726573730000000081525060200191505060405180910390fd5b610812630bebc200600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100f90919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000839050600061089f670de0b6b3a76400006108916002610883620f42408761109790919063ffffffff16565b61109790919063ffffffff16565b6110e190919063ffffffff16565b90506108f0333084600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611167909392919063ffffffff16565b61093d3382600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b3373ffffffffffffffffffffffffffffffffffffffff167fe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a9298383604051808381526020018281526020019250505060405180910390a26001935050505092915050565b60036020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b610aaa8282600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b5050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b9e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b47811115610bf7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806116616024913960400191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610c3d573d6000803e3d6000fd5b505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dfa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e80576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806115ca6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61100a838473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061126d565b505050565b60008082840190508381101561108d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60006110d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114b8565b905092915050565b6000808314156110f45760009050611161565b600082840290508284828161110557fe5b041461115c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806115f06021913960400191505060405180910390fd5b809150505b92915050565b611267848573ffffffffffffffffffffffffffffffffffffffff166323b872dd905060e01b858585604051602401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061126d565b50505050565b61128c8273ffffffffffffffffffffffffffffffffffffffff1661157e565b6112fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b6020831061134d578051825260208201915060208101905060208303925061132a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146113af576040519150601f19603f3d011682016040523d82523d6000602084013e6113b4565b606091505b50915091508161142c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b6000815111156114b25780806020019051602081101561144b57600080fd5b81019080805190602001909291905050506114b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180611611602a913960400191505060405180910390fd5b5b50505050565b60008083118290611564576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561152957808201518184015260208101905061150e565b50505050905090810190601f1680156115565780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161157057fe5b049050809150509392505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f91506000801b82141580156115c05750808214155b9250505091905056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644f6e6c794f776e6572206d6574686f64732063616c6c6564206279206e6f6e2d6f776e65722e576974686472617720616d6f756e74206c6172676572207468616e2062616c616e63652ea265627a7a72315820b25a6bd9f98fa56d80abbf35555b575f6416961fe4ef3c2989c89f7458ed8f7c64736f6c63430005110032

Deployed Bytecode

0x6080604052600436106100915760003560e01c80638da5cb5b116100595780638da5cb5b14610278578063c1075329146102cf578063c54e44eb1461032a578063c761b51b14610381578063f2fde38b146103dc57610091565b80631481794e146100a05780631e9a6950146100fb57806353121661146101615780635ad3d03a146101c65780637d7b009914610221575b6000809054906101000a905050005b3480156100ac57600080fd5b506100f9600480360360408110156100c357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061042d565b005b6101476004803603604081101561011157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610523565b604051808215151515815260200191505060405180910390f35b34801561016d57600080fd5b506101b06004803603602081101561018457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109a0565b6040518082815260200191505060405180910390f35b3480156101d257600080fd5b5061021f600480360360408110156101e957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109b8565b005b34801561022d57600080fd5b50610236610aae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561028457600080fd5b5061028d610ad4565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102db57600080fd5b50610328600480360360408110156102f257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610af9565b005b34801561033657600080fd5b5061033f610c42565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561038d57600080fd5b506103da600480360360408110156103a457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c68565b005b3480156103e857600080fd5b5061042b600480360360208110156103ff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d55565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b61051f8282600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b5050565b600080630bebc200838161053357fe5b06146105a7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f555344542076616c756520696e76616c6964000000000000000000000000000081525060200191505060405180910390fd5b60006105ff630bebc200600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100f90919063ffffffff16565b905080831115610677576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f72656465656d2076616c7565206f766572206c696d697400000000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415610719576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f726566657272657220697320746869732061646472657373000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156107bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726566657272657220697320746865207a65726f20616464726573730000000081525060200191505060405180910390fd5b610812630bebc200600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461100f90919063ffffffff16565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000839050600061089f670de0b6b3a76400006108916002610883620f42408761109790919063ffffffff16565b61109790919063ffffffff16565b6110e190919063ffffffff16565b90506108f0333084600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611167909392919063ffffffff16565b61093d3382600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b3373ffffffffffffffffffffffffffffffffffffffff167fe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a9298383604051808381526020018281526020019250505060405180910390a26001935050505092915050565b60036020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a5d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b610aaa8282600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f3e9092919063ffffffff16565b5050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b9e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b47811115610bf7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806116616024913960400191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610c3d573d6000803e3d6000fd5b505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d0d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dfa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018061163b6026913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e80576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806115ca6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61100a838473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061126d565b505050565b60008082840190508381101561108d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60006110d983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114b8565b905092915050565b6000808314156110f45760009050611161565b600082840290508284828161110557fe5b041461115c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806115f06021913960400191505060405180910390fd5b809150505b92915050565b611267848573ffffffffffffffffffffffffffffffffffffffff166323b872dd905060e01b858585604051602401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061126d565b50505050565b61128c8273ffffffffffffffffffffffffffffffffffffffff1661157e565b6112fe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b6020831061134d578051825260208201915060208101905060208303925061132a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146113af576040519150601f19603f3d011682016040523d82523d6000602084013e6113b4565b606091505b50915091508161142c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b6000815111156114b25780806020019051602081101561144b57600080fd5b81019080805190602001909291905050506114b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180611611602a913960400191505060405180910390fd5b5b50505050565b60008083118290611564576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561152957808201518184015260208101905061150e565b50505050905090810190601f1680156115565780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161157057fe5b049050809150509392505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f91506000801b82141580156115c05750808214155b9250505091905056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565644f6e6c794f776e6572206d6574686f64732063616c6c6564206279206e6f6e2d6f776e65722e576974686472617720616d6f756e74206c6172676572207468616e2062616c616e63652ea265627a7a72315820b25a6bd9f98fa56d80abbf35555b575f6416961fe4ef3c2989c89f7458ed8f7c64736f6c63430005110032

Deployed Bytecode Sourcemap

3684:2560:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4947:5;;;;;;;;;;3684:2560;4724:154;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4724:154:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4724:154:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5461:778;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5461:778:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5211:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5211:43:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5211:43:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4564:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4564:152:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4564:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5054:70;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5054:70:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3807:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3807:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4312:244;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4312:244:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4312:244:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5131:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5131:71:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5334:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5334:119:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5334:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4060:242;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4060:242:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4060:242:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;4724:154;3986:5;;;;;;;;;;;3972:19;;:10;:19;;;3964:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4824:46;4842:11;4855:14;4824:4;;;;;;;;;;;:17;;;;:46;;;;;:::i;:::-;4724:154;;:::o;5461:778::-;5534:4;5578:1;5569:5;5559:7;:15;;;;;;:20;5551:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5615:10;5628:34;5656:5;5628:11;:23;5640:10;5628:23;;;;;;;;;;;;;;;;:27;;:34;;;;:::i;:::-;5615:47;;5692:5;5681:7;:16;;5673:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5759:10;5746:23;;:9;:23;;;;5738:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5838:1;5817:23;;:9;:23;;;;5809:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5909:33;5936:5;5909:11;:22;5921:9;5909:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;5884:11;:22;5896:9;5884:22;;;;;;;;;;;;;;;:58;;;;5957:13;5973:7;5957:23;;5991:11;6005:34;6034:4;6005:24;6027:1;6005:17;6018:3;6005:8;:12;;:17;;;;:::i;:::-;:21;;:24;;;;:::i;:::-;:28;;:34;;;;:::i;:::-;5991:48;;6050:58;6072:10;6092:4;6099:8;6050:4;;;;;;;;;;;:21;;;;:58;;;;;;:::i;:::-;6119:36;6136:10;6148:6;6119:3;;;;;;;;;;;:16;;;;:36;;;;;:::i;:::-;6178:10;6171:36;;;6190:8;6200:6;6171:36;;;;;;;;;;;;;;;;;;;;;;;;6227:4;6220:11;;;;;5461:778;;;;:::o;5211:43::-;;;;;;;;;;;;;;;;;:::o;4564:152::-;3986:5;;;;;;;;;;;3972:19;;:10;:19;;;3964:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4663:45;4680:11;4693:14;4663:3;;;;;;;;;;;:16;;;;:45;;;;;:::i;:::-;4564:152;;:::o;5054:70::-;;;;;;;;;;;;;:::o;3807:28::-;;;;;;;;;;;;;:::o;4312:244::-;3986:5;;;;;;;;;;;3972:19;;:10;:19;;;3964:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4439:21;4421:14;:39;;4413:88;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4512:11;:20;;:36;4533:14;4512:36;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4512:36:0;4312:244;;:::o;5131:71::-;;;;;;;;;;;;;:::o;5334:119::-;3986:5;;;;;;;;;;;3972:19;;:10;:19;;;3964:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5439:6;5416:11;:20;5428:7;5416:20;;;;;;;;;;;;;;;:29;;;;5334:119;;:::o;4060:242::-;3986:5;;;;;;;;;;;3972:19;;:10;:19;;;3964:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4169:1;4149:22;;:8;:22;;;;4141:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4258:8;4230:37;;4251:5;;;;;;;;;;;4230:37;;;;;;;;;;;;4286:8;4278:5;;:16;;;;;;;;;;;;;;;;;;4060:242;:::o;2338:173::-;2418:85;2437:5;2467;:14;;;:23;;;;2492:2;2496:5;2444:58;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2444:58:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;2444:58:0;2418:18;:85::i;:::-;2338:173;;;:::o;52:169::-;104:4;121:6;134:1;130;:5;121:14;;159:1;154;:6;;146:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;212:1;205:8;;;52:169;;;;:::o;798:123::-;850:4;874:39;878:1;881;874:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;867:46;;798:123;;;;:::o;552:238::-;604:4;630:1;625;:6;621:47;;;655:1;648:8;;;;621:47;680:6;693:1;689;:5;680:14;;722:1;717;713;:5;;;;;;:10;705:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;781:1;774:8;;;552:238;;;;;:::o;2519:201::-;2617:95;2636:5;2666;:18;;;:27;;;;2695:4;2701:2;2705:5;2643:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;2643:68:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;2643:68:0;2617:18;:95::i;:::-;2519:201;;;;:::o;3080:597::-;3168:27;3176:5;3168:25;;;:27::i;:::-;3160:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3305:12;3319:23;3354:5;3346:19;;3366:4;3346:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;3346:25:0;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;3304:67:0;;;;3390:7;3382:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3471:1;3451:10;:17;:21;3447:223;;;3592:10;3581:30;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3581:30:0;;;;;;;;;;;;;;;;3573:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3447:223;3080:597;;;;:::o;929:246::-;1009:4;1105:1;1101;:5;1108:12;1093: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;1093:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1132:6;1145:1;1141;:5;;;;;;1132:14;;1166:1;1159:8;;;929:246;;;;;:::o;1205:372::-;1265:4;1282:16;1309:19;1331:66;1309:88;;;;1499:7;1487:20;1475:32;;1538:3;1526:15;;:8;:15;;:42;;;;;1557:11;1545:8;:23;;1526:42;1518:51;;;;1205:372;;;:::o

Swarm Source

bzzr://b25a6bd9f98fa56d80abbf35555b575f6416961fe4ef3c2989c89f7458ed8f7c

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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.