ETH Price: $2,350.15 (-1.50%)

Contract

0x1bc47a0Dd0FdaB96E9eF982fdf1F34DC6207cfE3
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Process Redempti...208861132024-10-03 16:15:353 hrs ago1727972135IN
Syrup: Withdrawal Manager Queue
0 ETH0.004571416.23764707
Process Redempti...208736912024-10-01 22:40:3545 hrs ago1727822435IN
Syrup: Withdrawal Manager Queue
0 ETH0.002025086.78151543
Process Redempti...208699692024-10-01 10:12:232 days ago1727777543IN
Syrup: Withdrawal Manager Queue
0 ETH0.0039969613.38430422
Process Redempti...208623422024-09-30 8:42:233 days ago1727685743IN
Syrup: Withdrawal Manager Queue
0 ETH0.004945927.28786801
Process Redempti...208485882024-09-28 10:38:595 days ago1727519939IN
Syrup: Withdrawal Manager Queue
0 ETH0.002031236.80183836
Process Redempti...208431202024-09-27 16:21:116 days ago1727454071IN
Syrup: Withdrawal Manager Queue
0 ETH0.0090959518.614348
Process Redempti...208363912024-09-26 17:49:237 days ago1727372963IN
Syrup: Withdrawal Manager Queue
0 ETH0.0114180329.00659247
Process Redempti...208292622024-09-25 17:59:118 days ago1727287151IN
Syrup: Withdrawal Manager Queue
0 ETH0.0055744919.80065322
Process Redempti...208266002024-09-25 9:02:358 days ago1727254955IN
Syrup: Withdrawal Manager Queue
0 ETH0.008445917.28405565
Process Redempti...208200402024-09-24 11:04:599 days ago1727175899IN
Syrup: Withdrawal Manager Queue
0 ETH0.0049025416.41674784
Process Redempti...208188292024-09-24 7:02:119 days ago1727161331IN
Syrup: Withdrawal Manager Queue
0 ETH0.0044359715.75661014
Process Redempti...208119452024-09-23 7:58:3510 days ago1727078315IN
Syrup: Withdrawal Manager Queue
0 ETH0.0071687817.45351627
Process Redempti...208061012024-09-22 12:25:2311 days ago1727007923IN
Syrup: Withdrawal Manager Queue
0 ETH0.0038283112.81956058
Process Redempti...207924502024-09-20 14:38:5913 days ago1726843139IN
Syrup: Withdrawal Manager Queue
0 ETH0.007534126.76120238
Process Redempti...207887302024-09-20 2:10:2313 days ago1726798223IN
Syrup: Withdrawal Manager Queue
0 ETH0.003769356.10079321
Process Redempti...207795452024-09-18 19:23:4715 days ago1726687427IN
Syrup: Withdrawal Manager Queue
0 ETH0.0062917515.31824593
Process Redempti...207718082024-09-17 17:26:2316 days ago1726593983IN
Syrup: Withdrawal Manager Queue
0 ETH0.0047658416.92832696
Process Redempti...207656772024-09-16 20:51:3516 days ago1726519895IN
Syrup: Withdrawal Manager Queue
0 ETH0.001662915.56846895
Process Redempti...207638902024-09-16 14:52:1117 days ago1726498331IN
Syrup: Withdrawal Manager Queue
0 ETH0.0060136511.89106149
Process Redempti...207427042024-09-13 15:51:4720 days ago1726242707IN
Syrup: Withdrawal Manager Queue
0 ETH0.002055077.29962978
Process Redempti...207423212024-09-13 14:34:3520 days ago1726238075IN
Syrup: Withdrawal Manager Queue
0 ETH0.001015433.60683375
Process Redempti...207369172024-09-12 20:28:1120 days ago1726172891IN
Syrup: Withdrawal Manager Queue
0 ETH0.000996523.33725167
Process Redempti...207361522024-09-12 17:54:2321 days ago1726163663IN
Syrup: Withdrawal Manager Queue
0 ETH0.0064760710.78005392
Process Redempti...207325052024-09-12 5:40:3521 days ago1726119635IN
Syrup: Withdrawal Manager Queue
0 ETH0.001963132.00162755
Process Redempti...206924152024-09-06 15:21:5927 days ago1725636119IN
Syrup: Withdrawal Manager Queue
0 ETH0.0072655924.32966162
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
199203662024-05-21 19:27:47135 days ago1716319667  Contract Creation0 ETH
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
File 1 of 3 : Proxy.sol
// 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())
            }
        }
    }

}

File 2 of 3 : IDefaultImplementationBeacon.sol
// 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_);

}

File 3 of 3 : SlotManipulatable.sol
// 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_)
        }
    }

}

Settings
{
  "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

Contract ABI

[{"inputs":[{"internalType":"address","name":"factory_","type":"address"},{"internalType":"address","name":"implementation_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]

Deployed Bytecode

0x60806040526000602d7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90506001600160a01b0381163b604257600080fd5b3660008037600080366000845af43d6000803e8080156060573d6000f35b3d6000fdfea2646970667358221220c8872fc7fbfd8b65110f1223c01eeccb9f4a10ea824be092efdc9476b129c14964736f6c63430008070033

Block Transaction Difficulty 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
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.