use single threaded parser