Contract 0x357d51124f59836ded84c8a1730d72b749d8bc23 6

Aave DeFi  
 

Contract Overview

Aave: Incentives Controller V2
Balance:
0 MATIC

MATIC Value:
$0.00

Token:
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xdf82ba8cb9e383a11d4a1eb5ba1b8c467aa864a70f037a334bcd013888c1aaf0Claim Rewards360866382022-11-26 10:12:081 hr 18 mins ago0xbb55bf4f652579741c5e27f30b869842579e7713 IN  Aave: Incentives Controller V20 MATIC0.00241267016 32.500002165
0x449f31c9bff01e32f7c0b0e0edbb3568eed14b969cd9bd31491095ceff7763f5Claim Rewards360840222022-11-26 8:42:092 hrs 48 mins ago0xe5932376d9c6457037f3f54b215ad08f66375e4d IN  Aave: Incentives Controller V20 MATIC0.003711799839 49.999997837
0x4d82e496c5da164b6fbc9a7aa053bbf1da396a406f72fcf40d7f2b7a86654e66Claim Rewards360806182022-11-26 6:45:094 hrs 45 mins ago0xa223a476a0b4f1aa98f04d921cb4ff428e91d353 IN  Aave: Incentives Controller V20 MATIC0.002227080001 30.000000015
0x552c4feca8b12504ff05522596a481d66af297a5ec7b05648f1f316da5cde445Claim Rewards360719992022-11-26 1:45:469 hrs 44 mins ago0x84beaed15e8ec63a6d6f6787b0cc5efb52724f08 IN  Aave: Incentives Controller V20 MATIC0.003239010007 30.000000073
0xd65479b9c0444eb316b1ef0d8d3b041e0d1957e80a85ea6e51ae99aa4276166fClaim Rewards360710082022-11-26 1:11:3810 hrs 18 mins ago0x5b613e53dfc751cb42b6540dba5ce7b83cf1de3d IN  Aave: Incentives Controller V20 MATIC0.001714084753 30.000083199
0xd300f054c49883aa7828e2a86b6501e71ccd403272be6864bf05a61b9b50c8baClaim Rewards360674632022-11-25 23:07:4012 hrs 22 mins ago0x262012d7c1d79fd8ea17f407f1f33af071c14f76 IN  Aave: Incentives Controller V20 MATIC0.003239010002 30.000000023
0xa893ac38d825773cd8813a17d696356186f2b49e0ec026857ec15033a78b4a42Claim Rewards360664982022-11-25 22:34:3012 hrs 55 mins ago0xbbb3980e807f6dcfddcb5d4063e5af06f1fb7217 IN  Aave: Incentives Controller V20 MATIC0.003239054149 30.000408913
0x6efc9018a39b1ab3cc2dcf426559d372c0733756cfcd4b3fd43360215df37852Claim Rewards360593562022-11-25 18:26:2117 hrs 4 mins ago0x69224b7fe305ed7e7b03a53e4b2ff08a7c73a961 IN  Aave: Incentives Controller V20 MATIC0.002227080003 30.000000051
0xdf46812ad8eb9818e89feb44b2b22578696780a100df3c2aeafda44f4d0097e6Claim Rewards360575132022-11-25 17:22:5818 hrs 7 mins ago0xbee2d469aacb46251ae33cca91f482e26c971dff IN  Aave: Incentives Controller V20 MATIC0.001796686749 31.445791603
0x3ec30f4f14529695f0be399f85e0de7995c802ab5cc1862a36a0f327f92a3e84Claim Rewards360547702022-11-25 15:48:2319 hrs 42 mins ago0x4ae01bf899ce8009d9baada344a5d059fada90dd IN  Aave: Incentives Controller V20 MATIC0.00199208464 34.86566508
0x90f1aa1b2eda1d0197b04ed9ccb7ded74241528a46e42fb91e8be079a0cfc525Claim Rewards360543002022-11-25 15:32:1319 hrs 58 mins ago0x0caee629c57f10fd478013c734d2645e35501783 IN  Aave: Incentives Controller V20 MATIC0.002567514482 34.585840865
0x60e2ea15b998c1d2413f408f703ef7af1bb8cb438a0a06ef763722e13881bb06Claim Rewards360528722022-11-25 14:43:0920 hrs 47 mins ago0xb951da3870f7b7d1e3f9249c18e93d5cc5c3565c IN  Aave: Incentives Controller V20 MATIC0.006456955175 86.9787593
0xf7ccbc6611b2e4188274f670f15ab17862a711a0e04924eb5b3ffb5df2986d1cClaim Rewards360526412022-11-25 14:35:1120 hrs 55 mins ago0x351eb497e04f887394737e7eea1f53f4ba2d01bc IN  Aave: Incentives Controller V20 MATIC0.011515882414 104.721256513
0xb5ec1ad1e6e20eb758dbb08c982f879a1b885293dbe3ca90761ecc0913aae28bClaim Rewards360492182022-11-25 12:37:3022 hrs 52 mins ago0x4fef4341fddea55fc842bf590c14da1f4aaa92eb IN  Aave: Incentives Controller V20 MATIC0.004340981632 58.475424758
0x94e9e34826720c306a93a7c770108221df008fcebc102988289220356202acdbClaim Rewards360487512022-11-25 12:21:2423 hrs 9 mins ago0x1e151ecc2201a86fc02acb3df607e9dc6a78a930 IN  Aave: Incentives Controller V20 MATIC0.005506619 50.075195293
0x81a50337f46b6087753bc67021e990956c86f1c9afe3158051a480c20d408a66Claim Rewards360455332022-11-25 10:30:441 day 59 mins ago0xe106812e19d613efb3f2752d2ac934d817efe883 IN  Aave: Incentives Controller V20 MATIC0.001772634578 31.024828103
0x218471a26305987e99c14e3939340ce4859db4ab1374a2c01d0e7c1cf167a366Claim Rewards360386152022-11-25 6:27:261 day 5 hrs ago0x9372fe6d14d57988b7ec923815cc9243b313d532 IN  Aave: Incentives Controller V20 MATIC0.002227080002 30.000000028
0xdd1f442159568190ab16b2dc4067f80b9ef44299bb5270a1e7d3a38e581ee681Claim Rewards360376232022-11-25 5:53:181 day 5 hrs ago0x02bf87ceb29d8c81960b4662ab5e33f655e30d4f IN  Aave: Incentives Controller V20 MATIC0.002227080002 30.000000038
0x5ae5ba04b312599434912c63b24b9f68e3c7c9d9d3201ad774bf469489ce5090Claim Rewards360373692022-11-25 5:44:341 day 5 hrs ago0x5a83ccd925f4ea3940ba29a973344d08d88f9391 IN  Aave: Incentives Controller V20 MATIC0.002227080001 30.000000021
0xae342c9ecd245468ed17a859392bdef594b5cab182eb6e64ee92a7afb988147cClaim Rewards360277322022-11-25 0:07:501 day 11 hrs ago0x056ed28d360f3fc60692e5fc7826466b73f600ec IN  Aave: Incentives Controller V20 MATIC0.001841787573 32.241922368
0xa164d82eb84d31f42b53ed72fb3a345af9a831d2104d7fa7923df0544b4c5821Claim Rewards360238882022-11-24 21:55:421 day 13 hrs ago0x632fc4449f4da91d6994c8ffd77f24027fac2567 IN  Aave: Incentives Controller V20 MATIC0.00434081208 32.01
0xfbb11771723170afcb6778fdd006d712de4f7064c8c85d9f7bcd2d3d574f6da4Claim Rewards360187812022-11-24 18:57:431 day 16 hrs ago0xa99a1ae3f4e5b66e6c541666d238f81ebe220737 IN  Aave: Incentives Controller V20 MATIC0.002227080079 30.000001068
0x078ddfc9bf1b997e5dc0028b7110379f1a8ee3fe5796503c8c410dc4fc9ce18eClaim Rewards360166732022-11-24 17:44:101 day 17 hrs ago0x97668614ea2a6a34148a3c6d5dfcf97c9562ed37 IN  Aave: Incentives Controller V20 MATIC0.00199976 35
0xc890c734ddac3924ab47188cfef896bf5c8c505be9504d572819a6a7627ec492Claim Rewards360160982022-11-24 17:24:241 day 18 hrs ago0xbbc11effe3ebb956aaeb59c760b6f77080efd515 IN  Aave: Incentives Controller V20 MATIC0.00553911413854.86009566
0x919939bb95ab987939d4efb7d07de47c95a815a4168ea5825807092883f48422Claim Rewards360143762022-11-24 16:23:041 day 19 hrs ago0xaaf5feaa9e5694b2b293e67558e2da8ea4b1fb13 IN  Aave: Incentives Controller V20 MATIC0.003449944514 46.472661703
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
InitializableAdminUpgradeabilityProxy

Compiler Version
v0.7.5+commit.eb77ed08

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at polygonscan.com on 2021-06-09
*/

// Sources flattened with hardhat v2.1.2 https://hardhat.org

// File contracts/lib/Proxy.sol

// SPDX-License-Identifier: MIT
pragma solidity 0.7.5;

/**
 * @title Proxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * 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.
 */
abstract contract Proxy {
  /**
   * @dev Fallback function.
   * Implemented entirely in `_fallback`.
   */
  fallback() external payable {
    _fallback();
  }

  /**
   * @return The Address of the implementation.
   */
  function _implementation() internal view virtual 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 virtual {}

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


// File contracts/lib/Address.sol


/**
 * @dev Collection of functions related to the address type
 * From https://github.com/OpenZeppelin/openzeppelin-contracts
 */
library Address {
  /**
   * @dev Returns true if `account` is a contract.
   *
   * [IMPORTANT]
   * ====
   * It is unsafe to assume that an address for which this function returns
   * false is an externally-owned account (EOA) and not a contract.
   *
   * Among others, `isContract` will return false for the following
   * types of addresses:
   *
   *  - an externally-owned account
   *  - a contract in construction
   *  - an address where a contract will be created
   *  - an address where a contract lived, but was destroyed
   * ====
   */
  function isContract(address account) internal view returns (bool) {
    // According to EIP-1052, 0x0 is the value returned for not-yet created accounts
    // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned
    // for accounts without code, i.e. `keccak256('')`
    bytes32 codehash;
    bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
    // solhint-disable-next-line no-inline-assembly
    assembly {
      codehash := extcodehash(account)
    }
    return (codehash != accountHash && codehash != 0x0);
  }

  /**
   * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
   * `recipient`, forwarding all available gas and reverting on errors.
   *
   * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
   * of certain opcodes, possibly making contracts go over the 2300 gas limit
   * imposed by `transfer`, making them unable to receive funds via
   * `transfer`. {sendValue} removes this limitation.
   *
   * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
   *
   * IMPORTANT: because control is transferred to `recipient`, care must be
   * taken to not create reentrancy vulnerabilities. Consider using
   * {ReentrancyGuard} or the
   * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
   */
  function sendValue(address payable recipient, uint256 amount) internal {
    require(address(this).balance >= amount, 'Address: insufficient balance');

    // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
    (bool success, ) = recipient.call{value: amount}('');
    require(success, 'Address: unable to send value, recipient may have reverted');
  }
}


// File contracts/lib/BaseUpgradeabilityProxy.sol



/**
 * @title BaseUpgradeabilityProxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * 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 BaseUpgradeabilityProxy 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 "eip1967.proxy.implementation" subtracted by 1, and is
   * validated in the constructor.
   */
  bytes32 internal constant IMPLEMENTATION_SLOT =
    0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

  /**
   * @dev Returns the current implementation.
   * @return impl Address of the current implementation
   */
  function _implementation() internal view override 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) internal {
    require(
      Address.isContract(newImplementation),
      'Cannot set a proxy implementation to a non-contract address'
    );

    bytes32 slot = IMPLEMENTATION_SLOT;

    assembly {
      sstore(slot, newImplementation)
    }
  }
}


