Contract 0xF03F3d2FbeE37F92eC91aE927a8019CACef4b738

 
 
Txn Hash
Method
Block
From
To
Value
0x2a5d1e06ecbbccc153fe4b404b0a2aa48d6c60889023e5795ab1278067c2d4cdApprove126326332021-06-14 12:45:20540 days 20 hrs ago0x5c5a4ae893c4232a050b01a84e193e107dd80ca2 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.000174312
0xe2942e98a80a24c89d8542960af2b1b4b406d6aa192f025e85102a922586f2a7Approve126323782021-06-14 11:47:15540 days 21 hrs ago0x17080b589cdcbd10ebeaa24cb0096f4bb29eb52b IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0001888213
0x5bfe62faee0d416e6bc3383ba167b3422276693d2cde1d1b58cb2727c72bcf1eApprove125454432021-06-01 0:45:06554 days 8 hrs agoENS Name 1912212.eth IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0004507131.03
0x307c2506b4c1988689ae82e88ae6a261c5f96365acbd0eb6884963f6137db221Approve123447032021-04-30 23:09:03585 days 10 hrs ago0xea3e37f7635a498fad249e4abdaa6b1fdcbdd8dd IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0018613640
0xdf643e4b0126b36a7700e55ee45e6befa7c0f7d0bc2393219f5f3bb3b30a04c6Approve119548022021-03-01 21:36:04645 days 12 hrs ago0xe778f8b38d50a9aaa115d03b620f9814b5feb637 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0015106104
0xace2c1ba80387a571323ec417c80eebf9e2d4d5e4862a886214b99a572884fffApprove119455092021-02-28 11:23:21646 days 22 hrs ago0xd0d628acf9e985c94a4542cae88e0af7b2378c81 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0011329578
0xff300d57749be402447f6c3503e452368ce588eff2a56001a0ba426d58d26771Approve119180492021-02-24 5:43:24651 days 3 hrs ago0x4e3d7d6e2cf9ee3dfa06595cb3b0725fd94f579a IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00524321118
0x06709ef66f487dd9a7bca7e0546692634d057bc88ff964db35b101e66cf3fb34Approve119152242021-02-23 19:18:51651 days 14 hrs ago0x3f416b3329783748a7317026bb1a32ea9372f2f7 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00710944160
0x9ab5109b7a78b77d96cf8272cd1d7a85262c020123241fd9a1022469159f2157Approve118736302021-02-17 9:49:16657 days 23 hrs ago0xc33144cd664c9411c4165e492f0912ccda20ddb0 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0039101988
0xbab04fb9513b71b688423d4170fdf112fa9f7304335ad3ed576d87b0c5834b70Approve118502722021-02-13 19:53:15661 days 13 hrs agoENS Name andrewabranches.eth IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00862019194
0x3ff65d8871364af5b000a3ff46a122837354793d088fe3310d0c7e295cab8a08Approve118176582021-02-08 19:24:48666 days 14 hrs ago0x82286c1ddcc65e159f6887c4664110fad764c54b IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.01417318.9
0x7d8b8ff54081a1b9d4fbdbdc3d0dc8b242d1ced125d7900eb9d914abed6eceafApprove118039972021-02-06 16:59:25668 days 16 hrs ago0xd677adc126101dca9ca00ef39c312a2f73159120 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00307854122
0x18a0ec47e15cad3fc2b5f8c1da647279c26cda7379f648873563ff0ef258c66bApprove118039952021-02-06 16:59:09668 days 16 hrs ago0xd677adc126101dca9ca00ef39c312a2f73159120 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00542094122
0xa907a6390c862a6dd52c692c8019e46dd3a14b65b0af5db77f5b58708863df0dApprove118012442021-02-06 6:50:08669 days 2 hrs ago0xf9c45b6e9a9c2d58dedc192f3eee627dde5d9a3f IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00175752121.00000145
0x601ff53c4457420ea6b11b0ed9d640c9ffd2069436984c649dd4ba33e15ab3a2Approve118012212021-02-06 6:43:32669 days 2 hrs ago0xf9c45b6e9a9c2d58dedc192f3eee627dde5d9a3f IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00542094122.00000145
0xd794b4cd0401b61f68928108bbe35bfd64fa9dbe3c69b7f046d93e3afe7fbc5fApprove117890652021-02-04 9:50:36670 days 23 hrs ago0x488e52dea48556a32187bc38fafde153e536c4c8 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00688727155.00000145
0xc0d4d50cfc418c59951b00a1668633a6e3c347c11999c89eaf50932febcc6950Approve117877362021-02-04 5:01:35671 days 4 hrs ago0x62eecd8f1e3ddabcd63937c268ca3659b88a198d IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00595415134
0xbb22adb26c1df2e5d9061282d3fdedd5883efa502d89f57cb44e591490deda91Approve117837672021-02-03 14:10:30671 days 19 hrs ago0xf919e7804dc4c413f5c3f523f293b60e4dc8ed7c IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00573198129
0x8073383c15e0a98b0bbc7ca0eb78a035ab7341c3cd351dcb349fe3c06a928990Approve117747672021-02-02 4:50:10673 days 4 hrs agoENS Name pristina.eth IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0042212395
0xc58f31a0ab7a4f128ae841052520284068b5c921ed753e3bcb229f2bb336b26eApprove117745892021-02-02 4:11:41673 days 5 hrs ago0x3922c12908e7a4dfee8922583af7562f7dbf9962 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.004399499.0098
0xc94abfe3388bb0b835e432cbcffc9bd0a0fb9723d8b85b648fcddc4d9a63e070Approve117715992021-02-01 17:14:45673 days 16 hrs ago0x55a2f4ee76f9e34f683ff73827f924866f472a84 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0040523891.2
0x6a42ace3dd3ded012f1f566c8fa382c446f2998ba689672e4dd130433e6111b7Approve117714762021-02-01 16:46:01673 days 16 hrs ago0x065823e171f037b889c4e1029e8aa34d6b134307 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00804255181
0x166717ec2a6d9889a2f13277383067ad6f45a851b2e74c2c9e1c48c4d98cfe07Approve117698042021-02-01 10:32:47673 days 23 hrs ago0x238f24101876377e9178d125d0747de7fad9c3b2 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.0034214177
0x1c37c2b77103ae7da2de95c940f8710c5b314802cc532430b4758ad2dcf0cc6cApprove117670222021-02-01 0:17:39674 days 9 hrs ago0x1bea8e330c8eccfdca0f6b1593e800da24026ab7 IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00724274163
0x025cc65d2a8b26993986b9325c434ed5698ed29a97108725c820696d096d6f3aApprove117655172021-01-31 18:49:12674 days 14 hrs ago0xd6293058080c5f03c5c8b954ea87a5cf2d57d74c IN  0xf03f3d2fbee37f92ec91ae927a8019cacef4b7380 Ether0.00559868126
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0xff29e84f300d47a00bc271551e5919b48dae0df8acd919b851c3667444f0f62f107237592020-08-24 14:53:26834 days 18 hrs ago DODO: LINK-USDC  Contract Creation0 Ether
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xc11eccdee225d644f873776a68a02ecd8c015697

