Contract 0xA015191A34Fd02f1f040FF83AAa62dc51B211a6A

 

TxHash Block Age From To Value [TxFee]
0xc851f3a95578c5765db4190559637c7844abc05c28bd96dd1548675bdb2c1b0972413703 days 5 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.003558269
0xa60ca907370f0bad02e3814f9ed9ecf71b888e0e51e71c82cbbb68a464f84b3272413483 days 5 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.001893852
0xff98611f7d37f1dd0f44b29ba3f2c776183ed21ab42cc192db6469887756d69f72413463 days 5 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.002099148
0xadb2cf56130d8fc3f1d960239fed932a92d00f7f5f181d14a6b1bf7d3b72183472363584 days 9 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.00157746
0x0157ce9e3b61b832e84a648b4e1726c736893cff9039d076b94cccfb0d33289272355444 days 13 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.00156752
0x0cc220956ee5ff7c78062b0a2e7dcd2e0008431467378514ed349b54028e75d872308125 days 17 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.001432647
0xdae7945cd3a33beb9f545d9fc0e38119fb6e0f732ca3ee99904fc5e43e9c40c672308065 days 17 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a2.05 Ether0.001267816
0xa326472a69add0333fd1213201fb6c8fd6b9c3cef1a1c1c9d3274177cebd3f9f72236837 days 9 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.00160685
0x4b866df127f916e80edf6682e05c53daf173be233e4e32054c10202517492bb072236317 days 10 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0.95 Ether0.00158477
0xf6a2b96d183f11d13ab627c74233445a0a51b04f94576b897756a50d7e28da5072181358 days 18 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.00078754
0x52a4b704322de87b0a25f1f3fb78d6798681dad34b7f95382add890645cdcb6472140339 days 17 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.000797805
0x51e20ce3761bebffa43ca7b78d167dab7350457065b1394852606e869b25fd6e72140299 days 17 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a4 Ether0.000792385
0x7874bb7e25fe31d4fa941769a6f3bb19bc67b73636c1b04bb921762f7778b35472135669 days 20 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.0007944
0x2c5fd312d9c1386b8fece2dea3c764de22617acd3b64c4d879a677b01b26a2b8720633211 days 13 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.00239454
0x48d38a95cc65f6653719cb72487c3327a2c95e4d84622bd14a25abc9ec1230f5717858217 days 9 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.000469152
0x6f75e26956a6d12f67829ad642ac3b83f9e022706abbe0aec600ed30ca843b26717855917 days 9 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a17 Ether0.000475431
0x878df2bf9e0245c5ec7a493de910f46ce7ed06b01023749c74783050e8399a4b717854017 days 9 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a3 Ether0.001135347
0x08c66553f390a12758677f035470016845a68ffc09843ef2d4cd7e04e2f32b58716705719 days 18 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.000438864
0x8642c2eeda9ad4d69b23d6b89a886be5e5e8987a22735cb7258a9bf445885a6c716705319 days 18 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.000722654
0x7bfcdad7f6da2383b68c234b558c76fb06119ed2d36fc39e670065d3cfc782f0716171020 days 19 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0 Ether0.000640668
0x3fb3c34eb765719f0d50b69355e5c391ca1ae0bb870051e1a2de59f1d4849f4b716170520 days 19 hrs ago0x61eb464fa47a215a87fcbd4f3d98401997222e20 IN  0xa015191a34fd02f1f040ff83aaa62dc51b211a6a9.44 Ether0.00084864
[ Download CSV Export 

Latest 9 Internal Transactions Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0xdae7945cd3a33beb9f545d9fc0e38119fb6e0f732ca3ee99904fc5e43e9c40c672308065 days 17 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc22.05 Ether
0x4b866df127f916e80edf6682e05c53daf173be233e4e32054c10202517492bb072236317 days 10 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc20.95 Ether
0x51e20ce3761bebffa43ca7b78d167dab7350457065b1394852606e869b25fd6e72140299 days 17 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc24 Ether
0x6f75e26956a6d12f67829ad642ac3b83f9e022706abbe0aec600ed30ca843b26717855917 days 9 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc217 Ether
0x878df2bf9e0245c5ec7a493de910f46ce7ed06b01023749c74783050e8399a4b717854017 days 9 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc23 Ether
0x08c66553f390a12758677f035470016845a68ffc09843ef2d4cd7e04e2f32b58716705719 days 18 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0x61eb464fa47a215a87fcbd4f3d98401997222e2010.440003074406758048 Ether
0x08c66553f390a12758677f035470016845a68ffc09843ef2d4cd7e04e2f32b58716705719 days 18 hrs ago0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc20xa015191a34fd02f1f040ff83aaa62dc51b211a6a10.440003074406758048 Ether
0x3fb3c34eb765719f0d50b69355e5c391ca1ae0bb870051e1a2de59f1d4849f4b716170520 days 19 hrs ago0xa015191a34fd02f1f040ff83aaa62dc51b211a6a0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc29.44 Ether
0x01a472c94bad7a3498f3f338a08a6521c345f0231476ccf866075ac76980bcd2715885321 days 10 hrs ago0xa26e15c895efc0616177b7c1e7270a4c7d51c997  Contract Creation0 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 0x2b9b8b83c09e1d2bd3dace1c3db2fec8ff54a8ac
Contract Name: DSProxy
Compiler Version: v0.4.23+commit.124ca40d
Optimization Enabled: Yes
Runs (Optimizer):  200


Contract Source Code
// proxy.sol - execute actions atomically through the proxy's identity

// Copyright (C) 2017  DappHub, LLC

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

pragma solidity ^0.4.23;

contract DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) public view returns (bool);
}

