ETH Price: $3,391.87 (+4.19%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Input Cphx For I...170546302023-04-15 20:03:11649 days ago1681588991IN
0x663E0657...d52D3e851
0 ETH0.0080025224.15703622
Input Cphx For I...166691902023-02-20 10:33:59704 days ago1676889239IN
0x663E0657...d52D3e851
0 ETH0.0074501123.3593573
Claimphx Expired...166252142023-02-14 6:30:11710 days ago1676356211IN
0x663E0657...d52D3e851
0 ETH0.0010345913.0723454
Claimphx Expired...164158452023-01-16 0:42:35739 days ago1673829755IN
0x663E0657...d52D3e851
0 ETH0.0012888814.99334681
Claimphx Expired...161956372022-12-16 7:02:35770 days ago1671174155IN
0x663E0657...d52D3e851
0 ETH0.0010630412.77947327
Claimphx Expired...159889672022-11-17 9:52:23799 days ago1668678743IN
0x663E0657...d52D3e851
0 ETH0.0010235912.73060512
Claimphx Expired...157669402022-10-17 9:28:47830 days ago1665998927IN
0x663E0657...d52D3e851
0 ETH0.0008243110.6192954
Input Cphx For I...155856052022-09-22 1:27:47855 days ago1663810067IN
0x663E0657...d52D3e851
0 ETH0.000253695.93339339
Input Cphx For I...155856022022-09-22 1:27:11855 days ago1663810031IN
0x663E0657...d52D3e851
0 ETH0.001954985.81737227
Input Cphx For I...155493772022-09-16 23:15:59860 days ago1663370159IN
0x663E0657...d52D3e851
0 ETH0.001691855.03420701
Claimphx Expired...153945932022-08-23 4:52:55885 days ago1661230375IN
0x663E0657...d52D3e851
0 ETH0.000376496.13332691
Claimphx Expired...153945752022-08-23 4:48:04885 days ago1661230084IN
0x663E0657...d52D3e851
0 ETH0.000483817.30039403
Claimphx Expired...153706992022-08-19 10:16:37889 days ago1660904197IN
0x663E0657...d52D3e851
0 ETH0.0014206411.71943722
Claimphx Expired...153643272022-08-18 9:53:16890 days ago1660816396IN
0x663E0657...d52D3e851
0 ETH0.000323245.26587188
Claimphx Expired...153643212022-08-18 9:52:07890 days ago1660816327IN
0x663E0657...d52D3e851
0 ETH0.000283144.61263799
Claimphx Expired...153643192022-08-18 9:51:26890 days ago1660816286IN
0x663E0657...d52D3e851
0 ETH0.000342925.17449597
Claimphx Expired...147793112022-05-15 10:00:28985 days ago1652608828IN
0x663E0657...d52D3e851
0 ETH0.0016119317.10384273
Claimphx Expired...146725182022-04-28 11:10:081002 days ago1651144208IN
0x663E0657...d52D3e851
0 ETH0.0016482924.86947086
Claimphx Expired...146725112022-04-28 11:09:221002 days ago1651144162IN
0x663E0657...d52D3e851
0 ETH0.0018114127.33052293
Claimphx Expired...146725032022-04-28 11:07:151002 days ago1651144035IN
0x663E0657...d52D3e851
0 ETH0.002099931.68321794
Claimphx Expired...146724952022-04-28 11:05:531002 days ago1651143953IN
0x663E0657...d52D3e851
0 ETH0.0022346633.71658217
Input Cphx For I...146724922022-04-28 11:04:591002 days ago1651143899IN
0x663E0657...d52D3e851
0 ETH0.0098137932.25557684
Claimphx Expired...146724892022-04-28 11:04:201002 days ago1651143860IN
0x663E0657...d52D3e851
0 ETH0.0026294231.53846107
Input Cphx For I...146642762022-04-27 4:05:151003 days ago1651032315IN
0x663E0657...d52D3e851
0 ETH0.0144316342.94222076
Claimphx Expired...146211662022-04-20 9:44:311010 days ago1650447871IN
0x663E0657...d52D3e851
0 ETH0.0040266832.26720786
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
phxProxy

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2021-08-04
*/

// File: contracts\PhoenixModules\multiSignature\multiSignatureClient.sol

pragma solidity =0.5.16;
/**
 * SPDX-License-Identifier: GPL-3.0-or-later
 * Phoenix
 * Copyright (C) 2020 Phoenix Options Protocol
 */
interface IMultiSignature{
    function getValidSignature(bytes32 msghash,uint256 lastIndex) external view returns(uint256);
}
contract multiSignatureClient{
    uint256 private constant multiSignaturePositon = uint256(keccak256("org.Phoenix.multiSignature.storage"));
    event DebugEvent(address indexed from,bytes32 msgHash,uint256 value,uint256 value1);
    constructor(address multiSignature) public {
        require(multiSignature != address(0),"multiSignatureClient : Multiple signature contract address is zero!");
        saveValue(multiSignaturePositon,uint256(multiSignature));
    }    
    function getMultiSignatureAddress()public view returns (address){
        return address(getValue(multiSignaturePositon));
    }
    modifier validCall(){
        checkMultiSignature();
        _;
    }
    function checkMultiSignature() internal {
        uint256 value;
        assembly {
            value := callvalue()
        }
        bytes32 msgHash = keccak256(abi.encodePacked(msg.sender, address(this),value,msg.data));
        address multiSign = getMultiSignatureAddress();
        uint256 index = getValue(uint256(msgHash));
        uint256 newIndex = IMultiSignature(multiSign).getValidSignature(msgHash,index);
        require(newIndex > index, "multiSignatureClient : This tx is not aprroved");
        saveValue(uint256(msgHash),newIndex);
    }
    function saveValue(uint256 position,uint256 value) internal 
    {
        assembly {
            sstore(position, value)
        }
    }
    function getValue(uint256 position) internal view returns (uint256 value) {
        assembly {
            value := sload(position)
        }
    }
}

// File: contracts\PhoenixModules\proxyModules\proxyOwner.sol

pragma solidity =0.5.16;

/**
 * @title  proxyOwner Contract

 */

contract proxyOwner is multiSignatureClient{
    bytes32 private constant ownerExpiredPosition = keccak256("org.Phoenix.ownerExpired.storage");
    bytes32 private constant versionPositon = keccak256("org.Phoenix.version.storage");
    bytes32 private constant proxyOwnerPosition  = keccak256("org.Phoenix.Owner.storage");
    bytes32 private constant proxyOriginPosition  = keccak256("org.Phoenix.Origin.storage");
    uint256 private constant oncePosition  = uint256(keccak256("org.Phoenix.Once.storage"));
    uint256 private constant ownerExpired =  90 days;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    event OriginTransferred(address indexed previousOrigin, address indexed newOrigin);
    constructor(address multiSignature) multiSignatureClient(multiSignature) public{
        _setProxyOwner(msg.sender);
        _setProxyOrigin(tx.origin);
    }
    /**
     * @dev Allows the current owner to transfer ownership
     * @param _newOwner The address to transfer ownership to
     */

    function transferOwnership(address _newOwner) public onlyOwner
    {
        _setProxyOwner(_newOwner);
    }
    function _setProxyOwner(address _newOwner) internal 
    {
        emit OwnershipTransferred(owner(),_newOwner);
        bytes32 position = proxyOwnerPosition;
        assembly {
            sstore(position, _newOwner)
        }
        position = ownerExpiredPosition;
        uint256 expired = now+ownerExpired;
        assembly {
            sstore(position, expired)
        }
    }
    function owner() public view returns (address _owner) {
        bytes32 position = proxyOwnerPosition;
        assembly {
            _owner := sload(position)
        }
    }
    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOwner() {
        require (isOwner(),"proxyOwner: caller must be the proxy owner and a contract and not expired");
        _;
    }
    function transferOrigin(address _newOrigin) public onlyOrigin
    {
        _setProxyOrigin(_newOrigin);
    }
    function _setProxyOrigin(address _newOrigin) internal 
    {
        emit OriginTransferred(txOrigin(),_newOrigin);
        bytes32 position = proxyOriginPosition;
        assembly {
            sstore(position, _newOrigin)
        }
    }
    function txOrigin() public view returns (address _origin) {
        bytes32 position = proxyOriginPosition;
        assembly {
            _origin := sload(position)
        }
    }
    function ownerExpiredTime() public view returns (uint256 _expired) {
        bytes32 position = ownerExpiredPosition;
        assembly {
            _expired := sload(position)
        }
    }
    modifier originOnce() {
        require (msg.sender == txOrigin(),"proxyOwner: caller is not the tx origin!");
        uint256 key = oncePosition+uint32(msg.sig);
        require (getValue(key)==0, "proxyOwner : This function must be invoked only once!");
        saveValue(key,1);
        _;
    }
    function isOwner() public view returns (bool) {
        return msg.sender == owner() && isContract(msg.sender);
    }
    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOrigin() {
        require (msg.sender == txOrigin(),"proxyOwner: caller is not the tx origin!");
        checkMultiSignature();
        _;
    }
    modifier OwnerOrOrigin(){
        if (isOwner()){
        }else if(msg.sender == txOrigin()){
            checkMultiSignature();
        }else{
            require(false,"proxyOwner: caller is not owner or origin");
        }
        _;
    }
    function _setVersion(uint256 version_) internal 
    {
        bytes32 position = versionPositon;
        assembly {
            sstore(position, version_)
        }
    }
    function version() public view returns(uint256 version_){
        bytes32 position = versionPositon;
        assembly {
            version_ := sload(position)
        }
    }
    
    function isContract(address account) internal view returns (bool) {
        // This method relies on extcodesize, which returns 0 for contracts in
        // construction, since the code is only stored at the end of the
        // constructor execution.

        uint256 size;
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }
}

// File: contracts\PhoenixModules\proxy\phxProxy.sol

pragma solidity =0.5.16;
/**
 * SPDX-License-Identifier: GPL-3.0-or-later
 * Phoenix
 * Copyright (C) 2020 Phoenix Options Protocol
 */
/**
 * @title  phxProxy Contract

 */

contract phxProxy is proxyOwner {
    bytes32 private constant implementPositon = keccak256("org.Phoenix.implementation.storage");
    event Upgraded(address indexed implementation,uint256 indexed version);
    constructor(address implementation_,address multiSignature) proxyOwner(multiSignature) public {

        // Creator of the contract is admin during initialization
        (bool success,) = implementation_.delegatecall(abi.encodeWithSignature("initialize()"));
        _setImplementation(implementation_);
        require(success);
    }
    function proxyType() public pure returns (uint256){
        return 2;
    }
    /**
     * @dev Tells the address of the current implementation
     * @return address of the current implementation
     */
    function implementation() public view returns (address impl) {
        bytes32 position = implementPositon;
        assembly {
            impl := sload(position)
        }
    }
    function _setImplementation(address _newImplementation) internal 
    {
        (bool success, bytes memory returnData) = _newImplementation.delegatecall(abi.encodeWithSignature("implementationVersion()"));
        assembly {
            if eq(success, 0) {
                revert(add(returnData, 0x20), returndatasize)
            }
        }
        uint256 version_ = abi.decode(returnData, (uint256));
        require (version_>version(),"upgrade version number must be greater than current version");
        bytes32 position = implementPositon;
        assembly {
            sstore(position, _newImplementation)
        }
        _setVersion(version_);
        emit Upgraded(_newImplementation,version_);
    }
    function upgradeTo(address _newImplementation)public OwnerOrOrigin{
        address currentImplementation = implementation();
        require(currentImplementation != _newImplementation,"upgrade implementation is not changed!");
        (bool success,) = _newImplementation.delegatecall(abi.encodeWithSignature("update()"));
        _setImplementation(_newImplementation);
        require(success);
    }
    function () payable external {
        address _impl = implementation();
        require(_impl != address(0));

        assembly {
        let ptr := mload(0x40)
        calldatacopy(ptr, 0, calldatasize)
        let result := delegatecall(gas, _impl, ptr, calldatasize, 0, 0)
        let size := returndatasize
        returndatacopy(ptr, 0, size)

        switch result
        case 0 { revert(ptr, size) }
        default { return(ptr, size) }
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"implementation_","type":"address"},{"internalType":"address","name":"multiSignature","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"value1","type":"uint256"}],"name":"DebugEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOrigin","type":"address"},{"indexed":true,"internalType":"address","name":"newOrigin","type":"address"}],"name":"OriginTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"},{"indexed":true,"internalType":"uint256","name":"version","type":"uint256"}],"name":"Upgraded","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"getMultiSignatureAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"impl","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"_owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ownerExpiredTime","outputs":[{"internalType":"uint256","name":"_expired","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newOrigin","type":"address"}],"name":"transferOrigin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"txOrigin","outputs":[{"internalType":"address","name":"_origin","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"internalType":"uint256","name":"version_","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]

60806040523480156200001157600080fd5b50604051620012d5380380620012d5833981810160405260408110156200003757600080fd5b50805160209091015180806001600160a01b038116620000895760405162461bcd60e51b8152600401808060200182810382526043815260200180620012926043913960600191505060405180910390fd5b620000c16040518080620012706022913960405190819003602201902090506001600160a01b0383166001600160e01b03620001df16565b50620000d6336001600160e01b03620001e316565b620000ea326001600160e01b03620002a216565b5060408051600481526024810182526020810180516001600160e01b031663204a7f0760e21b178152915181516000936001600160a01b0387169392918291908083835b602083106200014f5780518252601f1990920191602091820191016200012e565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114620001b1576040519150601f19603f3d011682016040523d82523d6000602084013e620001b6565b606091505b50509050620001cb836200032960201b60201c565b80620001d657600080fd5b505050620005c6565b9055565b6001600160a01b038116620002006001600160e01b03620004ef16565b6001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3604080517f6f72672e50686f656e69782e4f776e65722e73746f726167650000000000000081528151908190036019018120929092557f6f72672e50686f656e69782e6f776e6572457870697265642e73746f72616765825251908190036020019020426276a700019055565b6001600160a01b038116620002bf6001600160e01b036200052516565b6001600160a01b03167f6b0ba40b63fe0a4e591f25c6d723a40b532ff7cf536f3ce5abc7f6fb9969418060405160405180910390a3604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a01902055565b60408051600481526024810182526020810180516001600160e01b031663035fe76360e11b178152915181516000936060936001600160a01b038716939092909182918083835b60208310620003915780518252601f19909201916020918201910162000370565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114620003f3576040519150601f19603f3d011682016040523d82523d6000602084013e620003f8565b606091505b509150915060008214156200040e573d60208201fd5b60008180602001905160208110156200042657600080fd5b505190506200043d6001600160e01b036200055b16565b81116200047c5760405162461bcd60e51b815260040180806020018281038252603b81526020018062001235603b913960400191505060405180910390fd5b6000604051808062001213602291396040519081900360220190208681559150620004b29050826001600160e01b036200059116565b60405182906001600160a01b038716907f5887ab9161c3be2fe962b73e068a9f29082efb6daf2bfcbd3f064bc34d1ef1b790600090a35050505050565b604080517f6f72672e50686f656e69782e4f776e65722e73746f7261676500000000000000815290519081900360190190205490565b604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a0190205490565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b0190205490565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b01902055565b610c3d80620005d66000396000f3fe60806040526004361061009c5760003560e01c8063638c7e1711610064578063638c7e17146101975780638da5cb5b146101ac5780638f32d59b146101c1578063c55b3cbc146101ea578063f2fde38b1461021d578063f96757d1146102505761009c565b8063059a4c18146100e05780633659cfe6146101075780634555d5c91461013c57806354fd4d50146101515780635c60da1b14610166575b60006100a6610265565b90506001600160a01b0381166100bb57600080fd5b60405136600082376000803683855af43d806000843e8180156100dc578184f35b8184fd5b3480156100ec57600080fd5b506100f5610288565b60408051918252519081900360200190f35b34801561011357600080fd5b5061013a6004803603602081101561012a57600080fd5b50356001600160a01b03166102be565b005b34801561014857600080fd5b506100f5610475565b34801561015d57600080fd5b506100f561047a565b34801561017257600080fd5b5061017b610265565b604080516001600160a01b039092168252519081900360200190f35b3480156101a357600080fd5b5061017b6104b0565b3480156101b857600080fd5b5061017b6104d9565b3480156101cd57600080fd5b506101d661050b565b604080519115158252519081900360200190f35b3480156101f657600080fd5b5061013a6004803603602081101561020d57600080fd5b50356001600160a01b0316610539565b34801561022957600080fd5b5061013a6004803603602081101561024057600080fd5b50356001600160a01b03166105a4565b34801561025c57600080fd5b5061017b6105f0565b6000806040518080610a9c60229139604051908190036022019020549392505050565b604080517f6f72672e50686f656e69782e6f776e6572457870697265642e73746f72616765815290519081900360200190205490565b6102c661050b565b156102d057610335565b6102d86105f0565b6001600160a01b0316336001600160a01b031614156102fe576102f9610626565b610335565b60405162461bcd60e51b8152600401808060200182810382526029815260200180610b706029913960400191505060405180910390fd5b600061033f610265565b9050816001600160a01b0316816001600160a01b031614156103925760405162461bcd60e51b8152600401808060200182810382526026815260200180610b996026913960400191505060405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a2e6204560e01b178152915181516000936001600160a01b0387169392918291908083835b602083106103f45780518252601f1990920191602091820191016103d5565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610454576040519150601f19603f3d011682016040523d82523d6000602084013e610459565b606091505b5050905061046683610786565b8061047057600080fd5b505050565b600290565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b0190205490565b60006104d46040518080610bbf60229139604051908190036022019020905061092c565b905090565b60408051786f72672e50686f656e69782e4f776e65722e73746f7261676560381b815290519081900360190190205490565b60006105156104d9565b6001600160a01b0316336001600160a01b03161480156104d457506104d433610930565b6105416105f0565b6001600160a01b0316336001600160a01b0316146105905760405162461bcd60e51b8152600401808060200182810382526028815260200180610be16028913960400191505060405180910390fd5b610598610626565b6105a181610936565b50565b6105ac61050b565b6105e75760405162461bcd60e51b8152600401808060200182810382526049815260200180610af96049913960600191505060405180910390fd5b6105a1816109b2565b604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a0190205490565b6000349050600033308360003660405160200180866001600160a01b03166001600160a01b031660601b8152601401856001600160a01b03166001600160a01b031660601b8152601401848152602001838380828437808301925050509550505050505060405160208183030381529060405280519060200120905060006106ac6104b0565b905060006106b98361092c565b90506000826001600160a01b0316631ebaa16685846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561070957600080fd5b505afa15801561071d573d6000803e3d6000fd5b505050506040513d602081101561073357600080fd5b505190508181116107755760405162461bcd60e51b815260040180806020018281038252602e815260200180610b42602e913960400191505060405180910390fd5b61077f8482610a62565b5050505050565b60408051600481526024810182526020810180516001600160e01b031663035fe76360e11b178152915181516000936060936001600160a01b038716939092909182918083835b602083106107ec5780518252601f1990920191602091820191016107cd565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461084c576040519150601f19603f3d011682016040523d82523d6000602084013e610851565b606091505b50915091506000821415610866573d60208201fd5b600081806020019051602081101561087d57600080fd5b5051905061088961047a565b81116108c65760405162461bcd60e51b815260040180806020018281038252603b815260200180610abe603b913960400191505060405180910390fd5b60006040518080610a9c602291396022019050604051809103902090508481556108ef82610a66565b60405182906001600160a01b038716907f5887ab9161c3be2fe962b73e068a9f29082efb6daf2bfcbd3f064bc34d1ef1b790600090a35050505050565b5490565b3b151590565b806001600160a01b03166109486105f0565b6001600160a01b03167f6b0ba40b63fe0a4e591f25c6d723a40b532ff7cf536f3ce5abc7f6fb9969418060405160405180910390a3604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a01902055565b806001600160a01b03166109c46104d9565b6001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360408051786f72672e50686f656e69782e4f776e65722e73746f7261676560381b81528151908190036019018120929092557f6f72672e50686f656e69782e6f776e6572457870697265642e73746f72616765825251908190036020019020426276a700019055565b9055565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b0190205556fe6f72672e50686f656e69782e696d706c656d656e746174696f6e2e73746f72616765757067726164652076657273696f6e206e756d626572206d7573742062652067726561746572207468616e2063757272656e742076657273696f6e70726f78794f776e65723a2063616c6c6572206d757374206265207468652070726f7879206f776e657220616e64206120636f6e747261637420616e64206e6f7420657870697265646d756c74695369676e6174757265436c69656e74203a2054686973207478206973206e6f7420617072726f76656470726f78794f776e65723a2063616c6c6572206973206e6f74206f776e6572206f72206f726967696e7570677261646520696d706c656d656e746174696f6e206973206e6f74206368616e676564216f72672e50686f656e69782e6d756c74695369676e61747572652e73746f7261676570726f78794f776e65723a2063616c6c6572206973206e6f7420746865207478206f726967696e21a265627a7a72315820ef9681872df15e42cc2d86fde82329106db82945a5b1a6c64b6fa2741cb591da64736f6c634300051000326f72672e50686f656e69782e696d706c656d656e746174696f6e2e73746f72616765757067726164652076657273696f6e206e756d626572206d7573742062652067726561746572207468616e2063757272656e742076657273696f6e6f72672e50686f656e69782e6d756c74695369676e61747572652e73746f726167656d756c74695369676e6174757265436c69656e74203a204d756c7469706c65207369676e617475726520636f6e74726163742061646472657373206973207a65726f21000000000000000000000000e0f5bd87e939235eb3bc9d81c6d9f0cdcb3480b3000000000000000000000000994a8c8d38718dc67fa2514cfcfeb16f96b2a144

Deployed Bytecode

0x60806040526004361061009c5760003560e01c8063638c7e1711610064578063638c7e17146101975780638da5cb5b146101ac5780638f32d59b146101c1578063c55b3cbc146101ea578063f2fde38b1461021d578063f96757d1146102505761009c565b8063059a4c18146100e05780633659cfe6146101075780634555d5c91461013c57806354fd4d50146101515780635c60da1b14610166575b60006100a6610265565b90506001600160a01b0381166100bb57600080fd5b60405136600082376000803683855af43d806000843e8180156100dc578184f35b8184fd5b3480156100ec57600080fd5b506100f5610288565b60408051918252519081900360200190f35b34801561011357600080fd5b5061013a6004803603602081101561012a57600080fd5b50356001600160a01b03166102be565b005b34801561014857600080fd5b506100f5610475565b34801561015d57600080fd5b506100f561047a565b34801561017257600080fd5b5061017b610265565b604080516001600160a01b039092168252519081900360200190f35b3480156101a357600080fd5b5061017b6104b0565b3480156101b857600080fd5b5061017b6104d9565b3480156101cd57600080fd5b506101d661050b565b604080519115158252519081900360200190f35b3480156101f657600080fd5b5061013a6004803603602081101561020d57600080fd5b50356001600160a01b0316610539565b34801561022957600080fd5b5061013a6004803603602081101561024057600080fd5b50356001600160a01b03166105a4565b34801561025c57600080fd5b5061017b6105f0565b6000806040518080610a9c60229139604051908190036022019020549392505050565b604080517f6f72672e50686f656e69782e6f776e6572457870697265642e73746f72616765815290519081900360200190205490565b6102c661050b565b156102d057610335565b6102d86105f0565b6001600160a01b0316336001600160a01b031614156102fe576102f9610626565b610335565b60405162461bcd60e51b8152600401808060200182810382526029815260200180610b706029913960400191505060405180910390fd5b600061033f610265565b9050816001600160a01b0316816001600160a01b031614156103925760405162461bcd60e51b8152600401808060200182810382526026815260200180610b996026913960400191505060405180910390fd5b60408051600481526024810182526020810180516001600160e01b031663a2e6204560e01b178152915181516000936001600160a01b0387169392918291908083835b602083106103f45780518252601f1990920191602091820191016103d5565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610454576040519150601f19603f3d011682016040523d82523d6000602084013e610459565b606091505b5050905061046683610786565b8061047057600080fd5b505050565b600290565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b0190205490565b60006104d46040518080610bbf60229139604051908190036022019020905061092c565b905090565b60408051786f72672e50686f656e69782e4f776e65722e73746f7261676560381b815290519081900360190190205490565b60006105156104d9565b6001600160a01b0316336001600160a01b03161480156104d457506104d433610930565b6105416105f0565b6001600160a01b0316336001600160a01b0316146105905760405162461bcd60e51b8152600401808060200182810382526028815260200180610be16028913960400191505060405180910390fd5b610598610626565b6105a181610936565b50565b6105ac61050b565b6105e75760405162461bcd60e51b8152600401808060200182810382526049815260200180610af96049913960600191505060405180910390fd5b6105a1816109b2565b604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a0190205490565b6000349050600033308360003660405160200180866001600160a01b03166001600160a01b031660601b8152601401856001600160a01b03166001600160a01b031660601b8152601401848152602001838380828437808301925050509550505050505060405160208183030381529060405280519060200120905060006106ac6104b0565b905060006106b98361092c565b90506000826001600160a01b0316631ebaa16685846040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b15801561070957600080fd5b505afa15801561071d573d6000803e3d6000fd5b505050506040513d602081101561073357600080fd5b505190508181116107755760405162461bcd60e51b815260040180806020018281038252602e815260200180610b42602e913960400191505060405180910390fd5b61077f8482610a62565b5050505050565b60408051600481526024810182526020810180516001600160e01b031663035fe76360e11b178152915181516000936060936001600160a01b038716939092909182918083835b602083106107ec5780518252601f1990920191602091820191016107cd565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461084c576040519150601f19603f3d011682016040523d82523d6000602084013e610851565b606091505b50915091506000821415610866573d60208201fd5b600081806020019051602081101561087d57600080fd5b5051905061088961047a565b81116108c65760405162461bcd60e51b815260040180806020018281038252603b815260200180610abe603b913960400191505060405180910390fd5b60006040518080610a9c602291396022019050604051809103902090508481556108ef82610a66565b60405182906001600160a01b038716907f5887ab9161c3be2fe962b73e068a9f29082efb6daf2bfcbd3f064bc34d1ef1b790600090a35050505050565b5490565b3b151590565b806001600160a01b03166109486105f0565b6001600160a01b03167f6b0ba40b63fe0a4e591f25c6d723a40b532ff7cf536f3ce5abc7f6fb9969418060405160405180910390a3604080517f6f72672e50686f656e69782e4f726967696e2e73746f726167650000000000008152905190819003601a01902055565b806001600160a01b03166109c46104d9565b6001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360408051786f72672e50686f656e69782e4f776e65722e73746f7261676560381b81528151908190036019018120929092557f6f72672e50686f656e69782e6f776e6572457870697265642e73746f72616765825251908190036020019020426276a700019055565b9055565b604080517f6f72672e50686f656e69782e76657273696f6e2e73746f7261676500000000008152905190819003601b0190205556fe6f72672e50686f656e69782e696d706c656d656e746174696f6e2e73746f72616765757067726164652076657273696f6e206e756d626572206d7573742062652067726561746572207468616e2063757272656e742076657273696f6e70726f78794f776e65723a2063616c6c6572206d757374206265207468652070726f7879206f776e657220616e64206120636f6e747261637420616e64206e6f7420657870697265646d756c74695369676e6174757265436c69656e74203a2054686973207478206973206e6f7420617072726f76656470726f78794f776e65723a2063616c6c6572206973206e6f74206f776e6572206f72206f726967696e7570677261646520696d706c656d656e746174696f6e206973206e6f74206368616e676564216f72672e50686f656e69782e6d756c74695369676e61747572652e73746f7261676570726f78794f776e65723a2063616c6c6572206973206e6f7420746865207478206f726967696e21a265627a7a72315820ef9681872df15e42cc2d86fde82329106db82945a5b1a6c64b6fa2741cb591da64736f6c63430005100032

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

000000000000000000000000e0f5bd87e939235eb3bc9d81c6d9f0cdcb3480b3000000000000000000000000994a8c8d38718dc67fa2514cfcfeb16f96b2a144

-----Decoded View---------------
Arg [0] : implementation_ (address): 0xe0f5bd87e939235Eb3BC9D81c6D9F0CdcB3480b3
Arg [1] : multiSignature (address): 0x994a8c8D38718DC67fA2514cFCfEb16f96B2a144

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e0f5bd87e939235eb3bc9d81c6d9f0cdcb3480b3
Arg [1] : 000000000000000000000000994a8c8d38718dc67fa2514cfcfeb16f96b2a144


Deployed Bytecode Sourcemap

6825:2602:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8987:13;9003:16;:14;:16::i;:::-;8987:32;-1:-1:-1;;;;;;9038:19:0;;9030:28;;;;;;9108:4;9102:11;9144:12;9141:1;9136:3;9123:34;9228:1;9225;9211:12;9206:3;9199:5;9194:3;9181:49;9252:14;9299:4;9296:1;9291:3;9276:28;9323:6;9339:28;;;;9399:4;9394:3;9387:17;9339:28;9360:4;9355:3;9348:17;4634:197;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4634:197:0;;;:::i;:::-;;;;;;;;;;;;;;;;8531:410;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8531:410:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8531:410:0;-1:-1:-1;;;;;8531:410:0;;:::i;:::-;;7387:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7387:77:0;;;:::i;5962:180::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5962:180:0;;;:::i;7603:183::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7603:183:0;;;:::i;:::-;;;;-1:-1:-1;;;;;7603:183:0;;;;;;;;;;;;;;833:130;;8:9:-1;5:2;;;30:1;27;20:12;5:2;833:130:0;;;:::i;3649:180::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3649:180:0;;;:::i;5147:119::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5147:119:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;4071:113;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4071:113:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4071:113:0;-1:-1:-1;;;;;4071:113:0;;:::i;3127:112::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3127:112:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3127:112:0;-1:-1:-1;;;;;3127:112:0;;:::i;4442:186::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4442:186:0;;;:::i;7603:183::-;7650:12;7675:16;6908:47;;;;;;;;;;;;;;;;;;7753:15;;7730:49;-1:-1:-1;;;7730:49:0:o;4634:197::-;2163:45;;;;;;;;;;;;;;;;4798:15;;4771:53::o;8531:410::-;5562:9;:7;:9::i;:::-;5558:196;;;;;;5606:10;:8;:10::i;:::-;-1:-1:-1;;;;;5592:24:0;:10;-1:-1:-1;;;;;5592:24:0;;5589:165;;;5632:21;:19;:21::i;:::-;5589:165;;;5684:58;;-1:-1:-1;;;5684:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8608:29;8640:16;:14;:16::i;:::-;8608:48;;8700:18;-1:-1:-1;;;;;8675:43:0;:21;-1:-1:-1;;;;;8675:43:0;;;8667:93;;;;-1:-1:-1;;;8667:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8821:35;;;22:32:-1;6:49;;8821:35:0;;;;;49:4:-1;25:18;;61:17;;-1:-1;;;;;182:15;-1:-1;;;179:29;160:49;;8789:68:0;;;;8772:12;;-1:-1:-1;;;;;8789:31:0;;;8821:35;8789:68;;;25:18:-1;8789:68:0;;25:18:-1;36:153;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8789:68:0;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;8771:86:0;;;8868:38;8887:18;8868;:38::i;:::-;8925:7;8917:16;;;;;;5764:1;;8531:410;:::o;7387:77::-;7455:1;7387:77;:::o;5962:180::-;2257:40;;;;;;;;;;;;;;;;6109:15;;6082:53::o;833:130::-;889:7;923:31;442:47;;;;;;;;;;;;;;;;;;;-1:-1:-1;923:8:0;:31::i;:::-;908:47;;833:130;:::o;3649:180::-;2351:38;;;-1:-1:-1;;;2351:38:0;;;;;;;;;;;;3796:15;;3771:51::o;5147:119::-;5187:4;5225:7;:5;:7::i;:::-;-1:-1:-1;;;;;5211:21:0;:10;-1:-1:-1;;;;;5211:21:0;;:47;;;;;5236:22;5247:10;5236;:22::i;4071:113::-;5411:10;:8;:10::i;:::-;-1:-1:-1;;;;;5397:24:0;:10;-1:-1:-1;;;;;5397:24:0;;5388:77;;;;-1:-1:-1;;;5388:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5476:21;:19;:21::i;:::-;4149:27;4165:10;4149:15;:27::i;:::-;4071:113;:::o;3127:112::-;3959:9;:7;:9::i;:::-;3950:95;;;;-1:-1:-1;;;3950:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3206:25;3221:9;3206:14;:25::i;4442:186::-;2444:39;;;;;;;;;;;;;;;;4595:15;;4569:52::o;1047:567::-;1098:13;1155:11;1146:20;;1187:15;1232:10;1252:4;1258:5;1264:8;;1215:58;;;;;;-1:-1:-1;;;;;1215:58:0;-1:-1:-1;;;;;1215:58:0;;;;;;;;-1:-1:-1;;;;;1215:58:0;-1:-1:-1;;;;;1215:58:0;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;57:3;49:6;45:16;35:26;;1215:58:0;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1215:58:0;;;1205:69;;;;;;1187:87;;1285:17;1305:26;:24;:26::i;:::-;1285:46;-1:-1:-1;1342:13:0;1358:26;1375:7;1358:8;:26::i;:::-;1342:42;;1395:16;1430:9;-1:-1:-1;;;;;1414:44:0;;1459:7;1467:5;1414:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1414:59:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1414:59:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1414:59:0;;-1:-1:-1;1492:16:0;;;1484:75;;;;-1:-1:-1;;;1484:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570:36;1588:7;1597:8;1570:9;:36::i;:::-;1047:567;;;;;:::o;7792:733::-;7948:50;;;22:32:-1;6:49;;7948:50:0;;;;;49:4:-1;25:18;;61:17;;-1:-1;;;;;182:15;-1:-1;;;179:29;160:49;;7916:83:0;;;;7875:12;;7889:23;;-1:-1:-1;;;;;7916:31:0;;;7948:50;;7916:83;;;;;;25:18:-1;36:153;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;7916:83:0;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;7874:125:0;;;;8049:1;8040:7;8037:14;8034:2;;;8101:14;8094:4;8082:10;8078:21;8071:45;8034:2;8152:16;8182:10;8171:33;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8171:33:0;;-1:-1:-1;8233:9:0;:7;:9::i;:::-;8224:8;:18;8215:90;;;;-1:-1:-1;;;8215:90:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8316:16;6908:47;;;;;;;;;;;;;;;;;;;8316:35;;8403:18;8393:8;8386:36;8443:21;8455:8;8443:11;:21::i;:::-;8480:37;;8508:8;;-1:-1:-1;;;;;8480:37:0;;;;;;;;7792:733;;;;;:::o;1768:151::-;1886:15;;1862:50::o;6154:422::-;6521:20;6560:8;;;6154:422::o;4190:246::-;4295:10;-1:-1:-1;;;;;4266:40:0;4284:10;:8;:10::i;:::-;-1:-1:-1;;;;;4266:40:0;;;;;;;;;;;2444:39;;;;;;;;;;;;;;;;4390:28;4375:54::o;3245:398::-;3348:9;-1:-1:-1;;;;;3319:39:0;3340:7;:5;:7::i;:::-;-1:-1:-1;;;;;3319:39:0;;;;;;;;;;;2351:38;;;-1:-1:-1;;;2351:38:0;;;;;;;;;;;;3441:27;;;;2163:45;;;;;;;;;;;;3549:3;2625:7;3549:16;3600:25;;3585:51::o;1620:142::-;1721:23;;1706:49::o;5779:177::-;2257:40;;;;;;;;;;;;;;;;5912:26;5897:52::o

Swarm Source

bzzr://ef9681872df15e42cc2d86fde82329106db82945a5b1a6c64b6fa2741cb591da

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
[ 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.