ETH Price: $3,191.08 (+3.62%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Upgrade To112348662020-11-11 7:07:051539 days ago1605078425IN
0x3ea49697...0B92c7d7c
0 ETH0.0010890937
Set Authority106425332020-08-12 2:59:261630 days ago1597201166IN
0x3ea49697...0B92c7d7c
0 ETH0.00772342163
Initialize106425252020-08-12 2:57:361630 days ago1597201056IN
0x3ea49697...0B92c7d7c
0 ETH0.02802622163

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DFProxy

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-11-10
*/

pragma solidity 0.5.12;

contract Proxy {
    function() external payable {
        _fallback();
    }

    function _implementation() internal view returns (address);

    function _delegate(address implementation) internal {
        assembly {
            calldatacopy(0, 0, calldatasize)

            let result := delegatecall(
                gas,
                implementation,
                0,
                calldatasize,
                0,
                0
            )
            returndatacopy(0, 0, returndatasize)

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

    function _willFallback() internal {}

    function _fallback() internal {
        _willFallback();
        _delegate(_implementation());
    }
}

library AddressUtils {
    function isContract(address addr) internal view returns (bool) {
        uint256 size;

        assembly {
            size := extcodesize(addr)
        }
        return size > 0;
    }
}

contract UpgradeabilityProxy is Proxy {
    event Upgraded(address implementation);

    bytes32
        private constant IMPLEMENTATION_SLOT = 0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3;

    constructor(address _implementation) public {
        assert(
            IMPLEMENTATION_SLOT ==
                keccak256("org.zeppelinos.proxy.implementation")
        );

        _setImplementation(_implementation);
    }

    function _implementation() internal view returns (address impl) {
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            impl := sload(slot)
        }
    }

    function _upgradeTo(address newImplementation) internal {
        _setImplementation(newImplementation);
        emit Upgraded(newImplementation);
    }

    function _setImplementation(address newImplementation) private {
        require(
            AddressUtils.isContract(newImplementation),
            "Cannot set a proxy implementation to a non-contract address"
        );

        bytes32 slot = IMPLEMENTATION_SLOT;

        assembly {
            sstore(slot, newImplementation)
        }
    }
}

contract AdminUpgradeabilityProxy is UpgradeabilityProxy {
    event AdminChanged(address previousAdmin, address newAdmin);
    event AdminUpdated(address newAdmin);

    bytes32
        private constant ADMIN_SLOT = 0x10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b;
    bytes32
        private constant PENDING_ADMIN_SLOT = 0x54ac2bd5363dfe95a011c5b5a153968d77d153d212e900afce8624fdad74525c;

    modifier ifAdmin() {
        if (msg.sender == _admin()) {
            _;
        } else {
            _fallback();
        }
    }

    constructor(address _implementation)
        public
        UpgradeabilityProxy(_implementation)
    {
        assert(ADMIN_SLOT == keccak256("org.zeppelinos.proxy.admin"));

        _setAdmin(msg.sender);
    }

    function admin() external ifAdmin returns (address) {
        return _admin();
    }

    function pendingAdmin() external ifAdmin returns (address) {
        return _pendingAdmin();
    }

    function implementation() external ifAdmin returns (address) {
        return _implementation();
    }

    function changeAdmin(address _newAdmin) external ifAdmin {
        require(
            _newAdmin != address(0),
            "Cannot change the admin of a proxy to the zero address"
        );
        require(
            _newAdmin != _admin(),
            "The current and new admin cannot be the same ."
        );
        require(
            _newAdmin != _pendingAdmin(),
            "Cannot set the newAdmin of a proxy to the same address ."
        );
        _setPendingAdmin(_newAdmin);
        emit AdminChanged(_admin(), _newAdmin);
    }

    function updateAdmin() external {
        address _newAdmin = _pendingAdmin();
        require(
            _newAdmin != address(0),
            "Cannot change the admin of a proxy to the zero address"
        );
        require(
            msg.sender == _newAdmin,
            "msg.sender and newAdmin must be the same ."
        );
        _setAdmin(_newAdmin);
        _setPendingAdmin(address(0));
        emit AdminUpdated(_newAdmin);
    }

    function upgradeTo(address newImplementation) external ifAdmin {
        _upgradeTo(newImplementation);
    }

    function upgradeToAndCall(address newImplementation, bytes calldata data)
        external
        payable
        ifAdmin
    {
        _upgradeTo(newImplementation);
        (bool success, ) = address(this).call.value(msg.value)(data);
        require(success, "upgradeToAndCall-error");
    }

    function _admin() internal view returns (address adm) {
        bytes32 slot = ADMIN_SLOT;
        assembly {
            adm := sload(slot)
        }
    }

    function _pendingAdmin() internal view returns (address pendingAdm) {
        bytes32 slot = PENDING_ADMIN_SLOT;
        assembly {
            pendingAdm := sload(slot)
        }
    }

    function _setAdmin(address newAdmin) internal {
        bytes32 slot = ADMIN_SLOT;

        assembly {
            sstore(slot, newAdmin)
        }
    }

    function _setPendingAdmin(address pendingAdm) internal {
        bytes32 slot = PENDING_ADMIN_SLOT;

        assembly {
            sstore(slot, pendingAdm)
        }
    }

    function _willFallback() internal {
        require(
            msg.sender != _admin(),
            "Cannot call fallback function from the proxy admin"
        );
        super._willFallback();
    }
}

contract DFProxy is AdminUpgradeabilityProxy {
    constructor(address _implementation)
        public
        AdminUpgradeabilityProxy(_implementation)
    {}

    // Allow anyone to view the implementation address
    function DFImplementation() external view returns (address) {
        return _implementation();
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_implementation","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"DFImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pendingAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"updateAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"payable":true,"stateMutability":"payable","type":"function"}]

608060405234801561001057600080fd5b50604051610ba4380380610ba48339818101604052602081101561003357600080fd5b505160405181908190806023610b468239604051908190036023019020600080516020610b2683398151915214905061006857fe5b61007a816001600160e01b036100dc16565b50604080517f6f72672e7a657070656c696e6f732e70726f78792e61646d696e0000000000008152905190819003601a019020600080516020610b06833981519152146100c357fe5b6100d5336001600160e01b0361015616565b505061016e565b6100ef8161016860201b61081b1760201c565b610144576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603b815260200180610b69603b913960400191505060405180910390fd5b600080516020610b2683398151915255565b600080516020610b0683398151915255565b3b151590565b6109898061017d6000396000f3fe60806040526004361061007b5760003560e01c80635c60da1b1161004e5780635c60da1b1461017e5780638f28397014610193578063d3b2f598146101c6578063f851a440146101db5761007b565b806326782247146100855780633659cfe6146100b65780634f1ef286146100e95780635162178e14610169575b6100836101f0565b005b34801561009157600080fd5b5061009a61020a565b604080516001600160a01b039092168252519081900360200190f35b3480156100c257600080fd5b50610083600480360360208110156100d957600080fd5b50356001600160a01b0316610247565b610083600480360360408110156100ff57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561012a57600080fd5b82018360208201111561013c57600080fd5b8035906020019184600183028401116401000000008311171561015e57600080fd5b509092509050610281565b34801561017557600080fd5b5061009a610372565b34801561018a57600080fd5b5061009a610381565b34801561019f57600080fd5b50610083600480360360208110156101b657600080fd5b50356001600160a01b03166103ac565b3480156101d257600080fd5b5061008361051b565b3480156101e757600080fd5b5061009a610605565b6101f8610630565b610208610203610690565b6106b5565b565b60006102146106d9565b6001600160a01b0316336001600160a01b0316141561023c576102356106fe565b9050610244565b6102446101f0565b90565b61024f6106d9565b6001600160a01b0316336001600160a01b031614156102765761027181610723565b61027e565b61027e6101f0565b50565b6102896106d9565b6001600160a01b0316336001600160a01b03161415610365576102ab83610723565b6000306001600160a01b0316348484604051808383808284376040519201945060009350909150508083038185875af1925050503d806000811461030b576040519150601f19603f3d011682016040523d82523d6000602084013e610310565b606091505b505090508061035f576040805162461bcd60e51b81526020600482015260166024820152753ab833b930b232aa37a0b73221b0b63616b2b93937b960511b604482015290519081900360640190fd5b5061036d565b61036d6101f0565b505050565b600061037c610690565b905090565b600061038b6106d9565b6001600160a01b0316336001600160a01b0316141561023c57610235610690565b6103b46106d9565b6001600160a01b0316336001600160a01b03161415610276576001600160a01b0381166104125760405162461bcd60e51b815260040180806020018281038252603681526020018061087e6036913960400191505060405180910390fd5b61041a6106d9565b6001600160a01b0316816001600160a01b0316141561046a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806108ef602e913960400191505060405180910390fd5b6104726106fe565b6001600160a01b0316816001600160a01b031614156104c25760405162461bcd60e51b815260040180806020018281038252603881526020018061091d6038913960400191505060405180910390fd5b6104cb8161076b565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104f46106d9565b604080516001600160a01b03928316815291841660208301528051918290030190a161027e565b60006105256106fe565b90506001600160a01b03811661056c5760405162461bcd60e51b815260040180806020018281038252603681526020018061087e6036913960400191505060405180910390fd5b336001600160a01b038216146105b35760405162461bcd60e51b815260040180806020018281038252602a815260200180610822602a913960400191505060405180910390fd5b6105bc8161078f565b6105c6600061076b565b604080516001600160a01b038316815290517f54e4612788f90384e6843298d7854436f3a585b2c3831ab66abf1de63bfa6c2d9181900360200190a150565b600061060f6106d9565b6001600160a01b0316336001600160a01b0316141561023c576102356106d9565b6106386106d9565b6001600160a01b0316336001600160a01b031614156106885760405162461bcd60e51b815260040180806020018281038252603281526020018061084c6032913960400191505060405180910390fd5b610208610208565b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c35490565b3660008037600080366000845af43d6000803e8080156106d4573d6000f35b3d6000fd5b7f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b5490565b7f54ac2bd5363dfe95a011c5b5a153968d77d153d212e900afce8624fdad74525c5490565b61072c816107b3565b604080516001600160a01b038316815290517fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b9181900360200190a150565b7f54ac2bd5363dfe95a011c5b5a153968d77d153d212e900afce8624fdad74525c55565b7f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b55565b6107bc8161081b565b6107f75760405162461bcd60e51b815260040180806020018281038252603b8152602001806108b4603b913960400191505060405180910390fd5b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c355565b3b15159056fe6d73672e73656e64657220616e64206e657741646d696e206d757374206265207468652073616d65202e43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e747261637420616464726573735468652063757272656e7420616e64206e65772061646d696e2063616e6e6f74206265207468652073616d65202e43616e6e6f742073657420746865206e657741646d696e206f6620612070726f787920746f207468652073616d652061646472657373202ea265627a7a723158200079a2f709eab30bbaecdfd8a2af8fe1b5d2bdee354c94006d2f9ebc5820394a64736f6c634300050c003210d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c36f72672e7a657070656c696e6f732e70726f78792e696d706c656d656e746174696f6e43616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e747261637420616464726573730000000000000000000000006a203ed6db11981c13baec11b2f5973ffb17c226

Deployed Bytecode

0x60806040526004361061007b5760003560e01c80635c60da1b1161004e5780635c60da1b1461017e5780638f28397014610193578063d3b2f598146101c6578063f851a440146101db5761007b565b806326782247146100855780633659cfe6146100b65780634f1ef286146100e95780635162178e14610169575b6100836101f0565b005b34801561009157600080fd5b5061009a61020a565b604080516001600160a01b039092168252519081900360200190f35b3480156100c257600080fd5b50610083600480360360208110156100d957600080fd5b50356001600160a01b0316610247565b610083600480360360408110156100ff57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561012a57600080fd5b82018360208201111561013c57600080fd5b8035906020019184600183028401116401000000008311171561015e57600080fd5b509092509050610281565b34801561017557600080fd5b5061009a610372565b34801561018a57600080fd5b5061009a610381565b34801561019f57600080fd5b50610083600480360360208110156101b657600080fd5b50356001600160a01b03166103ac565b3480156101d257600080fd5b5061008361051b565b3480156101e757600080fd5b5061009a610605565b6101f8610630565b610208610203610690565b6106b5565b565b60006102146106d9565b6001600160a01b0316336001600160a01b0316141561023c576102356106fe565b9050610244565b6102446101f0565b90565b61024f6106d9565b6001600160a01b0316336001600160a01b031614156102765761027181610723565b61027e565b61027e6101f0565b50565b6102896106d9565b6001600160a01b0316336001600160a01b03161415610365576102ab83610723565b6000306001600160a01b0316348484604051808383808284376040519201945060009350909150508083038185875af1925050503d806000811461030b576040519150601f19603f3d011682016040523d82523d6000602084013e610310565b606091505b505090508061035f576040805162461bcd60e51b81526020600482015260166024820152753ab833b930b232aa37a0b73221b0b63616b2b93937b960511b604482015290519081900360640190fd5b5061036d565b61036d6101f0565b505050565b600061037c610690565b905090565b600061038b6106d9565b6001600160a01b0316336001600160a01b0316141561023c57610235610690565b6103b46106d9565b6001600160a01b0316336001600160a01b03161415610276576001600160a01b0381166104125760405162461bcd60e51b815260040180806020018281038252603681526020018061087e6036913960400191505060405180910390fd5b61041a6106d9565b6001600160a01b0316816001600160a01b0316141561046a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806108ef602e913960400191505060405180910390fd5b6104726106fe565b6001600160a01b0316816001600160a01b031614156104c25760405162461bcd60e51b815260040180806020018281038252603881526020018061091d6038913960400191505060405180910390fd5b6104cb8161076b565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6104f46106d9565b604080516001600160a01b03928316815291841660208301528051918290030190a161027e565b60006105256106fe565b90506001600160a01b03811661056c5760405162461bcd60e51b815260040180806020018281038252603681526020018061087e6036913960400191505060405180910390fd5b336001600160a01b038216146105b35760405162461bcd60e51b815260040180806020018281038252602a815260200180610822602a913960400191505060405180910390fd5b6105bc8161078f565b6105c6600061076b565b604080516001600160a01b038316815290517f54e4612788f90384e6843298d7854436f3a585b2c3831ab66abf1de63bfa6c2d9181900360200190a150565b600061060f6106d9565b6001600160a01b0316336001600160a01b0316141561023c576102356106d9565b6106386106d9565b6001600160a01b0316336001600160a01b031614156106885760405162461bcd60e51b815260040180806020018281038252603281526020018061084c6032913960400191505060405180910390fd5b610208610208565b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c35490565b3660008037600080366000845af43d6000803e8080156106d4573d6000f35b3d6000fd5b7f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b5490565b7f54ac2bd5363dfe95a011c5b5a153968d77d153d212e900afce8624fdad74525c5490565b61072c816107b3565b604080516001600160a01b038316815290517fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b9181900360200190a150565b7f54ac2bd5363dfe95a011c5b5a153968d77d153d212e900afce8624fdad74525c55565b7f10d6a54a4754c8869d6886b5f5d7fbfa5b4522237ea5c60d11bc4e7a1ff9390b55565b6107bc8161081b565b6107f75760405162461bcd60e51b815260040180806020018281038252603b8152602001806108b4603b913960400191505060405180910390fd5b7f7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c355565b3b15159056fe6d73672e73656e64657220616e64206e657741646d696e206d757374206265207468652073616d65202e43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e747261637420616464726573735468652063757272656e7420616e64206e65772061646d696e2063616e6e6f74206265207468652073616d65202e43616e6e6f742073657420746865206e657741646d696e206f6620612070726f787920746f207468652073616d652061646472657373202ea265627a7a723158200079a2f709eab30bbaecdfd8a2af8fe1b5d2bdee354c94006d2f9ebc5820394a64736f6c634300050c0032

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

0000000000000000000000006A203Ed6Db11981c13bAec11B2F5973fFb17c226

-----Decoded View---------------
Arg [0] : _implementation (address): 0x6A203Ed6Db11981c13bAec11B2F5973fFb17c226

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006A203Ed6Db11981c13bAec11B2F5973fFb17c226


Deployed Bytecode Sourcemap

5866:333:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;88:11;:9;:11::i;:::-;5866:333;3244:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3244:100:0;;;:::i;:::-;;;;-1:-1:-1;;;;;3244:100:0;;;;;;;;;;;;;;4502:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4502:111:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4502:111:0;-1:-1:-1;;;;;4502:111:0;;:::i;4621:303::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;4621:303:0;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;4621:303:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;4621:303:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;-1:-1;4621:303:0;;-1:-1:-1;4621:303:0;-1:-1:-1;4621:303:0;:::i;6093:103::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6093:103:0;;;:::i;3352:104::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3352:104:0;;;:::i;3464:563::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3464:563:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3464:563:0;-1:-1:-1;;;;;3464:563:0;;:::i;4035:459::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4035:459:0;;;:::i;3150:86::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3150:86:0;;;:::i;838:103::-;879:15;:13;:15::i;:::-;905:28;915:17;:15;:17::i;:::-;905:9;:28::i;:::-;838:103::o;3244:100::-;3294:7;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;3321:15;:13;:15::i;:::-;3314:22;;2809:100;;;2886:11;:9;:11::i;:::-;3244:100;:::o;4502:111::-;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;4576:29;4587:17;4576:10;:29::i;:::-;2809:100;;;2886:11;:9;:11::i;:::-;4502:111;:::o;4621:303::-;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;4763:29;4774:17;4763:10;:29::i;:::-;4804:12;4830:4;-1:-1:-1;;;;;4822:18:0;4847:9;4858:4;;4822:41;;;;;30:3:-1;22:6;14;1:33;4822:41:0;;45:16:-1;;;-1:-1;4822:41:0;;-1:-1:-1;4822:41:0;;-1:-1:-1;;4822:41: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;;4803:60:0;;;4882:7;4874:42;;;;;-1:-1:-1;;;4874:42:0;;;;;;;;;;;;-1:-1:-1;;;4874:42:0;;;;;;;;;;;;;;;2852:1;2809:100;;;2886:11;:9;:11::i;:::-;4621:303;;;:::o;6093:103::-;6144:7;6171:17;:15;:17::i;:::-;6164:24;;6093:103;:::o;3352:104::-;3404:7;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;3431:17;:15;:17::i;3464:563::-;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;-1:-1:-1;;;;;3554:23:0;;3532:127;;;;-1:-1:-1;;;3532:127:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3705:8;:6;:8::i;:::-;-1:-1:-1;;;;;3692:21:0;:9;-1:-1:-1;;;;;3692:21:0;;;3670:117;;;;-1:-1:-1;;;3670:117:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3833:15;:13;:15::i;:::-;-1:-1:-1;;;;;3820:28:0;:9;-1:-1:-1;;;;;3820:28:0;;;3798:134;;;;-1:-1:-1;;;3798:134:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3943:27;3960:9;3943:16;:27::i;:::-;3986:33;3999:8;:6;:8::i;:::-;3986:33;;;-1:-1:-1;;;;;3986:33:0;;;;;;;;;;;;;;;;;;;;;2809:100;;4035:459;4078:17;4098:15;:13;:15::i;:::-;4078:35;-1:-1:-1;;;;;;4146:23:0;;4124:127;;;;-1:-1:-1;;;4124:127:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4284:10;-1:-1:-1;;;;;4284:23:0;;;4262:115;;;;-1:-1:-1;;;4262:115:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4388:20;4398:9;4388;:20::i;:::-;4419:28;4444:1;4419:16;:28::i;:::-;4463:23;;;-1:-1:-1;;;;;4463:23:0;;;;;;;;;;;;;;;4035:459;:::o;3150:86::-;3193:7;2827:8;:6;:8::i;:::-;-1:-1:-1;;;;;2813:22:0;:10;-1:-1:-1;;;;;2813:22:0;;2809:100;;;3220:8;:6;:8::i;5652:207::-;5733:8;:6;:8::i;:::-;-1:-1:-1;;;;;5719:22:0;:10;-1:-1:-1;;;;;5719:22:0;;;5697:122;;;;-1:-1:-1;;;5697:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5830:21;:19;:21::i;1637:181::-;1323:66;1789:11;;1766:45::o;182:604::-;288:12;285:1;282;269:32;488:1;468;437:12;417:1;384:14;362:3;331:173;539:14;536:1;533;518:36;577:6;601:74;;;;734:14;731:1;724:25;601:74;641:14;638:1;631:25;4932:161;2576:66;5064:11;;5042:44::o;5101:190::-;2704:66;5262:11;;5233:51::o;1826:155::-;1893:37;1912:17;1893:18;:37::i;:::-;1946:27;;;-1:-1:-1;;;;;1946:27:0;;;;;;;;;;;;;;;1826:155;:::o;5466:178::-;2704:66;5602:24;5587:50::o;5299:159::-;2576:66;5418:22;5403:48::o;1989:358::-;2085:42;2109:17;2085:23;:42::i;:::-;2063:151;;;;-1:-1:-1;;;2063:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1323:66;2298:31;2283:57::o;976:192::-;1107:17;1152:8;;;976:192::o

Swarm Source

bzzr://0079a2f709eab30bbaecdfd8a2af8fe1b5d2bdee354c94006d2f9ebc5820394a

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.