ETH Price: $3,272.24 (-1.77%)

Contract

0xE0B7927c4aF23765Cb51314A0E0521A9645F0E2A
 

Overview

ETH Balance

25.380871524268761436 ETH

Eth Value

$83,052.29 (@ $3,272.24/ETH)

Token Holdings

Transaction Hash
Method
Block
From
To
Transfer214644142024-12-23 9:52:596 hrs ago1734947579IN
DigixDAO: DGD Token
0 ETH0.0004852210.22494389
Transfer214644082024-12-23 9:51:476 hrs ago1734947507IN
DigixDAO: DGD Token
0 ETH0.0002984410.83074108
Approve214612032024-12-22 23:05:4716 hrs ago1734908747IN
DigixDAO: DGD Token
0 ETH0.000238685.15229921
Approve213970612024-12-14 0:06:239 days ago1734134783IN
DigixDAO: DGD Token
0 ETH0.0006527914.19064473
Approve213893232024-12-12 22:10:2310 days ago1734041423IN
DigixDAO: DGD Token
0 ETH0.0009368920.37174089
Transfer213599772024-12-08 19:50:5914 days ago1733687459IN
DigixDAO: DGD Token
0 ETH0.0006952614.65106546
Approve213535762024-12-07 22:24:5915 days ago1733610299IN
DigixDAO: DGD Token
0 ETH0.0005517611.91037612
Transfer213533712024-12-07 21:43:5915 days ago1733607839IN
DigixDAO: DGD Token
0 ETH0.0004035214.64449416
Transfer213439212024-12-06 14:02:1117 days ago1733493731IN
DigixDAO: DGD Token
0 ETH0.0010139221.46918502
Approve213435802024-12-06 12:53:4717 days ago1733489627IN
DigixDAO: DGD Token
0 ETH0.0008423218.18256063
Approve213387082024-12-05 20:33:3517 days ago1733430815IN
DigixDAO: DGD Token
0 ETH0.0012065326.27592766
Transfer213386362024-12-05 20:19:1117 days ago1733429951IN
DigixDAO: DGD Token
0 ETH0.0015395332.44199344
Approve213279832024-12-04 8:36:5919 days ago1733301419IN
DigixDAO: DGD Token
0 ETH0.00085518.60572362
Approve213116832024-12-02 1:55:5921 days ago1733104559IN
DigixDAO: DGD Token
0 ETH0.0008840719.21826418
Transfer213116762024-12-02 1:54:3521 days ago1733104475IN
DigixDAO: DGD Token
0 ETH0.0008755118.4446739
Approve213115612024-12-02 1:31:2321 days ago1733103083IN
DigixDAO: DGD Token
0 ETH0.0009025219.62948181
Approve213114122024-12-02 1:01:3521 days ago1733101295IN
DigixDAO: DGD Token
0 ETH0.0003933415.08327254
Approve213109412024-12-01 23:26:5921 days ago1733095619IN
DigixDAO: DGD Token
0 ETH0.0003879314.87609544
Approve213108912024-12-01 23:16:5921 days ago1733095019IN
DigixDAO: DGD Token
0 ETH0.0006717714.61083758
Approve213084132024-12-01 14:59:2322 days ago1733065163IN
DigixDAO: DGD Token
0 ETH0.0007599616.55470383
Transfer213079092024-12-01 13:18:3522 days ago1733059115IN
DigixDAO: DGD Token
0 ETH0.000662812.68692696
Approve212899142024-11-29 0:56:2324 days ago1732841783IN
DigixDAO: DGD Token
0 ETH0.000311916.7821987
Approve212800462024-11-27 15:41:1126 days ago1732722071IN
DigixDAO: DGD Token
0 ETH0.0010923123.7512333
Approve212800192024-11-27 15:35:4726 days ago1732721747IN
DigixDAO: DGD Token
0 ETH0.001074423.36778779
Transfer212800002024-11-27 15:31:5926 days ago1732721519IN
DigixDAO: DGD Token
0 ETH0.0012909424.70469048
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block
From
To
14091212016-04-26 19:24:403162 days ago1461698680
DigixDAO: DGD Token
 Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.3.0-2016-03-11-1f9578c

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2016-04-28
*/

