Contract 0xf6a78083ca3e2a662d6dd1703c939c8ace2e268d 4

Bridge 

Contract Overview

Gnosis: xDai Bridge
Balance:
0 xDAI

xDAI Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xbfa19fe728109d41a7bffff63eab7b699dd11eaeedb7f2bcd40f18c8d4ddacc1Relay Tokens262072942023-01-29 12:14:4510 hrs 6 mins ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400455001
0x07df89352beb4906bfa43c6ab00536da0df48d1148cb71100b2b1a626331f1a0Relay Tokens261981622023-01-28 22:58:4523 hrs 22 mins ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400665001
0xd361db13bb177ca043fcd99e795060af8f33b77e7cf81de62831c087414316c9Relay Tokens261952862023-01-28 18:46:301 day 3 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426315001
0x200a3cc767d701ec2ebc0611430e70243cf72b3eafb5d932e000140203e9e524Relay Tokens261952752023-01-28 18:45:301 day 3 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426315001
0x636a1dd67ae784fbf47b84ae308b8bcf3528c1ccd4e4ae3ae97285d46bb93d10Relay Tokens261905772023-01-28 11:54:301 day 10 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400437001
0xb45eb757a57e24b7f378b183537272ea5f8e4b11afba85bd806b78c23c75a41aRelay Tokens261905242023-01-28 11:49:501 day 10 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400437001
0xbdca13d7c78a73022d8bc9e6c0f676af64dfeac251e791d6fe5205b7ddec875dRelay Tokens261900542023-01-28 11:09:101 day 11 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400437001
0xd1970cbb72072273e11adedaf6a747289290a687167f3f3c2ebfc555b0dc1832Relay Tokens261810622023-01-27 22:05:102 days 16 mins ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400437001
0xbf98b4e9714d1111b6d693e4262ad279ef8a456ef7d1f3a1a0ce9efedb256fa4Relay Tokens261736762023-01-27 11:19:352 days 11 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426087001
0x9732e5e7d3b0d091eb13414165d38dbc13d8043c778f30165d6819fb1c219629Relay Tokens261723332023-01-27 9:23:102 days 12 hrs ago0x0230304de82e316ac309fb43b8a826ae7ffccb40 IN Gnosis: xDai Bridge0 xDAI0.000264024002
0x846b4504dc8e8e870e86c28548661b53d5a930614b23057aeb264da7eb4a203dRelay Tokens261662942023-01-27 0:35:502 days 21 hrs ago0x0f456cd7cdc806496972ea89db250b76b98171c7 IN Gnosis: xDai Bridge0 xDAI0.000636279002
0xdcbc5bd112915147a4466fde0e06ed98028db35abc03441a7032e1672c2d5297Relay Tokens261501652023-01-26 1:01:053 days 21 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426141001
0x5029f6f46f55c6792c2786dff032c813be15461f8a7697540544d0825c82a9c0Relay Tokens261464052023-01-25 19:33:154 days 2 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426105001
0xa7344f8d3438ab2cedd0289a7ea2b6e7b0f7d55de5dc8643ff4b2dc222268c3fRelay Tokens261462212023-01-25 19:17:154 days 3 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400455001
0xa0db226f0ddeb566f19413393c00250c3a24e61dde72e125b05b5dde2b5daf55Relay Tokens261457362023-01-25 18:34:454 days 3 hrs ago0x13984504858fad0d8a52737532cb4a52e253aa34 IN Gnosis: xDai Bridge0 xDAI0.000415387501
0xf1de4e8fff70b479128faacc0d5891141399d1a74075a883e1057c51eddeed6dRelay Tokens261333032023-01-25 0:25:404 days 21 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426123001
0x7795f750f4a1ef2555c70341664f246a5b1b12cad0092faf3e40c84d297a3d3dRelay Tokens261276672023-01-24 16:13:105 days 6 hrs ago0xe74c3e9c3248a3a19845acbb012c83704e6a1c78 IN Gnosis: xDai Bridge0 xDAI0.000863988952
0xc5f0647e4f81703eb883f90ca07f4eb4787ce05679db238708f332398eeac35cRelay Tokens261143442023-01-23 20:49:406 days 1 hr ago0x85cd010565b87454a254cbf29d2b5fc49828397f IN Gnosis: xDai Bridge0 xDAI0.000389773501
0xc0b91e9bcca227cd61b40852c271f4d9ebe5aa93d71ca63c78bd4bd3898fd616Relay Tokens261109922023-01-23 15:55:406 days 6 hrs ago0x85cd010565b87454a254cbf29d2b5fc49828397f IN Gnosis: xDai Bridge0 xDAI0.000415387501
0xef2c4ecf612304c3e3172d2d04cbc65a484e0a06b9be3436c8a069ae1e473234Relay Tokens261104032023-01-23 15:04:506 days 7 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000400473001
0x0a1ec5cab5ab747e1b0665d3e84872ec2858755911fc9c974901ab0073a97b17Relay Tokens261099192023-01-23 14:23:206 days 7 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426123001
0xe12c57069e21cf84a71b0ab9e1b0b15ca8c6bceabcbc7555ece52a21aaadda57Relay Tokens260948522023-01-22 16:29:007 days 5 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426087001
0x2d22c825fd462820c79cae54ec799a49edc866f7af0d503e308b489cf821542bRelay Tokens260898062023-01-22 9:08:357 days 13 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426315001
0xce8451887dc107012ee16f59120660e8d63d5e0b625db338d8107ac5ed685d93Relay Tokens260897932023-01-22 9:07:307 days 13 hrs ago0xd54e4f8a55247487dd7c8c59f14ee5c0c2889477 IN Gnosis: xDai Bridge0 xDAI0.000426315001
0x44a47bdf3fcb99e0edaca99c21bd22b9f6a725f344079c8c0e99a7aac7be688fRelay Tokens260892742023-01-22 8:22:257 days 13 hrs ago0x3824ea1488bb5afced11c6a17449887d466f7297 IN Gnosis: xDai Bridge0 xDAI0.000396036001
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xe2d20f4a177ffcbdb5aa0ca2025e43a8fc0f6d2ed80a41b0fdcd786321fb550b184466802021-10-06 23:28:35479 days 22 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x927610909f6b2dec5ddf3f6104eea7dcb0a28711d84d89fdb503d29cb7445b6c184268552021-10-05 17:03:40481 days 5 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xbea5e4de2e922c112c759ac67f245b53c0f2d6cd11d28a850974a60d93e0b721184181362021-10-05 3:40:40481 days 18 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x204f0c673cf337aa33dcb9268523f2cd625112457f99ea978fc64aa8ec6d147e184040022021-10-04 4:01:40482 days 18 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x81f89425603b25780f3b97ca48d481d7f4d4ba9b145a7d1bafcb1ab86fa5fc30182940212021-09-27 9:49:00489 days 12 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xec4314716bac70e71ad996caff1a38eb0c3507c837a36dafe5c148fdae91cb09182925442021-09-27 7:34:15489 days 14 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x0b28249b03428a5a0ebb9876c13fe342f98fd266eb773a49f647028c3530254c182444602021-09-24 7:41:00492 days 14 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xcf3846a45611dea10ef89f3544d56d8a76db47c01ae9940c7165949ef0634a99182424782021-09-24 4:35:05492 days 17 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x462edf4198ccc63703585b70180cb41b45328f9a24a4f309f8e8b30df815ca6e182419472021-09-24 3:45:00492 days 18 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xfe6fd68956c4d6a8b6f3cdf9f214d069475f1d4fdc441e7a32a4a11231b4d4af181718922021-09-19 22:32:35496 days 23 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xcc6de12df64c8995fa9eac37697d26f882e2a35ed1795dbd374da6929cb12cd1181614882021-09-19 7:19:45497 days 15 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xfe0cc3995d8f285599a52e5db09bf882eaa2495174c8c1c680b3fe1c0a728947181265772021-09-17 0:28:25499 days 21 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x425e20af52c29a3853c8c2e77e3ea73a13e63ff63dd9cc563124fe15dc37e44a180278852021-09-10 22:12:45506 days 8 mins ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x48537f6c18da868ac9640dbe4afc31ed788902723c31850ee1a89d1a4047bb01180208582021-09-10 11:54:20506 days 10 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x5a1298383b5e1a9ffcbf30a46a2c8fdc9f27285eda8a49df885f93869ec75a93179946642021-09-08 22:06:05508 days 15 mins ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x33e907bc541530401f0c89efdd5e7060ee4951aeb78a6ca1031cf3aaf928acf5179915062021-09-08 17:31:25508 days 4 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x9f61f67a3590c969216c28e660b0a589a3bc1ab30dac6878e362b9ab589c5a4d179755712021-09-07 18:37:15509 days 3 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x2b90097836de969b225a49064c0456ccb125c2aef0fd4f551ce5836f6dd0ca36179660522021-09-07 4:56:15509 days 17 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x19064d9f15a73b10bd33fcd60ab9d2a991aab1e374a5ea799a68886284c3f553178946782021-09-02 21:48:35514 days 33 mins ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x1a5e90d8d498a3c94c2b2b677856f992d2ec0d03f71b7381ac9ab81c5c92c311178730522021-09-01 14:01:25515 days 8 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x71b1222886fd160c78e0b19f16c7a4a5060596863a3ed8bd8c809ba81aeb7690178078872021-08-28 16:22:10519 days 5 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x5fd56845451039ccf13a28df9089cfe9aff052dd25045c35d395c2fbe85478ce177371812021-08-24 10:44:30523 days 11 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0xd0890e93488b962270b8d8dca8e6d433602f8ffd7dabf89a7a51395706286c30176976242021-08-21 23:10:50525 days 23 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x388b5fdf19dbcf79e8eb5665c4f0cce668d2070fa09b493c6b39aeccbcf49a9f176801692021-08-20 16:21:50527 days 5 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
0x66f44aacf2e7c93bee17b8b2353947243013b67a152f60683c702234d9c67b9e176446752021-08-18 7:07:25529 days 15 hrs ago Gnosis: xDai Bridge  Contract Creation0 xDAI
[ Download CSV Export 
Loading

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

Contract Name:
EternalStorageProxy

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
byzantium EvmVersion
/**
 *Submitted for verification at gnosisscan.io on 2022-08-03
*/

// File: contracts/upgradeability/EternalStorage.sol

pragma solidity 0.4.24;

/**
 * @title EternalStorage
 * @dev This contract holds all the necessary state variables to carry out the storage of any contract.
 */
contract EternalStorage {
    mapping(bytes32 => uint256) internal uintStorage;
    mapping(bytes32 => string) internal stringStorage;
    mapping(bytes32 => address) internal addressStorage;
    mapping(bytes32 => bytes) internal bytesStorage;
    mapping(bytes32 => bool) internal boolStorage;
    mapping(bytes32 => int256) internal intStorage;

}

// File: openzeppelin-solidity/contracts/AddressUtils.sol

pragma solidity ^0.4.24;


/**
 * Utility library of inline functions on addresses
 */
library AddressUtils {

  /**
   * Returns whether the target address is a contract
   * @dev This function will return false if invoked during the constructor of a contract,
   * as the code is not actually created until after the constructor finishes.
   * @param _addr address to check
   * @return whether the target address is a contract
   */
  function isContract(address _addr) internal view returns (bool) {
    uint256 size;
    // XXX Currently there is no better way to check if there is a contract in an address
    // than to check the size of the code at that address.
    // See https://ethereum.stackexchange.com/a/14016/36603
    // for more details about how this works.
    // TODO Check this again before the Serenity release, because all addresses will be
    // contracts then.
    // solium-disable-next-line security/no-inline-assembly
    assembly { size := extcodesize(_addr) }
    return size > 0;
  }

}

// File: contracts/upgradeability/Proxy.sol

pragma solidity 0.4.24;

/**
 * @title Proxy
 * @dev Gives the possibility to delegate any call to a foreign implementation.
 */
contract Proxy {
    /**
    * @dev Tells the address of the implementation where every call will be delegated.
    * @return address of the implementation to which it will be delegated
    */
    /* solcov ignore next */
    function implementation() public view returns (address);

    /**
    * @dev Fallback function allowing to perform a delegatecall to the given implementation.
    * This function will return whatever the implementation call returns
    */
    function() public payable {
        // solhint-disable-previous-line no-complex-fallback
        address _impl = implementation();
        require(_impl != address(0));
        assembly {
            /*
                0x40 is the "free memory slot", meaning a pointer to next slot of empty memory. mload(0x40)
                loads the data in the free memory slot, so `ptr` is a pointer to the next slot of empty
                memory. It's needed because we're going to write the return data of delegatecall to the
                free memory slot.
            */
            let ptr := mload(0x40)
            /*
                `calldatacopy` is copy calldatasize bytes from calldata
                First argument is the destination to which data is copied(ptr)
                Second argument specifies the start position of the copied data.
                    Since calldata is sort of its own unique location in memory,
                    0 doesn't refer to 0 in memory or 0 in storage - it just refers to the zeroth byte of calldata.
                    That's always going to be the zeroth byte of the function selector.
                Third argument, calldatasize, specifies how much data will be copied.
                    calldata is naturally calldatasize bytes long (same thing as msg.data.length)
            */
            calldatacopy(ptr, 0, calldatasize)
            /*
                delegatecall params explained:
                gas: the amount of gas to provide for the call. `gas` is an Opcode that gives
                    us the amount of gas still available to execution

                _impl: address of the contract to delegate to

                ptr: to pass copied data

                calldatasize: loads the size of `bytes memory data`, same as msg.data.length

                0, 0: These are for the `out` and `outsize` params. Because the output could be dynamic,
                        these are set to 0, 0 so the output data will not be written to memory. The output
                        data will be read using `returndatasize` and `returdatacopy` instead.

                result: This will be 0 if the call fails and 1 if it succeeds
            */
            let result := delegatecall(gas, _impl, ptr, calldatasize, 0, 0)
            /*

            */
            /*
                ptr current points to the value stored at 0x40,
                because we assigned it like ptr := mload(0x40).
                Because we use 0x40 as a free memory pointer,
                we want to make sure that the next time we want to allocate memory,
                we aren't overwriting anything important.
                So, by adding ptr and returndatasize,
                we get a memory location beyond the end of the data we will be copying to ptr.
                We place this in at 0x40, and any reads from 0x40 will now read from free memory
            */
            mstore(0x40, add(ptr, returndatasize))
            /*
                `returndatacopy` is an Opcode that copies the last return data to a slot. `ptr` is the
                    slot it will copy to, 0 means copy from the beginning of the return data, and size is
                    the amount of data to copy.
                `returndatasize` is an Opcode that gives us the size of the last return data. In this case, that is the size of the data returned from delegatecall
            */
            returndatacopy(ptr, 0, returndatasize)

            /*
                if `result` is 0, revert.
                if `result` is 1, return `size` amount of data from `ptr`. This is the data that was
                copied to `ptr` from the delegatecall return data
            */
            switch result
                case 0 {
                    revert(ptr, returndatasize)
                }
                default {
                    return(ptr, returndatasize)
                }
        }
    }
}

// File: contracts/upgradeability/UpgradeabilityStorage.sol

pragma solidity 0.4.24;

/**
 * @title UpgradeabilityStorage
 * @dev This contract holds all the necessary state variables to support the upgrade functionality
 */
contract UpgradeabilityStorage {
    // Version name of the current implementation
    uint256 internal _version;

    // Address of the current implementation
    address internal _implementation;

    /**
    * @dev Tells the version name of the current implementation
    * @return uint256 representing the name of the current version
    */
    function version() external view returns (uint256) {
        return _version;
    }

    /**
    * @dev Tells the address of the current implementation
    * @return address of the current implementation
    */
    function implementation() public view returns (address) {
        return _implementation;
    }
}

// File: contracts/upgradeability/UpgradeabilityProxy.sol

pragma solidity 0.4.24;




/**
 * @title UpgradeabilityProxy
 * @dev This contract represents a proxy where the implementation address to which it will delegate can be upgraded
 */
contract UpgradeabilityProxy is Proxy, UpgradeabilityStorage {
    /**
    * @dev This event will be emitted every time the implementation gets upgraded
    * @param version representing the version name of the upgraded implementation
    * @param implementation representing the address of the upgraded implementation
    */
    event Upgraded(uint256 version, address indexed implementation);

    /**
    * @dev Upgrades the implementation address
    * @param version representing the version name of the new implementation to be set
    * @param implementation representing the address of the new implementation to be set
    */
    function _upgradeTo(uint256 version, address implementation) internal {
        require(_implementation != implementation);

        // This additional check verifies that provided implementation is at least a contract
        require(AddressUtils.isContract(implementation));

        // This additional check guarantees that new version will be at least greater than the privios one,
        // so it is impossible to reuse old versions, or use the last version twice
        require(version > _version);

        _version = version;
        _implementation = implementation;
        emit Upgraded(version, implementation);
    }
}

// File: contracts/upgradeability/UpgradeabilityOwnerStorage.sol

pragma solidity 0.4.24;

/**
 * @title UpgradeabilityOwnerStorage
 * @dev This contract keeps track of the upgradeability owner
 */
contract UpgradeabilityOwnerStorage {
    // Owner of the contract
    address internal _upgradeabilityOwner;

    /**
    * @dev Tells the address of the owner
    * @return the address of the owner
    */
    function upgradeabilityOwner() public view returns (address) {
        return _upgradeabilityOwner;
    }

    /**
    * @dev Sets the address of the owner
    */
    function setUpgradeabilityOwner(address newUpgradeabilityOwner) internal {
        _upgradeabilityOwner = newUpgradeabilityOwner;
    }
}

// File: contracts/upgradeability/OwnedUpgradeabilityProxy.sol

pragma solidity 0.4.24;



/**
 * @title OwnedUpgradeabilityProxy
 * @dev This contract combines an upgradeability proxy with basic authorization control functionalities
 */
contract OwnedUpgradeabilityProxy is UpgradeabilityOwnerStorage, UpgradeabilityProxy {
    /**
    * @dev Event to show ownership has been transferred
    * @param previousOwner representing the address of the previous owner
    * @param newOwner representing the address of the new owner
    */
    event ProxyOwnershipTransferred(address previousOwner, address newOwner);

    /**
    * @dev the constructor sets the original owner of the contract to the sender account.
    */
    constructor() public {
        setUpgradeabilityOwner(msg.sender);
    }

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

    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param newOwner The address to transfer ownership to.
    */
    function transferProxyOwnership(address newOwner) external onlyUpgradeabilityOwner {
        require(newOwner != address(0));
        emit ProxyOwnershipTransferred(upgradeabilityOwner(), newOwner);
        setUpgradeabilityOwner(newOwner);
    }

    /**
    * @dev Allows the upgradeability owner to upgrade the current version of the proxy.
    * @param version representing the version name of the new implementation to be set.
    * @param implementation representing the address of the new implementation to be set.
    */
    function upgradeTo(uint256 version, address implementation) public onlyUpgradeabilityOwner {
        _upgradeTo(version, implementation);
    }

    /**
    * @dev Allows the upgradeability owner to upgrade the current version of the proxy and call the new implementation
    * to initialize whatever is needed through a low level call.
    * @param version representing the version name of the new implementation to be set.
    * @param implementation representing the address of the new implementation to be set.
    * @param data represents the msg.data to bet sent in the low level call. This parameter may include the function
    * signature of the implementation to be called with the needed payload
    */
    function upgradeToAndCall(uint256 version, address implementation, bytes data)
        external
        payable
        onlyUpgradeabilityOwner
    {
        upgradeTo(version, implementation);
        // solhint-disable-next-line avoid-call-value
        require(address(this).call.value(msg.value)(data));
    }
}

// File: contracts/upgradeability/EternalStorageProxy.sol

pragma solidity 0.4.24;



/**
 * @title EternalStorageProxy
 * @dev This proxy holds the storage of the token contract and delegates every call to the current implementation set.
 * Besides, it allows to upgrade the token's behaviour towards further implementations, and provides basic
 * authorization control functionalities
 */
// solhint-disable-next-line no-empty-blocks
contract EternalStorageProxy is EternalStorage, OwnedUpgradeabilityProxy {}

Contract ABI

[{"constant":false,"inputs":[{"name":"version","type":"uint256"},{"name":"implementation","type":"address"}],"name":"upgradeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"upgradeabilityOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"version","type":"uint256"},{"name":"implementation","type":"address"},{"name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferProxyOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"previousOwner","type":"address"},{"indexed":false,"name":"newOwner","type":"address"}],"name":"ProxyOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"version","type":"uint256"},{"indexed":true,"name":"implementation","type":"address"}],"name":"Upgraded","type":"event"}]

