We propose the DeepSMILES syntax as a solution to the problem of invalid SMILES syntax caused by unmatched parentheses and ring closure symbols. While avoiding these problems, the syntax does not entirely eliminate the possibility of invalid strings. Consider the DeepSMILES string "C))C" where there is nothing on the stack for the second parenthesis to pop. Our implementation raises a DecodeError exception when requested to decode this to regular SMILES. An alternative would be to ignore any parenthesis that emptied the stack, thus always yielding a valid SMILES. A similar situation arises for the DeepSMILES string "CCCCC6" where the atom required to complete the ring is not present. Again, our implementation raises a DecodeError exception when decoding, but an alternative might be to use the first atom as the ring opening atom in these cases. It is not clear to the authors whether being tolerant of invalid syntax is a good idea or not; during training one wants the syntax to be learnt as well as possible and so one should not let invalid syntax pass unnoticed but perhaps, when generating structures, 'almost valid' is good enough.