Generated by clex.l