Source Code
Overview
ETH Balance
0 ETH
ETH Value
$0.00| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
Latest 25 internal transactions (View All)
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 72086089 | 1041 days ago | 0 ETH | ||||
| 72086067 | 1041 days ago | 0 ETH | ||||
| 72078135 | 1041 days ago | 0 ETH | ||||
| 72077953 | 1041 days ago | 0 ETH | ||||
| 72077246 | 1041 days ago | 0 ETH | ||||
| 72077178 | 1041 days ago | 0 ETH | ||||
| 72065142 | 1041 days ago | 0 ETH | ||||
| 72065113 | 1041 days ago | 0 ETH | ||||
| 72032595 | 1041 days ago | 0 ETH | ||||
| 72032565 | 1041 days ago | 0 ETH | ||||
| 72017117 | 1041 days ago | 0 ETH | ||||
| 72017059 | 1041 days ago | 0 ETH | ||||
| 72016203 | 1041 days ago | 0 ETH | ||||
| 72016179 | 1041 days ago | 0 ETH | ||||
| 72010003 | 1041 days ago | 0 ETH | ||||
| 71983467 | 1041 days ago | 0 ETH | ||||
| 71983383 | 1041 days ago | 0 ETH | ||||
| 71974599 | 1041 days ago | 0 ETH | ||||
| 71974567 | 1041 days ago | 0 ETH | ||||
| 71962428 | 1041 days ago | 0 ETH | ||||
| 71962389 | 1041 days ago | 0 ETH | ||||
| 71943438 | 1041 days ago | 0 ETH | ||||
| 71943343 | 1041 days ago | 0 ETH | ||||
| 71928816 | 1041 days ago | 0 ETH | ||||
| 71928800 | 1041 days ago | 0 ETH |
Cross-Chain Transactions
Loading...
Loading
Contract Name:
RewardRouterController
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
import {IController} from "../core/IController.sol";
/**
* @title Reward Router Controller for claiming and compounding rewards
* @dev arbi:0xA906F338CB21815cBc4Bc87ace9e68c87eF8d8F1
*/
contract RewardRouterController is IController {
/* -------------------------------------------------------------------------- */
/* STORAGE VARIABLES */
/* -------------------------------------------------------------------------- */
/// @notice compound()
bytes4 constant compound = 0xf69e2046;
/// @notice claimFees()
bytes4 constant claimFees = 0xd294f093;
/// @notice WETH
address[] WETH;
/* -------------------------------------------------------------------------- */
/* CONSTRUCTOR */
/* -------------------------------------------------------------------------- */
constructor(address _WETH) {
WETH.push(_WETH);
}
/* -------------------------------------------------------------------------- */
/* EXTERNAL FUNCTIONS */
/* -------------------------------------------------------------------------- */
function canCall(address, bool, bytes calldata data)
external
view
returns (bool, address[] memory, address[] memory)
{
bytes4 sig = bytes4(data);
if (sig == compound) return canCallCompound();
if (sig == claimFees) return canCallClaimFees();
return (false, new address[](0), new address[](0));
}
/* -------------------------------------------------------------------------- */
/* INTERNAL FUNCTIONS */
/* -------------------------------------------------------------------------- */
function canCallClaimFees() internal view returns (bool, address[] memory, address[] memory) {
return (true, WETH, new address[](0));
}
function canCallCompound() internal pure returns (bool, address[] memory, address[] memory) {
return (true, new address[](0), new address[](0));
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
interface IController {
/**
@notice General function that evaluates whether the target contract can
be interacted with using the specified calldata
@param target Address of external protocol/interaction
@param useEth Specifies if Eth is being sent to the target
@param data Calldata of the call made to target
@return canCall Specifies if the interaction is accepted
@return tokensIn List of tokens that the account will receive after the
interactions
@return tokensOut List of tokens that will be removed from the account
after the interaction
*/
function canCall(
address target,
bool useEth,
bytes calldata data
) external view returns (bool, address[] memory, address[] memory);
}{
"remappings": [
"ds-test/=lib/forge-std/lib/ds-test/src/",
"forge-std/=lib/forge-std/src/",
"solidity-bytes-utils/=lib/solidity-bytes-utils/contracts/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"bytecodeHash": "ipfs"
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "london",
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_WETH","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bool","name":"","type":"bool"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"canCall","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b506040516103ab3803806103ab83398101604081905261002f91610081565b600080546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03929092169190911790556100b1565b60006020828403121561009357600080fd5b81516001600160a01b03811681146100aa57600080fd5b9392505050565b6102eb806100c06000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80633414d09914610030575b600080fd5b61004361003e366004610167565b61005b565b6040516100529392919061024e565b60405180910390f35b60006060808261006b8587610285565b90506304b0efdd60e11b6001600160e01b03198216016100ab57604080516000808252602082019081528183019092526001915b935093509350506100e8565b632d6b0f6d60e01b6001600160e01b03198216016100cb5761009f6100f2565b505060408051600080825260208201818152828401909352935091505b9450945094915050565b60408051600080825280546020818102840185018552830181815291936060938493600193879384919084018282801561015557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610137575b50505050509150925092509250909192565b6000806000806060858703121561017d57600080fd5b84356001600160a01b038116811461019457600080fd5b9350602085013580151581146101a957600080fd5b9250604085013567ffffffffffffffff808211156101c657600080fd5b818701915087601f8301126101da57600080fd5b8135818111156101e957600080fd5b8860208285010111156101fb57600080fd5b95989497505060200194505050565b600081518084526020808501945080840160005b838110156102435781516001600160a01b03168752958201959082019060010161021e565b509495945050505050565b8315158152606060208201526000610269606083018561020a565b828103604084015261027b818561020a565b9695505050505050565b6001600160e01b031981358181169160048510156102ad5780818660040360031b1b83161692505b50509291505056fea26469706673582212208a120cca3a39a08d465af93a2fee877c4d150e48cd38b71f314c523761c5216964736f6c6343000811003300000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80633414d09914610030575b600080fd5b61004361003e366004610167565b61005b565b6040516100529392919061024e565b60405180910390f35b60006060808261006b8587610285565b90506304b0efdd60e11b6001600160e01b03198216016100ab57604080516000808252602082019081528183019092526001915b935093509350506100e8565b632d6b0f6d60e01b6001600160e01b03198216016100cb5761009f6100f2565b505060408051600080825260208201818152828401909352935091505b9450945094915050565b60408051600080825280546020818102840185018552830181815291936060938493600193879384919084018282801561015557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610137575b50505050509150925092509250909192565b6000806000806060858703121561017d57600080fd5b84356001600160a01b038116811461019457600080fd5b9350602085013580151581146101a957600080fd5b9250604085013567ffffffffffffffff808211156101c657600080fd5b818701915087601f8301126101da57600080fd5b8135818111156101e957600080fd5b8860208285010111156101fb57600080fd5b95989497505060200194505050565b600081518084526020808501945080840160005b838110156102435781516001600160a01b03168752958201959082019060010161021e565b509495945050505050565b8315158152606060208201526000610269606083018561020a565b828103604084015261027b818561020a565b9695505050505050565b6001600160e01b031981358181169160048510156102ad5780818660040360031b1b83161692505b50509291505056fea26469706673582212208a120cca3a39a08d465af93a2fee877c4d150e48cd38b71f314c523761c5216964736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
-----Decoded View---------------
Arg [0] : _WETH (address): 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.