Contract 0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d

Contract Overview

Balance:
0 Ether
TxHash Block Age From To Value [TxFee]
0xf14fdee5fbab582e20b9b1aeb4cadae1e377dfb681d38cba07f237e42d29225c40638681 day 15 hrs ago0xc1e310155891c4a639f80dc14945d13190a75cc5 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0xf9e136de63dc81cdb8689c40e28703466b9ad8bdb1c3386376127a166fb6dd0640185009 days 12 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0xf581c4ac1cf46d158ef1616fa0030d933e7c7bba9d3614f72c37116ecc7aa3bf398979414 days 11 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0xeda6e8b23e9d2556d77276006a4afecaa9782c0bb974cf4db7ac13a0059686ce398325615 days 15 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0x5110f65126977bd56dd2afa84578901a7504c1787b163f9eff568335a2bd7c7d397770616 days 14 hrs ago0x0ddc793680ff4f5793849c8c6992be1695cbe72a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0x14fa454486da7fc3c05bc9c3821c93719f3e441dee39846b550b72bbd1fa3662397712416 days 16 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0x1dc472996f22ee954def625f7872e7f39aa360496f9b702962900e4ac43737b0395502520 days 12 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0x386fafc5147db50abd1878ffd988df88cb1a0986715ce1359be1ec79c98ce19c395476120 days 13 hrs ago0x627306090abab3a6e1400e9345bc60c78a8bef57 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000150705
0x434eb9015dc586c0d91d72c8d35583f1f144fc8b003a39f1835202d39fc6df23394862321 days 15 hrs ago0x9f76ddbeeeab169ef65e9ddf04a44c826427a2fa IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00040434
0x4cf898d3a3f6e230f757f789c61fbdd8deebe685ce2251ae8b025f6d9b21d40b391426227 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0x6d0cc50f1c2ab0fd3d6fecb617e1459665741eb069a561d104925a4585ad167c390802528 days 16 hrs ago0x7f01d9b227593e033bf8d6fc86e634d27aa85568 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0x4c22414c26e8a920eaa91e5617e7ec93dcd1fc6c1ac843385a717f54b6467a2b390297229 days 13 hrs ago0x2af5e28d0fd0996d5fbd7a8ecc70747323656b2b IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000046452
0x4a4889644cb6030c4e9d76d5b13b9f2c58d56c0cc63059ab2a05c84b8f008d4c390295329 days 13 hrs ago0x390409c2dfdffaa58e02085678fbacf7f40a5522 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.0013001
0x0f2f961d35df84cb002d91e25c825cb3c451b1caabf9cc7b778e224e70d45cae387557234 days 7 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0x46d20b4fa8b331f136db2526d2559d9005cb2c05cbf101a076abc3422b58ebca387556734 days 7 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0x837feb01bee154260ba94054302a921fd141d735387aebf1b9d966994f67c1a3387550534 days 8 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0xf513a5e3c0e56aacc476f226cf656e8f3036b76c37258e61de070d01c27f10c9386855935 days 13 hrs ago0x390409c2dfdffaa58e02085678fbacf7f40a5522 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0xe7bf8d95bea7e48fe86296db6846783dcb117035cc51cf7599c0183f8eb75ad5386855735 days 13 hrs ago0x390409c2dfdffaa58e02085678fbacf7f40a5522 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0x4ebf5fc4417eb4cd7593661e44426b1a1b6bd055929c60fff6c4feb426ff07cc386855435 days 13 hrs ago0x52df85e9de71aa1c210873bcf37ec46d36c99dc2 IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0x3600c688aa50b667656b4927b8d81f5b6f99402bb9380b560146329d2f1a703c386831935 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0x48a22c6ac03cbc0aa968187938b3604225c769c8cf32d24c678eebc3a9f4fbf4386826835 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0xb857b2fc224480dac0f9715a9541acd62d1f6514cb7a695f081a128eb3d95960386823335 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0xe937feaf0ec14a95bb6f826dc8e2056974e2013152435305b591032b41ef0581386818735 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
0x1ebd0db7f31c42fb7b9df97f1812b0398e1a3c2215960ddecfaa3b42081ecd26386818135 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.000015172
0xb6aeef8473dea1ab6f853bea492db4024d91c386d1ae88112bd49af3238113d8386817835 days 14 hrs ago0x0313df45e5b9125333a2437eb91d72685e882a0a IN  0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether0.00004722
[ Download CSV Export 

Latest 25 internal transaction, Click here to view more Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
0x99a1d9871ac5d6f23409bdab1f66c682abce980ff339896058d65c3949d88fa540732734 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x99a1d9871ac5d6f23409bdab1f66c682abce980ff339896058d65c3949d88fa540732734 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0xd14485eb783f73a806d94528d0fbc36ccdd5668c06c6201df26c0a605bee7b8840732578 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0xd14485eb783f73a806d94528d0fbc36ccdd5668c06c6201df26c0a605bee7b8840732578 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x47effde4b953e8cd55be148009b777fc64d893a52ec57a7aa9294961ce90139c40718865 hrs 51 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x47effde4b953e8cd55be148009b777fc64d893a52ec57a7aa9294961ce90139c40718865 hrs 51 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x836e9e71d68237ce306a8111ed0c78c078979da7296d16ea586d171a1272b18e40718855 hrs 51 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x836e9e71d68237ce306a8111ed0c78c078979da7296d16ea586d171a1272b18e40718855 hrs 51 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x207bb15db3be30be60500772976c4bd2a8410090f61aa3e9cf68005f3bd3e1ca40718096 hrs 10 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x207bb15db3be30be60500772976c4bd2a8410090f61aa3e9cf68005f3bd3e1ca40718096 hrs 10 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x40e4ca475d27b0092df5eb4ffe5b2042a1088b283c09229769e0465131afb99c40718026 hrs 12 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x40e4ca475d27b0092df5eb4ffe5b2042a1088b283c09229769e0465131afb99c40718026 hrs 12 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x6a1d8e4b76e62e20b051a13d3fbabf57b89e6b23fe43019a846b264f17b3833e40718016 hrs 12 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x6a1d8e4b76e62e20b051a13d3fbabf57b89e6b23fe43019a846b264f17b3833e40718016 hrs 12 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x1a5273b57bb7473d2d462614ebdc7c6ea2235c027c63637213669c6580ec9a8f40717696 hrs 20 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x1a5273b57bb7473d2d462614ebdc7c6ea2235c027c63637213669c6580ec9a8f40717696 hrs 20 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0xe4ee2ac0e52fa2ebad8b4e046532e4bb58db08d9c250db1ac583849c0495226d40717296 hrs 30 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0xe4ee2ac0e52fa2ebad8b4e046532e4bb58db08d9c250db1ac583849c0495226d40717296 hrs 30 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x3ba7e5938dfe8a12066b50424a5144a23e3b558f9770169cf8b40bd18c83728040717056 hrs 36 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x3ba7e5938dfe8a12066b50424a5144a23e3b558f9770169cf8b40bd18c83728040717056 hrs 36 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x1ac1746d4257ce15ecd645d0c2761ae544c4df4c9120d64fa0628a1fbbf0d792407029412 hrs 29 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x1ac1746d4257ce15ecd645d0c2761ae544c4df4c9120d64fa0628a1fbbf0d792407029412 hrs 29 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x3e594d34fa70f4f5ac24e7ccc03f300da9368779002f2fb0087a28ec8539230e407029312 hrs 29 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x3e594d34fa70f4f5ac24e7ccc03f300da9368779002f2fb0087a28ec8539230e407029312 hrs 29 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
0x645acf5880dc69409f5fbc2f1c51d5394ec793b8764c2cf86294d3038e6ba2ea407023212 hrs 44 mins ago0xaaeb2035ff394fdb2c879190f95e7676f1a9444b0xa7d1c04faf998f9161fc9f800a99a809b84cfc9d0 Ether
[ Download CSV Export 

Contract Source Code Verified (Exact Match)

Contract Name:
TokenOWLProxy

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
No

Runs (Optimizer):
200

Contract Source Code

pragma solidity ^0.4.21;

// File: @gnosis.pm/util-contracts/contracts/Proxy.sol

/// @title Proxied - indicates that a contract will be proxied. Also defines storage requirements for Proxy.
/// @author Alan Lu - <[email protected]>
contract Proxied {
    address public masterCopy;
}

/// @title Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
/// @author Stefan George - <[email protected]>
contract Proxy is Proxied {
    /// @dev Constructor function sets address of master copy contract.
    /// @param _masterCopy Master copy address.
    function Proxy(address _masterCopy)
        public
    {
        require(_masterCopy != 0);
        masterCopy = _masterCopy;
    }

    /// @dev Fallback function forwards all transactions and returns all received return data.
    function ()
        external
        payable
    {
        address _masterCopy = masterCopy;
        assembly {
            calldatacopy(0, 0, calldatasize())
            let success := delegatecall(not(0), _masterCopy, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            switch success
            case 0 { revert(0, returndatasize()) }
            default { return(0, returndatasize()) }
        }
    }
}

// File: @gnosis.pm/util-contracts/contracts/Math.sol

/// @title Math library - Allows calculation of logarithmic and exponential functions
/// @author Alan Lu - <[email protected]>
/// @author Stefan George - <[email protected]>
library Math {

    /*
     *  Constants
     */
    // This is equal to 1 in our calculations
    uint public constant ONE =  0x10000000000000000;
    uint public constant LN2 = 0xb17217f7d1cf79ac;
    uint public constant LOG2_E = 0x171547652b82fe177;

    /*
     *  Public functions
     */
    /// @dev Returns natural exponential function value of given x
    /// @param x x
    /// @return e**x
    function exp(int x)
        public
        pure
        returns (uint)
    {
        // revert if x is > MAX_POWER, where
        // MAX_POWER = int(mp.floor(mp.log(mpf(2**256 - 1) / ONE) * ONE))
        require(x <= 2454971259878909886679);
        // return 0 if exp(x) is tiny, using
        // MIN_POWER = int(mp.floor(mp.log(mpf(1) / ONE) * ONE))
        if (x < -818323753292969962227)
            return 0;
        // Transform so that e^x -> 2^x
        x = x * int(ONE) / int(LN2);
        // 2^x = 2^whole(x) * 2^frac(x)
        //       ^^^^^^^^^^ is a bit shift
        // so Taylor expand on z = frac(x)
        int shift;
        uint z;
        if (x >= 0) {
            shift = x / int(ONE);
            z = uint(x % int(ONE));
        }
        else {
            shift = x / int(ONE) - 1;
            z = ONE - uint(-x % int(ONE));
        }
        // 2^x = 1 + (ln 2) x + (ln 2)^2/2! x^2 + ...
        //
        // Can generate the z coefficients using mpmath and the following lines
        // >>> from mpmath import mp
        // >>> mp.dps = 100
        // >>> ONE =  0x10000000000000000
        // >>> print('\n'.join(hex(int(mp.log(2)**i / mp.factorial(i) * ONE)) for i in range(1, 7)))
        // 0xb17217f7d1cf79ab
        // 0x3d7f7bff058b1d50
        // 0xe35846b82505fc5
        // 0x276556df749cee5
        // 0x5761ff9e299cc4
        // 0xa184897c363c3
        uint zpow = z;
        uint result = ONE;
        result += 0xb17217f7d1cf79ab * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x3d7f7bff058b1d50 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0xe35846b82505fc5 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x276556df749cee5 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x5761ff9e299cc4 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0xa184897c363c3 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0xffe5fe2c4586 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x162c0223a5c8 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x1b5253d395e * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x1e4cf5158b * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x1e8cac735 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x1c3bd650 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x1816193 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x131496 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0xe1b7 * zpow / ONE;
        zpow = zpow * z / ONE;
        result += 0x9c7 * zpow / ONE;
        if (shift >= 0) {
            if (result >> (256-shift) > 0)
                return (2**256-1);
            return result << shift;
        }
        else
            return result >> (-shift);
    }

    /// @dev Returns natural logarithm value of given x
    /// @param x x
    /// @return ln(x)
    function ln(uint x)
        public
        pure
        returns (int)
    {
        require(x > 0);
        // binary search for floor(log2(x))
        int ilog2 = floorLog2(x);
        int z;
        if (ilog2 < 0)
            z = int(x << uint(-ilog2));
        else
            z = int(x >> uint(ilog2));
        // z = x * 2^-⌊log₂x⌋
        // so 1 <= z < 2
        // and ln z = ln x - ⌊log₂x⌋/log₂e
        // so just compute ln z using artanh series
        // and calculate ln x from that
        int term = (z - int(ONE)) * int(ONE) / (z + int(ONE));
        int halflnz = term;
        int termpow = term * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 3;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 5;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 7;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 9;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 11;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 13;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 15;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 17;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 19;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 21;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 23;
        termpow = termpow * term / int(ONE) * term / int(ONE);
        halflnz += termpow / 25;
        return (ilog2 * int(ONE)) * int(ONE) / int(LOG2_E) + 2 * halflnz;
    }

    /// @dev Returns base 2 logarithm value of given x
    /// @param x x
    /// @return logarithmic value
    function floorLog2(uint x)
        public
        pure
        returns (int lo)
    {
        lo = -64;
        int hi = 193;
        // I use a shift here instead of / 2 because it floors instead of rounding towards 0
        int mid = (hi + lo) >> 1;
        while((lo + 1) < hi) {
            if (mid < 0 && x << uint(-mid) < ONE || mid >= 0 && x >> uint(mid) < ONE)
                hi = mid;
            else
                lo = mid;
            mid = (hi + lo) >> 1;
        }
    }

    /// @dev Returns maximum of an array
    /// @param nums Numbers to look through
    /// @return Maximum number
    function max(int[] nums)
        public
        pure
        returns (int maxNum)
    {
        require(nums.length > 0);
        maxNum = -2**255;
        for (uint i = 0; i < nums.length; i++)
            if (nums[i] > maxNum)
                maxNum = nums[i];
    }

    /// @dev Returns whether an add operation causes an overflow
    /// @param a First addend
    /// @param b Second addend
    /// @return Did no overflow occur?
    function safeToAdd(uint a, uint b)
        internal
        pure
        returns (bool)
    {
        return a + b >= a;
    }

    /// @dev Returns whether a subtraction operation causes an underflow
    /// @param a Minuend
    /// @param b Subtrahend
    /// @return Did no underflow occur?
    function safeToSub(uint a, uint b)
        internal
        pure
        returns (bool)
    {
        return a >= b;
    }

    /// @dev Returns whether a multiply operation causes an overflow
    /// @param a First factor
    /// @param b Second factor
    /// @return Did no overflow occur?
    function safeToMul(uint a, uint b)
        internal
        pure
        returns (bool)
    {
        return b == 0 || a * b / b == a;
    }

    /// @dev Returns sum if no overflow occurred
    /// @param a First addend
    /// @param b Second addend
    /// @return Sum
    function add(uint a, uint b)
        internal
        pure
        returns (uint)
    {
        require(safeToAdd(a, b));
        return a + b;
    }

    /// @dev Returns difference if no overflow occurred
    /// @param a Minuend
    /// @param b Subtrahend
    /// @return Difference
    function sub(uint a, uint b)
        internal
        pure
        returns (uint)
    {
        require(safeToSub(a, b));
        return a - b;
    }

    /// @dev Returns product if no overflow occurred
    /// @param a First factor
    /// @param b Second factor
    /// @return Product
    function mul(uint a, uint b)
        internal
        pure
        returns (uint)
    {
        require(safeToMul(a, b));
        return a * b;
    }

    /// @dev Returns whether an add operation causes an overflow
    /// @param a First addend
    /// @param b Second addend
    /// @return Did no overflow occur?
    function safeToAdd(int a, int b)
        internal
        pure
        returns (bool)
    {
        return (b >= 0 && a + b >= a) || (b < 0 && a + b < a);
    }

    /// @dev Returns whether a subtraction operation causes an underflow
    /// @param a Minuend
    /// @param b Subtrahend
    /// @return Did no underflow occur?
    function safeToSub(int a, int b)
        internal
        pure
        returns (bool)
    {
        return (b >= 0 && a - b <= a) || (b < 0 && a - b > a);
    }

    /// @dev Returns whether a multiply operation causes an overflow
    /// @param a First factor
    /// @param b Second factor
    /// @return Did no overflow occur?
    function safeToMul(int a, int b)
        internal
        pure
        returns (bool)
    {
        return (b == 0) || (a * b / b == a);
    }

    /// @dev Returns sum if no overflow occurred
    /// @param a First addend
    /// @param b Second addend
    /// @return Sum
    function add(int a, int b)
        internal
        pure
        returns (int)
    {
        require(safeToAdd(a, b));
        return a + b;
    }

    /// @dev Returns difference if no overflow occurred
    /// @param a Minuend
    /// @param b Subtrahend
    /// @return Difference
    function sub(int a, int b)
        internal
        pure
        returns (int)
    {
        require(safeToSub(a, b));
        return a - b;
    }

    /// @dev Returns product if no overflow occurred
    /// @param a First factor
    /// @param b Second factor
    /// @return Product
    function mul(int a, int b)
        internal
        pure
        returns (int)
    {
        require(safeToMul(a, b));
        return a * b;
    }
}

// File: @gnosis.pm/util-contracts/contracts/Token.sol

/// Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
pragma solidity ^0.4.21;


/// @title Abstract token contract - Functions to be implemented by token contracts
contract Token {

    /*
     *  Events
     */
    event Transfer(address indexed from, address indexed to, uint value);
    event Approval(address indexed owner, address indexed spender, uint value);

    /*
     *  Public functions
     */
    function transfer(address to, uint value) public returns (bool);
    function transferFrom(address from, address to, uint value) public returns (bool);
    function approve(address spender, uint value) public returns (bool);
    function balanceOf(address owner) public view returns (uint);
    function allowance(address owner, address spender) public view returns (uint);
    function totalSupply() public view returns (uint);
}

// File: @gnosis.pm/util-contracts/contracts/StandardToken.sol

contract StandardTokenData {

    /*
     *  Storage
     */
    mapping (address => uint) balances;
    mapping (address => mapping (address => uint)) allowances;
    uint totalTokens;
}

/// @title Standard token contract with overflow protection
contract StandardToken is Token, StandardTokenData {
    using Math for *;

    /*
     *  Public functions
     */
    /// @dev Transfers sender's tokens to a given address. Returns success
    /// @param to Address of token receiver
    /// @param value Number of tokens to transfer
    /// @return Was transfer successful?
    function transfer(address to, uint value)
        public
        returns (bool)
    {
        if (   !balances[msg.sender].safeToSub(value)
            || !balances[to].safeToAdd(value))
            return false;
        balances[msg.sender] -= value;
        balances[to] += value;
        emit Transfer(msg.sender, to, value);
        return true;
    }

    /// @dev Allows allowed third party to transfer tokens from one address to another. Returns success
    /// @param from Address from where tokens are withdrawn
    /// @param to Address to where tokens are sent
    /// @param value Number of tokens to transfer
    /// @return Was transfer successful?
    function transferFrom(address from, address to, uint value)
        public
        returns (bool)
    {
        if (   !balances[from].safeToSub(value)
            || !allowances[from][msg.sender].safeToSub(value)
            || !balances[to].safeToAdd(value))
            return false;
        balances[from] -= value;
        allowances[from][msg.sender] -= value;
        balances[to] += value;
        emit Transfer(from, to, value);
        return true;
    }

    /// @dev Sets approved amount of tokens for spender. Returns success
    /// @param spender Address of allowed account
    /// @param value Number of approved tokens
    /// @return Was approval successful?
    function approve(address spender, uint value)
        public
        returns (bool)
    {
        allowances[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }

    /// @dev Returns number of allowed tokens for given address
    /// @param owner Address of token owner
    /// @param spender Address of token spender
    /// @return Remaining allowance for spender
    function allowance(address owner, address spender)
        public
        view
        returns (uint)
    {
        return allowances[owner][spender];
    }

    /// @dev Returns number of tokens owned by given address
    /// @param owner Address of token owner
    /// @return Balance of owner
    function balanceOf(address owner)
        public
        view
        returns (uint)
    {
        return balances[owner];
    }

    /// @dev Returns total supply of tokens
    /// @return Total supply
    function totalSupply()
        public
        view
        returns (uint)
    {
        return totalTokens;
    }
}

// File: contracts/TokenOWLProxy.sol

contract TokenOWLProxy is Proxy, StandardToken {
    using Math for *;

    string public constant name = "OWL Token";
    string public constant symbol = "OWL";
    uint8 public constant decimals = 18;

    struct masterCopyCountdownType {
        address masterCopy;
        uint timeWhenAvailable;
    }

    masterCopyCountdownType masterCopyCountdown;

    address public creator;
    address public minter;

    /// @dev Constructor of the contract OWL, which distributes tokens
    function TokenOWLProxy(address proxied)
        Proxy(proxied)
        public
    {
        creator = msg.sender;
    }
}

Contract ABI

[{"constant":true,"inputs":[],"name":"creator","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minter","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"masterCopy","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"proxied","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]

Contract Creation Code

6060604052341561000f57600080fd5b604051602080610df3833981016040528080519060200190919050508060008173ffffffffffffffffffffffffffffffffffffffff161415151561005257600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505033600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610d0f806100e46000396000f3006060604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806302d05d3f1461010857806306fdde031461015d57806307546172146101eb578063095ea7b31461024057806318160ddd1461029a57806323b872dd146102c3578063313ce5671461033c57806370a082311461036b57806395d89b41146103b8578063a619486e14610446578063a9059cbb1461049b578063dd62ed3e146104f5575b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050366000803760008036600084600019f43d6000803e8060008114610103573d6000f35b3d6000fd5b341561011357600080fd5b61011b610561565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561016857600080fd5b610170610587565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b0578082015181840152602081019050610195565b50505050905090810190601f1680156101dd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101f657600080fd5b6101fe6105c0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561024b57600080fd5b610280600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506105e6565b604051808215151515815260200191505060405180910390f35b34156102a557600080fd5b6102ad6106d8565b6040518082815260200191505060405180910390f35b34156102ce57600080fd5b610322600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506106e2565b604051808215151515815260200191505060405180910390f35b341561034757600080fd5b61034f6109cb565b604051808260ff1660ff16815260200191505060405180910390f35b341561037657600080fd5b6103a2600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506109d0565b6040518082815260200191505060405180910390f35b34156103c357600080fd5b6103cb610a19565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561040b5780820151818401526020810190506103f0565b50505050905090810190601f1680156104385780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561045157600080fd5b610459610a52565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156104a657600080fd5b6104db600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610a77565b604051808215151515815260200191505060405180910390f35b341561050057600080fd5b61054b600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c3e565b6040518082815260200191505060405180910390f35b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600981526020017f4f574c20546f6b656e000000000000000000000000000000000000000000000081525081565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600354905090565b600061073682600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cc590919063ffffffff16565b15806107ce57506107cc82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cc590919063ffffffff16565b155b80610828575061082682600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cd390919063ffffffff16565b155b1561083657600090506109c4565b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190505b9392505050565b601281565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040805190810160405280600381526020017f4f574c000000000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610acb82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cc590919063ffffffff16565b1580610b265750610b2482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610cd390919063ffffffff16565b155b15610b345760009050610c38565b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190505b92915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600081831015905092915050565b60008282840110159050929150505600a165627a7a723058206552bb211f6f2e6c99e133ea310afb484bb3ffc3735360fc2d7d01107536e5a70029000000000000000000000000ff9874588b2358704832a380ca9892f0a1c57b40

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

000000000000000000000000ff9874588b2358704832a380ca9892f0a1c57b40

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000ff9874588b2358704832a380ca9892f0a1c57b40

Swarm Source

bzzr://6552bb211f6f2e6c99e133ea310afb484bb3ffc3735360fc2d7d01107536e5a7
Block Age Transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward