portion of my great parser