refactor who_win method