ETH Price: $4,479.11 (-0.10%)

Contract

0x771263e3Bc6aCDa5aE388A3F8A0c2dd7A17275FC

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Bundle Txs92291852025-08-23 17:59:5642 days ago1755971996IN
0x771263e3...7A17275FC
0 ETH0.000001350.00000026
Bundle Txs92273822025-08-23 17:29:5342 days ago1755970193IN
0x771263e3...7A17275FC
0 ETH0.000001350.00000026
Bundle Txs92266732025-08-23 17:18:0442 days ago1755969484IN
0x771263e3...7A17275FC
0 ETH0.000001350.00000026
Bundle Txs77520232025-08-06 15:40:3459 days ago1754494834IN
0x771263e3...7A17275FC
0 ETH0.000023580.00100026
Bundle Txs54261322025-07-10 17:35:4386 days ago1752168943IN
0x771263e3...7A17275FC
0 ETH0.000000080.00000038
Bundle Txs53724362025-07-10 2:40:4786 days ago1752115247IN
0x771263e3...7A17275FC
0 ETH00.00000264
Bundle Txs53713982025-07-10 2:23:2986 days ago1752114209IN
0x771263e3...7A17275FC
0 ETH0.000000010.0000057
Bundle Txs49768782025-07-05 12:48:0991 days ago1751719689IN
0x771263e3...7A17275FC
0 ETH00.00000444
Bundle Txs49768732025-07-05 12:48:0491 days ago1751719684IN
0x771263e3...7A17275FC
0 ETH00.00000434
Bundle Txs49768692025-07-05 12:48:0091 days ago1751719680IN
0x771263e3...7A17275FC
0 ETH00.00000424
Bundle Txs49768652025-07-05 12:47:5691 days ago1751719676IN
0x771263e3...7A17275FC
0 ETH00.00000416
Bundle Txs49768602025-07-05 12:47:5191 days ago1751719671IN
0x771263e3...7A17275FC
0 ETH0.000000380.00000376
Set Authority49750552025-07-05 12:17:4691 days ago1751717866IN
0x771263e3...7A17275FC
0 ETH00.00000438

Latest 22 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
77520232025-08-06 15:40:3459 days ago1754494834
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
49768602025-07-05 12:47:5191 days ago1751719671
0x771263e3...7A17275FC
 Contract Creation0 ETH
46653382025-07-01 22:15:4995 days ago1751408149  Contract Creation0 ETH

Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Deployer

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
shanghai EvmVersion, Unlicense license
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.21;

import {Auth, Authority} from "@solmate/auth/Auth.sol";
import {CREATE3} from "@solmate/utils/CREATE3.sol";
import {Address} from "@openzeppelin/contracts/utils/Address.sol";