/// @title DigixDAO Contract Interfaces

contract ConfigInterface {
        address public owner;
        mapping(address => bool) admins;
        mapping(bytes32 => address) addressMap;
        mapping(bytes32 => bool) boolMap;
        mapping(bytes32 => bytes32) bytesMap;
        mapping(bytes32 => uint256) uintMap;

        /// @notice setConfigAddress sets configuration `_key` to `_val`
        /// @param _key The key name of the configuration.
        /// @param _val The value of the configuration.
        /// @return Whether the configuration setting was successful or not.
        function setConfigAddress(bytes32 _key, address _val) returns(bool success);

        /// @notice setConfigBool sets configuration `_key` to `_val`
        /// @param _key The key name of the configuration.
        /// @param _val The value of the configuration.
        /// @return Whether the configuration setting was successful or not.
        function setConfigBool(bytes32 _key, bool _val) returns(bool success);

        /// @notice setConfigBytes sets configuration `_key` to `_val`
        /// @param _key The key name of the configuration.
        /// @param _val The value of the configuration.
        /// @return Whether the configuration setting was successful or not.
        function setConfigBytes(bytes32 _key, bytes32 _val) returns(bool success);

        /// @notice setConfigUint `_key` to `_val`
        /// @param _key The key name of the configuration.
        /// @param _val The value of the configuration.
        /// @return Whether the configuration setting was successful or not.
        function setConfigUint(bytes32 _key, uint256 _val) returns(bool success);

        /// @notice getConfigAddress gets configuration `_key`'s value
        /// @param _key The key name of the configuration.
        /// @return The configuration value
        function getConfigAddress(bytes32 _key) returns(address val);

        /// @notice getConfigBool gets configuration `_key`'s value
        /// @param _key The key name of the configuration.
        /// @return The configuration value
        function getConfigBool(bytes32 _key) returns(bool val);

        /// @notice getConfigBytes gets configuration `_key`'s value
        /// @param _key The key name of the configuration.
        /// @return The configuration value
        function getConfigBytes(bytes32 _key) returns(bytes32 val);

        /// @notice getConfigUint gets configuration `_key`'s value
        /// @param _key The key name of the configuration.
        /// @return The configuration value
        function getConfigUint(bytes32 _key) returns(uint256 val);

        /// @notice addAdmin sets `_admin` as configuration admin
        /// @return Whether the configuration setting was successful or not.
        function addAdmin(address _admin) returns(bool success);

        /// @notice removeAdmin removes  `_admin`'s rights
        /// @param _admin The key name of the configuration.
        /// @return Whether the configuration setting was successful or not.
        function removeAdmin(address _admin) returns(bool success);

}

