FRAX Price: $0.83 (+1.63%)

Contract

0x9942473D30F248c2f9DCBD290b1A49A0c54660f5

Overview

FRAX Balance | FXTL Balance

0 FRAX | 47,300 FXTL

FRAX Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Approve249259432025-08-31 17:49:57147 days ago1756662597IN
0x9942473D...0c54660f5
0 FRAX0.000026340.0012003
Approve249258792025-08-31 17:47:49147 days ago1756662469IN
0x9942473D...0c54660f5
0 FRAX0.000024330.0012003
Approve235183222025-07-30 3:49:15180 days ago1753847355IN
0x9942473D...0c54660f5
0 FRAX0.000128950.0012003
Approve235176662025-07-30 3:27:23180 days ago1753846043IN
0x9942473D...0c54660f5
0 FRAX0.00014910.0012003
Transfer235176472025-07-30 3:26:45180 days ago1753846005IN
0x9942473D...0c54660f5
0 FRAX0.000155910.00099995
Approve235118212025-07-30 0:12:33180 days ago1753834353IN
0x9942473D...0c54660f5
0 FRAX0.000119260.0012003
Approve235100692025-07-29 23:14:09180 days ago1753830849IN
0x9942473D...0c54660f5
0 FRAX0.000065490.0012003
Approve235100392025-07-29 23:13:09180 days ago1753830789IN
0x9942473D...0c54660f5
0 FRAX0.00006190.0012003
Approve235083952025-07-29 22:18:21180 days ago1753827501IN
0x9942473D...0c54660f5
0 FRAX0.000071770.0012003
Approve235083482025-07-29 22:16:47180 days ago1753827407IN
0x9942473D...0c54660f5
0 FRAX0.000076020.0012003
Approve235082812025-07-29 22:14:33180 days ago1753827273IN
0x9942473D...0c54660f5
0 FRAX0.000080730.0012003
Approve235052902025-07-29 20:34:51180 days ago1753821291IN
0x9942473D...0c54660f5
0 FRAX0.000123730.0012003
Approve233518322025-07-26 7:19:35184 days ago1753514375IN
0x9942473D...0c54660f5
0 FRAX0.000021050.0012003
Approve229735742025-07-17 13:10:59192 days ago1752757859IN
0x9942473D...0c54660f5
0 FRAX0.000350880.00120025
Approve216641952025-06-17 5:45:01223 days ago1750139101IN
0x9942473D...0c54660f5
0 FRAX0.00002450.0012003
Approve216627122025-06-17 4:55:35223 days ago1750136135IN
0x9942473D...0c54660f5
0 FRAX0.000023950.0012003
Approve214994592025-06-13 10:13:49226 days ago1749809629IN
0x9942473D...0c54660f5
0 FRAX0.000095080.00100025
Approve214994132025-06-13 10:12:17226 days ago1749809537IN
0x9942473D...0c54660f5
0 FRAX0.000100820.00100025
Approve214993732025-06-13 10:10:57226 days ago1749809457IN
0x9942473D...0c54660f5
0 FRAX0.000111640.00100025
Approve214993532025-06-13 10:10:17226 days ago1749809417IN
0x9942473D...0c54660f5
0 FRAX0.000119220.00100025
Approve212306022025-06-07 4:51:55233 days ago1749271915IN
0x9942473D...0c54660f5
0 FRAX0.000053660.0012003
Approve212305792025-06-07 4:51:09233 days ago1749271869IN
0x9942473D...0c54660f5
0 FRAX0.000055330.0012003
Approve211263912025-06-04 18:58:13235 days ago1749063493IN
0x9942473D...0c54660f5
0 FRAX0.000036940.00120025
Transfer211262592025-06-04 18:53:49235 days ago1749063229IN
0x9942473D...0c54660f5
0 FRAX0.000028690.0018
Approve210598742025-06-03 6:00:59237 days ago1748930459IN
0x9942473D...0c54660f5
0 FRAX0.000011340.00120185
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:

Cross-Chain Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x3c4f5900...022FEDab5
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
CustomERC20

