refactoring part II (class side missing)