MATIC Price: $1.01 (-2.76%)
Gas: 161 GWei
 
Transaction Hash
Method
Block
From
To
Value
Downgrade412152882023-04-06 14:44:24356 days ago1680792264IN
0x84B2e92E...dC5d21aC6
0 MATIC0.02699041135
Transfer401611212023-03-09 22:26:01384 days ago1678400761IN
0x84B2e92E...dC5d21aC6
0 MATIC0.02218409144.71222881
Downgrade199507322021-10-07 16:19:42902 days ago1633623582IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0044391330
Downgrade189015112021-09-09 1:40:13931 days ago1631151613IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018208615
Downgrade189013452021-09-09 1:34:29931 days ago1631151269IN
0x84B2e92E...dC5d21aC6
0 MATIC0.001092739
Downgrade188960032021-09-08 22:03:45931 days ago1631138625IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0023064219
Downgrade188960032021-09-08 22:03:45931 days ago1631138625IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0023064219
Downgrade188958702021-09-08 21:58:55931 days ago1631138335IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018208615
Downgrade188958612021-09-08 21:58:19931 days ago1631138299IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018208615
Downgrade188957212021-09-08 21:51:43931 days ago1631137903IN
0x84B2e92E...dC5d21aC6
0 MATIC0.001092739
Downgrade188892652021-09-08 17:34:26931 days ago1631122466IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018208615
Downgrade188806312021-09-08 11:48:31932 days ago1631101711IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018210415
Downgrade188799452021-09-08 11:22:51932 days ago1631100171IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0030353725
Downgrade188794022021-09-08 11:01:59932 days ago1631098919IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0030353725
Downgrade188793282021-09-08 10:59:27932 days ago1631098767IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0026954122.2
Downgrade188410672021-09-07 8:39:12933 days ago1631003952IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0059586349.284
Downgrade188248452021-09-06 22:02:00933 days ago1630965720IN
0x84B2e92E...dC5d21aC6
0 MATIC0.000686567
Downgrade188247782021-09-06 21:59:42933 days ago1630965582IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018212215
Downgrade188246732021-09-06 21:56:04933 days ago1630965364IN
0x84B2e92E...dC5d21aC6
0 MATIC0.00012141
Downgrade188246522021-09-06 21:55:22933 days ago1630965322IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018569225
Downgrade188245982021-09-06 21:53:30933 days ago1630965210IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0030353725
Downgrade188242052021-09-06 21:35:43933 days ago1630964143IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0030353725
Downgrade188239342021-09-06 21:26:21933 days ago1630963581IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018212215
Downgrade188239052021-09-06 21:25:23933 days ago1630963523IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0030350725
Downgrade188237172021-09-06 21:18:55933 days ago1630963135IN
0x84B2e92E...dC5d21aC6
0 MATIC0.0018212215
View all transactions

Latest 1 internal transaction

Parent Txn Hash Block From To Value
141959382021-05-07 9:11:361056 days ago1620378696  Contract Creation0 MATIC
Loading...
Loading

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

Contract Name:
UUPSProxy

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : UUPSProxy.sol
// SPDX-License-Identifier: AGPLv3
pragma solidity 0.7.6;

import { UUPSUtils } from "./UUPSUtils.sol";
import { Proxy } from "@openzeppelin/contracts/proxy/Proxy.sol";


/**
 * @dev UUPS (Universal Upgradeable Proxy Standard) Proxy
 *
 * NOTE:
 * - Compliant with [Universal Upgradeable Proxy Standard](https://eips.ethereum.org/EIPS/eip-1822)
 * - Compiiant with [Standard Proxy Storage Slots](https://eips.ethereum.org/EIPS/eip-1967)
 * - Implements delegation of calls to other contracts, with proper forwarding of
 *   return values and bubbling of failures.
 * - It defines a fallback function that delegates all calls to the implementation.
 */