Contract Name:
DODOLpToken

Compiler Version
v0.6.9+commit.3e3065ac

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Apache-2.0 license
/**
 *Submitted for verification at Etherscan.io on 2020-09-30
*/

// File: contracts/intf/IERC20.sol

/*

    Copyright 2020 DODO ZOO.
    SPDX-License-Identifier: Apache-2.0

*/

pragma solidity 0.6.9;
pragma experimental ABIEncoderV2;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    function decimals() external view returns (uint8);

    function name() external view returns (string memory);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
}

// File: contracts/lib/SafeMath.sol

/*

    Copyright 2020 DODO ZOO.

*/



/**
 * @title SafeMath
 * @author DODO Breeder
 *
 * @notice Math operations with safety checks that revert on error
 */
library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "MUL_ERROR");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "DIVIDING_ERROR");
        return a / b;
    }

    function divCeil(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 quotient = div(a, b);
        uint256 remainder = a - quotient * b;
        if (remainder > 0) {
            return quotient + 1;
        } else {
            return quotient;
        }
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SUB_ERROR");
        return a - b;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "ADD_ERROR");
        return c;
    }

    function sqrt(uint256 x) internal pure returns (uint256 y) {
        uint256 z = x / 2 + 1;
        y = x;
        while (z < y) {
            y = z;
            z = (x / z + z) / 2;
        }
    }
}

// File: contracts/lib/Ownable.sol

/*

    Copyright 2020 DODO ZOO.

*/


/**
 * @title Ownable
 * @author DODO Breeder
 *
 * @notice Ownership related functions
 */
