ETH Price: $3,437.73 (-3.75%)

Contract

0x110924f5b072679147785e9211612d43490718Cf
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer Ownersh...228755322025-07-08 16:01:47126 days ago1751990507IN
0x110924f5...3490718Cf
0 ETH0.000100873.27557115
Set User Role228379672025-07-03 10:00:35131 days ago1751536835IN
0x110924f5...3490718Cf
0 ETH0.000056131.66944669
Set Role Capabil...228379662025-07-03 10:00:23131 days ago1751536823IN
0x110924f5...3490718Cf
0 ETH0.00008671.68157204
Set User Role228303042025-07-02 8:19:35132 days ago1751444375IN
0x110924f5...3490718Cf
0 ETH0.000026090.77614431
Set User Role228302902025-07-02 8:16:47132 days ago1751444207IN
0x110924f5...3490718Cf
0 ETH0.000024610.7984004
Set Role Capabil...228302872025-07-02 8:16:11132 days ago1751444171IN
0x110924f5...3490718Cf
0 ETH0.000040380.78314429
Set User Role228302622025-07-02 8:11:11132 days ago1751443871IN
0x110924f5...3490718Cf
0 ETH0.000027330.88666951
Set Role Capabil...228302602025-07-02 8:10:47132 days ago1751443847IN
0x110924f5...3490718Cf
0 ETH0.000046370.89938443
Set User Role228302532025-07-02 8:09:23132 days ago1751443763IN
0x110924f5...3490718Cf
0 ETH0.000045070.88854335
Set User Role228302512025-07-02 8:08:59132 days ago1751443739IN
0x110924f5...3490718Cf
0 ETH0.000025680.8915393
Set User Role228302342025-07-02 8:05:35132 days ago1751443535IN
0x110924f5...3490718Cf
0 ETH0.000039720.78313924
Set User Role228269812025-07-01 21:10:11132 days ago1751404211IN
0x110924f5...3490718Cf
0 ETH0.000141362.78683892
Set Role Capabil...228269792025-07-01 21:09:47132 days ago1751404187IN
0x110924f5...3490718Cf
0 ETH0.000141372.74183433
Set User Role228187142025-06-30 17:25:47134 days ago1751304347IN
0x110924f5...3490718Cf
0 ETH0.000112763.35342189
Set Role Capabil...228187102025-06-30 17:24:59134 days ago1751304299IN
0x110924f5...3490718Cf
0 ETH0.00016323.16530082
Set User Role228186202025-06-30 17:06:47134 days ago1751303207IN
0x110924f5...3490718Cf
0 ETH0.000111763.32385858
Set Role Capabil...228186192025-06-30 17:06:35134 days ago1751303195IN
0x110924f5...3490718Cf
0 ETH0.000174673.38772196
Set User Role228186132025-06-30 17:05:23134 days ago1751303123IN
0x110924f5...3490718Cf
0 ETH0.000172513.40087632
Set Role Capabil...228186112025-06-30 17:04:59134 days ago1751303099IN
0x110924f5...3490718Cf
0 ETH0.000116553.38221165
Set Public Capab...227655682025-06-23 7:13:59141 days ago1750662839IN
0x110924f5...3490718Cf
0 ETH0.000038090.74944557
Set Role Capabil...227177242025-06-16 14:37:47148 days ago1750084667IN
0x110924f5...3490718Cf
0 ETH0.000216324.19542633
Set User Role227177242025-06-16 14:37:47148 days ago1750084667IN
0x110924f5...3490718Cf
0 ETH0.000141074.19542633
Set User Role227177242025-06-16 14:37:47148 days ago1750084667IN
0x110924f5...3490718Cf
0 ETH0.000129324.19542633
Set Public Capab...227176932025-06-16 14:31:35148 days ago1750084295IN
0x110924f5...3490718Cf
0 ETH0.000169693.3387693
Transfer Ownersh...227110842025-06-15 16:19:47149 days ago1750004387IN
0x110924f5...3490718Cf
0 ETH0.000072242.34584092
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
FuseRolesAuthority

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
london EvmVersion
File 1 of 3 : FuseRolesAuthority.sol
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.21;

import {RolesAuthority} from "@solmate/auth/authorities/RolesAuthority.sol";
import {Authority} from "@solmate/auth/Auth.sol";