contract DSAuthEvents {
    event LogSetAuthority (address indexed authority);
    event LogSetOwner     (address indexed owner);
}

contract DSAuth is DSAuthEvents {
    DSAuthority  public  authority;
    address      public  owner;

    constructor() public {
        owner = msg.sender;
        emit LogSetOwner(msg.sender);
    }

    function setOwner(address owner_)
        public
        auth
    {
        owner = owner_;
        emit LogSetOwner(owner);
    }

    function setAuthority(DSAuthority authority_)
        public
        auth
    {
        authority = authority_;
        emit LogSetAuthority(authority);
    }

    modifier auth {
        require(isAuthorized(msg.sender, msg.sig));
        _;
    }

    function isAuthorized(address src, bytes4 sig) internal view returns (bool) {
        if (src == address(this)) {
            return true;
        } else if (src == owner) {
            return true;
        } else if (authority == DSAuthority(0)) {
            return false;
        } else {
            return authority.canCall(src, this, sig);
        }
    }
}

contract DSNote {
    event LogNote(
        bytes4   indexed  sig,
        address  indexed  guy,
        bytes32  indexed  foo,
        bytes32  indexed  bar,
        uint              wad,
        bytes             fax
    ) anonymous;

    modifier note {
        bytes32 foo;
        bytes32 bar;

        assembly {
            foo := calldataload(4)
            bar := calldataload(36)
        }

        emit LogNote(msg.sig, msg.sender, foo, bar, msg.value, msg.data);

        _;
    }
}

// DSProxy
// Allows code execution using a persistant identity This can be very
// useful to execute a sequence of atomic actions. Since the owner of
// the proxy can be changed, this allows for dynamic ownership models
// i.e. a multisig
contract DSProxy is DSAuth, DSNote {
    DSProxyCache public cache;  // global cache for contracts

    constructor(address _cacheAddr) public {
        require(setCache(_cacheAddr));
    }

    function() public payable {
    }

    // use the proxy to execute calldata _data on contract _code
    function execute(bytes _code, bytes _data)
        public
        payable
        returns (address target, bytes32 response)
    {
        target = cache.read(_code);
        if (target == 0x0) {
            // deploy contract & store its address in cache
            target = cache.write(_code);
        }

        response = execute(target, _data);
    }

    function execute(address _target, bytes _data)
        public
        auth
        note
        payable
        returns (bytes32 response)
    {
        require(_target != 0x0);

        // call contract in current context
        assembly {
            let succeeded := delegatecall(sub(gas, 5000), _target, add(_data, 0x20), mload(_data), 0, 32)
            response := mload(0)      // load delegatecall output
            switch iszero(succeeded)
            case 1 {
                // throw if delegatecall failed
                revert(0, 0)
            }
        }
    }

    //set new cache
    function setCache(address _cacheAddr)
        public
        auth
        note
        returns (bool)
    {
        require(_cacheAddr != 0x0);        // invalid cache address
        cache = DSProxyCache(_cacheAddr);  // overwrite cache
        return true;
    }
}

