ETH Price: $2,418.01 (-1.23%)
Gas: 1.14 Gwei

Contract

0x6749e20A03104FA2CA16fa8a54b0D4E000FC66f0
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Proxy Assert143084682022-03-02 15:37:55927 days ago1646235475IN
0x6749e20A...000FC66f0
0 ETH0.08133056102.80251484
Proxy Assert141242832022-02-02 3:45:28955 days ago1643773528IN
0x6749e20A...000FC66f0
0 ETH0.029108596.038507
Proxy Assert140424792022-01-20 12:43:15968 days ago1642682595IN
0x6749e20A...000FC66f0
0 ETH0.0266675487.24065305
Proxy Assert139175122022-01-01 4:56:31987 days ago1641012991IN
0x6749e20A...000FC66f0
0 ETH0.0945246671.31966904
Proxy Assert137507542021-12-06 6:38:501013 days ago1638772730IN
0x6749e20A...000FC66f0
0 ETH0.0283499495.23278671
Proxy Assert137089812021-11-29 13:55:581020 days ago1638194158IN
0x6749e20A...000FC66f0
0 ETH0.0461818399.97841683
Proxy Assert136423792021-11-18 23:57:181030 days ago1637279838IN
0x6749e20A...000FC66f0
0 ETH0.07991488128.58305974
Proxy Assert136423442021-11-18 23:47:551030 days ago1637279275IN
0x6749e20A...000FC66f0
0 ETH0.21216343130.47844977
Proxy Assert136419402021-11-18 22:16:371031 days ago1637273797IN
0x6749e20A...000FC66f0
0 ETH0.15542389174.03112651
Proxy Assert136412582021-11-18 19:40:231031 days ago1637264423IN
0x6749e20A...000FC66f0
0 ETH0.145155107.50279658

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
120260592021-03-12 21:15:021282 days ago1615583702  Contract Creation0 ETH
Loading...
Loading

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

Contract Name:
OwnableDelegateProxy

Compiler Version
v0.4.23+commit.124ca40d

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-12-19
*/

contract OwnedUpgradeabilityStorage {

  // Current implementation
  address internal _implementation;

  // Owner of the contract
  address private _upgradeabilityOwner;

  /**
   * @dev Tells the address of the owner
   * @return the address of the owner
   */
  function upgradeabilityOwner() public view returns (address) {
    return _upgradeabilityOwner;
  }

  /**
   * @dev Sets the address of the owner
   */
  function setUpgradeabilityOwner(address newUpgradeabilityOwner) internal {
    _upgradeabilityOwner = newUpgradeabilityOwner;
  }

  /**
  * @dev Tells the address of the current implementation
  * @return address of the current implementation
  */
  function implementation() public view returns (address) {
    return _implementation;
  }

  /**
  * @dev Tells the proxy type (EIP 897)
  * @return Proxy type, 2 for forwarding proxy
  */
  function proxyType() public pure returns (uint256 proxyTypeId) {
    return 2;
  }
}



contract Proxy {

  /**
  * @dev Tells the address of the implementation where every call will be delegated.
  * @return address of the implementation to which it will be delegated
  */
  function implementation() public view returns (address);

  /**
  * @dev Tells the type of proxy (EIP 897)
  * @return Type of proxy, 2 for upgradeable proxy
  */
  function proxyType() public pure returns (uint256 proxyTypeId);

  /**
  * @dev Fallback function allowing to perform a delegatecall to the given implementation.
  * This function will return whatever the implementation call returns
  */
  function () payable public {
    address _impl = implementation();
    require(_impl != address(0));

    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) }
    }
  }
}

contract OwnedUpgradeabilityProxy is Proxy, OwnedUpgradeabilityStorage {
  /**
  * @dev Event to show ownership has been transferred
  * @param previousOwner representing the address of the previous owner
  * @param newOwner representing the address of the new owner
  */
  event ProxyOwnershipTransferred(address previousOwner, address newOwner);

  /**
  * @dev This event will be emitted every time the implementation gets upgraded
  * @param implementation representing the address of the upgraded implementation
  */
  event Upgraded(address indexed implementation);

  /**
  * @dev Upgrades the implementation address
  * @param implementation representing the address of the new implementation to be set
  */
  function _upgradeTo(address implementation) internal {
    require(_implementation != implementation);
    _implementation = implementation;
    emit Upgraded(implementation);
  }

  /**
  * @dev Throws if called by any account other than the owner.
  */
  modifier onlyProxyOwner() {
    require(msg.sender == proxyOwner());
    _;
  }

  /**
   * @dev Tells the address of the proxy owner
   * @return the address of the proxy owner
   */
  function proxyOwner() public view returns (address) {
    return upgradeabilityOwner();
  }

  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferProxyOwnership(address newOwner) public onlyProxyOwner {
    require(newOwner != address(0));
    emit ProxyOwnershipTransferred(proxyOwner(), newOwner);
    setUpgradeabilityOwner(newOwner);
  }

  /**
   * @dev Allows the upgradeability owner to upgrade the current implementation of the proxy.
   * @param implementation representing the address of the new implementation to be set.
   */
  function upgradeTo(address implementation) public onlyProxyOwner {
    _upgradeTo(implementation);
  }

  /**
   * @dev Allows the upgradeability owner to upgrade the current implementation of the proxy
   * and delegatecall the new implementation for initialization.
   * @param implementation representing the address of the new implementation to be set.
   * @param data represents the msg.data to bet sent in the low level call. This parameter may include the function
   * signature of the implementation to be called with the needed payload
   */
  function upgradeToAndCall(address implementation, bytes data) payable public onlyProxyOwner {
    upgradeTo(implementation);
    require(address(this).delegatecall(data));
  }
}


contract OwnableDelegateProxy is OwnedUpgradeabilityProxy {

    constructor(address owner, address initialImplementation, bytes calldata)
        public
    {
        setUpgradeabilityOwner(owner);
        _upgradeTo(initialImplementation);
        require(initialImplementation.delegatecall(calldata));
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"proxyOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"implementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"proxyTypeId","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"implementation","type":"address"},{"name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upgradeabilityOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferProxyOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"owner","type":"address"},{"name":"initialImplementation","type":"address"},{"name":"calldata","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"previousOwner","type":"address"},{"indexed":false,"name":"newOwner","type":"address"}],"name":"ProxyOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"implementation","type":"address"}],"name":"Upgraded","type":"event"}]

Deployed Bytecode

0x6080604052600436106100825763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663025313a281146100c85780633659cfe6146100f95780634555d5c91461011c5780634f1ef286146101435780635c60da1b1461019d5780636fde8202146101b2578063f1739cae146101c7575b600061008c6101e8565b9050600160a060020a03811615156100a357600080fd5b60405136600082376000803683855af43d806000843e8180156100c4578184f35b8184fd5b3480156100d457600080fd5b506100dd6101f7565b60408051600160a060020a039092168252519081900360200190f35b34801561010557600080fd5b5061011a600160a060020a0360043516610206565b005b34801561012857600080fd5b50610131610239565b60408051918252519081900360200190f35b60408051602060046024803582810135601f810185900485028601850190965285855261011a958335600160a060020a031695369560449491939091019190819084018382808284375094975061023e9650505050505050565b3480156101a957600080fd5b506100dd6101e8565b3480156101be57600080fd5b506100dd6102f2565b3480156101d357600080fd5b5061011a600160a060020a0360043516610301565b600054600160a060020a031690565b60006102016102f2565b905090565b61020e6101f7565b600160a060020a031633600160a060020a031614151561022d57600080fd5b61023681610391565b50565b600290565b6102466101f7565b600160a060020a031633600160a060020a031614151561026557600080fd5b61026e82610206565b30600160a060020a03168160405180828051906020019080838360005b838110156102a357818101518382015260200161028b565b50505050905090810190601f1680156102d05780820380516001836020036101000a031916815260200191505b50915050600060405180830381855af491505015156102ee57600080fd5b5050565b600154600160a060020a031690565b6103096101f7565b600160a060020a031633600160a060020a031614151561032857600080fd5b600160a060020a038116151561033d57600080fd5b7f5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd96103666101f7565b60408051600160a060020a03928316815291841660208301528051918290030190a161023681610401565b600054600160a060020a03828116911614156103ac57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038316908117825560405190917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b91a250565b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790555600a165627a7a723058205f26049bbc794226b505f589b2ee1130db54310d79dd8a635c6f6c61e305a7770029

Deployed Bytecode Sourcemap

4682:323:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1637:13;1653:16;:14;:16::i;:::-;1637:32;-1:-1:-1;;;;;;1684:19:0;;;;1676:28;;;;;;1748:4;1742:11;1782:12;1779:1;1774:3;1761:34;1864:1;1861;1847:12;1842:3;1835:5;1830:3;1817:49;1886:14;1931:4;1928:1;1923:3;1908:28;1953:6;1967:28;;;;2025:4;2020:3;2013:17;1967:28;1988:4;1983:3;1976:17;3248:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3248:93:0;;;;;;;;-1:-1:-1;;;;;3248:93:0;;;;;;;;;;;;;;3929:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3929:104:0;-1:-1:-1;;;;;3929:104:0;;;;;;;897:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;897:84:0;;;;;;;;;;;;;;;;;;;;4495:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4495:178:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4495:178:0;;-1:-1:-1;4495:178:0;;-1:-1:-1;;;;;;;4495:178:0;698:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;698:91:0;;;;277:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;277:101:0;;;;3508:216;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3508:216:0;-1:-1:-1;;;;;3508:216:0;;;;;698:91;745:7;768:15;-1:-1:-1;;;;;768:15:0;698:91;:::o;3248:93::-;3291:7;3314:21;:19;:21::i;:::-;3307:28;;3248:93;:::o;3929:104::-;3108:12;:10;:12::i;:::-;-1:-1:-1;;;;;3094:26:0;:10;-1:-1:-1;;;;;3094:26:0;;3086:35;;;;;;;;4001:26;4012:14;4001:10;:26::i;:::-;3929:104;:::o;897:84::-;974:1;897:84;:::o;4495:178::-;3108:12;:10;:12::i;:::-;-1:-1:-1;;;;;3094:26:0;:10;-1:-1:-1;;;;;3094:26:0;;3086:35;;;;;;;;4594:25;4604:14;4594:9;:25::i;:::-;4642:4;-1:-1:-1;;;;;4634:26:0;4661:4;4634:32;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;4634:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4626:41;;;;;;;;4495:178;;:::o;277:101::-;352:20;;-1:-1:-1;;;;;352:20:0;277:101;:::o;3508:216::-;3108:12;:10;:12::i;:::-;-1:-1:-1;;;;;3094:26:0;:10;-1:-1:-1;;;;;3094:26:0;;3086:35;;;;;;;;-1:-1:-1;;;;;3595:22:0;;;;3587:31;;;;;;3630:49;3656:12;:10;:12::i;:::-;3630:49;;;-1:-1:-1;;;;;3630:49:0;;;;;;;;;;;;;;;;;;;;;3686:32;3709:8;3686:22;:32::i;2787:183::-;2855:15;;-1:-1:-1;;;;;2855:33:0;;;:15;;:33;;2847:42;;;;;;2896:15;:32;;-1:-1:-1;;2896:32:0;-1:-1:-1;;;;;2896:32:0;;;;;;;2940:24;;2896:32;;2940:24;;;2787:183;:::o;439:131::-;519:20;:45;;-1:-1:-1;;519:45:0;-1:-1:-1;;;;;519:45:0;;;;;;;;;;439:131::o

Swarm Source

bzzr://5f26049bbc794226b505f589b2ee1130db54310d79dd8a635c6f6c61e305a777

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.