Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 44 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Deploy_new_vault | 21187659 | 363 days ago | IN | 0 ETH | 0.0070749 | ||||
| Deploy_new_vault | 21131429 | 371 days ago | IN | 0 ETH | 0.00584798 | ||||
| Deploy_new_vault | 20870248 | 408 days ago | IN | 0 ETH | 0.00304147 | ||||
| Deploy_new_vault | 20836537 | 412 days ago | IN | 0 ETH | 0.00569369 | ||||
| Deploy_new_vault | 20800029 | 417 days ago | IN | 0 ETH | 0.00383478 | ||||
| Deploy_new_vault | 20790308 | 419 days ago | IN | 0 ETH | 0.00276004 | ||||
| Deploy_new_vault | 20747900 | 425 days ago | IN | 0 ETH | 0.00039465 | ||||
| Deploy_new_vault | 20705556 | 430 days ago | IN | 0 ETH | 0.0002581 | ||||
| Deploy_new_vault | 20670154 | 435 days ago | IN | 0 ETH | 0.00094203 | ||||
| Deploy_new_vault | 20670086 | 435 days ago | IN | 0 ETH | 0.00179469 | ||||
| Deploy_new_vault | 20670043 | 435 days ago | IN | 0 ETH | 0.00079539 | ||||
| Deploy_new_vault | 20614022 | 443 days ago | IN | 0 ETH | 0.0005482 | ||||
| Deploy_new_vault | 20487681 | 461 days ago | IN | 0 ETH | 0.00082511 | ||||
| Deploy_new_vault | 20391847 | 474 days ago | IN | 0 ETH | 0.00080638 | ||||
| Deploy_new_vault | 20368749 | 478 days ago | IN | 0 ETH | 0.00087892 | ||||
| Deploy_new_vault | 20248641 | 494 days ago | IN | 0 ETH | 0.00101587 | ||||
| Deploy_new_vault | 20248634 | 494 days ago | IN | 0 ETH | 0.00102176 | ||||
| Deploy_new_vault | 20169560 | 505 days ago | IN | 0 ETH | 0.00295862 | ||||
| Deploy_new_vault | 20156093 | 507 days ago | IN | 0 ETH | 0.00072748 | ||||
| Deploy_new_vault | 20156078 | 507 days ago | IN | 0 ETH | 0.00080366 | ||||
| Deploy_new_vault | 20156075 | 507 days ago | IN | 0 ETH | 0.00082622 | ||||
| Deploy_new_vault | 20145961 | 509 days ago | IN | 0 ETH | 0.0006607 | ||||
| Deploy_new_vault | 20145958 | 509 days ago | IN | 0 ETH | 0.00072539 | ||||
| Deploy_new_vault | 20145954 | 509 days ago | IN | 0 ETH | 0.00074421 | ||||
| Deploy_new_vault | 20145946 | 509 days ago | IN | 0 ETH | 0.0007038 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x602d3d81 | 21187659 | 363 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 21131429 | 371 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20870248 | 408 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20836537 | 412 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20800029 | 417 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20790308 | 419 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20747900 | 425 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20727872 | 427 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20705556 | 430 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20670154 | 435 days ago | Contract Creation | 0 ETH | |||
| Transfer* | 20670086 | 435 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20670043 | 435 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20614022 | 443 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20487681 | 461 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20391847 | 474 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20369520 | 477 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20368749 | 478 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20248641 | 494 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20248634 | 494 days ago | Contract Creation | 0 ETH | |||
| 0x602d3d81 | 20240691 | 495 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Cross-Chain Transactions
Loading...
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:
Yearn Vault Factory
Compiler Version
vyper:0.3.7
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 clones new vaults from its specific `VAULT_ORIGINAL`
immutable address set on creation of the factory.
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.
"""
interface IVault:
def initialize(
asset: address,
name: String[64],
symbol: String[32],
role_manager: address,
profit_max_unlock_time: uint256
): nonpayable
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.2"
# 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_ORIGINAL: 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_original: address, governance: address):
self.name = name
VAULT_ORIGINAL = vault_original
self.governance = governance
@external
def deploy_new_vault(
asset: address,
name: String[64],
symbol: String[32],
role_manager: address,
profit_max_unlock_time: uint256
) -> address:
"""
@notice Deploys a new clone of the original vault.
@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"
# Clone a new version of the vault using create2.
vault_address: address = create_minimal_proxy_to(
VAULT_ORIGINAL,
value=0,
salt=keccak256(_abi_encode(msg.sender, asset, name, symbol))
)
IVault(vault_address).initialize(
asset,
name,
symbol,
role_manager,
profit_max_unlock_time,
)
log NewVault(vault_address, asset)
return vault_address
@view
@external
def vault_original()-> address:
"""
@notice Get the address of the vault to clone from
@return The address of the original vault.
"""
return VAULT_ORIGINAL
@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(vault: address = msg.sender) -> PFConfig:
"""
@notice Called during vault and strategy reports
to retrieve the protocol fee to charge and address
to receive the fees.
@param vault Address of the vault that would be reporting.
@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[vault]:
# Always use the default fee recipient even with custom fees.
return PFConfig({
fee_bps: self.custom_protocol_fee[vault],
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"
# Cache the current default protocol fee.
default_config: PFConfig = self.default_protocol_fee_config
assert default_config.fee_recipient != empty(address), "no recipient"
# Set the new fee
self.default_protocol_fee_config.fee_bps = new_protocol_fee_bps
log UpdateProtocolFeeBps(
default_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"
old_recipient: address = self.default_protocol_fee_config.fee_recipient
self.default_protocol_fee_config.fee_recipient = new_protocol_fee_recipient
log UpdateProtocolFeeRecipient(
old_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
- No Contract Security Audit Submitted- Submit Audit Here
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_original","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_original","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":"view","type":"function","name":"protocol_fee_config","inputs":[{"name":"vault","type":"address"}],"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"}]}]Contract Creation Code
6020610e906000396000516040602082610e900160003960005111610e8b57602081610e900160003960005180604052602082018181610e90016060395050506020610eb06000396000518060a01c610e8b5760a0526020610ed06000396000518060a01c610e8b5760c05234610e8b5760405180600355600081601f0160051c60028111610e8b5780156100a857905b8060051b606001518160040155600101818118610090575b50505060a051610dc05260c051600155610dc06100ca61000039610de0610000f36003361161000c57610da8565b60003560e01c34610dae5763b4aeee7781186103115760e43610610dae576004358060a01c610dae576040526024356004016040813511610dae578035806060526020820181816080375050506044356004016020813511610dae5780358060c05260208201803560e0525050506064358060a01c610dae5761010052600054156100f5576008610120527f73687574646f776e0000000000000000000000000000000000000000000000006101405261012050610120518061014001601f826000031636823750506308c379a060e052602061010052601f19601f61012051011660440160fcfd5b7f602d3d8160093d39f3363d3d373d3d3d363d7300000000000000000000000000610280526020610dc060003960005160601b610293527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006102a7526080336101605260405161018052806101a052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101c052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f825160200101169050810190506101405261014080516020820120905060366102806000f58015610dae5761012052610120516375b30be66101405260a0604051610160528061018052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101a052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f82516020010116905081019050610100516101c0526084356101e05250803b15610dae57600061014061014461015c6000855af16102db573d600060003e3d6000fd5b50604051610120517f4241302c393c713e690702c4a45a57e93cef59aa8c6e2358495853b3420551d86000610140a36020610120f35b63f71bf70d81186103385760043610610dae576020610dc060003960005160405260206040f35b632582941081186103c05760043610610dae5760208060805260056040527f332e302e3200000000000000000000000000000000000000000000000000000060605260408160800181518082526020830160208301815181525050508051806020830101601f82600003163682375050601f19601f8251602001011690509050810190506080f35b635153b19981186103dc5760043610610dae57336040526103fe565b636556424b811861044d5760243610610dae576004358060a01c610dae576040525b600960405160205260005260406000205461042c576006546060526007546080526040606061044b5661044b565b6008604051602052600052604060002054606052600754608052604060605bf35b6362fbf60381186105e85760243610610dae576004358060101c610dae576040526001543318156104d557600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b611388604051131561053e57600c6060527f66656520746f6f2068696768000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6006546060526007546080526080516105ae57600c60a0527f6e6f20726563697069656e74000000000000000000000000000000000000000060c05260a05060a0518060c001601f826000031636823750506308c379a06060526020608052601f19601f60a0510116604401607cfd5b6040516006557f678d2b2fe79c193f6c2c18d7515e339afcbd73fcfb360b1d0fbadae07342e05160605160a05260405160c052604060a0a1005b63f8ebccea811861070e5760243610610dae576004358060a01c610dae5760405260015433181561067057600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516106d457600c6060527f7a65726f2061646472657373000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6007546060526040516007556040516060517f6af4e38beb02e4b110090dd85c5adfb341e2278b905068773762fe4666e5db7a60006080a3005b63b5a71e0781186108df5760443610610dae576004358060a01c610dae576040526024358060101c610dae576060526001543318156107a457600e6080527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b611388606051131561080d57600c6080527f66656520746f6f2068696768000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b60075461087157600c6080527f6e6f20726563697069656e74000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b606051600860405160205260005260406000205560096040516020526000526040600020546108ae57600160096040516020526000526040600020555b6040517f96d6cc624354ffe5a7207dc2dcc152e58e23ac8df9c96943f3cfb10ea4c140ac60605160805260206080a2005b6311a3a43481186109b85760243610610dae576004358060a01c610dae5760405260015433181561096757600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60006008604051602052600052604060002055600060096040516020526000526040600020556040517f39612c4f13d7a058dece05cf6730e3322fd9a11d6f055a5eacdde49191f45f1f60006060a2005b63365adba68118610ac45760043610610dae57600154331815610a3257600e6040527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60005415610a975760086040527f73687574646f776e00000000000000000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60016000557fc643193a97fc0e18d69c95e1c034b91f51fa164ba8ea68dfb6dd98568b9bc96b60006040a1005b63070313fa8118610b7d5760243610610dae576004358060a01c610dae57604052600154331815610b4c57600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516002556040517f90ad4c550d25bd23af61db38d1ff8671b89edaaa0bca0fc36bac5084ecc120bd60006060a2005b63a7dbff3e8118610c295760043610610dae57600254331815610bf75760166040527f6e6f742070656e64696e6720676f7665726e616e63650000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b336001556000600255337f8d55d160c0009eb3d739442df0a3ca089ed64378bfac017e7ddad463f9815b8760006040a2005b63fc0e74d18118610c485760043610610dae5760005460405260206040f35b635aa6e6758118610c675760043610610dae5760015460405260206040f35b63c66eb0a28118610c865760043610610dae5760025460405260206040f35b6306fdde038118610d0b5760043610610dae576020806040528060400160035480825260208201600082601f0160051c60028111610dae578015610cdd57905b80600401548160051b840152600101818118610cc6575b505050508051806020830101601f82600003163682375050601f19601f825160200101169050810190506040f35b6397ad2ecc8118610d305760043610610dae5760065460405260075460605260406040f35b63cbe286638118610d6b5760243610610dae576004358060a01c610dae57604052600860405160205260005260406000205460605260206060f35b63e94860d88118610da65760243610610dae576004358060a01c610dae57604052600960405160205260005260406000205460605260206060f35b505b60006000fd5b600080fda165767970657283000307000b005b600080fd00000000000000000000000000000000000000000000000000000000000000600000000000000000000000001ab62413e0cf2ebeb73da7d40c70e7202ae1446700000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae000000000000000000000000000000000000000000000000000000000000001a596561726e2076332e302e32205661756c7420466163746f7279000000000000
Deployed Bytecode
0x6003361161000c57610da8565b60003560e01c34610dae5763b4aeee7781186103115760e43610610dae576004358060a01c610dae576040526024356004016040813511610dae578035806060526020820181816080375050506044356004016020813511610dae5780358060c05260208201803560e0525050506064358060a01c610dae5761010052600054156100f5576008610120527f73687574646f776e0000000000000000000000000000000000000000000000006101405261012050610120518061014001601f826000031636823750506308c379a060e052602061010052601f19601f61012051011660440160fcfd5b7f602d3d8160093d39f3363d3d373d3d3d363d7300000000000000000000000000610280526020610dc060003960005160601b610293527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006102a7526080336101605260405161018052806101a052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101c052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f825160200101169050810190506101405261014080516020820120905060366102806000f58015610dae5761012052610120516375b30be66101405260a0604051610160528061018052806101600160605180825260208201818183608060045afa5050508051806020830101601f82600003163682375050601f19601f82516020010116905081019050806101a052806101600160c0518082526020820160e051815250508051806020830101601f82600003163682375050601f19601f82516020010116905081019050610100516101c0526084356101e05250803b15610dae57600061014061014461015c6000855af16102db573d600060003e3d6000fd5b50604051610120517f4241302c393c713e690702c4a45a57e93cef59aa8c6e2358495853b3420551d86000610140a36020610120f35b63f71bf70d81186103385760043610610dae576020610dc060003960005160405260206040f35b632582941081186103c05760043610610dae5760208060805260056040527f332e302e3200000000000000000000000000000000000000000000000000000060605260408160800181518082526020830160208301815181525050508051806020830101601f82600003163682375050601f19601f8251602001011690509050810190506080f35b635153b19981186103dc5760043610610dae57336040526103fe565b636556424b811861044d5760243610610dae576004358060a01c610dae576040525b600960405160205260005260406000205461042c576006546060526007546080526040606061044b5661044b565b6008604051602052600052604060002054606052600754608052604060605bf35b6362fbf60381186105e85760243610610dae576004358060101c610dae576040526001543318156104d557600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b611388604051131561053e57600c6060527f66656520746f6f2068696768000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6006546060526007546080526080516105ae57600c60a0527f6e6f20726563697069656e74000000000000000000000000000000000000000060c05260a05060a0518060c001601f826000031636823750506308c379a06060526020608052601f19601f60a0510116604401607cfd5b6040516006557f678d2b2fe79c193f6c2c18d7515e339afcbd73fcfb360b1d0fbadae07342e05160605160a05260405160c052604060a0a1005b63f8ebccea811861070e5760243610610dae576004358060a01c610dae5760405260015433181561067057600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516106d457600c6060527f7a65726f2061646472657373000000000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6007546060526040516007556040516060517f6af4e38beb02e4b110090dd85c5adfb341e2278b905068773762fe4666e5db7a60006080a3005b63b5a71e0781186108df5760443610610dae576004358060a01c610dae576040526024358060101c610dae576060526001543318156107a457600e6080527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b611388606051131561080d57600c6080527f66656520746f6f2068696768000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b60075461087157600c6080527f6e6f20726563697069656e74000000000000000000000000000000000000000060a0526080506080518060a001601f826000031636823750506308c379a06040526020606052601f19601f6080510116604401605cfd5b606051600860405160205260005260406000205560096040516020526000526040600020546108ae57600160096040516020526000526040600020555b6040517f96d6cc624354ffe5a7207dc2dcc152e58e23ac8df9c96943f3cfb10ea4c140ac60605160805260206080a2005b6311a3a43481186109b85760243610610dae576004358060a01c610dae5760405260015433181561096757600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b60006008604051602052600052604060002055600060096040516020526000526040600020556040517f39612c4f13d7a058dece05cf6730e3322fd9a11d6f055a5eacdde49191f45f1f60006060a2005b63365adba68118610ac45760043610610dae57600154331815610a3257600e6040527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60005415610a975760086040527f73687574646f776e00000000000000000000000000000000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b60016000557fc643193a97fc0e18d69c95e1c034b91f51fa164ba8ea68dfb6dd98568b9bc96b60006040a1005b63070313fa8118610b7d5760243610610dae576004358060a01c610dae57604052600154331815610b4c57600e6060527f6e6f7420676f7665726e616e636500000000000000000000000000000000000060805260605060605180608001601f826000031636823750506308c379a06020526020604052601f19601f6060510116604401603cfd5b6040516002556040517f90ad4c550d25bd23af61db38d1ff8671b89edaaa0bca0fc36bac5084ecc120bd60006060a2005b63a7dbff3e8118610c295760043610610dae57600254331815610bf75760166040527f6e6f742070656e64696e6720676f7665726e616e63650000000000000000000060605260405060405180606001601f826000031636823750506308c379a06000526020602052601f19601f6040510116604401601cfd5b336001556000600255337f8d55d160c0009eb3d739442df0a3ca089ed64378bfac017e7ddad463f9815b8760006040a2005b63fc0e74d18118610c485760043610610dae5760005460405260206040f35b635aa6e6758118610c675760043610610dae5760015460405260206040f35b63c66eb0a28118610c865760043610610dae5760025460405260206040f35b6306fdde038118610d0b5760043610610dae576020806040528060400160035480825260208201600082601f0160051c60028111610dae578015610cdd57905b80600401548160051b840152600101818118610cc6575b505050508051806020830101601f82600003163682375050601f19601f825160200101169050810190506040f35b6397ad2ecc8118610d305760043610610dae5760065460405260075460605260406040f35b63cbe286638118610d6b5760243610610dae576004358060a01c610dae57604052600860405160205260005260406000205460605260206060f35b63e94860d88118610da65760243610610dae576004358060a01c610dae57604052600960405160205260005260406000205460605260206060f35b505b60006000fd5b600080fda165767970657283000307000b0000000000000000000000001ab62413e0cf2ebeb73da7d40c70e7202ae14467
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000600000000000000000000000001ab62413e0cf2ebeb73da7d40c70e7202ae1446700000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae000000000000000000000000000000000000000000000000000000000000001a596561726e2076332e302e32205661756c7420466163746f7279000000000000
-----Decoded View---------------
Arg [0] : name (string): Yearn v3.0.2 Vault Factory
Arg [1] : vault_original (address): 0x1ab62413e0cf2eBEb73da7D40C70E7202ae14467
Arg [2] : governance (address): 0x33333333D5eFb92f19a5F94a43456b3cec2797AE
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 0000000000000000000000001ab62413e0cf2ebeb73da7d40c70e7202ae14467
Arg [2] : 00000000000000000000000033333333d5efb92f19a5f94a43456b3cec2797ae
Arg [3] : 000000000000000000000000000000000000000000000000000000000000001a
Arg [4] : 596561726e2076332e302e32205661756c7420466163746f7279000000000000
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.