ETH Price: $3,431.51 (+3.97%)

Token

Settled ETHXY Token (SEXY)
 

Overview

Max Total Supply

100,000,000 SEXY

Holders

1,997 ( -0.050%)

Market

Price

$0.19 @ 0.000057 ETH (-3.74%)

Onchain Market Cap

$19,498,300.00

Circulating Supply Market Cap

$19,492,680.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
635.082733079755805924 SEXY

Value
$123.83 ( ~0.036086200313116 Eth) [0.0006%]
0xA4F2Ccf5aC48383aAd18B0F73e44900A29a8eA96
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

EthXY is a dangerously addictive MMORPG with on-chain PvP combat and a warm community of players.

Market

Volume (24H):$89,651.00
Market Capitalization:$19,492,680.00
Circulating Supply:100,000,000.00 SEXY
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Settled EthXYToken

Compiler Version
vyper:0.3.9

Optimization Enabled:
N/A

Other Settings:
MIT license

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

Contract ABI

[{"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"}]}]

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.