Contract 0xffc2ddd7aaae748930904179721168129a638bc4

Contract Overview

Balance:
0.021673524499309613 Ether
TxHash Block Age From To Value [TxFee]
0xddaf86212a1d35ce366544286b226b1745d6b6fd7bc2c50506286ee172e06ac9393827120 days 16 hrs ago0x5ef4e437db32c063ff2d0069532ce716d4e52e46 IN 0xffc2ddd7aaae748930904179721168129a638bc40 Ether0.00096715
0x0dbecb4ddcc6644430beebe9abd9ab3fbd07fdc309ae0eef294b3c9638fece2a373583455 days 19 hrs ago0x5ef4e437db32c063ff2d0069532ce716d4e52e46 IN 0xffc2ddd7aaae748930904179721168129a638bc40 Ether0.000092346
0xc934501d5d9f355c9321fda5cd4e830d6722fd51d7beafb4b9a5d7c5e8361694367233066 days 20 hrs ago0x5ef4e437db32c063ff2d0069532ce716d4e52e46 IN 0xffc2ddd7aaae748930904179721168129a638bc40 Ether0.000153256
0x418a2677a1d78bf89963e7fe92db5c5ab8f0161eb49e7935491810cca04c1740367231366 days 20 hrs ago0xaa95c92005eee6794d63719b40c4fd2ed6a51d94 IN  Contract Creation0 Ether0.00083624
0xa2cadd67ad498aa8c40d23932a1008d049c1bf97d3f52a45cf8ad0fa123363bc367231066 days 20 hrs ago0x2333b4cc1f89a0b4c43e9e733123c124aae977ee IN 0xffc2ddd7aaae748930904179721168129a638bc40.02 Ether0.000021
[ Download CSV Export 

Latest 18 internal transactions Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0xddaf86212a1d35ce366544286b226b1745d6b6fd7bc2c50506286ee172e06ac9393827120 days 16 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x5ef4e437db32c063ff2d0069532ce716d4e52e460.000970930000097093 Ether
0xddaf86212a1d35ce366544286b226b1745d6b6fd7bc2c50506286ee172e06ac9393827120 days 16 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0xddaf86212a1d35ce366544286b226b1745d6b6fd7bc2c50506286ee172e06ac9393827120 days 16 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40xffc2ddd7aaae748930904179721168129a638bc40 Ether
0xddaf86212a1d35ce366544286b226b1745d6b6fd7bc2c50506286ee172e06ac9393827120 days 16 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x0dbecb4ddcc6644430beebe9abd9ab3fbd07fdc309ae0eef294b3c9638fece2a373583455 days 19 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x5ef4e437db32c063ff2d0069532ce716d4e52e460.000093127500062085 Ether
0x0dbecb4ddcc6644430beebe9abd9ab3fbd07fdc309ae0eef294b3c9638fece2a373583455 days 19 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x888b500228a8bcc1bfba22e4af58383e31b7a95d0.0001 Ether
0x0dbecb4ddcc6644430beebe9abd9ab3fbd07fdc309ae0eef294b3c9638fece2a373583455 days 19 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x625de42cf3eec570661b28554c748ed4c21cbf68f3817c2da930833f3b8b349d367236666 days 19 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x625de42cf3eec570661b28554c748ed4c21cbf68f3817c2da930833f3b8b349d367236666 days 19 hrs ago0x1387c8d144548475248da6b50c7e94086a60ff520xffc2ddd7aaae748930904179721168129a638bc40.001 Ether
0x01f698bea83d35f7a66efe984807cab58a27b4e1b66bb3d6bab75b014a95aa4d367236366 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x01f698bea83d35f7a66efe984807cab58a27b4e1b66bb3d6bab75b014a95aa4d367236366 days 20 hrs ago0x1387c8d144548475248da6b50c7e94086a60ff520xffc2ddd7aaae748930904179721168129a638bc40.002 Ether
0x6743a22dfe1d6bb3f1f400fa70dbf3c4bfe0bf83e2d585c3f36fe6849d3724b2367234666 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x6743a22dfe1d6bb3f1f400fa70dbf3c4bfe0bf83e2d585c3f36fe6849d3724b2367234666 days 20 hrs ago0x1387c8d144548475248da6b50c7e94086a60ff520xffc2ddd7aaae748930904179721168129a638bc40.001 Ether
0xc934501d5d9f355c9321fda5cd4e830d6722fd51d7beafb4b9a5d7c5e8361694367233066 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x5ef4e437db32c063ff2d0069532ce716d4e52e460.000154170000077085 Ether
0xc934501d5d9f355c9321fda5cd4e830d6722fd51d7beafb4b9a5d7c5e8361694367233066 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x17af7f17f72f20e74043652a573645757918d8400.0001 Ether
0xc934501d5d9f355c9321fda5cd4e830d6722fd51d7beafb4b9a5d7c5e8361694367233066 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
0x418a2677a1d78bf89963e7fe92db5c5ab8f0161eb49e7935491810cca04c1740367231366 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40xab8c18e66135561676f0781555d05cf6b22024a30.000908248000454124 Ether
0x418a2677a1d78bf89963e7fe92db5c5ab8f0161eb49e7935491810cca04c1740367231366 days 20 hrs ago0xffc2ddd7aaae748930904179721168129a638bc40x8942595a2dc5181df0465af0d7be08c8f23c93af0 Ether
[ Download CSV Export 
Warning: The compiled contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) Solidity Compiler Bugs.

Contract Source Code Verified (Similar Match)
Note: This contract matches the deployed ByteCode of the Verified Source Code for Contract 0x1ec45687db81e5d5e297a2bc488365e325893c69
Contract Name: PayingProxy
Compiler Version: v0.4.24+commit.e67f0147
Optimization Enabled: No
Runs (Optimizer):  200


Contract Source Code
pragma solidity 0.4.24;

/// @title Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
/// @author Stefan George - <[email protected]>
contract Proxy {

    // masterCopy always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
    address masterCopy;

    /// @dev Constructor function sets address of master copy contract.
    /// @param _masterCopy Master copy address.
    constructor(address _masterCopy)
        public
    {
        require(_masterCopy != 0, "Invalid master copy address provided");
        masterCopy = _masterCopy;
    }

    /// @dev Fallback function forwards all transactions and returns all received return data.
    function ()
        external
        payable
    {
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let masterCopy := and(sload(0), 0xffffffffffffffffffffffffffffffffffffffff)
            calldatacopy(0, 0, calldatasize())
            let success := delegatecall(gas, masterCopy, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            if eq(success, 0) { revert(0, returndatasize()) }
            return(0, returndatasize())
        }
    }

    function implementation()
        public
        view
        returns (address)
    {
        return masterCopy;
    }

    function proxyType()
        public
        pure
        returns (uint256)
    {
        return 2;
    }
}

/// @title Delegate Constructor Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract. It is possible to send along initialization data with the constructor.
/// @author Stefan George - <[email protected]>
/// @author Richard Meissner - <[email protected]>
contract DelegateConstructorProxy is Proxy {

    /// @dev Constructor function sets address of master copy contract.
    /// @param _masterCopy Master copy address.
    /// @param initializer Data used for a delegate call to initialize the contract.
    constructor(address _masterCopy, bytes initializer) Proxy(_masterCopy)
        public
    {
        if (initializer.length > 0) {
            // solium-disable-next-line security/no-inline-assembly
            assembly {
                let masterCopy := and(sload(0), 0xffffffffffffffffffffffffffffffffffffffff)
                let success := delegatecall(sub(gas, 10000), masterCopy, add(initializer, 0x20), mload(initializer), 0, 0)
                let ptr := mload(0x40)
                returndatacopy(ptr, 0, returndatasize)
                if eq(success, 0) { revert(ptr, returndatasize) }
            }
        }
    }
}

/// @title SecuredTokenTransfer - Secure token transfer
/// @author Richard Meissner - <[email protected]>
contract SecuredTokenTransfer {

    /// @dev Transfers a token and returns if it was a success
    /// @param token Token that should be transferred
    /// @param receiver Receiver to whom the token should be transferred
    /// @param amount The amount of tokens that should be transferred
    function transferToken (
        address token, 
        address receiver,
        uint256 amount
    )
        internal
        returns (bool transferred)
    {
        bytes memory data = abi.encodeWithSignature("transfer(address,uint256)", receiver, amount);
        // solium-disable-next-line security/no-inline-assembly
        assembly {
            let success := call(sub(gas, 10000), token, 0, add(data, 0x20), mload(data), 0, 0)
            let ptr := mload(0x40)
            returndatacopy(ptr, 0, returndatasize)
            switch returndatasize 
            case 0 { transferred := success }
            case 0x20 { transferred := iszero(or(iszero(success), iszero(mload(ptr)))) }
            default { transferred := 0 }
        }
    }
}

/// @title Paying Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract. It is possible to send along initialization data with the constructor. And sends funds after creation to a specified account.
/// @author Stefan George - <[email protected]>
/// @author Richard Meissner - <[email protected]>
contract PayingProxy is DelegateConstructorProxy, SecuredTokenTransfer {

    /// @dev Constructor function sets address of master copy contract.
    /// @param _masterCopy Master copy address.
    /// @param initializer Data used for a delegate call to initialize the contract.
    /// @param funder Address that should be paid for the execution of this call
    /// @param paymentToken Token that should be used for the payment (0 is ETH)
    /// @param payment Value that should be paid
    constructor(address _masterCopy, bytes initializer, address funder, address paymentToken, uint256 payment) 
        DelegateConstructorProxy(_masterCopy, initializer)
        public
    {
        if (payment > 0) {
            if (paymentToken == address(0)) {
                 // solium-disable-next-line security/no-send
                require(funder.send(payment), "Could not pay safe creation with ether");
            } else {
                require(transferToken(paymentToken, funder, payment), "Could not pay safe creation with token");
            }
        } 
    }
}

Contract ABI
[{"constant":true,"inputs":[],"name":"proxyType","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"implementation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_masterCopy","type":"address"},{"name":"initializer","type":"bytes"},{"name":"funder","type":"address"},{"name":"paymentToken","type":"address"},{"name":"payment","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

Contract Creation Code
608060405234801561001057600080fd5b5060405161060a38038061060a833981018060405281019080805190602001909291908051820192919060200180519060200190929190805190602001909291908051906020019092919050505084848160008173ffffffffffffffffffffffffffffffffffffffff1614151515610116576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f496e76616c6964206d617374657220636f707920616464726573732070726f7681526020017f696465640000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000815111156101a35773ffffffffffffffffffffffffffffffffffffffff60005416600080835160208501846127105a03f46040513d6000823e600082141561019f573d81fd5b5050505b5050600081111561036d57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156102b7578273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015156102b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001807f436f756c64206e6f74207061792073616665206372656174696f6e207769746881526020017f206574686572000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b61036c565b6102d1828483610377640100000000026401000000009004565b151561036b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001807f436f756c64206e6f74207061792073616665206372656174696f6e207769746881526020017f20746f6b656e000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b5b5b5050505050610490565b600060608383604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001925050506040516020818303038152906040527fa9059cbb000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506000808251602084016000896127105a03f16040513d6000823e3d60008114610473576020811461047b5760009450610485565b829450610485565b8151158315171594505b505050509392505050565b61016b8061049f6000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680634555d5c91461008b5780635c60da1b146100b6575b73ffffffffffffffffffffffffffffffffffffffff600054163660008037600080366000845af43d6000803e6000811415610086573d6000fd5b3d6000f35b34801561009757600080fd5b506100a061010d565b6040518082815260200191505060405180910390f35b3480156100c257600080fd5b506100cb610116565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60006002905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050905600a165627a7a7230582007fffd557dfc8c4d2fdf56ba6381a6ce5b65b6260e1492d87f26c6d4f1d04108002900000000000000000000000044e7f5855a77fe1793a96be8a1c9c3eaf47e9d0900000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ab8c18e66135561676f0781555d05cf6b22024a3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000107030365aa9d800000000000000000000000000000000000000000000000000000000000001640ec78d9e00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000004000000000000000000000000f0fda572be2935acdba1eef98ea784f0e594f4a6000000000000000000000000e6f502bc4b0ec980694fd8fa3dba1bcec66a44d7000000000000000000000000100ff0bc7e94fd562596a9a8f6663c72247f2faa000000000000000000000000b076908b745e03a816c04c21950c0042ac992cee0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000


   Swarm Source:
bzzr://07fffd557dfc8c4d2fdf56ba6381a6ce5b65b6260e1492d87f26c6d4f1d04108
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward