refactor --Yuting