ETH Price: $1,990.35 (+1.36%)

Contract

0xE9E8C89c8Fc7E8b8F23425688eb68987231178e5
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Deploy_new_vault207151752024-09-09 19:34:47545 days ago1725910487IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.028358495.82243636
Deploy_new_vault206288052024-08-28 18:13:59557 days ago1724868839IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.008266381.69397152
Deploy_new_vault201405662024-06-21 14:02:35625 days ago1718978555IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.038140537.83068612
Deploy_new_vault201405572024-06-21 14:00:47625 days ago1718978447IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.041124668.37442595
Deploy_new_vault201405512024-06-21 13:59:35625 days ago1718978375IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.036885287.51117712
Deploy_new_vault201405462024-06-21 13:58:35625 days ago1718978315IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.037628327.69021166
Deploy_new_vault201405342024-06-21 13:56:11625 days ago1718978171IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.043279488.84502732
Deploy_new_vault201405242024-06-21 13:53:59625 days ago1718978039IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.039197297.97966911
Deploy_new_vault201405202024-06-21 13:53:11625 days ago1718977991IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.040913658.36118298
Deploy_new_vault201405092024-06-21 13:50:59625 days ago1718977859IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.040002098.17502432
Deploy_new_vault201405052024-06-21 13:50:11625 days ago1718977811IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.037116317.57774537
Deploy_new_vault201404882024-06-21 13:46:35625 days ago1718977595IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.027225785.55596646
Deploy_new_vault201404802024-06-21 13:44:59625 days ago1718977499IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.026059475.31781353
Deploy_new_vault201404752024-06-21 13:43:59625 days ago1718977439IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.023347164.77141072
Deploy_new_vault201404702024-06-21 13:42:59625 days ago1718977379IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.021462744.37978697
Deploy_new_vault201404662024-06-21 13:42:11625 days ago1718977331IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.02493265.08793876
Deploy_new_vault201404622024-06-21 13:41:23625 days ago1718977283IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.025246025.15189967
Deploy_new_vault201404562024-06-21 13:40:11625 days ago1718977211IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.025195525.14152155
Deploy_new_vault201404292024-06-21 13:34:47625 days ago1718976887IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.028490215.81676581
Deploy_new_vault201404142024-06-21 13:31:47625 days ago1718976707IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.030682556.2614658
Deploy_new_vault201404092024-06-21 13:30:47625 days ago1718976647IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.028993335.91690272
Deploy_new_vault201404022024-06-21 13:29:23625 days ago1718976563IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.030680796.24771864
Deploy_new_vault201402682024-06-21 13:02:35625 days ago1718974955IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.037045247.56353104
Deploy_new_vault199205082024-05-21 19:56:11656 days ago1716321371IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.0690470714.17668734
Deploy_new_vault195777372024-04-03 20:49:47704 days ago1712177387IN
Yearn: VaultFactory (Ver 3.0.1)
0 ETH0.1442091829.59526134
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
0x6020615c207151752024-09-09 19:34:47545 days ago1725910487
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c206288052024-08-28 18:13:59557 days ago1724868839
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405662024-06-21 14:02:35625 days ago1718978555
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405572024-06-21 14:00:47625 days ago1718978447
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405512024-06-21 13:59:35625 days ago1718978375
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405462024-06-21 13:58:35625 days ago1718978315
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405342024-06-21 13:56:11625 days ago1718978171
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405242024-06-21 13:53:59625 days ago1718978039
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405202024-06-21 13:53:11625 days ago1718977991
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405092024-06-21 13:50:59625 days ago1718977859
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201405052024-06-21 13:50:11625 days ago1718977811
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404882024-06-21 13:46:35625 days ago1718977595
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404802024-06-21 13:44:59625 days ago1718977499
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404752024-06-21 13:43:59625 days ago1718977439
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404702024-06-21 13:42:59625 days ago1718977379
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404662024-06-21 13:42:11625 days ago1718977331
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404622024-06-21 13:41:23625 days ago1718977283
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404562024-06-21 13:40:11625 days ago1718977211
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404292024-06-21 13:34:47625 days ago1718976887
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404142024-06-21 13:31:47625 days ago1718976707
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404092024-06-21 13:30:47625 days ago1718976647
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201404022024-06-21 13:29:23625 days ago1718976563
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c201402682024-06-21 13:02:35625 days ago1718974955
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c199205082024-05-21 19:56:11656 days ago1716321371
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
0x6020615c195777372024-04-03 20:49:47704 days ago1712177387
Yearn: VaultFactory (Ver 3.0.1)
 Contract Creation0 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Yearn Vault Factory