// File contracts/lib/UpgradeabilityProxy.sol


/**
 * @title UpgradeabilityProxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * Extends BaseUpgradeabilityProxy with a constructor for initializing
 * implementation and init data.
 */
contract UpgradeabilityProxy is BaseUpgradeabilityProxy {
  /**
   * @dev Contract constructor.
   * @param _logic 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 _logic, bytes memory _data) public payable {
    assert(IMPLEMENTATION_SLOT == bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1));
    _setImplementation(_logic);
    if (_data.length > 0) {
      (bool success, ) = _logic.delegatecall(_data);
      require(success);
    }
  }
}


// File contracts/lib/BaseAdminUpgradeabilityProxy.sol


/**
 * @title BaseAdminUpgradeabilityProxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * 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 BaseAdminUpgradeabilityProxy is BaseUpgradeabilityProxy {
  /**
   * @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 "eip1967.proxy.admin" subtracted by 1, and is
   * validated in the constructor.
   */

  bytes32 internal constant ADMIN_SLOT =
    0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;

  /**
   * @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();
    }
  }

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

  /**
   * @return The address of the implementation.
   */
  function implementation() external 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 calldata data)
    external
    payable
    ifAdmin
  {
    _upgradeTo(newImplementation);
    (bool success, ) = newImplementation.delegatecall(data);
    require(success);
  }

  /**
   * @return adm 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 virtual override {
    require(msg.sender != _admin(), 'Cannot call fallback function from the proxy admin');
    super._willFallback();
  }
}


// File contracts/lib/InitializableUpgradeabilityProxy.sol


/**
 * @title InitializableUpgradeabilityProxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * Extends BaseUpgradeabilityProxy with an initializer for initializing
 * implementation and init data.
 */
