ETH Price: $2,680.97 (-0.59%)

Contract

0xA62Fc0BA9Deeee9336511741c2Dfc4F5b00E128B
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Harvest218633152025-02-17 3:06:234 hrs ago1739761583IN
0xA62Fc0BA...5b00E128B
0 ETH0.000044961.12105302
Harvest218618062025-02-16 22:01:479 hrs ago1739743307IN
0xA62Fc0BA...5b00E128B
0 ETH0.000065871.27637401
Unstake218614402025-02-16 20:48:1111 hrs ago1739738891IN
0xA62Fc0BA...5b00E128B
0 ETH0.000050860.78526024
Stake218594402025-02-16 14:04:5917 hrs ago1739714699IN
0xA62Fc0BA...5b00E128B
0 ETH0.00010071.34439377
Stake218572732025-02-16 6:48:3525 hrs ago1739688515IN
0xA62Fc0BA...5b00E128B
0 ETH0.000074791.14523683
Harvest218571272025-02-16 6:18:4725 hrs ago1739686727IN
0xA62Fc0BA...5b00E128B
0 ETH0.000044231.1026758
Harvest218571172025-02-16 6:16:4725 hrs ago1739686607IN
0xA62Fc0BA...5b00E128B
0 ETH0.000047171.17598863
Harvest218571112025-02-16 6:15:3525 hrs ago1739686535IN
0xA62Fc0BA...5b00E128B
0 ETH0.000044571.11116081
Harvest218568612025-02-16 5:25:1126 hrs ago1739683511IN
0xA62Fc0BA...5b00E128B
0 ETH0.000045811.14211141
Harvest218566852025-02-16 4:49:4727 hrs ago1739681387IN
0xA62Fc0BA...5b00E128B
0 ETH0.00002280.56841312
Harvest218551062025-02-15 23:30:4732 hrs ago1739662247IN
0xA62Fc0BA...5b00E128B
0 ETH0.000046891.1691245
Harvest218531442025-02-15 16:54:2339 hrs ago1739638463IN
0xA62Fc0BA...5b00E128B
0 ETH0.000058731.4642429
Harvest218531102025-02-15 16:47:3539 hrs ago1739638055IN
0xA62Fc0BA...5b00E128B
0 ETH0.000045210.79031609
Stake218516512025-02-15 11:52:3544 hrs ago1739620355IN
0xA62Fc0BA...5b00E128B
0 ETH0.000079711.22056015
Harvest218496932025-02-15 5:17:232 days ago1739596643IN
0xA62Fc0BA...5b00E128B
0 ETH0.000046851.16793353
Harvest218480872025-02-14 23:53:352 days ago1739577215IN
0xA62Fc0BA...5b00E128B
0 ETH0.000068271.1933584
Harvest218469592025-02-14 20:04:232 days ago1739563463IN
0xA62Fc0BA...5b00E128B
0 ETH0.000031810.79317498
Stake218432732025-02-14 7:40:353 days ago1739518835IN
0xA62Fc0BA...5b00E128B
0 ETH0.000108061.44266263
Harvest218432232025-02-14 7:30:353 days ago1739518235IN
0xA62Fc0BA...5b00E128B
0 ETH0.000058591.46077325
Harvest218432202025-02-14 7:29:593 days ago1739518199IN
0xA62Fc0BA...5b00E128B
0 ETH0.000083051.45172242
Stake218431912025-02-14 7:24:113 days ago1739517851IN
0xA62Fc0BA...5b00E128B
0 ETH0.000160611.55166693
Harvest218429892025-02-14 6:43:353 days ago1739515415IN
0xA62Fc0BA...5b00E128B
0 ETH0.000071641.78609328
Harvest218379112025-02-13 13:39:113 days ago1739453951IN
0xA62Fc0BA...5b00E128B
0 ETH0.000089242.22468836
Harvest218350502025-02-13 4:02:354 days ago1739419355IN
0xA62Fc0BA...5b00E128B
0 ETH0.000047581.37883294
Harvest218350002025-02-13 3:52:354 days ago1739418755IN
0xA62Fc0BA...5b00E128B
0 ETH0.000052071.29807653
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MSN_STAKE

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2024-04-22
*/

