refactor
add Player