contract InitializableUpgradeabilityProxy is BaseUpgradeabilityProxy {
  /**
   * @dev Contract initializer.
   * @param _logic 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.
   */
  function initialize(address _logic, bytes memory _data) public payable {
    require(_implementation() == address(0));
    assert(IMPLEMENTATION_SLOT == bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1));
    _setImplementation(_logic);
    if (_data.length > 0) {
      (bool success, ) = _logic.delegatecall(_data);
      require(success);
    }
  }
}


// File contracts/lib/InitializableAdminUpgradeabilityProxy.sol



/**
 * @title InitializableAdminUpgradeabilityProxy
 * @dev From https://github.com/OpenZeppelin/openzeppelin-sdk/tree/solc-0.6/packages/lib/contracts/upgradeability
 * Extends from BaseAdminUpgradeabilityProxy with an initializer for
 * initializing the implementation, admin, and init data.
 */
contract InitializableAdminUpgradeabilityProxy is
  BaseAdminUpgradeabilityProxy,
  InitializableUpgradeabilityProxy
{
  /**
   * Contract initializer.
   * @param _logic address of the initial implementation.
   * @param _admin Address of the proxy administrator.
   * @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.
   */
  function initialize(
    address _logic,
    address _admin,
    bytes memory _data
  ) public payable {
    require(_implementation() == address(0));
    InitializableUpgradeabilityProxy.initialize(_logic, _data);
    assert(ADMIN_SLOT == bytes32(uint256(keccak256('eip1967.proxy.admin')) - 1));
    _setAdmin(_admin);
  }

  /**
   * @dev Only fall back when the sender is not the admin.
   */
  function _willFallback() internal override(BaseAdminUpgradeabilityProxy, Proxy) {
    BaseAdminUpgradeabilityProxy._willFallback();
  }
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_logic","type":"address"},{"internalType":"address","name":"_admin","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_logic","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}]