contract Deployer is Auth {
    using Address for address;

    /**
     * @notice Contains data needed to send a transaction.
     */
    struct Tx {
        address target;
        bytes data;
        uint256 value;
    }

    /**
     * @notice Emitted on `deployContract` calls.
     * @param name string name used to derive salt for deployment
     * @param contractAddress the newly deployed contract address
     * @param creationCodeHash keccak256 hash of the creation code
     *        - useful to determine creation code is the same across multiple chains
     */
    event ContractDeployed(string name, address contractAddress, bytes32 creationCodeHash);

    constructor(address _owner, Authority _auth) Auth(_owner, _auth) {}

    /**
     * @notice Deploy some contract to a deterministic address.
     * @param name string used to derive salt for deployment
     * @dev Should be of form:
     *      "ContractName Version 0.0"
     *      Where the numbers after version are VERSION . SUBVERSION
     * @param creationCode the contract creation code to deploy
     *        - can be obtained by calling type(contractName).creationCode
     * @param constructorArgs the contract constructor arguments if any
     *        - must be of form abi.encode(arg1, arg2, ...)
     * @param value non zero if constructor needs to be payable
     */
    function deployContract(
        string calldata name,
        bytes memory creationCode,
        bytes calldata constructorArgs,
        uint256 value
    ) external requiresAuth returns (address) {
        bytes32 creationCodeHash = keccak256(creationCode);

        if (constructorArgs.length > 0) {
            // Append constructor args to end of creation code.
            creationCode = abi.encodePacked(creationCode, constructorArgs);
        }

        bytes32 salt = convertNameToBytes32(name);

        address contractAddress = CREATE3.deploy(salt, creationCode, value);

        emit ContractDeployed(name, contractAddress, creationCodeHash);

        return contractAddress;
    }

    function bundleTxs(Tx[] calldata txs) external requiresAuth {
        uint256 txsLength = txs.length;
        for (uint256 i; i < txsLength; i++) {
            txs[i].target.functionCallWithValue(txs[i].data, txs[i].value);
        }
    }

    function getAddress(string calldata name) external view returns (address) {
        bytes32 salt = convertNameToBytes32(name);

        return CREATE3.getDeployed(salt);
    }

    function convertNameToBytes32(string calldata name) public pure returns (bytes32) {
        return keccak256(abi.encode(name));
    }
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (utils/Address.sol)

pragma solidity ^0.8.20;

/**
 * @dev Collection of functions related to the address type
 */
library Address {
    /**
     * @dev The ETH balance of the account is not enough to perform the operation.
     */
    error AddressInsufficientBalance(address account);

    /**
     * @dev There's no code at `target` (it is not a contract).
     */
    error AddressEmptyCode(address target);

    /**
     * @dev A call to an address target failed. The target may have reverted.
     */
    error FailedInnerCall();

    /**
     * @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://consensys.net/diligence/blog/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.8.20/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
     */
    function sendValue(address payable recipient, uint256 amount) internal {
        if (address(this).balance < amount) {
            revert AddressInsufficientBalance(address(this));
        }

        (bool success, ) = recipient.call{value: amount}("");
        if (!success) {
            revert FailedInnerCall();
        }
    }

    /**
     * @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 or custom error, it is bubbled
     * up by this function (like regular Solidity function calls). However, if
     * the call reverted with no returned reason, this function reverts with a
     * {FailedInnerCall} error.
     *
     * 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.
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0);
    }

    /**
     * @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`.
     */
    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        if (address(this).balance < value) {
            revert AddressInsufficientBalance(address(this));
        }
        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a static call.
     */
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a delegate call.
     */
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata);
    }

    /**
     * @dev Tool to verify that a low level call to smart-contract was successful, and reverts if the target
     * was not a contract or bubbling up the revert reason (falling back to {FailedInnerCall}) in case of an
     * unsuccessful call.
     */
    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata
    ) internal view returns (bytes memory) {
        if (!success) {
            _revert(returndata);
        } else {
            // only check if target is a contract if the call was successful and the return data is empty
            // otherwise we already know that it was a contract
            if (returndata.length == 0 && target.code.length == 0) {
                revert AddressEmptyCode(target);
            }
            return returndata;
        }
    }

    /**
     * @dev Tool to verify that a low level call was successful, and reverts if it wasn't, either by bubbling the
     * revert reason or with a default {FailedInnerCall} error.
     */
    function verifyCallResult(bool success, bytes memory returndata) internal pure returns (bytes memory) {
        if (!success) {
            _revert(returndata);
        } else {
            return returndata;
        }
    }

    /**
     * @dev Reverts with returndata if present. Otherwise reverts with {FailedInnerCall}.
     */
    function _revert(bytes memory returndata) private pure {
        // 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
            /// @solidity memory-safe-assembly
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert FailedInnerCall();
        }
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Provides a flexible and updatable auth pattern which is completely separate from application logic.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Auth.sol)
/// @author Modified from Dappsys (https://github.com/dapphub/ds-auth/blob/master/src/auth.sol)
abstract contract Auth {
    event OwnershipTransferred(address indexed user, address indexed newOwner);

    event AuthorityUpdated(address indexed user, Authority indexed newAuthority);

    address public owner;

    Authority public authority;

    constructor(address _owner, Authority _authority) {
        owner = _owner;
        authority = _authority;

        emit OwnershipTransferred(msg.sender, _owner);
        emit AuthorityUpdated(msg.sender, _authority);
    }

    modifier requiresAuth() virtual {
        require(isAuthorized(msg.sender, msg.sig), "UNAUTHORIZED");

        _;
    }

    function isAuthorized(address user, bytes4 functionSig) internal view virtual returns (bool) {
        Authority auth = authority; // Memoizing authority saves us a warm SLOAD, around 100 gas.

        // Checking if the caller is the owner only after calling the authority saves gas in most cases, but be
        // aware that this makes protected functions uncallable even to the owner if the authority is out of order.
        return (address(auth) != address(0) && auth.canCall(user, address(this), functionSig)) || user == owner;
    }

    function setAuthority(Authority newAuthority) public virtual {
        // We check if the caller is the owner first because we want to ensure they can
        // always swap out the authority even if it's reverting or using up a lot of gas.
        require(msg.sender == owner || authority.canCall(msg.sender, address(this), msg.sig));

        authority = newAuthority;

        emit AuthorityUpdated(msg.sender, newAuthority);
    }

    function transferOwnership(address newOwner) public virtual requiresAuth {
        owner = newOwner;

        emit OwnershipTransferred(msg.sender, newOwner);
    }
}

