ETH Price: $3,386.89 (-1.74%)
Gas: 1 Gwei

Token

Render Token (RNDR)
 

Overview

Max Total Supply

532,077,324.735491621867838809 RNDR

Holders

100,281 (0.00%)

Market

Price

$7.39 @ 0.002182 ETH (-4.78%)

Onchain Market Cap

$3,932,051,429.80

Circulating Supply Market Cap

$2,869,832,188.00

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Wealthsimple 1
Balance
3,834.047522133 RNDR

Value
$28,333.61 ( ~8.3657 Eth) [0.0007%]
0xa21a16ec22a940990922220e4ab5bf4c2310f556
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

RNDR (Render Network) bridges GPUs across the world in order to provide much-needed power to artists, studios, and developers who rely on high-quality rendering to power their creations. The mission is to bridge the gap between GPU supply/demand through the use of distributed GPU computing.

Market

Volume (24H):$107,188,372.00
Market Capitalization:$2,869,832,188.00
Circulating Supply:388,650,384.00 RNDR
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume
1
Binance
RNDR-USDT$7.39
0.0021819 Eth
$25,224,909.00
3,365,916.050 RNDR
23.7676%
2
Coinbase Exchange
RNDR-USD$7.38
0.0021788 Eth
$14,088,592.00
1,910,032.720 RNDR
13.4872%
3
Bitunix
RNDR-USDT$7.38
0.0021789 Eth
$9,389,261.00
1,272,570.750 RNDR
8.9859%
4
Bitget
RNDR-USDT$7.38
0.0021800 Eth
$6,038,071.00
805,346.975 RNDR
5.6868%
5
Bybit
RNDR-USDT$7.38
0.0021796 Eth
$4,463,898.00
595,580.820 RNDR
4.2055%
6
WhiteBIT
RNDR-USDT$7.38
0.0021803 Eth
$3,871,327.00
524,499.460 RNDR
3.7036%
7
Gate.io
RNDR-USDT$7.38
0.0021808 Eth
$3,059,807.00
407,136.340 RNDR
2.8749%
8
OKX
RNDR-USDT$7.38
0.0021813 Eth
$2,996,369.00
399,190.119 RNDR
2.8188%
9
OrangeX
RNDR-USDT$7.39
0.0021827 Eth
$2,676,766.00
357,421.400 RNDR
2.5238%
10
KuCoin
RNDR-USDT$7.39
0.0021826 Eth
$2,550,919.00
345,363.055 RNDR
2.4387%
11
BloFin
RNDR-USDT$7.39
0.0021832 Eth
$2,438,556.00
325,293.380 RNDR
2.2970%
12
CoinW
RNDR-USDT$7.38
0.0021804 Eth
$2,330,465.00
315,833.660 RNDR
2.2302%
13
AscendEX (BitMax)
RNDR-USDT$7.35
0.0021731 Eth
$2,146,015.00
291,810.050 RNDR
2.0605%
14
Bitvavo
RNDR-EUR$7.39
0.0021833 Eth
$2,138,146.00
289,147.100 RNDR
2.0417%
15
bitcastle
RNDR-USDT$7.38
0.0021792 Eth
$1,893,852.00
252,928.930 RNDR
1.7860%
16
Deepcoin
RNDR-USDT$7.38
0.0021783 Eth
$1,620,922.00
224,242.736 RNDR
1.5834%
17
Coinbase Exchange
RNDR-USDT$7.38
0.0021798 Eth
$1,278,427.00
173,241.900 RNDR
1.2233%
18
Binance
RNDR-BTC$7.39
0.0021832 Eth
$1,218,833.00
163,855.250 RNDR
1.1570%
19
FameEX
RNDR-USDT$7.39
0.0021815 Eth
$1,060,973.00
141,550.504 RNDR
0.9995%
20
Bitbank
RNDR-JPY$7.41
0.0021880 Eth
$1,009,091.00
136,226.491 RNDR
0.9619%
21
Bitci TR
RNDR-USDT$7.40
0.0021847 Eth
$989,548.00
131,893.120 RNDR
0.9313%
22
MEXC
RNDR-USDT$7.38
0.0021795 Eth
$627,810.00
85,078.600 RNDR
0.6008%
23
Icrypex
RNDR-USDT$7.39
0.0021831 Eth
$607,320.00
82,168.207 RNDR
0.5802%
24
Kraken
RNDR-USD$7.39
0.0021823 Eth
$605,882.00
82,041.087 RNDR
0.5793%
25
Binance
RNDR-TRY$7.45
0.0022014 Eth
$554,237.00
73,361.600 RNDR
0.5180%
26
Uniswap V3 (Polygon)
0X61299774020DA444AF134C82FA83E3810B309991-0X0D500B1D8E8EF31E21C99D1DB9A6444D3ADF1270$7.42
0.0021891 Eth
$550,106.00
73,501.885 0X61299774020DA444AF134C82FA83E3810B309991
0.5190%
27
Uniswap V3 (Polygon)
0X61299774020DA444AF134C82FA83E3810B309991-0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619$7.40
0.0021844 Eth
$487,161.00
65,580.457 0X61299774020DA444AF134C82FA83E3810B309991
0.4631%
28
HitBTC
RNDR-USDT$7.39
0.0021819 Eth
$479,513.00
64,008.320 RNDR
0.4520%
29
FMFW.io
RNDR-USDT$7.38
0.0021796 Eth
$472,326.00
64,005.120 RNDR
0.4520%
30
DigiFinex
RNDR-USDT$7.38
0.0021810 Eth
$462,832.00
62,708.520 RNDR
0.4428%
31
WhiteBIT
RNDR-TRY$7.42
0.0021938 Eth
$455,419.00
61,344.000 RNDR
0.4332%
32
WhiteBIT
RNDR-BTC$7.39
0.0021832 Eth
$452,681.00
61,271.770 RNDR
0.4327%
33
PointPay
RNDR-USDT$7.38
0.0021783 Eth
$413,342.00
55,225.839 RNDR
0.3900%
34
BingX
RNDR-USDT$7.37
0.0021793 Eth
$403,279.00
53,870.309 RNDR
0.3804%
35
Binance
RNDR-FDUSD$7.40
0.0021870 Eth
$376,142.00
50,693.950 RNDR
0.3580%
36
Phemex
RNDR-USDT$7.39
0.0021830 Eth
$349,908.00
47,348.730 RNDR
0.3343%
37
Bitrue
RNDR-USDT$7.38
0.0021801 Eth
$349,096.00
47,295.380 RNDR
0.3340%
38
BitMart
RNDR-USDT$7.37
0.0021790 Eth
$300,926.00
40,809.000 RNDR
0.2882%
39
HTX
RNDR-USDT$7.38
0.0021794 Eth
$279,166.00
37,191.632 RNDR
0.2626%
40
Bitci TR
RNDR-TRY$7.48
0.0022082 Eth
$268,730.00
35,568.030 RNDR
0.2512%
41
Hotcoin
RNDR-USDT$7.38
0.0021814 Eth
$268,041.00
36,309.580 RNDR
0.2564%
42
Crypto.com Exchange
RNDR-USD$7.39
0.0021833 Eth
$260,600.00
35,271.000 RNDR
0.2491%
43
Crypto.com Exchange
RNDR-USDT$7.39
0.0021828 Eth
$256,477.00
34,721.000 RNDR
0.2452%
44
Cryptology
RNDR-USDT$7.38
0.0021798 Eth
$237,205.00
32,141.080 RNDR
0.2270%
45
Bitrue
RNDR-USDC$7.38
0.0021802 Eth
$230,268.00
31,195.820 RNDR
0.2203%
46
Uniswap V3 (Ethereum)
0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2$7.31
0.0021579 Eth
$220,197.00
29,951.278 0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24
0.2115%
47
Websea
RNDR-USDT$7.38
0.0021797 Eth
$213,625.00
0.000 RNDR
0.0000%
48
Icrypex
RNDR-TRY$7.40
0.0021869 Eth
$195,529.00
26,411.262 RNDR
0.1865%
49
EXMO
RNDR-USDT$7.39
0.0021844 Eth
$194,814.00
26,344.861 RNDR
0.1860%
50
Gemini
RNDR-USD$7.41
0.0021891 Eth
$175,406.00
23,677.923 RNDR
0.1672%
51
Binance
RNDR-USDC$7.41
0.0021895 Eth
$173,474.00
23,095.450 RNDR
0.1631%
52
Byte Exchange
RNDR-USDT$7.38
0.0021780 Eth
$163,623.00
22,181.730 RNDR
0.1566%
53
PointPay
RNDR-BTC$7.38
0.0021798 Eth
$146,055.00
19,547.906 RNDR
0.1380%
54
Bitrue
RNDR-XRP$7.38
0.0021801 Eth
$145,290.00
19,683.940 RNDR
0.1390%
55
CoinEx
RNDR-USDT$7.38
0.0021810 Eth
$133,274.00
17,774.007 RNDR
0.1255%
56
Uniswap V3 (Ethereum)
0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2$7.31
0.0021583 Eth
$129,336.00
17,416.820 0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24
0.1230%
57
Kraken
RNDR-EUR$7.39
0.0021848 Eth
$120,687.00
16,323.411 RNDR
0.1153%
58
Tapbit
RNDR-USDT$7.38
0.0021805 Eth
$105,358.00
14,071.180 RNDR
0.0994%
59
Upbit
RNDR-BTC$7.42
0.0021920 Eth
$102,670.00
13,840.982 RNDR
0.0977%
60
Uniswap V3 (Polygon)
0X61299774020DA444AF134C82FA83E3810B309991-0X0D500B1D8E8EF31E21C99D1DB9A6444D3ADF1270$7.29
0.0021523 Eth
$98,187.00
13,247.965 0X61299774020DA444AF134C82FA83E3810B309991
0.0935%
61
Byte Exchange
RNDR-TRY$7.43
0.0021930 Eth
$86,203.00
11,606.040 RNDR
0.0820%
62
Coinbase Exchange
RNDR-EUR$7.37
0.0021758 Eth
$82,488.00
11,198.570 RNDR
0.0791%
63
DeGate
0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24-0XA0B86991C6218B36C1D19D4A2E9EB0CE3606EB48$7.41
0.0021861 Eth
$72,124.00
9,574.965 0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24
0.0676%
64
WEEX
RNDR-USDT$7.39
0.0021829 Eth
$66,527.00
8,871.332 RNDR
0.0626%
65
Koinpark
RNDR-USDT$7.38
0.0021795 Eth
$58,807.00
7,969.368 RNDR
0.0563%
66
TokoCrypto
RNDR-USDT$7.38
0.0021797 Eth
$50,163.00
6,794.958 RNDR
0.0480%
67
Indodax
RNDR-IDR$7.45
0.0022004 Eth
$47,865.00
6,428.050 RNDR
0.0454%
68
WOO X
RNDR-USDT$7.38
0.0021789 Eth
$40,074.00
5,430.480 RNDR
0.0383%
69
Uniswap V3 (Polygon)
0X61299774020DA444AF134C82FA83E3810B309991-0XC2132D05D31C914A87C6611C10748AEB04B58E8F$7.42
0.0021885 Eth
$38,795.00
5,146.343 0X61299774020DA444AF134C82FA83E3810B309991
0.0363%
70
PointPay
RNDR-USDC$7.38
0.0021796 Eth
$38,266.00
5,099.412 RNDR
0.0360%
71
Bitkub
RNDR-THB$7.42
0.0021910 Eth
$35,753.00
4,820.112 RNDR
0.0340%
72
Binance
RNDR-BRL$7.42
0.0021934 Eth
$35,506.00
4,767.500 RNDR
0.0337%
73
Mercado Bitcoin
RNDR-BRL$7.43
0.0021962 Eth
$34,005.00
4,575.423 RNDR
0.0323%
74
KuCoin
RNDR-BTC$7.38
0.0021821 Eth
$33,097.00
4,482.036 RNDR
0.0316%
75
Uniswap V3 (Polygon)
0X61299774020DA444AF134C82FA83E3810B309991-0X7CEB23FD6BC0ADD59E62AC25578270CFF1B9F619$7.46
0.0022041 Eth
$31,403.00
4,228.885 0X61299774020DA444AF134C82FA83E3810B309991
0.0299%
76
LATOKEN
RNDR-USDT$7.37
0.0021776 Eth
$24,478.00
3,321.660 RNDR
0.0235%
77
Binance US
RNDR-USDT$7.39
0.0021833 Eth
$20,972.00
2,837.245 RNDR
0.0200%
78
Uniswap V2 (Ethereum)
0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24-0XC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2$7.39
0.0021851 Eth
$20,336.00
2,731.917 0X6DE037EF9AD2725EB40118BB1702EBB27E4AEB24
0.0193%
79
Binance
RNDR-EUR$7.40
0.0021865 Eth
$18,696.10
2,506.130 RNDR
0.0177%
80
Kanga
RNDR-USDT$7.36
0.0021733 Eth
$17,084.00
0.000 RNDR
0.0000%
81
HashKey Global
RNDR-USDT$7.38
0.0021788 Eth
$14,970.48
1,988.240 RNDR
0.0140%
82
Uniswap V3 (Polygon)
0X3C499C542CEF5E3811E1192CE70D8CC03D5C3359-0X61299774020DA444AF134C82FA83E3810B309991$7.29
0.0021524 Eth
$12,828.19
13,216.999 0X3C499C542CEF5E3811E1192CE70D8CC03D5C3359
0.0933%
83
Bitlo
RNDR-USDT$7.39
0.0021825 Eth
$12,658.90
1,701.450 RNDR
0.0120%
84
Gate.io
RNDR-ETH$7.39
0.0021824 Eth
$9,862.99
1,329.012 RNDR
0.0094%
85
CoinEx
RNDR-BTC$7.37
0.0021777 Eth
$8,307.67
1,112.348 RNDR
0.0079%
86
CoinEx
RNDR-USDC$7.39
0.0021830 Eth
$8,198.40
1,092.999 RNDR
0.0077%
87
HashKey Exchange
RNDR-USD$7.38
0.0021809 Eth
$7,299.91
975.130 RNDR
0.0069%
88
Bitlo
RNDR-TRY$7.45
0.0022013 Eth
$4,667.98
624.348 RNDR
0.0044%
89
OKX
RNDR-USDC$7.35
0.0021717 Eth
$3,496.62
467.221 RNDR
0.0033%
90
Nonkyc.io
RNDR-USDT$7.38
0.0021812 Eth
$3,371.14
448.400 RNDR
0.0032%
91
Nominex
RNDR-TRY$7.43
0.0021981 Eth
$1,835.57
247.197 RNDR
0.0017%
92
Bittime
RNDR-IDR$7.45
0.0022020 Eth
$1,670.80
220.500 RNDR
0.0016%
93
Nonkyc.io
RNDR-BTC$7.44
0.0021962 Eth
$1,214.89
163.160 RNDR
0.0012%
94
FMFW.io
RNDR-BTC$7.40
0.0021860 Eth
$1,106.70
149.530 RNDR
0.0011%
95
Bittime
RNDR-USDT$7.38
0.0021811 Eth
$998.91
129.620 RNDR
0.0009%
96
Nominex
RNDR-BTC$7.37
0.0021834 Eth
$561.04
76.099 RNDR
0.0005%
97
Nominex
RNDR-USDT$7.38
0.0021786 Eth
$323.64
43.862 RNDR
0.0003%
98
TokoCrypto
RNDR-BTC$7.39
0.0021832 Eth
$203.91
27.600 RNDR
0.0002%
99
Nominex
RNDR-USDC$7.38
0.0021784 Eth
$123.30
16.702 RNDR
0.0001%
100
Gate.io
RNDR-TRY$7.41
0.0021885 Eth
$29.74
3.952 RNDR
0.0000%

