add preparser to parser