string parser generator work