Compiler Version
vyper:0.3.7

Optimization Enabled:
N/A

Other Settings:
paris EvmVersion, GNU AGPLv3 license

Contract Source Code (Vyper language format)

# @version 0.3.7

"""
@title Yearn Vault Factory
@license GNU AGPLv3
@author yearn.finance
@notice
    This vault Factory can be used by anyone wishing to deploy their own
    ERC4626 compliant Yearn V3 Vault of the same API version.

    The factory uses the Blueprint (ERC-5202) standard to handle the
    deployment of any new vaults off of the immutable address stored 
    at `VAULT_BLUEPRINT`. This allows the vaults to be deployed and
    initialized fully on-chain with their init byte code, thus not 
    requiring any delegatecall patterns or post deployment initialization.
    The deployments are done through create2 with a specific `salt` 
    that is derived from a combination of the deployer's address,
    the underlying asset used, as well as the name and symbol specified.
    Meaning a deployer will not be able to deploy the exact same vault
    twice and will need to use different name and or symbols for vaults
    that use the same other parameters such as `asset`.

    The factory also holds the protocol fee configs for each vault and strategy
    of its specific `API_VERSION` that determine how much of the fees
    charged are designated "protocol fees" and sent to the designated
    `fee_recipient`. The protocol fees work through a revenue share system,
    where if the vault or strategy decides to charge X amount of total
    fees during a `report` the protocol fees are a percent of X.
    The protocol fees will be sent to the designated fee_recipient and
    then (X - protocol_fees) will be sent to the vault/strategy specific
    fee recipient.
"""

from vyper.interfaces import ERC20

event NewVault:
    vault_address: indexed(address)
    asset: indexed(address)

event UpdateProtocolFeeBps:
    old_fee_bps: uint16
    new_fee_bps: uint16

event UpdateProtocolFeeRecipient:
    old_fee_recipient: indexed(address)
    new_fee_recipient: indexed(address)

event UpdateCustomProtocolFee:
    vault: indexed(address)
    new_custom_protocol_fee: uint16

event RemovedCustomProtocolFee:
    vault: indexed(address)

event FactoryShutdown:
    pass

event UpdateGovernance:
    governance: indexed(address)

event NewPendingGovernance:
    pending_governance: indexed(address)

struct PFConfig:
    # Percent of protocol's split of fees in Basis Points.
    fee_bps: uint16
    # Address the protocol fees get paid to.
    fee_recipient: address

# Identifier for this version of the vault.
API_VERSION: constant(String[28]) = "3.0.1"

# The max amount the protocol fee can be set to.
MAX_FEE_BPS: constant(uint16) = 5_000 # 50%

# The address that all newly deployed vaults are based from.
VAULT_BLUEPRINT: immutable(address)

# State of the Factory. If True no new vaults can be deployed.
shutdown: public(bool)

# Address that can set or change the fee configs.
governance: public(address)
# Pending governance waiting to be accepted.
pending_governance: public(address)

# Name for identification.
name: public(String[64])

# The default config for assessing protocol fees.
default_protocol_fee_config: public(PFConfig)
# Custom fee to charge for a specific vault or strategy.
custom_protocol_fee: public(HashMap[address, uint16])
# Represents if a custom protocol fee should be used.
use_custom_protocol_fee: public(HashMap[address, bool])

@external
def __init__(name: String[64], vault_blueprint: address, governance: address):
    self.name = name
    VAULT_BLUEPRINT = vault_blueprint
    self.governance = governance

