ran profiler and simplified the design for 4x speed up in parser