ETH Price: $3,471.82 (+2.17%)
Gas: 14 Gwei

Contract

0x1dB42cEBA6BdEBF86D287e11b159FF97B083b8Af
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer180785852023-09-06 16:26:47314 days ago1694017607IN
0x1dB42cEB...7B083b8Af
0 ETH0.0016811729.26330469
Transfer174113102023-06-05 2:15:11408 days ago1685931311IN
0x1dB42cEB...7B083b8Af
0 ETH0.0022475723.79346947
Transfer164801852023-01-25 0:14:47539 days ago1674605687IN
0x1dB42cEB...7B083b8Af
0 ETH0.0017870518.91827052
Transfer162490222022-12-23 17:49:35571 days ago1671817775IN
0x1dB42cEB...7B083b8Af
0 ETH0.0017110227.48638024
Transfer162144592022-12-18 22:06:59576 days ago1671401219IN
0x1dB42cEB...7B083b8Af
0 ETH0.0012647812.74495385
Transfer158847702022-11-02 20:37:59622 days ago1667421479IN
0x1dB42cEB...7B083b8Af
0 ETH0.0017828418.88090666
Approve142114572022-02-15 15:23:35882 days ago1644938615IN
0x1dB42cEB...7B083b8Af
0 ETH0.0033683972.50100296
Approve140810972022-01-26 12:00:18903 days ago1643198418IN
0x1dB42cEB...7B083b8Af
0 ETH0.0040720387.64606057
Approve138789992021-12-26 5:48:30934 days ago1640497710IN
0x1dB42cEB...7B083b8Af
0 ETH0.0018324339.44112421
Approve138549502021-12-22 12:16:12938 days ago1640175372IN
0x1dB42cEB...7B083b8Af
0 ETH0.001814639.05726132
Transfer137420282021-12-04 21:03:27955 days ago1638651807IN
0x1dB42cEB...7B083b8Af
0 ETH0.0097299298.05822668
Transfer136508372021-11-20 8:29:28970 days ago1637396968IN
0x1dB42cEB...7B083b8Af
0 ETH0.01459899105
Approve135748982021-11-08 9:11:31982 days ago1636362691IN
0x1dB42cEB...7B083b8Af
0 ETH0.0040020586.13977151
Transfer133274772021-09-30 13:58:441021 days ago1633010324IN
0x1dB42cEB...7B083b8Af
0 ETH0.0069883370.41991482
Transfer133274642021-09-30 13:55:251021 days ago1633010125IN
0x1dB42cEB...7B083b8Af
0 ETH0.0071498479.44274485
Transfer132915892021-09-25 0:06:371026 days ago1632528397IN
0x1dB42cEB...7B083b8Af
0 ETH0.0042968545.50502503
Approve129760172021-08-07 5:30:371075 days ago1628314237IN
0x1dB42cEB...7B083b8Af
0 ETH0.0020737244.63468328
Approve129196412021-07-29 8:29:071084 days ago1627547347IN
0x1dB42cEB...7B083b8Af
0 ETH0.0010685823
Approve129106622021-07-27 22:13:211085 days ago1627424001IN
0x1dB42cEB...7B083b8Af
0 ETH0.0032057469
Transfer129093742021-07-27 17:18:381085 days ago1627406318IN
0x1dB42cEB...7B083b8Af
0 ETH0.00275925.8
Approve122198982021-04-11 17:02:561192 days ago1618160576IN
0x1dB42cEB...7B083b8Af
0 ETH0.0031495671
Approve122043122021-04-09 7:29:051195 days ago1617953345IN
0x1dB42cEB...7B083b8Af
0 ETH0.003992490
Approve121949162021-04-07 20:44:031196 days ago1617828243IN
0x1dB42cEB...7B083b8Af
0 ETH0.00794044179
Approve121666582021-04-03 12:41:541201 days ago1617453714IN
0x1dB42cEB...7B083b8Af
0 ETH0.00448036101
Approve121622742021-04-02 20:28:001201 days ago1617395280IN
0x1dB42cEB...7B083b8Af
0 ETH0.00357272142
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
45007732017-11-06 10:50:022445 days ago1509965402  Contract Creation0 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x02B35b88...D957AC2F8
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
SingularDTVToken

Compiler Version
v0.4.15+commit.bbb8e64f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-02-12
*/

pragma solidity ^0.4.15;

