make fight, but refactoring needed