ETH Price: $3,281.51 (-8.77%)
Gas: 27 Gwei

Token

Swerve DAO Token (SWRV)
 

Overview

Max Total Supply

21,199,254.506084021935181423 SWRV

Holders

6,811 (0.00%)

Total Transfers

-

Market

Price

$0.02 @ 0.000006 ETH (-0.07%)

Onchain Market Cap

$417,133.82

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Swerve is a fair launched liquidity pool on Ethereum designed for extremely efficient stablecoin trading, low risk, and supplemental fee income for liquidity providers.

Market

Volume (24H):$0.00
Market Capitalization:$0.00
Circulating Supply:0.00 SWRV
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Vyper_contract

Compiler Version
vyper:0.2.4

Optimization Enabled:
N/A

Other Settings:
MIT license

Contract Source Code (Vyper language format)

# @version 0.2.4
"""
@title Curve DAO Token
@author Curve Finance
@license MIT
@notice ERC20 with piecewise-linear mining supply.
@dev Based on the ERC-20 token standard as defined at
     https://eips.ethereum.org/EIPS/eip-20
"""

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

event UpdateMiningParameters:
    time: uint256
    rate: uint256
    supply: uint256

event SetMinter:
    minter: address

event SetAdmin:
    admin: address


name: public(String[64])
symbol: public(String[32])
decimals: public(uint256)

balanceOf: public(HashMap[address, uint256])
allowances: HashMap[address, HashMap[address, uint256]]
total_supply: uint256

minter: public(address)
admin: public(address)

# General constants
HOUR: constant(uint256) = 3600
DAY: constant(uint256) = 86400
WEEK: constant(uint256) = 86400 * 7
YEAR: constant(uint256) = WEEK * 52

# Allocation:
# ===========
# WE GIVE IT BACK TO YOU ... THE PEOPLE: 100%

# Supply parameters
INITIAL_SUPPLY: constant(uint256) = 0
INFLATION_DELAY: constant(uint256) = 3 * HOUR # Three Hour delay before minting may begin
RATE_DENOMINATOR: constant(uint256) = 10 ** 18
RATE_TIME: constant(uint256) = 2 * WEEK # How often the rate goes to the next epoch
INITIAL_RATE: constant(uint256) = 9_000_000 * 10 ** 18 / (2 * WEEK) # 9 million for the first 2 weeks
EPOCH_INITIAL_RATE: constant(uint256) = 9_000_000 * 10 ** 18 / YEAR # 9 million for the first year thereafter
LATE_RATE: constant(uint256) = 3_000_000 * 10 ** 18 / YEAR # 3 million per year after
INITIAL_RATE_EPOCH_CUTTOF: constant(uint256) = 27 # After 52 Weeks use the late rate
FINAL_INFLATION_EPOCH: constant(uint256) = 157 # No more inflation after 6 years (0 epoch is the 2 week period)

# Supply variables
mining_epoch: public(int128)
start_epoch_time: public(uint256)
rate: public(uint256)

start_epoch_supply: uint256


@external
def __init__(_name: String[64], _symbol: String[32], _decimals: uint256):
    """
    @notice Contract constructor
    @param _name Token full name
    @param _symbol Token symbol
    @param _decimals Number of decimals for token
    """
    init_supply: uint256 = INITIAL_SUPPLY * 10 ** _decimals
    self.name = _name
    self.symbol = _symbol
    self.decimals = _decimals
    self.balanceOf[msg.sender] = init_supply
    self.total_supply = init_supply
    self.admin = msg.sender
    log Transfer(ZERO_ADDRESS, msg.sender, init_supply)

    self.start_epoch_time = block.timestamp + INFLATION_DELAY - RATE_TIME
    self.mining_epoch = -1
    self.rate = 0
    self.start_epoch_supply = init_supply


@internal
def _update_mining_parameters():
    """
    @dev Update mining rate and supply at the start of the epoch
         Any modifying mining call must also call this
    """
    _rate: uint256 = self.rate
    _start_epoch_supply: uint256 = self.start_epoch_supply
    
    self.mining_epoch += 1
    self.start_epoch_time += RATE_TIME

    if self.mining_epoch == 0:
        _rate = INITIAL_RATE
    else:
        _start_epoch_supply += _rate * RATE_TIME

        if self.mining_epoch < INITIAL_RATE_EPOCH_CUTTOF:
            _rate = EPOCH_INITIAL_RATE
        elif self.mining_epoch >= FINAL_INFLATION_EPOCH:
            _rate = 0
        else:
            _rate = LATE_RATE

    self.start_epoch_supply = _start_epoch_supply
    self.rate = _rate

    log UpdateMiningParameters(block.timestamp, _rate, _start_epoch_supply)


@external
def update_mining_parameters():
    """
    @notice Update mining rate and supply at the start of the epoch
    @dev Callable by any address, but only once per epoch
         Total supply becomes slightly larger if this function is called late
    """
    assert block.timestamp >= self.start_epoch_time + RATE_TIME  # dev: too soon!
    self._update_mining_parameters()


@external
def start_epoch_time_write() -> uint256:
    """
    @notice Get timestamp of the current mining epoch start
            while simultaneously updating mining parameters
    @return Timestamp of the epoch
    """
    _start_epoch_time: uint256 = self.start_epoch_time
    if block.timestamp >= _start_epoch_time + RATE_TIME:
        self._update_mining_parameters()
        return self.start_epoch_time
    else:
        return _start_epoch_time


@external
def future_epoch_time_write() -> uint256:
    """
    @notice Get timestamp of the next mining epoch start
            while simultaneously updating mining parameters
    @return Timestamp of the next epoch
    """
    _start_epoch_time: uint256 = self.start_epoch_time
    if block.timestamp >= _start_epoch_time + RATE_TIME:
        self._update_mining_parameters()
        return self.start_epoch_time + RATE_TIME
    else:
        return _start_epoch_time + RATE_TIME


@internal
@view
def _available_supply() -> uint256:
    return self.start_epoch_supply + (block.timestamp - self.start_epoch_time) * self.rate


@external
@view
def available_supply() -> uint256:
    """
    @notice Current number of tokens in existence (claimed or unclaimed)
    """
    return self._available_supply()


@external
def set_minter(_minter: address):
    """
    @notice Set the minter address
    @dev Only callable once, when minter has not yet been set
    @param _minter Address of the minter
    """
    assert msg.sender == self.admin  # dev: admin only
    assert self.minter == ZERO_ADDRESS  # dev: can set the minter only once, at creation
    self.minter = _minter
    log SetMinter(_minter)


@external
def set_admin(_admin: address):
    """
    @notice Set the new admin.
    @dev After all is set up, admin only can change the token name
    @param _admin New admin address
    """
    assert msg.sender == self.admin  # dev: admin only
    self.admin = _admin
    log SetAdmin(_admin)


@external
@view
def totalSupply() -> uint256:
    """
    @notice Total number of tokens in existence.
    """
    return self.total_supply


@external
@view
def allowance(_owner : address, _spender : address) -> uint256:
    """
    @notice Check the amount of tokens that an owner allowed to a spender
    @param _owner The address which owns the funds
    @param _spender The address which will spend the funds
    @return uint256 specifying the amount of tokens still available for the spender
    """
    return self.allowances[_owner][_spender]