contract Ownable {
    address public _OWNER_;
    address public _NEW_OWNER_;

    // ============ Events ============

    event OwnershipTransferPrepared(address indexed previousOwner, address indexed newOwner);

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    // ============ Modifiers ============

    modifier onlyOwner() {
        require(msg.sender == _OWNER_, "NOT_OWNER");
        _;
    }

    // ============ Functions ============

    constructor() internal {
        _OWNER_ = msg.sender;
        emit OwnershipTransferred(address(0), _OWNER_);
    }

    function transferOwnership(address newOwner) external onlyOwner {
        require(newOwner != address(0), "INVALID_OWNER");
        emit OwnershipTransferPrepared(_OWNER_, newOwner);
        _NEW_OWNER_ = newOwner;
    }

    function claimOwnership() external {
        require(msg.sender == _NEW_OWNER_, "INVALID_CLAIM");
        emit OwnershipTransferred(_OWNER_, _NEW_OWNER_);
        _OWNER_ = _NEW_OWNER_;
        _NEW_OWNER_ = address(0);
    }
}

// File: contracts/impl/DODOLpToken.sol

/*

    Copyright 2020 DODO ZOO.

*/





/**
 * @title DODOLpToken
 * @author DODO Breeder
 *
 * @notice Tokenize liquidity pool assets. An ordinary ERC20 contract with mint and burn functions
 */
