refactored to all cases for win case