refactored, aligner moved to class