Sponsored Link:   Buy your 1st Ethereum in 5 minutes. Trusted by more than 100k buyers.
Contract Overview | Dentacoin
ETH Balance: 1.375369847877530813 Ether
ETH USD Value: $953.76 (@ $693.46/ETH)
No Of Transactions: 36832 txns
Token Tracker 0x08d32b0da63e2C3bcF8019c9c5d849d7a9d791e6
  Latest 25 txns from a total Of 36832 transactions (+5 PendingTxns) View All

TxHash Age From To Value [TxFee]
0xb52db92d2e007123e560e23df0f49a4a7fa0f390cf8ed650613eebc41f3e4655(pending)9 mins ago0xbd53923a0f2a93fc3189dd432230b0b4122c1fc5  IN  0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60.003 Ether(pending)
0xfaf6da175bbd648df33c32d7d236de8dc85d4c9cc7bafd4974421019a989ae94(pending)14 mins ago0x905ccb9a8d8a8c460d68dbda8b25643567c35768  IN  0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60 Ether(pending)
0x49d1036fffa901a2c68c7237059d3dddc84273f04c58e6698f235bc1941de353(pending)17 mins ago0xd5d5f833e1d928897101f6a0cb9afb1971929402  IN  0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60 Ether(pending)
0xb6cb12d5afe6fc59181bdf9b403f7a350a580aefe17f521b584653a555c4dd68(pending)18 mins ago0x761934c28c9c49eebf11361d5acf1ee716216375  IN  0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60 Ether(pending)
0xe198b2753c44a8e172c4ba4b29f9491d61bbb095203a66b1a0847898e4dff73c(pending)31 mins ago0x0932ca2a9aceb9c0788336ff772d3ad7ce727cd6  IN  0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60 Ether(pending)
0xfbafe5a6bcf17e3c535417e4225f8cebacaaf626e09eb163e5d1ea6b3e10205d7 mins ago0xc2101e9407551e633e06a5b0a5f3fda8a1a6ad59  IN   Dentacoin0 Ether0.0006211
0x87633eb910359ae46af4fd9ca7b774ff3c9820ad04812b8b96d839d5c4f7feb19 mins ago0x3e3b18e821db7b6d44ea445730847eb18ff8135f  IN   Dentacoin0 Ether0.00176128
0xa10d8525d114571aaaa029ea8295cdf14b6dfcb88a69b3bc978c4690f4c8901817 mins ago0x0f066885ffe74e5836b13ada95dab4ccaeeaafc2  IN   Dentacoin0 Ether0.00039908
0x10071ee85939a9fb73c947eb1a0db7587268ddd63ac343ad32fe36fa616aa6a219 mins ago0x1e9733c0aacb72ea314b768ccb7eb6f710143302  IN   Dentacoin0 Ether0.00364184
0xa086ab9f558e5b564b626c8d409a549954c9fd4092128e25e4f22f02cd54450726 mins ago0x2984581ece53a4390d1f568673cf693139c97049  IN   Dentacoin0 Ether0.0027422
0xbdb56990e8cc07215f6771bc18d9afc99258d07a1a919da7e70bfd62448ee53554 mins ago0xef34ac941bf2a0377d508789e05952c72f80288d  IN   Dentacoin0 Ether0.00439264
0xcb094e0fc15872d3e97a348df8d58a0defd0aa296207c42a3473ce707ed02d861 hr 4 mins ago0x2984581ece53a4390d1f568673cf693139c97049  IN   Dentacoin0 Ether0.0019954
0xcb26520c78d9c01bb0885be216276d2de0e77869b4836ee9f2dfa296ff97f18f1 hr 9 mins ago0x826260b34c7ffd162cf65c52928656b14fd586ee  IN   Dentacoin0 Ether0.001136475
0xcfcd836f49426e2e4da04eb8fda85b84373d20eb2c2708dfa0e18ab76ae3f0451 hr 30 mins ago0xc4a69c40c37a26cc54dc3fcd22eaa24e5a84dd52  IN   Dentacoin0 Ether0.000298896
0x8b88a2aaadea2366fc7c829d79b3f984525dc5f3f099cf71b24bd0fe7e0c06b61 hr 30 mins ago0x0252300858333c03f13a2a841e967c23e08b26ab  IN   Dentacoin0 Ether0.000917884
0x713c0c26377b82ad7398f04691557a783ed4d96937bf1f81e2aa5bd106a2cf1d1 hr 34 mins ago0xc4a69c40c37a26cc54dc3fcd22eaa24e5a84dd52  IN   Dentacoin0 Ether0.00059766
0x87b49eeb835cf1c939edd13af4227781672afc35077756034a6778b05d69b1e81 hr 38 mins ago0x3e3b18e821db7b6d44ea445730847eb18ff8135f  IN   Dentacoin0 Ether0.00231744
0x718b1bea1f5e39451f0e0750186960033d27f04200bc62f5008db5fc139addf91 hr 40 mins ago0x2984581ece53a4390d1f568673cf693139c97049  IN   Dentacoin0 Ether0.0019922
0x797b106b6ec33345f273db31bc26ca121acb4aa10c0d9bb13dafbf1b6549366a1 hr 58 mins ago0xbff347d5e2f0c379bfd508406472c22880c419be  IN   Dentacoin0 Ether0.000836724
0x09d89098cab2d3751f3dae5e36a3d8e17b7e8acd6028b52dd0ae7b42a40e5e7b2 hrs 46 mins ago0xef34ac941bf2a0377d508789e05952c72f80288d  IN   Dentacoin0 Ether0.00439264
0xd4fa7827da1537aecba51fd949f045a09e944fe50ee3b59dd6b7c71ae5fcc6952 hrs 48 mins ago0x2984581ece53a4390d1f568673cf693139c97049  IN   Dentacoin0 Ether0.0027454
0x06e9278a9778837966c25fddd43d8cd9367ddea724ae2c01f1b26463b3fa36bd3 hrs ago0x3e3b18e821db7b6d44ea445730847eb18ff8135f  IN   Dentacoin0 Ether0.00176128
0x065187752900048cfb46cb421d94c559126c674d3212797c3bfaa6bb2a5f3d1b3 hrs 10 mins ago0x70b8ea3d7c195f1fac5868700441c457a2fcccbc  IN   Dentacoin0 Ether0.00364184
0x69987c5497d01b3fa40ac73eb082b9070f732775ba8abccc65c9281f6667b4b53 hrs 19 mins ago0xb02a71f8a8552b8a8cae1c396bfd423250ba1ca4  IN   Dentacoin0 Ether0.000836724
0x10cee19daf8d8fef98ded162ebc0c07f920145db309f6f15e4ccb9f5ce200b613 hrs 31 mins agocoinexchange.io  IN   Dentacoin0 Ether0.00175760508
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
  Latest 25 Internal Txns, Click here to View More View All
