Contract 0xc92d3a360b8f9e083ba64de15d95cf8180897431

 

Contract Overview

Livepeer: Proxy Service Registry
Balance:
0 ETH

ETH Value:
$0.00
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xaf408be688e10ee8c00f080eca7b88b9dd17bd4473cb89ad264d4a38d55c22b8Set Service URI196378042022-08-07 15:20:301 day 1 hr ago0xd93e0a15511935889aec76f79d54dff0e27af82e IN  Livepeer: Proxy Service Registry0 ETH0.000039272136 ETH
0x37d32aa921b24acc199857737f20c833176a8806ca62d8ab7e4d6441d16283d9Set Service URI194967732022-08-06 0:20:162 days 16 hrs ago0x75fbf65a3dfe93545c9768f163e59a02daf08d36 IN  Livepeer: Proxy Service Registry0 ETH0.000068412754 ETH
0x0553e31050185526dbdb85e181561f3c00139cc022aeebde88938abd7477071fSet Service URI194870592022-08-05 20:59:072 days 19 hrs ago0x75fbf65a3dfe93545c9768f163e59a02daf08d36 IN  Livepeer: Proxy Service Registry0 ETH0.000074122223 ETH
0x4d5a429db6ccccc508f60e8f26791b66fba3d5c85b554eb77a228ebd1d1d99c0Set Service URI193171252022-08-03 21:26:404 days 19 hrs ago0x89ebf68a825d50ad10c02d721d980012799bfd79 IN  Livepeer: Proxy Service Registry0 ETH0.000075178207 ETH
0x8d28bd11f9de0a48824c51b164a54d41bd9fb85865672d9c6b85f28e8f04b711Set Service URI192237002022-08-02 19:33:295 days 21 hrs ago0x3844e08175d5cc0525975c32d607717ddc8ae47e IN  Livepeer: Proxy Service Registry0 ETH0.000114486375 ETH
0xc2c4024ad1450d71ce86feec8703f7bca98895936cf1d80124a863bdaa7956deSet Service URI191137472022-08-01 11:52:197 days 4 hrs ago0x75fbf65a3dfe93545c9768f163e59a02daf08d36 IN  Livepeer: Proxy Service Registry0 ETH0.000058125203 ETH
0x835fa73b3efa00f7e21528c94d10323e30f59b0545586866efe61573943af055Set Service URI190444362022-07-31 14:46:048 days 1 hr ago0xbb4c38fae6eef586f521e369117354e43ac7dd5b IN  Livepeer: Proxy Service Registry0 ETH0.000043749541 ETH
0x6252b89554ce9bf10686c49826ed68b285adfd00f6e3940699fe014e898bceb2Set Service URI187035862022-07-27 15:18:0612 days 1 hr ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000073423089 ETH
0x9d1fdf35e8261ee1a07bc5f6c53fead6d70b691a9ae5b3d0100e028a55ffcd22Set Service URI184725452022-07-24 21:29:3714 days 19 hrs ago0x25fa0e2b1cd178e9ba706721313cc7cab315f520 IN  Livepeer: Proxy Service Registry0 ETH0.000053749136 ETH
0x9d89c4b4f022cde52d5e1716911ddef5e80af16694f70e55b241a16931b6880eSet Service URI182021252022-07-21 12:27:3018 days 4 hrs ago0x4bd850175a4e43afee34ae7b7dcd079a572dd69b IN  Livepeer: Proxy Service Registry0 ETH0.000103166627 ETH
0x9b50bf7c48da41e5e0c8412053d5ac41705d914486dc6854f02c5604c92c8fd3Set Service URI181436652022-07-20 21:23:0418 days 19 hrs ago0xd93e0a15511935889aec76f79d54dff0e27af82e IN  Livepeer: Proxy Service Registry0 ETH0.000168909502 ETH
0xdbace6895e64f93df966a34e3fcdaa238afadbdbab91bea18bb525b773383d86Set Service URI181427272022-07-20 21:06:4118 days 19 hrs ago0x3640969c6dc1736e343bd3e8a363a7d51d6a8952 IN  Livepeer: Proxy Service Registry0 ETH0.000187297289 ETH
0x73ed8ab9b4a92994cd2a22ea02969dcc30f98bd7c2b64942816d609bcd799044Set Service URI180658802022-07-20 2:48:1619 days 13 hrs ago0xdb22609515433e664e28067c81704d8266098986 IN  Livepeer: Proxy Service Registry0 ETH0.000143796354 ETH
0xf6b88b7969a23a534c8d9b5c5ade094ff8a40d7042fbe05a28a67d929ba357e1Set Service URI174359962022-07-11 18:00:1827 days 22 hrs ago0xbea1956531ebffd79b6c7a41fe88480cbcff4f2b IN  Livepeer: Proxy Service Registry0 ETH0.000156099739 ETH
0x9c4f53bc523be73bb5873e2b97742deb6dd4e7caa2902fe820c7340ba2ec2da7Set Service URI173896292022-07-10 20:52:5628 days 19 hrs ago0xeb6dde1a9e305fe8b1556056bbdf14d25d3a878b IN  Livepeer: Proxy Service Registry0 ETH0.000143538305 ETH
0x14c26a526ca4782313319f77f67658b8bcd0adcd826a8006dabb553bac90a989Set Service URI173864532022-07-10 19:10:2228 days 21 hrs ago0xeb6dde1a9e305fe8b1556056bbdf14d25d3a878b IN  Livepeer: Proxy Service Registry0 ETH0.00010128181 ETH
0x59018d0e1b2e3ba26faee09eed6047bffd811224201db0390390d8da50fa390dSet Service URI173400172022-07-09 23:38:4129 days 16 hrs ago0x2330535ccfa87091fe934abaf8798f5cc3976608 IN  Livepeer: Proxy Service Registry0 ETH0.000132400907 ETH
0xcbce7c4c5b0809cf13455233a2107ebd4c77c0a19a48645e9f38b64aa9395e62Set Service URI172706892022-07-08 18:32:5430 days 22 hrs ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000173877866 ETH
0x968aad204ffa88e02e43ab1201e08f6ec69dce2df90aa311141317dc6017612fSet Service URI171901612022-07-07 13:24:5232 days 3 hrs ago0x89ebf68a825d50ad10c02d721d980012799bfd79 IN  Livepeer: Proxy Service Registry0 ETH0.000158896559 ETH
0x6ca44884df1191dec4e8b8701acaa125f04f9c33fe9a32852401cad1476df5ceSet Service URI170844062022-07-05 23:30:2533 days 17 hrs ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000143974308 ETH
0x6e03a33152e2dbba4465d59b250b8f91c2abfea8db1c0ff75966cdc9a37cb142Set Service URI170762672022-07-05 20:13:1733 days 20 hrs ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000150107433 ETH
0x2bc577ea0bd4575cd2f6e4079aed757c188ee5a5fcac27dacd5aa9d12361faaaSet Service URI166960852022-07-01 7:49:1838 days 8 hrs ago0xdc28f2842810d1a013ad51de174d02eaba192dc7 IN  Livepeer: Proxy Service Registry0 ETH0.000185051204 ETH
0xf98251ade318704d0cf3dbbd6adae40c4d4172b99cfcbb176597ae5d9e997bdcSet Service URI166356632022-06-30 16:31:2939 days 2 mins ago0xdc28f2842810d1a013ad51de174d02eaba192dc7 IN  Livepeer: Proxy Service Registry0 ETH0.000234559855 ETH
0xb83b5ec90ad7778d55bccc27d5c777f20eba0057c8d70d14af2ed8a10b27ac0fSet Service URI164838862022-06-29 18:45:5639 days 21 hrs ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000245936345 ETH
0x30234efecca812088f556e15a4daa8f8d947f4a057ef6523d7c8803a0e9aefc4Set Service URI163485902022-06-29 3:50:1440 days 12 hrs ago0x5263e0ce3a97b634d8828ce4337ad0f70b30b077 IN  Livepeer: Proxy Service Registry0 ETH0.000443162409 ETH
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xaf408be688e10ee8c00f080eca7b88b9dd17bd4473cb89ad264d4a38d55c22b8196378042022-08-07 15:20:301 day 1 hr ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0xaf408be688e10ee8c00f080eca7b88b9dd17bd4473cb89ad264d4a38d55c22b8196378042022-08-07 15:20:301 day 1 hr ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x37d32aa921b24acc199857737f20c833176a8806ca62d8ab7e4d6441d16283d9194967732022-08-06 0:20:162 days 16 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x37d32aa921b24acc199857737f20c833176a8806ca62d8ab7e4d6441d16283d9194967732022-08-06 0:20:162 days 16 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x0553e31050185526dbdb85e181561f3c00139cc022aeebde88938abd7477071f194870592022-08-05 20:59:072 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x0553e31050185526dbdb85e181561f3c00139cc022aeebde88938abd7477071f194870592022-08-05 20:59:072 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x4d5a429db6ccccc508f60e8f26791b66fba3d5c85b554eb77a228ebd1d1d99c0193171252022-08-03 21:26:404 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x4d5a429db6ccccc508f60e8f26791b66fba3d5c85b554eb77a228ebd1d1d99c0193171252022-08-03 21:26:404 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x8d28bd11f9de0a48824c51b164a54d41bd9fb85865672d9c6b85f28e8f04b711192237002022-08-02 19:33:295 days 21 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x8d28bd11f9de0a48824c51b164a54d41bd9fb85865672d9c6b85f28e8f04b711192237002022-08-02 19:33:295 days 21 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0xc2c4024ad1450d71ce86feec8703f7bca98895936cf1d80124a863bdaa7956de191137472022-08-01 11:52:197 days 4 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0xc2c4024ad1450d71ce86feec8703f7bca98895936cf1d80124a863bdaa7956de191137472022-08-01 11:52:197 days 4 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x835fa73b3efa00f7e21528c94d10323e30f59b0545586866efe61573943af055190444362022-07-31 14:46:048 days 1 hr ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x835fa73b3efa00f7e21528c94d10323e30f59b0545586866efe61573943af055190444362022-07-31 14:46:048 days 1 hr ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x6252b89554ce9bf10686c49826ed68b285adfd00f6e3940699fe014e898bceb2187035862022-07-27 15:18:0612 days 1 hr ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x6252b89554ce9bf10686c49826ed68b285adfd00f6e3940699fe014e898bceb2187035862022-07-27 15:18:0612 days 1 hr ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x9d1fdf35e8261ee1a07bc5f6c53fead6d70b691a9ae5b3d0100e028a55ffcd22184725452022-07-24 21:29:3714 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x9d1fdf35e8261ee1a07bc5f6c53fead6d70b691a9ae5b3d0100e028a55ffcd22184725452022-07-24 21:29:3714 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x9d89c4b4f022cde52d5e1716911ddef5e80af16694f70e55b241a16931b6880e182021252022-07-21 12:27:3018 days 4 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x9d89c4b4f022cde52d5e1716911ddef5e80af16694f70e55b241a16931b6880e182021252022-07-21 12:27:3018 days 4 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x9b50bf7c48da41e5e0c8412053d5ac41705d914486dc6854f02c5604c92c8fd3181436652022-07-20 21:23:0418 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0x9b50bf7c48da41e5e0c8412053d5ac41705d914486dc6854f02c5604c92c8fd3181436652022-07-20 21:23:0418 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0xdbace6895e64f93df966a34e3fcdaa238afadbdbab91bea18bb525b773383d86181427272022-07-20 21:06:4118 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
0xdbace6895e64f93df966a34e3fcdaa238afadbdbab91bea18bb525b773383d86181427272022-07-20 21:06:4118 days 19 hrs ago Livepeer: Proxy Service Registry Livepeer: Controller0 ETH
0x73ed8ab9b4a92994cd2a22ea02969dcc30f98bd7c2b64942816d609bcd799044180658802022-07-20 2:48:1619 days 13 hrs ago Livepeer: Proxy Service Registry Livepeer: Target Service Registry0 ETH
[ Download CSV Export 
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0x35Bcf3c30594191d53231E4FF333E8A770453e40

Contract Name:
ManagerProxy

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
File 1 of 7 : IController.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./zeppelin/Pausable.sol";

abstract contract IController is Pausable {
    event SetContractInfo(bytes32 id, address contractAddress, bytes20 gitCommitHash);

    function setContractInfo(
        bytes32 _id,
        address _contractAddress,
        bytes20 _gitCommitHash
    ) external virtual;

    function updateController(bytes32 _id, address _controller) external virtual;

    function getContract(bytes32 _id) public view virtual returns (address);
}

File 2 of 7 : IManager.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

interface IManager {
    event SetController(address controller);
    event ParameterUpdate(string param);

    function setController(address _controller) external;
}

File 3 of 7 : Manager.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./IManager.sol";
import "./IController.sol";

contract Manager is IManager {
    // Controller that contract is registered with
    IController public controller;

    // Check if sender is controller
    modifier onlyController() {
        _onlyController();
        _;
    }

    // Check if sender is controller owner
    modifier onlyControllerOwner() {
        _onlyControllerOwner();
        _;
    }

    // Check if controller is not paused
    modifier whenSystemNotPaused() {
        _whenSystemNotPaused();
        _;
    }

    // Check if controller is paused
    modifier whenSystemPaused() {
        _whenSystemPaused();
        _;
    }

    constructor(address _controller) {
        controller = IController(_controller);
    }

    /**
     * @notice Set controller. Only callable by current controller
     * @param _controller Controller contract address
     */
    function setController(address _controller) external onlyController {
        controller = IController(_controller);

        emit SetController(_controller);
    }

    function _onlyController() private view {
        require(msg.sender == address(controller), "caller must be Controller");
    }

    function _onlyControllerOwner() private view {
        require(msg.sender == controller.owner(), "caller must be Controller owner");
    }

    function _whenSystemNotPaused() private view {
        require(!controller.paused(), "system is paused");
    }

    function _whenSystemPaused() private view {
        require(controller.paused(), "system is not paused");
    }
}

File 4 of 7 : ManagerProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./ManagerProxyTarget.sol";

/**
 * @title ManagerProxy
 * @notice A proxy contract that uses delegatecall to execute function calls on a target contract using its own storage context.
 The target contract is a Manager contract that is registered with the Controller.
 * @dev Both this proxy contract and its target contract MUST inherit from ManagerProxyTarget in order to guarantee
 that both contracts have the same storage layout. Differing storage layouts in a proxy contract and target contract can
 potentially break the delegate proxy upgradeability mechanism. Since this proxy contract inherits from ManagerProxyTarget which inherits
 from Manager, it implements the setController() function. The target contract will also implement setController() since it also inherits
 from ManagerProxyTarget. Thus, any transaction sent to the proxy that calls setController() will execute against the proxy instead
 of the target. As a result, developers should keep in mind that the proxy will always execute the same logic for setController() regardless
 of the setController() implementation on the target contract. Generally, developers should not add any additional functions to this proxy contract
 because any function implemented on the proxy will always be executed against the proxy and the call **will not** be forwarded to the target contract
 */
contract ManagerProxy is ManagerProxyTarget {
    /**
     * @notice ManagerProxy constructor. Invokes constructor of base Manager contract with provided Controller address.
     * Also, sets the contract ID of the target contract that function calls will be executed on.
     * @param _controller Address of Controller that this contract will be registered with
     * @param _targetContractId contract ID of the target contract
     */
    constructor(address _controller, bytes32 _targetContractId) Manager(_controller) {
        targetContractId = _targetContractId;
    }

    /**
     * @notice Fallback function that delegates calls to target contract when there is no msg.data
     */
    receive() external payable {
        _fallback();
    }

    /**
     * @notice Fallback function that delegates calls to target contract when there is msg.data
     */
    fallback() external payable {
        _fallback();
    }

    /**
     * @dev Uses delegatecall to execute function calls on this proxy contract's target contract using its own storage context.
     This fallback function will look up the address of the target contract using the Controller and the target contract ID.
     It will then use the calldata for a function call as the data payload for a delegatecall on the target contract. The return value
     of the executed function call will also be returned
     */
    function _fallback() private {
        address target = controller.getContract(targetContractId);
        require(target != address(0), "target contract must be registered");

        assembly {
            // Solidity keeps a free memory pointer at position 0x40 in memory
            let freeMemoryPtrPosition := 0x40
            // Load the free memory pointer
            let calldataMemoryOffset := mload(freeMemoryPtrPosition)
            // Update free memory pointer to after memory space we reserve for calldata
            mstore(freeMemoryPtrPosition, add(calldataMemoryOffset, calldatasize()))
            // Copy calldata (method signature and params of the call) to memory
            calldatacopy(calldataMemoryOffset, 0x0, calldatasize())

            // Call method on target contract using calldata which is loaded into memory
            let ret := delegatecall(gas(), target, calldataMemoryOffset, calldatasize(), 0, 0)

            // Load the free memory pointer
            let returndataMemoryOffset := mload(freeMemoryPtrPosition)
            // Update free memory pointer to after memory space we reserve for returndata
            mstore(freeMemoryPtrPosition, add(returndataMemoryOffset, returndatasize()))
            // Copy returndata (result of the method invoked by the delegatecall) to memory
            returndatacopy(returndataMemoryOffset, 0x0, returndatasize())

            switch ret
            case 0 {
                // Method call failed - revert
                // Return any error message stored in mem[returndataMemoryOffset..(returndataMemoryOffset + returndatasize)]
                revert(returndataMemoryOffset, returndatasize())
            }
            default {
                // Return result of method call stored in mem[returndataMemoryOffset..(returndataMemoryOffset + returndatasize)]
                return(returndataMemoryOffset, returndatasize())
            }
        }
    }
}

File 5 of 7 : ManagerProxyTarget.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./Manager.sol";

/**
 * @title ManagerProxyTarget
 * @notice The base contract that target contracts used by a proxy contract should inherit from
 * @dev Both the target contract and the proxy contract (implemented as ManagerProxy) MUST inherit from ManagerProxyTarget in order to guarantee
 that both contracts have the same storage layout. Differing storage layouts in a proxy contract and target contract can
 potentially break the delegate proxy upgradeability mechanism
 */
abstract contract ManagerProxyTarget is Manager {
    // Used to look up target contract address in controller's registry
    bytes32 public targetContractId;
}

File 6 of 7 : Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
    address public owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    constructor() {
        owner = msg.sender;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }
}

File 7 of 7 : Pausable.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./Ownable.sol";

/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
    event Pause();
    event Unpause();

    bool public paused;

    /**
     * @dev Modifier to make a function callable only when the contract is not paused.
     */
    modifier whenNotPaused() {
        require(!paused);
        _;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is paused.
     */
    modifier whenPaused() {
        require(paused);
        _;
    }

    /**
     * @dev called by the owner to pause, triggers stopped state
     */
    function pause() public onlyOwner whenNotPaused {
        paused = true;
        emit Pause();
    }

    /**
     * @dev called by the owner to unpause, returns to normal state
     */
    function unpause() public onlyOwner whenPaused {
        paused = false;
        emit Unpause();
    }
}

Settings
{
  "evmVersion": "london",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"_controller","type":"address"},{"internalType":"bytes32","name":"_targetContractId","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"param","type":"string"}],"name":"ParameterUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"controller","type":"address"}],"name":"SetController","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"controller","outputs":[{"internalType":"contract IController","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_controller","type":"address"}],"name":"setController","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"targetContractId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b506040516103d93803806103d983398101604081905261002f91610058565b600080546001600160a01b0319166001600160a01b039390931692909217909155600155610092565b6000806040838503121561006b57600080fd5b82516001600160a01b038116811461008257600080fd5b6020939093015192949293505050565b610338806100a16000396000f3fe6080604052600436106100385760003560e01c806351720b411461004f57806392eefe9b14610078578063f77c47911461009857610047565b36610047576100456100d0565b005b6100456100d0565b34801561005b57600080fd5b5061006560015481565b6040519081526020015b60405180910390f35b34801561008457600080fd5b506100456100933660046102c1565b6101f1565b3480156100a457600080fd5b506000546100b8906001600160a01b031681565b6040516001600160a01b03909116815260200161006f565b60008054600154604051631c2d8fb360e31b81526001600160a01b039092169163e16c7d98916101069160040190815260200190565b60206040518083038186803b15801561011e57600080fd5b505afa158015610132573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061015691906102e5565b90506001600160a01b0381166101be5760405162461bcd60e51b815260206004820152602260248201527f74617267657420636f6e7472616374206d757374206265207265676973746572604482015261195960f21b60648201526084015b60405180910390fd5b60408051368101825236600082376000803683865af4905081513d810183523d6000823e8180156101ed573d82f35b3d82fd5b6101f961024d565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709060200160405180910390a150565b6000546001600160a01b031633146102a75760405162461bcd60e51b815260206004820152601960248201527f63616c6c6572206d75737420626520436f6e74726f6c6c65720000000000000060448201526064016101b5565b565b6001600160a01b03811681146102be57600080fd5b50565b6000602082840312156102d357600080fd5b81356102de816102a9565b9392505050565b6000602082840312156102f757600080fd5b81516102de816102a956fea2646970667358221220274e52a3b60c7dff1cad0833c349004759648080531c69a484b94b22224cfa1164736f6c63430008090033000000000000000000000000d8e8328501e9645d16cf49539efc04f734606ee4fc6f6f33d2bb065ac61cbdd4dbe4b7adf6f3e7e6c6a3d1fe297cbf9a187092e4

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