contract FuseRolesAuthority is RolesAuthority {
    constructor(
        address _owner,
        Authority _authority
    ) RolesAuthority(_owner, _authority) {}
}

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

import {Auth, Authority} from "../Auth.sol";

/// @notice Role based Authority that supports up to 256 roles.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/authorities/RolesAuthority.sol)
/// @author Modified from Dappsys (https://github.com/dapphub/ds-roles/blob/master/src/roles.sol)
contract RolesAuthority is Auth, Authority {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event UserRoleUpdated(address indexed user, uint8 indexed role, bool enabled);

    event PublicCapabilityUpdated(address indexed target, bytes4 indexed functionSig, bool enabled);

    event RoleCapabilityUpdated(uint8 indexed role, address indexed target, bytes4 indexed functionSig, bool enabled);

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

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

    /*//////////////////////////////////////////////////////////////
                            ROLE/USER STORAGE
    //////////////////////////////////////////////////////////////*/

    mapping(address => bytes32) public getUserRoles;

    mapping(address => mapping(bytes4 => bool)) public isCapabilityPublic;

    mapping(address => mapping(bytes4 => bytes32)) public getRolesWithCapability;

    function doesUserHaveRole(address user, uint8 role) public view virtual returns (bool) {
        return (uint256(getUserRoles[user]) >> role) & 1 != 0;
    }

    function doesRoleHaveCapability(
        uint8 role,
        address target,
        bytes4 functionSig
    ) public view virtual returns (bool) {
        return (uint256(getRolesWithCapability[target][functionSig]) >> role) & 1 != 0;
    }

    /*//////////////////////////////////////////////////////////////
                           AUTHORIZATION LOGIC
    //////////////////////////////////////////////////////////////*/

    function canCall(
        address user,
        address target,
        bytes4 functionSig
    ) public view virtual override returns (bool) {
        return
            isCapabilityPublic[target][functionSig] ||
            bytes32(0) != getUserRoles[user] & getRolesWithCapability[target][functionSig];
    }

    /*//////////////////////////////////////////////////////////////
                   ROLE CAPABILITY CONFIGURATION LOGIC
    //////////////////////////////////////////////////////////////*/

    function setPublicCapability(
        address target,
        bytes4 functionSig,
        bool enabled
    ) public virtual requiresAuth {
        isCapabilityPublic[target][functionSig] = enabled;

        emit PublicCapabilityUpdated(target, functionSig, enabled);
    }

    function setRoleCapability(
        uint8 role,
        address target,
        bytes4 functionSig,
        bool enabled
    ) public virtual requiresAuth {
        if (enabled) {
            getRolesWithCapability[target][functionSig] |= bytes32(1 << role);
        } else {
            getRolesWithCapability[target][functionSig] &= ~bytes32(1 << role);
        }

        emit RoleCapabilityUpdated(role, target, functionSig, enabled);
    }

    /*//////////////////////////////////////////////////////////////
                       USER ROLE ASSIGNMENT LOGIC
    //////////////////////////////////////////////////////////////*/

    function setUserRole(
        address user,
        uint8 role,
        bool enabled
    ) public virtual requiresAuth {
        if (enabled) {
            getUserRoles[user] |= bytes32(1 << role);
        } else {
            getUserRoles[user] &= ~bytes32(1 << role);
        }

        emit UserRoleUpdated(user, role, enabled);
    }
}

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

