Contract 0xD0921691C7DEBc698e6e372c6f74dc01fc9d3778

 
 
Txn Hash
Method
Block
From
To
Value
0xcc499789528c342f6815ea9e914326da247543e07520a79ec0a6edca4b1b2b64Approve165024322023-01-28 2:49:351 hr 21 mins ago0xfdbbfb0fe2986672af97eca0e797d76a0bbf35c9 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00033209 13.88530246
0x836ad5aee5a6dc9928fec47fb4d3ad59d89a820b057bc61f02a1f4cf688d7829Approve164979092023-01-27 11:39:3516 hrs 31 mins ago0x61fdff48d154c6079e43cbf14027057b367cb3b2 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00059807 12.94496874
0xe99b8608ba4399d2470e5258a0b0dd123bf7594ba266a6a5d7ec90964458485cApprove164892392023-01-26 6:36:231 day 21 hrs agoENS Name kostafun.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00075055 16.24545984
0x99bc12202fa236b0450f348aee588d79388807d9ea2e896b9dafc523519b86a7Approve164758402023-01-24 9:41:353 days 18 hrs agoENS Name 69888420.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00068054 14.73004979
0x2240ca32238c139689bce8e92aa1b82a24205b68b42b03fc903e453c92404071Approve164125792023-01-15 13:44:2312 days 14 hrs ago0x6977e753e022f65ebeb170d8267b2ea54a431523 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00074293 16.08039614
0xc41e5bf19a1f0c9cfa44749a880bb4f8b63505f5680b070e5c11d8c0a4774dc3Approve164125762023-01-15 13:43:3512 days 14 hrs ago0x93e225d4cbf1913c30409a75201f6ed32a6b6f77 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00072985 15.79734231
0x56e7bd93ac71e589226a2596589641b21dfd72a40d6dc0cb854b41242a2ee45dApprove164069692023-01-14 18:54:4713 days 9 hrs agoENS Name kersuv.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00081217 17.57911403
0xf09fb2c8aa44e2f83e125a32ab93a8b139c4dc70a6df652247a14f5defc1f16fApprove163715462023-01-09 20:10:5918 days 8 hrs agoENS Name becks40.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00191259 41.39730944
0x2e4a4f467afbe6c35e524e4ce51052c272e8d40cab574b787819c2fce3cee44bApprove163603372023-01-08 6:39:3519 days 21 hrs ago0xba6063e406811ead1c03d6c01021a6fc42c9e4c7 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.0007169 15.51704985
0x1aaaad643300836c78ada80aa18e035cf315bc9a61fd3c8503d0c9255d941b67Approve163577932023-01-07 22:08:4720 days 6 hrs ago0x19124ee4114b0444535ee57b30118cbd1ca11eda IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00073776 15.96852156
0xbfa55d8c03c4f300fc883d6709911f44e7743e295bdef36692ad1a487c685f08Approve163393662023-01-05 8:21:5922 days 19 hrs ago0x142e67cd752722e020bacdcc9c0f317da24fb83b IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00073559 15.92159835
0x15de6d5599fc7c2e2a8f0adaa4816912242b2c386a45724664a51028057c16e7Approve163137242023-01-01 18:31:3526 days 9 hrs ago0x9824697f7c12cabada9b57842060931c48dea969 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.000424 17.72799824
0x57d6d5ca95a0ca4b03dc3a9e2c4f23116812e5854da97dc2c5d7b73741a9c020Approve163067162022-12-31 19:04:2327 days 9 hrs agoENS Name sanuxo.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00072438 15.67889992
0x00953e857fe956c41b3dba3588a615dd1e6339e218ae57e71f80e9b950523ee4Approve162813902022-12-28 6:14:4730 days 21 hrs ago0xb44831a793d4be04c06ad22e3fed000b7406b382 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.0003826716
0x0db09da08a2410e8b29584278dc0ea5c0b593991737005b627ef7a566940291eApprove162407792022-12-22 14:15:5936 days 13 hrs ago0x936b63a011f9b7cc9c3470e408f8e62b9fdba841 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.0009766 21.1382661
0x93432e751a8739be5a1529f240f4da499a1225b0dfe13a7f9ebcd2eb036c9309Approve161833422022-12-14 13:50:4744 days 14 hrs ago0xad99b27f19a33f1141f4b3c9f2da262845df0d77 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00065363 14.1477275
0x15836317009d9a941cd8203e4a03e6c3eb697dc583808ad9fd08dc8609cac9e0Approve161692302022-12-12 14:29:4746 days 13 hrs ago0x3c739ec88a51793101cd59313b85415d8d01ee7f IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00091926 19.89712291
0xa4095c83d5570d99bc240e6795e6fecfcc7ccda7d7d2ab0499b0e7433d6ba96fApprove161692192022-12-12 14:27:3546 days 13 hrs ago0xb4baeb9b6591c9b842e5af3e7b3b30c4e6e42cfa IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00082507 17.85833348
0x09975994220e33bd4c58587b65c8e90a466a6f7001f3f9eb17b05dd3068a87f8Approve161680532022-12-12 10:32:4746 days 17 hrs ago0xf49b0201b65a00a2c30397e8a51753b5367050f0 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00125798 27.2286242
0x53df4cf41ba5ed4a60712af591531fe8a6d2c301d2139845d2109f28796b9af2Approve161680022022-12-12 10:22:3546 days 17 hrs ago0x6119fa6c5b18be03f3b8e408c961e28239a0108c IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00129941 28.12519349
0xd3310468a2e856f35da929d03db01921a3b8967e43d161a3b14802de5401fbf1Approve161595982022-12-11 6:13:1147 days 21 hrs ago0xdf7bdb2d8e3c2c39b9367d887d497d450ad1c597 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00066329 14.35677288
0xd675d1050f2408d92544ddf9846c711554afc6c889a064a2fa8f87423e3bd03cApprove161346662022-12-07 18:38:2351 days 9 hrs agoMirror: Chris Martz IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00087504 18.93989325
0x8790f2ae5c748ad241116954d9caaabdfa15f38537e7e8aa6aad14d3ff2e712dApprove160305362022-11-23 5:13:2365 days 22 hrs agoENS Name vxeddsa.eth IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00068309 14.78524471
0xf41ff9c837555a70e9efbed50cd314d1e742ef58aa14a6882a1ce151a062a267Approve160267762022-11-22 16:35:4766 days 11 hrs ago0x51bd4c735927f958a90db80398826ff47a9832f1 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.0007773 16.82439313
0x8893078ebb86bb984e163d5365b9b32b1372e5c90edc7bd354b0e53f2eab399cApprove160230752022-11-22 4:10:4767 days ago0xcab9dd9466c3be2b9e1c90e34be799727c569847 IN  0xd0921691c7debc698e6e372c6f74dc01fc9d37780 Ether0.00050439 10.91731207
[ Download CSV Export 
View more zero value Internal Transactions in Advanced View mode
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Vyper_contract

Compiler Version
vyper:0.3.3

Optimization Enabled:
N/A

Other Settings:
None license

Contract Source Code (Vyper language format)

# @version 0.3.3
"""
@title Boost Delegation V2
@author CurveFi
"""


event Approval:
    _owner: indexed(address)
    _spender: indexed(address)
    _value: uint256

event Transfer:
    _from: indexed(address)
    _to: indexed(address)
    _value: uint256

event Boost:
    _from: indexed(address)
    _to: indexed(address)
    _bias: uint256
    _slope: uint256
    _start: uint256

event Migrate:
    _token_id: indexed(uint256)


interface BoostV1:
    def ownerOf(_token_id: uint256) -> address: view
    def token_boost(_token_id: uint256) -> int256: view
    def token_expiry(_token_id: uint256) -> uint256: view

interface VotingEscrow:
    def balanceOf(_user: address) -> uint256: view
    def totalSupply() -> uint256: view
    def locked__end(_user: address) -> uint256: view


struct Point:
    bias: uint256
    slope: uint256
    ts: uint256


NAME: constant(String[32]) = "Vote-Escrowed Boost"
SYMBOL: constant(String[8]) = "veBoost"
VERSION: constant(String[8]) = "v2.0.0"

EIP712_TYPEHASH: constant(bytes32) = keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract,bytes32 salt)")
PERMIT_TYPEHASH: constant(bytes32) = keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)")