contract Token {
    /* This is a slight change to the ERC20 base standard.
    function totalSupply() constant returns (uint256 supply);
    is replaced with:
    uint256 public totalSupply;
    This automatically creates a getter function for the totalSupply.
    This is moved to the base contract since public getter functions are not
    currently recognised as an implementation of the matching abstract
    function by the compiler.
    */
    /// total amount of tokens
    uint256 public totalSupply;

    /// @param _owner The address from which the balance will be retrieved
    /// @return The balance
    function balanceOf(address _owner) constant returns (uint256 balance);

    /// @notice send `_value` token to `_to` from `msg.sender`
    /// @param _to The address of the recipient
    /// @param _value The amount of token to be transferred
    /// @return Whether the transfer was successful or not
    function transfer(address _to, uint256 _value) returns (bool success);

    /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`
    /// @param _from The address of the sender
    /// @param _to The address of the recipient
    /// @param _value The amount of token to be transferred
    /// @return Whether the transfer was successful or not
    function transferFrom(address _from, address _to, uint256 _value) returns (bool success);

    /// @notice `msg.sender` approves `_spender` to spend `_value` tokens
    /// @param _spender The address of the account able to transfer the tokens
    /// @param _value The amount of tokens to be approved for transfer
    /// @return Whether the approval was successful or not
    function approve(address _spender, uint256 _value) returns (bool success);

    /// @param _owner The address of the account owning tokens
    /// @param _spender The address of the account able to transfer the tokens
    /// @return Amount of remaining tokens allowed to spent
    function allowance(address _owner, address _spender) constant returns (uint256 remaining);

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}

contract StandardToken is Token {

    function transfer(address _to, uint256 _value) returns (bool success) {
        //Default assumes totalSupply can't be over max (2^256 - 1).
        //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap.
        //Replace the if with this one instead.
        //require(balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]);
        require(balances[msg.sender] >= _value);
        balances[msg.sender] -= _value;
        balances[_to] += _value;
        Transfer(msg.sender, _to, _value);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) returns (bool success) {
        //same as above. Replace this line with the following if you want to protect against wrapping uints.
        //require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]);
        require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value);
        balances[_to] += _value;
        balances[_from] -= _value;
        allowed[_from][msg.sender] -= _value;
        Transfer(_from, _to, _value);
        return true;
    }

    function balanceOf(address _owner) constant returns (uint256 balance) {
        return balances[_owner];
    }

    function approve(address _spender, uint256 _value) returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);
        return true;
    }

    function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
      return allowed[_owner][_spender];
    }

    /* Approves and then calls the receiving contract */
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        Approval(msg.sender, _spender, _value);

        //call the receiveApproval function on the contract you want to be notified. This crafts the function signature manually so one doesn't have to include a contract in here just for this.
        //receiveApproval(address _from, uint256 _value, address _tokenContract, bytes _extraData)
        //it is assumed that when does this that the call *should* succeed, otherwise one would use vanilla approve instead.
        require(_spender.call(bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData));
        return true;
    }

    mapping (address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;
} 

contract AbstractSingularDTVFund {
    function softWithdrawRewardFor(address forAddress) returns (uint);
}

/// @title Token contract - Implements token issuance.
/// @author Stefan George - <[email protected]>
/// @author Milad Mostavi - <[email protected]>
contract SingularDTVToken is StandardToken {
    string public version = "0.1.0";

    /*
     *  External contracts
     */
    AbstractSingularDTVFund public singularDTVFund;

    /*
     *  Token meta data
     */
    string public name;
    string public symbol;
    uint8 public constant decimals = 18;

    /// @dev Transfers sender's tokens to a given address. Returns success.
    /// @param to Address of token receiver.
    /// @param value Number of tokens to transfer.
    function transfer(address to, uint256 value)
        returns (bool)
    {
        // Both parties withdraw their reward first
        singularDTVFund.softWithdrawRewardFor(msg.sender);
        singularDTVFund.softWithdrawRewardFor(to);
        return super.transfer(to, value);
    }

    /// @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.
    function transferFrom(address from, address to, uint256 value)
        returns (bool)
    {
        // Both parties withdraw their reward first
        singularDTVFund.softWithdrawRewardFor(from);
        singularDTVFund.softWithdrawRewardFor(to);
        return super.transferFrom(from, to, value);
    }

    function SingularDTVToken(address sDTVFundAddr, address _wallet, string _name, string _symbol, uint _totalSupply) {
        if(sDTVFundAddr == 0 || _wallet == 0) {
            // Fund and Wallet addresses should not be null.
            revert();
        }

        balances[_wallet] = _totalSupply;
        totalSupply = _totalSupply;

        name = _name;
        symbol = _symbol;

        singularDTVFund = AbstractSingularDTVFund(sDTVFundAddr);

        Transfer(this, _wallet, _totalSupply);
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"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,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"version","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"singularDTVFund","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[{"name":"sDTVFundAddr","type":"address"},{"name":"_wallet","type":"address"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_totalSupply","type":"uint256"}],"payable":false,"type":"constructor"},{"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"}]

Deployed Bytecode

0x6060604052361561009e5763ffffffff60e060020a60003504166306fdde0381146100a3578063095ea7b31461012e57806318160ddd1461016457806323b872dd14610189578063313ce567146101c557806354fd4d50146101ee57806358a743331461027957806370a08231146102a857806395d89b41146102d9578063a9059cbb14610364578063cae9ca511461039a578063dd62ed3e14610413575b600080fd5b34156100ae57600080fd5b6100b661044a565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100f35780820151818401525b6020016100da565b50505050905090810190601f1680156101205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561013957600080fd5b610150600160a060020a03600435166024356104e8565b604051901515815260200160405180910390f35b341561016f57600080fd5b610177610555565b60405190815260200160405180910390f35b341561019457600080fd5b610150600160a060020a036004358116906024351660443561055b565b604051901515815260200160405180910390f35b34156101d057600080fd5b6101d861065b565b60405160ff909116815260200160405180910390f35b34156101f957600080fd5b6100b6610660565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100f35780820151818401525b6020016100da565b50505050905090810190601f1680156101205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561028457600080fd5b61028c6106fe565b604051600160a060020a03909116815260200160405180910390f35b34156102b357600080fd5b610177600160a060020a036004351661070d565b60405190815260200160405180910390f35b34156102e457600080fd5b6100b661072c565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156100f35780820151818401525b6020016100da565b50505050905090810190601f1680156101205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561036f57600080fd5b610150600160a060020a03600435166024356107ca565b604051901515815260200160405180910390f35b34156103a557600080fd5b61015060048035600160a060020a03169060248035919060649060443590810190830135806020601f820181900481020160405190810160405281815292919060208401838380828437509496506108c895505050505050565b604051901515815260200160405180910390f35b341561041e57600080fd5b610177600160a060020a0360043581169060243516610a6a565b60405190815260200160405180910390f35b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505081565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b600454600090600160a060020a031663b162281885836040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b15156105b657600080fd5b6102c65a03f115156105c757600080fd5b50505060405180515050600454600160a060020a031663b16228188460006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561062a57600080fd5b6102c65a03f1151561063b57600080fd5b5050506040518051905050610651848484610a97565b90505b9392505050565b601281565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505081565b600454600160a060020a031681565b600160a060020a0381166000908152600160205260409020545b919050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505081565b600454600090600160a060020a031663b162281833836040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561082557600080fd5b6102c65a03f1151561083657600080fd5b50505060405180515050600454600160a060020a031663b16228188460006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b151561089957600080fd5b6102c65a03f115156108aa57600080fd5b50505060405180519050506108bf8383610b81565b90505b92915050565b600160a060020a03338116600081815260026020908152604080832094881680845294909152808220869055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259086905190815260200160405180910390a383600160a060020a03166040517f72656365697665417070726f76616c28616464726573732c75696e743235362c81527f616464726573732c6279746573290000000000000000000000000000000000006020820152602e01604051809103902060e060020a9004338530866040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a0316815260200184815260200183600160a060020a0316600160a060020a03168152602001828051906020019080838360005b83811015610a0a5780820151818401525b6020016109f1565b50505050905090810190601f168015610a375780820380516001836020036101000a031916815260200191505b5094505050505060006040518083038160008761646e5a03f1925050501515610a5f57600080fd5b5060015b9392505050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b600160a060020a038316600090815260016020526040812054829010801590610ae75750600160a060020a0380851660009081526002602090815260408083203390941683529290522054829010155b1515610af257600080fd5b600160a060020a03808416600081815260016020908152604080832080548801905588851680845281842080548990039055600283528184203390961684529490915290819020805486900390559091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b9392505050565b600160a060020a03331660009081526001602052604081205482901015610ba757600080fd5b600160a060020a033381166000818152600160205260408082208054879003905592861680825290839020805486019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b929150505600a165627a7a7230582032d235f35dcbf40dcba31475bc6bf623314af4d64caf585d89fa48ab61ab904b0029

Swarm Source

bzzr://32d235f35dcbf40dcba31475bc6bf623314af4d64caf585d89fa48ab61ab904b

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.