contract TokenInterface {

        mapping(address => uint256) balances;
        mapping(address => mapping(address => uint256)) allowed;
        mapping(address => bool) seller;

        address config;
        address owner;
        address dao;
        address public badgeLedger;
        bool locked;

        /// @return 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` tokens to `_to` from `msg.sender`
        /// @param _to The address of the recipient
        /// @param _value The amount of tokens to be transfered
        /// @return Whether the transfer was successful or not
        function transfer(address _to, uint256 _value) returns(bool success);

        /// @notice send `_value` tokens 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 tokens to be transfered
        /// @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 on its behalf
        /// @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 of _owner that _spender is allowed to spend
        function allowance(address _owner, address _spender) constant returns(uint256 remaining);

        /// @notice mint `_amount` of tokens to `_owner`
        /// @param _owner The address of the account receiving the tokens
        /// @param _amount The amount of tokens to mint
        /// @return Whether or not minting was successful
        function mint(address _owner, uint256 _amount) returns(bool success);

        /// @notice mintBadge Mint `_amount` badges to `_owner`
        /// @param _owner The address of the account receiving the tokens
        /// @param _amount The amount of tokens to mint
        /// @return Whether or not minting was successful
        function mintBadge(address _owner, uint256 _amount) returns(bool success);

        function registerDao(address _dao) returns(bool success);

        function registerSeller(address _tokensales) returns(bool success);

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

contract TokenSalesInterface {

        struct SaleProxy {
                address payout;
                bool isProxy;
        }

        struct SaleStatus {
                bool founderClaim;
                uint256 releasedTokens;
                uint256 releasedBadges;
                uint256 claimers;
        }

        struct Info {
                uint256 totalWei;
                uint256 totalCents;
                uint256 realCents;
                uint256 amount;
        }

        struct SaleConfig {
                uint256 startDate;
                uint256 periodTwo;
                uint256 periodThree;
                uint256 endDate;
                uint256 goal;
                uint256 cap;
                uint256 badgeCost;
                uint256 founderAmount;
                address founderWallet;
        }

        struct Buyer {
                uint256 centsTotal;
                uint256 weiTotal;
                bool claimed;
        }

        Info saleInfo;
        SaleConfig saleConfig;
        SaleStatus saleStatus;

        address config;
        address owner;
        bool locked;

        uint256 public ethToCents;

        mapping(address => Buyer) buyers;
        mapping(address => SaleProxy) proxies;

        /// @notice Calculates the parts per billion 1⁄1,000,000,000 of `_a` to `_b`
        /// @param _a The antecedent
        /// @param _c The consequent
        /// @return Part per billion value
        function ppb(uint256 _a, uint256 _c) public constant returns(uint256 b);


        /// @notice Calculates the share from `_total` based on `_contrib`
        /// @param _contrib The contributed amount in USD
        /// @param _total The total amount raised in USD
        /// @return Total number of shares
        function calcShare(uint256 _contrib, uint256 _total) public constant returns(uint256 share);

        /// @notice Calculates the current USD cents value of `_wei`
        /// @param _wei the amount of wei
        /// @return The USD cents value
        function weiToCents(uint256 _wei) public constant returns(uint256 centsvalue);

        function proxyPurchase(address _user) returns(bool success);

        /// @notice Send msg.value purchase for _user.
        /// @param _user The account to be credited
        /// @return Success if purchase was accepted
        function purchase(address _user, uint256 _amount) private returns(bool success);

        /// @notice Get crowdsale information for `_user`
        /// @param _user The account to be queried
        /// @return `centstotal` the total amount of USD cents contributed
        /// @return `weitotal` the total amount in wei contributed
        /// @return `share` the current token shares earned
        /// @return `badges` the number of proposer badges earned
        /// @return `claimed` is true if the tokens and badges have been claimed
        function userInfo(address _user) public constant returns(uint256 centstotal, uint256 weitotal, uint256 share, uint badges, bool claimed);

        /// @notice Get the crowdsale information from msg.sender (see userInfo)
        function myInfo() public constant returns(uint256 centstotal, uint256 weitotal, uint256 share, uint badges, bool claimed);

        /// @notice get the total amount of wei raised for the crowdsale
        /// @return The amount of wei raised
        function totalWei() public constant returns(uint);

        /// @notice get the total USD value in cents raised for the crowdsale
        /// @return the amount USD cents
        function totalCents() public constant returns(uint);

        /// @notice get the current crowdsale information
        /// @return `startsale` The unix timestamp for the start of the crowdsale and the first period modifier
        /// @return `two` The unix timestamp for the start of the second period modifier
        /// @return `three` The unix timestamp for the start of the third period modifier
        /// @return `endsale` The unix timestamp of the end of crowdsale
        /// @return `totalwei` The total amount of wei raised
        /// @return `totalcents` The total number of USD cents raised
        /// @return `amount` The amount of DGD tokens available for the crowdsale
        /// @return `goal` The USD value goal for the crowdsale
        /// @return `famount` Founders endowment
        /// @return `faddress` Founder wallet address
        /*function getSaleInfo() public constant returns (uint256 startsale, uint256 two, uint256 three, uint256 endsale, uint256 totalwei, uint256 totalcents, uint256 amount, uint256 goal, uint256 famount, address faddress);*/

        function claimFor(address _user) returns(bool success);

        /// @notice Allows msg.sender to claim the DGD tokens and badges if the goal is reached or refunds the ETH contributed if goal is not reached at the end of the crowdsale
        function claim() returns(bool success);

        function claimFounders() returns(bool success);

        /// @notice See if the crowdsale goal has been reached
        function goalReached() public constant returns(bool reached);

        /// @notice Get the current sale period
        /// @return `saleperiod` 0 = Outside of the crowdsale period, 1 = First reward period, 2 = Second reward period, 3 = Final crowdsale period.
        function getPeriod() public constant returns(uint saleperiod);

        /// @notice Get the date for the start of the crowdsale
        /// @return `date` The unix timestamp for the start
        function startDate() public constant returns(uint date);

        /// @notice Get the date for the second reward period of the crowdsale
        /// @return `date` The unix timestamp for the second period
        function periodTwo() public constant returns(uint date);

        /// @notice Get the date for the final period of the crowdsale
        /// @return `date` The unix timestamp for the final period
        function periodThree() public constant returns(uint date);

        /// @notice Get the date for the end of the crowdsale
        /// @return `date` The unix timestamp for the end of the crowdsale
        function endDate() public constant returns(uint date);

        /// @notice Check if crowdsale has ended
        /// @return `ended` If the crowdsale has ended

        function isEnded() public constant returns(bool ended);

        /// @notice Send raised funds from the crowdsale to the DAO
        /// @return `success` if the send succeeded
        function sendFunds() public returns(bool success);

        //function regProxy(address _payment, address _payout) returns (bool success);
        function regProxy(address _payout) returns(bool success);

        function getProxy(address _payout) public returns(address proxy);

        function getPayout(address _proxy) public returns(address payout, bool isproxy);

        function unlock() public returns(bool success);

        function getSaleStatus() public constant returns(bool fclaim, uint256 reltokens, uint256 relbadges, uint256 claimers);

        function getSaleInfo() public constant returns(uint256 weiamount, uint256 cents, uint256 realcents, uint256 amount);

        function getSaleConfig() public constant returns(uint256 start, uint256 two, uint256 three, uint256 end, uint256 goal, uint256 cap, uint256 badgecost, uint256 famount, address fwallet);

        event Purchase(uint256 indexed _exchange, uint256 indexed _rate, uint256 indexed _cents);
        event Claim(address indexed _user, uint256 indexed _amount, uint256 indexed _badges);

}

contract Badge {
        mapping(address => uint256) balances;
        mapping(address => mapping(address => uint256)) allowed;

        address public owner;
        bool public locked;

        /// @return total amount of tokens
        uint256 public totalSupply;

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


        event Transfer(address indexed _from, address indexed _to, uint256 _value);
        event Mint(address indexed _recipient, uint256 indexed _amount);
        event Approval(address indexed _owner, address indexed _spender, uint256 _value);

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

        function safeToAdd(uint a, uint b) returns(bool) {
                return (a + b >= a);
        }

        function addSafely(uint a, uint b) returns(uint result) {
                if (!safeToAdd(a, b)) {
                        throw;
                } else {
                        result = a + b;
                        return result;
                }
        }

        function safeToSubtract(uint a, uint b) returns(bool) {
                return (b <= a);
        }

        function subtractSafely(uint a, uint b) returns(uint) {
                if (!safeToSubtract(a, b)) throw;
                return a - b;
        }

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

        function transfer(address _to, uint256 _value) returns(bool success) {
                if (balances[msg.sender] >= _value && _value > 0) {
                        balances[msg.sender] = subtractSafely(balances[msg.sender], _value);
                        balances[_to] = addSafely(_value, balances[_to]);
                        Transfer(msg.sender, _to, _value);
                        success = true;
                } else {
                        success = false;
                }
                return success;
        }

        function transferFrom(address _from, address _to, uint256 _value) returns(bool success) {
                if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) {
                        balances[_to] = addSafely(balances[_to], _value);
                        balances[_from] = subtractSafely(balances[_from], _value);
                        allowed[_from][msg.sender] = subtractSafely(allowed[_from][msg.sender], _value);
                        Transfer(_from, _to, _value);
                        return true;
                } else {
                        return false;
                }
        }

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

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

        function mint(address _owner, uint256 _amount) ifOwner returns(bool success) {
                totalSupply = addSafely(totalSupply, _amount);
                balances[_owner] = addSafely(balances[_owner], _amount);
                Mint(_owner, _amount);
                return true;
        }

        function setOwner(address _owner) ifOwner returns(bool success) {
                owner = _owner;
                return true;
        }

}

