smiles parser optimization for those without bison