@external
def deploy_new_vault(
    asset: ERC20, 
    name: String[64], 
    symbol: String[32], 
    role_manager: address, 
    profit_max_unlock_time: uint256
) -> address:
    """
    @notice Deploys a new vault base on the bLueprint.
    @param asset The asset to be used for the vault.
    @param name The name of the new vault.
    @param symbol The symbol of the new vault.
    @param role_manager The address of the role manager.
    @param profit_max_unlock_time The time over which the profits will unlock.
    @return The address of the new vault.
    """
    # Make sure the factory is not shutdown.
    assert not self.shutdown, "shutdown"

    # Deploy the new vault using the blueprint.
    vault_address: address = create_from_blueprint(
            VAULT_BLUEPRINT, 
            asset, 
            name, 
            symbol, 
            role_manager, 
            profit_max_unlock_time, 
            code_offset=3, 
            salt=keccak256(_abi_encode(msg.sender, asset.address, name, symbol))
        )
        
    log NewVault(vault_address, asset.address)
    return vault_address

@view
@external
def vault_blueprint()-> address:
    """
    @notice Get the address of the vault blueprint
    @return The address of the vault blueprint
    """
    return VAULT_BLUEPRINT

@view
@external
def apiVersion() -> String[28]:
    """
    @notice Get the API version of the factory.
    @return The API version of the factory.
    """
    return API_VERSION

@view
@external
def protocol_fee_config() -> PFConfig:
    """
    @notice Called during vault and strategy reports 
    to retrieve the protocol fee to charge and address
    to receive the fees.
    @return The protocol fee config for the msg sender.
    """
    # If there is a custom protocol fee set we return it.
    if self.use_custom_protocol_fee[msg.sender]:
        # Always use the default fee recipient even with custom fees.
        return PFConfig({
            fee_bps: self.custom_protocol_fee[msg.sender],
            fee_recipient: self.default_protocol_fee_config.fee_recipient
        })
    else:
        # Otherwise return the default config.
        return self.default_protocol_fee_config

@external
def set_protocol_fee_bps(new_protocol_fee_bps: uint16):
    """
    @notice Set the protocol fee in basis points
    @dev Must be below the max allowed fee, and a default
    fee_recipient must be set so we don't issue fees to the 0 address.
    @param new_protocol_fee_bps The new protocol fee in basis points
    """
    assert msg.sender == self.governance, "not governance"
    assert new_protocol_fee_bps <= MAX_FEE_BPS, "fee too high"
    assert self.default_protocol_fee_config.fee_recipient != empty(address), "no recipient"

    log UpdateProtocolFeeBps(
        self.default_protocol_fee_config.fee_bps, 
        new_protocol_fee_bps
    )

    self.default_protocol_fee_config.fee_bps = new_protocol_fee_bps

@external
def set_protocol_fee_recipient(new_protocol_fee_recipient: address):
    """
    @notice Set the protocol fee recipient
    @dev Can never be set to 0 to avoid issuing fees to the 0 address.
    @param new_protocol_fee_recipient The new protocol fee recipient
    """
    assert msg.sender == self.governance, "not governance"
    assert new_protocol_fee_recipient != empty(address), "zero address"

    log UpdateProtocolFeeRecipient(
        self.default_protocol_fee_config.fee_recipient,
        new_protocol_fee_recipient
    )
    
    self.default_protocol_fee_config.fee_recipient = new_protocol_fee_recipient

@external
def set_custom_protocol_fee_bps(vault: address, new_custom_protocol_fee: uint16):
    """
    @notice Allows Governance to set custom protocol fees
    for a specific vault or strategy.
    @dev Must be below the max allowed fee, and a default
    fee_recipient must be set so we don't issue fees to the 0 address.
    @param vault The address of the vault or strategy to customize.
    @param new_custom_protocol_fee The custom protocol fee in BPS.
    """
    assert msg.sender == self.governance, "not governance"
    assert new_custom_protocol_fee <= MAX_FEE_BPS, "fee too high"
    assert self.default_protocol_fee_config.fee_recipient != empty(address), "no recipient"

    self.custom_protocol_fee[vault] = new_custom_protocol_fee

    # If this is the first time a custom fee is set for this vault
    # set the bool indicator so it returns the correct fee.
    if not self.use_custom_protocol_fee[vault]:
        self.use_custom_protocol_fee[vault] = True

    log UpdateCustomProtocolFee(vault, new_custom_protocol_fee)

