Overview
ETH Balance
0 ETH
ETH Value
$0.00More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Latest 1 internal transaction
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
264486 | 76 days ago | Contract Creation | 0 ETH |
Loading...
Loading
This contract contains unverified libraries: FlashLoanLogic
Contract Name:
InitializableImmutableAdminUpgradeabilityProxy
Compiler Version
v0.8.12+commit.f00d7308
ZkSolc Version
v1.5.0
Optimization Enabled:
Yes with Mode 3
Other Settings:
berlin EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0 pragma solidity 0.8.12; import {InitializableUpgradeabilityProxy} from '../../../dependencies/openzeppelin/upgradeability/InitializableUpgradeabilityProxy.sol'; import {Proxy} from '../../../dependencies/openzeppelin/upgradeability/Proxy.sol'; import {BaseImmutableAdminUpgradeabilityProxy} from './BaseImmutableAdminUpgradeabilityProxy.sol'; /** * @title InitializableAdminUpgradeabilityProxy * @author Aave * @dev Extends BaseAdminUpgradeabilityProxy with an initializer function */ contract InitializableImmutableAdminUpgradeabilityProxy is BaseImmutableAdminUpgradeabilityProxy, InitializableUpgradeabilityProxy { /** * @dev Constructor. * @param admin The address of the admin */ constructor(address admin) BaseImmutableAdminUpgradeabilityProxy(admin) { // Intentionally left blank } /// @inheritdoc BaseImmutableAdminUpgradeabilityProxy function _willFallback() internal override(BaseImmutableAdminUpgradeabilityProxy, Proxy) { BaseImmutableAdminUpgradeabilityProxy._willFallback(); } }
// SPDX-License-Identifier: AGPL-3.0 pragma solidity 0.8.12; import {BaseUpgradeabilityProxy} from '../../../dependencies/openzeppelin/upgradeability/BaseUpgradeabilityProxy.sol'; /** * @title BaseImmutableAdminUpgradeabilityProxy * @author Aave, inspired by the OpenZeppelin upgradeability proxy pattern * @notice This contract combines an upgradeability proxy with an authorization * mechanism for administrative tasks. * @dev The admin role is stored in an immutable, which helps saving transactions costs * 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 BaseImmutableAdminUpgradeabilityProxy is BaseUpgradeabilityProxy { address internal immutable _admin; /** * @dev Constructor. * @param admin The address of the admin */ constructor(address admin) { _admin = admin; } modifier ifAdmin() { if (msg.sender == _admin) { _; } else { _fallback(); } } /** * @notice Return the admin address * @return The address of the proxy admin. */ function admin() external ifAdmin returns (address) { return _admin; } /** * @notice Return the implementation address * @return The address of the implementation. */ function implementation() external ifAdmin returns (address) { return _implementation(); } /** * @notice Upgrade the backing implementation of the proxy. * @dev Only the admin can call this function. * @param newImplementation The address of the new implementation. */ function upgradeTo(address newImplementation) external ifAdmin { _upgradeTo(newImplementation); } /** * @notice Upgrade the backing implementation of the proxy and call a function * on the new implementation. * @dev This is useful to initialize the proxied contract. * @param newImplementation The 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); } /** * @notice 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(); } }
// SPDX-License-Identifier: AGPL-3.0 pragma solidity 0.8.12; /** * @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. */ abstract contract Proxy { /** * @dev Fallback function. * Will run if no other function in the contract matches the call data. * 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 { //solium-disable-next-line 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()); } }
// SPDX-License-Identifier: AGPL-3.0 pragma solidity 0.8.12; import './BaseUpgradeabilityProxy.sol'; /** * @title InitializableUpgradeabilityProxy * @dev 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); } } }
// SPDX-License-Identifier: AGPL-3.0 pragma solidity 0.8.12; import './Proxy.sol'; import '../contracts/Address.sol'; /** * @title BaseUpgradeabilityProxy * @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 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; //solium-disable-next-line 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; //solium-disable-next-line assembly { sstore(slot, newImplementation) } } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Address.sol) pragma solidity ^0.8.0; /** * @dev Collection of functions related to the address type */ 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) { // This method relies on extcodesize, which returns 0 for contracts in // construction, since the code is only stored at the end of the // constructor execution. uint256 size; assembly { size := extcodesize(account) } return size > 0; } /** * @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'); (bool success, ) = recipient.call{value: amount}(''); require(success, 'Address: unable to send value, recipient may have reverted'); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain `call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, 'Address: low-level call failed'); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ function functionCallWithValue( address target, bytes memory data, uint256 value ) internal returns (bytes memory) { return functionCallWithValue(target, data, value, 'Address: low-level call with value failed'); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCallWithValue( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require(address(this).balance >= value, 'Address: insufficient balance for call'); require(isContract(target), 'Address: call to non-contract'); (bool success, bytes memory returndata) = target.call{value: value}(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall( address target, bytes memory data ) internal view returns (bytes memory) { return functionStaticCall(target, data, 'Address: low-level static call failed'); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall( address target, bytes memory data, string memory errorMessage ) internal view returns (bytes memory) { require(isContract(target), 'Address: static call to non-contract'); (bool success, bytes memory returndata) = target.staticcall(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, 'Address: low-level delegate call failed'); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { require(isContract(target), 'Address: delegate call to non-contract'); (bool success, bytes memory returndata) = target.delegatecall(data); return verifyCallResult(success, returndata, errorMessage); } /** * @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the * revert reason using the provided one. * * _Available since v4.3._ */ function verifyCallResult( bool success, bytes memory returndata, string memory errorMessage ) internal pure returns (bytes memory) { if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } }
{ "optimizer": { "enabled": true, "mode": "3" }, "evmVersion": "berlin", "outputSelection": { "*": { "*": [ "abi" ] } }, "detectMissingLibraries": false, "forceEVMLA": false, "enableEraVMExtensions": false, "libraries": { "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/BridgeLogic.sol": { "BridgeLogic": "0x406aD7Ed13d91BEF165f6E977e281FB7C571CfE5" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/ConfiguratorLogic.sol": { "ConfiguratorLogic": "0x6785433E9A02daEc0e30C532284477Cfe66c6c34" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/PoolLogic.sol": { "PoolLogic": "0xc23507911ce966e314EdeF2f28C401bCe0BEd621" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/EModeLogic.sol": { "EModeLogic": "0x0Ad3F00c09E06B2000923D3234A547ced44392E1" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/LiquidationLogic.sol": { "LiquidationLogic": "0x4fB6c53DE12E42aB3602efF9BaBcB16285d3bF5c" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/SupplyLogic.sol": { "SupplyLogic": "0xF99505fD0c50dB554d83A92CaEB7914EaE8d476f" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/FlashLoanLogic.sol": { "FlashLoanLogic": "0xa79d546E536A0CEcb83D8995e35A5a4A33b5c0Da" }, "@zerolendxyz/core-v3/contracts/protocol/libraries/logic/BorrowLogic.sol": { "BorrowLogic": "0x22FB836c1CdDA685Ce0911e266f6E21965Ca31a8" } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"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":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","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"}]
Contract Creation Code
a1564406000000000000000000000000fc1ef22b9458f112ef4eb6bf1c537776f0341185
Deployed Bytecode
0x0004000000000002000300000000000200000000030100190000006004300270000001240340019700030000003103550002000000010355000001240040019d00000001022001900000006e0000c13d0000008002000039000000400020043f000000040230008c0000011b0000413d000000000201043b000000e002200270000001280420009c0000009d0000a13d000001290420009c0000017c0000613d0000012a0420009c0000019c0000613d0000012b0120009c0000011b0000c13d0000000001000416000000000101004b000001c30000c13d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000212004b000001950000613d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000012e0000613d000000020300036700000000010000310000001f0510018f0000013002000041000000000202041a000000050410027200000005044002100000004f0000613d000000000603034f0000000007000019000000006806043c0000000007870436000000000847004b0000004b0000c13d000000000605004b0000005c0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000343034f000000000303043b0000010005500089000000000353022f00000000035301cf000000000363019f00000000003404350000000003000414000000040420008c000003190000c13d000000030200036700000001030000310000001f0430018f000000050130027200000005011002100000006b0000613d000000000502034f0000000006000019000000005705043c0000000006760436000000000716004b000000670000c13d000000000504004b000001ec0000613d0000029d0000013d000000a002000039000000400020043f0000000004000416000000000404004b000001c30000c13d0000001f043000390000012504400197000000a004400039000000400040043f0000001f0430018f00000005053002720000000505500210000000810000613d000000a006500039000000000701034f000000007807043c0000000002820436000000000862004b0000007d0000c13d000000000204004b0000008f0000613d000000000151034f0000000302400210000000a004500039000000000504043300000000052501cf000000000525022f000000000101043b0000010002200089000000000121022f00000000012101cf000000000151019f0000000000140435000000200130008c000001c30000413d000000a00100043d000001260210009c000001c30000213d000000800010043f00000140000004430000016000100443000000200100003900000100001004430000000101000039000001200010044300000127010000410000048d0001042e0000012c0420009c000001ba0000613d0000012d0220009c0000011b0000c13d000000440230008c000001c30000413d0000000402100370000000000502043b000001260250009c000001c30000213d0000002402100370000000000202043b000001320420009c000001c30000213d0000002304200039000000000434004b000001c30000813d0000000406200039000000000161034f000000000401043b000001320140009c000001c30000213d00000000014200190000002401100039000000000131004b000001c30000213d000100000006001d000200000004001d000300000005001d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b000003810000c13d00000134010000410000000000100439000000030100002900000004001004430000000001000414000001240210009c0000012401008041000000c00110021000000135011001c70000800202000039048c04820000040f0000000102200190000003c10000613d000000000101043b000000000101004b000002140000613d00000130010000410000000305000029000000000051041b000000400100043d000001240210009c000001240100804100000040011002100000000002000414000001240320009c0000012402008041000000c002200210000000000112019f00000138011001c70000800d0200003900000002030000390000013904000041048c047d0000040f000000010120019000000002040000290000000103000029000001c30000613d000000400100043d0000001f0240018f0000002003300039000000020330036700000005044002720000000504400210000001000000613d0000000005410019000000000603034f0000000007010019000000006806043c0000000007870436000000000857004b000000fc0000c13d000000000502004b0000010e0000613d000000000343034f00000000044100190000000302200210000000000504043300000000052501cf000000000525022f000000000303043b0000010002200089000000000323022f00000000022301cf000000000252019f00000000002404350000000202100029000000000002043500000000020004140000000303000029000000040330008c000004120000c13d0000000101000032000003540000613d0000013a0210009c000001b40000813d0000001f02100039000000200300008a000002f00000013d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b000001420000c13d000000400100043d0000006402100039000001410300004100000000003204350000004402100039000001420300004100000000003204350000002402100039000000320300003900000000003204350000013f020000410000000000210435000000040210003900000020030000390000000000320435000001240210009c0000012401008041000000400110021000000140011001c70000048e00010430000000020300036700000000010000310000001f0410018f0000013002000041000000000202041a0000000505100272000001500000613d0000000506500210000000000703034f0000000008000019000000007907043c0000000008980436000000000968004b0000014c0000c13d000000000604004b0000015e0000613d00000003044002100000000505500210000000000605043300000000064601cf000000000646022f000000000353034f000000000303043b0000010004400089000000000343022f00000000034301cf000000000363019f00000000003504350000000003000414000000040420008c000001c50000c13d000000030100036700000001030000310000001f0430018f00000005023002720000016d0000613d0000000505200210000000000601034f0000000007000019000000006806043c0000000007870436000000000857004b000001690000c13d000000000504004b000001ec0000613d00000003044002100000000502200210000000000502043300000000054501cf000000000545022f000000000121034f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000120435000001ec0000013d0000000001000416000000000101004b000001c30000c13d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000021e0000c13d0000013001000041000000000101041a0000012601100197000000400200043d0000000000120435000001240120009c0000012402008041000000400120021000000131011001c70000048d0001042e000000440230008c000001c30000413d0000000402100370000000000902043b000001260290009c000001c30000213d0000002402100370000000000402043b000001320240009c000001c30000213d0000002302400039000000000232004b000001c30000813d0000000405400039000000000251034f000000000202043b000001320620009c000001b40000213d0000001f0620003900000143066001970000003f066000390000014306600197000001330760009c000002a90000a13d0000013b0100004100000000001004350000004101000039000000040010043f0000013c010000410000048e00010430000000240230008c000001c30000413d0000000002000416000000000202004b000001c30000c13d0000000401100370000000000201043b000001260120009c000001f00000a13d00000000010000190000048e00010430000001240410009c00000124010080410000006001100210000001240430009c0000012403008041000000c003300210000000000113019f048c04870000040f0003000000010355000000000301001900000060033002700000001f0430018f000101240030019d00000124033001970000000505300272000001dc0000613d0000000506500210000000000701034f0000000008000019000000007907043c0000000008980436000000000968004b000001d80000c13d000000000604004b000001ea0000613d00000003044002100000000505500210000000000605043300000000064601cf000000000646022f000000000151034f000000000101043b0000010004400089000000000141022f00000000014101cf000000000161019f00000000001504350000000101200190000003e80000613d000001240130009c000001240300804100000060013002100000048d0001042e000300000002001d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000025e0000c13d00000134010000410000000000100439000000030100002900000004001004430000000001000414000001240210009c0000012401008041000000c00110021000000135011001c70000800202000039048c04820000040f0000000102200190000003c10000613d000000000101043b000000000101004b000003410000c13d000000400100043d00000064021000390000013d03000041000000000032043500000044021000390000013e03000041000000000032043500000024021000390000003b03000039000001370000013d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000012e0000613d000000020300036700000000010000310000001f0510018f0000013002000041000000000202041a000000050410027200000005044002100000023f0000613d000000000603034f0000000007000019000000006806043c0000000007870436000000000847004b0000023b0000c13d000000000605004b0000024c0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000343034f000000000303043b0000010005500089000000000353022f00000000035301cf000000000363019f00000000003404350000000003000414000000040420008c000003590000c13d000000030200036700000001030000310000001f0430018f000000050130027200000005011002100000025b0000613d000000000502034f0000000006000019000000005705043c0000000006760436000000000716004b000002570000c13d000000000504004b000001ec0000613d0000029d0000013d0000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000012e0000613d000000020300036700000000010000310000001f0510018f0000013002000041000000000202041a000000050410027200000005044002100000027f0000613d000000000603034f0000000007000019000000006806043c0000000007870436000000000847004b0000027b0000c13d000000000605004b0000028c0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000343034f000000000303043b0000010005500089000000000353022f00000000035301cf000000000363019f00000000003404350000000003000414000000040420008c000003c20000c13d000000030200036700000001030000310000001f0430018f000000050130027200000005011002100000029b0000613d000000000502034f0000000006000019000000005705043c0000000006760436000000000716004b000002970000c13d000000000504004b000001ec0000613d0000000304400210000000000501043300000000054501cf000000000545022f000000000212034f000000000202043b0000010004400089000000000242022f00000000024201cf000000000252019f0000000000210435000001ec0000013d0000008006600039000000400060043f000000800020043f00000000042400190000002404400039000000000334004b000001c30000213d0000002003500039000000000131034f0000001f0320018f00000005042002720000000504400210000002bd0000613d000000a005000039000000a006400039000000000701034f000000007807043c0000000005850436000000000865004b000002b90000c13d000000000503004b000002cb0000613d000000000141034f0000000303300210000000a004400039000000000504043300000000053501cf000000000535022f000000000101043b0000010003300089000000000131022f00000000013101cf000000000151019f0000000000140435000000a00120003900000000000104350000013001000041000000000101041a0000012601100198000001c30000c13d00000134010000410000000000100439000300000009001d00000004009004430000000001000414000001240210009c0000012401008041000000c00110021000000135011001c70000800202000039048c04820000040f0000000102200190000003c10000613d000000000101043b000000000101004b000002140000613d00000130010000410000000303000029000000000031041b000000800100043d000000000201004b000003540000613d0000000002000414000000040330008c000004430000c13d0000000101000032000000200300008a000003540000613d000001320210009c000001b40000213d0000001f02100039000000000232016f0000003f02200039000000000332016f000000400200043d0000000003320019000000000423004b00000000040000190000000104004039000001320530009c000001b40000213d0000000104400190000001b40000c13d000000400030043f0000001f0310018f00000000021204360000000304000367000000050110027200000005011002100000030a0000613d0000000005120019000000000604034f0000000007020019000000006806043c0000000007870436000000000857004b000003060000c13d000000000503004b000003540000613d000000000414034f00000000011200190000000302300210000000000301043300000000032301cf000000000323022f000000000404043b0000010002200089000000000424022f00000000022401cf000000000232019f0000000000210435000003540000013d000001240410009c00000124010080410000006001100210000001240430009c0000012403008041000000c003300210000000000113019f048c04870000040f0003000000010355000000000301001900000060033002700000001f0530018f000101240030019d000001240330019700000005043002720000000504400210000003300000613d000000000601034f0000000007000019000000006806043c0000000007870436000000000847004b0000032c0000c13d000000000605004b0000033d0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000141034f000000000101043b0000010005500089000000000151022f00000000015101cf000000000161019f00000000001404350000000101200190000001ec0000c13d00000060013002100000048e0001043000000130010000410000000305000029000000000051041b000000400100043d000001240210009c000001240100804100000040011002100000000002000414000001240320009c0000012402008041000000c002200210000000000112019f00000138011001c70000800d0200003900000002030000390000013904000041048c047d0000040f0000000101200190000001c30000613d000000400100043d000001240210009c000001240100804100000040011002100000048d0001042e000001240410009c00000124010080410000006001100210000001240430009c0000012403008041000000c003300210000000000113019f048c04870000040f0003000000010355000000000301001900000060033002700000001f0530018f000101240030019d000001240330019700000005043002720000000504400210000003700000613d000000000601034f0000000007000019000000006806043c0000000007870436000000000847004b0000036c0000c13d000000000605004b0000037d0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000141034f000000000101043b0000010005500089000000000151022f00000000015101cf000000000161019f00000000001404350000000101200190000001ec0000c13d00000060013002100000048e000104300000012e0100004100000000001004390000000001000412000000040010044300000024000004430000000001000414000001240210009c0000012401008041000000c0011002100000012f011001c70000800502000039048c04820000040f0000000102200190000003c10000613d000000000101043b00000126011001970000000002000411000000000112004b0000012e0000613d000000020300036700000000010000310000001f0510018f0000013002000041000000000202041a00000005041002720000000504400210000003a20000613d000000000603034f0000000007000019000000006806043c0000000007870436000000000847004b0000039e0000c13d000000000605004b000003af0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000343034f000000000303043b0000010005500089000000000353022f00000000035301cf000000000363019f00000000003404350000000003000414000000040420008c000003ea0000c13d000000030200036700000001030000310000001f0430018f00000005013002720000000501100210000003be0000613d000000000502034f0000000006000019000000005705043c0000000006760436000000000716004b000003ba0000c13d000000000504004b000001ec0000613d0000029d0000013d000000000001042f000001240410009c00000124010080410000006001100210000001240430009c0000012403008041000000c003300210000000000113019f048c04870000040f0003000000010355000000000301001900000060033002700000001f0530018f000101240030019d000001240330019700000005043002720000000504400210000003d90000613d000000000601034f0000000007000019000000006806043c0000000007870436000000000847004b000003d50000c13d000000000605004b000003e60000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000141034f000000000101043b0000010005500089000000000151022f00000000015101cf000000000161019f00000000001404350000000101200190000001ec0000c13d00000060013002100000048e00010430000001240410009c00000124010080410000006001100210000001240430009c0000012403008041000000c003300210000000000113019f048c04870000040f0003000000010355000000000301001900000060033002700000001f0530018f000101240030019d000001240330019700000005043002720000000504400210000004010000613d000000000601034f0000000007000019000000006806043c0000000007870436000000000847004b000003fd0000c13d000000000605004b0000040e0000613d0000000305500210000000000604043300000000065601cf000000000656022f000000000141034f000000000101043b0000010005500089000000000151022f00000000015101cf000000000161019f00000000001404350000000101200190000001ec0000c13d00000060013002100000048e000104300000000204000029000001240340009c00000124040080410000006003400210000001240410009c00000124010080410000004001100210000000000131019f000001240320009c0000012402008041000000c002200210000000000112019f0000000302000029048c04870000040f000300000001035500000000030100190000006003300270000101240030019d0000012405300198000003520000613d0000001f0350003900000125033001970000003f033000390000013703300197000000400400043d0000000003340019000000000643004b00000000060000190000000106004039000001320730009c000001b40000213d0000000106600190000001b40000c13d000000400030043f0000001f0350018f000000000454043600000005055002720000000505500210000004400000613d0000000006540019000000000701034f0000000008040019000000007907043c0000000008980436000000000968004b0000043c0000c13d000000000603004b000003520000613d0000046f0000013d000001240320009c0000012402008041000000c002200210000001240310009c00000124010080410000006001100210000000000121019f00000136011001c70000000302000029048c04870000040f000300000001035500000000030100190000006003300270000101240030019d0000012405300198000003520000613d0000001f0350003900000125033001970000003f033000390000013703300197000000400400043d0000000003340019000000000643004b00000000060000190000000106004039000001320730009c000001b40000213d0000000106600190000001b40000c13d000000400030043f0000001f0350018f0000000004540436000000050550027200000005055002100000046d0000613d0000000006540019000000000701034f0000000008040019000000007907043c0000000008980436000000000968004b000004690000c13d000000000603004b000003520000613d000000000151034f00000000045400190000000303300210000000000504043300000000053501cf000000000535022f000000000101043b0000010003300089000000000131022f00000000013101cf000000000151019f0000000000140435000003520000013d000000000001042f00000480002104210000000102000039000000000001042d0000000002000019000000000001042d00000485002104230000000102000039000000000001042d0000000002000019000000000001042d0000048a002104250000000102000039000000000001042d0000000002000019000000000001042d0000048c000004320000048d0001042e0000048e00010430000000000000000000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe0000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0000000200000000000000000000000000000080000001000000000000000000000000000000000000000000000000000000000000000000000000005c60da1a000000000000000000000000000000000000000000000000000000005c60da1b00000000000000000000000000000000000000000000000000000000d1f5789400000000000000000000000000000000000000000000000000000000f851a440000000000000000000000000000000000000000000000000000000003659cfe6000000000000000000000000000000000000000000000000000000004f1ef286310ab089e4439a4c15d089f94afb7896ff553aecb10793d0ab882de59d99a32e0200000200000000000000000000000000000044000000000000000000000000360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffff000000000000000000000000000000000000000000000000ffffffffffffff7f1806aa1896bbf26568e884a7374b41e002500962caba6a15023a8d90e8508b8302000002000000000000000000000000000000240000000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000000000003ffffffe00200000000000000000000000000000000000000000000000000000000000000bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b00000000000000000000000000000000000000000000000100000000000000004e487b710000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000000000000000000000006e20746f2061206e6f6e2d636f6e74726163742061646472657373000000000043616e6e6f742073657420612070726f787920696d706c656d656e746174696f08c379a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000840000000000000000000000006f6d207468652070726f78792061646d696e000000000000000000000000000043616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e206672ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01013731b0000198f90c295c59b8155c4d270cad6241a7430550fc2baeff67206
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000de15bc7060eb299674d652f48b76ba18c1179028
-----Decoded View---------------
Arg [0] : admin (address): 0xde15Bc7060Eb299674D652f48b76BA18c1179028
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000de15bc7060eb299674d652f48b76ba18c1179028
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
[ 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.