@external
def transfer(_to : address, _value : uint256) -> bool:
    """
    @notice Transfer `_value` tokens from `msg.sender` to `_to`
    @dev Vyper does not allow underflows, so the subtraction in
         this function will revert on an insufficient balance
    @param _to The address to transfer to
    @param _value The amount to be transferred
    @return bool success
    """
    assert _to != ZERO_ADDRESS  # dev: transfers to 0x0 are not allowed
    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:
    """
     @notice Transfer `_value` tokens from `_from` to `_to`
     @param _from address The address which you want to send tokens from
     @param _to address The address which you want to transfer to
     @param _value uint256 the amount of tokens to be transferred
     @return bool success
    """
    assert _to != ZERO_ADDRESS  # dev: transfers to 0x0 are not allowed
    # NOTE: vyper does not allow underflows
    #       so the following subtraction would revert on insufficient balance
    self.balanceOf[_from] -= _value
    self.balanceOf[_to] += _value
    self.allowances[_from][msg.sender] -= _value
    log Transfer(_from, _to, _value)
    return True


@external
def approve(_spender : address, _value : uint256) -> bool:
    """
    @notice Approve `_spender` to transfer `_value` tokens on behalf of `msg.sender`
    @dev Approval may only be from zero -> nonzero or from nonzero -> zero in order
        to mitigate the potential race condition described here:
        https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    @param _spender The address which will spend the funds
    @param _value The amount of tokens to be spent
    @return bool success
    """
    assert _value == 0 or self.allowances[msg.sender][_spender] == 0
    self.allowances[msg.sender][_spender] = _value
    log Approval(msg.sender, _spender, _value)
    return True


@external
def mint(_to: address, _value: uint256) -> bool:
    """
    @notice Mint `_value` tokens and assign them to `_to`
    @dev Emits a Transfer event originating from 0x00
    @param _to The account that will receive the created tokens
    @param _value The amount that will be created
    @return bool success
    """
    assert msg.sender == self.minter  # dev: minter only
    assert _to != ZERO_ADDRESS  # dev: zero address

    if block.timestamp >= self.start_epoch_time + RATE_TIME:
        self._update_mining_parameters()

    _total_supply: uint256 = self.total_supply + _value
    assert _total_supply <= self._available_supply()  # dev: exceeds allowable mint amount
    self.total_supply = _total_supply

    self.balanceOf[_to] += _value
    log Transfer(ZERO_ADDRESS, _to, _value)

    return True


@external
def burn(_value: uint256) -> bool:
    """
    @notice Burn `_value` tokens belonging to `msg.sender`
    @dev Emits a Transfer event with a destination of 0x00
    @param _value The amount that will be burned
    @return bool success
    """
    self.balanceOf[msg.sender] -= _value
    self.total_supply -= _value

    log Transfer(msg.sender, ZERO_ADDRESS, _value)
    return True


@external
def set_name(_name: String[64], _symbol: String[32]):
    """
    @notice Change the token name and symbol to `_name` and `_symbol`
    @dev Only callable by the admin account
    @param _name New token name
    @param _symbol New token symbol
    """
    assert msg.sender == self.admin, "Only admin is allowed to change name"
    self.name = _name
    self.symbol = _symbol

Contract Security Audit

Contract ABI

[{"name":"Transfer","inputs":[{"type":"address","name":"_from","indexed":true},{"type":"address","name":"_to","indexed":true},{"type":"uint256","name":"_value","indexed":false}],"anonymous":false,"type":"event"},{"name":"Approval","inputs":[{"type":"address","name":"_owner","indexed":true},{"type":"address","name":"_spender","indexed":true},{"type":"uint256","name":"_value","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateMiningParameters","inputs":[{"type":"uint256","name":"time","indexed":false},{"type":"uint256","name":"rate","indexed":false},{"type":"uint256","name":"supply","indexed":false}],"anonymous":false,"type":"event"},{"name":"SetMinter","inputs":[{"type":"address","name":"minter","indexed":false}],"anonymous":false,"type":"event"},{"name":"SetAdmin","inputs":[{"type":"address","name":"admin","indexed":false}],"anonymous":false,"type":"event"},{"outputs":[],"inputs":[{"type":"string","name":"_name"},{"type":"string","name":"_symbol"},{"type":"uint256","name":"_decimals"}],"stateMutability":"nonpayable","type":"constructor"},{"name":"update_mining_parameters","outputs":[],"inputs":[],"stateMutability":"nonpayable","type":"function","gas":150926},{"name":"start_epoch_time_write","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"nonpayable","type":"function","gas":151781},{"name":"future_epoch_time_write","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"nonpayable","type":"function","gas":151984},{"name":"available_supply","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":4018},{"name":"set_minter","outputs":[],"inputs":[{"type":"address","name":"_minter"}],"stateMutability":"nonpayable","type":"function","gas":38668},{"name":"set_admin","outputs":[],"inputs":[{"type":"address","name":"_admin"}],"stateMutability":"nonpayable","type":"function","gas":37807},{"name":"totalSupply","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1391},{"name":"allowance","outputs":[{"type":"uint256","name":""}],"inputs":[{"type":"address","name":"_owner"},{"type":"address","name":"_spender"}],"stateMutability":"view","type":"function","gas":1729},{"name":"transfer","outputs":[{"type":"bool","name":""}],"inputs":[{"type":"address","name":"_to"},{"type":"uint256","name":"_value"}],"stateMutability":"nonpayable","type":"function","gas":75109},{"name":"transferFrom","outputs":[{"type":"bool","name":""}],"inputs":[{"type":"address","name":"_from"},{"type":"address","name":"_to"},{"type":"uint256","name":"_value"}],"stateMutability":"nonpayable","type":"function","gas":111403},{"name":"approve","outputs":[{"type":"bool","name":""}],"inputs":[{"type":"address","name":"_spender"},{"type":"uint256","name":"_value"}],"stateMutability":"nonpayable","type":"function","gas":39258},{"name":"mint","outputs":[{"type":"bool","name":""}],"inputs":[{"type":"address","name":"_to"},{"type":"uint256","name":"_value"}],"stateMutability":"nonpayable","type":"function","gas":230178},{"name":"burn","outputs":[{"type":"bool","name":""}],"inputs":[{"type":"uint256","name":"_value"}],"stateMutability":"nonpayable","type":"function","gas":74969},{"name":"set_name","outputs":[],"inputs":[{"type":"string","name":"_name"},{"type":"string","name":"_symbol"}],"stateMutability":"nonpayable","type":"function","gas":178240},{"name":"name","outputs":[{"type":"string","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":8033},{"name":"symbol","outputs":[{"type":"string","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":7086},{"name":"decimals","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1691},{"name":"balanceOf","outputs":[{"type":"uint256","name":""}],"inputs":[{"type":"address","name":"arg0"}],"stateMutability":"view","type":"function","gas":1875},{"name":"minter","outputs":[{"type":"address","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1751},{"name":"admin","outputs":[{"type":"address","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1781},{"name":"mining_epoch","outputs":[{"type":"int128","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1811},{"name":"start_epoch_time","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1841},{"name":"rate","outputs":[{"type":"uint256","name":""}],"inputs":[],"stateMutability":"view","type":"function","gas":1871}]

740100000000000000000000000000000000000000006020526f7fffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff8000000000000000000000000000000060605274012a05f1fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffed5fa0e000000000000000000000000000000000060a05260606111076101403934156100a157600080fd5b6060602061110760c03960c051611107016101a0396040602061110760c03960c0516004013511156100d257600080fd5b6040602060206111070160c03960c05161110701610220396020602060206111070160c03960c05160040135111561010957600080fd5b6000604e610180511061011b57600080fd5b61018051600a0a808202821582848304141761013657600080fd5b80905090509050610280526101a080600060c052602060c020602082510161012060006003818352015b8261012051602002111561017357610195565b61012051602002850151610120518501555b8151600101808352811415610160575b50505050505061022080600160c052602060c020602082510161012060006002818352015b826101205160200211156101cd576101ef565b61012051602002850151610120518501555b81516001018083528114156101ba575b505050505050610180516002556102805160033360e05260c052604060c020556102805160055533600755610280516102a0523360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60206102a0a342612a3081818301101561025f57600080fd5b80820190509050621275008082101561027757600080fd5b808203905090506009557fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6008556000600a5561028051600b556110ef56600436101561000d57610e33565b600035601c52740100000000000000000000000000000000000000006020526f7fffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff8000000000000000000000000000000060605274012a05f1fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffed5fa0e000000000000000000000000000000000060a0526000156101fd575b61014052600a5461016052600b5461018052600880546001606051818301806040519013156100d757600080fd5b80919012156100e557600080fd5b90509050815550600980546212750081818301101561010357600080fd5b80820190509050815550600854151561012857676741e1ac8515c30c610160526101ad565b61018080516101605162127500808202821582848304141761014957600080fd5b8090509050905081818301101561015f57600080fd5b80820190509050815250601b6008541215610186576703f8b0107b45c294610160526101ac565b609d60085412151561019d576000610160526101ab565b670152e55ad3c1eb86610160525b5b5b61018051600b5561016051600a55426101a052610160516101c052610180516101e0527f27e46362a1e6129b6dd539c984ce739291a97128dfcaeca1255e8ac83abd944160606101a0a161014051565b63d43b40fa600051141561024d57341561021657600080fd5b6009546212750081818301101561022c57600080fd5b8082019050905042101561023f57600080fd5b600658016100a9565b600050005b63adc4cf4360005114156102c857341561026657600080fd5b60095461014052610140516212750081818301101561028457600080fd5b80820190509050421015156102b85761014051600658016100a9565b6101405260005060095460005260206000f3506102c6565b6101405160005260206000f3505b005b63b26b238e60005114156103775734156102e157600080fd5b6009546101405261014051621275008181830110156102ff57600080fd5b808201905090504210151561034d5761014051600658016100a9565b610140526000506009546212750081818301101561033857600080fd5b8082019050905060005260206000f350610375565b610140516212750081818301101561036457600080fd5b8082019050905060005260206000f3505b005b6000156103e0575b61014052600b54426009548082101561039757600080fd5b80820390509050600a5480820282158284830414176103b557600080fd5b809050905090508181830110156103cb57600080fd5b80820190509050600052600051610140515650005b6324f92a2560005114156104155734156103f957600080fd5b6006580161037f565b610140526101405160005260206000f350005b631652e9fc600051141561049157341561042e57600080fd5b600435602051811061043f57600080fd5b50600754331461044e57600080fd5b6006541561045b57600080fd5b600435600655600435610140527fcec52196e972044edde8689a1b608e459c5946b7f3e5c8cd3d6d8e126d422e1c6020610140a1005b63e9333fab60005114156105005734156104aa57600080fd5b60043560205181106104bb57600080fd5b5060075433146104ca57600080fd5b600435600755600435610140527f5a272403b402d892977df56625f4164ccaf70ca3863991c43ecfe76a6905b0a16020610140a1005b6318160ddd600051141561052757341561051957600080fd5b60055460005260206000f350005b63dd62ed3e600051141561058e57341561054057600080fd5b600435602051811061055157600080fd5b50602435602051811061056357600080fd5b50600460043560e05260c052604060c02060243560e05260c052604060c0205460005260206000f350005b63a9059cbb600051141561065f5734156105a757600080fd5b60043560205181106105b857600080fd5b506000600435186105c857600080fd5b60033360e05260c052604060c0208054602435808210156105e857600080fd5b80820390509050815550600360043560e05260c052604060c020805460243581818301101561061657600080fd5b8082019050905081555060243561014052600435337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b6323b872dd600051141561077e57341561067857600080fd5b600435602051811061068957600080fd5b50602435602051811061069b57600080fd5b506000602435186106ab57600080fd5b600360043560e05260c052604060c0208054604435808210156106cd57600080fd5b80820390509050815550600360243560e05260c052604060c02080546044358181830110156106fb57600080fd5b80820190509050815550600460043560e05260c052604060c0203360e05260c052604060c02080546044358082101561073357600080fd5b80820390509050815550604435610140526024356004357fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b63095ea7b3600051141561084157341561079757600080fd5b60043560205181106107a857600080fd5b5060243515156107b95760016107d8565b60043360e05260c052604060c02060043560e05260c052604060c02054155b5b6107e257600080fd5b60243560043360e05260c052604060c02060043560e05260c052604060c0205560243561014052600435337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256020610140a3600160005260206000f350005b6340c10f19600051141561097857341561085a57600080fd5b600435602051811061086b57600080fd5b50600654331461087a57600080fd5b60006004351861088957600080fd5b6009546212750081818301101561089f57600080fd5b80820190509050421015156108bb57600658016100a9565b6000505b6005546024358181830110156108d057600080fd5b8082019050905061014052610140516006580161037f565b61018052610140526101805161014051111561090357600080fd5b61014051600555600360043560e05260c052604060c020805460243581818301101561092e57600080fd5b808201905090508155506024356101a05260043560007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60206101a0a3600160005260206000f350005b6342966c686000511415610a1757341561099157600080fd5b60033360e05260c052604060c0208054600435808210156109b157600080fd5b8082039050905081555060058054600435808210156109cf57600080fd5b80820390509050815550600435610140526000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b63e1430e066000511415610b99573415610a3057600080fd5b6060600435600401610140376040600435600401351115610a5057600080fd5b60406024356004016101c0376020602435600401351115610a7057600080fd5b6308c379a0610220526020610240526024610260527f4f6e6c792061646d696e20697320616c6c6f77656420746f206368616e676520610280527f6e616d65000000000000000000000000000000000000000000000000000000006102a052610260506007543314610ae357608461023cfd5b61014080600060c052602060c020602082510161012060006003818352015b82610120516020021115610b1557610b37565b61012051602002850151610120518501555b8151600101808352811415610b02575b5050505050506101c080600160c052602060c020602082510161012060006002818352015b82610120516020021115610b6f57610b91565b61012051602002850151610120518501555b8151600101808352811415610b5c575b505050505050005b6306fdde036000511415610c4d573415610bb257600080fd5b60008060c052602060c020610180602082540161012060006003818352015b82610120516020021115610be457610c06565b61012051850154610120516020028501525b8151600101808352811415610bd1575b50505050505061018051806101a001818260206001820306601f82010390500336823750506020610160526040610180510160206001820306601f8201039050610160f350005b6395d89b416000511415610d01573415610c6657600080fd5b60018060c052602060c020610180602082540161012060006002818352015b82610120516020021115610c9857610cba565b61012051850154610120516020028501525b8151600101808352811415610c85575b50505050505061018051806101a001818260206001820306601f82010390500336823750506020610160526040610180510160206001820306601f8201039050610160f350005b63313ce5676000511415610d28573415610d1a57600080fd5b60025460005260206000f350005b6370a082316000511415610d6f573415610d4157600080fd5b6004356020518110610d5257600080fd5b50600360043560e05260c052604060c0205460005260206000f350005b63075461726000511415610d96573415610d8857600080fd5b60065460005260206000f350005b63f851a4406000511415610dbd573415610daf57600080fd5b60075460005260206000f350005b63f9a40bf66000511415610de4573415610dd657600080fd5b60085460005260206000f350005b637375be266000511415610e0b573415610dfd57600080fd5b60095460005260206000f350005b632c4e722e6000511415610e32573415610e2457600080fd5b600a5460005260206000f350005b5b60006000fd5b6102b66110ef036102b66000396102b66110ef036000f3000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000105377657276652044414f20546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045357525600000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x600436101561000d57610e33565b600035601c52740100000000000000000000000000000000000000006020526f7fffffffffffffffffffffffffffffff6040527fffffffffffffffffffffffffffffffff8000000000000000000000000000000060605274012a05f1fffffffffffffffffffffffffdabf41c006080527ffffffffffffffffffffffffed5fa0e000000000000000000000000000000000060a0526000156101fd575b61014052600a5461016052600b5461018052600880546001606051818301806040519013156100d757600080fd5b80919012156100e557600080fd5b90509050815550600980546212750081818301101561010357600080fd5b80820190509050815550600854151561012857676741e1ac8515c30c610160526101ad565b61018080516101605162127500808202821582848304141761014957600080fd5b8090509050905081818301101561015f57600080fd5b80820190509050815250601b6008541215610186576703f8b0107b45c294610160526101ac565b609d60085412151561019d576000610160526101ab565b670152e55ad3c1eb86610160525b5b5b61018051600b5561016051600a55426101a052610160516101c052610180516101e0527f27e46362a1e6129b6dd539c984ce739291a97128dfcaeca1255e8ac83abd944160606101a0a161014051565b63d43b40fa600051141561024d57341561021657600080fd5b6009546212750081818301101561022c57600080fd5b8082019050905042101561023f57600080fd5b600658016100a9565b600050005b63adc4cf4360005114156102c857341561026657600080fd5b60095461014052610140516212750081818301101561028457600080fd5b80820190509050421015156102b85761014051600658016100a9565b6101405260005060095460005260206000f3506102c6565b6101405160005260206000f3505b005b63b26b238e60005114156103775734156102e157600080fd5b6009546101405261014051621275008181830110156102ff57600080fd5b808201905090504210151561034d5761014051600658016100a9565b610140526000506009546212750081818301101561033857600080fd5b8082019050905060005260206000f350610375565b610140516212750081818301101561036457600080fd5b8082019050905060005260206000f3505b005b6000156103e0575b61014052600b54426009548082101561039757600080fd5b80820390509050600a5480820282158284830414176103b557600080fd5b809050905090508181830110156103cb57600080fd5b80820190509050600052600051610140515650005b6324f92a2560005114156104155734156103f957600080fd5b6006580161037f565b610140526101405160005260206000f350005b631652e9fc600051141561049157341561042e57600080fd5b600435602051811061043f57600080fd5b50600754331461044e57600080fd5b6006541561045b57600080fd5b600435600655600435610140527fcec52196e972044edde8689a1b608e459c5946b7f3e5c8cd3d6d8e126d422e1c6020610140a1005b63e9333fab60005114156105005734156104aa57600080fd5b60043560205181106104bb57600080fd5b5060075433146104ca57600080fd5b600435600755600435610140527f5a272403b402d892977df56625f4164ccaf70ca3863991c43ecfe76a6905b0a16020610140a1005b6318160ddd600051141561052757341561051957600080fd5b60055460005260206000f350005b63dd62ed3e600051141561058e57341561054057600080fd5b600435602051811061055157600080fd5b50602435602051811061056357600080fd5b50600460043560e05260c052604060c02060243560e05260c052604060c0205460005260206000f350005b63a9059cbb600051141561065f5734156105a757600080fd5b60043560205181106105b857600080fd5b506000600435186105c857600080fd5b60033360e05260c052604060c0208054602435808210156105e857600080fd5b80820390509050815550600360043560e05260c052604060c020805460243581818301101561061657600080fd5b8082019050905081555060243561014052600435337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b6323b872dd600051141561077e57341561067857600080fd5b600435602051811061068957600080fd5b50602435602051811061069b57600080fd5b506000602435186106ab57600080fd5b600360043560e05260c052604060c0208054604435808210156106cd57600080fd5b80820390509050815550600360243560e05260c052604060c02080546044358181830110156106fb57600080fd5b80820190509050815550600460043560e05260c052604060c0203360e05260c052604060c02080546044358082101561073357600080fd5b80820390509050815550604435610140526024356004357fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b63095ea7b3600051141561084157341561079757600080fd5b60043560205181106107a857600080fd5b5060243515156107b95760016107d8565b60043360e05260c052604060c02060043560e05260c052604060c02054155b5b6107e257600080fd5b60243560043360e05260c052604060c02060043560e05260c052604060c0205560243561014052600435337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256020610140a3600160005260206000f350005b6340c10f19600051141561097857341561085a57600080fd5b600435602051811061086b57600080fd5b50600654331461087a57600080fd5b60006004351861088957600080fd5b6009546212750081818301101561089f57600080fd5b80820190509050421015156108bb57600658016100a9565b6000505b6005546024358181830110156108d057600080fd5b8082019050905061014052610140516006580161037f565b61018052610140526101805161014051111561090357600080fd5b61014051600555600360043560e05260c052604060c020805460243581818301101561092e57600080fd5b808201905090508155506024356101a05260043560007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60206101a0a3600160005260206000f350005b6342966c686000511415610a1757341561099157600080fd5b60033360e05260c052604060c0208054600435808210156109b157600080fd5b8082039050905081555060058054600435808210156109cf57600080fd5b80820390509050815550600435610140526000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020610140a3600160005260206000f350005b63e1430e066000511415610b99573415610a3057600080fd5b6060600435600401610140376040600435600401351115610a5057600080fd5b60406024356004016101c0376020602435600401351115610a7057600080fd5b6308c379a0610220526020610240526024610260527f4f6e6c792061646d696e20697320616c6c6f77656420746f206368616e676520610280527f6e616d65000000000000000000000000000000000000000000000000000000006102a052610260506007543314610ae357608461023cfd5b61014080600060c052602060c020602082510161012060006003818352015b82610120516020021115610b1557610b37565b61012051602002850151610120518501555b8151600101808352811415610b02575b5050505050506101c080600160c052602060c020602082510161012060006002818352015b82610120516020021115610b6f57610b91565b61012051602002850151610120518501555b8151600101808352811415610b5c575b505050505050005b6306fdde036000511415610c4d573415610bb257600080fd5b60008060c052602060c020610180602082540161012060006003818352015b82610120516020021115610be457610c06565b61012051850154610120516020028501525b8151600101808352811415610bd1575b50505050505061018051806101a001818260206001820306601f82010390500336823750506020610160526040610180510160206001820306601f8201039050610160f350005b6395d89b416000511415610d01573415610c6657600080fd5b60018060c052602060c020610180602082540161012060006002818352015b82610120516020021115610c9857610cba565b61012051850154610120516020028501525b8151600101808352811415610c85575b50505050505061018051806101a001818260206001820306601f82010390500336823750506020610160526040610180510160206001820306601f8201039050610160f350005b63313ce5676000511415610d28573415610d1a57600080fd5b60025460005260206000f350005b6370a082316000511415610d6f573415610d4157600080fd5b6004356020518110610d5257600080fd5b50600360043560e05260c052604060c0205460005260206000f350005b63075461726000511415610d96573415610d8857600080fd5b60065460005260206000f350005b63f851a4406000511415610dbd573415610daf57600080fd5b60075460005260206000f350005b63f9a40bf66000511415610de4573415610dd657600080fd5b60085460005260206000f350005b637375be266000511415610e0b573415610dfd57600080fd5b60095460005260206000f350005b632c4e722e6000511415610e32573415610e2457600080fd5b600a5460005260206000f350005b5b60006000fd

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000105377657276652044414f20546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045357525600000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Swerve DAO Token
Arg [1] : _symbol (string): SWRV
Arg [2] : _decimals (uint256): 18

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000010
Arg [4] : 5377657276652044414f20546f6b656e00000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 5357525600000000000000000000000000000000000000000000000000000000


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.