Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 6,689 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Process Redempti... | 24069231 | 10 mins ago | IN | 0 ETH | 0.00004344 | ||||
| Process Redempti... | 24069156 | 25 mins ago | IN | 0 ETH | 0.00003498 | ||||
| Process Redempti... | 24068735 | 1 hr ago | IN | 0 ETH | 0.00001496 | ||||
| Process Redempti... | 24068685 | 2 hrs ago | IN | 0 ETH | 0.00001698 | ||||
| Process Redempti... | 24068636 | 2 hrs ago | IN | 0 ETH | 0.00001584 | ||||
| Process Redempti... | 24068611 | 2 hrs ago | IN | 0 ETH | 0.00001581 | ||||
| Process Redempti... | 24068585 | 2 hrs ago | IN | 0 ETH | 0.00001614 | ||||
| Process Redempti... | 24068536 | 2 hrs ago | IN | 0 ETH | 0.0000212 | ||||
| Process Redempti... | 24068513 | 2 hrs ago | IN | 0 ETH | 0.0000278 | ||||
| Process Redempti... | 24068486 | 2 hrs ago | IN | 0 ETH | 0.00002223 | ||||
| Process Redempti... | 24068458 | 2 hrs ago | IN | 0 ETH | 0.00002104 | ||||
| Process Redempti... | 24068437 | 2 hrs ago | IN | 0 ETH | 0.00002005 | ||||
| Process Redempti... | 24068411 | 2 hrs ago | IN | 0 ETH | 0.00001892 | ||||
| Process Redempti... | 24068385 | 3 hrs ago | IN | 0 ETH | 0.00001531 | ||||
| Process Redempti... | 24068359 | 3 hrs ago | IN | 0 ETH | 0.00001793 | ||||
| Process Redempti... | 24068312 | 3 hrs ago | IN | 0 ETH | 0.00001322 | ||||
| Process Redempti... | 24068235 | 3 hrs ago | IN | 0 ETH | 0.00001908 | ||||
| Process Redempti... | 24068215 | 3 hrs ago | IN | 0 ETH | 0.00001864 | ||||
| Process Redempti... | 24068186 | 3 hrs ago | IN | 0 ETH | 0.00002261 | ||||
| Process Redempti... | 24068064 | 4 hrs ago | IN | 0 ETH | 0.00001355 | ||||
| Process Redempti... | 24068013 | 4 hrs ago | IN | 0 ETH | 0.00001798 | ||||
| Process Redempti... | 24067988 | 4 hrs ago | IN | 0 ETH | 0.00001949 | ||||
| Process Redempti... | 24067962 | 4 hrs ago | IN | 0 ETH | 0.00001511 | ||||
| Process Redempti... | 24067714 | 5 hrs ago | IN | 0 ETH | 0.00001286 | ||||
| Process Redempti... | 24067687 | 5 hrs ago | IN | 0 ETH | 0.00001431 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x60806040 | 19920366 | 579 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x447dcEa1...5A0dBcbAa The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Proxy
Compiler Version
v0.8.7+commit.e28d00a7
Optimization Enabled:
Yes with 200 runs
Other Settings:
london EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.7;
import { IDefaultImplementationBeacon } from "./interfaces/IDefaultImplementationBeacon.sol";
import { SlotManipulatable } from "./SlotManipulatable.sol";
/// @title A completely transparent, and thus interface-less, proxy contract.
contract Proxy is SlotManipulatable {
/// @dev Storage slot with the address of the current factory. `keccak256('eip1967.proxy.factory') - 1`.
bytes32 private constant FACTORY_SLOT = bytes32(0x7a45a402e4cb6e08ebc196f20f66d5d30e67285a2a8aa80503fa409e727a4af1);
/// @dev Storage slot with the address of the current factory. `keccak256('eip1967.proxy.implementation') - 1`.
bytes32 private constant IMPLEMENTATION_SLOT = bytes32(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc);
/**
* @dev The constructor requires at least one of `factory_` or `implementation_`.
* If an implementation is not provided, the factory is treated as an IDefaultImplementationBeacon
* to fetch the default implementation.
* @param factory_ The address of a proxy factory, if any.
* @param implementation_ The address of the implementation contract being proxied, if any.
*/
constructor(address factory_, address implementation_) {
_setSlotValue(FACTORY_SLOT, bytes32(uint256(uint160(factory_))));
// If the implementation is empty, fetch it from the factory, which can act as a beacon.
address implementation = implementation_ == address(0)
? IDefaultImplementationBeacon(factory_).defaultImplementation()
: implementation_;
require(implementation != address(0));
_setSlotValue(IMPLEMENTATION_SLOT, bytes32(uint256(uint160(implementation))));
}
fallback() payable external virtual {
bytes32 implementation = _getSlotValue(IMPLEMENTATION_SLOT);
require(address(uint160(uint256(implementation))).code.length != uint256(0));
assembly {
calldatacopy(0, 0, calldatasize())
let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)
returndatacopy(0, 0, returndatasize())
switch result
case 0 {
revert(0, returndatasize())
}
default {
return(0, returndatasize())
}
}
}
}// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.7;
/// @title An beacon that provides a default implementation for proxies, must implement IDefaultImplementationBeacon.
interface IDefaultImplementationBeacon {
/// @dev The address of an implementation for proxies.
function defaultImplementation() external view returns (address defaultImplementation_);
}// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.7;
abstract contract SlotManipulatable {
function _getReferenceTypeSlot(bytes32 slot_, bytes32 key_) internal pure returns (bytes32 value_) {
return keccak256(abi.encodePacked(key_, slot_));
}
function _getSlotValue(bytes32 slot_) internal view returns (bytes32 value_) {
assembly {
value_ := sload(slot_)
}
}
function _setSlotValue(bytes32 slot_, bytes32 value_) internal {
assembly {
sstore(slot_, value_)
}
}
}{
"remappings": [
"address-registry/=modules/address-registry/contracts/",
"contract-test-utils/=modules/erc20/modules/contract-test-utils/contracts/",
"ds-test/=modules/forge-std/lib/ds-test/src/",
"erc20-helper/=modules/erc20-helper/src/",
"erc20/=modules/erc20/",
"fixed-term-loan-manager/=modules/fixed-term-loan-manager/contracts/",
"fixed-term-loan/=modules/fixed-term-loan/contracts/",
"forge-std/=modules/forge-std/src/",
"globals/=modules/globals/contracts/",
"liquidations/=modules/liquidations/contracts/",
"maple-proxy-factory/=modules/open-term-loan/modules/maple-proxy-factory/",
"non-transparent-proxy/=modules/globals/modules/non-transparent-proxy/",
"ntp/=modules/pool-permission-manager/modules/ntp/",
"open-term-loan-manager/=modules/open-term-loan-manager/contracts/",
"open-term-loan/=modules/open-term-loan/contracts/",
"pool-permission-manager/=modules/pool-permission-manager/contracts/",
"pool/=modules/pool/contracts/",
"proxy-factory/=modules/open-term-loan/modules/maple-proxy-factory/modules/proxy-factory/",
"withdrawal-manager-cyclical/=modules/withdrawal-manager-cyclical/contracts/",
"withdrawal-manager-queue/=modules/withdrawal-manager-queue/contracts/"
],
"optimizer": {
"enabled": true,
"runs": 200
},
"metadata": {
"useLiteralContent": false,
"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":"factory_","type":"address"},{"internalType":"address","name":"implementation_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]Contract Creation Code
0x608060405234801561001057600080fd5b5060405161024538038061024583398101604081905261002f91610169565b6001600160a01b0382167f7a45a402e4cb6e08ebc196f20f66d5d30e67285a2a8aa80503fa409e727a4af15560006001600160a01b0382161561007257816100e3565b826001600160a01b031663b39c45936040518163ffffffff1660e01b815260040160206040518083038186803b1580156100ab57600080fd5b505afa1580156100bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100e39190610147565b90506001600160a01b0381166100f857600080fd5b6001600160a01b03167f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc555061019c9050565b80516001600160a01b038116811461014257600080fd5b919050565b60006020828403121561015957600080fd5b6101628261012b565b9392505050565b6000806040838503121561017c57600080fd5b6101858361012b565b91506101936020840161012b565b90509250929050565b609b806101aa6000396000f3fe60806040526000602d7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90506001600160a01b0381163b604257600080fd5b3660008037600080366000845af43d6000803e8080156060573d6000f35b3d6000fdfea2646970667358221220c8872fc7fbfd8b65110f1223c01eeccb9f4a10ea824be092efdc9476b129c14964736f6c63430008070033000000000000000000000000ca33105902e8d232ddfb9f71ff3d79c7e7f2c4e50000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x60806040526000602d7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90506001600160a01b0381163b604257600080fd5b3660008037600080366000845af43d6000803e8080156060573d6000f35b3d6000fdfea2646970667358221220c8872fc7fbfd8b65110f1223c01eeccb9f4a10ea824be092efdc9476b129c14964736f6c63430008070033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 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.