The NBA trade deadline is just about always one of the most exciting parts of the entire NBA season. We spend weeks speculating about which players might get moved prior to the deadline—and then we spend days trying to decide which teams "won" and "lost" their respective trades. It’s fun to sit and watch teams wheel and deal at the last minute, and there’s always at least one or two big trades that get finalized before the deadline arrives.

The NFL trade deadline is, by comparison, really boring. While the NBA features a ton of action, NFL teams are usually more hesitant to complete trades in the middle of the season. And the deals that do go through usually involve role players as opposed to stars. You won’t typically find a starting quarterback or a star wide receiver getting dealt at the NFL trade deadline. It’s just not how the NFL does business.

This year has been a little bit different, though. The NFL trade deadline hasn’t been anywhere close to what the NBA trade deadline is. But there has been some action in the days leading up to the deadline, and there have been some pretty big trades that have been made, at least by the NFL’s standards. To help you keep track of them, here are the biggest moves made at the 2017 NFL trade deadline.

Jimmy Garoppolo to the 49ers

Traded by: Patriots
Traded for: 2018 second-round draft pick

There have been trade rumors surrounding Garoppolo for about a year now, and while New England likely would have preferred to keep him around as Tom Brady’s backup, they weren’t going to be able to afford to resign him in the offseason. So they got what they could get for him, and the 49ers got their quarterback of the future. The question now is: What will the Patriots do if and when Brady decides he’s finished with football since they’ve dealt both Garoppolo and another young quarterback Jacoby Brissett in the same season?

Jay Ajayi to the Eagles

Traded by: Dolphins
Traded for: 2018 fourth-round draft pick

If the Eagles aren’t able to win their first Super Bowl this season, it won’t be because they didn’t try. They’re already probably the best team in the NFC East—and maybe the entire NFC—and they just got even better by adding Ajayi to their roster. Ajayi was a bit of a disappointment for the Dolphins so far this season, but the Eagles are hoping that he’ll return to the same form he showed last season with a change in venue.

Duane Brown to the Seahawks

Traded by: Texans
Traded for: Jeremy Lane, 2018 fifth-round draft pick, and 2019 second-round draft pick

It’s a good thing Russell Wilson can move around in the pocket and run when he needs to, because his offensive line has been bad, to say the least, this season. Brown should help shore things up and give Wilson some of the protection he desperately needs. Brown actually spent the first half of this season holding out for a new contract, which means he might not be his usual self when he joins Seattle. But he has to be better than what they’ve already got, right?

Kelvin Benjamin to the Bills

Traded by: Panthers
Traded for: 2018 third- and seventh-round draft picks

Despite leading the Panthers with a team-high 475 receiving yards so far this season, Carolina parted ways with Benjamin in exchange for a couple draft picks. It reunites him with former Panthers defensive coordinator Sean McDermott and gives Tyrod Taylor another weapon on offense.

Marcell Dareus to the Jaguars

Traded by: Bills
Traded for: 2018 sixth-round draft pick

Jacksonville has adopted the nickname "Sacksonville" thanks to their league-leading 33 sacks this season. But they have one of the worst run defenses in the NFL right now, which is why they are excited to bring Dareus into the mix. Meanwhile, the Bills have spent this season trying to accumulate as many draft picks as possible, and they’ve also endured a series of issues with Dareus in recent seasons. So this appears to be a win/win for both sides.