Two years ago, a friend who gets paid (at least in part) to predict future trends told me this: “Bryce Harper will get the first $500 million contract in American sports history.”

Now, this was two years ago — up to that point the biggest contract in baseball history was Alex Rodriguez’s 10-year, $275 million contract renegotiation with the New York Yankees. And two years ago, even THAT contract seemed completely out of whack. It looked like a terrible mistake. And no other contract was even close — the Angels had just given Albert Pujols $240 million for 10 years, and that seemed nuts. The idea that someone would give Bryce Harper more than TWICE that amount?

“That’s crazy,” I told my friend. “There’s no way.”

You know what? I was wrong. He was right. After seeing the way baseball’s going this offseason, I think Harper’s going to get a half-billion.

Let me add this: I think it’s great. The money’s there and who wouldn’t rather see it go to the players rather than the owners? I look at the deal that Royals catcher Salvador Perez signed — a five-year, $7 million deal with THREE club options topping out at $6 million per year — and I’m mortified. Perez is a three-time All-Star and Gold Glove winner, the heart of the World Series champions, he plays his guts out, plays 140 to 150 games at catcher and gets hit with foul tips every other day. Sure, all of us would LOVE to make even a fraction of what he makes, but by baseball standards he’s preposterously underpaid, and the money he lacks isn’t going back to the fans. It’s going to the billionaire owner.

So, yeah, I’m rooting for the $500 million deal.

Obviously, quite a few things have to happen for this colossal event to take place. But, more and more, you can see those pieces coming together.

Piece 1: Harper has to become the greatest player in baseball.

Two years ago, Harper was mostly potential. He hit .274/.368/.486 with 20 homers, which is certainly a good year. But, strangely, it had a whiff of disappointment about it. Why? Well, the guy was on the cover of Sports Illustrated at 16 years old, he was was the first pick in the draft at 17, he was Rookie of the Year at 19.

And, yeah, it was Mike Trout’s fault. Trout is 14 months older than Harper, and he emerged as the best player in baseball when he was 20. He set a near-impossible standard to match. He made every aspect of the game look easy. That’s what many people thought Harper would do. Instead, Harper got hurt, and at 21 he got hurt again, and it wasn’t clear if he would, in fact, ever rival Trout.

Then, this year, Trout was his usual great self (I thought he should have won his fourth straight MVP, but he finished second for the the third time in four years ). Harper was probably even better. Harper led the National League in runs, on-base percentage, slugging percentage and tied for the lead in homers — it was a Ted Williams kind of season. Fangraphs does this cool thing where they determine a player’s value based on his Wins Above Replacement.

Fangraphs estimates that Harper’s value in 2015 was $75.9 million.

Keep that number in mind.

Piece 2: Harper has to come on to the market at the perfect time.

Harper becomes a free agent after the 2018 season, which will be just after he turns 26 years old. That could not be better for him. Most studies show that the 26-27-28 years are the typical peak for players with a slow decline until 31 or 32 when the decline speeds up considerably.

That means the team that signs Harper — assuming he’s healthy and has put up similar years to his 2015 season — can bet heavily on five to seven great years and perhaps two or three more good ones if he can stay strong until his mid-30s.

Remember the Fangraphs number for his value in 2015? Of course, inflation drives up value — but even if you multiply $75.9 million by five you come up with $380 million. Let’s say he’s half as good for another three years. That’s another $113 million. We’re already almost at $500 million.

Of course, baseball teams don’t go by Fangraphs numbers. They might not believe that Harper was really worth $76 million in 2015. But they know he was worth a whole lot. Baseball teams have calculations they don’t share with the rest of us. When the Angels gave Pujols a 10-year, $240 million deal, they expected his value to be MUCH MORE than $24 million per year the first few years of the deal because they knew he would be worth MUCH LESS in the last years. That’s the only way the math works.

Now consider this: The Angels gave Pujols that money when he was ALREADY 32 and on the decline. Also consider this: The Yankees gave A-Rod his money when he was 32 and in more or less the same situation. You have to say that Harper’s value, because of his age, will be AT LEAST twice as much. I’d say he’s worth much more than twice as much.

The closest comparison is probably Giancarlo Stanton, who, at age 25 signed a 13-year, $325 million deal, the largest total package in baseball history so far. But even here, there are a couple of differences:

1. Stanton was not a free agent. The Marlins gave him that deal a year before he became a free agent. Why did they do that? Because they did not want to get into the high-priced bidding of free agency. They knew that even if $325 million sounds like a preposterous sum of money, Stanton would likely have gotten MORE on the open market. Well, he might not have gotten a bigger total package, but he would have gotten more per year.

2. Stanton is an amazing talent — but he’s not Bryce Harper. He has only played 150 games once in a season, he’s a .270 lifetime hitter with a swing-and-miss approach (he has not yet hit .300) and he topped out at 37 homers in single season (Harper hit 42 last year). The Marlins were betting on Stanton exploding into a dominating offensive force. It’s a good bet. But Harper is already there.

With that in mind, a healthy and overpowering Harper will get way more money than Stanton.

Piece 3: Harper has to WANT to break the bank.

Enter Scott Boras. To get baseball’s first $500 million contract, you have to be willing push hard. Most players don’t want to do that, and I can’t blame them. This year, Jordan Zimmermann agreed to a five-year deal with the Detroit Tigers worth $110 million. He signed early and he was happy — the guy will be making $22 million a year. It’s more than enough. You and I would certainly take it.

But, the truth is, he probably left $25 million out there on the table by signing so early. Zack Greinke came along and broke the bank at 34 million bucks a year for six years. To do that, Greinke had to take a chance with Arizona — a team that has had one wining record in the last seven seasons. But he was willing to do that for the biggest deal.

To go for $500 million, yeah, you’ll have to go all out into free agency and follow the money trail. It seems likely that it will be the Yankees who make the big push, but once the Yankees feel like the other bidders are out, they will stop raising.

Boras is the master of these situations, the one who knows how to keep people in the auction. And I think he and Harper are both interested in setting a new benchmark here. Would Bryce Harper go to, say, Colorado if that was the team that offered the half billion? I’d say: Yeah, probably.

So what would a $500 million deal look like for Harper? I suppose it could be a 12-year deal for $500 million with much of it backloaded and Harper given an out after six years. It could be a straight 10-year, $500 million deal. It could be something more creative.

But it’s coming. Mike Trout could have hit the free agent market first, but he signed that six-year deal for $144.5 million that pushes his free agency back to after the 2020 season – the year he turns 29. He gets paid $33.25 million per year the last three years, which is an astounding amount of money. When you look at what football superstars like Tom Brady and Adrian Peterson get paid, Trout’s deal looks outrageous.

I suspect that after the Harper deal, though, Mike Trout will look phenomenally underpaid.