contract DODOLpToken is Ownable {
    using SafeMath for uint256;

    string public symbol = "DLP";
    address public originToken;

    uint256 public totalSupply;
    mapping(address => uint256) internal balances;
    mapping(address => mapping(address => uint256)) internal allowed;

    // ============ Events ============

    event Transfer(address indexed from, address indexed to, uint256 amount);

    event Approval(address indexed owner, address indexed spender, uint256 amount);

    event Mint(address indexed user, uint256 value);

    event Burn(address indexed user, uint256 value);

    // ============ Functions ============

    constructor(address _originToken) public {
        originToken = _originToken;
    }

    function name() public view returns (string memory) {
        string memory lpTokenSuffix = "_DODO_LP_TOKEN_";
        return string(abi.encodePacked(IERC20(originToken).name(), lpTokenSuffix));
    }

    function decimals() public view returns (uint8) {
        return IERC20(originToken).decimals();
    }

    /**
     * @dev transfer token for a specified address
     * @param to The address to transfer to.
     * @param amount The amount to be transferred.
     */
    function transfer(address to, uint256 amount) public returns (bool) {
        require(amount <= balances[msg.sender], "BALANCE_NOT_ENOUGH");

        balances[msg.sender] = balances[msg.sender].sub(amount);
        balances[to] = balances[to].add(amount);
        emit Transfer(msg.sender, to, amount);
        return true;
    }

    /**
     * @dev Gets the balance of the specified address.
     * @param owner The address to query the the balance of.
     * @return balance An uint256 representing the amount owned by the passed address.
     */
    function balanceOf(address owner) external view returns (uint256 balance) {
        return balances[owner];
    }

    /**
     * @dev Transfer tokens from one address to another
     * @param from address The address which you want to send tokens from
     * @param to address The address which you want to transfer to
     * @param amount uint256 the amount of tokens to be transferred
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public returns (bool) {
        require(amount <= balances[from], "BALANCE_NOT_ENOUGH");
        require(amount <= allowed[from][msg.sender], "ALLOWANCE_NOT_ENOUGH");

        balances[from] = balances[from].sub(amount);
        balances[to] = balances[to].add(amount);
        allowed[from][msg.sender] = allowed[from][msg.sender].sub(amount);
        emit Transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
     * @param spender The address which will spend the funds.
     * @param amount The amount of tokens to be spent.
     */
    function approve(address spender, uint256 amount) public returns (bool) {
        allowed[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    /**
     * @dev Function to check the amount of tokens that an owner allowed to a spender.
     * @param owner address The address which owns the funds.
     * @param spender address The address which will spend the funds.
     * @return A uint256 specifying the amount of tokens still available for the spender.
     */
    function allowance(address owner, address spender) public view returns (uint256) {
        return allowed[owner][spender];
    }

    function mint(address user, uint256 value) external onlyOwner {
        balances[user] = balances[user].add(value);
        totalSupply = totalSupply.add(value);
        emit Mint(user, value);
        emit Transfer(address(0), user, value);
    }

    function burn(address user, uint256 value) external onlyOwner {
        balances[user] = balances[user].sub(value);
        totalSupply = totalSupply.sub(value);
        emit Burn(user, value);
        emit Transfer(user, address(0), value);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_originToken","type":"address"}],"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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferPrepared","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_NEW_OWNER_","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_OWNER_","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"originToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60c060405260036080819052620444c560ec1b60a0908152620000269160029190620000c6565b503480156200003457600080fd5b506040516200102d3803806200102d83398101604081905262000057916200016b565b600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600380546001600160a01b0319166001600160a01b03929092169190911790556200019b565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200010957805160ff191683800117855562000139565b8280016001018555821562000139579182015b82811115620001395782518255916020019190600101906200011c565b50620001479291506200014b565b5090565b6200016891905b8082111562000147576000815560010162000152565b90565b6000602082840312156200017d578081fd5b81516001600160a01b038116811462000194578182fd5b9392505050565b610e8280620001ab6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80634e71e0c8116100975780639dc29fac116100665780639dc29fac146101dd578063a9059cbb146101f0578063dd62ed3e14610203578063f2fde38b1461021657610100565b80634e71e0c8146101b257806370a08231146101ba5780638456db15146101cd57806395d89b41146101d557610100565b806318160ddd116100d357806318160ddd1461016057806323b872dd14610175578063313ce5671461018857806340c10f191461019d57610100565b806306fdde0314610105578063095ea7b31461012357806313096a411461014357806316048bc414610158575b600080fd5b61010d610229565b60405161011a9190610c89565b60405180910390f35b610136610131366004610b56565b6102f6565b60405161011a9190610c7e565b61014b610361565b60405161011a9190610c6a565b61014b610370565b61016861037f565b60405161011a9190610dcd565b610136610183366004610b16565b610385565b610190610509565b60405161011a9190610dd6565b6101b06101ab366004610b56565b61058b565b005b6101b061068e565b6101686101c8366004610ac7565b61071c565b61014b610737565b61010d610746565b6101b06101eb366004610b56565b6107d1565b6101366101fe366004610b56565b6108c8565b610168610211366004610ae2565b610986565b6101b0610224366004610ac7565b6109b1565b604080518082018252600f81526e5f444f444f5f4c505f544f4b454e5f60881b602082015260035482516306fdde0360e01b815292516060936001600160a01b03909216916306fdde03916004808301926000929190829003018186803b15801561029357600080fd5b505afa1580156102a7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102cf9190810190610b80565b816040516020016102e1929190610c3c565b60405160208183030381529060405291505090565b3360008181526006602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061034f908690610dcd565b60405180910390a35060015b92915050565b6003546001600160a01b031681565b6000546001600160a01b031681565b60045481565b6001600160a01b0383166000908152600560205260408120548211156103c65760405162461bcd60e51b81526004016103bd90610d5b565b60405180910390fd5b6001600160a01b03841660009081526006602090815260408083203384529091529020548211156104095760405162461bcd60e51b81526004016103bd90610ce3565b6001600160a01b038416600090815260056020526040902054610432908363ffffffff610a5c16565b6001600160a01b038086166000908152600560205260408082209390935590851681522054610467908363ffffffff610a8416565b6001600160a01b0380851660009081526005602090815260408083209490945591871681526006825282812033825290915220546104ab908363ffffffff610a5c16565b6001600160a01b038086166000818152600660209081526040808320338452909152908190209390935591519085169190600080516020610e2d833981519152906104f7908690610dcd565b60405180910390a35060019392505050565b6003546040805163313ce56760e01b815290516000926001600160a01b03169163313ce567916004808301926020929190829003018186803b15801561054e57600080fd5b505afa158015610562573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105869190610c1b565b905090565b6000546001600160a01b031633146105b55760405162461bcd60e51b81526004016103bd90610d87565b6001600160a01b0382166000908152600560205260409020546105de908263ffffffff610a8416565b6001600160a01b03831660009081526005602052604090205560045461060a908263ffffffff610a8416565b6004556040516001600160a01b038316907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688590610648908490610dcd565b60405180910390a2816001600160a01b031660006001600160a01b0316600080516020610e2d833981519152836040516106829190610dcd565b60405180910390a35050565b6001546001600160a01b031633146106b85760405162461bcd60e51b81526004016103bd90610cbc565b600154600080546040516001600160a01b0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360018054600080546001600160a01b03199081166001600160a01b03841617909155169055565b6001600160a01b031660009081526005602052604090205490565b6001546001600160a01b031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107c95780601f1061079e576101008083540402835291602001916107c9565b820191906000526020600020905b8154815290600101906020018083116107ac57829003601f168201915b505050505081565b6000546001600160a01b031633146107fb5760405162461bcd60e51b81526004016103bd90610d87565b6001600160a01b038216600090815260056020526040902054610824908263ffffffff610a5c16565b6001600160a01b038316600090815260056020526040902055600454610850908263ffffffff610a5c16565b6004556040516001600160a01b038316907fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59061088e908490610dcd565b60405180910390a260006001600160a01b0316826001600160a01b0316600080516020610e2d833981519152836040516106829190610dcd565b336000908152600560205260408120548211156108f75760405162461bcd60e51b81526004016103bd90610d5b565b33600090815260056020526040902054610917908363ffffffff610a5c16565b33600090815260056020526040808220929092556001600160a01b03851681522054610949908363ffffffff610a8416565b6001600160a01b038416600081815260056020526040908190209290925590513390600080516020610e2d8339815191529061034f908690610dcd565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b6000546001600160a01b031633146109db5760405162461bcd60e51b81526004016103bd90610d87565b6001600160a01b038116610a015760405162461bcd60e51b81526004016103bd90610d34565b600080546040516001600160a01b03808516939216917fdcf55418cee3220104fef63f979ff3c4097ad240c0c43dcb33ce837748983e6291a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b600082821115610a7e5760405162461bcd60e51b81526004016103bd90610d11565b50900390565b600082820183811015610aa95760405162461bcd60e51b81526004016103bd90610daa565b9392505050565b80356001600160a01b038116811461035b57600080fd5b600060208284031215610ad8578081fd5b610aa98383610ab0565b60008060408385031215610af4578081fd5b610afe8484610ab0565b9150610b0d8460208501610ab0565b90509250929050565b600080600060608486031215610b2a578081fd5b8335610b3581610e14565b92506020840135610b4581610e14565b929592945050506040919091013590565b60008060408385031215610b68578182fd5b610b728484610ab0565b946020939093013593505050565b600060208284031215610b91578081fd5b815167ffffffffffffffff80821115610ba8578283fd5b81840185601f820112610bb9578384fd5b8051925081831115610bc9578384fd5b604051601f8401601f191681016020018381118282101715610be9578586fd5b604052838152818401602001871015610c00578485fd5b610c11846020830160208501610de4565b9695505050505050565b600060208284031215610c2c578081fd5b815160ff81168114610aa9578182fd5b60008351610c4e818460208801610de4565b8351908301610c61828260208801610de4565b01949350505050565b6001600160a01b0391909116815260200190565b901515815260200190565b6000602082528251806020840152610ca8816040850160208701610de4565b601f01601f19169190910160400192915050565b6020808252600d908201526c494e56414c49445f434c41494d60981b604082015260600190565b60208082526014908201527308298989eae829c868abe9c9ea8be8a9c9eaa8e960631b604082015260600190565b60208082526009908201526829aaa12fa2a92927a960b91b604082015260600190565b6020808252600d908201526c24a72b20a624a22fa7aba722a960991b604082015260600190565b6020808252601290820152710848298829c868abe9c9ea8be8a9c9eaa8e960731b604082015260600190565b6020808252600990820152682727aa2fa7aba722a960b91b604082015260600190565b60208082526009908201526820a2222fa2a92927a960b91b604082015260600190565b90815260200190565b60ff91909116815260200190565b60005b83811015610dff578181015183820152602001610de7565b83811115610e0e576000848401525b50505050565b6001600160a01b0381168114610e2957600080fd5b5056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220841bccf74b44eca30e990eb033f46ce3d579e580f6773f839326e8d16131a6b264736f6c63430006090033000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2

Deployed ByteCode Sourcemap

5552:4198:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6317:203;;;:::i;:::-;;;;;;;;;;;;;;;;8555;;;;;;;;;:::i;:::-;;;;;;;;5661:26;;;:::i;:::-;;;;;;;;4208:22;;;:::i;5696:26::-;;;:::i;:::-;;;;;;;;7786:519;;;;;;;;;:::i;6528:104::-;;;:::i;:::-;;;;;;;;9235:252;;;;;;;;;:::i;:::-;;5058:230;;;:::i;7376:115::-;;;;;;;;;:::i;4237:26::-;;;:::i;5626:28::-;;;:::i;9495:252::-;;;;;;;;;:::i;6808:336::-;;;;;;;;;:::i;9097:130::-;;;;;;;;;:::i;4826:224::-;;;;;;;;;:::i;6317:203::-;6380:47;;;;;;;;;;;-1:-1:-1;;;6380:47:0;;;;6476:11;;6469:26;;-1:-1:-1;;;6469:26:0;;;;6354:13;;-1:-1:-1;;;;;6476:11:0;;;;6469:24;;:26;;;;;-1:-1:-1;;6469:26:0;;;;;;;6476:11;6469:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6469:26:0;;;;;;;;;;;;;;6497:13;6452:59;;;;;;;;;;;;;;;;;;;;;;;6438:74;;;6317:203;:::o;8555:::-;8646:10;8621:4;8638:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;8638:28:0;;;;;;;;;;:37;;;8691;8621:4;;8638:28;;8691:37;;;;8669:6;;8691:37;;;;;;;;;;-1:-1:-1;8746:4:0;8555:203;;;;;:::o;5661:26::-;;;-1:-1:-1;;;;;5661:26:0;;:::o;4208:22::-;;;-1:-1:-1;;;;;4208:22:0;;:::o;5696:26::-;;;;:::o;7786:519::-;-1:-1:-1;;;;;7935:14:0;;7900:4;7935:14;;;:8;:14;;;;;;7925:24;;;7917:55;;;;-1:-1:-1;;;7917:55:0;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8001:13:0;;;;;;:7;:13;;;;;;;;8015:10;8001:25;;;;;;;;7991:35;;;7983:68;;;;-1:-1:-1;;;7983:68:0;;;;;;;;;-1:-1:-1;;;;;8081:14:0;;;;;;:8;:14;;;;;;:26;;8100:6;8081:26;:18;:26;:::i;:::-;-1:-1:-1;;;;;8064:14:0;;;;;;;:8;:14;;;;;;:43;;;;8133:12;;;;;;;:24;;8150:6;8133:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;8118:12:0;;;;;;;:8;:12;;;;;;;;:39;;;;8196:13;;;;;:7;:13;;;;;8210:10;8196:25;;;;;;;:37;;8226:6;8196:37;:29;:37;:::i;:::-;-1:-1:-1;;;;;8168:13:0;;;;;;;:7;:13;;;;;;;;8182:10;8168:25;;;;;;;;;:65;;;;8249:26;;;;;;8168:13;-1:-1:-1;;;;;;;;;;;8249:26:0;;;8268:6;;8249:26;;;;;;;;;;-1:-1:-1;8293:4:0;7786:519;;;;;:::o;6528:104::-;6601:11;;6594:30;;;-1:-1:-1;;;6594:30:0;;;;6569:5;;-1:-1:-1;;;;;6601:11:0;;6594:28;;:30;;;;;;;;;;;;;;6601:11;6594:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6587:37;;6528:104;:::o;9235:252::-;4604:7;;-1:-1:-1;;;;;4604:7:0;4590:10;:21;4582:43;;;;-1:-1:-1;;;4582:43:0;;;;;;;;;-1:-1:-1;;;;;9325:14:0;::::1;;::::0;;;:8:::1;:14;::::0;;;;;:25:::1;::::0;9344:5;9325:25:::1;:18;:25;:::i;:::-;-1:-1:-1::0;;;;;9308:14:0;::::1;;::::0;;;:8:::1;:14;::::0;;;;:42;9375:11:::1;::::0;:22:::1;::::0;9391:5;9375:22:::1;:15;:22;:::i;:::-;9361:11;:36:::0;9413:17:::1;::::0;-1:-1:-1;;;;;9413:17:0;::::1;::::0;::::1;::::0;::::1;::::0;9424:5;;9413:17:::1;;;;;;;;;;9467:4;-1:-1:-1::0;;;;;9446:33:0::1;9463:1;-1:-1:-1::0;;;;;9446:33:0::1;-1:-1:-1::0;;;;;;;;;;;9473:5:0::1;9446:33;;;;;;;;;;;;;;;9235:252:::0;;:::o;5058:230::-;5126:11;;-1:-1:-1;;;;;5126:11:0;5112:10;:25;5104:51;;;;-1:-1:-1;;;5104:51:0;;;;;;;;;5201:11;;;5192:7;;5171:42;;-1:-1:-1;;;;;5201:11:0;;;;5192:7;;;;5171:42;;;5234:11;;;;5224:21;;-1:-1:-1;;;;;;5224:21:0;;;-1:-1:-1;;;;;5234:11:0;;5224:21;;;;5256:24;;;5058:230::o;7376:115::-;-1:-1:-1;;;;;7468:15:0;7433;7468;;;:8;:15;;;;;;;7376:115::o;4237:26::-;;;-1:-1:-1;;;;;4237:26:0;;:::o;5626:28::-;;;;;;;;;;;;;;-1:-1:-1;;5626:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9495:252::-;4604:7;;-1:-1:-1;;;;;4604:7:0;4590:10;:21;4582:43;;;;-1:-1:-1;;;4582:43:0;;;;;;;;;-1:-1:-1;;;;;9585:14:0;::::1;;::::0;;;:8:::1;:14;::::0;;;;;:25:::1;::::0;9604:5;9585:25:::1;:18;:25;:::i;:::-;-1:-1:-1::0;;;;;9568:14:0;::::1;;::::0;;;:8:::1;:14;::::0;;;;:42;9635:11:::1;::::0;:22:::1;::::0;9651:5;9635:22:::1;:15;:22;:::i;:::-;9621:11;:36:::0;9673:17:::1;::::0;-1:-1:-1;;;;;9673:17:0;::::1;::::0;::::1;::::0;::::1;::::0;9684:5;;9673:17:::1;;;;;;;;;;9729:1;-1:-1:-1::0;;;;;9706:33:0::1;9715:4;-1:-1:-1::0;;;;;9706:33:0::1;-1:-1:-1::0;;;;;;;;;;;9733:5:0::1;9706:33;;;;;;;6808:336:::0;6914:10;6870:4;6905:20;;;:8;:20;;;;;;6895:30;;;6887:61;;;;-1:-1:-1;;;6887:61:0;;;;;;;;;6993:10;6984:20;;;;:8;:20;;;;;;:32;;7009:6;6984:32;:24;:32;:::i;:::-;6970:10;6961:20;;;;:8;:20;;;;;;:55;;;;-1:-1:-1;;;;;7042:12:0;;;;;;:24;;7059:6;7042:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;7027:12:0;;;;;;:8;:12;;;;;;;:39;;;;7082:32;;7091:10;;-1:-1:-1;;;;;;;;;;;7082:32:0;;;7107:6;;7082:32;;9097:130;-1:-1:-1;;;;;9196:14:0;;;9169:7;9196:14;;;:7;:14;;;;;;;;:23;;;;;;;;;;;;;9097:130::o;4826:224::-;4604:7;;-1:-1:-1;;;;;4604:7:0;4590:10;:21;4582:43;;;;-1:-1:-1;;;4582:43:0;;;;;;;;;-1:-1:-1;;;;;4909:22:0;::::1;4901:48;;;;-1:-1:-1::0;;;4901:48:0::1;;;;;;;;;4991:7;::::0;;4965:44:::1;::::0;-1:-1:-1;;;;;4965:44:0;;::::1;::::0;4991:7;::::1;::::0;4965:44:::1;::::0;::::1;5020:11;:22:::0;;-1:-1:-1;;;;;;5020:22:0::1;-1:-1:-1::0;;;;;5020:22:0;;;::::1;::::0;;;::::1;::::0;;4826:224::o;3476:137::-;3534:7;3567:1;3562;:6;;3554:28;;;;-1:-1:-1;;;3554:28:0;;;;;;;;;-1:-1:-1;3600:5:0;;;3476:137::o;3621:161::-;3679:7;3711:5;;;3735:6;;;;3727:28;;;;-1:-1:-1;;;3727:28:0;;;;;;;;;3773:1;3621:161;-1:-1:-1;;;3621:161:0:o;5:130:-1:-;72:20;;-1:-1;;;;;12349:54;;13023:35;;13013:2;;13072:1;;13062:12;869:241;;973:2;961:9;952:7;948:23;944:32;941:2;;;-1:-1;;979:12;941:2;1041:53;1086:7;1062:22;1041:53;;1117:366;;;1238:2;1226:9;1217:7;1213:23;1209:32;1206:2;;;-1:-1;;1244:12;1206:2;1306:53;1351:7;1327:22;1306:53;;;1296:63;;1414:53;1459:7;1396:2;1439:9;1435:22;1414:53;;;1404:63;;1200:283;;;;;;1490:491;;;;1628:2;1616:9;1607:7;1603:23;1599:32;1596:2;;;-1:-1;;1634:12;1596:2;85:6;72:20;97:33;124:5;97:33;;;1686:63;-1:-1;1786:2;1825:22;;72:20;97:33;72:20;97:33;;;1590:391;;1794:63;;-1:-1;;;1894:2;1933:22;;;;662:20;;1590:391;1988:366;;;2109:2;2097:9;2088:7;2084:23;2080:32;2077:2;;;-1:-1;;2115:12;2077:2;2177:53;2222:7;2198:22;2177:53;;;2167:63;2267:2;2306:22;;;;662:20;;-1:-1;;;2071:283;2361:362;;2486:2;2474:9;2465:7;2461:23;2457:32;2454:2;;;-1:-1;;2492:12;2454:2;2543:17;2537:24;2581:18;;2573:6;2570:30;2567:2;;;-1:-1;;2603:12;2567:2;2690:6;2679:9;2675:22;256:3;249:4;241:6;237:17;233:27;223:2;;-1:-1;;264:12;223:2;304:6;298:13;284:27;;2581:18;11449:6;11446:30;11443:2;;;-1:-1;;11479:12;11443:2;11112;11106:9;11552;11533:17;;-1:-1;;11529:33;11138:17;;2486:2;11138:17;11198:34;;;11234:22;;;11195:62;11192:2;;;-1:-1;;11260:12;11192:2;11112;11279:22;397:21;;;497:16;;;2486:2;497:16;494:25;-1:-1;491:2;;;-1:-1;;522:12;491:2;542:39;574:6;2486:2;473:5;469:16;2486:2;439:6;435:17;542:39;;;2623:84;2448:275;-1:-1;;;;;;2448:275;2730:259;;2843:2;2831:9;2822:7;2818:23;2814:32;2811:2;;;-1:-1;;2849:12;2811:2;814:6;808:13;12565:4;13295:5;12554:16;13272:5;13269:33;13259:2;;-1:-1;;13306:12;6433:436;;3744:5;11730:12;3856:52;3901:6;3896:3;3889:4;3882:5;3878:16;3856:52;;;11730:12;;;3920:16;;3856:52;11730:12;3920:16;3889:4;3878:16;;3856:52;;;3920:16;;6617:252;-1:-1;;;;6617:252;6876:222;-1:-1;;;;;12349:54;;;;3067:37;;7003:2;6988:18;;6974:124;7105:210;12261:13;;12254:21;3181:34;;7226:2;7211:18;;7197:118;7322:310;;7469:2;7490:17;7483:47;3372:5;11730:12;11887:6;7469:2;7458:9;7454:18;11875:19;3466:52;3511:6;11915:14;7458:9;11915:14;7469:2;3492:5;3488:16;3466:52;;;11552:9;12927:14;-1:-1;;12923:28;3530:39;;;;11915:14;3530:39;;7440:192;-1:-1;;7440:192;7639:416;7839:2;7853:47;;;4173:2;7824:18;;;11875:19;-1:-1;;;11915:14;;;4189:36;4244:12;;;7810:245;8062:416;8262:2;8276:47;;;4495:2;8247:18;;;11875:19;-1:-1;;;11915:14;;;4511:43;4573:12;;;8233:245;8485:416;8685:2;8699:47;;;4824:1;8670:18;;;11875:19;-1:-1;;;11915:14;;;4839:32;4890:12;;;8656:245;8908:416;9108:2;9122:47;;;5141:2;9093:18;;;11875:19;-1:-1;;;11915:14;;;5157:36;5212:12;;;9079:245;9331:416;9531:2;9545:47;;;5463:2;9516:18;;;11875:19;-1:-1;;;11915:14;;;5479:41;5539:12;;;9502:245;9754:416;9954:2;9968:47;;;5790:1;9939:18;;;11875:19;-1:-1;;;11915:14;;;5805:32;5856:12;;;9925:245;10177:416;10377:2;10391:47;;;6107:1;10362:18;;;11875:19;-1:-1;;;11915:14;;;6122:32;6173:12;;;10348:245;10600:222;6270:37;;;10727:2;10712:18;;10698:124;10829:214;12565:4;12554:16;;;;6386:35;;10952:2;10937:18;;10923:120;12583:268;12648:1;12655:101;12669:6;12666:1;12663:13;12655:101;;;12736:11;;;12730:18;12717:11;;;12710:39;12691:2;12684:10;12655:101;;;12771:6;12768:1;12765:13;12762:2;;;12648:1;12827:6;12822:3;12818:16;12811:27;12762:2;;12632:219;;;;12964:117;-1:-1;;;;;12349:54;;13023:35;;13013:2;;13072:1;;13062:12;13013:2;13007:74;

Swarm Source

ipfs://841bccf74b44eca30e990eb033f46ce3d579e580f6773f839326e8d16131a6b2
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.