@external 
def remove_custom_protocol_fee(vault: address):
    """
    @notice Allows governance to remove a previously set
    custom protocol fee.
    @param vault The address of the vault or strategy to
    remove the custom fee for.
    """
    assert msg.sender == self.governance, "not governance"

    # Reset the custom fee to 0.
    self.custom_protocol_fee[vault] = 0

    # Set custom fee bool back to false.
    self.use_custom_protocol_fee[vault] = False

    log RemovedCustomProtocolFee(vault)

@external
def shutdown_factory():
    """
    @notice To stop new deployments through this factory.
    @dev A one time switch available for governance to stop
    new vaults from being deployed through the factory.
    NOTE: This will have no effect on any previously deployed
    vaults that deployed from this factory.
    """
    assert msg.sender == self.governance, "not governance"
    assert self.shutdown == False, "shutdown"

    self.shutdown = True
    
    log FactoryShutdown()

@external
def set_governance(new_governance: address):
    """
    @notice Set the governance address
    @param new_governance The new governance address
    """
    assert msg.sender == self.governance, "not governance"
    self.pending_governance = new_governance

    log NewPendingGovernance(new_governance)

@external
def accept_governance():
    """
    @notice Accept the governance address
    """
    assert msg.sender == self.pending_governance, "not pending governance"
    self.governance = msg.sender
    self.pending_governance = empty(address)

    log UpdateGovernance(msg.sender)

Contract Security Audit

Contract ABI