contract Token {

        address public owner;
        address public config;
        bool public locked;
        address public dao;
        address public badgeLedger;
        uint256 public totalSupply;

        mapping(address => uint256) balances;
        mapping(address => mapping(address => uint256)) allowed;
        mapping(address => bool) seller;

        /// @return total amount of tokens

        modifier ifSales() {
                if (!seller[msg.sender]) throw;
                _
        }

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

        modifier ifDao() {
                if (msg.sender != dao) throw;
                _
        }

        event Transfer(address indexed _from, address indexed _to, uint256 _value);
        event Mint(address indexed _recipient, uint256 _amount);
        event Approval(address indexed _owner, address indexed _spender, uint256 _value);

        function Token(address _config) {
                config = _config;
                owner = msg.sender;
                address _initseller = ConfigInterface(_config).getConfigAddress("sale1:address");
                seller[_initseller] = true;
                badgeLedger = new Badge();
                locked = false;
        }

        function safeToAdd(uint a, uint b) returns(bool) {
                return (a + b >= a);
        }

        function addSafely(uint a, uint b) returns(uint result) {
                if (!safeToAdd(a, b)) {
                        throw;
                } else {
                        result = a + b;
                        return result;
                }
        }

        function safeToSubtract(uint a, uint b) returns(bool) {
                return (b <= a);
        }

        function subtractSafely(uint a, uint b) returns(uint) {
                if (!safeToSubtract(a, b)) throw;
                return a - b;
        }

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

        function transfer(address _to, uint256 _value) returns(bool success) {
                if (balances[msg.sender] >= _value && _value > 0) {
                        balances[msg.sender] = subtractSafely(balances[msg.sender], _value);
                        balances[_to] = addSafely(balances[_to], _value);
                        Transfer(msg.sender, _to, _value);
                        success = true;
                } else {
                        success = false;
                }
                return success;
        }

        function transferFrom(address _from, address _to, uint256 _value) returns(bool success) {
                if (balances[_from] >= _value && allowed[_from][msg.sender] >= _value && _value > 0) {
                        balances[_to] = addSafely(balances[_to], _value);
                        balances[_from] = subtractSafely(balances[_from], _value);
                        allowed[_from][msg.sender] = subtractSafely(allowed[_from][msg.sender], _value);
                        Transfer(_from, _to, _value);
                        return true;
                } else {
                        return false;
                }
        }

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

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

        function mint(address _owner, uint256 _amount) ifSales returns(bool success) {
                totalSupply = addSafely(_amount, totalSupply);
                balances[_owner] = addSafely(balances[_owner], _amount);
                return true;
        }

        function mintBadge(address _owner, uint256 _amount) ifSales returns(bool success) {
                if (!Badge(badgeLedger).mint(_owner, _amount)) return false;
                return true;
        }

        function registerDao(address _dao) ifOwner returns(bool success) {
                if (locked == true) return false;
                dao = _dao;
                locked = true;
                return true;
        }

        function setDao(address _newdao) ifDao returns(bool success) {
                dao = _newdao;
                return true;
        }

        function isSeller(address _query) returns(bool isseller) {
                return seller[_query];
        }

        function registerSeller(address _tokensales) ifDao returns(bool success) {
                seller[_tokensales] = true;
                return true;
        }

        function unregisterSeller(address _tokensales) ifDao returns(bool success) {
                seller[_tokensales] = false;
                return true;
        }

        function setOwner(address _newowner) ifDao returns(bool success) {
                if (Badge(badgeLedger).setOwner(_newowner)) {
                        owner = _newowner;
                        success = true;
                } else {
                        success = false;
                }
                return success;
        }

}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"subtractSafely","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeToAdd","outputs":[{"name":"","type":"bool"}],"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"addSafely","outputs":[{"name":"result","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"locked","outputs":[{"name":"","type":"bool"}],"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeToSubtract","outputs":[{"name":"","type":"bool"}],"type":"function"},{"inputs":[],"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":"_recipient","type":"address"},{"indexed":true,"name":"_amount","type":"uint256"}],"name":"Mint","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"}]

