Contract 0xabc000d88f23bb45525e447528dbf656a9d55bf5 20

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x79d08d541cec183dd19f35465ca93dedefceb80b7c38b4e2f07e7b0e4052cfb7Mint1839697562024-02-24 10:55:2851 mins ago0xffbaa0de31cd06c0031682e6e991b2515e71192e IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00006127 0.1
0x2e94bd8a46dcda239cd01bf1ba47d030e6137a601fa1a5d81adf3f29d6806ca6Mint1839607922024-02-24 10:17:171 hr 30 mins ago0xca82421b268f06f2cfa9333e723336949e7b8fb9 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00007344 0.1
0x7fe9370a851186e46b06f63ba372f995c17476ee1024b17e66e8a1c6fb8be27bMint1838861092024-02-24 4:52:356 hrs 54 mins ago0x6793b3b734f05164da459e8180426a730848d397 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000053990.1
0x85c9f12be27ab1f45c4a7657139635d196247fc6898aa298d3545665ccf2bc6bMint1838595162024-02-24 2:54:598 hrs 52 mins ago0x4069aa0c76aa1fe1798c22723efae9da71392685 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00006688 0.1
0xa1fb22cbb13a3c2cc1704ce7161b711ab6540a4a600821e7729b1781c48a4bb1Mint1835720042024-02-23 6:01:481 day 5 hrs ago0xc69adca4485c0c494f34e9aa6b0a31f343f76411 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000090220.1
0xd3b718c3a14d8ffecda53913d0ccd8b551bd27d930e75c87ff504617903339d1Mint1834887392024-02-22 23:45:211 day 12 hrs ago0x4ffc5f22770ab6046c8d66dabae3a9cd1e7a03e7 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000127110.1
0xe8c47568e5c9b0c24c3578ec538cd21eb18cd837cff0289a97166a30b237295fMint1832196012024-02-22 4:09:382 days 7 hrs ago0x4c4050ecdcc0a99648afb531a123c4dbf215d387 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000086680.1
0xe3b27ce673efc68864f98a97956cc100fe8e744ea8ecea9c723a486e03c1afa7Mint1832138622024-02-22 3:44:442 days 8 hrs ago0x09872fa1d78dd6e879f6cb0a6075324995dbd581 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000070.1
0x83aec5cdf8d09fb43d1805b9bf62af32aaefb6e9e1904b2300ef3166518d3620Mint1832134052024-02-22 3:42:492 days 8 hrs ago0x09872fa1d78dd6e879f6cb0a6075324995dbd581 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000071430.1
0x49e82cf8270b5285e1b378ee157be31f93134a8626dda627a4df92cdcf75eb13Mint1831678542024-02-22 0:30:322 days 11 hrs ago0x004397a3573c77bdf6c422314e88cc0a805a7e71 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00008776 0.1
0x9eb5342e0c886130352afdee171557d450f51022d2f679be6085662c41a5ef30Mint1831319912024-02-21 21:50:242 days 13 hrs ago0x277e054abbd8ab051f70e4fb100f45ce8fde9d22 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000103090.1
0xfe6a0970fc41db51783bc22922b36f7c72a0fa1bdb3c9b0f5fd11c76188d8473Mint1830213632024-02-21 13:52:092 days 21 hrs ago0x54fc0a8b512ac0e24b4d414f63ce057874f58551 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000093590.1
0xfc93a70a1fa296e11c4c4971ebfc0852e63c8fba97ca0d3f81924fd2d43579b4Mint1830056192024-02-21 12:45:562 days 23 hrs ago0xa1b671d8e4f25414b2f8644eaaadefcf7d7ebf42 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00008519 0.1
0x8ff3a959e059fc3d421f7a95234dff32bca1e289f0da573572a292ee19df8498Mint1829814982024-02-21 11:04:413 days 42 mins ago0xa83851b7145027c7d026b0821c736efafec1e1fe IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000089390.1
0xa376619512c7583ecd5fa726fcaf8de17e5bdcd40f6d5847a324af6660e88b4bMint1829572692024-02-21 9:22:403 days 2 hrs ago0xf17d37a350f587786d1ceae0a0dc2b4562a5636e IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.0000876 0.1
0xf8e265aa56488384c30d2328f3e357f4e8323c24b739f8409902bb0a16a4eb7bMint1828760022024-02-21 3:33:383 days 8 hrs ago0x85b0c2fdf7a69f0ce4fd42c2995fadd8cd68f66a IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000080420.1
0x4d248ba5c42357365443614e58407945564bb6093eb771c86c5883572df117bdMint1828682392024-02-21 2:59:293 days 8 hrs ago0x0bcab08aba1c82e7074b5bc197649f471f73fb83 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000079490.1
0x129294d5e917234086447d2bc52ac34aea324ea8fe6ea1e4661ad2042acf0087Deploy_gauge1827513892024-02-20 18:26:233 days 17 hrs ago0xa8c94ae38b04140794a9394b76ac6d0a83ac0b02 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00012487 0.1
0xd6b96f8ae1b637d4cd7dbf73a3a78a7fca1d0099b39bd3db885fc484d6868d5fMint1826914092024-02-20 14:12:393 days 21 hrs ago0x02bf9d9885ab40a40835e137449db9600f366e6e IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00012539 0.1
0x187825381c05f70c0bf175a194aec8aae610f80b21baf23595a0b01dbb10cf57Deploy_gauge1826024802024-02-20 7:54:264 days 3 hrs ago0x8258ecec50c5b0c0179d9986a9942fc2b8ad2362 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00008045 0.1
0x004ffcf15c493934544d895f3b9d6abeb8dc133ba2141de9ecb2fc0611529f70Mint1825382922024-02-20 3:18:194 days 8 hrs ago0xfc511b8c47eb6d805348174e989ccb6c3f2aeab5 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000063170.1
0x28b66575b0300581c1014253cd87413bce8182061cc55a609c4e1988ab6e303cMint1825382392024-02-20 3:18:064 days 8 hrs ago0xfc511b8c47eb6d805348174e989ccb6c3f2aeab5 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00006830.1
0xb1209b60aa6375b060e2ce133fca2bf968c452d1bb3d987d6dcb848548d834d0Mint1822921602024-02-19 9:39:565 days 2 hrs ago0x75fda290a8d7e4cd0226a3f2e92353ba3cdf9199 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.00007909 0.1
0x3d6588c9d837a51bd186da08a3738c07a2562a792dcff3b84cf7c2c082d385fbMint1821499882024-02-18 23:23:155 days 12 hrs ago0xd1a5b91957530e1b3e9cfac1543467c60c352f69 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.0000673 0.1
0x9c619c88225d837c9a81f1878e79e4da86f25908e3cafc1e37a2b4a2a14c502bMint1820480472024-02-18 16:02:495 days 19 hrs ago0x0bcab08aba1c82e7074b5bc197649f471f73fb83 IN  0xabc000d88f23bb45525e447528dbf656a9d55bf50 ETH0.000082840.1
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x129294d5e917234086447d2bc52ac34aea324ea8fe6ea1e4661ad2042acf00871827513892024-02-20 18:26:233 days 17 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x187825381c05f70c0bf175a194aec8aae610f80b21baf23595a0b01dbb10cf571826024802024-02-20 7:54:264 days 3 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xd75946be61e3588f5e46d9d4d0cad54367b866d2e4e64fa9910d68858b2ff5fb1800813422024-02-12 18:48:3511 days 16 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xd94994a3b774db2df4e6e34e565e1c35dd5071d1a083bc8f02c2e08e2ca493091744375182024-01-26 17:08:1028 days 18 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xf1119f4f120c4783be06816903c765700d57fd84143d8fd4347ad0ec8734bae01714682142024-01-17 21:09:0237 days 14 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x0ae0de598c7131a2df9e596708a1758e3e47bf407fad65adcff28b34cde4a59d1706796832024-01-15 11:19:5140 days 27 mins ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x7260a274c36d0e1b597b01bbf239ec8319e6a391dc8b46bec104333b5e9c7d251702364562024-01-14 2:35:0241 days 9 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xd47076a61525c8ee4d4372af10be37c9dcf413e749f2b8e3668aa84cc58103641701725622024-01-13 21:46:3841 days 14 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x7474d37e503ecfd658f9048673ad230297992e958f67b0518806d60bbf995a901698568112024-01-12 23:06:3542 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x508a45797b8578ebc8685444b6be4871f5a501432cf22e51f41e13cf3385b9e11698000112024-01-12 19:02:5042 days 16 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x49b2969e08852a4f3cd65e1c8fc5302e3306151bb58baba0f7c92cd19794eb411694414582024-01-11 17:45:0343 days 18 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x5288b7d65ca467c6ad5bb94de476ab12f21710a8dea5fcfbf9937fe74f993d711693459632024-01-11 11:06:5044 days 40 mins ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x0c48ecded6d76fe666211991ea6477dcd8fc531861ceb308d5d0b363f73f15091690648972024-01-10 15:28:1344 days 20 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xb35b604e3c5b179f568d13d0c35f3b6e80060536709ff6da99e580dd6dd61c601690556532024-01-10 14:49:3844 days 20 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xbaf8e39d4fe0ba57d81f55bc2ddbf9f7442d67d70272e420109078bf2f00be951681127202024-01-07 20:14:3847 days 15 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x2a87fd633a149d453caa90521593cc1df2307a812eeee89cc0611663bde2751a1678261882024-01-06 23:15:3548 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x3f611427d0d1b706a47078d0a2882ba3198b16db332df3f1487e63fb658080111667548192024-01-03 19:05:0351 days 16 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x6a1435b1e1b52313874108848516a06427e2192d6124a5e73d59ea1ef05bc1f01661298522024-01-01 23:45:2553 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xa2722ba14369b3c9f57a7e6ff2c26bb46a07ee09bd5bc9f149714e292472b40d1661206922024-01-01 23:07:1953 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x5b8ef496179f88aa1883d40cad2bc2898dd81cbe8b65b6c06486e3aee7b730971661196552024-01-01 23:02:5853 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xd6e6e818b59487c6e70b3334e142738347c8fdd46a915289dabe1a397757fcb91661181462024-01-01 22:56:4053 days 12 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xed5190b2d89fb07a28ed00caac144a98d961b88f7ef3aec3004770d481fc37a31637233182023-12-25 21:58:4560 days 13 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x1cb86f5dc8c6306af9e46a295982cbf84c81776cc35404db5c02a2d0af0892731637221682023-12-25 21:53:3060 days 13 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0xf589e2522fd3f88143ebdd9d2e02239db2d38a97b954e83a5c859089c3fff3691611805442023-12-18 7:38:2668 days 4 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
0x59e5bd9ab1f97c93993d2547d0035038945368cac2b13380c944b9921ca22b0d1607080152023-12-16 18:32:4269 days 17 hrs ago 0xabc000d88f23bb45525e447528dbf656a9d55bf5  Contract Creation0 ETH
[ 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.3.1

Optimization Enabled:
N/A

Other Settings:
, MIT license
# @version 0.3.1
"""
@title Child Liquidity Gauge Factory
@license MIT
@author Curve Finance
"""


interface ChildGauge:
    def initialize(_lp_token: address, _manager: address): nonpayable
    def integrate_fraction(_user: address) -> uint256: view
    def user_checkpoint(_user: address) -> bool: nonpayable

interface CallProxy:
    def anyCall(
        _to: address, _data: Bytes[1024], _fallback: address, _to_chain_id: uint256
    ): nonpayable


event DeployedGauge:
    _implementation: indexed(address)
    _lp_token: indexed(address)
    _deployer: indexed(address)
    _salt: bytes32
    _gauge: address

event Minted:
    _user: indexed(address)
    _gauge: indexed(address)
    _new_total: uint256

event UpdateImplementation:
    _old_implementation: address
    _new_implementation: address

event UpdateVotingEscrow:
    _old_voting_escrow: address
    _new_voting_escrow: address

event UpdateCallProxy:
    _old_call_proxy: address
    _new_call_proxy: address

event UpdateMirrored:
    _gauge: indexed(address)
    _mirrored: bool

event TransferOwnership:
    _old_owner: address
    _new_owner: address


WEEK: constant(uint256) = 86400 * 7


CRV: immutable(address)


get_implementation: public(address)
voting_escrow: public(address)

owner: public(address)
future_owner: public(address)

call_proxy: public(address)
# [last_request][has_counterpart][is_valid_gauge]
gauge_data: public(HashMap[address, uint256])
# user -> gauge -> value
minted: public(HashMap[address, HashMap[address, uint256]])

get_gauge_from_lp_token: public(HashMap[address, address])
get_gauge_count: public(uint256)
get_gauge: public(address[MAX_INT128])


@external
def __init__(_call_proxy: address, _crv: address, _owner: address):
    CRV = _crv

    self.call_proxy = _call_proxy
    log UpdateCallProxy(ZERO_ADDRESS, _call_proxy)

    self.owner = _owner
    log TransferOwnership(ZERO_ADDRESS, _owner)


@internal
def _psuedo_mint(_gauge: address, _user: address):
    gauge_data: uint256 = self.gauge_data[_gauge]
    assert gauge_data != 0  # dev: invalid gauge

    # if is_mirrored and last_request != this week
    if bitwise_and(gauge_data, 2) != 0 and shift(gauge_data, -2) / WEEK != block.timestamp / WEEK:
        CallProxy(self.call_proxy).anyCall(
            self,
            _abi_encode(_gauge, method_id=method_id("transmit_emissions(address)")),
            ZERO_ADDRESS,
            1,
        )
        # update last request time
        self.gauge_data[_gauge] = shift(block.timestamp, 2) + 3

    assert ChildGauge(_gauge).user_checkpoint(_user)
    total_mint: uint256 = ChildGauge(_gauge).integrate_fraction(_user)
    to_mint: uint256 = total_mint - self.minted[_user][_gauge]

    if to_mint != 0:
        # transfer tokens to user
        response: Bytes[32] = raw_call(
            CRV,
            _abi_encode(_user, to_mint, method_id=method_id("transfer(address,uint256)")),
            max_outsize=32,
        )
        if len(response) != 0:
            assert convert(response, bool)
        self.minted[_user][_gauge] = total_mint

        log Minted(_user, _gauge, total_mint)


@external
@nonreentrant("lock")
def mint(_gauge: address):
    """
    @notice Mint everything which belongs to `msg.sender` and send to them
    @param _gauge `LiquidityGauge` address to get mintable amount from
    """
    self._psuedo_mint(_gauge, msg.sender)


@external
@nonreentrant("lock")
def mint_many(_gauges: address[32]):
    """
    @notice Mint everything which belongs to `msg.sender` across multiple gauges
    @param _gauges List of `LiquidityGauge` addresses
    """
    for i in range(32):
        if _gauges[i] == ZERO_ADDRESS:
            pass
        self._psuedo_mint(_gauges[i], msg.sender)


@external
def deploy_gauge(_lp_token: address, _salt: bytes32, _manager: address = msg.sender) -> address:
    """
    @notice Deploy a liquidity gauge
    @param _lp_token The token to deposit in the gauge
    @param _manager The address to set as manager of the gauge
    @param _salt A value to deterministically deploy a gauge
    """
    if self.get_gauge_from_lp_token[_lp_token] != ZERO_ADDRESS:
        # overwriting lp_token -> gauge mapping requires
        assert msg.sender == self.owner  # dev: only owner

    gauge_data: uint256 = 1  # set is_valid_gauge = True
    implementation: address = self.get_implementation
    gauge: address = create_forwarder_to(
        implementation, salt=keccak256(_abi_encode(chain.id, msg.sender, _salt))
    )

    if msg.sender == self.call_proxy:
        gauge_data += 2  # set mirrored = True
        log UpdateMirrored(gauge, True)
        # issue a call to the root chain to deploy a root gauge
        CallProxy(self.call_proxy).anyCall(
            self,
            _abi_encode(chain.id, _salt, method_id=method_id("deploy_gauge(uint256,bytes32)")),
            ZERO_ADDRESS,
            1
        )

    self.gauge_data[gauge] = gauge_data

    idx: uint256 = self.get_gauge_count
    self.get_gauge[idx] = gauge
    self.get_gauge_count = idx + 1
    self.get_gauge_from_lp_token[_lp_token] = gauge

    ChildGauge(gauge).initialize(_lp_token, _manager)

    log DeployedGauge(implementation, _lp_token, msg.sender, _salt, gauge)
    return gauge


@external
def set_voting_escrow(_voting_escrow: address):
    """
    @notice Update the voting escrow contract
    @param _voting_escrow Contract to use as the voting escrow oracle
    """
    assert msg.sender == self.owner  # dev: only owner

    log UpdateVotingEscrow(self.voting_escrow, _voting_escrow)
    self.voting_escrow = _voting_escrow


@external
def set_implementation(_implementation: address):
    """
    @notice Set the implementation
    @param _implementation The address of the implementation to use
    """
    assert msg.sender == self.owner  # dev: only owner

    log UpdateImplementation(self.get_implementation, _implementation)
    self.get_implementation = _implementation


@external
def set_mirrored(_gauge: address, _mirrored: bool):
    """
    @notice Set the mirrored bit of the gauge data for `_gauge`
    @param _gauge The gauge of interest
    @param _mirrored Boolean deteremining whether to set the mirrored bit to True/False
    """
    gauge_data: uint256 = self.gauge_data[_gauge]
    assert gauge_data != 0  # dev: invalid gauge
    assert msg.sender == self.owner  # dev: only owner

    gauge_data = shift(shift(gauge_data, -2), 2) + 1  # set is_valid_gauge = True
    if _mirrored:
        gauge_data += 2  # set is_mirrored = True

    self.gauge_data[_gauge] = gauge_data
    log UpdateMirrored(_gauge, _mirrored)


@external
def set_call_proxy(_new_call_proxy: address):
    """
    @notice Set the address of the call proxy used
    @dev _new_call_proxy should adhere to the same interface as defined
    @param _new_call_proxy Address of the cross chain call proxy
    """
    assert msg.sender == self.owner

    log UpdateCallProxy(self.call_proxy, _new_call_proxy)
    self.call_proxy = _new_call_proxy


@external
def commit_transfer_ownership(_future_owner: address):
    """
    @notice Transfer ownership to `_future_owner`
    @param _future_owner The account to commit as the future owner
    """
    assert msg.sender == self.owner  # dev: only owner

    self.future_owner = _future_owner


@external
def accept_transfer_ownership():
    """
    @notice Accept the transfer of ownership
    @dev Only the committed future owner can call this function
    """
    assert msg.sender == self.future_owner  # dev: only future owner

    log TransferOwnership(self.owner, msg.sender)
    self.owner = msg.sender


@view
@external
def is_valid_gauge(_gauge: address) -> bool:
    """
    @notice Query whether the gauge is a valid one deployed via the factory
    @param _gauge The address of the gauge of interest
    """
    return self.gauge_data[_gauge] != 0


@view
@external
def is_mirrored(_gauge: address) -> bool:
    """
    @notice Query whether the gauge is mirrored on Ethereum mainnet
    @param _gauge The address of the gauge of interest
    """
    return bitwise_and(self.gauge_data[_gauge], 2) != 0


@view
@external
def last_request(_gauge: address) -> uint256:
    """
    @notice Query the timestamp of the last cross chain request for emissions
    @param _gauge The address of the gauge of interest
    """
    return shift(self.gauge_data[_gauge], -2)

Contract ABI

[{"name":"DeployedGauge","inputs":[{"name":"_implementation","type":"address","indexed":true},{"name":"_lp_token","type":"address","indexed":true},{"name":"_deployer","type":"address","indexed":true},{"name":"_salt","type":"bytes32","indexed":false},{"name":"_gauge","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"Minted","inputs":[{"name":"_user","type":"address","indexed":true},{"name":"_gauge","type":"address","indexed":true},{"name":"_new_total","type":"uint256","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateImplementation","inputs":[{"name":"_old_implementation","type":"address","indexed":false},{"name":"_new_implementation","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateVotingEscrow","inputs":[{"name":"_old_voting_escrow","type":"address","indexed":false},{"name":"_new_voting_escrow","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateCallProxy","inputs":[{"name":"_old_call_proxy","type":"address","indexed":false},{"name":"_new_call_proxy","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"name":"UpdateMirrored","inputs":[{"name":"_gauge","type":"address","indexed":true},{"name":"_mirrored","type":"bool","indexed":false}],"anonymous":false,"type":"event"},{"name":"TransferOwnership","inputs":[{"name":"_old_owner","type":"address","indexed":false},{"name":"_new_owner","type":"address","indexed":false}],"anonymous":false,"type":"event"},{"stateMutability":"nonpayable","type":"constructor","inputs":[{"name":"_call_proxy","type":"address"},{"name":"_crv","type":"address"},{"name":"_owner","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"mint","inputs":[{"name":"_gauge","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"mint_many","inputs":[{"name":"_gauges","type":"address[32]"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"deploy_gauge","inputs":[{"name":"_lp_token","type":"address"},{"name":"_salt","type":"bytes32"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"deploy_gauge","inputs":[{"name":"_lp_token","type":"address"},{"name":"_salt","type":"bytes32"},{"name":"_manager","type":"address"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"nonpayable","type":"function","name":"set_voting_escrow","inputs":[{"name":"_voting_escrow","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_implementation","inputs":[{"name":"_implementation","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_mirrored","inputs":[{"name":"_gauge","type":"address"},{"name":"_mirrored","type":"bool"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"set_call_proxy","inputs":[{"name":"_new_call_proxy","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"commit_transfer_ownership","inputs":[{"name":"_future_owner","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"accept_transfer_ownership","inputs":[],"outputs":[]},{"stateMutability":"view","type":"function","name":"is_valid_gauge","inputs":[{"name":"_gauge","type":"address"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"is_mirrored","inputs":[{"name":"_gauge","type":"address"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"last_request","inputs":[{"name":"_gauge","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"get_implementation","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"voting_escrow","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"future_owner","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"call_proxy","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"gauge_data","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"minted","inputs":[{"name":"arg0","type":"address"},{"name":"arg1","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"get_gauge_from_lp_token","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"get_gauge_count","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"get_gauge","inputs":[{"name":"arg0","type":"uint256"}],"outputs":[{"name":"","type":"address"}]}]

6020610e936080396080518060a01c610e8e5760e05260206020610e93016080396080518060a01c610e8e576101005260206040610e93016080396080518060a01c610e8e5761012052610100516101405260e0516005557fe385116766307e81d4427b03f1ac50c300b2f6a5df7b3c67eeb7eaaab12f080560006101605260e051610180526040610160a1610120516003557f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60006101605261012051610180526040610160a1610e6656600436101561000d57610a7e565b60046000601c3760005134610d9557636a627842811861005d576004358060a01c610d95576102a052600054610d955760016000556102a05160e0523361010052610056610a84565b6000600055005b6355ec670881186102cf576004358060a01c610d95576102a0526024358060a01c610d95576102c0526044358060a01c610d95576102e0526064358060a01c610d9557610300526084358060a01c610d95576103205260a4358060a01c610d95576103405260c4358060a01c610d95576103605260e4358060a01c610d955761038052610104358060a01c610d95576103a052610124358060a01c610d95576103c052610144358060a01c610d95576103e052610164358060a01c610d955761040052610184358060a01c610d9557610420526101a4358060a01c610d9557610440526101c4358060a01c610d9557610460526101e4358060a01c610d955761048052610204358060a01c610d95576104a052610224358060a01c610d95576104c052610244358060a01c610d95576104e052610264358060a01c610d955761050052610284358060a01c610d9557610520526102a4358060a01c610d9557610540526102c4358060a01c610d9557610560526102e4358060a01c610d955761058052610304358060a01c610d95576105a052610324358060a01c610d95576105c052610344358060a01c610d95576105e052610364358060a01c610d955761060052610384358060a01c610d9557610620526103a4358060a01c610d9557610640526103c4358060a01c610d9557610660526103e4358060a01c610d955761068052600054610d955760016000556106a060006020818352015b6102a06106a0516020811015610d95576020020151610292575b6102a06106a0516020811015610d9557602002015160e05233610100526102b7610a84565b81516001018083528114156102785750506000600055005b638db98b5c81186102e45733610100526102ff565b636be320d281186105e2576044358060a01c610d9557610100525b6004358060a01c610d955760e0526000600860e05160a0526080526040608020541461032f576003543318610d95575b600161012052600154610140527f602d3d8160093d39f3363d3d373d3d3d363d7300000000000000000000000000610280526101405160601b610293527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006102a752466102205233610240526024356102605260606102005261020080516020820120905060366102806000f56101605260055433186104e157610120805160028181830110610d955780820190509050815250610160517f54b0a41dd85251df77437effbf9fbdca133bd234e7771816495877177288092c6001610180526020610180a263f9754c936102005261022080608030825260208201915080825263e10a16b8610184526004466101a4526024356101c45260400161018052610180818401808280516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f82010390509050905090508101905060208201915060008252602082019150600182525050506005543b15610d95576000600061010461021c60006005545af16104e1573d600060003e3d6000fd5b6101205160066101605160a05260805260406080205560095461018052610160516001610180516f7fffffffffffffffffffffffffffffff811015610d955702600a01556101805160018181830110610d95578082019050905060095561016051600860e05160a05260805260406080205563485cc9556101a05260e0516101c052610100516101e052610160513b15610d95576000600060446101bc6000610160515af1610595573d600060003e3d6000fd5b3360e051610140517f69e16554b097f489830077da86e9e40cc91529a8d0787c42c4f33a0a337a0e086024356101a052610160516101c05260406101a0a4610160516101a05260206101a0f35b6323fc5a478118610641576004358060a01c610d955760e0526003543318610d95577fa1b167642dcf1fee2fbf716c48c7c3f2326e4f26020cb042cd6405dfa72f4fd26002546101005260e051610120526040610100a160e051600255005b634cd69da081186106a0576004358060a01c610d955760e0526003543318610d95577fcdfeee65e4d0a88d6e47c5d034c34b03d52f1e6ffc56906257fc93d993ca04c46001546101005260e051610120526040610100a160e051600155005b634b29cac8811861077e576004358060a01c610d955760e0526024358060011c610d955761010052600660e05160a0526080526040608020546101205260006101205114610d95576003543318610d95576101205160021c60021b60018181830110610d95578082019050905061012052610100511561073557610120805160028181830110610d9557808201905090508152505b61012051600660e05160a05260805260406080205560e0517f54b0a41dd85251df77437effbf9fbdca133bd234e7771816495877177288092c61010051610140526020610140a2005b635ecb9e1481186107dd576004358060a01c610d955760e0526003543318610d95577fe385116766307e81d4427b03f1ac50c300b2f6a5df7b3c67eeb7eaaab12f08056005546101005260e051610120526040610100a160e051600555005b636b441a408118610807576004358060a01c610d955760e0526003543318610d955760e051600455005b63e5ea47b88118610852576004543318610d95577f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60035460e0523361010052604060e0a133600355005b634b920379811861088b576004358060a01c610d955760e0526000600660e05160a0526080526040608020541415610100526020610100f35b638a42bd8281186108c7576004358060a01c610d955760e05260006002600660e05160a052608052604060802054161415610100526020610100f35b6351bd4db581186108ff576004358060a01c610d955760e052600660e05160a05260805260406080205460021c610100526020610100f35b63c781c66881186109165760015460e052602060e0f35b63dfe05031811861092d5760025460e052602060e0f35b638da5cb5b81186109445760035460e052602060e0f35b631ec0cdc1811861095b5760045460e052602060e0f35b63f81c6c3e81186109725760055460e052602060e0f35b63f0ce32f881186109a7576004358060a01c610d955760e052600660e05160a052608052604060802054610100526020610100f35b638b752bb081186109fa576004358060a01c610d955760e0526024358060a01c610d955761010052600760e05160a05260805260406080206101005160a052608052604060802054610120526020610120f35b635d95c65e8118610a2f576004358060a01c610d955760e052600860e05160a052608052604060802054610100526020610100f35b63f111569c8118610a465760095460e052602060e0f35b63285218488118610a7c5760016004356f7fffffffffffffffffffffffffffffff811015610d955702600a015460e052602060e0f35b505b60006000fd5b600660e05160a0526080526040608020546101205260006101205114610d95576000600261012051161415610aba576000610adb565b4262093a80808204905090506101205160021c62093a808082049050905014155b15610bcf5763f9754c936101a0526101c08060803082526020820191508082526311bfb95661014452600460e0516101645260200161014052610140818401808280516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f82010390509050905090508101905060208201915060008252602082019150600182525050506005543b15610d95576000600060e46101bc60006005545af1610ba7573d600060003e3d6000fd5b4260021b60038181830110610d955780820190509050600660e05160a0526080526040608020555b634b8200936101405261010051610160526020610140602461015c600060e0515af1610c00573d600060003e3d6000fd5b601f3d1115610d95576101405115610d955763094007076101605261010051610180526020610160602461017c60e0515afa610c41573d600060003e3d6000fd5b601f3d1115610d955761016051610140526101405160076101005160a052608052604060802060e05160a052608052604060802054808210610d9557808203905090506101605260006101605114610d935763a9059cbb6101c4526004610100516101e45261016051610204526040016101c0526101c05060206102606101c0516101e060006020602038036080396080515af1610ce4573d600060003e3d6000fd5b61024060203d808211610cf75781610cf9565b805b905090508152805160200180610180828460045afa9050505060006101805114610d38576101a0516101805181816020036008021c9050905015610d95575b6101405160076101005160a052608052604060802060e05160a05260805260406080205560e051610100517f9d228d69b5fdb8d273a2336f8fb8612d039631024ea9bf09c424a9503aa078f0610140516101c05260206101c0a35b565b600080fd5b6100cc610e66036100cc610160396100cc610e66036101405181610160015280602001610160f35b600080fd00000000000000000000000037414a8662bc1d25be3ee51fb27c2686e2490a8900000000000000000000000011cdb42b0eb46d95f990bedd4695a6e3fa034978000000000000000000000000919124f5f5135d3020a0b075412679755545f7c5

Deployed Bytecode

0x600436101561000d57610a7e565b60046000601c3760005134610d9557636a627842811861005d576004358060a01c610d95576102a052600054610d955760016000556102a05160e0523361010052610056610a84565b6000600055005b6355ec670881186102cf576004358060a01c610d95576102a0526024358060a01c610d95576102c0526044358060a01c610d95576102e0526064358060a01c610d9557610300526084358060a01c610d95576103205260a4358060a01c610d95576103405260c4358060a01c610d95576103605260e4358060a01c610d955761038052610104358060a01c610d95576103a052610124358060a01c610d95576103c052610144358060a01c610d95576103e052610164358060a01c610d955761040052610184358060a01c610d9557610420526101a4358060a01c610d9557610440526101c4358060a01c610d9557610460526101e4358060a01c610d955761048052610204358060a01c610d95576104a052610224358060a01c610d95576104c052610244358060a01c610d95576104e052610264358060a01c610d955761050052610284358060a01c610d9557610520526102a4358060a01c610d9557610540526102c4358060a01c610d9557610560526102e4358060a01c610d955761058052610304358060a01c610d95576105a052610324358060a01c610d95576105c052610344358060a01c610d95576105e052610364358060a01c610d955761060052610384358060a01c610d9557610620526103a4358060a01c610d9557610640526103c4358060a01c610d9557610660526103e4358060a01c610d955761068052600054610d955760016000556106a060006020818352015b6102a06106a0516020811015610d95576020020151610292575b6102a06106a0516020811015610d9557602002015160e05233610100526102b7610a84565b81516001018083528114156102785750506000600055005b638db98b5c81186102e45733610100526102ff565b636be320d281186105e2576044358060a01c610d9557610100525b6004358060a01c610d955760e0526000600860e05160a0526080526040608020541461032f576003543318610d95575b600161012052600154610140527f602d3d8160093d39f3363d3d373d3d3d363d7300000000000000000000000000610280526101405160601b610293527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006102a752466102205233610240526024356102605260606102005261020080516020820120905060366102806000f56101605260055433186104e157610120805160028181830110610d955780820190509050815250610160517f54b0a41dd85251df77437effbf9fbdca133bd234e7771816495877177288092c6001610180526020610180a263f9754c936102005261022080608030825260208201915080825263e10a16b8610184526004466101a4526024356101c45260400161018052610180818401808280516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f82010390509050905090508101905060208201915060008252602082019150600182525050506005543b15610d95576000600061010461021c60006005545af16104e1573d600060003e3d6000fd5b6101205160066101605160a05260805260406080205560095461018052610160516001610180516f7fffffffffffffffffffffffffffffff811015610d955702600a01556101805160018181830110610d95578082019050905060095561016051600860e05160a05260805260406080205563485cc9556101a05260e0516101c052610100516101e052610160513b15610d95576000600060446101bc6000610160515af1610595573d600060003e3d6000fd5b3360e051610140517f69e16554b097f489830077da86e9e40cc91529a8d0787c42c4f33a0a337a0e086024356101a052610160516101c05260406101a0a4610160516101a05260206101a0f35b6323fc5a478118610641576004358060a01c610d955760e0526003543318610d95577fa1b167642dcf1fee2fbf716c48c7c3f2326e4f26020cb042cd6405dfa72f4fd26002546101005260e051610120526040610100a160e051600255005b634cd69da081186106a0576004358060a01c610d955760e0526003543318610d95577fcdfeee65e4d0a88d6e47c5d034c34b03d52f1e6ffc56906257fc93d993ca04c46001546101005260e051610120526040610100a160e051600155005b634b29cac8811861077e576004358060a01c610d955760e0526024358060011c610d955761010052600660e05160a0526080526040608020546101205260006101205114610d95576003543318610d95576101205160021c60021b60018181830110610d95578082019050905061012052610100511561073557610120805160028181830110610d9557808201905090508152505b61012051600660e05160a05260805260406080205560e0517f54b0a41dd85251df77437effbf9fbdca133bd234e7771816495877177288092c61010051610140526020610140a2005b635ecb9e1481186107dd576004358060a01c610d955760e0526003543318610d95577fe385116766307e81d4427b03f1ac50c300b2f6a5df7b3c67eeb7eaaab12f08056005546101005260e051610120526040610100a160e051600555005b636b441a408118610807576004358060a01c610d955760e0526003543318610d955760e051600455005b63e5ea47b88118610852576004543318610d95577f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60035460e0523361010052604060e0a133600355005b634b920379811861088b576004358060a01c610d955760e0526000600660e05160a0526080526040608020541415610100526020610100f35b638a42bd8281186108c7576004358060a01c610d955760e05260006002600660e05160a052608052604060802054161415610100526020610100f35b6351bd4db581186108ff576004358060a01c610d955760e052600660e05160a05260805260406080205460021c610100526020610100f35b63c781c66881186109165760015460e052602060e0f35b63dfe05031811861092d5760025460e052602060e0f35b638da5cb5b81186109445760035460e052602060e0f35b631ec0cdc1811861095b5760045460e052602060e0f35b63f81c6c3e81186109725760055460e052602060e0f35b63f0ce32f881186109a7576004358060a01c610d955760e052600660e05160a052608052604060802054610100526020610100f35b638b752bb081186109fa576004358060a01c610d955760e0526024358060a01c610d955761010052600760e05160a05260805260406080206101005160a052608052604060802054610120526020610120f35b635d95c65e8118610a2f576004358060a01c610d955760e052600860e05160a052608052604060802054610100526020610100f35b63f111569c8118610a465760095460e052602060e0f35b63285218488118610a7c5760016004356f7fffffffffffffffffffffffffffffff811015610d955702600a015460e052602060e0f35b505b60006000fd5b600660e05160a0526080526040608020546101205260006101205114610d95576000600261012051161415610aba576000610adb565b4262093a80808204905090506101205160021c62093a808082049050905014155b15610bcf5763f9754c936101a0526101c08060803082526020820191508082526311bfb95661014452600460e0516101645260200161014052610140818401808280516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f82010390509050905090508101905060208201915060008252602082019150600182525050506005543b15610d95576000600060e46101bc60006005545af1610ba7573d600060003e3d6000fd5b4260021b60038181830110610d955780820190509050600660e05160a0526080526040608020555b634b8200936101405261010051610160526020610140602461015c600060e0515af1610c00573d600060003e3d6000fd5b601f3d1115610d95576101405115610d955763094007076101605261010051610180526020610160602461017c60e0515afa610c41573d600060003e3d6000fd5b601f3d1115610d955761016051610140526101405160076101005160a052608052604060802060e05160a052608052604060802054808210610d9557808203905090506101605260006101605114610d935763a9059cbb6101c4526004610100516101e45261016051610204526040016101c0526101c05060206102606101c0516101e060006020602038036080396080515af1610ce4573d600060003e3d6000fd5b61024060203d808211610cf75781610cf9565b805b905090508152805160200180610180828460045afa9050505060006101805114610d38576101a0516101805181816020036008021c9050905015610d95575b6101405160076101005160a052608052604060802060e05160a05260805260406080205560e051610100517f9d228d69b5fdb8d273a2336f8fb8612d039631024ea9bf09c424a9503aa078f0610140516101c05260206101c0a35b565b600080fd00000000000000000000000011cdb42b0eb46d95f990bedd4695a6e3fa034978

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

00000000000000000000000037414a8662bc1d25be3ee51fb27c2686e2490a8900000000000000000000000011cdb42b0eb46d95f990bedd4695a6e3fa034978000000000000000000000000919124f5f5135d3020a0b075412679755545f7c5

-----Decoded View---------------
Arg [0] : _call_proxy (address): 0x37414a8662bC1D25be3ee51Fb27C2686e2490A89
Arg [1] : _crv (address): 0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978
Arg [2] : _owner (address): 0x919124f5f5135D3020a0B075412679755545F7c5

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000037414a8662bc1d25be3ee51fb27c2686e2490a89
Arg [1] : 00000000000000000000000011cdb42b0eb46d95f990bedd4695a6e3fa034978
Arg [2] : 000000000000000000000000919124f5f5135d3020a0b075412679755545f7c5


Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.