Refactor Character