60806040526100163364010000000061001b810204565b61003d565b60068054600160a060020a031916600160a060020a0392909216919091179055565b6103e08061004c6000396000f3006080604052600436106100775763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416633ad06d1681146100c257806354fd4d50146100e85780635c60da1b1461010f5780636fde820214610140578063a9c45fcb14610155578063f1739cae14610179575b600061008161019a565b9050600160a060020a038116151561009857600080fd5b60405136600082376000803683855af43d82016040523d6000833e8080156100be573d83f35b3d83fd5b3480156100ce57600080fd5b506100e6600435600160a060020a03602435166101a9565b005b3480156100f457600080fd5b506100fd6101d3565b60408051918252519081900360200190f35b34801561011b57600080fd5b5061012461019a565b60408051600160a060020a039092168252519081900360200190f35b34801561014c57600080fd5b506101246101d9565b6100e6600480359060248035600160a060020a0316916044359182019101356101e8565b34801561018557600080fd5b506100e6600160a060020a0360043516610250565b600854600160a060020a031690565b6101b16101d9565b600160a060020a031633146101c557600080fd5b6101cf82826102d8565b5050565b60075490565b600654600160a060020a031690565b6101f06101d9565b600160a060020a0316331461020457600080fd5b61020e84846101a9565b30600160a060020a03163483836040518083838082843782019150509250505060006040518083038185875af192505050151561024a57600080fd5b50505050565b6102586101d9565b600160a060020a0316331461026c57600080fd5b600160a060020a038116151561028157600080fd5b7f5a3e66efaa1e445ebd894728a69d6959842ea1e97bd79b892797106e270efcd96102aa6101d9565b60408051600160a060020a03928316815291841660208301528051918290030190a16102d58161037d565b50565b600854600160a060020a03828116911614156102f357600080fd5b6102fc816103ac565b151561030757600080fd5b600754821161031557600080fd5b600782905560088054600160a060020a03831673ffffffffffffffffffffffffffffffffffffffff1990911681179091556040805184815290517f4289d6195cf3c2d2174adf98d0e19d4d2d08887995b99cb7b100e7ffe795820e9181900360200190a25050565b6006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6000903b11905600a165627a7a7230582078bac02704e0c07980df83f6082a0453ef0e0259d68860b6e0f2c5dc0d11c56c0029

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.