added parser generator classes