// DSProxyFactory
// This factory deploys new proxy instances through build()
// Deployed proxy addresses are logged
contract DSProxyFactory {
    event Created(address indexed sender, address indexed owner, address proxy, address cache);
    mapping(address=>bool) public isProxy;
    DSProxyCache public cache = new DSProxyCache();

    // deploys a new proxy instance
    // sets owner of proxy to caller
    function build() public returns (DSProxy proxy) {
        proxy = build(msg.sender);
    }

    // deploys a new proxy instance
    // sets custom owner of proxy
    function build(address owner) public returns (DSProxy proxy) {
        proxy = new DSProxy(cache);
        emit Created(msg.sender, owner, address(proxy), address(cache));
        proxy.setOwner(owner);
        isProxy[proxy] = true;
    }
}

// DSProxyCache
// This global cache stores addresses of contracts previously deployed
// by a proxy. This saves gas from repeat deployment of the same
// contracts and eliminates blockchain bloat.

// By default, all proxies deployed from the same factory store
// contracts in the same cache. The cache a proxy instance uses can be
// changed.  The cache uses the sha3 hash of a contract's bytecode to
// lookup the address
contract DSProxyCache {
    mapping(bytes32 => address) cache;

    function read(bytes _code) public view returns (address) {
        bytes32 hash = keccak256(_code);
        return cache[hash];
    }

    function write(bytes _code) public returns (address target) {
        assembly {
            target := create(0, add(_code, 0x20), mload(_code))
            switch iszero(extcodesize(target))
            case 1 {
                // throw if contract failed to deploy
                revert(0, 0)
            }
        }
        bytes32 hash = keccak256(_code);
        cache[hash] = target;
    }
}