contract UUPSProxy is Proxy {

    /**
     * @dev Proxy initialization function.
     *      This should only be called once and it is permission-less.
     * @param initialAddress Initial logic contract code address to be used.
     */
    function initializeProxy(address initialAddress) external {
        require(initialAddress != address(0), "UUPSProxy: zero address");
        require(UUPSUtils.implementation() == address(0), "UUPSProxy: already initialized");
        UUPSUtils.setImplementation(initialAddress);
    }

    /// @dev Proxy._implementation implementation
    function _implementation() internal virtual override view returns (address)
    {
        return UUPSUtils.implementation();
    }

}

File 2 of 3 : UUPSUtils.sol
// SPDX-License-Identifier: AGPLv3
pragma solidity 0.7.6;

/**
 * @title UUPS (Universal Upgradeable Proxy Standard) Shared Library
 */
library UUPSUtils {

    /**
     * @dev Implementation slot constant.
     * Using https://eips.ethereum.org/EIPS/eip-1967 standard
     * Storage slot 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
     * (obtained as bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)).
     */
    bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    /// @dev Get implementation address.
    function implementation() internal view returns (address impl) {
        assembly { // solium-disable-line
            impl := sload(_IMPLEMENTATION_SLOT)
        }
    }

    /// @dev Set new implementation address.
    function setImplementation(address codeAddress) internal {
        assembly {
            // solium-disable-line
            sstore(
                _IMPLEMENTATION_SLOT,
                codeAddress
            )
        }
    }

}

File 3 of 3 : Proxy.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.7.0;

/**
 * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
 * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to
 * be specified by overriding the virtual {_implementation} function.
 * 
 * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a
 * different contract through the {_delegate} function.
 * 
 * The success and return data of the delegated call will be returned back to the caller of the proxy.
 */
abstract contract Proxy {
    /**
     * @dev Delegates the current call to `implementation`.
     * 
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _delegate(address implementation) internal {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            // Copy msg.data. We take full control of memory in this inline assembly
            // block because it will not return to Solidity code. We overwrite the
            // Solidity scratch pad at memory position 0.
            calldatacopy(0, 0, calldatasize())

            // Call the implementation.
            // out and outsize are 0 because we don't know the size yet.
            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

            // Copy the returned data.
            returndatacopy(0, 0, returndatasize())

            switch result
            // delegatecall returns 0 on error.
            case 0 { revert(0, returndatasize()) }
            default { return(0, returndatasize()) }
        }
    }

    /**
     * @dev This is a virtual function that should be overriden so it returns the address to which the fallback function
     * and {_fallback} should delegate.
     */
    function _implementation() internal virtual view returns (address);

    /**
     * @dev Delegates the current call to the address returned by `_implementation()`.
     * 
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _fallback() internal {
        _beforeFallback();
        _delegate(_implementation());
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other
     * function in the contract matches the call data.
     */
    fallback () external payable {
        _fallback();
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if call data
     * is empty.
     */
    receive () external payable {
        _fallback();
    }

    /**
     * @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback`
     * call, or as part of the Solidity `fallback` or `receive` functions.
     * 
     * If overriden should call `super._beforeFallback()`.
     */
    function _beforeFallback() internal virtual {
    }
}

Settings
{
  "remappings": [],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "istanbul",
  "libraries": {},
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"initialAddress","type":"address"}],"name":"initializeProxy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x6080604052600436106100225760003560e01c80634a0687ef1461003957610031565b366100315761002f61006c565b005b61002f61006c565b34801561004557600080fd5b5061002f6004803603602081101561005c57600080fd5b50356001600160a01b0316610086565b610074610084565b61008461007f610152565b610161565b565b6001600160a01b0381166100e1576040805162461bcd60e51b815260206004820152601760248201527f5555505350726f78793a207a65726f2061646472657373000000000000000000604482015290519081900360640190fd5b60006100eb610185565b6001600160a01b031614610146576040805162461bcd60e51b815260206004820152601e60248201527f5555505350726f78793a20616c726561647920696e697469616c697a65640000604482015290519081900360640190fd5b61014f816101aa565b50565b600061015c610185565b905090565b3660008037600080366000845af43d6000803e808015610180573d6000f35b3d6000fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fea26469706673582212202daeec886d68c80aa0761995b07a1c91f9ccdae2b6c06be5669b5ab188bd89ba64736f6c63430007060033

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  ]
[ 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.