contract Unit is StandardToken {

    function () {
        throw;
    }

    /* Public Setting */
    string public name;
    uint8 public decimals;
    string public symbol;
    string public version = 'HQ1.2.4';


    function Unit(
        ) {
        decimals = 18;                            // decimals
        balances[msg.sender] = 36270000000 * (10 ** uint256(decimals));               // Give Owner
        totalSupply = 36270000000 * (10 ** uint256(decimals));                        // Total Supply
        name = "Unit";                                   // Name
        symbol = "USGD";                               // symbol
    }

    /* 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);

        if(!_spender.call(bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)) { throw; }
        return true;
    }
}
//MYTOKEN ERC20
function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success) {
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);

    if(!_spender.call(bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, _extraData)) { throw; }
    return true;
}

/* Approves and then calls the receiving contract */