Latest 1 from a total of 1 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Recover Funds | 372831083 | 158 days ago | IN | 0 ETH | 0.00000188 |
Latest 25 internal transactions (View All)
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56407032 | 1098 days ago | 0 ETH | ||||
| 56406937 | 1098 days ago | 0 ETH | ||||
| 56406937 | 1098 days ago | 0 ETH | ||||
| 56406937 | 1098 days ago | 0 ETH | ||||
| 56406937 | 1098 days ago | 0 ETH |
Cross-Chain Transactions
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x89A42eDb...5c56d4A2E The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
BeaconProxy
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 {BaseProxy} from "./BaseProxy.sol";
import {Errors} from "../utils/Errors.sol";
import {StorageSlot} from "../utils/Storage.sol";
import {IBeacon} from "../interface/proxy/IBeacon.sol";
contract BeaconProxy is BaseProxy {
bytes32 private constant _BEACON_SLOT =
bytes32(uint256(keccak256('eip1967.proxy.beacon')) - 1);
event BeaconUpgraded(address indexed beacon);
constructor(address _beacon, address _admin) {
_setAdmin(_admin);
_setBeacon(_beacon);
}
function changeBeacon(address beacon) external adminOnly {
_setBeacon(beacon);
}
function getBeacon() public view returns (address) {
return StorageSlot.getAddressAt(_BEACON_SLOT);
}
function getImplementation() public override returns (address) {
return IBeacon(getBeacon()).implementation();
}
function _setBeacon(address beacon) internal {
if (beacon == address(0)) revert Errors.ZeroAddress();
StorageSlot.setAddressAt(_BEACON_SLOT, beacon);
emit BeaconUpgraded(beacon);
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
interface IBeacon {
function implementation() external returns (address);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
import {Errors} from "../utils/Errors.sol";
import {StorageSlot} from "../utils/Storage.sol";
abstract contract BaseProxy {
bytes32 private constant _ADMIN_SLOT =
bytes32(uint256(keccak256('eip1967.proxy.admin')) - 1);
event AdminChanged(address previousAdmin, address newAdmin);
modifier adminOnly() {
if (msg.sender != getAdmin()) revert Errors.AdminOnly();
_;
}
function changeAdmin(address newAdmin) external adminOnly {
_setAdmin(newAdmin);
}
function getAdmin() public view returns (address) {
return StorageSlot.getAddressAt(_ADMIN_SLOT);
}
function _setAdmin(address admin) internal {
if (admin == address(0)) revert Errors.ZeroAddress();
emit AdminChanged(getAdmin(), admin);
StorageSlot.setAddressAt(_ADMIN_SLOT, admin);
}
function getImplementation() public virtual returns (address);
function _delegate(address impl) internal virtual {
assembly {
let ptr := mload(0x40)
calldatacopy(ptr, 0, calldatasize())
let result := delegatecall(gas(), impl, ptr, calldatasize(), 0, 0)
let size := returndatasize()
returndatacopy(ptr, 0, size)
switch result
case 0 {
revert(ptr, size)
}
default {
return(ptr, size)
}
}
}
fallback() external payable {
_delegate(getImplementation());
}
receive() external payable {
_delegate(getImplementation());
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
library Errors {
error AdminOnly();
error MaxSupply();
error ZeroShares();
error ZeroAssets();
error ZeroAddress();
error MinimumShares();
error ContractPaused();
error OutstandingDebt();
error AccountOwnerOnly();
error TokenNotContract();
error AddressNotContract();
error ContractNotPaused();
error LTokenUnavailable();
error LiquidationFailed();
error EthTransferFailure();
error AccountManagerOnly();
error RiskThresholdBreached();
error FunctionCallRestricted();
error AccountNotLiquidatable();
error CollateralTypeRestricted();
error IncorrectConstructorArgs();
error ContractAlreadyInitialized();
error AccountDeactivationFailure();
error AccountInteractionFailure(address, address, uint, bytes);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;
library StorageSlot {
function getAddressAt(bytes32 slot) internal view returns (address a) {
assembly {
a := sload(slot)
}
}
function setAddressAt(bytes32 slot, address address_) internal {
assembly {
sstore(slot, address_)
}
}
}{
"remappings": [
"controller/=lib/controller/src/",
"ds-test/=lib/solmate/lib/ds-test/src/",
"forge-std/=lib/forge-std/src/",
"oracle/=lib/oracle/src/",
"solidity-bytes-utils/=lib/controller/lib/solidity-bytes-utils/contracts/",
"solmate/=lib/solmate/src/",
"v3-core/=lib/oracle/lib/v3-core/"
],
"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":"_beacon","type":"address"},{"internalType":"address","name":"_admin","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AdminOnly","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"beacon","type":"address"}],"name":"changeBeacon","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBeacon","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
0x608060405234801561001057600080fd5b506040516106d33803806106d383398101604081905261002f916101d1565b61003881610048565b610041826100ec565b505061022b565b6001600160a01b03811661006f5760405163d92e233d60e01b815260040160405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f610098610178565b604080516001600160a01b03928316815291841660208301520160405180910390a16100e96100d660016000805160206106b3833981519152610204565b60001b826101ad60201b61028d1760201c565b50565b6001600160a01b0381166101135760405163d92e233d60e01b815260040160405180910390fd5b6101416100d660017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d51610204565b6040516001600160a01b038216907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a250565b60006101a861019660016000805160206106b3833981519152610204565b60001b6101b160201b6102911760201c565b905090565b9055565b5490565b80516001600160a01b03811681146101cc57600080fd5b919050565b600080604083850312156101e457600080fd5b6101ed836101b5565b91506101fb602084016101b5565b90509250929050565b8181038181111561022557634e487b7160e01b600052601160045260246000fd5b92915050565b6104798061023a6000396000f3fe60806040526004361061004e5760003560e01c80632d6b3a6b146100705780636e9960c3146100a15780638f283970146100b6578063aaf10f42146100d6578063d14823f8146100eb57610065565b366100655761006361005e61010b565b61017d565b005b61006361005e61010b565b34801561007c57600080fd5b506100856101a2565b6040516001600160a01b03909116815260200160405180910390f35b3480156100ad57600080fd5b506100856101d6565b3480156100c257600080fd5b506100636100d13660046103db565b610206565b3480156100e257600080fd5b5061008561010b565b3480156100f757600080fd5b506100636101063660046103db565b61024b565b60006101156101a2565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b81526004016020604051808303816000875af1158015610154573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017891906103ff565b905090565b60405136600082376000803683855af43d806000843e81801561019e578184f35b8184fd5b60006101786101d260017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5161041c565b5490565b60006101786101d260017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610461041c565b61020e6101d6565b6001600160a01b0316336001600160a01b03161461023f57604051633057182d60e21b815260040160405180910390fd5b61024881610295565b50565b6102536101d6565b6001600160a01b0316336001600160a01b03161461028457604051633057182d60e21b815260040160405180910390fd5b6102488161033a565b9055565b5490565b6001600160a01b0381166102bc5760405163d92e233d60e01b815260040160405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6102e56101d6565b604080516001600160a01b03928316815291841660208301520160405180910390a161024861033560017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610461041c565b829055565b6001600160a01b0381166103615760405163d92e233d60e01b815260040160405180910390fd5b61038f61033560017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5161041c565b6040516001600160a01b038216907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a250565b6001600160a01b038116811461024857600080fd5b6000602082840312156103ed57600080fd5b81356103f8816103c6565b9392505050565b60006020828403121561041157600080fd5b81516103f8816103c6565b8181038181111561043d57634e487b7160e01b600052601160045260246000fd5b9291505056fea26469706673582212205445eb06fe5c15e83a7aedf2706072d4aec523b5a2aa5bf4e9c95c482c311b0964736f6c63430008110033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6104000000000000000000000000b7ba3321fc5acd14395eb2f00f6c4e2e6c122eee00000000000000000000000062c5aa8277e49b3ead43dc67453ec91dc6826403
Deployed Bytecode
0x60806040526004361061004e5760003560e01c80632d6b3a6b146100705780636e9960c3146100a15780638f283970146100b6578063aaf10f42146100d6578063d14823f8146100eb57610065565b366100655761006361005e61010b565b61017d565b005b61006361005e61010b565b34801561007c57600080fd5b506100856101a2565b6040516001600160a01b03909116815260200160405180910390f35b3480156100ad57600080fd5b506100856101d6565b3480156100c257600080fd5b506100636100d13660046103db565b610206565b3480156100e257600080fd5b5061008561010b565b3480156100f757600080fd5b506100636101063660046103db565b61024b565b60006101156101a2565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b81526004016020604051808303816000875af1158015610154573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017891906103ff565b905090565b60405136600082376000803683855af43d806000843e81801561019e578184f35b8184fd5b60006101786101d260017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5161041c565b5490565b60006101786101d260017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610461041c565b61020e6101d6565b6001600160a01b0316336001600160a01b03161461023f57604051633057182d60e21b815260040160405180910390fd5b61024881610295565b50565b6102536101d6565b6001600160a01b0316336001600160a01b03161461028457604051633057182d60e21b815260040160405180910390fd5b6102488161033a565b9055565b5490565b6001600160a01b0381166102bc5760405163d92e233d60e01b815260040160405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6102e56101d6565b604080516001600160a01b03928316815291841660208301520160405180910390a161024861033560017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610461041c565b829055565b6001600160a01b0381166103615760405163d92e233d60e01b815260040160405180910390fd5b61038f61033560017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5161041c565b6040516001600160a01b038216907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a250565b6001600160a01b038116811461024857600080fd5b6000602082840312156103ed57600080fd5b81356103f8816103c6565b9392505050565b60006020828403121561041157600080fd5b81516103f8816103c6565b8181038181111561043d57634e487b7160e01b600052601160045260246000fd5b9291505056fea26469706673582212205445eb06fe5c15e83a7aedf2706072d4aec523b5a2aa5bf4e9c95c482c311b0964736f6c63430008110033
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 ]
[ 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.