Overview
S Balance
0 S
S Value
-More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Create Token | 952156 | 3 hrs ago | IN | 0 S | 0.00133314 |
Latest 1 internal transaction
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
952156 | 3 hrs ago | Contract Creation | 0 S |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
SubderpTokenFactory
Compiler Version
v0.8.28+commit.7893614a
Contract Source Code (Solidity)
/** *Submitted for verification at SonicScan.org on 2024-12-21 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, 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 sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } 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 recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, 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) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, 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 _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } interface IERC165 { /** * @dev Returns true if this contract implements the interface defined by * `interfaceId`. See the corresponding * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] * to learn more about how these ids are created. * * This function call must use less than 30 000 gas. */ function supportsInterface(bytes4 interfaceId) external view returns (bool); } interface IERC721 is IERC165 { /** * @dev Emitted when `tokenId` token is transferred from `from` to `to`. */ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token. */ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); /** * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets. */ event ApprovalForAll(address indexed owner, address indexed operator, bool approved); /** * @dev Returns the number of tokens in ``owner``'s account. */ function balanceOf(address owner) external view returns (uint256 balance); /** * @dev Returns the owner of the `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function ownerOf(uint256 tokenId) external view returns (address owner); /** * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients * are aware of the ERC721 protocol to prevent tokens from being forever locked. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Transfers `tokenId` token from `from` to `to`. * * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * * Emits a {Transfer} event. */ function transferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Gives permission to `to` to transfer `tokenId` token to another account. * The approval is cleared when the token is transferred. * * Only a single account can be approved at a time, so approving the zero address clears previous approvals. * * Requirements: * * - The caller must own the token or be an approved operator. * - `tokenId` must exist. * * Emits an {Approval} event. */ function approve(address to, uint256 tokenId) external; /** * @dev Returns the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @dev Approve or remove `operator` as an operator for the caller. * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. * * Requirements: * * - The `operator` cannot be the caller. * * Emits an {ApprovalForAll} event. */ function setApprovalForAll(address operator, bool _approved) external; /** * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`. * * See {setApprovalForAll} */ function isApprovedForAll(address owner, address operator) external view returns (bool); /** * @dev Safely transfers `tokenId` token from `from` to `to`. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId, bytes calldata data ) external; } contract SubderpTokenV0 is ERC20 { address treasury = 0x68705637c16bF32A28a82914f7aADEFB3aBE31CD; address derp = 0x8500d84b203775FC8B418148223872b35c43B050; uint256 maxSupply; uint256 creatorAllocation; uint256 treasuryAllocation; uint256 airdropAllocation; address creator; constructor ( address _creator, uint256 _thirdSupply, string memory name, string memory symbol) ERC20(name, symbol) { maxSupply = _thirdSupply * 3; creatorAllocation = _thirdSupply; treasuryAllocation = _thirdSupply; airdropAllocation = _thirdSupply; creator = _creator; } mapping (uint256 => bool) claimedById; function airdrop(uint256 id) public { require(!claimedById[id], "already claimed"); _mint(IERC721(derp).ownerOf(id), airdropAllocation / 2000); claimedById[id] = true; } function airdropRange(uint256 start, uint256 end) public { for (uint256 i = start; i < end + 1; i++) { airdrop(i); } } function airdropRemaining () public { for (uint256 i = 1; i < 2001; i++) { airdrop(i); } } function treasuryClaim () public { require (totalSupply() >= airdropAllocation, "call airdrop first"); require ( totalSupply() < airdropAllocation + treasuryAllocation, "treasury claimed"); _mint(treasury, treasuryAllocation); } function creatorClaim () public { require (totalSupply() >= airdropAllocation + treasuryAllocation, "call airdrop and treasuryClaim first"); require (totalSupply() <= maxSupply, "maxSupply reached"); _mint(creator, creatorAllocation); } } contract SubderpTokenFactory { address derp = 0x8500d84b203775FC8B418148223872b35c43B050; event TokenCreated(address indexed tokenAddress, address indexed owner, uint256 initialSupply); uint256 countOfDerpCommunityTokens = 0; mapping (uint256 => address) communityTokenAddressByIndex; mapping (uint256 => address) creatorByIndex; function getAddress (uint256 index) public view returns (address) { return communityTokenAddressByIndex[index]; } function getCreator (uint256 index) public view returns (address) { return creatorByIndex[index]; } function createToken( uint256 oneThirdOfTheSupply, string memory name, string memory symbol) public returns (address) { require(IERC721(derp).balanceOf(msg.sender) > 10, "you need ten derps little buddy"); countOfDerpCommunityTokens++; SubderpTokenV0 newToken = new SubderpTokenV0(msg.sender, oneThirdOfTheSupply * 1e18, name, symbol); emit TokenCreated(address(newToken), msg.sender, 3*oneThirdOfTheSupply * 1e18); communityTokenAddressByIndex[countOfDerpCommunityTokens] = address(newToken); creatorByIndex[countOfDerpCommunityTokens] = msg.sender; return address(newToken); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenAddress","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"initialSupply","type":"uint256"}],"name":"TokenCreated","type":"event"},{"inputs":[{"internalType":"uint256","name":"oneThirdOfTheSupply","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"}],"name":"createToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getCreator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040525f80546001600160a01b031916738500d84b203775fc8b418148223872b35c43b0501781556001553480156036575f5ffd5b50611aa2806100445f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063b1037e7814610043578063b93f9b0a1461007f578063d48e638a146100b4575b5f5ffd5b610056610051366004610420565b6100e9565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61005661008d36600461048d565b5f9081526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b6100566100c236600461048d565b5f9081526003602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b5f80546040517f70a08231000000000000000000000000000000000000000000000000000000008152336004820152600a9173ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa158015610156573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017a91906104a4565b116101e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f796f75206e6565642074656e206465727073206c6974746c6520627564647900604482015260640160405180910390fd5b60018054905f6101f4836104e8565b909155505f90503361020e86670de0b6b3a764000061051f565b858560405161021c9061031e565b6102299493929190610588565b604051809103905ff080158015610242573d5f5f3e3d5ffd5b5090503373ffffffffffffffffffffffffffffffffffffffff82167ffde888083b38fe6deac8498d5daebda0d38d0d3e6167e434b633f955152766fa61028988600361051f565b61029b90670de0b6b3a764000061051f565b60405190815260200160405180910390a3600180545f908152600260209081526040808320805473ffffffffffffffffffffffffffffffffffffffff87167fffffffffffffffffffffffff000000000000000000000000000000000000000091821617909155935483526003909152902080549091163317905590509392505050565b611493806105da83390190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112610367575f5ffd5b813567ffffffffffffffff8111156103815761038161032b565b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8501160116810181811067ffffffffffffffff821117156103ed576103ed61032b565b604052818152838201602001851015610404575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f5f60608486031215610432575f5ffd5b83359250602084013567ffffffffffffffff81111561044f575f5ffd5b61045b86828701610358565b925050604084013567ffffffffffffffff811115610477575f5ffd5b61048386828701610358565b9150509250925092565b5f6020828403121561049d575f5ffd5b5035919050565b5f602082840312156104b4575f5ffd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610518576105186104bb565b5060010190565b8082028115828204841417610536576105366104bb565b92915050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f6105bc608083018561053c565b82810360608401526105ce818561053c565b97965050505050505056fe6080604052600580546001600160a01b03199081167368705637c16bf32a28a82914f7aadefb3abe31cd1790915560068054909116738500d84b203775fc8b418148223872b35c43b050179055348015610057575f5ffd5b5060405161149338038061149383398101604081905261007691610175565b818160036100848382610285565b5060046100918282610285565b5050508260036100a1919061033f565b600755505060088190556009819055600a55600b80546001600160a01b0319166001600160a01b0392909216919091179055610368565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126100fb575f5ffd5b81516001600160401b03811115610114576101146100d8565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610142576101426100d8565b604052818152838201602001851015610159575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f5f5f60808587031215610188575f5ffd5b84516001600160a01b038116811461019e575f5ffd5b6020860151604087015191955093506001600160401b038111156101c0575f5ffd5b6101cc878288016100ec565b606087015190935090506001600160401b038111156101e9575f5ffd5b6101f5878288016100ec565b91505092959194509250565b600181811c9082168061021557607f821691505b60208210810361023357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561028057805f5260205f20601f840160051c8101602085101561025e5750805b601f840160051c820191505b8181101561027d575f815560010161026a565b50505b505050565b81516001600160401b0381111561029e5761029e6100d8565b6102b2816102ac8454610201565b84610239565b6020601f8211600181146102e4575f83156102cd5750848201515b5f19600385901b1c1916600184901b17845561027d565b5f84815260208120601f198516915b8281101561031357878501518255602094850194600190920191016102f3565b508482101561033057868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b808202811582820484141761036257634e487b7160e01b5f52601160045260245ffd5b92915050565b61111e806103755f395ff3fe608060405234801561000f575f5ffd5b50600436106100fb575f3560e01c8063837af7351161009357806397dc4a131161006357806397dc4a13146101f1578063a457c2d714610204578063a9059cbb14610217578063dd62ed3e1461022a575f5ffd5b8063837af735146101c657806384400585146101d95780639380b1cf146101e157806395d89b41146101e9575f5ffd5b8063313ce567116100ce578063313ce5671461016557806339509351146101745780635475a7be1461018757806370a0823114610191575f5ffd5b806306fdde03146100ff578063095ea7b31461011d57806318160ddd1461014057806323b872dd14610152575b5f5ffd5b61010761026f565b6040516101149190610ea0565b60405180910390f35b61013061012b366004610f14565b6102ff565b6040519015158152602001610114565b6002545b604051908152602001610114565b610130610160366004610f3e565b610315565b60405160128152602001610114565b610130610182366004610f14565b6103fe565b61018f610446565b005b61014461019f366004610f7c565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b61018f6101d4366004610f9e565b610556565b61018f610580565b61018f6105a1565b6101076106d5565b61018f6101ff366004610fbe565b6106e4565b610130610212366004610f14565b61083c565b610130610225366004610f14565b610913565b610144610238366004610fd5565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b60606003805461027e9061100c565b80601f01602080910402602001604051908101604052809291908181526020018280546102aa9061100c565b80156102f55780601f106102cc576101008083540402835291602001916102f5565b820191905f5260205f20905b8154815290600101906020018083116102d857829003601f168201915b5050505050905090565b5f61030b33848461091f565b5060015b92915050565b5f610321848484610ad1565b73ffffffffffffffffffffffffffffffffffffffff84165f908152600160209081526040808320338452909152902054828110156103e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206160448201527f6c6c6f77616e636500000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103f3853385840361091f565b506001949350505050565b335f81815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161030b91859061044190869061105d565b61091f565b600a5460025410156104b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f63616c6c2061697264726f70206669727374000000000000000000000000000060448201526064016103dd565b600954600a546104c4919061105d565b6002541061052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f747265617375727920636c61696d65640000000000000000000000000000000060448201526064016103dd565b6005546009546105549173ffffffffffffffffffffffffffffffffffffffff1690610d83565b565b815b61056382600161105d565b81101561057b57610573816106e4565b600101610558565b505050565b60015b6107d181101561059e57610596816106e4565b600101610583565b50565b600954600a546105b1919061105d565b6002541015610641576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f63616c6c2061697264726f7020616e64207472656173757279436c61696d206660448201527f697273740000000000000000000000000000000000000000000000000000000060648201526084016103dd565b60075460025411156106af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f6d6178537570706c79207265616368656400000000000000000000000000000060448201526064016103dd565b600b546008546105549173ffffffffffffffffffffffffffffffffffffffff1690610d83565b60606004805461027e9061100c565b5f818152600c602052604090205460ff161561075c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f616c726561647920636c61696d6564000000000000000000000000000000000060448201526064016103dd565b6006546040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018390526108049173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa1580156107cb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ef9190611095565b6107d0600a546107ff91906110b0565b610d83565b5f908152600c6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b335f90815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054828110156108fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016103dd565b610909338585840361091f565b5060019392505050565b5f61030b338484610ad1565b73ffffffffffffffffffffffffffffffffffffffff83166109c1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8216610a64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610b74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8216610c17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610ccc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8085165f90815260208190526040808220858503905591851681529081208054849290610d0f90849061105d565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d7591815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8216610e00576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103dd565b8060025f828254610e11919061105d565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604081208054839290610e4a90849061105d565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8116811461059e575f5ffd5b5f5f60408385031215610f25575f5ffd5b8235610f3081610ef3565b946020939093013593505050565b5f5f5f60608486031215610f50575f5ffd5b8335610f5b81610ef3565b92506020840135610f6b81610ef3565b929592945050506040919091013590565b5f60208284031215610f8c575f5ffd5b8135610f9781610ef3565b9392505050565b5f5f60408385031215610faf575f5ffd5b50508035926020909101359150565b5f60208284031215610fce575f5ffd5b5035919050565b5f5f60408385031215610fe6575f5ffd5b8235610ff181610ef3565b9150602083013561100181610ef3565b809150509250929050565b600181811c9082168061102057607f821691505b602082108103611057577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b8082018082111561030f577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f602082840312156110a5575f5ffd5b8151610f9781610ef3565b5f826110e3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea2646970667358221220398600097d5186b759e0e1a7e29d0ea683f1c5682da60fa14825a24d9c3baf9f64736f6c634300081c0033a264697066735822122095c4acd127cd2d8a516914c9daba03e45bf54980d0cb96ecb5bec86db6b4f8a664736f6c634300081c0033
Deployed Bytecode
0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063b1037e7814610043578063b93f9b0a1461007f578063d48e638a146100b4575b5f5ffd5b610056610051366004610420565b6100e9565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61005661008d36600461048d565b5f9081526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b6100566100c236600461048d565b5f9081526003602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b5f80546040517f70a08231000000000000000000000000000000000000000000000000000000008152336004820152600a9173ffffffffffffffffffffffffffffffffffffffff16906370a0823190602401602060405180830381865afa158015610156573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017a91906104a4565b116101e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f796f75206e6565642074656e206465727073206c6974746c6520627564647900604482015260640160405180910390fd5b60018054905f6101f4836104e8565b909155505f90503361020e86670de0b6b3a764000061051f565b858560405161021c9061031e565b6102299493929190610588565b604051809103905ff080158015610242573d5f5f3e3d5ffd5b5090503373ffffffffffffffffffffffffffffffffffffffff82167ffde888083b38fe6deac8498d5daebda0d38d0d3e6167e434b633f955152766fa61028988600361051f565b61029b90670de0b6b3a764000061051f565b60405190815260200160405180910390a3600180545f908152600260209081526040808320805473ffffffffffffffffffffffffffffffffffffffff87167fffffffffffffffffffffffff000000000000000000000000000000000000000091821617909155935483526003909152902080549091163317905590509392505050565b611493806105da83390190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f82601f830112610367575f5ffd5b813567ffffffffffffffff8111156103815761038161032b565b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8501160116810181811067ffffffffffffffff821117156103ed576103ed61032b565b604052818152838201602001851015610404575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f5f60608486031215610432575f5ffd5b83359250602084013567ffffffffffffffff81111561044f575f5ffd5b61045b86828701610358565b925050604084013567ffffffffffffffff811115610477575f5ffd5b61048386828701610358565b9150509250925092565b5f6020828403121561049d575f5ffd5b5035919050565b5f602082840312156104b4575f5ffd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610518576105186104bb565b5060010190565b8082028115828204841417610536576105366104bb565b92915050565b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff85168152836020820152608060408201525f6105bc608083018561053c565b82810360608401526105ce818561053c565b97965050505050505056fe6080604052600580546001600160a01b03199081167368705637c16bf32a28a82914f7aadefb3abe31cd1790915560068054909116738500d84b203775fc8b418148223872b35c43b050179055348015610057575f5ffd5b5060405161149338038061149383398101604081905261007691610175565b818160036100848382610285565b5060046100918282610285565b5050508260036100a1919061033f565b600755505060088190556009819055600a55600b80546001600160a01b0319166001600160a01b0392909216919091179055610368565b634e487b7160e01b5f52604160045260245ffd5b5f82601f8301126100fb575f5ffd5b81516001600160401b03811115610114576101146100d8565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610142576101426100d8565b604052818152838201602001851015610159575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f5f5f60808587031215610188575f5ffd5b84516001600160a01b038116811461019e575f5ffd5b6020860151604087015191955093506001600160401b038111156101c0575f5ffd5b6101cc878288016100ec565b606087015190935090506001600160401b038111156101e9575f5ffd5b6101f5878288016100ec565b91505092959194509250565b600181811c9082168061021557607f821691505b60208210810361023357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561028057805f5260205f20601f840160051c8101602085101561025e5750805b601f840160051c820191505b8181101561027d575f815560010161026a565b50505b505050565b81516001600160401b0381111561029e5761029e6100d8565b6102b2816102ac8454610201565b84610239565b6020601f8211600181146102e4575f83156102cd5750848201515b5f19600385901b1c1916600184901b17845561027d565b5f84815260208120601f198516915b8281101561031357878501518255602094850194600190920191016102f3565b508482101561033057868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b808202811582820484141761036257634e487b7160e01b5f52601160045260245ffd5b92915050565b61111e806103755f395ff3fe608060405234801561000f575f5ffd5b50600436106100fb575f3560e01c8063837af7351161009357806397dc4a131161006357806397dc4a13146101f1578063a457c2d714610204578063a9059cbb14610217578063dd62ed3e1461022a575f5ffd5b8063837af735146101c657806384400585146101d95780639380b1cf146101e157806395d89b41146101e9575f5ffd5b8063313ce567116100ce578063313ce5671461016557806339509351146101745780635475a7be1461018757806370a0823114610191575f5ffd5b806306fdde03146100ff578063095ea7b31461011d57806318160ddd1461014057806323b872dd14610152575b5f5ffd5b61010761026f565b6040516101149190610ea0565b60405180910390f35b61013061012b366004610f14565b6102ff565b6040519015158152602001610114565b6002545b604051908152602001610114565b610130610160366004610f3e565b610315565b60405160128152602001610114565b610130610182366004610f14565b6103fe565b61018f610446565b005b61014461019f366004610f7c565b73ffffffffffffffffffffffffffffffffffffffff165f9081526020819052604090205490565b61018f6101d4366004610f9e565b610556565b61018f610580565b61018f6105a1565b6101076106d5565b61018f6101ff366004610fbe565b6106e4565b610130610212366004610f14565b61083c565b610130610225366004610f14565b610913565b610144610238366004610fd5565b73ffffffffffffffffffffffffffffffffffffffff9182165f90815260016020908152604080832093909416825291909152205490565b60606003805461027e9061100c565b80601f01602080910402602001604051908101604052809291908181526020018280546102aa9061100c565b80156102f55780601f106102cc576101008083540402835291602001916102f5565b820191905f5260205f20905b8154815290600101906020018083116102d857829003601f168201915b5050505050905090565b5f61030b33848461091f565b5060015b92915050565b5f610321848484610ad1565b73ffffffffffffffffffffffffffffffffffffffff84165f908152600160209081526040808320338452909152902054828110156103e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206160448201527f6c6c6f77616e636500000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103f3853385840361091f565b506001949350505050565b335f81815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161030b91859061044190869061105d565b61091f565b600a5460025410156104b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f63616c6c2061697264726f70206669727374000000000000000000000000000060448201526064016103dd565b600954600a546104c4919061105d565b6002541061052e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f747265617375727920636c61696d65640000000000000000000000000000000060448201526064016103dd565b6005546009546105549173ffffffffffffffffffffffffffffffffffffffff1690610d83565b565b815b61056382600161105d565b81101561057b57610573816106e4565b600101610558565b505050565b60015b6107d181101561059e57610596816106e4565b600101610583565b50565b600954600a546105b1919061105d565b6002541015610641576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f63616c6c2061697264726f7020616e64207472656173757279436c61696d206660448201527f697273740000000000000000000000000000000000000000000000000000000060648201526084016103dd565b60075460025411156106af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f6d6178537570706c79207265616368656400000000000000000000000000000060448201526064016103dd565b600b546008546105549173ffffffffffffffffffffffffffffffffffffffff1690610d83565b60606004805461027e9061100c565b5f818152600c602052604090205460ff161561075c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f616c726561647920636c61696d6564000000000000000000000000000000000060448201526064016103dd565b6006546040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018390526108049173ffffffffffffffffffffffffffffffffffffffff1690636352211e90602401602060405180830381865afa1580156107cb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ef9190611095565b6107d0600a546107ff91906110b0565b610d83565b5f908152600c6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055565b335f90815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054828110156108fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084016103dd565b610909338585840361091f565b5060019392505050565b5f61030b338484610ad1565b73ffffffffffffffffffffffffffffffffffffffff83166109c1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8216610a64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff8316610b74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8216610c17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff83165f9081526020819052604090205481811015610ccc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e6365000000000000000000000000000000000000000000000000000060648201526084016103dd565b73ffffffffffffffffffffffffffffffffffffffff8085165f90815260208190526040808220858503905591851681529081208054849290610d0f90849061105d565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d7591815260200190565b60405180910390a350505050565b73ffffffffffffffffffffffffffffffffffffffff8216610e00576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016103dd565b8060025f828254610e11919061105d565b909155505073ffffffffffffffffffffffffffffffffffffffff82165f9081526020819052604081208054839290610e4a90849061105d565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8116811461059e575f5ffd5b5f5f60408385031215610f25575f5ffd5b8235610f3081610ef3565b946020939093013593505050565b5f5f5f60608486031215610f50575f5ffd5b8335610f5b81610ef3565b92506020840135610f6b81610ef3565b929592945050506040919091013590565b5f60208284031215610f8c575f5ffd5b8135610f9781610ef3565b9392505050565b5f5f60408385031215610faf575f5ffd5b50508035926020909101359150565b5f60208284031215610fce575f5ffd5b5035919050565b5f5f60408385031215610fe6575f5ffd5b8235610ff181610ef3565b9150602083013561100181610ef3565b809150509250929050565b600181811c9082168061102057607f821691505b602082108103611057577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b8082018082111561030f577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f602082840312156110a5575f5ffd5b8151610f9781610ef3565b5f826110e3577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b50049056fea2646970667358221220398600097d5186b759e0e1a7e29d0ea683f1c5682da60fa14825a24d9c3baf9f64736f6c634300081c0033a264697066735822122095c4acd127cd2d8a516914c9daba03e45bf54980d0cb96ecb5bec86db6b4f8a664736f6c634300081c0033
Deployed Bytecode Sourcemap
13172:1311:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13792:688;;;;;;:::i;:::-;;:::i;:::-;;;1885:42:1;1873:55;;;1855:74;;1843:2;1828:18;13792:688:0;;;;;;;13538:127;;;;;;:::i;:::-;13595:7;13622:35;;;:28;:35;;;;;;;;;13538:127;13671:113;;;;;;:::i;:::-;13728:7;13755:21;;;:14;:21;;;;;;;;;13671:113;13792:688;13931:7;13969:4;;13961:35;;;;;13985:10;13961:35;;;1855:74:1;13999:2:0;;13969:4;;;13961:23;;1828:18:1;;13961:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:40;13953:84;;;;;;;2562:2:1;13953:84:0;;;2544:21:1;2601:2;2581:18;;;2574:30;2640:33;2620:18;;;2613:61;2691:18;;13953:84:0;;;;;;;;14048:26;:28;;;:26;:28;;;:::i;:::-;;;;-1:-1:-1;14087:23:0;;-1:-1:-1;14132:10:0;14144:26;:19;14166:4;14144:26;:::i;:::-;14172:4;14178:6;14113:72;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14087:98:0;-1:-1:-1;14233:10:0;14201:73;;;;14245:21;14247:19;14245:1;:21;:::i;:::-;:28;;14269:4;14245:28;:::i;:::-;14201:73;;4362:25:1;;;4350:2;4335:18;14201:73:0;;;;;;;14314:26;;;14285:56;;;;:28;:56;;;;;;;;:76;;;;;;;;;;;;;14387:26;;14372:42;;:14;:42;;;;;:55;;;;;14417:10;14372:55;;;14352:8;-1:-1:-1;13792:688:0;;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;14:184:1:-;66:77;63:1;56:88;163:4;160:1;153:15;187:4;184:1;177:15;203:844;246:5;299:3;292:4;284:6;280:17;276:27;266:55;;317:1;314;307:12;266:55;357:6;344:20;387:18;379:6;376:30;373:56;;;409:18;;:::i;:::-;458:2;452:9;605:66;600:2;531:66;524:4;516:6;512:17;508:90;504:99;500:172;492:6;488:185;739:6;727:10;724:22;703:18;691:10;688:34;685:62;682:88;;;750:18;;:::i;:::-;786:2;779:22;810;;;851:19;;;872:4;847:30;844:39;-1:-1:-1;841:59:1;;;896:1;893;886:12;841:59;960:6;953:4;945:6;941:17;934:4;926:6;922:17;909:58;1015:1;987:19;;;1008:4;983:30;976:41;;;;991:6;203:844;-1:-1:-1;;;203:844:1:o;1052:652::-;1149:6;1157;1165;1218:2;1206:9;1197:7;1193:23;1189:32;1186:52;;;1234:1;1231;1224:12;1186:52;1279:23;;;-1:-1:-1;1377:2:1;1362:18;;1349:32;1404:18;1393:30;;1390:50;;;1436:1;1433;1426:12;1390:50;1459;1501:7;1492:6;1481:9;1477:22;1459:50;:::i;:::-;1449:60;;;1562:2;1551:9;1547:18;1534:32;1591:18;1581:8;1578:32;1575:52;;;1623:1;1620;1613:12;1575:52;1646;1690:7;1679:8;1668:9;1664:24;1646:52;:::i;:::-;1636:62;;;1052:652;;;;;:::o;1940:226::-;1999:6;2052:2;2040:9;2031:7;2027:23;2023:32;2020:52;;;2068:1;2065;2058:12;2020:52;-1:-1:-1;2113:23:1;;1940:226;-1:-1:-1;1940:226:1:o;2171:184::-;2241:6;2294:2;2282:9;2273:7;2269:23;2265:32;2262:52;;;2310:1;2307;2300:12;2262:52;-1:-1:-1;2333:16:1;;2171:184;-1:-1:-1;2171:184:1:o;2720:::-;2772:77;2769:1;2762:88;2869:4;2866:1;2859:15;2893:4;2890:1;2883:15;2909:195;2948:3;2979:66;2972:5;2969:77;2966:103;;3049:18;;:::i;:::-;-1:-1:-1;3096:1:1;3085:13;;2909:195::o;3109:168::-;3182:9;;;3213;;3230:15;;;3224:22;;3210:37;3200:71;;3251:18;;:::i;:::-;3109:168;;;;:::o;3282:348::-;3324:3;3362:5;3356:12;3389:6;3384:3;3377:19;3445:6;3438:4;3431:5;3427:16;3420:4;3415:3;3411:14;3405:47;3497:1;3490:4;3481:6;3476:3;3472:16;3468:27;3461:38;3619:4;3549:66;3544:2;3536:6;3532:15;3528:88;3523:3;3519:98;3515:109;3508:116;;;3282:348;;;;:::o;3635:576::-;3900:42;3892:6;3888:55;3877:9;3870:74;3980:6;3975:2;3964:9;3960:18;3953:34;4023:3;4018:2;4007:9;4003:18;3996:31;3851:4;4050:46;4091:3;4080:9;4076:19;4068:6;4050:46;:::i;:::-;4144:9;4136:6;4132:22;4127:2;4116:9;4112:18;4105:50;4172:33;4198:6;4190;4172:33;:::i;:::-;4164:41;3635:576;-1:-1:-1;;;;;;;3635:576:1:o
Swarm Source
ipfs://95c4acd127cd2d8a516914c9daba03e45bf54980d0cb96ecb5bec86db6b4f8a6
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ 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.