Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 583 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 43181437 | 43 hrs ago | IN | 0 ETH | 0.00000159 | ||||
| Approve | 43181348 | 43 hrs ago | IN | 0 ETH | 0.00000169 | ||||
| Transfer | 43175974 | 46 hrs ago | IN | 0 ETH | 0.00000017 | ||||
| Transfer | 43160514 | 2 days ago | IN | 0 ETH | 0.00000044 | ||||
| Transfer | 43160116 | 2 days ago | IN | 0 ETH | 0.00000026 | ||||
| Approve | 43132652 | 2 days ago | IN | 0 ETH | 0.00000028 | ||||
| Transfer | 43071468 | 4 days ago | IN | 0 ETH | 0.00000017 | ||||
| Transfer | 43015684 | 5 days ago | IN | 0 ETH | 0.00000018 | ||||
| Approve | 43015659 | 5 days ago | IN | 0 ETH | 0.00000033 | ||||
| Approve | 43015065 | 5 days ago | IN | 0 ETH | 0.00000036 | ||||
| Approve | 43013973 | 5 days ago | IN | 0 ETH | 0.00000028 | ||||
| Approve | 43008673 | 5 days ago | IN | 0 ETH | 0.00000175 | ||||
| Approve | 42932891 | 7 days ago | IN | 0 ETH | 0.00000027 | ||||
| Approve | 42932295 | 7 days ago | IN | 0 ETH | 0.00000028 | ||||
| Approve | 42921840 | 7 days ago | IN | 0 ETH | 0.00000028 | ||||
| Transfer | 42888212 | 8 days ago | IN | 0 ETH | 0.00000033 | ||||
| Approve | 42877688 | 8 days ago | IN | 0 ETH | 0.00000029 | ||||
| Approve | 42876527 | 8 days ago | IN | 0 ETH | 0.00000028 | ||||
| Approve | 42818386 | 10 days ago | IN | 0 ETH | 0.00000246 | ||||
| Approve | 42748914 | 11 days ago | IN | 0 ETH | 0.00000067 | ||||
| Approve | 42723270 | 12 days ago | IN | 0 ETH | 0.00000027 | ||||
| Transfer | 42684123 | 13 days ago | IN | 0 ETH | 0.00000026 | ||||
| Approve | 42677401 | 13 days ago | IN | 0 ETH | 0.00000022 | ||||
| Approve | 42677401 | 13 days ago | IN | 0 ETH | 0.00000035 | ||||
| Approve | 42677400 | 13 days ago | IN | 0 ETH | 0.00000035 |
Latest 1 internal transaction
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 39309474 | 91 days ago | 0.011 ETH |
Cross-Chain Transactions
Loading...
Loading
Contract Name:
MoguonBase
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
/**
* @title MoguonBase
* @dev Basic ERC20 Token with Platform Fee Collection
*
* Features:
* - Standard ERC20 token with no complex features
* - Deployment fee + CME fee collected on deployment
* - All ETH sent to CME wallet (no refunds)
* - All tokens minted to deployer's address
* - Secure payment handling with validation
*
* ✅ AUDIT-SAFE FEATURES:
* - No pausable functionality (cannot freeze trading)
* - No blocklist/blacklist capability (honeypot protection)
* - Ownership can be renounced (full decentralization)
* - OpenZeppelin security standards
*
* Security:
* - Payment validation ensures minimum required amount paid
* - Uses .call() for reentrancy protection
* - All excess ETH goes to platform (CME wallet)
*/
contract MoguonBase is ERC20, Ownable {
/// @notice CME wallet that receives platform fees
address public immutable CME_WALLET;
/// @notice Total fee amount paid on deployment
uint256 public immutable DEPLOYMENT_FEE;
/// @notice Deployment timestamp
uint256 public immutable DEPLOYED_AT;
/// @notice Trading delay (3 seconds anti-snipe protection)
uint256 public constant TRADING_DELAY = 3;
/// @notice Web developer wallet address
address public immutable WEB_DEVELOPER_WALLET;
/// @notice Web developer mint percentage (scaled by 100, so 1.0 = 100)
uint256 public immutable WEB_DEVELOPER_MINT_PERCENTAGE;
/// @notice Whether web developer minting is enabled
bool public immutable WEB_DEVELOPER_MINT_ENABLED;
/// @notice Event emitted when fees are collected
event FeeCollected(address indexed cmeWallet, uint256 feeAmount, uint256 timestamp);
/// @notice Event emitted when web developer tokens are minted
event WebDeveloperTokensMinted(address indexed webDeveloper, uint256 tokenAmount, uint256 timestamp);
/**
* @dev Constructor that collects fees and mints tokens
* @param name Token name
* @param symbol Token symbol
* @param totalSupply Total supply of tokens (with 18 decimals)
* @param cmeWallet Address to receive platform fees
* @param requiredFee Total fee required (deployment + CME fee in wei)
*/
constructor(
string memory name,
string memory symbol,
uint256 totalSupply,
address cmeWallet,
uint256 requiredFee
) payable ERC20(name, symbol) Ownable() {
// Security: Validate inputs
require(cmeWallet != address(0), "Invalid CME wallet address");
require(totalSupply > 0, "Total supply must be greater than 0");
require(msg.value >= requiredFee, "Insufficient payment: please send the required deployment fee");
// Store immutable values
CME_WALLET = cmeWallet;
DEPLOYMENT_FEE = requiredFee;
DEPLOYED_AT = block.timestamp;
// Web developer minting (disabled for Basic tier)
WEB_DEVELOPER_WALLET = address(0);
WEB_DEVELOPER_MINT_PERCENTAGE = 0;
WEB_DEVELOPER_MINT_ENABLED = false;
// Security: Transfer ALL ETH to CME wallet using call for reentrancy protection
// All ETH (including any excess) goes to CME wallet as platform revenue
if (msg.value > 0) {
(bool totalPaid, ) = payable(cmeWallet).call{value: msg.value}("");
require(totalPaid, "CME payment failed");
emit FeeCollected(cmeWallet, msg.value, block.timestamp);
}
// Mint entire supply to the contract deployer
_mint(msg.sender, totalSupply);
}
/**
* @dev Get deployment information
* @return cmeWallet Address that received fees
* @return deploymentFee Total fee paid
* @return deployedAt Deployment timestamp
*/
function getDeploymentInfo() external view returns (
address cmeWallet,
uint256 deploymentFee,
uint256 deployedAt
) {
return (CME_WALLET, DEPLOYMENT_FEE, DEPLOYED_AT);
}
/**
* @dev Get trading status and timing info
*/
function getTradingInfo() external view returns (
bool tradingEnabled,
uint256 deployedAt,
uint256 tradingStartTime,
uint256 currentTime
) {
tradingEnabled = block.timestamp >= DEPLOYED_AT + TRADING_DELAY;
deployedAt = DEPLOYED_AT;
tradingStartTime = DEPLOYED_AT + TRADING_DELAY;
currentTime = block.timestamp;
return (tradingEnabled, deployedAt, tradingStartTime, currentTime);
}
/**
* @dev Override transfer to include 3-second trading delay
*/
function transfer(address to, uint256 amount) public virtual override returns (bool) {
require(block.timestamp >= DEPLOYED_AT + TRADING_DELAY, "Trading starts in 3 seconds after deployment");
return super.transfer(to, amount);
}
/**
* @dev Override transferFrom to include 3-second trading delay
*/
function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
require(block.timestamp >= DEPLOYED_AT + TRADING_DELAY, "Trading starts in 3 seconds after deployment");
return super.transferFrom(from, to, amount);
}
/**
* @dev Internal stub for web developer minting (not used in Basic tier)
* Provided for interface consistency with Silver/Premium tiers
*/
function _mintWebDeveloperTokens(uint256 totalSupply) internal {
// Web developer minting is disabled for Basic tier
// This function is a no-op (WEB_DEVELOPER_MINT_ENABLED = false)
}
/**
* @dev Renounce ownership - makes contract fully immutable
* @notice ⚠️ WARNING: This is IRREVERSIBLE! Call ONLY after:
* 1. Liquidity is provisioned and locked
* 2. All initial setup is complete
* 3. You are ready to make the contract fully decentralized
*
* After calling this function:
* - No one can call owner-only functions
* - Contract becomes completely immutable
* - Full decentralization achieved
*
* ✅ AUDIT-SAFE: Allows complete decentralization after setup
* ✅ AUDIT REQUIREMENT: Many scanners require ownership to be renounced
*/
function renounceOwnership() public override onlyOwner {
address oldOwner = owner();
_transferOwnership(address(0));
emit OwnershipTransferred(oldOwner, address(0));
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import "@openzeppelin/contracts/utils/Context.sol";
contract ERC20 is Context, IERC20, IERC20Metadata {
mapping(address => uint256) private _balances;
mapping(address => mapping(address => uint256)) private _allowances;
uint256 private _totalSupply;
string private _name;
string private _symbol;
constructor(string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
}
function name() public view virtual override returns (string memory) {
return _name;
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function decimals() public view virtual override returns (uint8) {
return 18;
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function transfer(address to, uint256 amount) public virtual override returns (bool) {
address owner = _msgSender();
_transfer(owner, to, amount);
return true;
}
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function approve(address spender, uint256 amount) public virtual override returns (bool) {
address owner = _msgSender();
_approve(owner, spender, amount);
return true;
}
function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
address spender = _msgSender();
_spendAllowance(from, spender, amount);
_transfer(from, to, amount);
return true;
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
address owner = _msgSender();
_approve(owner, spender, allowance(owner, spender) + addedValue);
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
address owner = _msgSender();
uint256 currentAllowance = allowance(owner, spender);
require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
unchecked {
_approve(owner, spender, currentAllowance - subtractedValue);
}
return true;
}
function _transfer(address from, address to, uint256 amount) internal virtual {
require(from != address(0), "ERC20: transfer from the zero address");
require(to != address(0), "ERC20: transfer to the zero address");
_beforeTokenTransfer(from, to, amount);
uint256 fromBalance = _balances[from];
require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
unchecked {
_balances[from] = fromBalance - amount;
_balances[to] += amount;
}
emit Transfer(from, to, amount);
_afterTokenTransfer(from, to, amount);
}
function _mint(address to, uint256 amount) internal virtual {
require(to != address(0), "ERC20: mint to the zero address");
_beforeTokenTransfer(address(0), to, amount);
_totalSupply += amount;
unchecked {
_balances[to] += amount;
}
emit Transfer(address(0), to, amount);
_afterTokenTransfer(address(0), to, amount);
}
function _burn(address from, uint256 amount) internal virtual {
require(from != address(0), "ERC20: burn from the zero address");
_beforeTokenTransfer(from, address(0), amount);
uint256 accountBalance = _balances[from];
require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
unchecked {
_balances[from] = accountBalance - amount;
_totalSupply -= amount;
}
emit Transfer(from, address(0), amount);
_afterTokenTransfer(from, address(0), amount);
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
uint256 currentAllowance = allowance(owner, spender);
if (currentAllowance != type(uint256).max) {
require(currentAllowance >= amount, "ERC20: insufficient allowance");
unchecked {
_approve(owner, spender, currentAllowance - amount);
}
}
}
function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}
function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
interface IERC20 {
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address from, address to, uint256 amount) external returns (bool);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "../IERC20.sol";
interface IERC20Metadata is IERC20 {
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/utils/Context.sol";
abstract contract Ownable is Context {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor() {
_transferOwnership(_msgSender());
}
modifier onlyOwner() {
_checkOwner();
_;
}
function owner() public view virtual returns (address) {
return _owner;
}
function _checkOwner() internal view virtual {
require(owner() == _msgSender(), "Ownable: caller is not the owner");
}
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
_transferOwnership(newOwner);
}
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/utils/Context.sol";
abstract contract Pausable is Context {
event Paused(address account);
event Unpaused(address account);
bool private _paused;
constructor() {
_paused = false;
}
modifier whenNotPaused() {
_requireNotPaused();
_;
}
modifier whenPaused() {
_requirePaused();
_;
}
function paused() public view virtual returns (bool) {
return _paused;
}
function _requireNotPaused() internal view virtual {
require(!paused(), "Pausable: paused");
}
function _requirePaused() internal view virtual {
require(paused(), "Pausable: not paused");
}
function _pause() internal virtual whenNotPaused {
_paused = true;
emit Paused(_msgSender());
}
function _unpause() internal virtual whenPaused {
_paused = false;
emit Unpaused(_msgSender());
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/utils/Context.sol";
abstract contract ERC20Burnable is Context, ERC20 {
function burn(uint256 amount) public virtual {
_burn(_msgSender(), amount);
}
function burnFrom(address account, uint256 amount) public virtual {
_spendAllowance(account, _msgSender(), amount);
_burn(account, amount);
}
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"address","name":"cmeWallet","type":"address"},{"internalType":"uint256","name":"requiredFee","type":"uint256"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"cmeWallet","type":"address"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"FeeCollected","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"webDeveloper","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"WebDeveloperTokensMinted","type":"event"},{"inputs":[],"name":"CME_WALLET","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEPLOYED_AT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEPLOYMENT_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TRADING_DELAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WEB_DEVELOPER_MINT_ENABLED","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WEB_DEVELOPER_MINT_PERCENTAGE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WEB_DEVELOPER_WALLET","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getDeploymentInfo","outputs":[{"internalType":"address","name":"cmeWallet","type":"address"},{"internalType":"uint256","name":"deploymentFee","type":"uint256"},{"internalType":"uint256","name":"deployedAt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTradingInfo","outputs":[{"internalType":"bool","name":"tradingEnabled","type":"bool"},{"internalType":"uint256","name":"deployedAt","type":"uint256"},{"internalType":"uint256","name":"tradingStartTime","type":"uint256"},{"internalType":"uint256","name":"currentTime","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","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"}]Contract Creation Code
610140604052604051620014cb380380620014cb83398101604081905262000027916200048e565b84846003620000378382620005b3565b506004620000468282620005b3565b505050620000636200005d620002b560201b60201c565b620002b9565b6001600160a01b038216620000bf5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c696420434d452077616c6c6574206164647265737300000000000060448201526064015b60405180910390fd5b5f83116200011c5760405162461bcd60e51b815260206004820152602360248201527f546f74616c20737570706c79206d75737420626520677265617465722074686160448201526206e20360ec1b6064820152608401620000b6565b80341015620001945760405162461bcd60e51b815260206004820152603d60248201527f496e73756666696369656e74207061796d656e743a20706c656173652073656e60448201527f6420746865207265717569726564206465706c6f796d656e74206665650000006064820152608401620000b6565b6001600160a01b03821660805260a08190524260c0525f60e08190526101008190526101205234156200029e575f826001600160a01b0316346040515f6040518083038185875af1925050503d805f81146200020c576040519150601f19603f3d011682016040523d82523d5f602084013e62000211565b606091505b5050905080620002595760405162461bcd60e51b815260206004820152601260248201527110d351481c185e5b595b9d0819985a5b195960721b6044820152606401620000b6565b604080513481524260208201526001600160a01b038516917f108516ddcf5ba43cea6bb2cd5ff6d59ac196c1c86ccb9178332b9dd72d1ca561910160405180910390a2505b620002aa33846200030a565b5050505050620006a1565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b038216620003625760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620000b6565b8060025f8282546200037591906200067b565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112620003f4575f80fd5b81516001600160401b0380821115620004115762000411620003d0565b604051601f8301601f19908116603f011681019082821181831017156200043c576200043c620003d0565b8160405283815260209250868385880101111562000458575f80fd5b5f91505b838210156200047b57858201830151818301840152908201906200045c565b5f93810190920192909252949350505050565b5f805f805f60a08688031215620004a3575f80fd5b85516001600160401b0380821115620004ba575f80fd5b620004c889838a01620003e4565b96506020880151915080821115620004de575f80fd5b50620004ed88828901620003e4565b60408801516060890151919650945090506001600160a01b038116811462000513575f80fd5b80925050608086015190509295509295909350565b600181811c908216806200053d57607f821691505b6020821081036200055c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620003cb575f81815260208120601f850160051c810160208610156200058a5750805b601f850160051c820191505b81811015620005ab5782815560010162000596565b505050505050565b81516001600160401b03811115620005cf57620005cf620003d0565b620005e781620005e0845462000528565b8462000562565b602080601f8311600181146200061d575f8415620006055750858301515b5f19600386901b1c1916600185901b178555620005ab565b5f85815260208120601f198616915b828110156200064d578886015182559484019460019091019084016200062c565b50858210156200066b57878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200069b57634e487b7160e01b5f52601160045260245ffd5b92915050565b60805160a05160c05160e0516101005161012051610db16200071a5f395f61019201525f6101b901525f6102b601525f8181610255015281816103ae015281816104da015281816105440152818161056f01526106c101525f8181610321015261038801525f818161036401526103e10152610db15ff3fe608060405234801561000f575f80fd5b5060043610610148575f3560e01c8063715018a6116100bf578063a8f3225111610079578063a8f322511461031c578063a9059cbb14610343578063aeefffad14610356578063c8fb4f1f146103dc578063dd62ed3e14610403578063f2fde38b14610416575f80fd5b8063715018a61461029f57806376ee241d146102a9578063781e0c07146102b15780638da5cb5b146102f057806395d89b4114610301578063a457c2d714610309575f80fd5b806323b872dd1161011057806323b872dd146101f1578063276ef78914610204578063313ce5671461022e578063395093511461023d5780636ebb8cd21461025057806370a0823114610277575f80fd5b806306fdde031461014c578063095ea7b31461016a5780630dc0a1011461018d5780630e86db32146101b457806318160ddd146101e9575b5f80fd5b610154610429565b6040516101619190610bc7565b60405180910390f35b61017d610178366004610c2d565b6104b9565b6040519015158152602001610161565b61017d7f000000000000000000000000000000000000000000000000000000000000000081565b6101db7f000000000000000000000000000000000000000000000000000000000000000081565b604051908152602001610161565b6002546101db565b61017d6101ff366004610c55565b6104d2565b61020c610539565b6040805194151585526020850193909352918301526060820152608001610161565b60405160128152602001610161565b61017d61024b366004610c2d565b6105a6565b6101db7f000000000000000000000000000000000000000000000000000000000000000081565b6101db610285366004610c8e565b6001600160a01b03165f9081526020819052604090205490565b6102a76105c7565b005b6101db600381565b6102d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610161565b6005546001600160a01b03166102d8565b610154610625565b61017d610317366004610c2d565b610634565b6101db7f000000000000000000000000000000000000000000000000000000000000000081565b61017d610351366004610c2d565b6106b9565b604080516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001681527f000000000000000000000000000000000000000000000000000000000000000060208201527f000000000000000000000000000000000000000000000000000000000000000091810191909152606001610161565b6102d87f000000000000000000000000000000000000000000000000000000000000000081565b6101db610411366004610ca7565b610715565b6102a7610424366004610c8e565b61073f565b60606003805461043890610cd8565b80601f016020809104026020016040519081016040528092919081815260200182805461046490610cd8565b80156104af5780601f10610486576101008083540402835291602001916104af565b820191905f5260205f20905b81548152906001019060200180831161049257829003601f168201915b5050505050905090565b5f336104c68185856107b8565b60019150505b92915050565b5f6104fe60037f0000000000000000000000000000000000000000000000000000000000000000610d10565b4210156105265760405162461bcd60e51b815260040161051d90610d2f565b60405180910390fd5b6105318484846108db565b949350505050565b5f80808061056860037f0000000000000000000000000000000000000000000000000000000000000000610d10565b42101593507f0000000000000000000000000000000000000000000000000000000000000000925061059b600384610d10565b915042905090919293565b5f336104c68185856105b88383610715565b6105c29190610d10565b6107b8565b6105cf6108f3565b5f6105e26005546001600160a01b031690565b90506105ed5f61094f565b6040515f906001600160a01b038316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60606004805461043890610cd8565b5f33816106418286610715565b9050838110156106a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161051d565b6106ae82868684036107b8565b506001949350505050565b5f6106e560037f0000000000000000000000000000000000000000000000000000000000000000610d10565b4210156107045760405162461bcd60e51b815260040161051d90610d2f565b61070e83836109a0565b9392505050565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6107476108f3565b6001600160a01b0381166107ac5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161051d565b6107b58161094f565b50565b6001600160a01b03831661081a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161051d565b6001600160a01b03821661087b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161051d565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f336108e88582856109ad565b6106ae858585610a25565b6005546001600160a01b0316331461094d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161051d565b565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f336104c6818585610a25565b5f6109b88484610715565b90505f198114610a1f5781811015610a125760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161051d565b610a1f84848484036107b8565b50505050565b6001600160a01b038316610a895760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161051d565b6001600160a01b038216610aeb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161051d565b6001600160a01b0383165f9081526020819052604090205481811015610b625760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161051d565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610a1f565b5f6020808352835180828501525f5b81811015610bf257858101830151858201604001528201610bd6565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c28575f80fd5b919050565b5f8060408385031215610c3e575f80fd5b610c4783610c12565b946020939093013593505050565b5f805f60608486031215610c67575f80fd5b610c7084610c12565b9250610c7e60208501610c12565b9150604084013590509250925092565b5f60208284031215610c9e575f80fd5b61070e82610c12565b5f8060408385031215610cb8575f80fd5b610cc183610c12565b9150610ccf60208401610c12565b90509250929050565b600181811c90821680610cec57607f821691505b602082108103610d0a57634e487b7160e01b5f52602260045260245ffd5b50919050565b808201808211156104cc57634e487b7160e01b5f52601160045260245ffd5b6020808252602c908201527f54726164696e672073746172747320696e2033207365636f6e6473206166746560408201526b1c8819195c1b1bde5b595b9d60a21b60608201526080019056fea264697066735822122076de7e4c8d6036932cbb6832ec9e7839b2a6b805b2f1ebd6cacd2ba756df86de64736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000aa4583f8b65ee0f77775642fdfd49a7f505ce9050000000000000000000000000000000000000000000000000027147114878000000000000000000000000000000000000000000000000000000000000000000c4d6f6775206f6e2042617365000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044d4f475500000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561000f575f80fd5b5060043610610148575f3560e01c8063715018a6116100bf578063a8f3225111610079578063a8f322511461031c578063a9059cbb14610343578063aeefffad14610356578063c8fb4f1f146103dc578063dd62ed3e14610403578063f2fde38b14610416575f80fd5b8063715018a61461029f57806376ee241d146102a9578063781e0c07146102b15780638da5cb5b146102f057806395d89b4114610301578063a457c2d714610309575f80fd5b806323b872dd1161011057806323b872dd146101f1578063276ef78914610204578063313ce5671461022e578063395093511461023d5780636ebb8cd21461025057806370a0823114610277575f80fd5b806306fdde031461014c578063095ea7b31461016a5780630dc0a1011461018d5780630e86db32146101b457806318160ddd146101e9575b5f80fd5b610154610429565b6040516101619190610bc7565b60405180910390f35b61017d610178366004610c2d565b6104b9565b6040519015158152602001610161565b61017d7f000000000000000000000000000000000000000000000000000000000000000081565b6101db7f000000000000000000000000000000000000000000000000000000000000000081565b604051908152602001610161565b6002546101db565b61017d6101ff366004610c55565b6104d2565b61020c610539565b6040805194151585526020850193909352918301526060820152608001610161565b60405160128152602001610161565b61017d61024b366004610c2d565b6105a6565b6101db7f000000000000000000000000000000000000000000000000000000006939fe2781565b6101db610285366004610c8e565b6001600160a01b03165f9081526020819052604090205490565b6102a76105c7565b005b6101db600381565b6102d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610161565b6005546001600160a01b03166102d8565b610154610625565b61017d610317366004610c2d565b610634565b6101db7f000000000000000000000000000000000000000000000000002714711487800081565b61017d610351366004610c2d565b6106b9565b604080516001600160a01b037f000000000000000000000000aa4583f8b65ee0f77775642fdfd49a7f505ce9051681527f000000000000000000000000000000000000000000000000002714711487800060208201527f000000000000000000000000000000000000000000000000000000006939fe2791810191909152606001610161565b6102d87f000000000000000000000000aa4583f8b65ee0f77775642fdfd49a7f505ce90581565b6101db610411366004610ca7565b610715565b6102a7610424366004610c8e565b61073f565b60606003805461043890610cd8565b80601f016020809104026020016040519081016040528092919081815260200182805461046490610cd8565b80156104af5780601f10610486576101008083540402835291602001916104af565b820191905f5260205f20905b81548152906001019060200180831161049257829003601f168201915b5050505050905090565b5f336104c68185856107b8565b60019150505b92915050565b5f6104fe60037f000000000000000000000000000000000000000000000000000000006939fe27610d10565b4210156105265760405162461bcd60e51b815260040161051d90610d2f565b60405180910390fd5b6105318484846108db565b949350505050565b5f80808061056860037f000000000000000000000000000000000000000000000000000000006939fe27610d10565b42101593507f000000000000000000000000000000000000000000000000000000006939fe27925061059b600384610d10565b915042905090919293565b5f336104c68185856105b88383610715565b6105c29190610d10565b6107b8565b6105cf6108f3565b5f6105e26005546001600160a01b031690565b90506105ed5f61094f565b6040515f906001600160a01b038316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a350565b60606004805461043890610cd8565b5f33816106418286610715565b9050838110156106a15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161051d565b6106ae82868684036107b8565b506001949350505050565b5f6106e560037f000000000000000000000000000000000000000000000000000000006939fe27610d10565b4210156107045760405162461bcd60e51b815260040161051d90610d2f565b61070e83836109a0565b9392505050565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6107476108f3565b6001600160a01b0381166107ac5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161051d565b6107b58161094f565b50565b6001600160a01b03831661081a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161051d565b6001600160a01b03821661087b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161051d565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f336108e88582856109ad565b6106ae858585610a25565b6005546001600160a01b0316331461094d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161051d565b565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f336104c6818585610a25565b5f6109b88484610715565b90505f198114610a1f5781811015610a125760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161051d565b610a1f84848484036107b8565b50505050565b6001600160a01b038316610a895760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161051d565b6001600160a01b038216610aeb5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161051d565b6001600160a01b0383165f9081526020819052604090205481811015610b625760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161051d565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610a1f565b5f6020808352835180828501525f5b81811015610bf257858101830151858201604001528201610bd6565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c28575f80fd5b919050565b5f8060408385031215610c3e575f80fd5b610c4783610c12565b946020939093013593505050565b5f805f60608486031215610c67575f80fd5b610c7084610c12565b9250610c7e60208501610c12565b9150604084013590509250925092565b5f60208284031215610c9e575f80fd5b61070e82610c12565b5f8060408385031215610cb8575f80fd5b610cc183610c12565b9150610ccf60208401610c12565b90509250929050565b600181811c90821680610cec57607f821691505b602082108103610d0a57634e487b7160e01b5f52602260045260245ffd5b50919050565b808201808211156104cc57634e487b7160e01b5f52601160045260245ffd5b6020808252602c908201527f54726164696e672073746172747320696e2033207365636f6e6473206166746560408201526b1c8819195c1b1bde5b595b9d60a21b60608201526080019056fea264697066735822122076de7e4c8d6036932cbb6832ec9e7839b2a6b805b2f1ebd6cacd2ba756df86de64736f6c63430008140033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000aa4583f8b65ee0f77775642fdfd49a7f505ce9050000000000000000000000000000000000000000000000000027147114878000000000000000000000000000000000000000000000000000000000000000000c4d6f6775206f6e2042617365000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044d4f475500000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name (string): Mogu on Base
Arg [1] : symbol (string): MOGU
Arg [2] : totalSupply (uint256): 1000000000000000000000000000
Arg [3] : cmeWallet (address): 0xAa4583f8B65eE0F77775642FdFD49A7f505ce905
Arg [4] : requiredFee (uint256): 11000000000000000
-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [3] : 000000000000000000000000aa4583f8b65ee0f77775642fdfd49a7f505ce905
Arg [4] : 0000000000000000000000000000000000000000000000000027147114878000
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000c
Arg [6] : 4d6f6775206f6e20426173650000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [8] : 4d4f475500000000000000000000000000000000000000000000000000000000
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.