WEEK: constant(uint256) = 86400 * 7


BOOST_V1: immutable(address)
DOMAIN_SEPARATOR: immutable(bytes32)
VE: immutable(address)


allowance: public(HashMap[address, HashMap[address, uint256]])
nonces: public(HashMap[address, uint256])

delegated: public(HashMap[address, Point])
delegated_slope_changes: public(HashMap[address, HashMap[uint256, uint256]])

received: public(HashMap[address, Point])
received_slope_changes: public(HashMap[address, HashMap[uint256, uint256]])

migrated: public(HashMap[uint256, bool])


@external
def __init__(_boost_v1: address, _ve: address):
    BOOST_V1 = _boost_v1
    DOMAIN_SEPARATOR = keccak256(_abi_encode(EIP712_TYPEHASH, keccak256(NAME), keccak256(VERSION), chain.id, self, block.prevhash))
    VE = _ve

    log Transfer(ZERO_ADDRESS, msg.sender, 0)


@view
@internal
def _checkpoint_read(_user: address, _delegated: bool) -> Point:
    point: Point = empty(Point)

    if _delegated:
        point = self.delegated[_user]
    else:
        point = self.received[_user]

    if point.ts == 0:
        point.ts = block.timestamp

    if point.ts == block.timestamp:
        return point

    ts: uint256 = (point.ts / WEEK) * WEEK
    for _ in range(255):
        ts += WEEK

        dslope: uint256 = 0
        if block.timestamp < ts:
            ts = block.timestamp
        else:
            if _delegated:
                dslope = self.delegated_slope_changes[_user][ts]
            else:
                dslope = self.received_slope_changes[_user][ts]

        point.bias -= point.slope * (ts - point.ts)
        point.slope -= dslope
        point.ts = ts

        if ts == block.timestamp:
            break

    return point


