refactor main 1