/// @notice A generic interface for a contract which provides authorization data to an Auth instance.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Auth.sol)
/// @author Modified from Dappsys (https://github.com/dapphub/ds-auth/blob/master/src/auth.sol)
interface Authority {
    function canCall(
        address user,
        address target,
        bytes4 functionSig
    ) external view returns (bool);
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Library for converting between addresses and bytes32 values.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/Bytes32AddressLib.sol)
library Bytes32AddressLib {
    function fromLast20Bytes(bytes32 bytesValue) internal pure returns (address) {
        return address(uint160(uint256(bytesValue)));
    }

    function fillLast12Bytes(address addressValue) internal pure returns (bytes32) {
        return bytes32(bytes20(addressValue));
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

import {Bytes32AddressLib} from "./Bytes32AddressLib.sol";

/// @notice Deploy to deterministic addresses without an initcode factor.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/CREATE3.sol)
/// @author Modified from 0xSequence (https://github.com/0xSequence/create3/blob/master/contracts/Create3.sol)
library CREATE3 {
    using Bytes32AddressLib for bytes32;

    //--------------------------------------------------------------------------------//
    // Opcode     | Opcode + Arguments    | Description      | Stack View             //
    //--------------------------------------------------------------------------------//
    // 0x36       |  0x36                 | CALLDATASIZE     | size                   //
    // 0x3d       |  0x3d                 | RETURNDATASIZE   | 0 size                 //
    // 0x3d       |  0x3d                 | RETURNDATASIZE   | 0 0 size               //
    // 0x37       |  0x37                 | CALLDATACOPY     |                        //
    // 0x36       |  0x36                 | CALLDATASIZE     | size                   //
    // 0x3d       |  0x3d                 | RETURNDATASIZE   | 0 size                 //
    // 0x34       |  0x34                 | CALLVALUE        | value 0 size           //
    // 0xf0       |  0xf0                 | CREATE           | newContract            //
    //--------------------------------------------------------------------------------//
    // Opcode     | Opcode + Arguments    | Description      | Stack View             //
    //--------------------------------------------------------------------------------//
    // 0x67       |  0x67XXXXXXXXXXXXXXXX | PUSH8 bytecode   | bytecode               //
    // 0x3d       |  0x3d                 | RETURNDATASIZE   | 0 bytecode             //
    // 0x52       |  0x52                 | MSTORE           |                        //
    // 0x60       |  0x6008               | PUSH1 08         | 8                      //
    // 0x60       |  0x6018               | PUSH1 18         | 24 8                   //
    // 0xf3       |  0xf3                 | RETURN           |                        //
    //--------------------------------------------------------------------------------//
    bytes internal constant PROXY_BYTECODE = hex"67_36_3d_3d_37_36_3d_34_f0_3d_52_60_08_60_18_f3";

    bytes32 internal constant PROXY_BYTECODE_HASH = keccak256(PROXY_BYTECODE);

    function deploy(
        bytes32 salt,
        bytes memory creationCode,
        uint256 value
    ) internal returns (address deployed) {
        bytes memory proxyChildBytecode = PROXY_BYTECODE;

        address proxy;
        /// @solidity memory-safe-assembly
        assembly {
            // Deploy a new contract with our pre-made bytecode via CREATE2.
            // We start 32 bytes into the code to avoid copying the byte length.
            proxy := create2(0, add(proxyChildBytecode, 32), mload(proxyChildBytecode), salt)
        }
        require(proxy != address(0), "DEPLOYMENT_FAILED");

        deployed = getDeployed(salt);
        (bool success, ) = proxy.call{value: value}(creationCode);
        require(success && deployed.code.length != 0, "INITIALIZATION_FAILED");
    }

    function getDeployed(bytes32 salt) internal view returns (address) {
        return getDeployed(salt, address(this));
    }

    function getDeployed(bytes32 salt, address creator) internal pure returns (address) {
        address proxy = keccak256(
            abi.encodePacked(
                // Prefix:
                bytes1(0xFF),
                // Creator:
                creator,
                // Salt:
                salt,
                // Bytecode hash:
                PROXY_BYTECODE_HASH
            )
        ).fromLast20Bytes();

        return
            keccak256(
                abi.encodePacked(
                    // 0xd6 = 0xc0 (short RLP prefix) + 0x16 (length of: 0x94 ++ proxy ++ 0x01)
                    // 0x94 = 0x80 + 0x14 (0x14 = the length of an address, 20 bytes, in hex)
                    hex"d6_94",
                    proxy,
                    hex"01" // Nonce of the proxy contract (1)
                )
            ).fromLast20Bytes();
    }
}

Settings
{
  "evmVersion": "shanghai",
  "metadata": {
    "appendCBOR": true,
    "bytecodeHash": "ipfs",
    "useLiteralContent": false
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "remappings": [
    "@solmate/=lib/solmate/src/",
    "@forge-std/=lib/forge-std/src/",
    "@ds-test/=lib/forge-std/lib/ds-test/src/",
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "@openzeppelin/=lib/openzeppelin-contracts/",
    "@ccip/=lib/ccip/",
    "@oapp-auth/=lib/OAppAuth/src/",
    "@devtools-oapp-evm/=lib/OAppAuth/lib/devtools/packages/oapp-evm/contracts/oapp/",
    "@layerzerolabs/lz-evm-messagelib-v2/=lib/OAppAuth/node_modules/@layerzerolabs/lz-evm-messagelib-v2/",
    "@layerzerolabs/lz-evm-protocol-v2/=lib/OAppAuth/lib/LayerZero-V2/packages/layerzero-v2/evm/protocol/",
    "@layerzerolabs/oapp-evm/=lib/OAppAuth/lib/devtools/packages/oapp-evm/",
    "@lz-oapp-evm/=lib/OAppAuth/lib/LayerZero-V2/packages/layerzero-v2/evm/oapp/contracts/oapp/",
    "LayerZero-V2/=lib/OAppAuth/lib/",
    "OAppAuth/=lib/OAppAuth/",
    "ccip/=lib/ccip/contracts/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "forge-std/=lib/forge-std/src/",
    "halmos-cheatcodes/=lib/OAppAuth/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "solidity-bytes-utils/=lib/OAppAuth/node_modules/solidity-bytes-utils/",
    "solmate/=lib/solmate/src/"
  ],
  "viaIR": false
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract Authority","name":"_auth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"AuthorityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"address","name":"contractAddress","type":"address"},{"indexed":false,"internalType":"bytes32","name":"creationCodeHash","type":"bytes32"}],"name":"ContractDeployed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"value","type":"uint256"}],"internalType":"struct Deployer.Tx[]","name":"txs","type":"tuple[]"}],"name":"bundleTxs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"}],"name":"convertNameToBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"bytes","name":"creationCode","type":"bytes"},{"internalType":"bytes","name":"constructorArgs","type":"bytes"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"deployContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"name","type":"string"}],"name":"getAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract Authority","name":"newAuthority","type":"address"}],"name":"setAuthority","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561000f575f80fd5b50604051610e66380380610e6683398101604081905261002e916100dd565b5f80546001600160a01b03199081166001600160a01b0385811691821784556001805490931690851617909155604051849284929133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36040516001600160a01b0382169033907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b76389980198905f90a350505050610115565b6001600160a01b03811681146100da575f80fd5b50565b5f80604083850312156100ee575f80fd5b82516100f9816100c6565b602084015190925061010a816100c6565b809150509250929050565b610d44806101225f395ff3fe608060405234801561000f575f80fd5b5060043610610085575f3560e01c8063bf7e214f11610058578063bf7e214f146100f3578063ef5de7e314610106578063f2fde38b14610119578063f74907a21461012c575f80fd5b806369d77304146100895780637a9e5e4b1461009e5780638da5cb5b146100b1578063bf40fac1146100e0575b5f80fd5b61009c610097366004610908565b61014d565b005b61009c6100ac36600461098b565b610280565b5f546100c3906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100c36100ee3660046109eb565b610364565b6001546100c3906001600160a01b031681565b6100c3610114366004610a3e565b610383565b61009c61012736600461098b565b61044e565b61013f61013a3660046109eb565b6104c9565b6040519081526020016100d7565b610162335f356001600160e01b0319166104fb565b6101875760405162461bcd60e51b815260040161017e90610b43565b60405180910390fd5b805f5b8181101561027a576102678484838181106101a7576101a7610b69565b90506020028101906101b99190610b7d565b6101c7906020810190610b9b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525088925087915085905081811061020f5761020f610b69565b90506020028101906102219190610b7d565b6040013586868581811061023757610237610b69565b90506020028101906102499190610b7d565b61025790602081019061098b565b6001600160a01b031691906105a1565b508061027281610bde565b91505061018a565b50505050565b5f546001600160a01b0316331480610311575060015460405163b700961360e01b81526001600160a01b039091169063b7009613906102d290339030906001600160e01b03195f351690600401610c02565b602060405180830381865afa1580156102ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103119190610c2f565b610319575f80fd5b600180546001600160a01b0319166001600160a01b03831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b76389980198905f90a350565b5f8061037084846104c9565b905061037b8161063c565b949350505050565b5f610399335f356001600160e01b0319166104fb565b6103b55760405162461bcd60e51b815260040161017e90610b43565b8451602086012083156103e9578585856040516020016103d793929190610c7b565b60405160208183030381529060405295505b5f6103f489896104c9565b90505f61040282898761064d565b90507fd928a3951eedba2f72a5eb8c15b591ead63c282f21b2f5e93506fb88cae27fec8a8a83866040516104399493929190610cc1565b60405180910390a19998505050505050505050565b610463335f356001600160e01b0319166104fb565b61047f5760405162461bcd60e51b815260040161017e90610b43565b5f80546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b5f82826040516020016104dd929190610cf0565b60405160208183030381529060405280519060200120905092915050565b6001545f906001600160a01b03168015801590610582575060405163b700961360e01b81526001600160a01b0382169063b70096139061054390879030908890600401610c02565b602060405180830381865afa15801561055e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105829190610c2f565b8061037b57505f546001600160a01b0385811691161491505092915050565b6060814710156105c65760405163cd78605960e01b815230600482015260240161017e565b5f80856001600160a01b031684866040516105e19190610d03565b5f6040518083038185875af1925050503d805f811461061b576040519150601f19603f3d011682016040523d82523d5f602084013e610620565b606091505b509150915061063086838361079c565b925050505b9392505050565b5f61064782306107f8565b92915050565b5f806040518060400160405280601081526020016f67363d3d37363d34f03d5260086018f360801b81525090505f858251602084015ff590506001600160a01b0381166106d05760405162461bcd60e51b81526020600482015260116024820152701111541313d65351539517d19052531151607a1b604482015260640161017e565b6106d98661063c565b92505f816001600160a01b031685876040516106f59190610d03565b5f6040518083038185875af1925050503d805f811461072f576040519150601f19603f3d011682016040523d82523d5f602084013e610734565b606091505b5050905080801561074e57506001600160a01b0384163b15155b6107925760405162461bcd60e51b815260206004820152601560248201527412539255125053125690551253d397d19052531151605a1b604482015260640161017e565b5050509392505050565b6060826107b1576107ac826108dc565b610635565b81511580156107c857506001600160a01b0384163b155b156107f157604051639996b31560e01b81526001600160a01b038516600482015260240161017e565b5080610635565b604080518082018252601081526f67363d3d37363d34f03d5260086018f360801b60209182015290516001600160f81b0319918101919091526bffffffffffffffffffffffff19606083901b166021820152603581018390527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f60558201525f90819061089c906075015b6040516020818303038152906040528051906020012090565b6040516135a560f21b60208201526bffffffffffffffffffffffff19606083901b166022820152600160f81b603682015290915061037b90603701610883565b8051156108ec5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b5f8060208385031215610919575f80fd5b823567ffffffffffffffff80821115610930575f80fd5b818501915085601f830112610943575f80fd5b813581811115610951575f80fd5b8660208260051b8501011115610965575f80fd5b60209290920196919550909350505050565b6001600160a01b0381168114610905575f80fd5b5f6020828403121561099b575f80fd5b813561063581610977565b5f8083601f8401126109b6575f80fd5b50813567ffffffffffffffff8111156109cd575f80fd5b6020830191508360208285010111156109e4575f80fd5b9250929050565b5f80602083850312156109fc575f80fd5b823567ffffffffffffffff811115610a12575f80fd5b610a1e858286016109a6565b90969095509350505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f805f8060808789031215610a53575f80fd5b863567ffffffffffffffff80821115610a6a575f80fd5b610a768a838b016109a6565b90985096506020890135915080821115610a8e575f80fd5b818901915089601f830112610aa1575f80fd5b813581811115610ab357610ab3610a2a565b604051601f8201601f19908116603f01168101908382118183101715610adb57610adb610a2a565b816040528281528c6020848701011115610af3575f80fd5b826020860160208301375f602084830101528098505050506040890135915080821115610b1e575f80fd5b50610b2b89828a016109a6565b979a9699509497949695606090950135949350505050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f8235605e19833603018112610b91575f80fd5b9190910192915050565b5f808335601e19843603018112610bb0575f80fd5b83018035915067ffffffffffffffff821115610bca575f80fd5b6020019150368190038213156109e4575f80fd5b5f60018201610bfb57634e487b7160e01b5f52601160045260245ffd5b5060010190565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b5f60208284031215610c3f575f80fd5b81518015158114610635575f80fd5b5f81515f5b81811015610c6d5760208185018101518683015201610c53565b505f93019283525090919050565b5f610c868286610c4e565b838582375f930192835250909392505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f610cd4606083018688610c99565b6001600160a01b03949094166020830152506040015292915050565b602081525f61037b602083018486610c99565b5f6106358284610c4e56fea2646970667358221220d60455b2e0c177361c7d97bd59850f966664698864856dd2499dae185086e57764736f6c634300081500330000000000000000000000001b514df3413da9931eb31f2ab72e32c0a507cad50000000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561000f575f80fd5b5060043610610085575f3560e01c8063bf7e214f11610058578063bf7e214f146100f3578063ef5de7e314610106578063f2fde38b14610119578063f74907a21461012c575f80fd5b806369d77304146100895780637a9e5e4b1461009e5780638da5cb5b146100b1578063bf40fac1146100e0575b5f80fd5b61009c610097366004610908565b61014d565b005b61009c6100ac36600461098b565b610280565b5f546100c3906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100c36100ee3660046109eb565b610364565b6001546100c3906001600160a01b031681565b6100c3610114366004610a3e565b610383565b61009c61012736600461098b565b61044e565b61013f61013a3660046109eb565b6104c9565b6040519081526020016100d7565b610162335f356001600160e01b0319166104fb565b6101875760405162461bcd60e51b815260040161017e90610b43565b60405180910390fd5b805f5b8181101561027a576102678484838181106101a7576101a7610b69565b90506020028101906101b99190610b7d565b6101c7906020810190610b9b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525088925087915085905081811061020f5761020f610b69565b90506020028101906102219190610b7d565b6040013586868581811061023757610237610b69565b90506020028101906102499190610b7d565b61025790602081019061098b565b6001600160a01b031691906105a1565b508061027281610bde565b91505061018a565b50505050565b5f546001600160a01b0316331480610311575060015460405163b700961360e01b81526001600160a01b039091169063b7009613906102d290339030906001600160e01b03195f351690600401610c02565b602060405180830381865afa1580156102ed573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103119190610c2f565b610319575f80fd5b600180546001600160a01b0319166001600160a01b03831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b76389980198905f90a350565b5f8061037084846104c9565b905061037b8161063c565b949350505050565b5f610399335f356001600160e01b0319166104fb565b6103b55760405162461bcd60e51b815260040161017e90610b43565b8451602086012083156103e9578585856040516020016103d793929190610c7b565b60405160208183030381529060405295505b5f6103f489896104c9565b90505f61040282898761064d565b90507fd928a3951eedba2f72a5eb8c15b591ead63c282f21b2f5e93506fb88cae27fec8a8a83866040516104399493929190610cc1565b60405180910390a19998505050505050505050565b610463335f356001600160e01b0319166104fb565b61047f5760405162461bcd60e51b815260040161017e90610b43565b5f80546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b5f82826040516020016104dd929190610cf0565b60405160208183030381529060405280519060200120905092915050565b6001545f906001600160a01b03168015801590610582575060405163b700961360e01b81526001600160a01b0382169063b70096139061054390879030908890600401610c02565b602060405180830381865afa15801561055e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105829190610c2f565b8061037b57505f546001600160a01b0385811691161491505092915050565b6060814710156105c65760405163cd78605960e01b815230600482015260240161017e565b5f80856001600160a01b031684866040516105e19190610d03565b5f6040518083038185875af1925050503d805f811461061b576040519150601f19603f3d011682016040523d82523d5f602084013e610620565b606091505b509150915061063086838361079c565b925050505b9392505050565b5f61064782306107f8565b92915050565b5f806040518060400160405280601081526020016f67363d3d37363d34f03d5260086018f360801b81525090505f858251602084015ff590506001600160a01b0381166106d05760405162461bcd60e51b81526020600482015260116024820152701111541313d65351539517d19052531151607a1b604482015260640161017e565b6106d98661063c565b92505f816001600160a01b031685876040516106f59190610d03565b5f6040518083038185875af1925050503d805f811461072f576040519150601f19603f3d011682016040523d82523d5f602084013e610734565b606091505b5050905080801561074e57506001600160a01b0384163b15155b6107925760405162461bcd60e51b815260206004820152601560248201527412539255125053125690551253d397d19052531151605a1b604482015260640161017e565b5050509392505050565b6060826107b1576107ac826108dc565b610635565b81511580156107c857506001600160a01b0384163b155b156107f157604051639996b31560e01b81526001600160a01b038516600482015260240161017e565b5080610635565b604080518082018252601081526f67363d3d37363d34f03d5260086018f360801b60209182015290516001600160f81b0319918101919091526bffffffffffffffffffffffff19606083901b166021820152603581018390527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f60558201525f90819061089c906075015b6040516020818303038152906040528051906020012090565b6040516135a560f21b60208201526bffffffffffffffffffffffff19606083901b166022820152600160f81b603682015290915061037b90603701610883565b8051156108ec5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b5f8060208385031215610919575f80fd5b823567ffffffffffffffff80821115610930575f80fd5b818501915085601f830112610943575f80fd5b813581811115610951575f80fd5b8660208260051b8501011115610965575f80fd5b60209290920196919550909350505050565b6001600160a01b0381168114610905575f80fd5b5f6020828403121561099b575f80fd5b813561063581610977565b5f8083601f8401126109b6575f80fd5b50813567ffffffffffffffff8111156109cd575f80fd5b6020830191508360208285010111156109e4575f80fd5b9250929050565b5f80602083850312156109fc575f80fd5b823567ffffffffffffffff811115610a12575f80fd5b610a1e858286016109a6565b90969095509350505050565b634e487b7160e01b5f52604160045260245ffd5b5f805f805f8060808789031215610a53575f80fd5b863567ffffffffffffffff80821115610a6a575f80fd5b610a768a838b016109a6565b90985096506020890135915080821115610a8e575f80fd5b818901915089601f830112610aa1575f80fd5b813581811115610ab357610ab3610a2a565b604051601f8201601f19908116603f01168101908382118183101715610adb57610adb610a2a565b816040528281528c6020848701011115610af3575f80fd5b826020860160208301375f602084830101528098505050506040890135915080821115610b1e575f80fd5b50610b2b89828a016109a6565b979a9699509497949695606090950135949350505050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f8235605e19833603018112610b91575f80fd5b9190910192915050565b5f808335601e19843603018112610bb0575f80fd5b83018035915067ffffffffffffffff821115610bca575f80fd5b6020019150368190038213156109e4575f80fd5b5f60018201610bfb57634e487b7160e01b5f52601160045260245ffd5b5060010190565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b5f60208284031215610c3f575f80fd5b81518015158114610635575f80fd5b5f81515f5b81811015610c6d5760208185018101518683015201610c53565b505f93019283525090919050565b5f610c868286610c4e565b838582375f930192835250909392505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f610cd4606083018688610c99565b6001600160a01b03949094166020830152506040015292915050565b602081525f61037b602083018486610c99565b5f6106358284610c4e56fea2646970667358221220d60455b2e0c177361c7d97bd59850f966664698864856dd2499dae185086e57764736f6c63430008150033

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