@internal
def _checkpoint_write(_user: address, _delegated: bool) -> Point:
    point: Point = empty(Point)

    if _delegated:
        point = self.delegated[_user]
    else:
        point = self.received[_user]

    if point.ts == 0:
        point.ts = block.timestamp

    if point.ts == block.timestamp:
        return point

    dbias: uint256 = 0
    ts: uint256 = (point.ts / WEEK) * WEEK
    for _ in range(255):
        ts += WEEK

        dslope: uint256 = 0
        if block.timestamp < ts:
            ts = block.timestamp
        else:
            if _delegated:
                dslope = self.delegated_slope_changes[_user][ts]
            else:
                dslope = self.received_slope_changes[_user][ts]

        amount: uint256 = point.slope * (ts - point.ts)

        dbias += amount
        point.bias -= amount
        point.slope -= dslope
        point.ts = ts

        if ts == block.timestamp:
            break

    if _delegated == False and dbias != 0:  # received boost
        log Transfer(_user, ZERO_ADDRESS, dbias)

    return point


@view
@internal
def _balance_of(_user: address) -> uint256:
    amount: uint256 = VotingEscrow(VE).balanceOf(_user)

    point: Point = self._checkpoint_read(_user, True)
    amount -= (point.bias - point.slope * (block.timestamp - point.ts))

    point = self._checkpoint_read(_user, False)
    amount += (point.bias - point.slope * (block.timestamp - point.ts))
    return amount


