fireShip work; refactoring
conflict merged