0000000000000000000000001b514df3413da9931eb31f2ab72e32c0a507cad50000000000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _owner (address): 0x1b514df3413DA9931eB31f2Ab72e32c0A507Cad5
Arg [1] : _auth (address): 0x0000000000000000000000000000000000000000

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000001b514df3413da9931eb31f2ab72e32c0a507cad5
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

240:2621:4:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2300:239;;;;;;:::i;:::-;;:::i;:::-;;1523:434:1;;;;;;:::i;:::-;;:::i;562:20::-;;;;;-1:-1:-1;;;;;562:20:1;;;;;;-1:-1:-1;;;;;1246:32:5;;;1228:51;;1216:2;1201:18;562:20:1;;;;;;;;2545:175:4;;;;;;:::i;:::-;;:::i;589:26:1:-;;;;;-1:-1:-1;;;;;589:26:1;;;1600:694:4;;;;;;:::i;:::-;;:::i;1963:164:1:-;;;;;;:::i;:::-;;:::i;2726:133:4:-;;;;;;:::i;:::-;;:::i;:::-;;;4397:25:5;;;4385:2;4370:18;2726:133:4;4251:177:5;2300:239:4;902:33:1;915:10;927:7;;-1:-1:-1;;;;;;927:7:1;902:12;:33::i;:::-;894:58;;;;-1:-1:-1;;;894:58:1;;;;;;;:::i;:::-;;;;;;;;;2390:3:4;2370:17:::1;2410:123;2430:9;2426:1;:13;2410:123;;;2460:62;2496:3;;2500:1;2496:6;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:11;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;2460:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;2509:3:4;;-1:-1:-1;2509:3:4;;-1:-1:-1;2513:1:4;;-1:-1:-1;2509:6:4;;::::1;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:12;;;2460:3;;2464:1;2460:6;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:13;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;;;;;2460:35:4::1;::::0;:62;:35:::1;:62::i;:::-;-1:-1:-1::0;2441:3:4;::::1;::::0;::::1;:::i;:::-;;;;2410:123;;;;2360:179;2300:239:::0;;:::o;1523:434:1:-;1794:5;;-1:-1:-1;;;;;1794:5:1;1780:10;:19;;:76;;-1:-1:-1;1803:9:1;;:53;;-1:-1:-1;;;1803:53:1;;-1:-1:-1;;;;;1803:9:1;;;;:17;;:53;;1821:10;;1841:4;;-1:-1:-1;;;;;;1803:9:1;1848:7;;;1803:53;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1772:85;;;;;;1868:9;:24;;-1:-1:-1;;;;;;1868:24:1;-1:-1:-1;;;;;1868:24:1;;;;;;;;1908:42;;1925:10;;1908:42;;-1:-1:-1;;1908:42:1;1523:434;:::o;2545:175:4:-;2610:7;2629:12;2644:26;2665:4;;2644:20;:26::i;:::-;2629:41;;2688:25;2708:4;2688:19;:25::i;:::-;2681:32;2545:175;-1:-1:-1;;;;2545:175:4:o;1600:694::-;1789:7;902:33:1;915:10;927:7;;-1:-1:-1;;;;;;927:7:1;902:12;:33::i;:::-;894:58;;;;-1:-1:-1;;;894:58:1;;;;;;;:::i;:::-;1835:23:4;;::::1;::::0;::::1;::::0;1873:26;;1869:183:::1;;2011:12;2025:15;;1994:47;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1979:62;;1869:183;2062:12;2077:26;2098:4;;2077:20;:26::i;:::-;2062:41;;2114:23;2140:41;2155:4;2161:12;2175:5;2140:14;:41::i;:::-;2114:67;;2197:57;2214:4;;2220:15;2237:16;2197:57;;;;;;;;;:::i;:::-;;;;;;;;2272:15:::0;1600:694;-1:-1:-1;;;;;;;;;1600:694:4:o;1963:164:1:-;902:33;915:10;927:7;;-1:-1:-1;;;;;;927:7:1;902:12;:33::i;:::-;894:58;;;;-1:-1:-1;;;894:58:1;;;;;;;:::i;:::-;2046:5:::1;:16:::0;;-1:-1:-1;;;;;;2046:16:1::1;-1:-1:-1::0;;;;;2046:16:1;::::1;::::0;;::::1;::::0;;2078:42:::1;::::0;2046:16;;2099:10:::1;::::0;2078:42:::1;::::0;2046:5;2078:42:::1;1963:164:::0;:::o;2726:133:4:-;2799:7;2846:4;;2835:16;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2825:27;;;;;;2818:34;;2726:133;;;;:::o;977:540:1:-;1097:9;;1064:4;;-1:-1:-1;;;;;1097:9:1;1415:27;;;;;:77;;-1:-1:-1;1446:46:1;;-1:-1:-1;;;1446:46:1;;-1:-1:-1;;;;;1446:12:1;;;;;:46;;1459:4;;1473;;1480:11;;1446:46;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1414:96;;;-1:-1:-1;1505:5:1;;-1:-1:-1;;;;;1497:13:1;;;1505:5;;1497:13;1407:103;;;977:540;;;;:::o;3180:392:0:-;3279:12;3331:5;3307:21;:29;3303:108;;;3359:41;;-1:-1:-1;;;3359:41:0;;3394:4;3359:41;;;1228:51:5;1201:18;;3359:41:0;1082:203:5;3303:108:0;3421:12;3435:23;3462:6;-1:-1:-1;;;;;3462:11:0;3481:5;3488:4;3462:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3420:73;;;;3510:55;3537:6;3545:7;3554:10;3510:26;:55::i;:::-;3503:62;;;;3180:392;;;;;;:::o;3325:123:3:-;3383:7;3409:32;3421:4;3435;3409:11;:32::i;:::-;3402:39;3325:123;-1:-1:-1;;3325:123:3:o;2523:796::-;2643:16;2671:31;2705:14;;;;;;;;;;;;;-1:-1:-1;;;2705:14:3;;;2671:48;;2730:13;3053:4;3032:18;3026:25;3021:2;3001:18;2997:27;2994:1;2986:72;2977:81;-1:-1:-1;;;;;;3085:19:3;;3077:49;;;;-1:-1:-1;;;3077:49:3;;8714:2:5;3077:49:3;;;8696:21:5;8753:2;8733:18;;;8726:30;-1:-1:-1;;;8772:18:5;;;8765:47;8829:18;;3077:49:3;8512:341:5;3077:49:3;3148:17;3160:4;3148:11;:17::i;:::-;3137:28;;3176:12;3194:5;-1:-1:-1;;;;;3194:10:3;3212:5;3219:12;3194:38;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3175:57;;;3250:7;:36;;;;-1:-1:-1;;;;;;3261:20:3;;;:25;;3250:36;3242:70;;;;-1:-1:-1;;;3242:70:3;;9060:2:5;3242:70:3;;;9042:21:5;9099:2;9079:18;;;9072:30;-1:-1:-1;;;9118:18:5;;;9111:51;9179:18;;3242:70:3;8858:345:5;3242:70:3;2661:658;;;2523:796;;;;;:::o;4625:582:0:-;4769:12;4798:7;4793:408;;4821:19;4829:10;4821:7;:19::i;:::-;4793:408;;;5045:17;;:22;:49;;;;-1:-1:-1;;;;;;5071:18:0;;;:23;5045:49;5041:119;;;5121:24;;-1:-1:-1;;;5121:24:0;;-1:-1:-1;;;;;1246:32:5;;5121:24:0;;;1228:51:5;1201:18;;5121:24:0;1082:203:5;5041:119:0;-1:-1:-1;5180:10:0;5173:17;;3454:862:3;2501:14;;;;;;;;;;;-1:-1:-1;;;2501:14:3;;;;;3587:258;;-1:-1:-1;;;;;;3587:258:3;;;9419:39:5;;;;-1:-1:-1;;9495:2:5;9491:15;;;9487:53;9474:11;;;9467:74;9557:12;;;9550:28;;;2491:25:3;9594:12:5;;;9587:28;-1:-1:-1;;;;3564:309:3;;9631:12:5;;3587:258:3;;;;;;;;;;;;;3564:291;;;;;;398:10:2;280:138;3564:309:3;3930:347;;-1:-1:-1;;;3930:347:3;;;9985:28:5;-1:-1:-1;;10050:2:5;10046:15;;;10042:53;10029:11;;;10022:74;-1:-1:-1;;;10112:12:5;;;10105:33;3548:325:3;;-1:-1:-1;3903:406:3;;10154:12:5;;3930:347:3;9654:518:5;5743:516:0;5874:17;;:21;5870:383;;6102:10;6096:17;6158:15;6145:10;6141:2;6137:19;6130:44;5870:383;6225:17;;-1:-1:-1;;;6225:17:0;;;;;;;;;;;5870:383;5743:516;:::o;14:636:5:-;121:6;129;182:2;170:9;161:7;157:23;153:32;150:52;;;198:1;195;188:12;150:52;238:9;225:23;267:18;308:2;300:6;297:14;294:34;;;324:1;321;314:12;294:34;362:6;351:9;347:22;337:32;;407:7;400:4;396:2;392:13;388:27;378:55;;429:1;426;419:12;378:55;469:2;456:16;495:2;487:6;484:14;481:34;;;511:1;508;501:12;481:34;564:7;559:2;549:6;546:1;542:14;538:2;534:23;530:32;527:45;524:65;;;585:1;582;575:12;524:65;616:2;608:11;;;;;638:6;;-1:-1:-1;14:636:5;;-1:-1:-1;;;;14:636:5:o;655:142::-;-1:-1:-1;;;;;741:31:5;;731:42;;721:70;;787:1;784;777:12;802:275;878:6;931:2;919:9;910:7;906:23;902:32;899:52;;;947:1;944;937:12;899:52;986:9;973:23;1005:42;1041:5;1005:42;:::i;1290:348::-;1342:8;1352:6;1406:3;1399:4;1391:6;1387:17;1383:27;1373:55;;1424:1;1421;1414:12;1373:55;-1:-1:-1;1447:20:5;;1490:18;1479:30;;1476:50;;;1522:1;1519;1512:12;1476:50;1559:4;1551:6;1547:17;1535:29;;1611:3;1604:4;1595:6;1587;1583:19;1579:30;1576:39;1573:59;;;1628:1;1625;1618:12;1573:59;1290:348;;;;;:::o;1643:411::-;1714:6;1722;1775:2;1763:9;1754:7;1750:23;1746:32;1743:52;;;1791:1;1788;1781:12;1743:52;1831:9;1818:23;1864:18;1856:6;1853:30;1850:50;;;1896:1;1893;1886:12;1850:50;1935:59;1986:7;1977:6;1966:9;1962:22;1935:59;:::i;:::-;2013:8;;1909:85;;-1:-1:-1;1643:411:5;-1:-1:-1;;;;1643:411:5:o;2284:127::-;2345:10;2340:3;2336:20;2333:1;2326:31;2376:4;2373:1;2366:15;2400:4;2397:1;2390:15;2416:1567;2534:6;2542;2550;2558;2566;2574;2627:3;2615:9;2606:7;2602:23;2598:33;2595:53;;;2644:1;2641;2634:12;2595:53;2684:9;2671:23;2713:18;2754:2;2746:6;2743:14;2740:34;;;2770:1;2767;2760:12;2740:34;2809:59;2860:7;2851:6;2840:9;2836:22;2809:59;:::i;:::-;2887:8;;-1:-1:-1;2783:85:5;-1:-1:-1;2975:2:5;2960:18;;2947:32;;-1:-1:-1;2991:16:5;;;2988:36;;;3020:1;3017;3010:12;2988:36;3058:8;3047:9;3043:24;3033:34;;3105:7;3098:4;3094:2;3090:13;3086:27;3076:55;;3127:1;3124;3117:12;3076:55;3163:2;3150:16;3185:2;3181;3178:10;3175:36;;;3191:18;;:::i;:::-;3266:2;3260:9;3234:2;3320:13;;-1:-1:-1;;3316:22:5;;;3340:2;3312:31;3308:40;3296:53;;;3364:18;;;3384:22;;;3361:46;3358:72;;;3410:18;;:::i;:::-;3450:10;3446:2;3439:22;3485:2;3477:6;3470:18;3525:7;3520:2;3515;3511;3507:11;3503:20;3500:33;3497:53;;;3546:1;3543;3536:12;3497:53;3602:2;3597;3593;3589:11;3584:2;3576:6;3572:15;3559:46;3647:1;3642:2;3637;3629:6;3625:15;3621:24;3614:35;3668:6;3658:16;;;;;3727:2;3716:9;3712:18;3699:32;3683:48;;3756:2;3746:8;3743:16;3740:36;;;3772:1;3769;3762:12;3740:36;;3811:61;3864:7;3853:8;3842:9;3838:24;3811:61;:::i;:::-;2416:1567;;;;-1:-1:-1;2416:1567:5;;;;;3973:2;3958:18;;;3945:32;;2416:1567;-1:-1:-1;;;;2416:1567:5:o;4433:336::-;4635:2;4617:21;;;4674:2;4654:18;;;4647:30;-1:-1:-1;;;4708:2:5;4693:18;;4686:42;4760:2;4745:18;;4433:336::o;4774:127::-;4835:10;4830:3;4826:20;4823:1;4816:31;4866:4;4863:1;4856:15;4890:4;4887:1;4880:15;4906:318;4993:4;5051:11;5038:25;5145:2;5141:7;5130:8;5114:14;5110:29;5106:43;5086:18;5082:68;5072:96;;5164:1;5161;5154:12;5072:96;5185:33;;;;;4906:318;-1:-1:-1;;4906:318:5:o;5229:521::-;5306:4;5312:6;5372:11;5359:25;5466:2;5462:7;5451:8;5435:14;5431:29;5427:43;5407:18;5403:68;5393:96;;5485:1;5482;5475:12;5393:96;5512:33;;5564:20;;;-1:-1:-1;5607:18:5;5596:30;;5593:50;;;5639:1;5636;5629:12;5593:50;5672:4;5660:17;;-1:-1:-1;5703:14:5;5699:27;;;5689:38;;5686:58;;;5740:1;5737;5730:12;5755:232;5794:3;5815:17;;;5812:140;;5874:10;5869:3;5865:20;5862:1;5855:31;5909:4;5906:1;5899:15;5937:4;5934:1;5927:15;5812:140;-1:-1:-1;5979:1:5;5968:13;;5755:232::o;5992:400::-;-1:-1:-1;;;;;6248:15:5;;;6230:34;;6300:15;;;;6295:2;6280:18;;6273:43;-1:-1:-1;;;;;;6352:33:5;;;6347:2;6332:18;;6325:61;6180:2;6165:18;;5992:400::o;6397:277::-;6464:6;6517:2;6505:9;6496:7;6492:23;6488:32;6485:52;;;6533:1;6530;6523:12;6485:52;6565:9;6559:16;6618:5;6611:13;6604:21;6597:5;6594:32;6584:60;;6640:1;6637;6630:12;6679:322;6720:3;6758:5;6752:12;6782:1;6792:128;6806:6;6803:1;6800:13;6792:128;;;6903:4;6888:13;;;6884:24;;6878:31;6865:11;;;6858:52;6821:12;6792:128;;;-1:-1:-1;6975:1:5;6939:16;;6964:13;;;-1:-1:-1;6939:16:5;;6679:322;-1:-1:-1;6679:322:5:o;7006:363::-;7191:3;7219:29;7244:3;7236:6;7219:29;:::i;:::-;7282:6;7274;7270:2;7257:32;7343:1;7308:15;;7332:13;;;-1:-1:-1;7308:15:5;;7006:363;-1:-1:-1;;;7006:363:5:o;7374:267::-;7463:6;7458:3;7451:19;7515:6;7508:5;7501:4;7496:3;7492:14;7479:43;-1:-1:-1;7567:1:5;7542:16;;;7560:4;7538:27;;;7531:38;;;;7623:2;7602:15;;;-1:-1:-1;;7598:29:5;7589:39;;;7585:50;;7374:267::o;7646:415::-;7861:2;7850:9;7843:21;7824:4;7881:62;7939:2;7928:9;7924:18;7916:6;7908;7881:62;:::i;:::-;-1:-1:-1;;;;;7979:32:5;;;;7974:2;7959:18;;7952:60;-1:-1:-1;8043:2:5;8028:18;8021:34;7873:70;7646:415;-1:-1:-1;;7646:415:5:o;8066:247::-;8225:2;8214:9;8207:21;8188:4;8245:62;8303:2;8292:9;8288:18;8280:6;8272;8245:62;:::i;8318:189::-;8447:3;8472:29;8497:3;8489:6;8472:29;:::i

Swarm Source

ipfs://d60455b2e0c177361c7d97bd59850f966664698864856dd2499dae185086e577

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.