Contract 0x50c1a2eA0a861A967D9d0FFE2AE4012c2E053804 2

Contract Deployer Yearn.Finance 
 
 
Txn Hash
Method
Block
From
To
Value
0x853b7f0adc724d3ba8ba908628c0bfaf36867d1cc7ef9b229ce6573c69f3f662New Experimental...157764722022-10-18 17:25:5949 days 14 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01831573 39.02668779
0x5e591cc17271264632e7f91a4fcd8b95d89410e181f5d5fd0d00a87dfe8f6e59New Experimental...156491442022-09-30 22:29:3567 days 9 hrs ago0xb865aaf1f9f60630934739595f183c4900f65ed9 IN  yearn: Deployer 70 Ether0.00703375 15
0x321b62307f9a607ba5ca33f44d4166f5220771cdbca2d7510623a38d433aa6f2New Experimental...156249892022-09-27 13:28:3570 days 18 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.0109159524.4655822
0x9dc2b0e6331dc34e65beb6497f2b9b488265f57f1a0bdd017991002bb769cbabNew Experimental...156249882022-09-27 13:28:2370 days 18 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.0110692624.79879001
0xe5759cbb335d95b28c7741b515a680d1eedcfa8ed6030b95e7b916c37c91abb6New Experimental...154484972022-08-31 19:41:4397 days 12 hrs ago0xb865aaf1f9f60630934739595f183c4900f65ed9 IN  yearn: Deployer 70 Ether0.00914538 19.51168461
0x49cd472ec89328a90240b6633b2c2820cba7139ada765137f3048d4aad3babd1New Experimental...154040122022-08-24 16:41:51104 days 15 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.0056058711.94308797
0x57f5ced8814e0831487f4f2332a8dfd2fdeccb4f7540dd2103372290f7958f6bNew Experimental...150032122022-06-21 16:39:56168 days 15 hrs ago0x1889da57ecf24496f349ad493ab47737a1c62506 IN  yearn: Deployer 70 Ether0.03169457 69.94509392
0xcc7a72d564db57d828d605402336954a4e3a5cf0c0a316ce5b501abe8ba3d550New Experimental...150028182022-06-21 14:52:56168 days 17 hrs ago0x3475fd4144795eee8e67041bb5cbe51d273dd714 IN  yearn: Deployer 70 Ether0.03117062 68.78882635
0x46350c7c2d6eba48d003690e5f0960b730fa50343188ec66b5f474d1f37091f8New Experimental...149804482022-06-17 17:41:33172 days 14 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.0349927578.36999464
0xd02906dd92064ca342af65e9664a7e3b19fa6b17c5a683472f30e2b480e72a06New Experimental...149802402022-06-17 16:49:46172 days 15 hrs ago0xc1c734c36a1fb28502c48239995fc2b2d0031f81 IN  yearn: Deployer 70 Ether0.02834332 63.55647803
0x6ea3d23710e37c3ad9b4923c25e44bd10c1f00ca6d6bf60a7b3639e804e94d51New Experimental...149120022022-06-06 0:17:53184 days 7 hrs ago0xa38a0bc95b59b92b8ff8aef8f79e61a829a02dda IN  yearn: Deployer 70 Ether0.0133927728.55029279
0xb11192e9edc5778e7ac409591430bac082da0c9c41fc7ce352af02e8dd5aaeafTransfer148957652022-06-03 7:15:30187 days 40 mins agoSuspicious/Reported Address IN  yearn: Deployer 70.00055162 Ether0.00162668 77.3064622
0xec161dfd5c488258c5a00a3fdf29be4d26426d330e9f15c601247225442926a2New Experimental...148910682022-06-02 12:48:45187 days 19 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01748124 39.12840593
0x57539f865dec33f2c4efb9fb195ede13e9195124a0e4674349cb23b8d9420a80New Experimental...148803882022-05-31 18:53:25189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01775486 39.73658357
0xbdcb8654c7d3fecc3650b7438faff4548ebd4317aed6cb17140e8028989b0a55New Experimental...148803882022-05-31 18:53:25189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01775486 39.73658357
0x74d865cf0a8e969f58ffb10e3f1a65d3b6115110a941d95d92eedf92281bae9fNew Experimental...148803882022-05-31 18:53:25189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01775486 39.73658357
0xbda547d2f31bf42709d9cc71fbd3759915f00ef5de7870428a788f0264c9dbbaNew Experimental...148803882022-05-31 18:53:25189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01775486 39.73658357
0xfdb85ab656656346c51587b0458ce1cb4fbb0d034a51361b327517c261e5671fNew Experimental...148803302022-05-31 18:39:07189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01577421 35.30375662
0xe94f36e8e7f5be4f18e677c1e8758af71aa2732c5efe7aa4a0644adc27b88e1fNew Experimental...148803152022-05-31 18:36:12189 days 13 hrs ago0xc6387e937bcef8de3334f80edc623275d42457ff IN  yearn: Deployer 70 Ether0.01787256 40
0x7cd14f64345165a58b231ae627e8de753975fa9fae7e47ebe0151afc4895beb6New Experimental...147625902022-05-12 18:15:59208 days 13 hrs ago0xd20eb2390e675b000adb8511f62b28404115a1a4 IN  yearn: Deployer 70 Ether0.06293457 140.91839343
0x9145e0e3e826f51ae9048a393312ba6eba5c94fc8e634964979e325f7d10ccfbNew Experimental...146324072022-04-22 3:55:19229 days 4 hrs ago0xa38a0bc95b59b92b8ff8aef8f79e61a829a02dda IN  yearn: Deployer 70 Ether0.0155442334.64653384
0x09691abb1a86e5e97eb45cf8d9b9c80e2e8b037664ed6b4f92b87cdfcc5f9872New Experimental...145839542022-04-14 14:04:51236 days 17 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.0391257887.72459093
0x43bb4992fed9e5718df6be238052b38d3acb090e77315134dcfbde0c976f0372New Experimental...145839522022-04-14 14:04:23236 days 17 hrs agoYearn: Deployer 8 IN  yearn: Deployer 70 Ether0.04954127105.60243985
0xb863f4bd19e6b51df3cd666930bbe67eae361cf5a778f7c52afaa2ac8ba8ba75New Experimental...144337002022-03-22 3:30:15260 days 4 hrs ago0x621bcfaa87ba0b7c57ca49e1bb1a8b917c34ed2f IN  yearn: Deployer 70 Ether0.01807907 40.7426812
0xe71f8a06195f26ea2796b50c0c2abc059b4e9c1a32789d2738b3f423faec72e9New Experimental...144014232022-03-17 2:48:40265 days 5 hrs ago0xd20eb2390e675b000adb8511f62b28404115a1a4 IN  yearn: Deployer 70 Ether0.01382421 30.95332283
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x853b7f0adc724d3ba8ba908628c0bfaf36867d1cc7ef9b229ce6573c69f3f662157764722022-10-18 17:25:5949 days 14 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x5e591cc17271264632e7f91a4fcd8b95d89410e181f5d5fd0d00a87dfe8f6e59156491442022-09-30 22:29:3567 days 9 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x321b62307f9a607ba5ca33f44d4166f5220771cdbca2d7510623a38d433aa6f2156249892022-09-27 13:28:3570 days 18 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x9dc2b0e6331dc34e65beb6497f2b9b488265f57f1a0bdd017991002bb769cbab156249882022-09-27 13:28:2370 days 18 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xed7f783aef4d28fea44255f183763043fcfcaf32ba6b9dc0482af76525575391155682242022-09-19 14:42:3578 days 17 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xed7f783aef4d28fea44255f183763043fcfcaf32ba6b9dc0482af76525575391155682242022-09-19 14:42:3578 days 17 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xe5759cbb335d95b28c7741b515a680d1eedcfa8ed6030b95e7b916c37c91abb6154484972022-08-31 19:41:4397 days 12 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x49cd472ec89328a90240b6633b2c2820cba7139ada765137f3048d4aad3babd1154040122022-08-24 16:41:51104 days 15 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x57f5ced8814e0831487f4f2332a8dfd2fdeccb4f7540dd2103372290f7958f6b150032122022-06-21 16:39:56168 days 15 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xcc7a72d564db57d828d605402336954a4e3a5cf0c0a316ce5b501abe8ba3d550150028182022-06-21 14:52:56168 days 17 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x46350c7c2d6eba48d003690e5f0960b730fa50343188ec66b5f474d1f37091f8149804482022-06-17 17:41:33172 days 14 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xd02906dd92064ca342af65e9664a7e3b19fa6b17c5a683472f30e2b480e72a06149802402022-06-17 16:49:46172 days 15 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x6ea3d23710e37c3ad9b4923c25e44bd10c1f00ca6d6bf60a7b3639e804e94d51149120022022-06-06 0:17:53184 days 7 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xec161dfd5c488258c5a00a3fdf29be4d26426d330e9f15c601247225442926a2148910682022-06-02 12:48:45187 days 19 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x57539f865dec33f2c4efb9fb195ede13e9195124a0e4674349cb23b8d9420a80148803882022-05-31 18:53:25189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xbdcb8654c7d3fecc3650b7438faff4548ebd4317aed6cb17140e8028989b0a55148803882022-05-31 18:53:25189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x74d865cf0a8e969f58ffb10e3f1a65d3b6115110a941d95d92eedf92281bae9f148803882022-05-31 18:53:25189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xbda547d2f31bf42709d9cc71fbd3759915f00ef5de7870428a788f0264c9dbba148803882022-05-31 18:53:25189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xfdb85ab656656346c51587b0458ce1cb4fbb0d034a51361b327517c261e5671f148803302022-05-31 18:39:07189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0xe94f36e8e7f5be4f18e677c1e8758af71aa2732c5efe7aa4a0644adc27b88e1f148803152022-05-31 18:36:12189 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x4ba4c69a895c45493078c461752fab5a45afd5bd49f20f8a4fb3063895421166148659332022-05-29 10:24:14191 days 21 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x7cd14f64345165a58b231ae627e8de753975fa9fae7e47ebe0151afc4895beb6147625902022-05-12 18:15:59208 days 13 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x9145e0e3e826f51ae9048a393312ba6eba5c94fc8e634964979e325f7d10ccfb146324072022-04-22 3:55:19229 days 4 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x09691abb1a86e5e97eb45cf8d9b9c80e2e8b037664ed6b4f92b87cdfcc5f9872145839542022-04-14 14:04:51236 days 17 hrs ago yearn: Deployer 7  Contract Creation0 Ether
0x43bb4992fed9e5718df6be238052b38d3acb090e77315134dcfbde0c976f0372145839522022-04-14 14:04:23236 days 17 hrs ago yearn: Deployer 7  Contract Creation0 Ether
[ Download CSV Export 
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.

Contract Source Code Verified (Exact Match)

Contract Name:
Vyper_contract

Compiler Version
vyper:0.2.11

Optimization Enabled:
N/A

Other Settings:
GNU AGPLv3 license

Contract Source Code (Vyper language format)

# @version 0.2.11


interface Vault:
    def token() -> address: view
    def apiVersion() -> String[28]: view
    def governance() -> address: view
    def initialize(
        token: address,
        governance: address,
        rewards: address,
        name: String[64],
        symbol: String[32],
        guardian: address,
    ): nonpayable


# len(releases)
numReleases: public(uint256)
releases: public(HashMap[uint256, address])

# Token => len(vaults)
numVaults: public(HashMap[address, uint256])
vaults: public(HashMap[address, HashMap[uint256, address]])

# Index of token added => token address
tokens: public(HashMap[uint256, address])
# len(tokens)
numTokens: public(uint256)
# Inclusion check for token
isRegistered: public(HashMap[address, bool])

# 2-phase commit
governance: public(address)
pendingGovernance: public(address)

tags: public(HashMap[address, String[120]])
banksy: public(HashMap[address, bool])  # could be anyone

event NewRelease:
    release_id: indexed(uint256)
    template: address
    api_version: String[28]

event NewVault:
    token: indexed(address)
    vault_id: indexed(uint256)
    vault: address
    api_version: String[28]

event NewExperimentalVault:
    token: indexed(address)
    deployer: indexed(address)
    vault: address
    api_version: String[28]

event NewGovernance:
    governance: address

event VaultTagged:
    vault: address
    tag: String[120]

@external
def __init__():
    self.governance = msg.sender


@external
def setGovernance(governance: address):
    """
    @notice Starts the 1st phase of the governance transfer.
    @dev Throws if the caller is not current governance.
    @param governance The next governance address
    """
    assert msg.sender == self.governance  # dev: unauthorized
    self.pendingGovernance = governance


@external
def acceptGovernance():
    """
    @notice Completes the 2nd phase of the governance transfer.
    @dev
        Throws if the caller is not the pending caller.
        Emits a `NewGovernance` event.
    """
    assert msg.sender == self.pendingGovernance  # dev: unauthorized
    self.governance = msg.sender
    log NewGovernance(msg.sender)


@view
@external
def latestRelease() -> String[28]:
    """
    @notice Returns the api version of the latest release.
    @dev Throws if no releases are registered yet.
    @return The api version of the latest release.
    """
    # NOTE: Throws if there has not been a release yet
    return Vault(self.releases[self.numReleases - 1]).apiVersion()  # dev: no release


@view
@external
def latestVault(token: address) -> address:
    """
    @notice Returns the latest deployed vault for the given token.
    @dev Throws if no vaults are endorsed yet for the given token.
    @param token The token address to find the latest vault for.
    @return The address of the latest vault for the given token.
    """
    # NOTE: Throws if there has not been a deployed vault yet for this token
    return self.vaults[token][self.numVaults[token] - 1]  # dev: no vault for token


@external
def newRelease(vault: address):
    """
    @notice
        Add a previously deployed Vault as the template contract for the latest release,
        to be used by further "forwarder-style" delegatecall proxy contracts that can be
        deployed from the registry throw other methods (to save gas).
    @dev
        Throws if caller isn't `self.governance`.
        Throws if `vault`'s governance isn't `self.governance`.
        Throws if the api version is the same as the previous release.
        Emits a `NewVault` event.
    @param vault The vault that will be used as the template contract for the next release.
    """
    assert msg.sender == self.governance  # dev: unauthorized

    # Check if the release is different from the current one
    # NOTE: This doesn't check for strict semver-style linearly increasing release versions
    release_id: uint256 = self.numReleases  # Next id in series
    if release_id > 0:
        assert (
            Vault(self.releases[release_id - 1]).apiVersion()
            != Vault(vault).apiVersion()
        )  # dev: same api version
    # else: we are adding the first release to the Registry!

    # Update latest release
    self.releases[release_id] = vault
    self.numReleases = release_id + 1

    # Log the release for external listeners (e.g. Graph)
    log NewRelease(release_id, vault, Vault(vault).apiVersion())


@internal
def _newProxyVault(
    token: address,
    governance: address,
    rewards: address,
    guardian: address,
    name: String[64],
    symbol: String[32],
    releaseTarget: uint256,
) -> address:
    release: address = self.releases[releaseTarget]
    assert release != ZERO_ADDRESS  # dev: unknown release
    vault: address = create_forwarder_to(release)

    # NOTE: Must initialize the Vault atomically with deploying it
    Vault(vault).initialize(token, governance, rewards, name, symbol, guardian)

    return vault


@internal
def _registerVault(token: address, vault: address):
    # Check if there is an existing deployment for this token at the particular api version
    # NOTE: This doesn't check for strict semver-style linearly increasing release versions
    vault_id: uint256 = self.numVaults[token]  # Next id in series
    if vault_id > 0:
        assert (
            Vault(self.vaults[token][vault_id - 1]).apiVersion()
            != Vault(vault).apiVersion()
        )  # dev: same api version
    # else: we are adding a new token to the Registry

    # Update the latest deployment
    self.vaults[token][vault_id] = vault
    self.numVaults[token] = vault_id + 1

    # Register tokens for endorsed vaults
    if not self.isRegistered[token]:
        self.isRegistered[token] = True
        self.tokens[self.numTokens] = token
        self.numTokens += 1

    # Log the deployment for external listeners (e.g. Graph)
    log NewVault(token, vault_id, vault, Vault(vault).apiVersion())


@external
def newVault(
    token: address,
    guardian: address,
    rewards: address,
    name: String[64],
    symbol: String[32],
    releaseDelta: uint256 = 0,  # NOTE: Uses latest by default
) -> address:
    """
    @notice
        Create a new vault for the given token using the latest release in the registry,
        as a simple "forwarder-style" delegatecall proxy to the latest release. Also adds
        the new vault to the list of "endorsed" vaults for that token.
    @dev
        `governance` is set in the new vault as `self.governance`, with no ability to override.
        Throws if caller isn't `self.governance`.
        Throws if no releases are registered yet.
        Throws if there already is a registered vault for the given token with the latest api version.
        Emits a `NewVault` event.
    @param token The token that may be deposited into the new Vault.
    @param guardian The address authorized for guardian interactions in the new Vault.
    @param rewards The address to use for collecting rewards in the new Vault
    @param name Specify a custom Vault name. Set to empty string for default choice.
    @param symbol Specify a custom Vault symbol name. Set to empty string for default choice.
    @param releaseDelta Specify the number of releases prior to the latest to use as a target. Default is latest.
    @return The address of the newly-deployed vault
    """
    assert msg.sender == self.governance  # dev: unauthorized

    # NOTE: Underflow if no releases created yet, or targeting prior to release history
    releaseTarget: uint256 = self.numReleases - 1 - releaseDelta  # dev: no releases
    vault: address = self._newProxyVault(token, msg.sender, rewards, guardian, name, symbol, releaseTarget)

    self._registerVault(token, vault)

    return vault


@external
def newExperimentalVault(
    token: address,
    governance: address,
    guardian: address,
    rewards: address,
    name: String[64],
    symbol: String[32],
    releaseDelta: uint256 = 0,  # NOTE: Uses latest by default
) -> address:
    """
    @notice
        Create a new vault for the given token using the latest release in the registry,
        as a simple "forwarder-style" delegatecall proxy to the latest release. Does not add
        the new vault to the list of "endorsed" vaults for that token.
    @dev
        Throws if no releases are registered yet.
        Emits a `NewExperimentalVault` event.
    @param token The token that may be deposited into the new Vault.
    @param governance The address authorized for governance interactions in the new Vault.
    @param guardian The address authorized for guardian interactions in the new Vault.
    @param rewards The address to use for collecting rewards in the new Vault
    @param name Specify a custom Vault name. Set to empty string for default choice.
    @param symbol Specify a custom Vault symbol name. Set to empty string for default choice.
    @param releaseDelta Specify the number of releases prior to the latest to use as a target. Default is latest.
    @return The address of the newly-deployed vault
    """
    # NOTE: Underflow if no releases created yet, or targeting prior to release history
    releaseTarget: uint256 = self.numReleases - 1 - releaseDelta  # dev: no releases
    # NOTE: Anyone can call this method, as a convenience to Strategist' experiments
    vault: address = self._newProxyVault(token, governance, rewards, guardian, name, symbol, releaseTarget)

    # NOTE: Not registered, so emit an "experiment" event here instead
    log NewExperimentalVault(token, msg.sender, vault, Vault(vault).apiVersion())

    return vault


@external
def endorseVault(vault: address, releaseDelta: uint256 = 0):
    """
    @notice
        Adds an existing vault to the list of "endorsed" vaults for that token.
    @dev
        `governance` is set in the new vault as `self.governance`, with no ability to override.
        Throws if caller isn't `self.governance`.
        Throws if `vault`'s governance isn't `self.governance`.
        Throws if no releases are registered yet.
        Throws if `vault`'s api version does not match latest release.
        Throws if there already is a deployment for the vault's token with the latest api version.
        Emits a `NewVault` event.
    @param vault The vault that will be endorsed by the Registry.
    @param releaseDelta Specify the number of releases prior to the latest to use as a target. Default is latest.
    """
    assert msg.sender == self.governance  # dev: unauthorized
    assert Vault(vault).governance() == msg.sender  # dev: not governed

    # NOTE: Underflow if no releases created yet, or targeting prior to release history
    releaseTarget: uint256 = self.numReleases - 1 - releaseDelta  # dev: no releases
    api_version: String[28] = Vault(self.releases[releaseTarget]).apiVersion()
    assert Vault(vault).apiVersion() == api_version  # dev: not target release

    # Add to the end of the list of vaults for token
    self._registerVault(Vault(vault).token(), vault)


@external
def setBanksy(tagger: address, allowed: bool = True):
    """
    @notice Set the ability of a particular tagger to tag current vaults.
    @dev Throws if caller is not `self.governance`.
    @param tagger The address to approve or deny access to tagging.
    @param allowed Whether to approve or deny `tagger`. Defaults to approve.
    """
    assert msg.sender == self.governance  # dev: unauthorized
    self.banksy[tagger] = allowed


@external
def tagVault(vault: address, tag: String[120]):
    """
    @notice Tag a Vault with a message.
    @dev
        Throws if caller is not `self.governance` or an approved tagger.
        Emits a `VaultTagged` event.
    @param vault The address to tag with the given `tag` message.
    @param tag The message to tag `vault` with.
    """
    if msg.sender != self.governance:
        assert self.banksy[msg.sender]  # dev: not banksy
    # else: we are governance, we can do anything banksy can do

    self.tags[vault] = tag
    log VaultTagged(vault, tag)

Contract Security Audit

Contract ABI

[{"name":"NewRelease","inputs":[{"name":"release_id","type":"uint256","indexed":true},{"name":"template","type":"address","indexed":false},{"name":"api_version","type":"string","indexed":false}],"anonymous":false,"type":"event"},{"name":"NewVault","inputs":[{"name":"token","type":"address","indexed":true},{"name":"vault_id","type":"uint256","indexed":true},{"name":"vault","type":"address","indexed":false},{"name":"api_version","type":"string","indexed":false}],"anonymous":false,"type":"event"},{"name":"NewExperimentalVault","inputs":[{"name":"token","type":"address","indexed":true},{"name":"deployer","type":"address","indexed":true},{"name":"vault","type":"address","indexed":false},{"name":"api_version","type":"string","indexed":false}],"anonymous":false,"type":"event"},{"name":"NewGovernance","inputs":[{"name":"governance","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"VaultTagged","inputs":[{"name":"vault","type":"address","indexed":false},{"name":"tag","type":"string","indexed":false}],"anonymous":false,"type":"event"},{"stateMutability":"nonpayable","type":"constructor","inputs":[],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"setGovernance","inputs":[{"name":"governance","type":"address"}],"outputs":[],"gas":36245},{"stateMutability":"nonpayable","type":"function","name":"acceptGovernance","inputs":[],"outputs":[],"gas":37517},{"stateMutability":"view","type":"function","name":"latestRelease","inputs":[],"outputs":[{"name":"","type":"string"}],"gas":6831},{"stateMutability":"view","type":"function","name":"latestVault","inputs":[{"name":"token","type":"address"}],"outputs":[{"name":"","type":"address"}],"gas":2587},{"stateMutability":"nonpayable","type":"function","name":"newRelease","inputs":[{"name":"vault","type":"address"}],"outputs":[],"gas":82588},{"stateMutability":"nonpayable","type":"function","name":"newVault","inputs":[{"name":"token","type":"address"},{"name":"guardian","type":"address"},{"name":"rewards","type":"address"},{"name":"name","type":"string"},{"name":"symbol","type":"string"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"newVault","inputs":[{"name":"token","type":"address"},{"name":"guardian","type":"address"},{"name":"rewards","type":"address"},{"name":"name","type":"string"},{"name":"symbol","type":"string"},{"name":"releaseDelta","type":"uint256"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"newExperimentalVault","inputs":[{"name":"token","type":"address"},{"name":"governance","type":"address"},{"name":"guardian","type":"address"},{"name":"rewards","type":"address"},{"name":"name","type":"string"},{"name":"symbol","type":"string"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"newExperimentalVault","inputs":[{"name":"token","type":"address"},{"name":"governance","type":"address"},{"name":"guardian","type":"address"},{"name":"rewards","type":"address"},{"name":"name","type":"string"},{"name":"symbol","type":"string"},{"name":"releaseDelta","type":"uint256"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"endorseVault","inputs":[{"name":"vault","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"endorseVault","inputs":[{"name":"vault","type":"address"},{"name":"releaseDelta","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"setBanksy","inputs":[{"name":"tagger","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"setBanksy","inputs":[{"name":"tagger","type":"address"},{"name":"allowed","type":"bool"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"tagVault","inputs":[{"name":"vault","type":"address"},{"name":"tag","type":"string"}],"outputs":[],"gas":186064},{"stateMutability":"view","type":"function","name":"numReleases","inputs":[],"outputs":[{"name":"","type":"uint256"}],"gas":1388},{"stateMutability":"view","type":"function","name":"releases","inputs":[{"name":"arg0","type":"uint256"}],"outputs":[{"name":"","type":"address"}],"gas":1533},{"stateMutability":"view","type":"function","name":"numVaults","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}],"gas":1663},{"stateMutability":"view","type":"function","name":"vaults","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"uint256"}],"outputs":[{"name":"","type":"address"}],"gas":1808},{"stateMutability":"view","type":"function","name":"tokens","inputs":[{"name":"arg0","type":"uint256"}],"outputs":[{"name":"","type":"address"}],"gas":1623},{"stateMutability":"view","type":"function","name":"numTokens","inputs":[],"outputs":[{"name":"","type":"uint256"}],"gas":1538},{"stateMutability":"view","type":"function","name":"isRegistered","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":1783},{"stateMutability":"view","type":"function","name":"governance","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":1598},{"stateMutability":"view","type":"function","name":"pendingGovernance","inputs":[],"outputs":[{"name":"","type":"address"}],"gas":1628},{"stateMutability":"view","type":"function","name":"tags","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"string"}],"gas":10229},{"stateMutability":"view","type":"function","name":"banksy","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"bool"}],"gas":1903}]

336007556115eb56600436101561000d576110f9565b600035601c52600051341561002157600080fd5b63ab033ea98114156100535760043560a01c1561003d57600080fd5b600754331461004b57600080fd5b600435600855005b63238efcbc81141561009f57600854331461006d57600080fd5b3360075533610140527f4f386975ea1c2f7cf1845b08bee00626fbb624ecad16254d63d9bb9ba86526de6020610140a1005b637be0ca5e8114156101735760606101a0600463258294106101405261015c60016000546001808210156100d257600080fd5b8082039050905060e05260c052604060c020545afa6100f057600080fd5b603f3d116100fd57600080fd5b601d6101a06101a05101511061011257600080fd5b6000506101c08051602001806102408284600060045af161013257600080fd5b5050610240518061026001818260206001820306601f82010390500336823750506020610220526040610240510160206001820306601f8201039050610220f35b63e177dc708114156101db5760043560a01c1561018f57600080fd5b600360043560e05260c052604060c020600260043560e05260c052604060c020546001808210156101bf57600080fd5b8082039050905060e05260c052604060c0205460005260206000f35b6333990d4b8114156104315760043560a01c156101f757600080fd5b600754331461020557600080fd5b6000546101405260006101405111156102e1576060610400600463258294106103a0526103bc6004355afa61023957600080fd5b603f3d1161024657600080fd5b601d6104006104005101511061025b57600080fd5b600050610420602001516060610340600463258294106102e0526102fc60016101405160018082101561028d57600080fd5b8082039050905060e05260c052604060c020545afa6102ab57600080fd5b603f3d116102b857600080fd5b601d610340610340510151106102cd57600080fd5b60005061036060200151186102e157600080fd5b60043560016101405160e05260c052604060c0205561014051600181818301101561030b57600080fd5b8082019050905060005560606101c0600463258294106101605261017c6004355afa61033657600080fd5b603f3d1161034357600080fd5b601d6101c06101c05101511061035857600080fd5b6000506101e08051602001806102208284600060045af161037857600080fd5b50506004356102c052604061028052610280516102e052610220805160200180610280516102c0018284600060045af16103b157600080fd5b5050610280516102c00151806020610280516102c0010101818260206001820306601f82010390500336823750506020610280516102c0015160206001820306601f820103905061028051010161028052610140517fa6fbd216b6734f34092f1be6b7247e1551a6d4f2d5000c53721cfdc119a5b7cf610280516102c0a2005b63108ca11e81141561044857600061022052610469565b63b0b40fce81141561046457602060a461022037600050610469565b6106f4565b60043560a01c1561047957600080fd5b60243560a01c1561048957600080fd5b60443560a01c1561049957600080fd5b60606064356004016101403760406064356004013511156104b957600080fd5b60406084356004016101c03760206084356004013511156104d957600080fd5b60075433146104e757600080fd5b6000546001808210156104f957600080fd5b80820390509050610220518082101561051157600080fd5b80820390509050610240526101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605160e060043561028052336102a0526044356102c0526024356102e05280610300526101408080516020018084610280018284600060045af161058557600080fd5b50508051820160206001820306601f820103905060200191505080610320526101c08080516020018084610280018284600060045af16105c457600080fd5b50505061024051610340525061032051806102800180518060206001820306601f82010390508201610440525050505b6103606104405110156106065761061b565b610440515160206104405103610440526105f4565b6103405161032051610300516102e0516102c0516102a05161028051600658016110ff565b61046052610260526102405261022052610200526101e0526101c0526101a05261018052610160526101405261046051610260526101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605160043561028052610260516102a0526102a0516102805160065801611302565b610260526102405261022052610200526101e0526101c0526101a0526101805261016052610140526000506102605160005260206000f35b635b73aa0d81141561070b5760006102205261072c565b635bd4b0f281141561072757602060c46102203760005061072c565b610a64565b60043560a01c1561073c57600080fd5b60243560a01c1561074c57600080fd5b60443560a01c1561075c57600080fd5b60643560a01c1561076c57600080fd5b606060843560040161014037604060843560040135111561078c57600080fd5b604060a4356004016101c037602060a4356004013511156107ac57600080fd5b6000546001808210156107be57600080fd5b8082039050905061022051808210156107d657600080fd5b80820390509050610240526101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605160e0600435610280526024356102a0526064356102c0526044356102e05280610300526101408080516020018084610280018284600060045af161084c57600080fd5b50508051820160206001820306601f820103905060200191505080610320526101c08080516020018084610280018284600060045af161088b57600080fd5b50505061024051610340525061032051806102800180518060206001820306601f82010390508201610440525050505b6103606104405110156108cd576108e2565b610440515160206104405103610440526108bb565b6103405161032051610300516102e0516102c0516102a05161028051600658016110ff565b61046052610260526102405261022052610200526101e0526101c0526101a052610180526101605261014052610460516102605260606102e0600463258294106102805261029c610260515afa61095d57600080fd5b603f3d1161096a57600080fd5b601d6102e06102e05101511061097f57600080fd5b6000506103008051602001806103408284600060045af161099f57600080fd5b5050610260516103e05260406103a0526103a051610400526103408051602001806103a0516103e0018284600060045af16109d957600080fd5b50506103a0516103e001518060206103a0516103e0010101818260206001820306601f820103905003368237505060206103a0516103e0015160206001820306601f82010390506103a05101016103a052336004357f57a9cdc2a05e05f66e76769bdbe88e21ec45d9ee0f97d4cb60395d4c75dcbcda6103a0516103e0a36102605160005260206000f35b6329b2e0c6811415610a7b57600061014052610a9c565b63b366a35c811415610a97576020602461014037600050610a9c565b610cac565b60043560a01c15610aac57600080fd5b6007543314610aba57600080fd5b3360206101c06004635aa6e6756101605261017c6004355afa610adc57600080fd5b601f3d11610ae957600080fd5b6000506101c05114610afa57600080fd5b600054600180821015610b0c57600080fd5b808203905090506101405180821015610b2457600080fd5b80820390509050610160526060610240600463258294106101e0526101fc60016101605160e05260c052604060c020545afa610b5f57600080fd5b603f3d11610b6c57600080fd5b601d61024061024051015110610b8157600080fd5b6000506102608051602001806101808284600060045af1610ba157600080fd5b50506101a0516060610300600463258294106102a0526102bc6004355afa610bc857600080fd5b603f3d11610bd557600080fd5b601d61030061030051015110610bea57600080fd5b6000506103206020015114610bfe57600080fd5b6020610240600463fc0c546a6101e0526101fc6004355afa610c1f57600080fd5b601f3d11610c2c57600080fd5b60005061024051610260526101405161016051610180516101a0516101c0516101e0516102005161022051610240516102605161026051610280526004356102a0526102a0516102805160065801611302565b610260526102405261022052610200526101e0526101c0526101a052610180526101605261014052600050005b632cad8f9f811415610cc357600161014052610cf4565b635e05f6af811415610cef5760243560011c15610cdf57600080fd5b6020602461014037600050610cf4565b610d29565b60043560a01c15610d0457600080fd5b6007543314610d1257600080fd5b61014051600a60043560e05260c052604060c02055005b6360bd68f8811415610ea25760043560a01c15610d4557600080fd5b6098602435600401610140376078602435600401351115610d6557600080fd5b600754331815610d8757600a3360e05260c052604060c02054610d8757600080fd5b61014080600960043560e05260c052604060c02060c052602060c020602082510161012060006005818352015b82610120516020021115610dc757610de9565b61012051602002850151610120518501555b8151600101808352811415610db4575b50505050505060043561024052604061020052610200516102605261014080516020018061020051610240018284600060045af1610e2657600080fd5b505061020051610240015180602061020051610240010101818260206001820306601f8201039050033682375050602061020051610240015160206001820306601f8201039050610200510101610200527f07bd58794c2ca0ae152f7719eb5f02c654476de972cadec0e8191ae8be42096d61020051610240a1005b6356e0a94b811415610eba5760005460005260206000f35b63b6a9f40f811415610ee057600160043560e05260c052604060c0205460005260206000f35b63f9c7bba5811415610f165760043560a01c15610efc57600080fd5b600260043560e05260c052604060c0205460005260206000f35b637bbfc69e811415610f5a5760043560a01c15610f3257600080fd5b600360043560e05260c052604060c02060243560e05260c052604060c0205460005260206000f35b634f64b2be811415610f8057600460043560e05260c052604060c0205460005260206000f35b638e499bcf811415610f985760055460005260206000f35b63c3c5a547811415610fce5760043560a01c15610fb457600080fd5b600660043560e05260c052604060c0205460005260206000f35b635aa6e675811415610fe65760075460005260206000f35b63f39c38a0811415610ffe5760085460005260206000f35b6358b8f8428114156110c15760043560a01c1561101a57600080fd5b600960043560e05260c052604060c0208060c052602060c020610180602082540161012060006005818352015b8261012051602002111561105a5761107c565b61012051850154610120516020028501525b8151600101808352811415611047575b50505050505061018051806101a001818260206001820306601f82010390500336823750506020610160526040610180510160206001820306601f8201039050610160f35b63ee711ed58114156110f75760043560a01c156110dd57600080fd5b600a60043560e05260c052604060c0205460005260206000f35b505b60006000fd5b610220526101405261016052610180526101a0526101c0526101e05261020052610240526000610320525b6102405160206001820306601f82010390506103205110151561114c57611165565b610320516102600152610320516020016103205261112a565b6102c0526000610320525b6102c05160206001820306601f820103905061032051101515611192576111ab565b610320516102e001526103205160200161032052611170565b60005060016102005160e05260c052604060c0205461034052600061034051186111d457600080fd5b7f602d3d8160093d39f3363d3d373d3d3d363d7300000000000000000000000000610380526103405160601b610393527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006103a75260366103806000f061036052610360513b61124357600080fd5b6000600061016460c063a5b81fdf61038052610140516103a052610160516103c052610180516103e052806104005261024080805160200180846103a0018284600060045af161129257600080fd5b50508051820160206001820306601f820103905060200191505080610420526102c080805160200180846103a0018284600060045af16112d157600080fd5b5050506101a0516104405261039c90506000610360515af16112f257600080fd5b6103605160005260005161022051565b61018052610140526101605260026101405160e05260c052604060c020546101a05260006101a0511115611409576060610460600463258294106104005261041c610160515afa61135257600080fd5b603f3d1161135f57600080fd5b601d6104606104605101511061137457600080fd5b6000506104806020015160606103a0600463258294106103405261035c60036101405160e05260c052604060c0206101a0516001808210156113b557600080fd5b8082039050905060e05260c052604060c020545afa6113d357600080fd5b603f3d116113e057600080fd5b601d6103a06103a0510151106113f557600080fd5b6000506103c0602001511861140957600080fd5b6101605160036101405160e05260c052604060c0206101a05160e05260c052604060c020556101a051600181818301101561144357600080fd5b8082019050905060026101405160e05260c052604060c0205560066101405160e05260c052604060c0205415156114bd57600160066101405160e05260c052604060c0205561014051600460055460e05260c052604060c020556005805460018181830110156114b257600080fd5b808201905090508155505b6060610220600463258294106101c0526101dc610160515afa6114df57600080fd5b603f3d116114ec57600080fd5b601d6102206102205101511061150157600080fd5b6000506102408051602001806102808284600060045af161152157600080fd5b5050610160516103205260406102e0526102e051610340526102808051602001806102e051610320018284600060045af161155b57600080fd5b50506102e05161032001518060206102e051610320010101818260206001820306601f820103905003368237505060206102e051610320015160206001820306601f82010390506102e05101016102e0526101a051610140517fce089905ba4a4d622553bcb5646fd23e895c256f0376eee04e99e61cec1dc7e86102e051610320a361018051565b6100086115eb036100086000396100086115eb036000f3

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.