refactor Game