// File: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v4.9/contracts/token/ERC20/IERC20.sol


// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @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 `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount) external returns (bool);
}

// File: contracts/MSN_STAKE.sol


pragma solidity ^0.8.0;


contract MSN_STAKE {
    address public msn_contract_address;

    constructor(address _msn_contract_addr) {
        msn_contract_address = _msn_contract_addr;
    }

    uint256 private total_credit;

    function get_total_credit() external view returns (uint256) {
        return total_credit;
    }

    mapping(address => uint256) private credit_map;

    function get_credit(address addr) external view returns (uint256) {
        return credit_map[addr];
    }

    mapping(address => uint256) private stake_token_map;

    function get_stake_token(address addr) external view returns (uint256) {
        return stake_token_map[addr];
    }

    mapping(address => uint256) private stake_last_time_map;

    function get_stake_last_time(address addr) external view returns (uint256) {
        return stake_last_time_map[addr];
    }

    function cal_credit_reward(address addr) public view returns (uint256) {
        return get_credit_reward_speed(addr) * (block.timestamp - stake_last_time_map[addr]);
    }

    function get_credit_reward_speed(address addr) public view returns (uint256) {
        return stake_token_map[addr] / 1000;
    }

    function harvest() public {
        uint256 credit_reward = cal_credit_reward(msg.sender);
        require(credit_reward >= 0, "credit_reward smaller then 0 err in harvest");
        stake_last_time_map[msg.sender] = block.timestamp;
        credit_map[msg.sender] = credit_map[msg.sender] + credit_reward;
        total_credit += credit_reward;
        require(total_credit >= 0, "total_credit overflow err");
    }

    event stake_EVENT(address trigger_user_addr, uint256 amount);

    function stake(uint256 amount) external {
        require(amount > 0, "stake amount must bigger then 0");

        uint256 allowance = IERC20(msn_contract_address).allowance(msg.sender, address(this));

        require(allowance > 0, "please approve tokens before staking");
        require(allowance >= amount, "please approve more tokens");

        harvest();

        bool t_result = IERC20(msn_contract_address).transferFrom(msg.sender, address(this), amount);
        require(t_result == true, "transfer error");

        stake_token_map[msg.sender] += amount;

        emit stake_EVENT(msg.sender, amount);
    }

    event unstake_EVENT(address trigger_user_addr, uint256 amount);

    function unstake(uint256 amount) external {
        require(stake_token_map[msg.sender] >= amount, "not enough balance");

        harvest();

        stake_token_map[msg.sender] -= amount;

        //transfer
        bool t_result = IERC20(msn_contract_address).transfer(msg.sender, amount);
        require(t_result == true, "transfer error");

        emit unstake_EVENT(msg.sender, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_msn_contract_addr","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"trigger_user_addr","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake_EVENT","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"trigger_user_addr","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unstake_EVENT","type":"event"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"cal_credit_reward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"get_credit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"get_credit_reward_speed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"get_stake_last_time","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"get_stake_token","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"get_total_credit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"harvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"msn_contract_address","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50604051620012a9380380620012a9833981810160405281019062000037919062000095565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506200010f565b6000815190506200008f81620000f5565b92915050565b600060208284031215620000a857600080fd5b6000620000b8848285016200007e565b91505092915050565b6000620000ce82620000d5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200010081620000c1565b81146200010c57600080fd5b50565b61118a806200011f6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806372cabf3d1161006657806372cabf3d146101595780639b9d02d514610189578063a694fc3a146101b9578063aaa76f22146101d5578063cf10568b146101f35761009e565b80630ae2bd49146100a3578063221e0bc6146100d357806326bd72a6146101035780632e17de78146101335780634641257d1461014f575b600080fd5b6100bd60048036038101906100b89190610ad6565b610211565b6040516100ca9190610f28565b60405180910390f35b6100ed60048036038101906100e89190610ad6565b610267565b6040516100fa9190610f28565b60405180910390f35b61011d60048036038101906101189190610ad6565b6102b0565b60405161012a9190610f28565b60405180910390f35b61014d60048036038101906101489190610b28565b6102f9565b005b61015761050f565b005b610173600480360381019061016e9190610ad6565b610694565b6040516101809190610f28565b60405180910390f35b6101a3600480360381019061019e9190610ad6565b6106fb565b6040516101b09190610f28565b60405180910390f35b6101d360048036038101906101ce9190610b28565b610744565b005b6101dd610a54565b6040516101ea9190610da4565b60405180910390f35b6101fb610a78565b6040516102089190610f28565b60405180910390f35b60006103e8600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546102609190610faa565b9050919050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610e68565b60405180910390fd5b61038361050f565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103d29190611035565b9250508190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610437929190610e1f565b602060405180830381600087803b15801561045157600080fd5b505af1158015610465573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104899190610aff565b905060011515811515146104d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c990610ea8565b60405180910390fd5b7fe6dabef69dffaa9786923d67e8ad17248d542d64ec382c9ed9e789e672a6eea53383604051610503929190610e1f565b60405180910390a15050565b600061051a33610694565b90506000811015610560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161055790610ec8565b60405180910390fd5b42600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105ef9190610f54565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008282546106449190610f54565b9250508190555060006001541015610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890610e88565b60405180910390fd5b50565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054426106e19190611035565b6106ea83610211565b6106f49190610fdb565b9050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008111610787576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077e90610e48565b60405180910390fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b81526004016107e5929190610dbf565b60206040518083038186803b1580156107fd57600080fd5b505afa158015610811573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108359190610b51565b90506000811161087a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087190610ee8565b60405180910390fd5b818110156108bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b490610f08565b60405180910390fd5b6108c561050f565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b815260040161092593929190610de8565b602060405180830381600087803b15801561093f57600080fd5b505af1158015610953573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109779190610aff565b905060011515811515146109c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b790610ea8565b60405180910390fd5b82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a0f9190610f54565b925050819055507f3652eddfe31e4d0c62e545f8ae4c0605f1fd1b157b52a3e2db39935ffc2a9a303384604051610a47929190610e1f565b60405180910390a1505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600154905090565b600081359050610a918161110f565b92915050565b600081519050610aa681611126565b92915050565b600081359050610abb8161113d565b92915050565b600081519050610ad08161113d565b92915050565b600060208284031215610ae857600080fd5b6000610af684828501610a82565b91505092915050565b600060208284031215610b1157600080fd5b6000610b1f84828501610a97565b91505092915050565b600060208284031215610b3a57600080fd5b6000610b4884828501610aac565b91505092915050565b600060208284031215610b6357600080fd5b6000610b7184828501610ac1565b91505092915050565b610b8381611069565b82525050565b6000610b96601f83610f43565b91507f7374616b6520616d6f756e74206d75737420626967676572207468656e2030006000830152602082019050919050565b6000610bd6601283610f43565b91507f6e6f7420656e6f7567682062616c616e636500000000000000000000000000006000830152602082019050919050565b6000610c16601983610f43565b91507f746f74616c5f637265646974206f766572666c6f7720657272000000000000006000830152602082019050919050565b6000610c56600e83610f43565b91507f7472616e73666572206572726f720000000000000000000000000000000000006000830152602082019050919050565b6000610c96602b83610f43565b91507f6372656469745f72657761726420736d616c6c6572207468656e20302065727260008301527f20696e20686172766573740000000000000000000000000000000000000000006020830152604082019050919050565b6000610cfc602483610f43565b91507f706c6561736520617070726f766520746f6b656e73206265666f72652073746160008301527f6b696e67000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000610d62601a83610f43565b91507f706c6561736520617070726f7665206d6f726520746f6b656e730000000000006000830152602082019050919050565b610d9e816110a7565b82525050565b6000602082019050610db96000830184610b7a565b92915050565b6000604082019050610dd46000830185610b7a565b610de16020830184610b7a565b9392505050565b6000606082019050610dfd6000830186610b7a565b610e0a6020830185610b7a565b610e176040830184610d95565b949350505050565b6000604082019050610e346000830185610b7a565b610e416020830184610d95565b9392505050565b60006020820190508181036000830152610e6181610b89565b9050919050565b60006020820190508181036000830152610e8181610bc9565b9050919050565b60006020820190508181036000830152610ea181610c09565b9050919050565b60006020820190508181036000830152610ec181610c49565b9050919050565b60006020820190508181036000830152610ee181610c89565b9050919050565b60006020820190508181036000830152610f0181610cef565b9050919050565b60006020820190508181036000830152610f2181610d55565b9050919050565b6000602082019050610f3d6000830184610d95565b92915050565b600082825260208201905092915050565b6000610f5f826110a7565b9150610f6a836110a7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610f9f57610f9e6110b1565b5b828201905092915050565b6000610fb5826110a7565b9150610fc0836110a7565b925082610fd057610fcf6110e0565b5b828204905092915050565b6000610fe6826110a7565b9150610ff1836110a7565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561102a576110296110b1565b5b828202905092915050565b6000611040826110a7565b915061104b836110a7565b92508282101561105e5761105d6110b1565b5b828203905092915050565b600061107482611087565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61111881611069565b811461112357600080fd5b50565b61112f8161107b565b811461113a57600080fd5b50565b611146816110a7565b811461115157600080fd5b5056fea2646970667358221220e7ae2dff6e9a754d6d0cfdedc697fa6e6b0fa5ae0254d9662e192b80e12f7adb64736f6c63430008000033000000000000000000000000aa247c0d81b83812e1abf8bab078e4540d87e3fb

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806372cabf3d1161006657806372cabf3d146101595780639b9d02d514610189578063a694fc3a146101b9578063aaa76f22146101d5578063cf10568b146101f35761009e565b80630ae2bd49146100a3578063221e0bc6146100d357806326bd72a6146101035780632e17de78146101335780634641257d1461014f575b600080fd5b6100bd60048036038101906100b89190610ad6565b610211565b6040516100ca9190610f28565b60405180910390f35b6100ed60048036038101906100e89190610ad6565b610267565b6040516100fa9190610f28565b60405180910390f35b61011d60048036038101906101189190610ad6565b6102b0565b60405161012a9190610f28565b60405180910390f35b61014d60048036038101906101489190610b28565b6102f9565b005b61015761050f565b005b610173600480360381019061016e9190610ad6565b610694565b6040516101809190610f28565b60405180910390f35b6101a3600480360381019061019e9190610ad6565b6106fb565b6040516101b09190610f28565b60405180910390f35b6101d360048036038101906101ce9190610b28565b610744565b005b6101dd610a54565b6040516101ea9190610da4565b60405180910390f35b6101fb610a78565b6040516102089190610f28565b60405180910390f35b60006103e8600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546102609190610faa565b9050919050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561037b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161037290610e68565b60405180910390fd5b61038361050f565b80600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103d29190611035565b9250508190555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff1660e01b8152600401610437929190610e1f565b602060405180830381600087803b15801561045157600080fd5b505af1158015610465573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104899190610aff565b905060011515811515146104d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c990610ea8565b60405180910390fd5b7fe6dabef69dffaa9786923d67e8ad17248d542d64ec382c9ed9e789e672a6eea53383604051610503929190610e1f565b60405180910390a15050565b600061051a33610694565b90506000811015610560576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161055790610ec8565b60405180910390fd5b42600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546105ef9190610f54565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008282546106449190610f54565b9250508190555060006001541015610691576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068890610e88565b60405180910390fd5b50565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054426106e19190611035565b6106ea83610211565b6106f49190610fdb565b9050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008111610787576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077e90610e48565b60405180910390fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b81526004016107e5929190610dbf565b60206040518083038186803b1580156107fd57600080fd5b505afa158015610811573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108359190610b51565b90506000811161087a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087190610ee8565b60405180910390fd5b818110156108bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b490610f08565b60405180910390fd5b6108c561050f565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b815260040161092593929190610de8565b602060405180830381600087803b15801561093f57600080fd5b505af1158015610953573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109779190610aff565b905060011515811515146109c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b790610ea8565b60405180910390fd5b82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a0f9190610f54565b925050819055507f3652eddfe31e4d0c62e545f8ae4c0605f1fd1b157b52a3e2db39935ffc2a9a303384604051610a47929190610e1f565b60405180910390a1505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600154905090565b600081359050610a918161110f565b92915050565b600081519050610aa681611126565b92915050565b600081359050610abb8161113d565b92915050565b600081519050610ad08161113d565b92915050565b600060208284031215610ae857600080fd5b6000610af684828501610a82565b91505092915050565b600060208284031215610b1157600080fd5b6000610b1f84828501610a97565b91505092915050565b600060208284031215610b3a57600080fd5b6000610b4884828501610aac565b91505092915050565b600060208284031215610b6357600080fd5b6000610b7184828501610ac1565b91505092915050565b610b8381611069565b82525050565b6000610b96601f83610f43565b91507f7374616b6520616d6f756e74206d75737420626967676572207468656e2030006000830152602082019050919050565b6000610bd6601283610f43565b91507f6e6f7420656e6f7567682062616c616e636500000000000000000000000000006000830152602082019050919050565b6000610c16601983610f43565b91507f746f74616c5f637265646974206f766572666c6f7720657272000000000000006000830152602082019050919050565b6000610c56600e83610f43565b91507f7472616e73666572206572726f720000000000000000000000000000000000006000830152602082019050919050565b6000610c96602b83610f43565b91507f6372656469745f72657761726420736d616c6c6572207468656e20302065727260008301527f20696e20686172766573740000000000000000000000000000000000000000006020830152604082019050919050565b6000610cfc602483610f43565b91507f706c6561736520617070726f766520746f6b656e73206265666f72652073746160008301527f6b696e67000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000610d62601a83610f43565b91507f706c6561736520617070726f7665206d6f726520746f6b656e730000000000006000830152602082019050919050565b610d9e816110a7565b82525050565b6000602082019050610db96000830184610b7a565b92915050565b6000604082019050610dd46000830185610b7a565b610de16020830184610b7a565b9392505050565b6000606082019050610dfd6000830186610b7a565b610e0a6020830185610b7a565b610e176040830184610d95565b949350505050565b6000604082019050610e346000830185610b7a565b610e416020830184610d95565b9392505050565b60006020820190508181036000830152610e6181610b89565b9050919050565b60006020820190508181036000830152610e8181610bc9565b9050919050565b60006020820190508181036000830152610ea181610c09565b9050919050565b60006020820190508181036000830152610ec181610c49565b9050919050565b60006020820190508181036000830152610ee181610c89565b9050919050565b60006020820190508181036000830152610f0181610cef565b9050919050565b60006020820190508181036000830152610f2181610d55565b9050919050565b6000602082019050610f3d6000830184610d95565b92915050565b600082825260208201905092915050565b6000610f5f826110a7565b9150610f6a836110a7565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610f9f57610f9e6110b1565b5b828201905092915050565b6000610fb5826110a7565b9150610fc0836110a7565b925082610fd057610fcf6110e0565b5b828204905092915050565b6000610fe6826110a7565b9150610ff1836110a7565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561102a576110296110b1565b5b828202905092915050565b6000611040826110a7565b915061104b836110a7565b92508282101561105e5761105d6110b1565b5b828203905092915050565b600061107482611087565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b61111881611069565b811461112357600080fd5b50565b61112f8161107b565b811461113a57600080fd5b50565b611146816110a7565b811461115157600080fd5b5056fea2646970667358221220e7ae2dff6e9a754d6d0cfdedc697fa6e6b0fa5ae0254d9662e192b80e12f7adb64736f6c63430008000033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000aa247c0d81b83812e1abf8bab078e4540d87e3fb

-----Decoded View---------------
Arg [0] : _msn_contract_addr (address): 0xaA247c0D81B83812e1ABf8bAB078E4540D87e3fB

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000aa247c0d81b83812e1abf8bab078e4540d87e3fb


Deployed Bytecode Sourcemap

2971:2826:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4029:131;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3347:108;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3523:118;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5382:412;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4168:423;;;:::i;:::-;;3847:174;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3713:126;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4668:635;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2997:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3186:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4029:131;4097:7;4148:4;4124:15;:21;4140:4;4124:21;;;;;;;;;;;;;;;;:28;;;;:::i;:::-;4117:35;;4029:131;;;:::o;3347:108::-;3404:7;3431:10;:16;3442:4;3431:16;;;;;;;;;;;;;;;;3424:23;;3347:108;;;:::o;3523:118::-;3585:7;3612:15;:21;3628:4;3612:21;;;;;;;;;;;;;;;;3605:28;;3523:118;;;:::o;5382:412::-;5474:6;5443:15;:27;5459:10;5443:27;;;;;;;;;;;;;;;;:37;;5435:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5516:9;:7;:9::i;:::-;5569:6;5538:15;:27;5554:10;5538:27;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;5608:13;5631:20;;;;;;;;;;;5624:37;;;5662:10;5674:6;5624:57;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5608:73;;5712:4;5700:16;;:8;:16;;;5692:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;5753:33;5767:10;5779:6;5753:33;;;;;;;:::i;:::-;;;;;;;;5382:412;;:::o;4168:423::-;4205:21;4229:29;4247:10;4229:17;:29::i;:::-;4205:53;;4294:1;4277:13;:18;;4269:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;4388:15;4354:19;:31;4374:10;4354:31;;;;;;;;;;;;;;;:49;;;;4464:13;4439:10;:22;4450:10;4439:22;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;4414:10;:22;4425:10;4414:22;;;;;;;;;;;;;;;:63;;;;4504:13;4488:12;;:29;;;;;;;:::i;:::-;;;;;;;;4552:1;4536:12;;:17;;4528:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;4168:423;:::o;3847:174::-;3909:7;3987:19;:25;4007:4;3987:25;;;;;;;;;;;;;;;;3969:15;:43;;;;:::i;:::-;3936:29;3960:4;3936:23;:29::i;:::-;:77;;;;:::i;:::-;3929:84;;3847:174;;;:::o;3713:126::-;3779:7;3806:19;:25;3826:4;3806:25;;;;;;;;;;;;;;;;3799:32;;3713:126;;;:::o;4668:635::-;4736:1;4727:6;:10;4719:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;4786:17;4813:20;;;;;;;;;;;4806:38;;;4845:10;4865:4;4806:65;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4786:85;;4904:1;4892:9;:13;4884:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;4978:6;4965:9;:19;;4957:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;5028:9;:7;:9::i;:::-;5050:13;5073:20;;;;;;;;;;;5066:41;;;5108:10;5128:4;5135:6;5066:76;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5050:92;;5173:4;5161:16;;:8;:16;;;5153:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;5240:6;5209:15;:27;5225:10;5209:27;;;;;;;;;;;;;;;;:37;;;;;;;:::i;:::-;;;;;;;;5264:31;5276:10;5288:6;5264:31;;;;;;;:::i;:::-;;;;;;;;4668:635;;;:::o;2997:35::-;;;;;;;;;;;;:::o;3186:98::-;3237:7;3264:12;;3257:19;;3186:98;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:137::-;;237:6;231:13;222:22;;253:30;277:5;253:30;:::i;:::-;212:77;;;;:::o;295:139::-;;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;347:87;;;;:::o;440:143::-;;528:6;522:13;513:22;;544:33;571:5;544:33;:::i;:::-;503:80;;;;:::o;589:262::-;;697:2;685:9;676:7;672:23;668:32;665:2;;;713:1;710;703:12;665:2;756:1;781:53;826:7;817:6;806:9;802:22;781:53;:::i;:::-;771:63;;727:117;655:196;;;;:::o;857:278::-;;973:2;961:9;952:7;948:23;944:32;941:2;;;989:1;986;979:12;941:2;1032:1;1057:61;1110:7;1101:6;1090:9;1086:22;1057:61;:::i;:::-;1047:71;;1003:125;931:204;;;;:::o;1141:262::-;;1249:2;1237:9;1228:7;1224:23;1220:32;1217:2;;;1265:1;1262;1255:12;1217:2;1308:1;1333:53;1378:7;1369:6;1358:9;1354:22;1333:53;:::i;:::-;1323:63;;1279:117;1207:196;;;;:::o;1409:284::-;;1528:2;1516:9;1507:7;1503:23;1499:32;1496:2;;;1544:1;1541;1534:12;1496:2;1587:1;1612:64;1668:7;1659:6;1648:9;1644:22;1612:64;:::i;:::-;1602:74;;1558:128;1486:207;;;;:::o;1699:118::-;1786:24;1804:5;1786:24;:::i;:::-;1781:3;1774:37;1764:53;;:::o;1823:329::-;;1986:67;2050:2;2045:3;1986:67;:::i;:::-;1979:74;;2083:33;2079:1;2074:3;2070:11;2063:54;2143:2;2138:3;2134:12;2127:19;;1969:183;;;:::o;2158:316::-;;2321:67;2385:2;2380:3;2321:67;:::i;:::-;2314:74;;2418:20;2414:1;2409:3;2405:11;2398:41;2465:2;2460:3;2456:12;2449:19;;2304:170;;;:::o;2480:323::-;;2643:67;2707:2;2702:3;2643:67;:::i;:::-;2636:74;;2740:27;2736:1;2731:3;2727:11;2720:48;2794:2;2789:3;2785:12;2778:19;;2626:177;;;:::o;2809:312::-;;2972:67;3036:2;3031:3;2972:67;:::i;:::-;2965:74;;3069:16;3065:1;3060:3;3056:11;3049:37;3112:2;3107:3;3103:12;3096:19;;2955:166;;;:::o;3127:375::-;;3290:67;3354:2;3349:3;3290:67;:::i;:::-;3283:74;;3387:34;3383:1;3378:3;3374:11;3367:55;3453:13;3448:2;3443:3;3439:12;3432:35;3493:2;3488:3;3484:12;3477:19;;3273:229;;;:::o;3508:368::-;;3671:67;3735:2;3730:3;3671:67;:::i;:::-;3664:74;;3768:34;3764:1;3759:3;3755:11;3748:55;3834:6;3829:2;3824:3;3820:12;3813:28;3867:2;3862:3;3858:12;3851:19;;3654:222;;;:::o;3882:324::-;;4045:67;4109:2;4104:3;4045:67;:::i;:::-;4038:74;;4142:28;4138:1;4133:3;4129:11;4122:49;4197:2;4192:3;4188:12;4181:19;;4028:178;;;:::o;4212:118::-;4299:24;4317:5;4299:24;:::i;:::-;4294:3;4287:37;4277:53;;:::o;4336:222::-;;4467:2;4456:9;4452:18;4444:26;;4480:71;4548:1;4537:9;4533:17;4524:6;4480:71;:::i;:::-;4434:124;;;;:::o;4564:332::-;;4723:2;4712:9;4708:18;4700:26;;4736:71;4804:1;4793:9;4789:17;4780:6;4736:71;:::i;:::-;4817:72;4885:2;4874:9;4870:18;4861:6;4817:72;:::i;:::-;4690:206;;;;;:::o;4902:442::-;;5089:2;5078:9;5074:18;5066:26;;5102:71;5170:1;5159:9;5155:17;5146:6;5102:71;:::i;:::-;5183:72;5251:2;5240:9;5236:18;5227:6;5183:72;:::i;:::-;5265;5333:2;5322:9;5318:18;5309:6;5265:72;:::i;:::-;5056:288;;;;;;:::o;5350:332::-;;5509:2;5498:9;5494:18;5486:26;;5522:71;5590:1;5579:9;5575:17;5566:6;5522:71;:::i;:::-;5603:72;5671:2;5660:9;5656:18;5647:6;5603:72;:::i;:::-;5476:206;;;;;:::o;5688:419::-;;5892:2;5881:9;5877:18;5869:26;;5941:9;5935:4;5931:20;5927:1;5916:9;5912:17;5905:47;5969:131;6095:4;5969:131;:::i;:::-;5961:139;;5859:248;;;:::o;6113:419::-;;6317:2;6306:9;6302:18;6294:26;;6366:9;6360:4;6356:20;6352:1;6341:9;6337:17;6330:47;6394:131;6520:4;6394:131;:::i;:::-;6386:139;;6284:248;;;:::o;6538:419::-;;6742:2;6731:9;6727:18;6719:26;;6791:9;6785:4;6781:20;6777:1;6766:9;6762:17;6755:47;6819:131;6945:4;6819:131;:::i;:::-;6811:139;;6709:248;;;:::o;6963:419::-;;7167:2;7156:9;7152:18;7144:26;;7216:9;7210:4;7206:20;7202:1;7191:9;7187:17;7180:47;7244:131;7370:4;7244:131;:::i;:::-;7236:139;;7134:248;;;:::o;7388:419::-;;7592:2;7581:9;7577:18;7569:26;;7641:9;7635:4;7631:20;7627:1;7616:9;7612:17;7605:47;7669:131;7795:4;7669:131;:::i;:::-;7661:139;;7559:248;;;:::o;7813:419::-;;8017:2;8006:9;8002:18;7994:26;;8066:9;8060:4;8056:20;8052:1;8041:9;8037:17;8030:47;8094:131;8220:4;8094:131;:::i;:::-;8086:139;;7984:248;;;:::o;8238:419::-;;8442:2;8431:9;8427:18;8419:26;;8491:9;8485:4;8481:20;8477:1;8466:9;8462:17;8455:47;8519:131;8645:4;8519:131;:::i;:::-;8511:139;;8409:248;;;:::o;8663:222::-;;8794:2;8783:9;8779:18;8771:26;;8807:71;8875:1;8864:9;8860:17;8851:6;8807:71;:::i;:::-;8761:124;;;;:::o;8891:169::-;;9009:6;9004:3;8997:19;9049:4;9044:3;9040:14;9025:29;;8987:73;;;;:::o;9066:305::-;;9125:20;9143:1;9125:20;:::i;:::-;9120:25;;9159:20;9177:1;9159:20;:::i;:::-;9154:25;;9313:1;9245:66;9241:74;9238:1;9235:81;9232:2;;;9319:18;;:::i;:::-;9232:2;9363:1;9360;9356:9;9349:16;;9110:261;;;;:::o;9377:185::-;;9434:20;9452:1;9434:20;:::i;:::-;9429:25;;9468:20;9486:1;9468:20;:::i;:::-;9463:25;;9507:1;9497:2;;9512:18;;:::i;:::-;9497:2;9554:1;9551;9547:9;9542:14;;9419:143;;;;:::o;9568:348::-;;9631:20;9649:1;9631:20;:::i;:::-;9626:25;;9665:20;9683:1;9665:20;:::i;:::-;9660:25;;9853:1;9785:66;9781:74;9778:1;9775:81;9770:1;9763:9;9756:17;9752:105;9749:2;;;9860:18;;:::i;:::-;9749:2;9908:1;9905;9901:9;9890:20;;9616:300;;;;:::o;9922:191::-;;9982:20;10000:1;9982:20;:::i;:::-;9977:25;;10016:20;10034:1;10016:20;:::i;:::-;10011:25;;10055:1;10052;10049:8;10046:2;;;10060:18;;:::i;:::-;10046:2;10105:1;10102;10098:9;10090:17;;9967:146;;;;:::o;10119:96::-;;10185:24;10203:5;10185:24;:::i;:::-;10174:35;;10164:51;;;:::o;10221:90::-;;10298:5;10291:13;10284:21;10273:32;;10263:48;;;:::o;10317:126::-;;10394:42;10387:5;10383:54;10372:65;;10362:81;;;:::o;10449:77::-;;10515:5;10504:16;;10494:32;;;:::o;10532:180::-;10580:77;10577:1;10570:88;10677:4;10674:1;10667:15;10701:4;10698:1;10691:15;10718:180;10766:77;10763:1;10756:88;10863:4;10860:1;10853:15;10887:4;10884:1;10877:15;10904:122;10977:24;10995:5;10977:24;:::i;:::-;10970:5;10967:35;10957:2;;11016:1;11013;11006:12;10957:2;10947:79;:::o;11032:116::-;11102:21;11117:5;11102:21;:::i;:::-;11095:5;11092:32;11082:2;;11138:1;11135;11128:12;11082:2;11072:76;:::o;11154:122::-;11227:24;11245:5;11227:24;:::i;:::-;11220:5;11217:35;11207:2;;11266:1;11263;11256:12;11207:2;11197:79;:::o

Swarm Source

ipfs://e7ae2dff6e9a754d6d0cfdedc697fa6e6b0fa5ae0254d9662e192b80e12f7adb

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.