refactor `normalize`