Compiler Version
v0.6.9+commit.3e3065ac

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at fraxscan.com on 2025-05-25
*/

// Created by the Astral Protocol - https://sdao.pro/astral

// File: contracts/lib/SafeMath.sol

/*

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

*/

pragma solidity 0.6.9;


/**
 * @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/InitializableOwnable.sol


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

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

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

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

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

    modifier notInitialized() {
        require(!_INITIALIZED_, "DODO_INITIALIZED");
        _;
    }

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

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

    function initOwner(address newOwner) public notInitialized {
        _INITIALIZED_ = true;
        _OWNER_ = newOwner;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        emit OwnershipTransferPrepared(_OWNER_, newOwner);
        _NEW_OWNER_ = newOwner;
    }

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

// File: contracts/external/ERC20/CustomERC20.sol


contract CustomERC20 is InitializableOwnable {
    using SafeMath for uint256;

    string public name;
    uint8 public decimals;
    string public symbol;
    uint256 public totalSupply;

    uint256 public tradeBurnRatio;
    uint256 public tradeFeeRatio;
    address public team;

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

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

    event ChangeTeam(address oldTeam, address newTeam);


    function init(
        address _creator,
        uint256 _totalSupply,
        string memory _name,
        string memory _symbol,
        uint8 _decimals,
        uint256 _tradeBurnRatio,
        uint256 _tradeFeeRatio,
        address _team
    ) public {
        initOwner(_creator);
        name = _name;
        symbol = _symbol;
        decimals = _decimals;
        totalSupply = _totalSupply;
        balances[_creator] = _totalSupply;
        require(_tradeBurnRatio >= 0 && _tradeBurnRatio <= 5000, "TRADE_BURN_RATIO_INVALID");
        require(_tradeFeeRatio >= 0 && _tradeFeeRatio <= 5000, "TRADE_FEE_RATIO_INVALID");
        tradeBurnRatio = _tradeBurnRatio;
        tradeFeeRatio = _tradeFeeRatio;
        team = _team;
        emit Transfer(address(0), _creator, _totalSupply);
    }

    function transfer(address to, uint256 amount) public returns (bool) {
        _transfer(msg.sender,to,amount);
        return true;
    }

    function balanceOf(address owner) public view returns (uint256 balance) {
        return balances[owner];
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public returns (bool) {
        require(amount <= allowed[from][msg.sender], "ALLOWANCE_NOT_ENOUGH");
        _transfer(from,to,amount);
        allowed[from][msg.sender] = allowed[from][msg.sender].sub(amount);
        return true;
    }

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

    function allowance(address owner, address spender) public view returns (uint256) {
        return allowed[owner][spender];
    }


    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(balances[sender] >= amount, "ERC20: transfer amount exceeds balance");

        balances[sender] = balances[sender].sub(amount);

        uint256 burnAmount;
        uint256 feeAmount;
        if(tradeBurnRatio > 0) {
            burnAmount = amount.mul(tradeBurnRatio).div(10000);
            balances[address(0)] = balances[address(0)].add(burnAmount);
            emit Transfer(sender, address(0), burnAmount);
        }

        if(tradeFeeRatio > 0) {
            feeAmount = amount.mul(tradeFeeRatio).div(10000);
            balances[team] = balances[team].add(feeAmount);
            emit Transfer(sender, team, feeAmount);
        }
        
        uint256 receiveAmount = amount.sub(burnAmount).sub(feeAmount);
        balances[recipient] = balances[recipient].add(receiveAmount);

        emit Transfer(sender, recipient, receiveAmount);
    }


    //=================== Ownable ======================
    function changeTeamAccount(address newTeam) external onlyOwner {
        require(tradeFeeRatio > 0, "NOT_TRADE_FEE_TOKEN");
        emit ChangeTeam(team,newTeam);
        team = newTeam;
    }

    function abandonOwnership(address zeroAddress) external onlyOwner {
        require(zeroAddress == address(0), "NOT_ZERO_ADDRESS");
        emit OwnershipTransferred(_OWNER_, address(0));
        _OWNER_ = address(0);
    }
}

Contract Security Audit

Contract ABI

API
[{"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":false,"internalType":"address","name":"oldTeam","type":"address"},{"indexed":false,"internalType":"address","name":"newTeam","type":"address"}],"name":"ChangeTeam","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":"zeroAddress","type":"address"}],"name":"abandonOwnership","outputs":[],"stateMutability":"nonpayable","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":"newTeam","type":"address"}],"name":"changeTeamAccount","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":"_creator","type":"address"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"},{"internalType":"uint256","name":"_tradeBurnRatio","type":"uint256"},{"internalType":"uint256","name":"_tradeFeeRatio","type":"uint256"},{"internalType":"address","name":"_team","type":"address"}],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"initOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"team","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradeBurnRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradeFeeRatio","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"}]

0x608060405234801561001057600080fd5b50612329806100206000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806370a08231116100ad578063a9059cbb11610071578063a9059cbb14610709578063b4c50ff41461076f578063dd62ed3e146107b3578063e59850f71461082b578063f2fde38b146108495761012c565b806370a082311461057c5780638456db15146105d457806385f2aef21461061e578063870c66d61461066857806395d89b41146106865761012c565b806323b872dd116100f457806323b872dd146102c6578063313ce5671461034c5780633a625ee6146103705780634ca60825146103b45780634e71e0c8146105725761012c565b806306fdde0314610131578063095ea7b3146101b45780630d0092971461021a57806316048bc41461025e57806318160ddd146102a8575b600080fd5b61013961088d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017957808201518184015260208101905061015e565b50505050905090810190601f1680156101a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610200600480360360408110156101ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061092b565b604051808215151515815260200191505060405180910390f35b61025c6004803603602081101561023057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1d565b005b610266610afd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102b0610b22565b6040518082815260200191505060405180910390f35b610332600480360360608110156102dc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b28565b604051808215151515815260200191505060405180910390f35b610354610d41565b604051808260ff1660ff16815260200191505060405180910390f35b6103b26004803603602081101561038657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d54565b005b61057060048036036101008110156103cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561041257600080fd5b82018360208201111561042457600080fd5b8035906020019184600183028401116401000000008311171561044657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156104a957600080fd5b8201836020820111156104bb57600080fd5b803590602001918460018302840111640100000000831117156104dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803560ff1690602001909291908035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f8b565b005b61057a6111f1565b005b6105be6004803603602081101561059257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f7565b6040518082815260200191505060405180910390f35b6105dc611440565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610626611466565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61067061148c565b6040518082815260200191505060405180910390f35b61068e611492565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106ce5780820151818401526020810190506106b3565b50505050905090810190601f1680156106fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107556004803603604081101561071f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611530565b604051808215151515815260200191505060405180910390f35b6107b16004803603602081101561078557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611547565b005b610815600480360360408110156107c957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061176b565b6040518082815260200191505060405180910390f35b6108336117f2565b6040518082815260200191505060405180910390f35b61088b6004803603602081101561085f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117f8565b005b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109235780601f106108f857610100808354040283529160200191610923565b820191906000526020600020905b81548152906001019060200180831161090657829003601f168201915b505050505081565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600160149054906101000a900460ff1615610aa0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f444f444f5f494e495449414c495a45440000000000000000000000000000000081525060200191505060405180910390fd5b60018060146101000a81548160ff021916908315150217905550806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b6000600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f414c4c4f57414e43455f4e4f545f454e4f55474800000000000000000000000081525060200191505060405180910390fd5b610c27848484611979565b610cb682600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa990919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600190509392505050565b600360009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e16576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600060075411610e8e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4e4f545f54524144455f4645455f544f4b454e0000000000000000000000000081525060200191505060405180910390fd5b7f777d534c56e5409475a0daf453d4062d4d63f108acc530af91f101587cc91adc600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610f9488610a1d565b8560029080519060200190610faa9291906121e0565b508460049080519060200190610fc19291906121e0565b5083600360006101000a81548160ff021916908360ff1602179055508660058190555086600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831015801561103b57506113888311155b6110ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f54524144455f4255524e5f524154494f5f494e56414c4944000000000000000081525060200191505060405180910390fd5b600082101580156110c057506113888211155b611132576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f54524144455f4645455f524154494f5f494e56414c494400000000000000000081525060200191505060405180910390fd5b826006819055508160078190555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a35050505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f494e56414c49445f434c41494d0000000000000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60075481565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115285780601f106114fd57610100808354040283529160200191611528565b820191906000526020600020905b81548152906001019060200180831161150b57829003601f168201915b505050505081565b600061153d338484611979565b6001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611609576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4e4f545f5a45524f5f414444524553530000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60065481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fdcf55418cee3220104fef63f979ff3c4097ad240c0c43dcb33ce837748983e6260405160405180910390a380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806122cf6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a85576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806122866023913960400191505060405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b1d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806122a96026913960400191505060405180910390fd5b611b6f81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060006006541115611ce757611be9612710611bdb6006548661202c90919063ffffffff16565b6120cf90919063ffffffff16565b9150611c3d82600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b60006007541115611e7e57611d1b612710611d0d6007548661202c90919063ffffffff16565b6120cf90919063ffffffff16565b9050611d918160096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b60096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b6000611ea582611e978587611fa990919063ffffffff16565b611fa990919063ffffffff16565b9050611ef981600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505050565b600082821115612021576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f5355425f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b818303905092915050565b60008083141561203f57600090506120c9565b600082840290508284828161205057fe5b04146120c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4d554c5f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b809150505b92915050565b6000808211612146576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4449564944494e475f4552524f5200000000000000000000000000000000000081525060200191505060405180910390fd5b81838161214f57fe5b04905092915050565b6000808284019050838110156121d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4144445f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061222157805160ff191683800117855561224f565b8280016001018555821561224f579182015b8281111561224e578251825591602001919060010190612233565b5b50905061225c9190612260565b5090565b61228291905b8082111561227e576000816000905550600101612266565b5090565b9056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373a2646970667358221220da3cd285fb1dc5aceee41a022a9c09f6497ca7279072579cd1e5f4703caae12d64736f6c63430006090033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c806370a08231116100ad578063a9059cbb11610071578063a9059cbb14610709578063b4c50ff41461076f578063dd62ed3e146107b3578063e59850f71461082b578063f2fde38b146108495761012c565b806370a082311461057c5780638456db15146105d457806385f2aef21461061e578063870c66d61461066857806395d89b41146106865761012c565b806323b872dd116100f457806323b872dd146102c6578063313ce5671461034c5780633a625ee6146103705780634ca60825146103b45780634e71e0c8146105725761012c565b806306fdde0314610131578063095ea7b3146101b45780630d0092971461021a57806316048bc41461025e57806318160ddd146102a8575b600080fd5b61013961088d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561017957808201518184015260208101905061015e565b50505050905090810190601f1680156101a65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610200600480360360408110156101ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061092b565b604051808215151515815260200191505060405180910390f35b61025c6004803603602081101561023057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a1d565b005b610266610afd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102b0610b22565b6040518082815260200191505060405180910390f35b610332600480360360608110156102dc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b28565b604051808215151515815260200191505060405180910390f35b610354610d41565b604051808260ff1660ff16815260200191505060405180910390f35b6103b26004803603602081101561038657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d54565b005b61057060048036036101008110156103cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561041257600080fd5b82018360208201111561042457600080fd5b8035906020019184600183028401116401000000008311171561044657600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156104a957600080fd5b8201836020820111156104bb57600080fd5b803590602001918460018302840111640100000000831117156104dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803560ff1690602001909291908035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f8b565b005b61057a6111f1565b005b6105be6004803603602081101561059257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113f7565b6040518082815260200191505060405180910390f35b6105dc611440565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610626611466565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61067061148c565b6040518082815260200191505060405180910390f35b61068e611492565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106ce5780820151818401526020810190506106b3565b50505050905090810190601f1680156106fb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6107556004803603604081101561071f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611530565b604051808215151515815260200191505060405180910390f35b6107b16004803603602081101561078557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611547565b005b610815600480360360408110156107c957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061176b565b6040518082815260200191505060405180910390f35b6108336117f2565b6040518082815260200191505060405180910390f35b61088b6004803603602081101561085f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117f8565b005b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109235780601f106108f857610100808354040283529160200191610923565b820191906000526020600020905b81548152906001019060200180831161090657829003601f168201915b505050505081565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600160149054906101000a900460ff1615610aa0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f444f444f5f494e495449414c495a45440000000000000000000000000000000081525060200191505060405180910390fd5b60018060146101000a81548160ff021916908315150217905550806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b6000600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c1c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f414c4c4f57414e43455f4e4f545f454e4f55474800000000000000000000000081525060200191505060405180910390fd5b610c27848484611979565b610cb682600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa990919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600190509392505050565b600360009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e16576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600060075411610e8e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f4e4f545f54524144455f4645455f544f4b454e0000000000000000000000000081525060200191505060405180910390fd5b7f777d534c56e5409475a0daf453d4062d4d63f108acc530af91f101587cc91adc600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610f9488610a1d565b8560029080519060200190610faa9291906121e0565b508460049080519060200190610fc19291906121e0565b5083600360006101000a81548160ff021916908360ff1602179055508660058190555086600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831015801561103b57506113888311155b6110ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f54524144455f4255524e5f524154494f5f494e56414c4944000000000000000081525060200191505060405180910390fd5b600082101580156110c057506113888211155b611132576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f54524144455f4645455f524154494f5f494e56414c494400000000000000000081525060200191505060405180910390fd5b826006819055508160078190555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508773ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef896040518082815260200191505060405180910390a35050505050505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f494e56414c49445f434c41494d0000000000000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60075481565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115285780601f106114fd57610100808354040283529160200191611528565b820191906000526020600020905b81548152906001019060200180831161150b57829003601f168201915b505050505081565b600061153d338484611979565b6001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611609576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4e4f545f5a45524f5f414444524553530000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60065481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4e4f545f4f574e4552000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fdcf55418cee3220104fef63f979ff3c4097ad240c0c43dcb33ce837748983e6260405160405180910390a380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806122cf6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a85576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806122866023913960400191505060405180910390fd5b80600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b1d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806122a96026913960400191505060405180910390fd5b611b6f81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fa990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008060006006541115611ce757611be9612710611bdb6006548661202c90919063ffffffff16565b6120cf90919063ffffffff16565b9150611c3d82600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35b60006007541115611e7e57611d1b612710611d0d6007548661202c90919063ffffffff16565b6120cf90919063ffffffff16565b9050611d918160096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b60096000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35b6000611ea582611e978587611fa990919063ffffffff16565b611fa990919063ffffffff16565b9050611ef981600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461215890919063ffffffff16565b600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050505050565b600082821115612021576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f5355425f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b818303905092915050565b60008083141561203f57600090506120c9565b600082840290508284828161205057fe5b04146120c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4d554c5f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b809150505b92915050565b6000808211612146576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f4449564944494e475f4552524f5200000000000000000000000000000000000081525060200191505060405180910390fd5b81838161214f57fe5b04905092915050565b6000808284019050838110156121d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260098152602001807f4144445f4552524f52000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061222157805160ff191683800117855561224f565b8280016001018555821561224f579182015b8281111561224e578251825591602001919060010190612233565b5b50905061225c9190612260565b5090565b61228291905b8082111561227e576000816000905550600101612266565b5090565b9056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373a2646970667358221220da3cd285fb1dc5aceee41a022a9c09f6497ca7279072579cd1e5f4703caae12d64736f6c63430006090033

Deployed Bytecode Sourcemap

2988:4121:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3075:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5077:203;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2392:127;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1759:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3155:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4728:341;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3100:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6675:196;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3632:819;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2698:228;;;:::i;:::-;;4607:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1788:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3261:19;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3226:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3128:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4459:140;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6879:227;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5288:130;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3190:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2527:163;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3075:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5077:203::-;5143:4;5191:6;5160:7;:19;5168:10;5160:19;;;;;;;;;;;;;;;:28;5180:7;5160:28;;;;;;;;;;;;;;;:37;;;;5234:7;5213:37;;5222:10;5213:37;;;5243:6;5213:37;;;;;;;;;;;;;;;;;;5268:4;5261:11;;5077:203;;;;:::o;2392:127::-;2181:13;;;;;;;;;;;2180:14;2172:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2478:4:::1;2462:13:::0;::::1;:20;;;;;;;;;;;;;;;;;;2503:8;2493:7;::::0;:18:::1;;;;;;;;;;;;;;;;;;2392:127:::0;:::o;1759:22::-;;;;;;;;;;;;;:::o;3155:26::-;;;;:::o;4728:341::-;4842:4;4877:7;:13;4885:4;4877:13;;;;;;;;;;;;;;;:25;4891:10;4877:25;;;;;;;;;;;;;;;;4867:6;:35;;4859:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4938:25;4948:4;4953:2;4956:6;4938:9;:25::i;:::-;5002:37;5032:6;5002:7;:13;5010:4;5002:13;;;;;;;;;;;;;;;:25;5016:10;5002:25;;;;;;;;;;;;;;;;:29;;:37;;;;:::i;:::-;4974:7;:13;4982:4;4974:13;;;;;;;;;;;;;;;:25;4988:10;4974:25;;;;;;;;;;;;;;;:65;;;;5057:4;5050:11;;4728:341;;;;;:::o;3100:21::-;;;;;;;;;;;;;:::o;6675:196::-;2297:7;;;;;;;;;;;2283:21;;:10;:21;;;2275:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6773:1:::1;6757:13;;:17;6749:49;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;6814:24;6825:4;;;;;;;;;;;6830:7;6814:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6856:7;6849:4;;:14;;;;;;;;;;;;;;;;;;6675:196:::0;:::o;3632:819::-;3908:19;3918:8;3908:9;:19::i;:::-;3945:5;3938:4;:12;;;;;;;;;;;;:::i;:::-;;3970:7;3961:6;:16;;;;;;;;;;;;:::i;:::-;;3999:9;3988:8;;:20;;;;;;;;;;;;;;;;;;4033:12;4019:11;:26;;;;4077:12;4056:8;:18;4065:8;4056:18;;;;;;;;;;;;;;;:33;;;;4127:1;4108:15;:20;;:47;;;;;4151:4;4132:15;:23;;4108:47;4100:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4221:1;4203:14;:19;;:45;;;;;4244:4;4226:14;:22;;4203:45;4195:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4304:15;4287:14;:32;;;;4346:14;4330:13;:30;;;;4378:5;4371:4;;:12;;;;;;;;;;;;;;;;;;4420:8;4399:44;;4416:1;4399:44;;;4430:12;4399:44;;;;;;;;;;;;;;;;;;3632:819;;;;;;;;:::o;2698:228::-;2764:11;;;;;;;;;;;2750:25;;:10;:25;;;2742:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2839:11;;;;;;;;;;;2809:42;;2830:7;;;;;;;;;;;2809:42;;;;;;;;;;;;2872:11;;;;;;;;;;;2862:7;;:21;;;;;;;;;;;;;;;;;;2916:1;2894:11;;:24;;;;;;;;;;;;;;;;;;2698:228::o;4607:113::-;4662:15;4697:8;:15;4706:5;4697:15;;;;;;;;;;;;;;;;4690:22;;4607:113;;;:::o;1788:26::-;;;;;;;;;;;;;:::o;3261:19::-;;;;;;;;;;;;;:::o;3226:28::-;;;;:::o;3128:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4459:140::-;4521:4;4538:31;4548:10;4559:2;4562:6;4538:9;:31::i;:::-;4587:4;4580:11;;4459:140;;;;:::o;6879:227::-;2297:7;;;;;;;;;;;2283:21;;:10;:21;;;2275:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6987:1:::1;6964:25;;:11;:25;;;6956:54;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;7064:1;7026:41;;7047:7;::::0;::::1;;;;;;;;;7026:41;;;;;;;;;;;;7096:1;7078:7:::0;::::1;:20;;;;;;;;;;;;;;;;;;6879:227:::0;:::o;5288:130::-;5360:7;5387;:14;5395:5;5387:14;;;;;;;;;;;;;;;:23;5402:7;5387:23;;;;;;;;;;;;;;;;5380:30;;5288:130;;;;:::o;3190:29::-;;;;:::o;2527:163::-;2297:7;;;;;;;;;;;2283:21;;:10;:21;;;2275:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2640:8:::1;2605:44;;2631:7;::::0;::::1;;;;;;;;;2605:44;;;;;;;;;;;;2674:8;2660:11;;:22;;;;;;;;;;;;;;;;;;2527:163:::0;:::o;5428:1179::-;5586:1;5568:20;;:6;:20;;;;5560:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5670:1;5649:23;;:9;:23;;;;5641:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5751:6;5731:8;:16;5740:6;5731:16;;;;;;;;;;;;;;;;:26;;5723:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5832:28;5853:6;5832:8;:16;5841:6;5832:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;5813:8;:16;5822:6;5813:16;;;;;;;;;;;;;;;:47;;;;5873:18;5902:17;5950:1;5933:14;;:18;5930:234;;;5981:37;6012:5;5981:26;5992:14;;5981:6;:10;;:26;;;;:::i;:::-;:30;;:37;;;;:::i;:::-;5968:50;;6056:36;6081:10;6056:8;:20;6073:1;6056:20;;;;;;;;;;;;;;;;:24;;:36;;;;:::i;:::-;6033:8;:20;6050:1;6033:20;;;;;;;;;;;;;;;:59;;;;6137:1;6112:40;;6121:6;6112:40;;;6141:10;6112:40;;;;;;;;;;;;;;;;;;5930:234;6195:1;6179:13;;:17;6176:211;;;6225:36;6255:5;6225:25;6236:13;;6225:6;:10;;:25;;;;:::i;:::-;:29;;:36;;;;:::i;:::-;6213:48;;6293:29;6312:9;6293:8;:14;6302:4;;;;;;;;;;;6293:14;;;;;;;;;;;;;;;;:18;;:29;;;;:::i;:::-;6276:8;:14;6285:4;;;;;;;;;;;6276:14;;;;;;;;;;;;;;;:46;;;;6359:4;;;;;;;;;;;6342:33;;6351:6;6342:33;;;6365:9;6342:33;;;;;;;;;;;;;;;;;;6176:211;6407:21;6431:37;6458:9;6431:22;6442:10;6431:6;:10;;:22;;;;:::i;:::-;:26;;:37;;;;:::i;:::-;6407:61;;6501:38;6525:13;6501:8;:19;6510:9;6501:19;;;;;;;;;;;;;;;;:23;;:38;;;;:::i;:::-;6479:8;:19;6488:9;6479:19;;;;;;;;;;;;;;;:60;;;;6574:9;6557:42;;6566:6;6557:42;;;6585:13;6557:42;;;;;;;;;;;;;;;;;;5428:1179;;;;;;:::o;1045:137::-;1103:7;1136:1;1131;:6;;1123:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1173:1;1169;:5;1162:12;;1045:137;;;;:::o;366:226::-;424:7;453:1;448;:6;444:47;;;478:1;471:8;;;;444:47;503:9;519:1;515;:5;503:17;;548:1;543;539;:5;;;;;;:10;531:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;583:1;576:8;;;366:226;;;;;:::o;600:141::-;658:7;690:1;686;:5;678:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;732:1;728;:5;;;;;;721:12;;600:141;;;;:::o;1190:161::-;1248:7;1268:9;1284:1;1280;:5;1268:17;;1309:1;1304;:6;;1296:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1342:1;1335:8;;;1190:161;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

ipfs://da3cd285fb1dc5aceee41a022a9c09f6497ca7279072579cd1e5f4703caae12d

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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