ParentTxHash Block Age From To Value
0x226b59db0805cbbf90023ecac07c9b16f387e5e4d86d18e43494679c67d808d0448426240 days 3 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xd560be7e053f6bdb113c2814faa339e29f4a385f4,653 Ether
0x5402f1c7031adc0032691d6199bcc420579886cdb29d01e2bb0435cb8c74c9714153959122 days 2 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xd560be7e053f6bdb113c2814faa339e29f4a385f1,774 Ether
0x89777b2cd16c1e4be4ad1b3f5c67bcc6009dee9fa51d1f1703eca3a5fcc9b7f94148533123 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xd560be7e053f6bdb113c2814faa339e29f4a385f247 Ether
0xaa185bb6e8de62154108b1270ee7839ce19197cff3dd369d6b553e56af0d1f7e3944569168 days 1 hr ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xc99f67433019d1da18c311e767faa2b8ec2508864 Ether
0xbde82d6ba6cce5c7416537196d926f2daee2ed6ea069f006f9eda3cc825e64293914216174 days 4 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xc99f67433019d1da18c311e767faa2b8ec2508861 Ether
0xa2f14b37aab9349524e6ef26302d1bffa2cb998b93d734c1a582d310d86ce2103903218176 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xc9c8263e86e6bb522db44c5857a1a043df7ea35f0.005 Ether
0x4f1f89f8c6798ab0bbe01b44948e1240a59e868257d417b1f0a48f0deb6974263903201176 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xce49ef088434e961fdda3d8fd2281b8edb4f32540.005 Ether
0x3f069f74f6381ece1e6f0022593c53f7a51500192acaabb058023a2800533d6e3903190176 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x44583ce632dfdacc5d119b802b859f68f9e2a39d0.005 Ether
0x7cc617baa5f051f1f7920836496487ecb1f879f6cfbcf0692e287709010593983903171176 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x8508eb3eec78b0a0c089e48d4873f0a507baab750.005 Ether
0xdc1074a6f9392692bc0c7cb022cfac4ad5c82e73aebffb7d98b09bf3213c34173903098176 days 10 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x64a8d7249a4a98b9ecb7edae7809f26b1e1175a30.005 Ether
0x89dadf9d0c05c9f4ef153f454f0c384e975b4e31710ebfc9ff7566671f0a5a443903058176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xf510319e175f90cbdaab7455c052180d2740d39a0.005 Ether
0x273b64362e1aad1b7bdfad07ddd0cdb5bbaa9942e47180bd024547b37a01e5763903050176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x8183bc95aa21a3b00b3907ab73b3a808203be4910.005 Ether
0x4265c0fbe63aa0a0ec1eca94657b46a3acffe9a7556c289fe1c4f13d059b50593903035176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x27a5d3f422d577047139c633d9f28bc2aa96b6780.005 Ether
0x1aa8de8d13561fcebab515050571f9d9b409f9a2b82de1111c566f66c74a73653903015176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x844d7183ffa6c491ac7f7fec339321470236dfaa0.005 Ether
0xf925789eeda7e65ac09d1fc831e0f0038a18aa45db8b0abfbc598aa1e6e5e7803903000176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x37d573b97d8877d8d840792bb7b13c2787cc61d20.005 Ether
0x8423c50674871b3399ec10fe9e6e3d10edf8064e31ae6b9dc7f843cf8a04d8a43902906176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x77ed90e99f873753cef94f9cab016797c5485d3f0.005 Ether
0xda27170d851831ac04ba7b75f76ebe031836d9f2c56851e5b73b09137f5e09c83902900176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xf7481e78252f1ba0829fd6154fea2bb47371f2930.005 Ether
0xc1272511cfdee88c759bef1a37cce5f860d5ec4336988ada6fd41c10885cba4c3902883176 days 11 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xb812483cb21696f9824110a3cee3784d8d9b6cc80.005 Ether
0x1fa7b462bdd4730566a40175f1cf3f5a4577fb2b986f67ca4fd957c277a32f8f3902693176 days 12 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xa6d801f974785506fc321828fff7e91edcf490920.005 Ether
0x04c1b8bae7fdd04090c7cbfa71b5b33850236edfc6440d1b1f1d5630ba9a875a3902687176 days 12 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x36c9af27cdbfe5318b349ebfa5be6ebe71fe0ff10.005 Ether
0xebd5f11944038a4a596efa1b3641703d57b1d49da45f0ca5b830d97e6e2420033902634176 days 13 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x6f229526062e373855e4804d61e67b2d904ebb500.005 Ether
0x4ecf443f52df1d5e8f183c02fae0efd0442a3678969e4ba35a0670eedcf7cd203902612176 days 13 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60x84f5d47d50c4770f02c20c90f41cd54d976301790.005 Ether
0x87b179de6fec74f8ff2c368342bb669ff2464310425892fd25f6790168c24c0f3900657176 days 22 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xf600f500e3e7c6aafbe5b09c6204747af0d36b930.005 Ether
0x33a1ed7427528fbad7a78964c38c4fc9987e0c1bee28f1b4467a0c8f7afe4ba23900651176 days 22 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xf56a9bd645f1593bb61ff6d5d9ede934e0988d000.005 Ether
0x46f1898bac438ae806034a04f39c57c96628eee5a15693eb7a52a422e8392ce13900591176 days 22 hrs ago0x08d32b0da63e2c3bcf8019c9c5d849d7a9d791e60xf362ac612568b029907b56c4494b3329272c19500.005 Ether
[ Download CSV Export  ] 
Contract Name: DentacoinToken
Compiler Version: v0.4.8+commit.60cc1668
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts
pragma solidity ^0.4.8;



/**
 * Dentacoin extended ERC20 token contract created on February the 14th, 2017 by Dentacoin B.V. in the Netherlands 
 *
 * For terms and conditions visit https://dentacoin.com
 */



contract owned {
    address public owner;

    function owned() {
        owner = msg.sender;
    }

    modifier onlyOwner {
        if (msg.sender != owner) throw;
        _;
    }

    function transferOwnership(address newOwner) onlyOwner {
        if (newOwner == 0x0) throw;
        owner = newOwner;
    }
}




/**
 * Overflow aware uint math functions.
 */
contract SafeMath {
  //internals

  function safeMul(uint a, uint b) internal returns (uint) {
    uint c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function safeSub(uint a, uint b) internal returns (uint) {
    assert(b <= a);
    return a - b;
  }

  function safeAdd(uint a, uint b) internal returns (uint) {
    uint c = a + b;
    assert(c>=a && c>=b);
    return c;
  }

  function assert(bool assertion) internal {
    if (!assertion) throw;
  }
}




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.
        if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
        //if (balances[msg.sender] >= _value && _value > 0) {
            balances[msg.sender] -= _value;
            balances[_to] += _value;
            Transfer(msg.sender, _to, _value);
            return true;
        } else { return false; }
    }

    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.
        if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]) {
        //if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) {
            balances[_from] -= _value;
            balances[_to] += _value;
            allowed[_from][msg.sender] -= _value;
            Transfer(_from, _to, _value);
            return true;
        } else { return false; }
    }

    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];
    }

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







/* Dentacoin Contract */
contract DentacoinToken is owned, SafeMath, StandardToken {
    string public name = "Dentacoin";                                       // Set the name for display purposes
    string public symbol = "٨";                                             // Set the symbol for display purposes
    address public DentacoinAddress = this;                                 // Address of the Dentacoin token
    uint8 public decimals = 0;                                              // Amount of decimals for display purposes
    uint256 public totalSupply = 8000000000000;                             // Set total supply of Dentacoins (eight trillion)
    uint256 public buyPriceEth = 1 finney;                                  // Buy price for Dentacoins
    uint256 public sellPriceEth = 1 finney;                                 // Sell price for Dentacoins
    uint256 public gasForDCN = 5 finney;                                    // Eth from contract against DCN to pay tx (10 times sellPriceEth)
    uint256 public DCNForGas = 10;                                          // DCN to contract against eth to pay tx
    uint256 public gasReserve = 1 ether;                                    // Eth amount that remains in the contract for gas and can't be sold
    uint256 public minBalanceForAccounts = 10 finney;                       // Minimal eth balance of sender and recipient
    bool public directTradeAllowed = false;                                 // Halt trading DCN by sending to the contract directly


/* Initializes contract with initial supply tokens to the creator of the contract */
    function DentacoinToken() {
        balances[msg.sender] = totalSupply;                                 // Give the creator all tokens
    }


/* Constructor parameters */
    function setEtherPrices(uint256 newBuyPriceEth, uint256 newSellPriceEth) onlyOwner {
        buyPriceEth = newBuyPriceEth;                                       // Set prices to buy and sell DCN
        sellPriceEth = newSellPriceEth;
    }
    function setGasForDCN(uint newGasAmountInWei) onlyOwner {
        gasForDCN = newGasAmountInWei;
    }
    function setDCNForGas(uint newDCNAmount) onlyOwner {
        DCNForGas = newDCNAmount;
    }
    function setGasReserve(uint newGasReserveInWei) onlyOwner {
        gasReserve = newGasReserveInWei;
    }
    function setMinBalance(uint minimumBalanceInWei) onlyOwner {
        minBalanceForAccounts = minimumBalanceInWei;
    }


/* Halts or unhalts direct trades without the sell/buy functions below */
    function haltDirectTrade() onlyOwner {
        directTradeAllowed = false;
    }
    function unhaltDirectTrade() onlyOwner {
        directTradeAllowed = true;
    }


/* Transfer function extended by check of eth balances and pay transaction costs with DCN if not enough eth */
    function transfer(address _to, uint256 _value) returns (bool success) {
        if (_value < DCNForGas) throw;                                      // Prevents drain and spam
        if (msg.sender != owner && _to == DentacoinAddress && directTradeAllowed) {
            sellDentacoinsAgainstEther(_value);                             // Trade Dentacoins against eth by sending to the token contract
            return true;
        }

        if (balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]) {               // Check if sender has enough and for overflows
            balances[msg.sender] = safeSub(balances[msg.sender], _value);   // Subtract DCN from the sender

            if (msg.sender.balance >= minBalanceForAccounts && _to.balance >= minBalanceForAccounts) {    // Check if sender can pay gas and if recipient could
                balances[_to] = safeAdd(balances[_to], _value);             // Add the same amount of DCN to the recipient
                Transfer(msg.sender, _to, _value);                          // Notify anyone listening that this transfer took place
                return true;
            } else {
                balances[this] = safeAdd(balances[this], DCNForGas);        // Pay DCNForGas to the contract
                balances[_to] = safeAdd(balances[_to], safeSub(_value, DCNForGas));  // Recipient balance -DCNForGas
                Transfer(msg.sender, _to, safeSub(_value, DCNForGas));      // Notify anyone listening that this transfer took place

                if(msg.sender.balance < minBalanceForAccounts) {
                    if(!msg.sender.send(gasForDCN)) throw;                  // Send eth to sender
                  }
                if(_to.balance < minBalanceForAccounts) {
                    if(!_to.send(gasForDCN)) throw;                         // Send eth to recipient
                }
            }
        } else { throw; }
    }


/* User buys Dentacoins and pays in Ether */
    function buyDentacoinsAgainstEther() payable returns (uint amount) {
        if (buyPriceEth == 0 || msg.value < buyPriceEth) throw;             // Avoid dividing 0, sending small amounts and spam
        amount = msg.value / buyPriceEth;                                   // Calculate the amount of Dentacoins
        if (balances[this] < amount) throw;                                 // Check if it has enough to sell
        balances[msg.sender] = safeAdd(balances[msg.sender], amount);       // Add the amount to buyer's balance
        balances[this] = safeSub(balances[this], amount);                   // Subtract amount from Dentacoin balance
        Transfer(this, msg.sender, amount);                                 // Execute an event reflecting the change
        return amount;
    }


/* User sells Dentacoins and gets Ether */
    function sellDentacoinsAgainstEther(uint256 amount) returns (uint revenue) {
        if (sellPriceEth == 0 || amount < DCNForGas) throw;                 // Avoid selling and spam
        if (balances[msg.sender] < amount) throw;                           // Check if the sender has enough to sell
        revenue = safeMul(amount, sellPriceEth);                            // Revenue = eth that will be send to the user
        if (safeSub(this.balance, revenue) < gasReserve) throw;             // Keep min amount of eth in contract to provide gas for transactions
        if (!msg.sender.send(revenue)) {                                    // Send ether to the seller. It's important
            throw;                                                          // To do this last to avoid recursion attacks
        } else {
            balances[this] = safeAdd(balances[this], amount);               // Add the amount to Dentacoin balance
            balances[msg.sender] = safeSub(balances[msg.sender], amount);   // Subtract the amount from seller's balance
            Transfer(this, msg.sender, revenue);                            // Execute an event reflecting on the change
            return revenue;                                                 // End function and returns
        }
    }


/* refund to owner */
    function refundToOwner (uint256 amountOfEth, uint256 dcn) onlyOwner {
        uint256 eth = safeMul(amountOfEth, 1 ether);
        if (!msg.sender.send(eth)) {                                        // Send ether to the owner. It's important
            throw;                                                          // To do this last to avoid recursion attacks
        } else {
            Transfer(this, msg.sender, eth);                                // Execute an event reflecting on the change
        }
        if (balances[this] < dcn) throw;                                    // Check if it has enough to sell
        balances[msg.sender] = safeAdd(balances[msg.sender], dcn);          // Add the amount to buyer's balance
        balances[this] = safeSub(balances[this], dcn);                      // Subtract amount from seller's balance
        Transfer(this, msg.sender, dcn);                                    // Execute an event reflecting the change
    }


/* This unnamed function is called whenever someone tries to send ether to it and possibly sells Dentacoins */
    function() payable {
        if (msg.sender != owner) {
            if (!directTradeAllowed) throw;
            buyDentacoinsAgainstEther();                                    // Allow direct trades by sending eth to the contract
        }
    }
}

/* JJG */

    Contract ABI  
[{"constant":true,"inputs":[],"name":"sellPriceEth","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"buyDentacoinsAgainstEther","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"type":"function"},{"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":false,"inputs":[{"name":"newGasReserveInWei","type":"uint256"}],"name":"setGasReserve","outputs":[],"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":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newDCNAmount","type":"uint256"}],"name":"setDCNForGas","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"directTradeAllowed","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"minBalanceForAccounts","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newBuyPriceEth","type":"uint256"},{"name":"newSellPriceEth","type":"uint256"}],"name":"setEtherPrices","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"buyPriceEth","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amountOfEth","type":"uint256"},{"name":"dcn","type":"uint256"}],"name":"refundToOwner","outputs":[],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newGasAmountInWei","type":"uint256"}],"name":"setGasForDCN","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"sellDentacoinsAgainstEther","outputs":[{"name":"revenue","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"haltDirectTrade","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"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":"success","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"DentacoinAddress","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"DCNForGas","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"gasForDCN","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"minimumBalanceInWei","type":"uint256"}],"name":"setMinBalance","outputs":[],"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"},{"constant":false,"inputs":[],"name":"unhaltDirectTrade","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"gasReserve","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[],"payable":false,"type":"constructor"},{"payable":true,"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 Switch To Opcodes View
60a0604052600960608190527f44656e7461636f696e000000000000000000000000000000000000000000000060809081526004805460008290527f44656e7461636f696e0000000000000000000000000000000000000000000012825590927f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b602060026001851615610100026000190190941693909304601f0192909204820192909190620000db565b82800160010185558215620000db579182015b82811115620000db578251825591602001919060010190620000be565b5b50620000ff9291505b80821115620000fb5760008155600101620000e5565b5090565b50506040805180820190915260028082527fd9a800000000000000000000000000000000000000000000000000000000000060209283019081526005805460008290528251600460ff1990911617825590937f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db060018316156101000260001901909216849004601f010481019291620001c3565b82800160010185558215620001c3579182015b82811115620001c3578251825591602001919060010190620001a6565b5b50620001e79291505b80821115620000fb5760008155600101620000e5565b5090565b505060068054600160a060020a03191630600160a060020a03161760a060020a60ff0219169055650746a528800060075566038d7ea4c6800060088190556009556611c37937e08000600a908155600b55670de0b6b3a7640000600c55662386f26fc10000600d55600e805460ff191690553462000000575b5b60008054600160a060020a03191633600160a060020a03161790555b600754600160a060020a0333166000908152600260205260409020555b5b6111de80620002ab6000396000f300606060405236156101595763ffffffff60e060020a600035041663015129a1811461019357806302500824146101b257806306fdde03146101cc578063095ea7b3146102595780630d5260e71461028957806318160ddd1461029b57806323b872dd146102ba578063313ce567146102f05780633fdccd8d1461031357806341713a371461032557806347f1d8d7146103465780634b6a3334146103655780635639bb3c1461037a5780635ff456cb146103995780635ff4ae32146103ae57806370a08231146103c057806384c14b25146103eb578063892242271461040d5780638da5cb5b1461041c57806395d89b4114610445578063a9059cbb146104d2578063b04247e914610502578063b42b14c41461052b578063c72be8381461054a578063c91d956c14610569578063dd62ed3e1461057b578063ea43b79f146105ac578063eea7570e146105bb578063f2fde38b146105da575b6101915b60005433600160a060020a0390811691161461018e57600e5460ff16151561018457610000565b61018c6105f5565b505b5b565b005b34610000576101a06106e7565b60408051918252519081900360200190f35b6101a06105f5565b60408051918252519081900360200190f35b34610000576101d96106ed565b60408051602080825283518183015283519192839290830191850190808383821561021f575b80518252602083111561021f57601f1990920191602091820191016101ff565b505050905090810190601f16801561024b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610275600160a060020a036004351660243561077b565b604080519115158252519081900360200190f35b34610000576101916004356107e6565b005b34610000576101a061080b565b60408051918252519081900360200190f35b3461000057610275600160a060020a0360043581169060243516604435610811565b604080519115158252519081900360200190f35b34610000576102fd61090e565b6040805160ff9092168252519081900360200190f35b346100005761019160043561092f565b005b3461000057610275610954565b604080519115158252519081900360200190f35b34610000576101a061095d565b60408051918252519081900360200190f35b3461000057610191600435602435610963565b005b34610000576101a061098e565b60408051918252519081900360200190f35b3461000057610191600435602435610994565b005b3461000057610191600435610af7565b005b34610000576101a0600160a060020a0360043516610b1c565b60408051918252519081900360200190f35b34610000576101a0600435610b3b565b60408051918252519081900360200190f35b3461000057610191610c83565b005b3461000057610429610cac565b60408051600160a060020a039092168252519081900360200190f35b34610000576101d9610cbb565b60408051602080825283518183015283519192839290830191850190808383821561021f575b80518252602083111561021f57601f1990920191602091820191016101ff565b505050905090810190601f16801561024b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3461000057610275600160a060020a0360043516602435610d49565b604080519115158252519081900360200190f35b3461000057610429611019565b60408051600160a060020a039092168252519081900360200190f35b34610000576101a0611028565b60408051918252519081900360200190f35b34610000576101a061102e565b60408051918252519081900360200190f35b3461000057610191600435611034565b005b34610000576101a0600160a060020a0360043581169060243516611059565b60408051918252519081900360200190f35b3461000057610191611086565b005b34610000576101a06110b2565b60408051918252519081900360200190f35b3461000057610191600160a060020a03600435166110b8565b005b600060085460001480610609575060085434105b1561061357610000565b60085434811561000057600160a060020a03301660009081526002602052604090205491900491508190101561064857610000565b600160a060020a03331660009081526002602052604090205461066b9082611115565b600160a060020a0333811660009081526002602052604080822093909355309091168152205461069b908261113d565b600160a060020a03308116600081815260026020908152604091829020949094558051858152905133909316939192600080516020611193833981519152929181900390910190a35b90565b60095481565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107735780601f1061074857610100808354040283529160200191610773565b820191906000526020600020905b81548152906001019060200180831161075657829003601f168201915b505050505081565b600160a060020a03338116600081815260036020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60005433600160a060020a0390811691161461080157610000565b600c8190555b5b50565b60075481565b600160a060020a0383166000908152600260205260408120548290108015906108615750600160a060020a0380851660009081526003602090815260408083203390941683529290522054829010155b80156108865750600160a060020a038316600090815260026020526040902054828101115b1561090257600160a060020a03808516600081815260026020908152604080832080548890039055878516808452818420805489019055848452600383528184203390961684529482529182902080548790039055815186815291516000805160206111938339815191529281900390910190a3506001610906565b5060005b5b9392505050565b60065474010000000000000000000000000000000000000000900460ff1681565b60005433600160a060020a0390811691161461094a57610000565b600b8190555b5b50565b600e5460ff1681565b600d5481565b60005433600160a060020a0390811691161461097e57610000565b600882905560098190555b5b5050565b60085481565b6000805433600160a060020a039081169116146109b057610000565b6109c283670de0b6b3a7640000611156565b604051909150600160a060020a0333169082156108fc029083906000818181858888f1935050505015156109f557610000565b33600160a060020a031630600160a060020a0316600080516020611193833981519152836040518082815260200191505060405180910390a35b600160a060020a03301660009081526002602052604090205482901015610a5557610000565b600160a060020a033316600090815260026020526040902054610a789083611115565b600160a060020a03338116600090815260026020526040808220939093553090911681522054610aa8908361113d565b600160a060020a03308116600081815260026020908152604091829020949094558051868152905133909316939192600080516020611193833981519152929181900390910190a35b5b505050565b60005433600160a060020a03908116911614610b1257610000565b600a8190555b5b50565b600160a060020a0381166000908152600260205260409020545b919050565b600060095460001480610b4f5750600b5482105b15610b5957610000565b600160a060020a03331660009081526002602052604090205482901015610b7f57610000565b610b8b82600954611156565b9050600c54610ba430600160a060020a0316318361113d565b1015610baf57610000565b604051600160a060020a0333169082156108fc029083906000818181858888f193505050501515610bdf57610000565b600160a060020a033016600090815260026020526040902054610c029083611115565b600160a060020a03308116600090815260026020526040808220939093553390911681522054610c32908361113d565b600160a060020a0333811660008181526002602090815260409182902094909455805185815290519193309093169260008051602061119383398151915292918290030190a3610b36565b5b919050565b60005433600160a060020a03908116911614610c9e57610000565b600e805460ff191690555b5b565b600054600160a060020a031681565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107735780601f1061074857610100808354040283529160200191610773565b820191906000526020600020905b81548152906001019060200180831161075657829003601f168201915b505050505081565b6000600b54821015610d5a57610000565b60005433600160a060020a03908116911614801590610d865750600654600160a060020a038481169116145b8015610d945750600e5460ff165b15610dac57610da282610b3b565b50600190506107e0565b600160a060020a033316600090815260026020526040902054829010801590610dee5750600160a060020a038316600090815260026020526040902054828101115b1561100d57600160a060020a033316600090815260026020526040902054610e16908361113d565b600160a060020a033316600081815260026020526040902091909155600d54903110801590610e515750600d5483600160a060020a03163110155b15610ec757600160a060020a038316600090815260026020526040902054610e799083611115565b600160a060020a0380851660008181526002602090815260409182902094909455805186815290519193339093169260008051602061119383398151915292918290030190a35060016107e0565b600160a060020a033016600090815260026020526040902054600b54610eed9190611115565b600160a060020a033081166000908152600260205260408082209390935590851681522054600b54610f2a9190610f2590859061113d565b611115565b600160a060020a03808516600081815260026020526040902092909255600b54339091169060008051602061119383398151915290610f6a90869061113d565b60408051918252519081900360200190a3600d5433600160a060020a0316311015610fc057600a54604051600160a060020a0333169180156108fc02916000818181858888f193505050501515610fc057610000565b5b600d5483600160a060020a031631101561100657600a54604051600160a060020a0385169180156108fc02916000818181858888f19350505050151561100657610000565b5b5b6107e0565b610000565b5b92915050565b600654600160a060020a031681565b600b5481565b600a5481565b60005433600160a060020a0390811691161461104f57610000565b600d8190555b5b50565b600160a060020a038083166000908152600360209081526040808320938516835292905220545b92915050565b60005433600160a060020a039081169116146110a157610000565b600e805460ff191660011790555b5b565b600c5481565b60005433600160a060020a039081169116146110d357610000565b600160a060020a03811615156110e857610000565b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b5b50565b600082820161113284821080159061112d5750838210155b611182565b8091505b5092915050565b600061114b83831115611182565b508082035b92915050565b600082820261113284158061112d575083858381156100005704145b611182565b8091505b5092915050565b80151561018c57610000565b5b505600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820dd908e47570658e19355d4d9d91ee9d6351055f8f5e70c8a58e1831de5274da20029

   Swarm Source:
bzzr://dd908e47570658e19355d4d9d91ee9d6351055f8f5e70c8a58e1831de5274da2

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.