608060405234801561001057600080fd5b50610905806100206000396000f3fe6080604052600436106100705760003560e01c80638f2839701161004e5780638f2839701461015e578063cf7a1d7714610191578063d1f5789414610250578063f851a4401461030657610070565b80633659cfe61461007a5780634f1ef286146100ad5780635c60da1b1461012d575b61007861031b565b005b34801561008657600080fd5b506100786004803603602081101561009d57600080fd5b50356001600160a01b0316610335565b610078600480360360408110156100c357600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100ee57600080fd5b82018360208201111561010057600080fd5b8035906020019184600183028401116401000000008311171561012257600080fd5b50909250905061036f565b34801561013957600080fd5b5061014261041c565b604080516001600160a01b039092168252519081900360200190f35b34801561016a57600080fd5b506100786004803603602081101561018157600080fd5b50356001600160a01b0316610459565b610078600480360360608110156101a757600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156101db57600080fd5b8201836020820111156101ed57600080fd5b8035906020019184600183028401116401000000008311171561020f57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610513945050505050565b6100786004803603604081101561026657600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561029157600080fd5b8201836020820111156102a357600080fd5b803590602001918460018302840111640100000000831117156102c557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610543945050505050565b34801561031257600080fd5b50610142610623565b61032361064e565b61033361032e610656565b61067b565b565b61033d61069f565b6001600160a01b0316336001600160a01b031614156103645761035f816106c4565b61036c565b61036c61031b565b50565b61037761069f565b6001600160a01b0316336001600160a01b0316141561040f57610399836106c4565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b505090508061040957600080fd5b50610417565b61041761031b565b505050565b600061042661069f565b6001600160a01b0316336001600160a01b0316141561044e57610447610656565b9050610456565b61045661031b565b90565b61046161069f565b6001600160a01b0316336001600160a01b03161415610364576001600160a01b0381166104bf5760405162461bcd60e51b815260040180806020018281038252603681526020018061085f6036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104e861069f565b604080516001600160a01b03928316815291841660208301528051918290030190a161035f81610704565b600061051d610656565b6001600160a01b03161461053057600080fd5b61053a8382610543565b61041782610704565b600061054d610656565b6001600160a01b03161461056057600080fd5b61056982610728565b80511561061f576000826001600160a01b0316826040518082805190602001908083835b602083106105ac5780518252601f19909201916020918201910161058d565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461060c576040519150601f19603f3d011682016040523d82523d6000602084013e610611565b606091505b505090508061041757600080fd5b5050565b600061062d61069f565b6001600160a01b0316336001600160a01b0316141561044e5761044761069f565b610333610790565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561069a573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b6106cd81610728565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b610731816107f0565b61076c5760405162461bcd60e51b815260040180806020018281038252603b815260200180610895603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b61079861069f565b6001600160a01b0316336001600160a01b031614156107e85760405162461bcd60e51b815260040180806020018281038252603281526020018061082d6032913960400191505060405180910390fd5b610333610333565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061082457508115155b94935050505056fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a2646970667358221220b419f3d483ccaf851ac2bf3f926e4683f108a35602630e2efdb559e1f37494ed64736f6c63430007050033

Deployed ByteCode Sourcemap

