S Price: $0.700442 (-10.20%)

Contract

0x52605BbF54845f520a3E94792d019f62407db2f8

Overview

S Balance

Sonic LogoSonic LogoSonic Logo0 S

S Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

1 Internal Transaction found.

Latest 1 internal transaction

Parent Transaction Hash Block From To
3078022024-12-11 19:09:0537 days ago1733944145  Contract Creation0 S
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Keeper

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at SonicScan.org on 2024-12-11
*/

// SPDX-License-Identifier: AGPL-3.0
pragma solidity >=0.8.18;

interface IStrategy {
    function report() external returns (uint256, uint256);

    function tend() external;
}

interface IVault {
    function process_report(address) external returns (uint256, uint256);
}

/**
 * @title Keeper
 * @notice
 *   To allow permissionless reporting on V3 vaults and strategies.
 *
 *   This will do low level calls so that in can be used without reverting
 *   it the roles have not been set or the functions are not available.
 */
contract Keeper {
    /**
     * @notice Reports on a strategy.
     */
    function report(address _strategy) external returns (uint256, uint256) {
        return IStrategy(_strategy).report();
    }

    /**
     * @notice Tends a strategy.
     */
    function tend(address _strategy) external {
        return IStrategy(_strategy).tend();
    }

    /**
     * @notice Report strategy profits on a vault.
     */
    function process_report(
        address _vault,
        address _strategy
    ) external returns (uint256, uint256) {
        return IVault(_vault).process_report(_strategy);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_vault","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"name":"process_report","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"name":"report","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"name":"tend","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506102a5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063715bbc2514610046578063d6d2dcf914610072578063e053ea3114610087575b600080fd5b6100596100543660046101f6565b61009a565b6040805192835260208301919091520160405180910390f35b610085610080366004610229565b610115565b005b610059610095366004610229565b61016b565b604051631bb0ae3560e21b81526001600160a01b0382811660048301526000918291851690636ec2b8d49060240160408051808303816000875af11580156100e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061010a919061024b565b915091509250929050565b806001600160a01b031663440368a36040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561015057600080fd5b505af1158015610164573d6000803e3d6000fd5b5050505050565b600080826001600160a01b0316632606a10b6040518163ffffffff1660e01b815260040160408051808303816000875af11580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d1919061024b565b91509150915091565b80356001600160a01b03811681146101f157600080fd5b919050565b6000806040838503121561020957600080fd5b610212836101da565b9150610220602084016101da565b90509250929050565b60006020828403121561023b57600080fd5b610244826101da565b9392505050565b6000806040838503121561025e57600080fd5b50508051602090910151909290915056fea2646970667358221220b9a9bddec0ad790a3ed67bfbcbd5e8fc8362aa907ebf54bfde2d9d8e594d4cca64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063715bbc2514610046578063d6d2dcf914610072578063e053ea3114610087575b600080fd5b6100596100543660046101f6565b61009a565b6040805192835260208301919091520160405180910390f35b610085610080366004610229565b610115565b005b610059610095366004610229565b61016b565b604051631bb0ae3560e21b81526001600160a01b0382811660048301526000918291851690636ec2b8d49060240160408051808303816000875af11580156100e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061010a919061024b565b915091509250929050565b806001600160a01b031663440368a36040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561015057600080fd5b505af1158015610164573d6000803e3d6000fd5b5050505050565b600080826001600160a01b0316632606a10b6040518163ffffffff1660e01b815260040160408051808303816000875af11580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d1919061024b565b91509150915091565b80356001600160a01b03811681146101f157600080fd5b919050565b6000806040838503121561020957600080fd5b610212836101da565b9150610220602084016101da565b90509250929050565b60006020828403121561023b57600080fd5b610244826101da565b9392505050565b6000806040838503121561025e57600080fd5b50508051602090910151909290915056fea2646970667358221220b9a9bddec0ad790a3ed67bfbcbd5e8fc8362aa907ebf54bfde2d9d8e594d4cca64736f6c63430008120033

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.