contract DIDI is BurnableToken {
    // If ether is sent to this address, send it back.
    function () public {
        revert();
    }

    string public constant name = "didi.finance";
    string public constant symbol = "DIDI";
    uint8 public constant decimals = 18;
    uint256 public constant INITIAL_SUPPLY = 50000000;
    
    /**
    * @dev Constructor that gives msg.sender all of existing tokens.
    */
    constructor() public {
        totalSupply_ = INITIAL_SUPPLY * (10 ** uint256(decimals));
        balances[msg.sender] = totalSupply_;
        emit Transfer(address(0), msg.sender, totalSupply_);
    }
    

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements
     *
     * - `to` cannot be the zero address.
     */
    function mint(address account, uint256 amount) public onlyOwner {
        require(account != address(0));

        totalSupply_ = totalSupply_.add(amount);
        balances[owner] = balances[owner].add(amount);
        emit Transfer(address(0), account, amount);
    }
}
function () public {
    revert();
}

// If ether is sent to this address, send it back.