Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
PumpCoins
Compiler Version
v0.8.20+commit.a1b79de6
Optimization Enabled:
No with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; interface ICoinCloner { function deployNewPumpCoin( string memory _name, string memory _symbol, address creator, uint256 supplyAmount ) external returns(address newPumpCoin); } contract PumpCoins { address internal clonerPC; address[] internal createdCoins; mapping(address => bool) existingCoins; constructor(address _clonerPC) { clonerPC = _clonerPC; } function createPumpCoin( string calldata name, string calldata symbol, address creator, uint256 supplyAmount ) public { address deployedContract = ICoinCloner(clonerPC) .deployNewPumpCoin( name, symbol, creator, supplyAmount ); createdCoins.push(deployedContract); existingCoins[deployedContract] = true; } function isExistingCoin(address pumpCoin) external view returns (bool) { return existingCoins[pumpCoin]; } function getAllCoins() public view returns (address[] memory) { return createdCoins; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.20; /** * @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 value of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the value of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves a `value` amount of 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 value) 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 a `value` amount of tokens 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 value) external returns (bool); /** * @dev Moves a `value` amount of tokens from `from` to `to` using the * allowance mechanism. `value` 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 value) external returns (bool); }
{ "evmVersion": "paris", "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_clonerPC","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"uint256","name":"supplyAmount","type":"uint256"}],"name":"createPumpCoin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAllCoins","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pumpCoin","type":"address"}],"name":"isExistingCoin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051610852380380610852833981810160405281019061003291906100db565b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610108565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006100a88261007d565b9050919050565b6100b88161009d565b81146100c357600080fd5b50565b6000815190506100d5816100af565b92915050565b6000602082840312156100f1576100f0610078565b5b60006100ff848285016100c6565b91505092915050565b61073b806101176000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80636cee274f14610046578063a4ec062014610076578063efec920c14610094575b600080fd5b610060600480360381019061005b919061036b565b6100b0565b60405161006d91906103b3565b60405180910390f35b61007e610106565b60405161008b919061048c565b60405180910390f35b6100ae60048036038101906100a99190610549565b610194565b005b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6060600180548060200260200160405190810160405280929190818152602001828054801561018a57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610140575b5050505050905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e4b461258888888888886040518763ffffffff1660e01b81526004016101fa9695949392919061066c565b6020604051808303816000875af1158015610219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023d91906106d8565b90506001819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050505050505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103388261030d565b9050919050565b6103488161032d565b811461035357600080fd5b50565b6000813590506103658161033f565b92915050565b60006020828403121561038157610380610303565b5b600061038f84828501610356565b91505092915050565b60008115159050919050565b6103ad81610398565b82525050565b60006020820190506103c860008301846103a4565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6104038161032d565b82525050565b600061041583836103fa565b60208301905092915050565b6000602082019050919050565b6000610439826103ce565b61044381856103d9565b935061044e836103ea565b8060005b8381101561047f5781516104668882610409565b975061047183610421565b925050600181019050610452565b5085935050505092915050565b600060208201905081810360008301526104a6818461042e565b905092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126104d3576104d26104ae565b5b8235905067ffffffffffffffff8111156104f0576104ef6104b3565b5b60208301915083600182028301111561050c5761050b6104b8565b5b9250929050565b6000819050919050565b61052681610513565b811461053157600080fd5b50565b6000813590506105438161051d565b92915050565b6000806000806000806080878903121561056657610565610303565b5b600087013567ffffffffffffffff81111561058457610583610308565b5b61059089828a016104bd565b9650965050602087013567ffffffffffffffff8111156105b3576105b2610308565b5b6105bf89828a016104bd565b945094505060406105d289828a01610356565b92505060606105e389828a01610534565b9150509295509295509295565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061062d83856105f0565b935061063a838584610601565b61064383610610565b840190509392505050565b6106578161032d565b82525050565b61066681610513565b82525050565b6000608082019050818103600083015261068781888a610621565b9050818103602083015261069c818688610621565b90506106ab604083018561064e565b6106b8606083018461065d565b979650505050505050565b6000815190506106d28161033f565b92915050565b6000602082840312156106ee576106ed610303565b5b60006106fc848285016106c3565b9150509291505056fea264697066735822122060b15207a6bb63483d8afd8ff61bd86ebc9d303fe6d88827459ddacc8b7ae88f64736f6c634300081400330000000000000000000000000f4fbe2d2cdf75b38b0aa0ce1334e427905a6bff
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100415760003560e01c80636cee274f14610046578063a4ec062014610076578063efec920c14610094575b600080fd5b610060600480360381019061005b919061036b565b6100b0565b60405161006d91906103b3565b60405180910390f35b61007e610106565b60405161008b919061048c565b60405180910390f35b6100ae60048036038101906100a99190610549565b610194565b005b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6060600180548060200260200160405190810160405280929190818152602001828054801561018a57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610140575b5050505050905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e4b461258888888888886040518763ffffffff1660e01b81526004016101fa9695949392919061066c565b6020604051808303816000875af1158015610219573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023d91906106d8565b90506001819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050505050505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103388261030d565b9050919050565b6103488161032d565b811461035357600080fd5b50565b6000813590506103658161033f565b92915050565b60006020828403121561038157610380610303565b5b600061038f84828501610356565b91505092915050565b60008115159050919050565b6103ad81610398565b82525050565b60006020820190506103c860008301846103a4565b92915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6104038161032d565b82525050565b600061041583836103fa565b60208301905092915050565b6000602082019050919050565b6000610439826103ce565b61044381856103d9565b935061044e836103ea565b8060005b8381101561047f5781516104668882610409565b975061047183610421565b925050600181019050610452565b5085935050505092915050565b600060208201905081810360008301526104a6818461042e565b905092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126104d3576104d26104ae565b5b8235905067ffffffffffffffff8111156104f0576104ef6104b3565b5b60208301915083600182028301111561050c5761050b6104b8565b5b9250929050565b6000819050919050565b61052681610513565b811461053157600080fd5b50565b6000813590506105438161051d565b92915050565b6000806000806000806080878903121561056657610565610303565b5b600087013567ffffffffffffffff81111561058457610583610308565b5b61059089828a016104bd565b9650965050602087013567ffffffffffffffff8111156105b3576105b2610308565b5b6105bf89828a016104bd565b945094505060406105d289828a01610356565b92505060606105e389828a01610534565b9150509295509295509295565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061062d83856105f0565b935061063a838584610601565b61064383610610565b840190509392505050565b6106578161032d565b82525050565b61066681610513565b82525050565b6000608082019050818103600083015261068781888a610621565b9050818103602083015261069c818688610621565b90506106ab604083018561064e565b6106b8606083018461065d565b979650505050505050565b6000815190506106d28161033f565b92915050565b6000602082840312156106ee576106ed610303565b5b60006106fc848285016106c3565b9150509291505056fea264697066735822122060b15207a6bb63483d8afd8ff61bd86ebc9d303fe6d88827459ddacc8b7ae88f64736f6c63430008140033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000f4fbe2d2cdf75b38b0aa0ce1334e427905a6bff
-----Decoded View---------------
Arg [0] : _clonerPC (address): 0x0F4FBe2D2cDF75B38b0Aa0ce1334E427905A6bff
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000f4fbe2d2cdf75b38b0aa0ce1334e427905a6bff
Loading...
Loading
Loading...
Loading
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.