parser almost done