Settings
{
  "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/",
    "lib/solidity-bytes-utils/=lib/OAppAuth/lib/solidity-bytes-utils/",
    "@oz/=lib/openzeppelin-contracts-upgradeable/contracts/",
    "@ccip/=lib/ccip/",
    "@oapp-auth/=lib/OAppAuth/src/",
    "@axelar-network/=node_modules/@axelar-network/",
    "@chainlink/=node_modules/@chainlink/",
    "@devtools-oapp-evm/=lib/OAppAuth/lib/devtools/packages/oapp-evm/contracts/oapp/",
    "@eth-optimism/=node_modules/@eth-optimism/",
    "@layerzerolabs/=node_modules/@layerzerolabs/",
    "@lz-oapp-evm/=lib/OAppAuth/lib/LayerZero-V2/packages/layerzero-v2/evm/oapp/contracts/oapp/",
    "@uniswap/=node_modules/@uniswap/",
    "LayerZero-V2/=lib/OAppAuth/lib/",
    "OAppAuth/=lib/OAppAuth/",
    "base64-sol/=node_modules/base64-sol/",
    "ccip/=lib/ccip/contracts/",
    "erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/",
    "forge-std/=lib/forge-std/src/",
    "halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/",
    "hardhat-deploy/=node_modules/hardhat-deploy/",
    "hardhat/=node_modules/hardhat/",
    "openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/",
    "solidity-bytes-utils/=node_modules/solidity-bytes-utils/",
    "solmate/=lib/solmate/src/",
    "uniswap/=node_modules/uniswap/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "viaIR": false,
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract Authority","name":"_authority","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"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":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":true,"internalType":"bytes4","name":"functionSig","type":"bytes4"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"PublicCapabilityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"role","type":"uint8"},{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":true,"internalType":"bytes4","name":"functionSig","type":"bytes4"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"RoleCapabilityUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"uint8","name":"role","type":"uint8"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"UserRoleUpdated","type":"event"},{"inputs":[],"name":"authority","outputs":[{"internalType":"contract Authority","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes4","name":"functionSig","type":"bytes4"}],"name":"canCall","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"role","type":"uint8"},{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes4","name":"functionSig","type":"bytes4"}],"name":"doesRoleHaveCapability","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint8","name":"role","type":"uint8"}],"name":"doesUserHaveRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes4","name":"","type":"bytes4"}],"name":"getRolesWithCapability","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"getUserRoles","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes4","name":"","type":"bytes4"}],"name":"isCapabilityPublic","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"target","type":"address"},{"internalType":"bytes4","name":"functionSig","type":"bytes4"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setPublicCapability","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"role","type":"uint8"},{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes4","name":"functionSig","type":"bytes4"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setRoleCapability","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint8","name":"role","type":"uint8"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setUserRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50604051610ba2380380610ba283398101604081905261002f916100e7565b600080546001600160a01b03199081166001600160a01b0385811691821784556001805490931690851617909155604051849284928492849233917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a36040516001600160a01b0382169033907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b7638998019890600090a3505050505050610121565b6001600160a01b03811681146100e457600080fd5b50565b600080604083850312156100fa57600080fd5b8251610105816100cf565b6020840151909250610116816100cf565b809150509250929050565b610a72806101306000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80638da5cb5b1161008c578063bf7e214f11610066578063bf7e214f14610236578063c6b0263e14610249578063ea7ca2761461025c578063f2fde38b1461029357600080fd5b80638da5cb5b146101ab578063b4bad06a146101d6578063b70096131461022357600080fd5b806306a36aee146100d45780632f47571f1461010757806367aff484146101455780637917b7941461015a5780637a9e5e4b146101855780637d40583d14610198575b600080fd5b6100f46100e23660046107d7565b60026020526000908152604090205481565b6040519081526020015b60405180910390f35b610135610115366004610818565b600360209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100fe565b61015861015336600461086c565b6102a6565b005b6100f4610168366004610818565b600460209081526000928352604080842090915290825290205481565b6101586101933660046107d7565b610384565b6101586101a63660046108b5565b61046e565b6000546101be906001600160a01b031681565b6040516001600160a01b0390911681526020016100fe565b6101356101e436600461090d565b6001600160a01b039190911660009081526004602090815260408083206001600160e01b031990941683529290522054600160ff929092161c16151590565b610135610231366004610952565b610579565b6001546101be906001600160a01b031681565b610158610257366004610972565b6105f8565b61013561026a3660046109a0565b6001600160a01b0391909116600090815260026020526040902054600160ff9092161c16151590565b6101586102a13660046107d7565b610699565b6102bc336000356001600160e01b031916610716565b6102e15760405162461bcd60e51b81526004016102d8906109cc565b60405180910390fd5b8015610310576001600160a01b03831660009081526002602052604090208054600160ff85161b179055610336565b6001600160a01b03831660009081526002602052604090208054600160ff85161b191690555b8160ff16836001600160a01b03167f4c9bdd0c8e073eb5eda2250b18d8e5121ff27b62064fbeeeed4869bb99bc5bf283604051610377911515815260200190565b60405180910390a3505050565b6000546001600160a01b0316331480610419575060015460405163b700961360e01b81526001600160a01b039091169063b7009613906103d890339030906001600160e01b031960003516906004016109f2565b602060405180830381865afa1580156103f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104199190610a1f565b61042257600080fd5b600180546001600160a01b0319166001600160a01b03831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b7638998019890600090a350565b610484336000356001600160e01b031916610716565b6104a05760405162461bcd60e51b81526004016102d8906109cc565b80156104e4576001600160a01b03831660009081526004602090815260408083206001600160e01b03198616845290915290208054600160ff87161b17905561051f565b6001600160a01b03831660009081526004602090815260408083206001600160e01b03198616845290915290208054600160ff87161b191690555b816001600160e01b031916836001600160a01b03168560ff167fa52ea92e6e955aa8ac66420b86350f7139959adfcc7e6a14eee1bd116d09860e8460405161056b911515815260200190565b60405180910390a450505050565b6001600160a01b03821660009081526003602090815260408083206001600160e01b03198516845290915281205460ff16806105f057506001600160a01b0380841660009081526004602090815260408083206001600160e01b031987168452825280832054938816835260029091529020541615155b949350505050565b61060e336000356001600160e01b031916610716565b61062a5760405162461bcd60e51b81526004016102d8906109cc565b6001600160a01b03831660008181526003602090815260408083206001600160e01b0319871680855290835292819020805460ff191686151590811790915590519081529192917f950a343f5d10445e82a71036d3f4fb3016180a25805141932543b83e2078a93e9101610377565b6106af336000356001600160e01b031916610716565b6106cb5760405162461bcd60e51b81526004016102d8906109cc565b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001546000906001600160a01b031680158015906107a0575060405163b700961360e01b81526001600160a01b0382169063b70096139061075f908790309088906004016109f2565b602060405180830381865afa15801561077c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a09190610a1f565b806105f057506000546001600160a01b03858116911614949350505050565b6001600160a01b03811681146107d457600080fd5b50565b6000602082840312156107e957600080fd5b81356107f4816107bf565b9392505050565b80356001600160e01b03198116811461081357600080fd5b919050565b6000806040838503121561082b57600080fd5b8235610836816107bf565b9150610844602084016107fb565b90509250929050565b803560ff8116811461081357600080fd5b80151581146107d457600080fd5b60008060006060848603121561088157600080fd5b833561088c816107bf565b925061089a6020850161084d565b915060408401356108aa8161085e565b809150509250925092565b600080600080608085870312156108cb57600080fd5b6108d48561084d565b935060208501356108e4816107bf565b92506108f2604086016107fb565b915060608501356109028161085e565b939692955090935050565b60008060006060848603121561092257600080fd5b61092b8461084d565b9250602084013561093b816107bf565b9150610949604085016107fb565b90509250925092565b60008060006060848603121561096757600080fd5b833561092b816107bf565b60008060006060848603121561098757600080fd5b8335610992816107bf565b925061089a602085016107fb565b600080604083850312156109b357600080fd5b82356109be816107bf565b91506108446020840161084d565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b600060208284031215610a3157600080fd5b81516107f48161085e56fea2646970667358221220de723a872b44df8ef028362d1b11bcef88ee708b7d9718d8cf5503fda6cac67364736f6c634300081500330000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b0000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80638da5cb5b1161008c578063bf7e214f11610066578063bf7e214f14610236578063c6b0263e14610249578063ea7ca2761461025c578063f2fde38b1461029357600080fd5b80638da5cb5b146101ab578063b4bad06a146101d6578063b70096131461022357600080fd5b806306a36aee146100d45780632f47571f1461010757806367aff484146101455780637917b7941461015a5780637a9e5e4b146101855780637d40583d14610198575b600080fd5b6100f46100e23660046107d7565b60026020526000908152604090205481565b6040519081526020015b60405180910390f35b610135610115366004610818565b600360209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100fe565b61015861015336600461086c565b6102a6565b005b6100f4610168366004610818565b600460209081526000928352604080842090915290825290205481565b6101586101933660046107d7565b610384565b6101586101a63660046108b5565b61046e565b6000546101be906001600160a01b031681565b6040516001600160a01b0390911681526020016100fe565b6101356101e436600461090d565b6001600160a01b039190911660009081526004602090815260408083206001600160e01b031990941683529290522054600160ff929092161c16151590565b610135610231366004610952565b610579565b6001546101be906001600160a01b031681565b610158610257366004610972565b6105f8565b61013561026a3660046109a0565b6001600160a01b0391909116600090815260026020526040902054600160ff9092161c16151590565b6101586102a13660046107d7565b610699565b6102bc336000356001600160e01b031916610716565b6102e15760405162461bcd60e51b81526004016102d8906109cc565b60405180910390fd5b8015610310576001600160a01b03831660009081526002602052604090208054600160ff85161b179055610336565b6001600160a01b03831660009081526002602052604090208054600160ff85161b191690555b8160ff16836001600160a01b03167f4c9bdd0c8e073eb5eda2250b18d8e5121ff27b62064fbeeeed4869bb99bc5bf283604051610377911515815260200190565b60405180910390a3505050565b6000546001600160a01b0316331480610419575060015460405163b700961360e01b81526001600160a01b039091169063b7009613906103d890339030906001600160e01b031960003516906004016109f2565b602060405180830381865afa1580156103f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104199190610a1f565b61042257600080fd5b600180546001600160a01b0319166001600160a01b03831690811790915560405133907fa3396fd7f6e0a21b50e5089d2da70d5ac0a3bbbd1f617a93f134b7638998019890600090a350565b610484336000356001600160e01b031916610716565b6104a05760405162461bcd60e51b81526004016102d8906109cc565b80156104e4576001600160a01b03831660009081526004602090815260408083206001600160e01b03198616845290915290208054600160ff87161b17905561051f565b6001600160a01b03831660009081526004602090815260408083206001600160e01b03198616845290915290208054600160ff87161b191690555b816001600160e01b031916836001600160a01b03168560ff167fa52ea92e6e955aa8ac66420b86350f7139959adfcc7e6a14eee1bd116d09860e8460405161056b911515815260200190565b60405180910390a450505050565b6001600160a01b03821660009081526003602090815260408083206001600160e01b03198516845290915281205460ff16806105f057506001600160a01b0380841660009081526004602090815260408083206001600160e01b031987168452825280832054938816835260029091529020541615155b949350505050565b61060e336000356001600160e01b031916610716565b61062a5760405162461bcd60e51b81526004016102d8906109cc565b6001600160a01b03831660008181526003602090815260408083206001600160e01b0319871680855290835292819020805460ff191686151590811790915590519081529192917f950a343f5d10445e82a71036d3f4fb3016180a25805141932543b83e2078a93e9101610377565b6106af336000356001600160e01b031916610716565b6106cb5760405162461bcd60e51b81526004016102d8906109cc565b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001546000906001600160a01b031680158015906107a0575060405163b700961360e01b81526001600160a01b0382169063b70096139061075f908790309088906004016109f2565b602060405180830381865afa15801561077c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a09190610a1f565b806105f057506000546001600160a01b03858116911614949350505050565b6001600160a01b03811681146107d457600080fd5b50565b6000602082840312156107e957600080fd5b81356107f4816107bf565b9392505050565b80356001600160e01b03198116811461081357600080fd5b919050565b6000806040838503121561082b57600080fd5b8235610836816107bf565b9150610844602084016107fb565b90509250929050565b803560ff8116811461081357600080fd5b80151581146107d457600080fd5b60008060006060848603121561088157600080fd5b833561088c816107bf565b925061089a6020850161084d565b915060408401356108aa8161085e565b809150509250925092565b600080600080608085870312156108cb57600080fd5b6108d48561084d565b935060208501356108e4816107bf565b92506108f2604086016107fb565b915060608501356109028161085e565b939692955090935050565b60008060006060848603121561092257600080fd5b61092b8461084d565b9250602084013561093b816107bf565b9150610949604085016107fb565b90509250925092565b60008060006060848603121561096757600080fd5b833561092b816107bf565b60008060006060848603121561098757600080fd5b8335610992816107bf565b925061089a602085016107fb565b600080604083850312156109b357600080fd5b82356109be816107bf565b91506108446020840161084d565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b600060208284031215610a3157600080fd5b81516107f48161085e56fea2646970667358221220de723a872b44df8ef028362d1b11bcef88ee708b7d9718d8cf5503fda6cac67364736f6c63430008150033

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

0000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b0000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b

-----Decoded View---------------
Arg [0] : _owner (address): 0x3B694d634981Ace4B64a27c48bffe19f1447779B
Arg [1] : _authority (address): 0x3B694d634981Ace4B64a27c48bffe19f1447779B

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b
Arg [1] : 0000000000000000000000003b694d634981ace4b64a27c48bffe19f1447779b


Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
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.