S Price: $0.710984 (-2.28%)

Contract

0x3a1659Ddcf2339Be3aeA159cA010979FB49155FF

Overview

S Balance

Sonic LogoSonic LogoSonic Logo0 S

S Value

$0.00
Transaction Hash
Method
Block
From
To
Price_w101818072025-02-26 0:59:3642 hrs ago1740531576IN
0x3a1659Dd...FB49155FF
0 S0.0045410550

Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CryptoFromOracleAndERC4626

Compiler Version
vyper:0.3.10

Optimization Enabled:
N/A

Other Settings:
default evmVersion, MIT license

Contract Source Code (Vyper language format)

# @version 0.3.10
"""
@title CryptoFromOracleAndERC4626
@author Curve.Fi
@license MIT
"""
interface Oracle:
    def price() -> uint256: view
    def price_w() -> uint256: nonpayable


interface ERC4626:
    def convertToAssets(shares: uint256) -> uint256: view


ORACLE: public(immutable(Oracle))
VAULT: public(immutable(ERC4626))


@external
def __init__(
        oracle: Oracle,
        vault: ERC4626
    ):
    ORACLE = oracle
    VAULT = vault


@external
@view
def price() -> uint256:
    p1: uint256 = ORACLE.price()
    p2: uint256 = VAULT.convertToAssets(10**18)
    return p1 * p2 / 10**18


@external
def price_w() -> uint256:
    p1: uint256 = ORACLE.price_w()
    p2: uint256 = VAULT.convertToAssets(10**18)
    return p1 * p2 / 10**18

Contract Security Audit

Contract ABI

[{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"oracle","type":"address"},{"name":"vault","type":"address"}],"outputs":[]},{"stateMutability":"view","type":"function","name":"price","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"nonpayable","type":"function","name":"price_w","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"ORACLE","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"VAULT","inputs":[],"outputs":[{"name":"","type":"address"}]}]

61020151503461005157602061024b5f395f518060a01c61005157604052602061026b5f395f518060a01c610051576060526040516101e152606051610201526101e161005561000039610221610000f35b5f80fd5f3560e01c60026003821660011b6101d901601e395f51565b6338013f02811861003657346101d55760206101e160403960206040f35b63a035b1fe81186101d157346101d55760206101e15f395f5163a035b1fe606052602060606004607c845afa61006e573d5f5f3e3d5ffd5b60203d106101d557606090505160405260206102015f395f516307a2d13a608052670de0b6b3a764000060a052602060806024609c845afa6100b2573d5f5f3e3d5ffd5b60203d106101d55760809050516060526040516060518082028115838383041417156101d55790509050670de0b6b3a76400008104905060805260206080f36101d1565b63411557d1811861011457346101d557602061020160403960206040f35b63ceb7f75981186101d157346101d55760206101e15f395f5163ceb7f759606052602060606004607c5f855af161014d573d5f5f3e3d5ffd5b60203d106101d557606090505160405260206102015f395f516307a2d13a608052670de0b6b3a764000060a052602060806024609c845afa610191573d5f5f3e3d5ffd5b60203d106101d55760809050516060526040516060518082028115838383041417156101d55790509050670de0b6b3a76400008104905060805260206080f35b5f5ffd5b5f80fd01d100f6001801d1841901e181081840a16576797065728300030a00150000000000000000000000001dab6560494b04473a0be3e7d83cf3fdf3a518280000000000000000000000009f0df7799f6fdad409300080cff680f5a23df4b1

Deployed Bytecode

0x5f3560e01c60026003821660011b6101d901601e395f51565b6338013f02811861003657346101d55760206101e160403960206040f35b63a035b1fe81186101d157346101d55760206101e15f395f5163a035b1fe606052602060606004607c845afa61006e573d5f5f3e3d5ffd5b60203d106101d557606090505160405260206102015f395f516307a2d13a608052670de0b6b3a764000060a052602060806024609c845afa6100b2573d5f5f3e3d5ffd5b60203d106101d55760809050516060526040516060518082028115838383041417156101d55790509050670de0b6b3a76400008104905060805260206080f36101d1565b63411557d1811861011457346101d557602061020160403960206040f35b63ceb7f75981186101d157346101d55760206101e15f395f5163ceb7f759606052602060606004607c5f855af161014d573d5f5f3e3d5ffd5b60203d106101d557606090505160405260206102015f395f516307a2d13a608052670de0b6b3a764000060a052602060806024609c845afa610191573d5f5f3e3d5ffd5b60203d106101d55760809050516060526040516060518082028115838383041417156101d55790509050670de0b6b3a76400008104905060805260206080f35b5f5ffd5b5f80fd01d100f6001801d10000000000000000000000001dab6560494b04473a0be3e7d83cf3fdf3a518280000000000000000000000009f0df7799f6fdad409300080cff680f5a23df4b1

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

0000000000000000000000001dab6560494b04473a0be3e7d83cf3fdf3a518280000000000000000000000009f0df7799f6fdad409300080cff680f5a23df4b1

-----Decoded View---------------
Arg [0] : oracle (address): 0x1daB6560494B04473A0BE3E7D83CF3Fdf3a51828
Arg [1] : vault (address): 0x9F0dF7799f6FDAd409300080cfF680f5A23df4b1

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000001dab6560494b04473a0be3e7d83cf3fdf3a51828
Arg [1] : 0000000000000000000000009f0df7799f6fdad409300080cff680f5a23df4b1


Block Transaction Gas Used Reward
view all blocks produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ 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.