split parsing mechanism to reduce complexity