API
[{"name":"NewVault","inputs":[{"name":"vault_address","type":"address","indexed":true},{"name":"asset","type":"address","indexed":true}],"anonymous":false,"type":"event"},{"name":"UpdateProtocolFeeBps","inputs":[{"name":"old_fee_bps","type":"uint16","indexed":false},{"name":"new_fee_bps","type":"uint16","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateProtocolFeeRecipient","inputs":[{"name":"old_fee_recipient","type":"address","indexed":true},{"name":"new_fee_recipient","type":"address","indexed":true}],"anonymous":false,"type":"event"},{"name":"UpdateCustomProtocolFee","inputs":[{"name":"vault","type":"address","indexed":true},{"name":"new_custom_protocol_fee","type":"uint16","indexed":false}],"anonymous":false,"type":"event"},{"name":"RemovedCustomProtocolFee","inputs":[{"name":"vault","type":"address","indexed":true}],"anonymous":false,"type":"event"},{"name":"FactoryShutdown","inputs":[],"anonymous":false,"type":"event"},{"name":"UpdateGovernance","inputs":[{"name":"governance","type":"address","indexed":true}],"anonymous":false,"type":"event"},{"name":"NewPendingGovernance","inputs":[{"name":"pending_governance","type":"address","indexed":true}],"anonymous":false,"type":"event"},{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"name","type":"string"},{"name":"vault_blueprint","type":"address"},{"name":"governance","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"deploy_new_vault","inputs":[{"name":"asset","type":"address"},{"name":"name","type":"string"},{"name":"symbol","type":"string"},{"name":"role_manager","type":"address"},{"name":"profit_max_unlock_time","type":"uint256"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"vault_blueprint","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"apiVersion","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"view","type":"function","name":"protocol_fee_config","inputs":[],"outputs":[{"name":"","type":"tuple","components":[{"name":"fee_bps","type":"uint16"},{"name":"fee_recipient","type":"address"}]}]},{"stateMutability":"nonpayable","type":"function","name":"set_protocol_fee_bps","inputs":[{"name":"new_protocol_fee_bps","type":"uint16"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_protocol_fee_recipient","inputs":[{"name":"new_protocol_fee_recipient","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_custom_protocol_fee_bps","inputs":[{"name":"vault","type":"address"},{"name":"new_custom_protocol_fee","type":"uint16"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"remove_custom_protocol_fee","inputs":[{"name":"vault","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"shutdown_factory","inputs":[],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_governance","inputs":[{"name":"new_governance","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"accept_governance","inputs":[],"outputs":[]},{"stateMutability":"view","type":"function","name":"shutdown","inputs":[],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"governance","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"pending_governance","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string"}]},{"stateMutability":"view","type":"function","name":"default_protocol_fee_config","inputs":[],"outputs":[{"name":"","type":"tuple","components":[{"name":"fee_bps","type":"uint16"},{"name":"fee_recipient","type":"address"}]}]},{"stateMutability":"view","type":"function","name":"custom_protocol_fee","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint16"}]},{"stateMutability":"view","type":"function","name":"use_custom_protocol_fee","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"bool"}]}]

6020610e0b6000396000516040602082610e0b0160003960005111610e0657602081610e0b0160003960005180604052602082018181610e0b016060395050506020610e2b6000396000518060a01c610e065760a0526020610e4b6000396000518060a01c610e065760c05234610e065760405180600355600081601f0160051c60028111610e065780156100a857905b8060051b606001518160040155600101818118610090575b50505060a051610d3b5260c051600155610d3b6100ca61000039610d5b610000f36003361161000c57610d23565b60003560e01c34610d295763b4aeee7781186102cd5760e43610610d29576004358060a01c610d29576040526024356004016040813511610d29578035806060526020820181816080375050506044356004016020813511610d295780358060c05260208201803560e0525050506064358060a01c610d295761010052600054156100f5576008610120527f73687574646f776e0000000000000000000000000000000000000000000000006101405261012050610120518061014001601f826000031636823750506308c379a060e052602061010052601f19601f61012051011660440160fcfd5b6020610d3b60003960005160a060405161028052610280516102e0528061030052806102e00160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f825160200101169050810190508061032052806102e00160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f82516020010116905081019050610100516102a0526102a051610340526084356102c0526102c051610360526003823b035960018212610d295781600382863c8181018381856102e060045afa50506080336101605260405161018052806101a052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101c052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f8251602001011690508101905061014052610140805160208201209050838301826000f58015610d2957905090509050905061012052604051610120517f4241302c393c713e690702c4a45a57e93cef59aa8c6e2358495853b3420551d86000610140a36020610120f35b6305f16b0f81186102f45760043610610d29576020610d3b60003960005160405260206040f35b6325829410811861037c5760043610610d295760208060805260056040527f332e302e3100000000000000000000000000000000000000000000000000000060605260408160800181518082526020830160208301815181525050508051806020830101601f82600003163682375050601f19601f8251602001011690509050810190506080f35b635153b19981186103da5760043610610d29576009336020526000526040600020546103bb57600654604052600754606052604060406103d8566103d8565b600833602052600052604060002054604052600754606052604060405bf35b6362fbf60381186105695760243610610d29576004358060101c610d295760405260015433181561046257600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b61138860405113156104cb57600c6060527f66656520746f6f2068696768000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60075461052f57600c6060527f6e6f20726563697069656e74000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b7f678d2b2fe79c193f6c2c18d7515e339afcbd73fcfb360b1d0fbadae07342e05160065460605260405160805260406060a1604051600655005b63f8ebccea81186106895760243610610d29576004358060a01c610d29576040526001543318156105f157600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60405161065557600c6060527f7a65726f2061646472657373000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516007547f6af4e38beb02e4b110090dd85c5adfb341e2278b905068773762fe4666e5db7a60006060a3604051600755005b63b5a71e07811861085a5760443610610d29576004358060a01c610d29576040526024358060101c610d295760605260015433181561071f57600e6080527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b611388606051131561078857600c6080527f66656520746f6f2068696768000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b6007546107ec57600c6080527f6e6f20726563697069656e74000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b6060516008604051602052600052604060002055600960405160205260005260406000205461082957600160096040516020526000526040600020555b6040517f96d6cc624354ffe5a7207dc2dcc152e58e23ac8df9c96943f3cfb10ea4c140ac60605160805260206080a2005b6311a3a43481186109335760243610610d29576004358060a01c610d29576040526001543318156108e257600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60006008604051602052600052604060002055600060096040516020526000526040600020556040517f39612c4f13d7a058dece05cf6730e3322fd9a11d6f055a5eacdde49191f45f1f60006060a2005b63365adba68118610a3f5760043610610d29576001543318156109ad57600e6040527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60005415610a125760086040527f73687574646f776e00000000000000000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60016000557fc643193a97fc0e18d69c95e1c034b91f51fa164ba8ea68dfb6dd98568b9bc96b60006040a1005b63070313fa8118610af85760243610610d29576004358060a01c610d2957604052600154331815610ac757600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516002556040517f90ad4c550d25bd23af61db38d1ff8671b89edaaa0bca0fc36bac5084ecc120bd60006060a2005b63a7dbff3e8118610ba45760043610610d2957600254331815610b725760166040527f6e6f742070656e64696e6720676f7665726e616e63650000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b336001556000600255337f8d55d160c0009eb3d739442df0a3ca089ed64378bfac017e7ddad463f9815b8760006040a2005b63fc0e74d18118610bc35760043610610d295760005460405260206040f35b635aa6e6758118610be25760043610610d295760015460405260206040f35b63c66eb0a28118610c015760043610610d295760025460405260206040f35b6306fdde038118610c865760043610610d29576020806040528060400160035480825260208201600082601f0160051c60028111610d29578015610c5857905b80600401548160051b840152600101818118610c41575b505050508051806020830101601f82600003163682375050601f19601f825160200101169050810190506040f35b6397ad2ecc8118610cab5760043610610d295760065460405260075460605260406040f35b63cbe286638118610ce65760243610610d29576004358060a01c610d2957604052600860405160205260005260406000205460605260206060f35b63e94860d88118610d215760243610610d29576004358060a01c610d2957604052600960405160205260005260406000205460605260206060f35b505b60006000fd5b600080fda165767970657283000307000b005b600080fd0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000de992c652b266ae649fec8048afc35954bee614500000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae000000000000000000000000000000000000000000000000000000000000001a596561726e2076332e302e31205661756c7420466163746f7279000000000000

Deployed Bytecode

0x6003361161000c57610d23565b60003560e01c34610d295763b4aeee7781186102cd5760e43610610d29576004358060a01c610d29576040526024356004016040813511610d29578035806060526020820181816080375050506044356004016020813511610d295780358060c05260208201803560e0525050506064358060a01c610d295761010052600054156100f5576008610120527f73687574646f776e0000000000000000000000000000000000000000000000006101405261012050610120518061014001601f826000031636823750506308c379a060e052602061010052601f19601f61012051011660440160fcfd5b6020610d3b60003960005160a060405161028052610280516102e0528061030052806102e00160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f825160200101169050810190508061032052806102e00160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f82516020010116905081019050610100516102a0526102a051610340526084356102c0526102c051610360526003823b035960018212610d295781600382863c8181018381856102e060045afa50506080336101605260405161018052806101a052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101c052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f8251602001011690508101905061014052610140805160208201209050838301826000f58015610d2957905090509050905061012052604051610120517f4241302c393c713e690702c4a45a57e93cef59aa8c6e2358495853b3420551d86000610140a36020610120f35b6305f16b0f81186102f45760043610610d29576020610d3b60003960005160405260206040f35b6325829410811861037c5760043610610d295760208060805260056040527f332e302e3100000000000000000000000000000000000000000000000000000060605260408160800181518082526020830160208301815181525050508051806020830101601f82600003163682375050601f19601f8251602001011690509050810190506080f35b635153b19981186103da5760043610610d29576009336020526000526040600020546103bb57600654604052600754606052604060406103d8566103d8565b600833602052600052604060002054604052600754606052604060405bf35b6362fbf60381186105695760243610610d29576004358060101c610d295760405260015433181561046257600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b61138860405113156104cb57600c6060527f66656520746f6f2068696768000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60075461052f57600c6060527f6e6f20726563697069656e74000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b7f678d2b2fe79c193f6c2c18d7515e339afcbd73fcfb360b1d0fbadae07342e05160065460605260405160805260406060a1604051600655005b63f8ebccea81186106895760243610610d29576004358060a01c610d29576040526001543318156105f157600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60405161065557600c6060527f7a65726f2061646472657373000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516007547f6af4e38beb02e4b110090dd85c5adfb341e2278b905068773762fe4666e5db7a60006060a3604051600755005b63b5a71e07811861085a5760443610610d29576004358060a01c610d29576040526024358060101c610d295760605260015433181561071f57600e6080527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b611388606051131561078857600c6080527f66656520746f6f2068696768000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b6007546107ec57600c6080527f6e6f20726563697069656e74000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b6060516008604051602052600052604060002055600960405160205260005260406000205461082957600160096040516020526000526040600020555b6040517f96d6cc624354ffe5a7207dc2dcc152e58e23ac8df9c96943f3cfb10ea4c140ac60605160805260206080a2005b6311a3a43481186109335760243610610d29576004358060a01c610d29576040526001543318156108e257600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60006008604051602052600052604060002055600060096040516020526000526040600020556040517f39612c4f13d7a058dece05cf6730e3322fd9a11d6f055a5eacdde49191f45f1f60006060a2005b63365adba68118610a3f5760043610610d29576001543318156109ad57600e6040527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60005415610a125760086040527f73687574646f776e00000000000000000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60016000557fc643193a97fc0e18d69c95e1c034b91f51fa164ba8ea68dfb6dd98568b9bc96b60006040a1005b63070313fa8118610af85760243610610d29576004358060a01c610d2957604052600154331815610ac757600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516002556040517f90ad4c550d25bd23af61db38d1ff8671b89edaaa0bca0fc36bac5084ecc120bd60006060a2005b63a7dbff3e8118610ba45760043610610d2957600254331815610b725760166040527f6e6f742070656e64696e6720676f7665726e616e63650000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b336001556000600255337f8d55d160c0009eb3d739442df0a3ca089ed64378bfac017e7ddad463f9815b8760006040a2005b63fc0e74d18118610bc35760043610610d295760005460405260206040f35b635aa6e6758118610be25760043610610d295760015460405260206040f35b63c66eb0a28118610c015760043610610d295760025460405260206040f35b6306fdde038118610c865760043610610d29576020806040528060400160035480825260208201600082601f0160051c60028111610d29578015610c5857905b80600401548160051b840152600101818118610c41575b505050508051806020830101601f82600003163682375050601f19601f825160200101169050810190506040f35b6397ad2ecc8118610cab5760043610610d295760065460405260075460605260406040f35b63cbe286638118610ce65760243610610d29576004358060a01c610d2957604052600860405160205260005260406000205460605260206060f35b63e94860d88118610d215760243610610d29576004358060a01c610d2957604052600960405160205260005260406000205460605260206060f35b505b60006000fd5b600080fda165767970657283000307000b000000000000000000000000de992c652b266ae649fec8048afc35954bee6145

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

0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000de992c652b266ae649fec8048afc35954bee614500000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae000000000000000000000000000000000000000000000000000000000000001a596561726e2076332e302e31205661756c7420466163746f7279000000000000

-----Decoded View---------------
Arg [0] : name (string): Yearn v3.0.1 Vault Factory
Arg [1] : vault_blueprint (address): 0xDE992C652b266AE649FEC8048aFC35954Bee6145
Arg [2] : governance (address): 0x33333333D5eFb92f19a5F94a43456b3cec2797AE

-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 000000000000000000000000de992c652b266ae649fec8048afc35954bee6145
Arg [2] : 00000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae
Arg [3] : 000000000000000000000000000000000000000000000000000000000000001a
Arg [4] : 596561726e2076332e302e31205661756c7420466163746f7279000000000000


Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

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.