reverse, sort, align are functional