class refactor