@internal
def _boost(_from: address, _to: address, _amount: uint256, _endtime: uint256):
    assert _to not in [_from, ZERO_ADDRESS]
    assert _amount != 0
    assert _endtime > block.timestamp
    assert _endtime % WEEK == 0
    assert _endtime <= VotingEscrow(VE).locked__end(_from)

    # checkpoint delegated point
    point: Point = self._checkpoint_write(_from, True)
    assert _amount <= VotingEscrow(VE).balanceOf(_from) - (point.bias - point.slope * (block.timestamp - point.ts))

    # calculate slope and bias being added
    slope: uint256 = _amount / (_endtime - block.timestamp)
    bias: uint256 = slope * (_endtime - block.timestamp)

    # update delegated point
    point.bias += bias
    point.slope += slope

    # store updated values
    self.delegated[_from] = point
    self.delegated_slope_changes[_from][_endtime] += slope

    # update received amount
    point = self._checkpoint_write(_to, False)
    point.bias += bias
    point.slope += slope

    # store updated values
    self.received[_to] = point
    self.received_slope_changes[_to][_endtime] += slope

    log Transfer(_from, _to, _amount)
    log Boost(_from, _to, bias, slope, block.timestamp)

    # also checkpoint received and delegated
    self.received[_from] = self._checkpoint_write(_from, False)
    self.delegated[_to] = self._checkpoint_write(_to, True)


@external
def boost(_to: address, _amount: uint256, _endtime: uint256, _from: address = msg.sender):
    # reduce approval if necessary
    if _from != msg.sender:
        allowance: uint256 = self.allowance[_from][msg.sender]
        if allowance != MAX_UINT256:
            self.allowance[_from][msg.sender] = allowance - _amount
            log Approval(_from, msg.sender, allowance - _amount)

    self._boost(_from, _to, _amount, _endtime)


@external
def migrate(_token_id: uint256):
    assert not self.migrated[_token_id]

    self._boost(
        convert(shift(_token_id, -96), address),  # from
        BoostV1(BOOST_V1).ownerOf(_token_id),  # to
        convert(BoostV1(BOOST_V1).token_boost(_token_id), uint256),  # amount
        BoostV1(BOOST_V1).token_expiry(_token_id),  # expiry
    )

    self.migrated[_token_id] = True
    log Migrate(_token_id)


@external
def checkpoint_user(_user: address):
    self.delegated[_user] = self._checkpoint_write(_user, True)
    self.received[_user] = self._checkpoint_write(_user, False)


@external
def approve(_spender: address, _value: uint256) -> bool:
    self.allowance[msg.sender][_spender] = _value

    log Approval(msg.sender, _spender, _value)
    return True


@external
def permit(_owner: address, _spender: address, _value: uint256, _deadline: uint256, _v: uint8, _r: bytes32, _s: bytes32) -> bool:
    assert _owner != ZERO_ADDRESS
    assert block.timestamp <= _deadline

    nonce: uint256 = self.nonces[_owner]
    digest: bytes32 = keccak256(
        concat(
            b"\x19\x01",
            DOMAIN_SEPARATOR,
            keccak256(_abi_encode(PERMIT_TYPEHASH, _owner, _spender, _value, nonce, _deadline))
        )
    )

    assert ecrecover(digest, convert(_v, uint256), convert(_r, uint256), convert(_s, uint256)) == _owner

    self.allowance[_owner][_spender] = _value
    self.nonces[_owner] = nonce + 1

    log Approval(_owner, _spender, _value)
    return True


@external
def increaseAllowance(_spender: address, _added_value: uint256) -> bool:
    allowance: uint256 = self.allowance[msg.sender][_spender] + _added_value
    self.allowance[msg.sender][_spender] = allowance

    log Approval(msg.sender, _spender, allowance)
    return True


@external
def decreaseAllowance(_spender: address, _subtracted_value: uint256) -> bool:
    allowance: uint256 = self.allowance[msg.sender][_spender] - _subtracted_value
    self.allowance[msg.sender][_spender] = allowance

    log Approval(msg.sender, _spender, allowance)
    return True


@view
@external
def balanceOf(_user: address) -> uint256:
    return self._balance_of(_user)


