split parsing step away from negotiation step