Rewrote Parser Architecture