Contract Source Code Verified (Exact Match)

Contract Name:
AdminUpgradeabilityProxy

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-03-11
*/

/**
 *Submitted for verification at Etherscan.io on 2018-10-22
*/

pragma solidity ^0.4.24;

// File: contracts/upgradeability/Proxy.sol

/**
 * @title Proxy
 * @dev 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 address
 * returned by the abstract _implementation() internal function.
 */
contract Proxy {
  /**
   * @dev Fallback function.
   * Implemented entirely in `_fallback`.
   */
  function () payable external {
    _fallback();
  }

  /**
   * @return The Address of the implementation.
   */
  function _implementation() internal view returns (address);

  /**
   * @dev Delegates execution to an implementation contract.
   * This is a low level function that doesn't return to its internal call site.
   * It will return to the external caller whatever the implementation returns.
   * @param implementation Address to delegate.
   */
  function _delegate(address implementation) internal {
    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 Function that is run as the first thing in the fallback function.
   * Can be redefined in derived contracts to add functionality.
   * Redefinitions must call super._willFallback().
   */
  function _willFallback() internal {
  }

  /**
   * @dev fallback implementation.
   * Extracted to enable manual triggering.
   */
  function _fallback() internal {
    _willFallback();
    _delegate(_implementation());
  }
}

// File: openzeppelin-solidity/contracts/AddressUtils.sol

/**
 * Utility library of inline functions on addresses
 */
library AddressUtils {

  /**
   * Returns whether the target address is a contract
   * @dev This function will return false if invoked during the constructor of a contract,
   *  as the code is not actually created until after the constructor finishes.
   * @param addr address to check
   * @return whether the target address is a contract
   */
  function isContract(address addr) internal view returns (bool) {
    uint256 size;
    // XXX Currently there is no better way to check if there is a contract in an address
    // than to check the size of the code at that address.
    // See https://ethereum.stackexchange.com/a/14016/36603
    // for more details about how this works.
    // TODO Check this again before the Serenity release, because all addresses will be
    // contracts then.
    // solium-disable-next-line security/no-inline-assembly
    assembly { size := extcodesize(addr) }
    return size > 0;
  }

}

// File: contracts/upgradeability/UpgradeabilityProxy.sol

/**
 * @title UpgradeabilityProxy
 * @dev This contract implements a proxy that allows to change the
 * implementation address to which it will delegate.
 * Such a change is called an implementation upgrade.
 */
contract UpgradeabilityProxy is Proxy {
  /**
   * @dev Emitted when the implementation is upgraded.
   * @param implementation Address of the new implementation.
   */
  event Upgraded(address indexed implementation);

  /**
   * @dev Storage slot with the address of the current implementation.
   * This is the keccak-256 hash of "org.zeppelinos.proxy.implementation", and is
   * validated in the constructor.
   */
  bytes32 private constant IMPLEMENTATION_SLOT = 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3;

  /**
   * @dev Contract constructor.
   * @param _implementation Address of the initial implementation.
   * @param _data Data to send as msg.data to the implementation to initialize the proxied contract.
   * It should include the signature and the parameters of the function to be called, as described in
   * https://solidity.readthedocs.io/en/v0.4.24/abi-spec.html#function-selector-and-argument-encoding.
   * This parameter is optional, if no data is given the initialization call to proxied contract will be skipped.
   */
  constructor(address _implementation, bytes _data) public payable {
    assert(IMPLEMENTATION_SLOT == keccak256("org.zeppelinos.proxy.implementation"));
    _setImplementation(_implementation);
    if(_data.length > 0) {
      require(_implementation.delegatecall(_data));
    }
  }

  /**
   * @dev Returns the current implementation.
   * @return Address of the current implementation
   */
  function _implementation() internal view returns (address impl) {
    bytes32 slot = IMPLEMENTATION_SLOT;
    assembly {
      impl := sload(slot)
    }
  }

  /**
   * @dev Upgrades the proxy to a new implementation.
   * @param newImplementation Address of the new implementation.
   */
  function _upgradeTo(address newImplementation) internal {
    _setImplementation(newImplementation);
    emit Upgraded(newImplementation);
  }

  /**
   * @dev Sets the implementation address of the proxy.
   * @param newImplementation Address of the new implementation.
   */
  function _setImplementation(address newImplementation) private {
    require(AddressUtils.isContract(newImplementation), "Cannot set a proxy implementation to a non-contract address");

    bytes32 slot = IMPLEMENTATION_SLOT;

    assembly {
      sstore(slot, newImplementation)
    }
  }
}

// File: contracts/upgradeability/AdminUpgradeabilityProxy.sol

/**
 * @title AdminUpgradeabilityProxy
 * @dev This contract combines an upgradeability proxy with an authorization
 * mechanism for administrative tasks.
 * All external functions in this contract must be guarded by the
 * `ifAdmin` modifier. See ethereum/solidity#3864 for a Solidity
 * feature proposal that would enable this to be done automatically.
 */
contract AdminUpgradeabilityProxy is UpgradeabilityProxy {
  /**
   * @dev Emitted when the administration has been transferred.
   * @param previousAdmin Address of the previous admin.
   * @param newAdmin Address of the new admin.
   */
  event AdminChanged(address previousAdmin, address newAdmin);

  /**
   * @dev Storage slot with the admin of the contract.
   * This is the keccak-256 hash of "org.zeppelinos.proxy.admin", and is
   * validated in the constructor.
   */
  bytes32 private constant ADMIN_SLOT = 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b;

  /**
   * @dev Modifier to check whether the `msg.sender` is the admin.
   * If it is, it will run the function. Otherwise, it will delegate the call
   * to the implementation.
   */
  modifier ifAdmin() {
    if (msg.sender == _admin()) {
      _;
    } else {
      _fallback();
    }
  }

  /**
   * Contract constructor.
   * It sets the `msg.sender` as the proxy administrator.
   * @param _implementation address of the initial implementation.
   * @param _data Data to send as msg.data to the implementation to initialize the proxied contract.
   * It should include the signature and the parameters of the function to be called, as described in
   * https://solidity.readthedocs.io/en/v0.4.24/abi-spec.html#function-selector-and-argument-encoding.
   * This parameter is optional, if no data is given the initialization call to proxied contract will be skipped.
   */
  constructor(address _implementation, bytes _data) UpgradeabilityProxy(_implementation, _data) public payable {
    assert(ADMIN_SLOT == keccak256("org.zeppelinos.proxy.admin"));

    _setAdmin(msg.sender);
  }

  /**
   * @return The address of the proxy admin.
   */
  function admin() external view ifAdmin returns (address) {
    return _admin();
  }

  /**
   * @return The address of the implementation.
   */
  function implementation() external view ifAdmin returns (address) {
    return _implementation();
  }

  /**
   * @dev Changes the admin of the proxy.
   * Only the current admin can call this function.
   * @param newAdmin Address to transfer proxy administration to.
   */
  function changeAdmin(address newAdmin) external ifAdmin {
    require(newAdmin != address(0), "Cannot change the admin of a proxy to the zero address");
    emit AdminChanged(_admin(), newAdmin);
    _setAdmin(newAdmin);
  }

  /**
   * @dev Upgrade the backing implementation of the proxy.
   * Only the admin can call this function.
   * @param newImplementation Address of the new implementation.
   */
  function upgradeTo(address newImplementation) external ifAdmin {
    _upgradeTo(newImplementation);
  }

  /**
   * @dev Upgrade the backing implementation of the proxy and call a function
   * on the new implementation.
   * This is useful to initialize the proxied contract.
   * @param newImplementation Address of the new implementation.
   * @param data Data to send as msg.data in the low level call.
   * It should include the signature and the parameters of the function to be called, as described in
   * https://solidity.readthedocs.io/en/v0.4.24/abi-spec.html#function-selector-and-argument-encoding.
   */
  function upgradeToAndCall(address newImplementation, bytes data) payable external ifAdmin {
    _upgradeTo(newImplementation);
    require(newImplementation.delegatecall(data));
  }

  /**
   * @return The admin slot.
   */
  function _admin() internal view returns (address adm) {
    bytes32 slot = ADMIN_SLOT;
    assembly {
      adm := sload(slot)
    }
  }

  /**
   * @dev Sets the address of the proxy admin.
   * @param newAdmin Address of the new proxy admin.
   */
  function _setAdmin(address newAdmin) internal {
    bytes32 slot = ADMIN_SLOT;

    assembly {
      sstore(slot, newAdmin)
    }
  }

  /**
   * @dev Only fall back when the sender is not the admin.
   */
  function _willFallback() internal {
    require(msg.sender != _admin(), "Cannot call fallback function from the proxy admin");
    super._willFallback();
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newImplementation","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":false,"inputs":[{"name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_implementation","type":"address"},{"name":"_data","type":"bytes"}],"payable":true,"stateMutability":"payable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"previousAdmin","type":"address"},{"indexed":false,"name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"implementation","type":"address"}],"name":"Upgraded","type":"event"}]

6080604052604051610b9f380380610b9f8339810180604052810190808051906020019092919080518201929190505050818160405180807f6f72672e7a657070656c696e6f732e70726f78792e696d706c656d656e74617481526020017f696f6e000000000000000000000000000000000000000000000000000000000081525060230190506040518091039020600019167f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3600102600019161415156100c357fe5b6100db82610202640100000000026401000000009004565b600081511115610176578173ffffffffffffffffffffffffffffffffffffffff168160405180828051906020019080838360005b8381101561012a57808201518184015260208101905061010f565b50505050905090810190601f1680156101575780820380516001836020036101000a031916815260200191505b50915050600060405180830381855af4915050151561017557600080fd5b5b505060405180807f6f72672e7a657070656c696e6f732e70726f78792e61646d696e000000000000815250601a0190506040518091039020600019167f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b600102600019161415156101e357fe5b6101fb336102e7640100000000026401000000009004565b5050610329565b60006102208261031664010000000002610828176401000000009004565b15156102ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b8152602001807f43616e6e6f742073657420612070726f787920696d706c656d656e746174696f81526020017f6e20746f2061206e6f6e2d636f6e74726163742061646472657373000000000081525060400191505060405180910390fd5b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b600080823b905060008111915050919050565b610867806103386000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633659cfe6146100775780634f1ef286146100ba5780635c60da1b146101085780638f2839701461015f578063f851a440146101a2575b6100756101f9565b005b34801561008357600080fd5b506100b8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610213565b005b610106600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001919091929391929390505050610268565b005b34801561011457600080fd5b5061011d610305565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561016b57600080fd5b506101a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061035d565b005b3480156101ae57600080fd5b506101b761051b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610201610573565b61021161020c61064e565b61067f565b565b61021b6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561025c57610257816106d6565b610265565b6102646101f9565b5b50565b6102706106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102f7576102ac836106d6565b8273ffffffffffffffffffffffffffffffffffffffff16828260405180838380828437820191505092505050600060405180830381855af491505015156102f257600080fd5b610300565b6102ff6101f9565b5b505050565b600061030f6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103515761034a61064e565b905061035a565b6103596101f9565b5b90565b6103656106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561050f57600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610463576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001807f43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f81526020017f787920746f20746865207a65726f20616464726573730000000000000000000081525060400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61048c6106a5565b82604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a161050a81610725565b610518565b6105176101f9565b5b50565b60006105256106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610567576105606106a5565b9050610570565b61056f6101f9565b5b90565b61057b6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610644576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001807f43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e20667281526020017f6f6d207468652070726f78792061646d696e000000000000000000000000000081525060400191505060405180910390fd5b61064c610754565b565b6000807f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001029050805491505090565b3660008037600080366000845af43d6000803e80600081146106a0573d6000f35b3d6000fd5b6000807f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b6001029050805491505090565b6106df81610756565b8073ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a250565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b565b600061076182610828565b15156107fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b8152602001807f43616e6e6f742073657420612070726f787920696d706c656d656e746174696f81526020017f6e20746f2061206e6f6e2d636f6e74726163742061646472657373000000000081525060400191505060405180910390fd5b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b600080823b9050600081119150509190505600a165627a7a72305820f82e8b87e97893a49b8bd4d7b939f667ecf5bb0557066c581f98354d9f5ade5200290000000000000000000000001a1fdf27c5e6784d1cebf256a8a5cc0877e73af000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000044485cc955000000000000000000000000b4ed31195d1ad52f868dfc6a607e97d6773927f60000000000000000000000000996bfb5d057faa237640e2506be7b4f9c46de0b00000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x60806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633659cfe6146100775780634f1ef286146100ba5780635c60da1b146101085780638f2839701461015f578063f851a440146101a2575b6100756101f9565b005b34801561008357600080fd5b506100b8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610213565b005b610106600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001919091929391929390505050610268565b005b34801561011457600080fd5b5061011d610305565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561016b57600080fd5b506101a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061035d565b005b3480156101ae57600080fd5b506101b761051b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610201610573565b61021161020c61064e565b61067f565b565b61021b6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561025c57610257816106d6565b610265565b6102646101f9565b5b50565b6102706106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156102f7576102ac836106d6565b8273ffffffffffffffffffffffffffffffffffffffff16828260405180838380828437820191505092505050600060405180830381855af491505015156102f257600080fd5b610300565b6102ff6101f9565b5b505050565b600061030f6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156103515761034a61064e565b905061035a565b6103596101f9565b5b90565b6103656106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561050f57600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610463576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001807f43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f81526020017f787920746f20746865207a65726f20616464726573730000000000000000000081525060400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61048c6106a5565b82604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a161050a81610725565b610518565b6105176101f9565b5b50565b60006105256106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610567576105606106a5565b9050610570565b61056f6101f9565b5b90565b61057b6106a5565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151515610644576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001807f43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e20667281526020017f6f6d207468652070726f78792061646d696e000000000000000000000000000081525060400191505060405180910390fd5b61064c610754565b565b6000807f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36001029050805491505090565b3660008037600080366000845af43d6000803e80600081146106a0573d6000f35b3d6000fd5b6000807f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b6001029050805491505090565b6106df81610756565b8073ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a250565b60007f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b60010290508181555050565b565b600061076182610828565b15156107fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b8152602001807f43616e6e6f742073657420612070726f787920696d706c656d656e746174696f81526020017f6e20746f2061206e6f6e2d636f6e74726163742061646472657373000000000081525060400191505060405180910390fd5b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c360010290508181555050565b600080823b9050600081119150509190505600a165627a7a72305820f82e8b87e97893a49b8bd4d7b939f667ecf5bb0557066c581f98354d9f5ade520029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000001a1fdf27c5e6784d1cebf256a8a5cc0877e73af000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000044485cc955000000000000000000000000b4ed31195d1ad52f868dfc6a607e97d6773927f60000000000000000000000000996bfb5d057faa237640e2506be7b4f9c46de0b00000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _implementation (address): 0x1a1fdf27c5e6784d1cEbF256A8A5Cc0877e73Af0
Arg [1] : _data (bytes): 0x485cc955000000000000000000000000b4ed31195d1ad52f868dfc6a607e97d6773927f60000000000000000000000000996bfb5d057faa237640e2506be7b4f9c46de0b

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000001a1fdf27c5e6784d1cebf256a8a5cc0877e73af0
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000044
Arg [3] : 485cc955000000000000000000000000b4ed31195d1ad52f868dfc6a607e97d6
Arg [4] : 773927f60000000000000000000000000996bfb5d057faa237640e2506be7b4f
Arg [5] : 9c46de0b00000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

6418:4154:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;587:11;:9;:11::i;:::-;6418:4154;9060:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9060:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9693:184;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8355:103;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8355:103:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8641:228;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8641:228:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8201:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8201:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2133:93;2170:15;:13;:15::i;:::-;2192:28;2202:17;:15;:17::i;:::-;2192:9;:28::i;:::-;2133:93::o;9060:105::-;7256:8;:6;:8::i;:::-;7242:22;;:10;:22;;;7238:80;;;9130:29;9141:17;9130:10;:29::i;:::-;7238:80;;;7299:11;:9;:11::i;:::-;7238:80;9060:105;:::o;9693:184::-;7256:8;:6;:8::i;:::-;7242:22;;:10;:22;;;7238:80;;;9790:29;9801:17;9790:10;:29::i;:::-;9834:17;:30;;9865:4;;9834:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9826:45;;;;;;;;7238:80;;;7299:11;:9;:11::i;:::-;7238:80;9693:184;;;:::o;8355:103::-;8412:7;7256:8;:6;:8::i;:::-;7242:22;;:10;:22;;;7238:80;;;8435:17;:15;:17::i;:::-;8428:24;;7238:80;;;7299:11;:9;:11::i;:::-;7238:80;8355:103;:::o;8641:228::-;7256:8;:6;:8::i;:::-;7242:22;;:10;:22;;;7238:80;;;8732:1;8712:22;;:8;:22;;;;8704:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8805:32;8818:8;:6;:8::i;:::-;8828;8805:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8844:19;8854:8;8844:9;:19::i;:::-;7238:80;;;7299:11;:9;:11::i;:::-;7238:80;8641:228;:::o;8201:85::-;8249:7;7256:8;:6;:8::i;:::-;7242:22;;:10;:22;;;7238:80;;;8272:8;:6;:8::i;:::-;8265:15;;7238:80;;;7299:11;:9;:11::i;:::-;7238:80;8201:85;:::o;10409:160::-;10472:8;:6;:8::i;:::-;10458:22;;:10;:22;;;;10450:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10542:21;:19;:21::i;:::-;10409:160::o;5091:161::-;5141:12;5162;4073:66;5177:19;;5162:34;;5235:4;5229:11;5221:19;;5212:35;;:::o;1026:750::-;1333:12;1330:1;1327;1314:32;1527:1;1524;1510:12;1507:1;1491:14;1486:3;1473:56;1594:14;1591:1;1588;1573:36;1626:6;1688:1;1683:36;;;;1747:14;1744:1;1737:25;1683:36;1702:14;1699:1;1692:25;9927:141;9968:11;9988:12;6949:66;10003:10;;9988:25;;10051:4;10045:11;10038:18;;10029:34;;:::o;5393:145::-;5456:37;5475:17;5456:18;:37::i;:::-;5514:17;5505:27;;;;;;;;;;;;5393:145;:::o;10190:139::-;10243:12;6949:66;10258:10;;10243:25;;10308:8;10302:4;10295:22;10286:38;;:::o;1992:40::-;:::o;5681:297::-;5874:12;5759:42;5783:17;5759:23;:42::i;:::-;5751:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4073:66;5889:19;;5874:34;;5948:17;5942:4;5935:31;5926:47;;:::o;2717:587::-;2774:4;2787:12;3270:4;3258:17;3250:25;;3297:1;3290:4;:8;3283:15;;2717:587;;;;:::o

Swarm Source

bzzr://f82e8b87e97893a49b8bd4d7b939f667ecf5bb0557066c581f98354d9f5ade52
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.