Contract ABI
[{"constant":false,"inputs":[{"name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_target","type":"address"},{"name":"_data","type":"bytes"}],"name":"execute","outputs":[{"name":"response","type":"bytes32"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_code","type":"bytes"},{"name":"_data","type":"bytes"}],"name":"execute","outputs":[{"name":"target","type":"address"},{"name":"response","type":"bytes32"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"cache","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_cacheAddr","type":"address"}],"name":"setCache","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_cacheAddr","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":true,"inputs":[{"indexed":true,"name":"sig","type":"bytes4"},{"indexed":true,"name":"guy","type":"address"},{"indexed":true,"name":"foo","type":"bytes32"},{"indexed":true,"name":"bar","type":"bytes32"},{"indexed":false,"name":"wad","type":"uint256"},{"indexed":false,"name":"fax","type":"bytes"}],"name":"LogNote","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"}]

Contract Creation Code
608060405234801561001057600080fd5b50604051602080610b37833981016040819052905160018054600160a060020a03191633600160a060020a031690811790915590917fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a261007d8164010000000061008e810204565b151561008857600080fd5b506102ac565b60006100c6337fffffffff00000000000000000000000000000000000000000000000000000000833516640100000000610180810204565b15156100d157600080fd5b6040805134808252602082018381523693830184905260043593602435938493869333600160a060020a031693600080357fffffffff0000000000000000000000000000000000000000000000000000000016949092606082018484808284376040519201829003965090945050505050a4600160a060020a038416151561015857600080fd5b60028054600160a060020a038616600160a060020a0319909116179055600192505050919050565b600030600160a060020a031683600160a060020a031614156101a4575060016102a6565b600154600160a060020a03848116911614156101c2575060016102a6565b600054600160a060020a031615156101dc575060006102a6565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015230811660248301527fffffffff00000000000000000000000000000000000000000000000000000000871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b15801561027757600080fd5b505af115801561028b573d6000803e3d6000fd5b505050506040513d60208110156102a157600080fd5b505190505b92915050565b61087c806102bb6000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af4035811461008f5780631cff79cd146100b05780631f6a1eb91461011c57806360c7d295146101c95780637a9e5e4b146101fa5780638da5cb5b1461021b578063948f507614610230578063bf7e214f14610265575b005b34801561009b57600080fd5b5061008d600160a060020a036004351661027a565b60408051602060046024803582810135601f810185900485028601850190965285855261010a958335600160a060020a03169536956044949193909101919081908401838280828437509497506102f89650505050505050565b60408051918252519081900360200190f35b6040805160206004803580820135601f81018490048402850184019095528484526101a694369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506103be9650505050505050565b60408051600160a060020a03909316835260208301919091528051918290030190f35b3480156101d557600080fd5b506101de6105ce565b60408051600160a060020a039092168252519081900360200190f35b34801561020657600080fd5b5061008d600160a060020a03600435166105dd565b34801561022757600080fd5b506101de610657565b34801561023c57600080fd5b50610251600160a060020a0360043516610666565b604080519115158252519081900360200190f35b34801561027157600080fd5b506101de61072d565b61029033600035600160e060020a03191661073c565b151561029b57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b600061031033600035600160e060020a03191661073c565b151561031b57600080fd5b6040805134808252602082018381523693830184905260043593602435938493869333600160a060020a03169360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4600160a060020a038516151561038a57600080fd5b60206000855160208701886113885a03f460005193508015600181146103af576103b4565b600080fd5b5050505092915050565b6002546040517f8bf4515c0000000000000000000000000000000000000000000000000000000081526020600482018181528551602484015285516000948594600160a060020a0390911693638bf4515c93899390928392604490910191908501908083838b5b8381101561043d578181015183820152602001610425565b50505050905090810190601f16801561046a5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561048957600080fd5b505af115801561049d573d6000803e3d6000fd5b505050506040513d60208110156104b357600080fd5b50519150600160a060020a03821615156105bb576002546040517f7ed0c3b2000000000000000000000000000000000000000000000000000000008152602060048201818152875160248401528751600160a060020a0390941693637ed0c3b293899383926044909201919085019080838360005b83811015610540578181015183820152602001610528565b50505050905090810190601f16801561056d5780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561058c57600080fd5b505af11580156105a0573d6000803e3d6000fd5b505050506040513d60208110156105b657600080fd5b505191505b6105c582846102f8565b90509250929050565b600254600160a060020a031681565b6105f333600035600160e060020a03191661073c565b15156105fe57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03838116919091178083556040519116917f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada491a250565b600154600160a060020a031681565b600061067e33600035600160e060020a03191661073c565b151561068957600080fd5b6040805134808252602082018381523693830184905260043593602435938493869333600160a060020a03169360008035600160e060020a031916949092606082018484808284376040519201829003965090945050505050a4600160a060020a03841615156106f857600080fd5b60028054600160a060020a03861673ffffffffffffffffffffffffffffffffffffffff19909116179055600192505050919050565b600054600160a060020a031681565b600030600160a060020a031683600160a060020a031614156107605750600161084a565b600154600160a060020a038481169116141561077e5750600161084a565b600054600160a060020a031615156107985750600061084a565b60008054604080517fb7009613000000000000000000000000000000000000000000000000000000008152600160a060020a0387811660048301523081166024830152600160e060020a0319871660448301529151919092169263b700961392606480820193602093909283900390910190829087803b15801561081b57600080fd5b505af115801561082f573d6000803e3d6000fd5b505050506040513d602081101561084557600080fd5b505190505b929150505600a165627a7a72305820e498874c9ba9e75028e0c84f1b1d83b2dad5de910c59b837b32e5a190794c5e10029000000000000000000000000271293c67e2d3140a0e9381eff1f9b01e07b0795


   Swarm Source:
bzzr://e498874c9ba9e75028e0c84f1b1d83b2dad5de910c59b837b32e5a190794c5e1
Block Age transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.