6060604052604051602080610fbf83395060806040525160018054600160a060020a0319908116831790915560008054909116331781557ff896503a0000000000000000000000000000000000000000000000000000000060809081527f73616c65313a6164647265737300000000000000000000000000000000000000608452600160a060020a0383169063f896503a9060a49060209060248187876161da5a03f115610002575050604080518051600160a060020a0381168552600760205291909320805460ff191660011790559190506105da8061011d833901809050604051809103906000f060038054600160a060020a0319169190911790556001805460a060020a60ff021916905550506108c8806106f76000396000f3606060405260028054600160a060020a031916331790556105b6806100246000396000f3606060405236156100ae5760e060020a6000350463095ea7b381146100b057806313af40351461012557806318160ddd1461014a57806323b872dd146101535780633416f9d4146101da57806340c10f19146101f05780634e30a66c1461021857806370a082311461022e5780638da5cb5b14610253578063a9059cbb14610265578063c74c251f146102bf578063cf309012146102d5578063dd62ed3e146102fa578063e74b9d111461032e575b005b61034160043560243533600160a060020a03908116600081815260016020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b610341600435600254600090600160a060020a03908116339091161461058f57610002565b61034160035481565b610341600435602435604435600160a060020a0383166000908152602081905260408120548290108015906101a6575060016020908152604080832033600160a060020a03168452909152812054829010155b80156101b25750600082115b1561043057600160a060020a03831660009081526020819052604090205461043b90836102c9565b6103416004356024355b60006103848383610338565b610341600435602435600254600090600160a060020a03908116339091161461051057610002565b6103416004356024355b8181018290101561011f565b610341600435600160a060020a0381166000908152602081905260409020545b919050565b610353600254600160a060020a031681565b61034160043560243533600160a060020a03166000908152602081905260408120548290108015906102975750600082115b156103985733600160a060020a03166000908152602081905260409020546103a190836101e4565b6103416004356024355b60006103708383610222565b61034160025460ff740100000000000000000000000000000000000000009091041681565b610341600435602435600160a060020a0382811660009081526001602090815260408083209385168352929052205461011f565b6103416004356024355b8181111561011f565b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b151561037b57610002565b5081810161011f565b151561038f57610002565b5080820361011f565b5060005b61011f565b33600160a060020a0390811660009081526020819052604080822093909355908516815220546103d29083906102c9565b600160a060020a03848116600081815260208181526040918290209490945580518681529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a350600161039c565b5060005b9392505050565b600160a060020a03848116600090815260208190526040808220939093559086168152205461046a90836101e4565b600160a060020a0385811660009081526020818152604080832094909455600181528382203390931682529190915220546104a590836101e4565b600160a060020a038581166000818152600160209081526040808320338616845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3506001610434565b60035461051d90836102c9565b600355600160a060020a03831660009081526020819052604090205461054390836102c9565b600160a060020a03841660008181526020819052604080822093909355915184927f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688591a350600161011f565b506002805473ffffffffffffffffffffffffffffffffffffffff191682179055600161024e56606060405236156101115760e060020a6000350463095ea7b3811461011357806313af40351461018857806318160ddd146101ad57806323b872dd146101b65780632b297f9e1461023d5780633416f9d4146102605780633f2965f01461027657806340c10f191461029b5780634162169f146102cb5780634230bb10146102dd5780634e30a66c146102ef5780636637b8821461030557806370a082311461032a57806379502c551461034f5780638da5cb5b14610361578063a9059cbb14610373578063ac900c2d146103cd578063c74c251f146103f2578063cf30901214610408578063dd62ed3e1461041b578063e42bff661461044f578063e74b9d111461047f578063ee95feaf14610492575b005b6104b960043560243533600160a060020a03908116600081815260066020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b6104b9600435600254600090600160a060020a03908116339091161461083257610002565b6104b960045481565b6104b9600435602435604435600160a060020a038316600090815260056020526040812054829010801590610209575060066020908152604080832033600160a060020a03168452909152812054829010155b80156102155750600082115b156105a957600160a060020a0383166000908152600560205260409020546105b490836103fc565b6104b960043560008054600160a060020a03908116339091161461076c57610002565b6104b96004356024355b60006104fc8383610489565b6104b9600435600254600090600160a060020a0390811633909116146107de57610002565b6104b960043560243533600160a060020a031660009081526007602052604081205460ff16151561068b57610002565b6104cb600254600160a060020a031681565b6104cb600354600160a060020a031681565b6104b96004356024355b81810182901015610182565b6104b9600435600254600090600160a060020a0390811633909116146107c457610002565b6104b9600435600160a060020a0381166000908152600560205260409020545b919050565b6104cb600154600160a060020a031681565b6104cb600054600160a060020a031681565b6104b960043560243533600160a060020a03166000908152600560205260408120548290108015906103a55750600082115b156105105733600160a060020a0316600090815260056020526040902054610519908361026a565b6104b9600435600254600090600160a060020a03908116339091161461080a57610002565b6104b96004356024355b60006104e883836102f9565b6104b960015460a060020a900460ff1681565b6104b9600435602435600160a060020a03828116600090815260066020908152604080832093851683529290522054610182565b6104b960043560243533600160a060020a031660009081526007602052604081205460ff1615156106e157610002565b6104b96004356024355b81811115610182565b6104b9600435600160a060020a03811660009081526007602052604090205460ff1661034a565b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b15156104f357610002565b50818101610182565b151561050757610002565b50808203610182565b5060005b610182565b33600160a060020a03908116600090815260056020526040808220939093559085168152205461054990836103fc565b600160a060020a038481166000818152600560209081526040918290209490945580518681529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001610514565b5060005b9392505050565b600160a060020a0384811660009081526005602052604080822093909355908616815220546105e3908361026a565b600160a060020a0385811660009081526005602090815260408083209490945560068152838220339093168252919091522054610620908361026a565b600160a060020a038581166000818152600660209081526040808320338616845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060016105ad565b61069a826004600050546103fc565b600455600160a060020a0383166000908152600560205260409020546106c090836103fc565b600160a060020a038416600090815260056020526040902055506001610182565b600354604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015260248201869052915192909116916340c10f199160448181019260209290919082900301816000876161da5a03f115610002575050604051511515905061076457506000610182565b506001610182565b6001805460a060020a900460ff1614156107885750600061034a565b5060028054600160a060020a031916821790556001805474ff0000000000000000000000000000000000000000191660a060020a17815561034a565b5060028054600160a060020a03191682179055600161034a565b50600160a060020a0381166000908152600760205260409020805460ff1916600190811790915561034a565b50600160a060020a0381166000908152600760205260409020805460ff19169055600161034a565b600354604080517f13af4035000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152915192909116916313af40359160248181019260209290919082900301816000876161da5a03f115610002575050604051511590506108bf575060008054600160a060020a0319168217905560016108c3565b5060005b61034a56

Deployed Bytecode

0x606060405236156101115760e060020a6000350463095ea7b3811461011357806313af40351461018857806318160ddd146101ad57806323b872dd146101b65780632b297f9e1461023d5780633416f9d4146102605780633f2965f01461027657806340c10f191461029b5780634162169f146102cb5780634230bb10146102dd5780634e30a66c146102ef5780636637b8821461030557806370a082311461032a57806379502c551461034f5780638da5cb5b14610361578063a9059cbb14610373578063ac900c2d146103cd578063c74c251f146103f2578063cf30901214610408578063dd62ed3e1461041b578063e42bff661461044f578063e74b9d111461047f578063ee95feaf14610492575b005b6104b960043560243533600160a060020a03908116600081815260066020908152604080832094871680845294825280832086905580518681529051929493927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b6104b9600435600254600090600160a060020a03908116339091161461083257610002565b6104b960045481565b6104b9600435602435604435600160a060020a038316600090815260056020526040812054829010801590610209575060066020908152604080832033600160a060020a03168452909152812054829010155b80156102155750600082115b156105a957600160a060020a0383166000908152600560205260409020546105b490836103fc565b6104b960043560008054600160a060020a03908116339091161461076c57610002565b6104b96004356024355b60006104fc8383610489565b6104b9600435600254600090600160a060020a0390811633909116146107de57610002565b6104b960043560243533600160a060020a031660009081526007602052604081205460ff16151561068b57610002565b6104cb600254600160a060020a031681565b6104cb600354600160a060020a031681565b6104b96004356024355b81810182901015610182565b6104b9600435600254600090600160a060020a0390811633909116146107c457610002565b6104b9600435600160a060020a0381166000908152600560205260409020545b919050565b6104cb600154600160a060020a031681565b6104cb600054600160a060020a031681565b6104b960043560243533600160a060020a03166000908152600560205260408120548290108015906103a55750600082115b156105105733600160a060020a0316600090815260056020526040902054610519908361026a565b6104b9600435600254600090600160a060020a03908116339091161461080a57610002565b6104b96004356024355b60006104e883836102f9565b6104b960015460a060020a900460ff1681565b6104b9600435602435600160a060020a03828116600090815260066020908152604080832093851683529290522054610182565b6104b960043560243533600160a060020a031660009081526007602052604081205460ff1615156106e157610002565b6104b96004356024355b81811115610182565b6104b9600435600160a060020a03811660009081526007602052604090205460ff1661034a565b60408051918252519081900360200190f35b60408051600160a060020a03929092168252519081900360200190f35b15156104f357610002565b50818101610182565b151561050757610002565b50808203610182565b5060005b610182565b33600160a060020a03908116600090815260056020526040808220939093559085168152205461054990836103fc565b600160a060020a038481166000818152600560209081526040918290209490945580518681529051919333909316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001610514565b5060005b9392505050565b600160a060020a0384811660009081526005602052604080822093909355908616815220546105e3908361026a565b600160a060020a0385811660009081526005602090815260408083209490945560068152838220339093168252919091522054610620908361026a565b600160a060020a038581166000818152600660209081526040808320338616845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060016105ad565b61069a826004600050546103fc565b600455600160a060020a0383166000908152600560205260409020546106c090836103fc565b600160a060020a038416600090815260056020526040902055506001610182565b600354604080517f40c10f19000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015260248201869052915192909116916340c10f199160448181019260209290919082900301816000876161da5a03f115610002575050604051511515905061076457506000610182565b506001610182565b6001805460a060020a900460ff1614156107885750600061034a565b5060028054600160a060020a031916821790556001805474ff0000000000000000000000000000000000000000191660a060020a17815561034a565b5060028054600160a060020a03191682179055600161034a565b50600160a060020a0381166000908152600760205260409020805460ff1916600190811790915561034a565b50600160a060020a0381166000908152600760205260409020805460ff19169055600161034a565b600354604080517f13af4035000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152915192909116916313af40359160248181019260209290919082900301816000876161da5a03f115610002575050604051511590506108bf575060008054600160a060020a0319168217905560016108c3565b5060005b61034a56

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

000000000000000000000000f5666684be76ec85634bdf1bb92d0ed0c62085f9

-----Decoded View---------------

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


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

The legacy token contract for DigixDAO's DGD Token. This token has been deprecated.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.