@view
@external
def adjusted_balance_of(_user: address) -> uint256:
    return self._balance_of(_user)


@view
@external
def totalSupply() -> uint256:
    return VotingEscrow(VE).totalSupply()


@view
@external
def delegated_balance(_user: address) -> uint256:
    point: Point = self._checkpoint_read(_user, True)
    return point.bias - point.slope * (block.timestamp - point.ts)


@view
@external
def received_balance(_user: address) -> uint256:
    point: Point = self._checkpoint_read(_user, False)
    return point.bias - point.slope * (block.timestamp - point.ts)


@view
@external
def delegable_balance(_user: address) -> uint256:
    point: Point = self._checkpoint_read(_user, True)
    return VotingEscrow(VE).balanceOf(_user) - (point.bias - point.slope * (block.timestamp - point.ts))


@pure
@external
def name() -> String[32]:
    return NAME


@pure
@external
def symbol() -> String[8]:
    return SYMBOL


@pure
@external
def decimals() -> uint8:
    return 18


@pure
@external
def BOOST_V1() -> address:
    return BOOST_V1


@pure
@external
def DOMAIN_SEPARATOR() -> bytes32:
    return DOMAIN_SEPARATOR


@pure
@external
def VE() -> address:
    return VE

Contract Security Audit

Contract ABI

