Parser implementation.