wrote the withN functions, further simplified the existing parsers