ETH Price: $3,440.10 (-1.93%)
Gas: 27 Gwei

Contract

0xB01b315e32D1D9B5CE93e296D483e1f0aAD39E75
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Deposit130904752021-08-24 21:17:15961 days ago1629839835IN
0xB01b315e...0aAD39E75
0 ETH0.0120665172.07075814
Deposit130904632021-08-24 21:14:37961 days ago1629839677IN
0xB01b315e...0aAD39E75
0 ETH0.0122989273.46410813
Deposit130903922021-08-24 20:59:52961 days ago1629838792IN
0xB01b315e...0aAD39E75
0 ETH0.01679049100.29328129
Withdraw130902852021-08-24 20:32:19961 days ago1629837139IN
0xB01b315e...0aAD39E75
0 ETH0.01719494101.88810814
Withdraw130902712021-08-24 20:28:32961 days ago1629836912IN
0xB01b315e...0aAD39E75
0 ETH0.0129063676.48172152
Deposit130873042021-08-24 9:50:46962 days ago1629798646IN
0xB01b315e...0aAD39E75
0 ETH0.0065271438.99083895
Deposit130869262021-08-24 8:22:57962 days ago1629793377IN
0xB01b315e...0aAD39E75
0 ETH0.0095161556.84207271
Deposit130869222021-08-24 8:22:00962 days ago1629793320IN
0xB01b315e...0aAD39E75
0 ETH0.0093161.93707071
Deposit130869092021-08-24 8:17:45962 days ago1629793065IN
0xB01b315e...0aAD39E75
0 ETH0.0094653156.53839494
Deposit130869022021-08-24 8:16:54962 days ago1629793014IN
0xB01b315e...0aAD39E75
0 ETH0.0106487563.60733929
Deposit130869022021-08-24 8:16:54962 days ago1629793014IN
0xB01b315e...0aAD39E75
0 ETH0.0107333166
Deposit130868132021-08-24 7:58:11962 days ago1629791891IN
0xB01b315e...0aAD39E75
0 ETH0.0099391659.37302143
Deposit130867542021-08-24 7:41:33962 days ago1629790893IN
0xB01b315e...0aAD39E75
0 ETH0.0085185250.88661723
Withdraw130867072021-08-24 7:31:18962 days ago1629790278IN
0xB01b315e...0aAD39E75
0 ETH0.0101366760.06452855
Deposit130848822021-08-24 0:41:28962 days ago1629765688IN
0xB01b315e...0aAD39E75
0 ETH0.0074434444.4708729
Deposit130734312021-08-22 6:12:51964 days ago1629612771IN
0xB01b315e...0aAD39E75
0 ETH0.0041420724.74504914
Deposit130731692021-08-22 5:14:52964 days ago1629609292IN
0xB01b315e...0aAD39E75
0 ETH0.0035353421.12041201
Deposit130727092021-08-22 3:31:01964 days ago1629603061IN
0xB01b315e...0aAD39E75
0 ETH0.0029526517.63809182
Deposit130723472021-08-22 2:17:43964 days ago1629598663IN
0xB01b315e...0aAD39E75
0 ETH0.0056280133.61734335
Deposit130723212021-08-22 2:11:18964 days ago1629598278IN
0xB01b315e...0aAD39E75
0 ETH0.0054414632.50536331
Deposit130722802021-08-22 1:59:25964 days ago1629597565IN
0xB01b315e...0aAD39E75
0 ETH0.0037717625.092581
Withdraw130721362021-08-22 1:26:19964 days ago1629595579IN
0xB01b315e...0aAD39E75
0 ETH0.0033453118
Deposit130715082021-08-21 23:05:15964 days ago1629587115IN
0xB01b315e...0aAD39E75
0 ETH0.0016057425.69108173
Deposit130712642021-08-21 22:10:24964 days ago1629583824IN
0xB01b315e...0aAD39E75
0 ETH0.0050135429.94698847
Deposit130712532021-08-21 22:08:17964 days ago1629583697IN
0xB01b315e...0aAD39E75
0 ETH0.0018349829.35875278
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xD52dc161...8e6007220
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
EIP173Proxy

Compiler Version
v0.7.1+commit.f4a555be

Optimization Enabled:
Yes with 2000 runs

Other Settings:
default evmVersion, MIT license
File 1 of 2 : EIP173Proxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.0;

import "./Proxy.sol";

interface ERC165 {
    function supportsInterface(bytes4 id) external view returns (bool);
}

///@notice Proxy implementing EIP173 for ownership management
contract EIP173Proxy is Proxy {
    // ////////////////////////// EVENTS ///////////////////////////////////////////////////////////////////////

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    // /////////////////////// CONSTRUCTOR //////////////////////////////////////////////////////////////////////

    constructor(
        address implementationAddress,
        bytes memory data,
        address ownerAddress
    ) {
        _setImplementation(implementationAddress, data);
        _setOwner(ownerAddress);
    }

    // ///////////////////// EXTERNAL ///////////////////////////////////////////////////////////////////////////

    function owner() external view returns (address) {
        return _owner();
    }

    function supportsInterface(bytes4 id) external view returns (bool) {
        if (id == 0x01ffc9a7 || id == 0x7f5828d0) {
            return true;
        }
        if (id == 0xFFFFFFFF) {
            return false;
        }

        ERC165 implementation;
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            implementation := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
        }

        // This technically is not standard compliant as it ERC-165 require 30,000 gas which that call cannot ensure, since it is itself inside `supportsInterface`
        // in practise this is unlikely to be an issue
        try implementation.supportsInterface(id) returns (bool support) {
            return support;
        } catch {
            return false;
        }
    }

    function transferOwnership(address newOwner) external onlyOwner {
        _setOwner(newOwner);
    }

    function changeImplementation(address newImplementation, bytes calldata data) external onlyOwner {
        _setImplementation(newImplementation, data);
    }

    // /////////////////////// MODIFIERS ////////////////////////////////////////////////////////////////////////

    modifier onlyOwner() {
        require(msg.sender == _owner(), "NOT_AUTHORIZED");
        _;
    }

    // ///////////////////////// INTERNAL //////////////////////////////////////////////////////////////////////

    function _owner() internal view returns (address adminAddress) {
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            adminAddress := sload(0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103)
        }
    }

    function _setOwner(address newOwner) internal {
        address previousOwner = _owner();
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            sstore(0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103, newOwner)
        }
        emit OwnershipTransferred(previousOwner, newOwner);
    }
}

File 3 of 2 : Proxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.0;

// EIP-1967
abstract contract Proxy {
    // /////////////////////// EVENTS ///////////////////////////////////////////////////////////////////////////

    event ProxyImplementationUpdated(address indexed previousImplementation, address indexed newImplementation);

    // ///////////////////// EXTERNAL ///////////////////////////////////////////////////////////////////////////

    receive() external payable {
        _fallback();
    }

    fallback() external payable {
        _fallback();
    }

    // ///////////////////////// INTERNAL //////////////////////////////////////////////////////////////////////

    function _fallback() internal {
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            let implementationAddress := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(gas(), implementationAddress, 0x0, calldatasize(), 0, 0)
            let retSz := returndatasize()
            returndatacopy(0, 0, retSz)
            switch success
                case 0 {
                    revert(0, retSz)
                }
                default {
                    return(0, retSz)
                }
        }
    }

    function _setImplementation(address newImplementation, bytes memory data) internal {
        address previousImplementation;
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            previousImplementation := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
        }

        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            sstore(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc, newImplementation)
        }

        emit ProxyImplementationUpdated(previousImplementation, newImplementation);

        if (data.length > 0) {
            (bool success, ) = newImplementation.delegatecall(data);
            if (!success) {
                assembly {
                    // This assembly ensure the revert contains the exact string data
                    let returnDataSize := returndatasize()
                    returndatacopy(0, 0, returnDataSize)
                    revert(0, returnDataSize)
                }
            }
        }
    }
}

Settings
{
  "evmVersion": "istanbul",
  "libraries": {
    "solc_0.7/proxy/EIP173Proxy.sol:EIP173Proxy": {
      "Accountant": "0x22225d74Bab7E0c7232864EaA0F143B30C811481"
    }
  },
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 2000
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"implementationAddress","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"address","name":"ownerAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousImplementation","type":"address"},{"indexed":true,"internalType":"address","name":"newImplementation","type":"address"}],"name":"ProxyImplementationUpdated","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"changeImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"id","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x6080604052600436106100435760003560e01c806301ffc9a71461005a57806331124171146100ba5780638da5cb5b14610147578063f2fde38b1461017857610052565b36610052576100506101ab565b005b6100506101ab565b34801561006657600080fd5b506100a66004803603602081101561007d57600080fd5b50357fffffffff00000000000000000000000000000000000000000000000000000000166101f6565b604080519115158252519081900360200190f35b3480156100c657600080fd5b50610050600480360360408110156100dd57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561010857600080fd5b82018360208201111561011a57600080fd5b8035906020019184600183028401116401000000008311171561013c57600080fd5b5090925090506103ac565b34801561015357600080fd5b5061015c610478565b604080516001600160a01b039092168252519081900360200190f35b34801561018457600080fd5b506100506004803603602081101561019b57600080fd5b50356001600160a01b0316610487565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5460003681823780813683855af491503d8082833e8280156101ec578183f35b8183fd5b50505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061028957507f7f5828d0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b15610296575060016103a7565b7fffffffff0000000000000000000000000000000000000000000000000000000080831614156102c8575060006103a7565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54604080517f01ffc9a70000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000008516600482015290516001600160a01b038316916301ffc9a7916024808301926020929190829003018186803b15801561036b57600080fd5b505afa92505050801561039057506040513d602081101561038b57600080fd5b505160015b61039e5760009150506103a7565b91506103a79050565b919050565b6103b461051a565b6001600160a01b0316336001600160a01b03161461043357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a4544000000000000000000000000000000000000604482015290519081900360640190fd5b6104738383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061053f92505050565b505050565b600061048261051a565b905090565b61048f61051a565b6001600160a01b0316336001600160a01b03161461050e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a4544000000000000000000000000000000000000604482015290519081900360640190fd5b61051781610679565b50565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8054908390556040516001600160a01b0380851691908316907f5570d70a002632a7b0b3c9304cc89efb62d8da9eca0dbd7752c83b737906829690600090a3815115610473576000836001600160a01b0316836040518082805190602001908083835b6020831061060057805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090920191602091820191016105c3565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610660576040519150601f19603f3d011682016040523d82523d6000602084013e610665565b606091505b50509050806101f0573d806000803e806000fd5b600061068361051a565b9050817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355816001600160a01b0316816001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505056fea26469706673582212207e688ff04d5e891e17dfc00ca11479fdd77a6de92a8602772d6f1325f2e85a3064736f6c63430007010033

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

Txn 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.