extracted ascent, descent and linegaps to separate classes