[{"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"},{"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":"Boost","inputs":[{"name":"_from","type":"address","indexed":true},{"name":"_to","type":"address","indexed":true},{"name":"_bias","type":"uint256","indexed":false},{"name":"_slope","type":"uint256","indexed":false},{"name":"_start","type":"uint256","indexed":false}],"anonymous":false,"type":"event"},{"name":"Migrate","inputs":[{"name":"_token_id","type":"uint256","indexed":true}],"anonymous":false,"type":"event"},{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"_boost_v1","type":"address"},{"name":"_ve","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"boost","inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_endtime","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"boost","inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_endtime","type":"uint256"},{"name":"_from","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"migrate","inputs":[{"name":"_token_id","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"checkpoint_user","inputs":[{"name":"_user","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"approve","inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"permit","inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_deadline","type":"uint256"},{"name":"_v","type":"uint8"},{"name":"_r","type":"bytes32"},{"name":"_s","type":"bytes32"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","inputs":[{"name":"_spender","type":"address"},{"name":"_added_value","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","inputs":[{"name":"_spender","type":"address"},{"name":"_subtracted_value","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"balanceOf","inputs":[{"name":"_user","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"adjusted_balance_of","inputs":[{"name":"_user","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"delegated_balance","inputs":[{"name":"_user","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"received_balance","inputs":[{"name":"_user","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"delegable_balance","inputs":[{"name":"_user","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"pure","type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"pure","type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"pure","type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8"}]},{"stateMutability":"pure","type":"function","name":"BOOST_V1","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"pure","type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32"}]},{"stateMutability":"pure","type":"function","name":"VE","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"allowance","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"nonces","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"delegated","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"tuple","components":[{"name":"bias","type":"uint256"},{"name":"slope","type":"uint256"},{"name":"ts","type":"uint256"}]}]},{"stateMutability":"view","type":"function","name":"delegated_slope_changes","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"uint256"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"received","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"tuple","components":[{"name":"bias","type":"uint256"},{"name":"slope","type":"uint256"},{"name":"ts","type":"uint256"}]}]},{"stateMutability":"view","type":"function","name":"received_slope_changes","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"uint256"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"migrated","inputs":[{"name":"arg0","type":"uint256"}],"outputs":[{"name":"","type":"bool"}]}]

60206118376000396000518060a01c6118325760405260206118576000396000518060a01c611832576060526040516300001713527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac56472610180527f576a762e50ddf4c74071046cf7b508f5d87c41676ea1b6c8bf07aba60e5b63066101a0527fd61c1033330c368dfc371f5b1e7133f4794e104642e5a3c87aba7a6a3441c8ff6101c052466101e052306102005260014303406102205260c0610160526101608051602082012090506300001733526060516300001753523360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600060805260206080a361171361011e6300000000396117136060016300000000f3600436101561000d57610d0f565b60003560e01c3461170e5763a2114cdb811861002d573361032052610048565b63b4b3c2498118610154576064358060a01c61170e57610320525b6004358060a01c61170e576103005233610320511461012c57600061032051602052600052604060002080336020526000526040600020905054610340527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610340511461012c576103405160243580821061170e578082039050905060006103205160205260005260406000208033602052600052604060002090505533610320517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256103405160243580821061170e5780820390509050610360526020610360a35b6103205161018052610300516101a0526024356101c0526044356101e0526101526112b2565b005b63454b060881186102ba57600660043560205260005260406000205461170e5760043560601c8060a01c61170e5761018052636352211e61030052600435610320526020610300602461031c60206117136000396000515afa6101bc573d600060003e3d6000fd5b60203d1061170e57610300518060a01c61170e5761034052610340516101a05263f01e4f0b61036052600435610380526020610360602461037c60206117136000396000515afa610212573d600060003e3d6000fd5b60203d1061170e5761036051806000811261170e5790506101c052636d1ac9b56103a0526004356103c05260206103a060246103bc60206117136000396000515afa610263573d600060003e3d6000fd5b60203d1061170e576103a0516101e05261027b6112b2565b600160066004356020526000526040600020556004357fd5837b673ffaac69230366d3f7eb7cb2ba2b9fd8f2d4e9d0f5e92d3756b1d5466000610300a2005b637de680618118610360576004358060a01c61170e576101805260026101805160205260005260406000206101805160405260016060526102fc6101a0610ef4565b6101a0805182556020810151600183015560408101516002830155505060046101805160205260005260406000206101805160405260006060526103416101a0610ef4565b6101a08051825560208101516001830155604081015160028301555050005b63095ea7b381186103d7576004358060a01c61170e576040526024356000336020526000526040600020806040516020526000526040600020905055604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560243560605260206060a3600160605260206060f35b63d505accf81186105c9576004358060a01c61170e576040526024358060a01c61170e576060526084358060081c61170e5760805260006040511461170e57606435421161170e57600160405160205260005260406000205460a05260006002610360527f19010000000000000000000000000000000000000000000000000000000000006103805261036080516020820183610580018151815250508083019250505060206117336000396000518161058001526020810190507f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c96104a0526040516104c0526060516104e0526044356105005260a051610520526064356105405260c0610480526104808051602082012090508161058001526020810190508061056052610560905080516020820120905060c05260405160c05160e0526080516101005260a4356101205260c4356101405260206000608060e060015afa506000511861170e576044356000604051602052600052604060002080606051602052600052604060002090505560a0516001818183011061170e578082019050905060016040516020526000526040600020556060516040517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560443560e052602060e0a3600160e052602060e0f35b63395093518118610676576004358060a01c61170e576040526000336020526000526040600020806040516020526000526040600020905054602435818183011061170e57808201905090506060526060516000336020526000526040600020806040516020526000526040600020905055604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560605160805260206080a3600160805260206080f35b63a457c2d78118610721576004358060a01c61170e57604052600033602052600052604060002080604051602052600052604060002090505460243580821061170e57808203905090506060526060516000336020526000526040600020806040516020526000526040600020905055604051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560605160805260206080a3600160805260206080f35b6370a082318118610755576004358060a01c61170e576102405260206102405161014052610750610260611154565b610260f35b63bbf7408a8118610789576004358060a01c61170e576102405260206102405161014052610784610260611154565b610260f35b6318160ddd81186107ce5760206318160ddd604052602060406004605c60206117536000396000515afa6107c2573d600060003e3d6000fd5b60203d1061170e576040f35b630a767cc68118610863576004358060a01c61170e57610140526101405160405260016060526107ff6101c0610d15565b6101c080516101605260208101516101805260408101516101a052506101605161018051426101a05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e57808203905090506101c05260206101c0f35b6322c18bb681186108f8576004358060a01c61170e57610140526101405160405260006060526108946101c0610d15565b6101c080516101605260208101516101805260408101516101a052506101605161018051426101a05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e57808203905090506101c05260206101c0f35b63ca83094681186109de576004358060a01c61170e57610140526101405160405260016060526109296101c0610d15565b6101c080516101605260208101516101805260408101516101a052506370a082316101c052610140516101e05260206101c060246101dc60206117536000396000515afa61097c573d600060003e3d6000fd5b60203d1061170e576101c0516101605161018051426101a05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e578082039050905080821061170e5780820390509050610200526020610200f35b6306fdde038118610a5e5760208060805260136040527f566f74652d457363726f77656420426f6f7374000000000000000000000000006060526040816080018151808252602083016020830181518152505050805180602083010181600003601f163682375050601f19601f8251602001011690509050810190506080f35b6395d89b418118610ade5760208060805260076040527f7665426f6f7374000000000000000000000000000000000000000000000000006060526040816080018151808252602083016020830181518152505050805180602083010181600003601f163682375050601f19601f8251602001011690509050810190506080f35b63313ce5678118610af457601260405260206040f35b635d14140a8118610b1357602061171360003960005160405260206040f35b633644e5158118610b3257602061173360003960005160405260206040f35b63c863657d8118610b5157602061175360003960005160405260206040f35b63dd62ed3e8118610ba3576004358060a01c61170e576040526024358060a01c61170e576060526000604051602052600052604060002080606051602052600052604060002090505460805260206080f35b637ecebe008118610bd6576004358060a01c61170e57604052600160405160205260005260406000205460605260206060f35b63f3598ad98118610c1b576004358060a01c61170e576040526002604051602052600052604060002080546060526001810154608052600281015460a0525060606060f35b63356a46808118610c5f576004358060a01c61170e576040526003604051602052600052604060002080602435602052600052604060002090505460605260206060f35b63df0cb9348118610ca4576004358060a01c61170e576040526004604051602052600052604060002080546060526001810154608052600281015460a0525060606060f35b635ad600c98118610ce8576004358060a01c61170e576040526005604051602052600052604060002080602435602052600052604060002090505460605260206060f35b630e359f168118610d0d57600660043560205260005260406000205460405260206040f35b505b60006000fd5b606036608037606051610d4d57600460405160205260005260406000208054608052600181015460a052600281015460c05250610d74565b600260405160205260005260406000208054608052600181015460a052600281015460c052505b60c051610d80574260c0525b4260c05118610da457608051815260a051602082015260c051604082015250610ef2565b60c05162093a808082049050905062093a8080820282158284830414171561170e579050905060e052600060ff905b806101005260e05162093a80818183011061170e578082019050905060e05260006101205260e0514210610e5e57606051610e3357600560405160205260005260406000208060e051602052600052604060002090505461012052610e63565b600360405160205260005260406000208060e051602052600052604060002090505461012052610e63565b4260e0525b60805160a05160e05160c05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e578082039050905060805260a0516101205180821061170e578082039050905060a05260e05160c0524260e05118610ece57610ed9565b600101818118610dd3575b5050608051815260a051602082015260c0516040820152505b565b606036608037606051610f2c57600460405160205260005260406000208054608052600181015460a052600281015460c05250610f53565b600260405160205260005260406000208054608052600181015460a052600281015460c052505b60c051610f5f574260c0525b4260c05118610f8357608051815260a051602082015260c051604082015250611152565b600060e05260c05162093a808082049050905062093a8080820282158284830414171561170e579050905061010052600060ff905b80610120526101005162093a80818183011061170e5780820190509050610100526000610140526101005142106110485760605161101c5760056040516020526000526040600020806101005160205260005260406000209050546101405261104e565b60036040516020526000526040600020806101005160205260005260406000209050546101405261104e565b42610100525b60a0516101005160c05180821061170e578082039050905080820282158284830414171561170e57905090506101605260e05161016051818183011061170e578082019050905060e0526080516101605180821061170e578082039050905060805260a0516101405180821061170e578082039050905060a0526101005160c0524261010051186110de576110e9565b600101818118610fb8575b5050606051156110fa576000611102565b600060e05114155b1561113b5760006040517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60e051610120526020610120a35b608051815260a051602082015260c0516040820152505b565b6370a0823161018052610140516101a0526020610180602461019c60206117536000396000515afa61118b573d600060003e3d6000fd5b60203d1061170e5761018051610160526101405160405260016060526111b26101e0610d15565b6101e080516101805260208101516101a05260408101516101c0525061016051610180516101a051426101c05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e578082039050905080821061170e5780820390509050610160526101405160405260006060526112386101e0610d15565b6101e080516101805260208101516101a05260408101516101c0525061016051610180516101a051426101c05180821061170e578082039050905080820282158284830414171561170e579050905080821061170e5780820390509050818183011061170e57808201905090506101605261016051815250565b6101a051610180516102205260006102405260016102005260006002905b60208102610220015183186112ea576000610200526112f5565b6001018181186112d0575b50506102005190501561170e5760006101c0511461170e57426101e051111561170e576101e05162093a808082069050905061170e5763adc635896102005261018051610220526020610200602461021c60206117536000396000515afa611362573d600060003e3d6000fd5b60203d1061170e57610200516101e0511161170e5761018051604052600160605261138e610260610ef4565b610260805161020052602081015161022052604081015161024052506370a082316102605261018051610280526020610260602461027c60206117536000396000515afa6113e1573d600060003e3d6000fd5b60203d1061170e57610260516102005161022051426102405180821061170e578082039050905080820282158284830414171561170e579050905080821061170e578082039050905080821061170e57808203905090506101c0511161170e576101c0516101e0514280821061170e578082039050905080801561170e5782049050905061026052610260516101e0514280821061170e578082039050905080820282158284830414171561170e5790509050610280526102005161028051818183011061170e5780820190509050610200526102205161026051818183011061170e5780820190509050610220526002610180516020526000526040600020610200518155610220516001820155610240516002820155506003610180516020526000526040600020806101e05160205260005260406000209050805461026051818183011061170e57808201905090508155506101a051604052600060605261154d6102a0610ef4565b6102a0805161020052602081015161022052604081015161024052506102005161028051818183011061170e5780820190509050610200526102205161026051818183011061170e57808201905090506102205260046101a05160205260005260406000206102005181556102205160018201556102405160028201555060056101a0516020526000526040600020806101e05160205260005260406000209050805461026051818183011061170e57808201905090508155506101a051610180517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6101c0516102a05260206102a0a36101a051610180517f9c0aa947e19ab1e2400ff167e2cb40414b570fdaf31ab646a16749ca3c4301ad610280516102a052610260516102c052426102e05260606102a0a360046101805160205260005260406000206101805160405260006060526116aa6102a0610ef4565b6102a0805182556020810151600183015560408101516002830155505060026101a05160205260005260406000206101a05160405260016060526116ef6102a0610ef4565b6102a08051825560208101516001830155604081015160028301555050565b600080fd005b600080fd000000000000000000000000d30dd0b919cb4012b3add78f6dcb6eb7ef225ac80000000000000000000000005f3b5dfeb7b28cdbd7faba78963ee202a494e2a2

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

000000000000000000000000d30dd0b919cb4012b3add78f6dcb6eb7ef225ac80000000000000000000000005f3b5dfeb7b28cdbd7faba78963ee202a494e2a2

-----Decoded View---------------
Arg [0] : _boost_v1 (address): 0xd30DD0B919cB4012b3AdD78f6Dcb6eb7ef225Ac8
Arg [1] : _ve (address): 0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000d30dd0b919cb4012b3add78f6dcb6eb7ef225ac8
Arg [1] : 0000000000000000000000005f3b5dfeb7b28cdbd7faba78963ee202a494e2a2


Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.