13985:1258:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;717:11;:9;:11::i;:::-;13985:1258;10686:105;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10686:105:0;-1:-1:-1;;;;;10686:105:0;;:::i;11319:244::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11319:244:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11319:244:0;;-1:-1:-1;11319:244:0;-1:-1:-1;11319:244:0;:::i;9986:98::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;9986:98:0;;;;;;;;;;;;;;10267:228;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10267:228:0;-1:-1:-1;;;;;10267:228:0;;:::i;14691:332::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14691:332:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14691:332:0;;-1:-1:-1;14691:332:0;;-1:-1:-1;;;;;14691:332:0:i;13229:373::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13229:373:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13229:373:0;;-1:-1:-1;13229:373:0;;-1:-1:-1;;;;;13229:373:0:i;9837:80::-;;;;;;;;;;;;;:::i;2333:93::-;2370:15;:13;:15::i;:::-;2392:28;2402:17;:15;:17::i;:::-;2392:9;:28::i;:::-;2333:93::o;10686:105::-;9704:8;:6;:8::i;:::-;-1:-1:-1;;;;;9690:22:0;:10;-1:-1:-1;;;;;9690:22:0;;9686:80;;;10756:29:::1;10767:17;10756:10;:29::i;:::-;9686:80:::0;;;9747:11;:9;:11::i;:::-;10686:105;:::o;11319:244::-;9704:8;:6;:8::i;:::-;-1:-1:-1;;;;;9690:22:0;:10;-1:-1:-1;;;;;9690:22:0;;9686:80;;;11443:29:::1;11454:17;11443:10;:29::i;:::-;11480:12;11498:17;-1:-1:-1::0;;;;;11498:30:0::1;11529:4;;11498:36;;;;;;;;;;::::0;;::::1;::::0;-1:-1:-1;11498:36:0::1;::::0;-1:-1:-1;11498:36:0;;-1:-1:-1;;11498:36:0;;::::1;::::0;;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11479:55;;;11549:7;11541:16;;;::::0;::::1;;9723:1;9686:80:::0;;;9747:11;:9;:11::i;:::-;11319:244;;;:::o;9986:98::-;10038:7;9704:8;:6;:8::i;:::-;-1:-1:-1;;;;;9690:22:0;:10;-1:-1:-1;;;;;9690:22:0;;9686:80;;;10061:17:::1;:15;:17::i;:::-;10054:24;;9686:80:::0;;;9747:11;:9;:11::i;:::-;9986:98;:::o;10267:228::-;9704:8;:6;:8::i;:::-;-1:-1:-1;;;;;9690:22:0;:10;-1:-1:-1;;;;;9690:22:0;;9686:80;;;-1:-1:-1;;;;;10338:22:0;::::1;10330:89;;;;-1:-1:-1::0;;;10330:89:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10431:32;10444:8;:6;:8::i;:::-;10431:32;::::0;;-1:-1:-1;;;;;10431:32:0;;::::1;::::0;;;;::::1;;::::0;::::1;::::0;;;;;;;;;::::1;10470:19;10480:8;10470:9;:19::i;14691:332::-:0;14842:1;14813:17;:15;:17::i;:::-;-1:-1:-1;;;;;14813:31:0;;14805:40;;;;;;14852:58;14896:6;14904:5;14852:43;:58::i;:::-;15000:17;15010:6;15000:9;:17::i;13229:373::-;13344:1;13315:17;:15;:17::i;:::-;-1:-1:-1;;;;;13315:31:0;;13307:40;;;;;;13455:26;13474:6;13455:18;:26::i;:::-;13492:12;;:16;13488:109;;13520:12;13538:6;-1:-1:-1;;;;;13538:19:0;13558:5;13538:26;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13538:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13519:45;;;13581:7;13573:16;;;;;13488:109;13229:373;;:::o;9837:80::-;9880:7;9704:8;:6;:8::i;:::-;-1:-1:-1;;;;;9690:22:0;:10;-1:-1:-1;;;;;9690:22:0;;9686:80;;;9903:8:::1;:6;:8::i;15103:137::-:0;15190:44;:42;:44::i;6147:170::-;5956:66;6294:11;;6277:35::o;1164:808::-;1471:14;1468:1;1465;1452:34;1671:1;1668;1652:14;1649:1;1633:14;1626:5;1613:60;1738:16;1735:1;1732;1717:38;1772:6;1833:58;;;;1932:16;1929:1;1922:27;1833:58;1863:16;1860:1;1853:27;11617:141;9397:66;11735:11;;11719:34::o;6458:145::-;6521:37;6540:17;6521:18;:37::i;:::-;6570:27;;-1:-1:-1;;;;;6570:27:0;;;;;;;;6458:145;:::o;11880:139::-;9397:66;11985:22;11976:38::o;6746:314::-;6833:37;6852:17;6833:18;:37::i;:::-;6817:130;;;;-1:-1:-1;;;6817:130:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5956:66;7017:31;7008:47::o;12099:177::-;12179:8;:6;:8::i;:::-;-1:-1:-1;;;;;12165:22:0;:10;-1:-1:-1;;;;;12165:22:0;;;12157:85;;;;-1:-1:-1;;;12157:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12249:21;:19;:21::i;3183:597::-;3243:4;3690:20;;3534:66;3731:23;;;;;;:42;;-1:-1:-1;3758:15:0;;;3731:42;3723:51;3183:597;-1:-1:-1;;;;3183:597:0:o

Swarm Source

ipfs://b419f3d483ccaf851ac2bf3f926e4683f108a35602630e2efdb559e1f37494ed
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.