completed parser functionality