The New York Jets beat the Cleveland Browns 17-12 on Sunday in East Rutherford, New Jersey, ending a three-game losing streak.

Braelon Allen scored the go-ahead touchdown on a 22-yard run late in the fourth quarter after the Jets recovered a fumbled punt snap. Cleveland got the ball back with 1:41 remaining and no timeouts, but Will McDonald forced a fumble on a fourth-down sack of Deshaun Watson and recovered it to seal the win.

New York sacked Watson eight times, including three sacks by rookie David Bailey. Geno Smith threw a touchdown pass to Garrett Wilson on the Jets’ opening drive. Allen finished with 116 rushing yards on 24 carries, while Wilson caught seven passes for 104 yards.

The rain-soaked win left the Jets at 2-3 and the Browns at 3-2. It also ended Cleveland’s three-game winning streak.