NFL writer Mark Craig plays general manager for this year's free-agent crop:

Four to add:

Andrew Norwell

Position: Guard

2017 team: Panthers

Age: 26

Background: Young and durable, the 6-6, 325-pound left guard gave up no sacks, no QB hits and made first-team All-Pro in 2017.

Why: Fortifying the offensive line is, to me, the first key to turning a franchise around in a year. The Vikings and Rams would concur, eh? Norwell is the best lineman available and could become the highest-paid guard ever.

Aaron Colvin

Position: Cornerback

2017 team: Jaguars

Age: 26

Background: Exceptional nickel slot corner on the league's best pass defense.

Why: An NFL team is going nowhere without quality and depth at cornerback. Period. Colvin is hungry and on the rise.

Paul Richardson

Position: Receiver

2017 team: Seahawks

Age: 26 in April

Background: Caught 44 passes for 703 yards (16.0) and six TDs in 2017.

Why: Could be a bargain for an under-the-radar playmaker. Has a knack for coming up with big catches in tight quarters down the field.

Dontari Poe

Position: Defensive tackle

2017 team: Falcons

Age: 28 in August

Background: Solid former first-rounder who has 15½ career sacks. Has missed just two games in six seasons.

Why: Normally, I find a pass rusher somewhere for my top five. But there's nothing left beyond the injured, the aged and the unworthy. But Poe certainly strengthens a defensive line with his presence inside.

Four to avoid:
Sheldon Richardson

Position: Defensive tackle

2017 team: Seahawks

Why: He's young, talented and tempting, but a smart team wouldn't give a lot of money to an underachiever with character concerns and 2½ sacks the past two years.

Allen Robinson

Position: Receiver

2017 team: Jaguars

Why: Another young talent that's tough one to pass on. Caught 80 balls for 1,400 yards and a league-high 14 TDs in 2015. But in 2017, he caught one ball before tearing an ACL.

Jimmy Graham

Position: Tight end

2017 team: Seahawks

Why: Those 10 TDs from last season could attract attention, but Graham's not the player he once was, and he's 31. His 9.1-yard average per catch was a career low. Better to sign a guy looking to make a name than one who's struggling to hang on to one.

A.J. McCarron

Position: Quarterback

2017 team: Bengals

Why: When it comes to quarterbacks, people lose their ever-loving minds (see: Glennon, M.; Osweiler, B.). Unless my team is transferring to the SEC, I'm looking at McCarron as a former fifth-round pick who started four games while backing up Andy Dalton the past four years. That's not something worth paying a lot for.