ERC-20
Source Code
Overview
Max Total Supply
100,000,000 SEXY
Holders
1,928 (0.00%)
Transfers
-
1 ( -66.67%)
Market
Price
$0.01 @ 0.000006 ETH (-2.29%)
Onchain Market Cap
$1,288,218.00
Circulating Supply Market Cap
$1,288,211.00
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
| # | Exchange | Pair | Price | 24H Volume | % Volume |
|---|
Contract Source Code Verified (Exact Match)
Contract Name:
Settled EthXYToken
Compiler Version
vyper:0.3.9
Contract Source Code (Vyper language format)
# @version ^0.3.9
# @title Settled EthXYToken
from vyper.interfaces import ERC20
implements: ERC20
event Transfer:
_from: indexed(address)
_to: indexed(address)
_value: uint256
event Approval:
_owner: indexed(address)
_spender: indexed(address)
_value: uint256
_name: constant(String[24]) = "Settled ETHXY Token"
_symbol: constant(String[5]) = "SEXY"
decimals: public(constant(uint256)) = 18
totalSupply: public(uint256)
balanceOf: public(HashMap[address, uint256])
allowance: public(HashMap[address, HashMap[address, uint256]])
minter: public(address)
@view
@external
def name() -> String[24]:
return _name
@view
@external
def symbol() -> String[5]:
return _symbol
@external
def __init__():
self.minter = msg.sender
@external
def set_minter(minter: address):
assert msg.sender == self.minter
self.minter = minter
@external
def approve(spender: address, amount: uint256) -> bool:
self.allowance[msg.sender][spender] = amount
log Approval(msg.sender, spender, amount)
return True
@external
def increaseAllowance(spender: address, addedValue: uint256) -> bool:
self.allowance[msg.sender][spender] += addedValue
log Approval(msg.sender, spender, self.allowance[msg.sender][spender])
return True
@external
def decreaseAllowance(spender: address, subtractedValue: uint256) -> bool:
self.allowance[msg.sender][spender] -= subtractedValue
log Approval(msg.sender, spender, self.allowance[msg.sender][spender])
return True
@external
def transfer(_to: address, _value: uint256) -> bool:
self.balanceOf[msg.sender] -= _value
self.balanceOf[_to] += _value
log Transfer(msg.sender, _to, _value)
return True
@external
def transferFrom(_from: address, _to: address, _value: uint256) -> bool:
self.allowance[_from][msg.sender] -= _value
self.balanceOf[_from] -= _value
self.balanceOf[_to] += _value
log Transfer(_from, _to, _value)
return True
@external
def mint(_to: address, _value: uint256):
assert msg.sender == self.minter
self.balanceOf[_to] += _value
self.totalSupply += _value
log Transfer(ZERO_ADDRESS, _to, _value)
@external
def burn(_value: uint256) -> uint256:
self.balanceOf[msg.sender] -= _value
self.totalSupply -= _value
log Transfer(msg.sender, ZERO_ADDRESS, _value)
return _value
################################################################
# EIP-2612 #
################################################################
nonces: public(HashMap[address, uint256])
_DOMAIN_TYPEHASH: constant(bytes32) = keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)")
_PERMIT_TYPE_HASH: constant(bytes32) = keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)")
_MINT_TYPE_HASH: constant(bytes32) = keccak256("Mint(address to,uint256 value,uint256 amountMinted)")
@external
def permit(owner: address, spender: address, amount: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32):
assert deadline >= block.timestamp
nonce: uint256 = self.nonces[owner]
self.nonces[owner] = nonce + 1
domain_separator: bytes32 = keccak256(
_abi_encode(_DOMAIN_TYPEHASH, keccak256(_name), keccak256("1.0"), chain.id, self)
)
struct_hash: bytes32 = keccak256(_abi_encode(_PERMIT_TYPE_HASH, owner, spender, amount, nonce, deadline))
hash: bytes32 = keccak256(
concat(
b"\x19\x01",
domain_separator,
struct_hash
)
)
assert owner == ecrecover(hash, v, r, s)
self.nonces[owner] += 1
self.allowance[owner][spender] = amount
log Approval(owner, spender, amount)
amount_minted: public(HashMap[address, uint256])
@external
def mint_by_sig(to: address, amount: uint256, v: uint8, r: bytes32, s: bytes32):
domain_separator: bytes32 = keccak256(
_abi_encode(_DOMAIN_TYPEHASH, keccak256(_name), keccak256("1.0"), chain.id, self)
)
struct_hash: bytes32 = keccak256(_abi_encode(_MINT_TYPE_HASH, to, amount, self.amount_minted[to]))
hash: bytes32 = keccak256(
concat(
b"\x19\x01",
domain_separator,
struct_hash
)
)
assert self.minter == ecrecover(hash, v, r, s)
self.amount_minted[to] += amount
self._mint(to, amount)
@internal
def _mint(_to: address, _value: uint256):
self.balanceOf[_to] += _value
self.totalSupply += _value
log Transfer(ZERO_ADDRESS, _to, _value)
@internal
def _burn(_from: address, _value: uint256):
assert self.balanceOf[_from] >= _value
self.balanceOf[_from] -= _value
self.totalSupply -= _value
log Transfer(_from, ZERO_ADDRESS, _value)Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"name":"Transfer","inputs":[{"name":"_from","type":"address","indexed":true},{"name":"_to","type":"address","indexed":true},{"name":"_value","type":"uint256","indexed":false}],"anonymous":false,"type":"event"},{"name":"Approval","inputs":[{"name":"_owner","type":"address","indexed":true},{"name":"_spender","type":"address","indexed":true},{"name":"_value","type":"uint256","indexed":false}],"anonymous":false,"type":"event"},{"stateMutability":"view","type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"view","type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"nonpayable","type":"constructor","inputs":[],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_minter","inputs":[{"name":"minter","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"approve","inputs":[{"name":"spender","type":"address"},{"name":"amount","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"transfer","inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"transferFrom","inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"mint","inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"burn","inputs":[{"name":"_value","type":"uint256"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"nonpayable","type":"function","name":"permit","inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"},{"name":"amount","type":"uint256"},{"name":"deadline","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"mint_by_sig","inputs":[{"name":"to","type":"address"},{"name":"amount","type":"uint256"},{"name":"v","type":"uint8"},{"name":"r","type":"bytes32"},{"name":"s","type":"bytes32"}],"outputs":[]},{"stateMutability":"view","type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"balanceOf","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"allowance","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"minter","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"nonces","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"amount_minted","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]}]Contract Creation Code
34610c0d5733600355610bf261001a61000039610bf2610000f36003361161000c57610b72565b5f3560e01c34610be15763313ce567811861002c57601260405260206040f35b6318160ddd8118610042575f5460405260206040f35b6370a08231811861007b5760243610610be1576004358060a01c610be15760405260016040516020525f5260405f205460605260206060f35b63dd62ed3e81186100d15760443610610be1576004358060a01c610be1576040526024358060a01c610be15760605260026040516020525f5260405f20806060516020525f5260405f2090505460805260206080f35b630754617281186100e85760035460405260206040f35b6306fdde0381186101675760208060805260136040527f536574746c656420455448585920546f6b656e0000000000000000000000000060605260408160800181516020830160208301815181525050808252508051806020830101601f825f03163682375050601f19601f8251602001011690509050810190506080f35b6395d89b4181186101e65760208060805260046040527f534558590000000000000000000000000000000000000000000000000000000060605260408160800181516020830160208301815181525050808252508051806020830101601f825f03163682375050601f19601f8251602001011690509050810190506080f35b631652e9fc81186102185760243610610be1576004358060a01c610be1576040526003543318610be157604051600355005b63095ea7b381186102935760443610610be1576004358060a01c610be1576040526024356002336020525f5260405f20806040516020525f5260405f20905055604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560243560605260206060a3600160605260206060f35b633950935181186103395760443610610be1576004358060a01c610be1576040526002336020525f5260405f20806040516020525f5260405f2090508054602435808201828110610be15790509050815550604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256002336020525f5260405f20806040516020525f5260405f2090505460605260206060a3600160605260206060f35b63a457c2d781186103df5760443610610be1576004358060a01c610be1576040526002336020525f5260405f20806040516020525f5260405f2090508054602435808203828111610be15790509050815550604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256002336020525f5260405f20806040516020525f5260405f2090505460605260206060a3600160605260206060f35b63a9059cbb81186104815760443610610be1576004358060a01c610be1576040526001336020525f5260405f208054602435808203828111610be1579050905081555060016040516020525f5260405f208054602435808201828110610be15790509050815550604051337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60243560605260206060a3600160605260206060f35b6323b872dd81186105665760643610610be1576004358060a01c610be1576040526024358060a01c610be15760605260026040516020525f5260405f2080336020525f5260405f2090508054604435808203828111610be1579050905081555060016040516020525f5260405f208054604435808203828111610be1579050905081555060016060516020525f5260405f208054604435808201828110610be157905090508155506060516040517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60443560805260206080a3600160805260206080f35b6340c10f1981186105fb5760443610610be1576004358060a01c610be1576040526003543318610be15760016040516020525f5260405f208054602435808201828110610be157905090508155505f54602435808201828110610be157905090505f556040515f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60243560605260206060a3005b6342966c68811861067f5760243610610be1576001336020525f5260405f208054600435808203828111610be157905090508155505f54600435808203828111610be157905090505f555f337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60043560405260206040a360043560405260206040f35b637ecebe0081186106b85760243610610be1576004358060a01c610be15760405260046040516020525f5260405f205460605260206060f35b63d505accf81186109395760e43610610be1576004358060a01c610be1576040526024358060a01c610be1576060526084358060081c610be1576080524260643510610be15760046040516020525f5260405f205460a05260a05160018101818110610be157905060046040516020525f5260405f20557f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f610100527f2d103f9b36ad244a9c78fc4f870bcfd43e49f6e627c691581d0b02215281761a610120527fe6bbd6277e1bf288eed5e8d1780f9a50b239e86b153736bceebccf4ea79d90b3610140524661016052306101805260a060e05260e080516020820120905060c0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c96101205260405161014052606051610160526044356101805260a0516101a0526064356101c05260c06101005261010080516020820120905060e0525f6002610120527f19010000000000000000000000000000000000000000000000000000000000006101405261012080516020820183610180018151815250508083019250505060c05181610180015260208101905060e0518161018001526020810190508061016052610160905080516020820120905061010052610100516101205260805161014052604060a46101603760205f608061012060015afa505f5160405118610be15760046040516020525f5260405f20805460018101818110610be157905081555060443560026040516020525f5260405f20806060516020525f5260405f209050556060516040517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925604435610120526020610120a3005b6399d0555081186109725760243610610be1576004358060a01c610be15760405260056040516020525f5260405f205460605260206060f35b63a79b092f8118610b705760a43610610be1576004358060a01c610be15760a0526044358060081c610be15760c0527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f610120527f2d103f9b36ad244a9c78fc4f870bcfd43e49f6e627c691581d0b02215281761a610140527fe6bbd6277e1bf288eed5e8d1780f9a50b239e86b153736bceebccf4ea79d90b3610160524661018052306101a05260a06101005261010080516020820120905060e0527fc68376ee809bc84a1619f411f9dd76615e4a60ad57444bc108028d84b0e75e906101405260a0516101605260243561018052600560a0516020525f5260405f20546101a052608061012052610120805160208201209050610100525f6002610140527f190100000000000000000000000000000000000000000000000000000000000061016052610140805160208201836101a0018151815250508083019250505060e051816101a0015260208101905061010051816101a001526020810190508061018052610180905080516020820120905061012052610120516101405260c05161016052604060646101803760205f608061014060015afa505f5160035418610be157600560a0516020525f5260405f208054602435808201828110610be1579050905081555060a051604052602435606052610b6e610b76565b005b505b5f5ffd5b60016040516020525f5260405f208054606051808201828110610be157905090508155505f54606051808201828110610be157905090505f556040515f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60605160805260206080a3565b5f80fda165767970657283000309000b005b5f80fd
Deployed Bytecode
0x6003361161000c57610b72565b5f3560e01c34610be15763313ce567811861002c57601260405260206040f35b6318160ddd8118610042575f5460405260206040f35b6370a08231811861007b5760243610610be1576004358060a01c610be15760405260016040516020525f5260405f205460605260206060f35b63dd62ed3e81186100d15760443610610be1576004358060a01c610be1576040526024358060a01c610be15760605260026040516020525f5260405f20806060516020525f5260405f2090505460805260206080f35b630754617281186100e85760035460405260206040f35b6306fdde0381186101675760208060805260136040527f536574746c656420455448585920546f6b656e0000000000000000000000000060605260408160800181516020830160208301815181525050808252508051806020830101601f825f03163682375050601f19601f8251602001011690509050810190506080f35b6395d89b4181186101e65760208060805260046040527f534558590000000000000000000000000000000000000000000000000000000060605260408160800181516020830160208301815181525050808252508051806020830101601f825f03163682375050601f19601f8251602001011690509050810190506080f35b631652e9fc81186102185760243610610be1576004358060a01c610be1576040526003543318610be157604051600355005b63095ea7b381186102935760443610610be1576004358060a01c610be1576040526024356002336020525f5260405f20806040516020525f5260405f20905055604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560243560605260206060a3600160605260206060f35b633950935181186103395760443610610be1576004358060a01c610be1576040526002336020525f5260405f20806040516020525f5260405f2090508054602435808201828110610be15790509050815550604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256002336020525f5260405f20806040516020525f5260405f2090505460605260206060a3600160605260206060f35b63a457c2d781186103df5760443610610be1576004358060a01c610be1576040526002336020525f5260405f20806040516020525f5260405f2090508054602435808203828111610be15790509050815550604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256002336020525f5260405f20806040516020525f5260405f2090505460605260206060a3600160605260206060f35b63a9059cbb81186104815760443610610be1576004358060a01c610be1576040526001336020525f5260405f208054602435808203828111610be1579050905081555060016040516020525f5260405f208054602435808201828110610be15790509050815550604051337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60243560605260206060a3600160605260206060f35b6323b872dd81186105665760643610610be1576004358060a01c610be1576040526024358060a01c610be15760605260026040516020525f5260405f2080336020525f5260405f2090508054604435808203828111610be1579050905081555060016040516020525f5260405f208054604435808203828111610be1579050905081555060016060516020525f5260405f208054604435808201828110610be157905090508155506060516040517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60443560805260206080a3600160805260206080f35b6340c10f1981186105fb5760443610610be1576004358060a01c610be1576040526003543318610be15760016040516020525f5260405f208054602435808201828110610be157905090508155505f54602435808201828110610be157905090505f556040515f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60243560605260206060a3005b6342966c68811861067f5760243610610be1576001336020525f5260405f208054600435808203828111610be157905090508155505f54600435808203828111610be157905090505f555f337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60043560405260206040a360043560405260206040f35b637ecebe0081186106b85760243610610be1576004358060a01c610be15760405260046040516020525f5260405f205460605260206060f35b63d505accf81186109395760e43610610be1576004358060a01c610be1576040526024358060a01c610be1576060526084358060081c610be1576080524260643510610be15760046040516020525f5260405f205460a05260a05160018101818110610be157905060046040516020525f5260405f20557f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f610100527f2d103f9b36ad244a9c78fc4f870bcfd43e49f6e627c691581d0b02215281761a610120527fe6bbd6277e1bf288eed5e8d1780f9a50b239e86b153736bceebccf4ea79d90b3610140524661016052306101805260a060e05260e080516020820120905060c0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c96101205260405161014052606051610160526044356101805260a0516101a0526064356101c05260c06101005261010080516020820120905060e0525f6002610120527f19010000000000000000000000000000000000000000000000000000000000006101405261012080516020820183610180018151815250508083019250505060c05181610180015260208101905060e0518161018001526020810190508061016052610160905080516020820120905061010052610100516101205260805161014052604060a46101603760205f608061012060015afa505f5160405118610be15760046040516020525f5260405f20805460018101818110610be157905081555060443560026040516020525f5260405f20806060516020525f5260405f209050556060516040517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925604435610120526020610120a3005b6399d0555081186109725760243610610be1576004358060a01c610be15760405260056040516020525f5260405f205460605260206060f35b63a79b092f8118610b705760a43610610be1576004358060a01c610be15760a0526044358060081c610be15760c0527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f610120527f2d103f9b36ad244a9c78fc4f870bcfd43e49f6e627c691581d0b02215281761a610140527fe6bbd6277e1bf288eed5e8d1780f9a50b239e86b153736bceebccf4ea79d90b3610160524661018052306101a05260a06101005261010080516020820120905060e0527fc68376ee809bc84a1619f411f9dd76615e4a60ad57444bc108028d84b0e75e906101405260a0516101605260243561018052600560a0516020525f5260405f20546101a052608061012052610120805160208201209050610100525f6002610140527f190100000000000000000000000000000000000000000000000000000000000061016052610140805160208201836101a0018151815250508083019250505060e051816101a0015260208101905061010051816101a001526020810190508061018052610180905080516020820120905061012052610120516101405260c05161016052604060646101803760205f608061014060015afa505f5160035418610be157600560a0516020525f5260405f208054602435808201828110610be1579050905081555060a051604052602435606052610b6e610b76565b005b505b5f5ffd5b60016040516020525f5260405f208054606051808201828110610be157905090508155505f54606051808201828110610be157905090505f556040515f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60605160805260206080a3565b5f80fda165767970657283000309000b
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.
Add Token to MetaMask (Web3)