The Milwaukee Bucks shocked the NBA world on Wednesday, swooping in and making a Damian Lillard trade with the Portland Trail Blazers and Phoenix Suns, stealing the seven-time All-Star from the Miami Heat. How did it happen? NBA insiders Shams Charania and Sam Amick have a fantastic timeline of how it went down.

On Thursday, less than 24 hours after the shocking Damian Lillard trade, The Athletic’s NBA gurus put together an incredibly detailed piece on exactly what went down in the Blazers-Heat-Bucks saga.

The setup for the situation is one NBA fans know well: The Blazers drafted Scoot Henderson No. 3 overall instead of trading the pick for a veteran star to play with Lillard, the career-long Blazers’ face of the franchise requested a trade to the Heat, and the Heat and Blazers couldn’t agree on a trade package that made all sides happy in the offseason.

Charania and Amick report that Portland’s unwillingness to take Miami’s deal, the Heat’s unwillingness to up their offer, and Lillard’s (initial) unwillingness to go somewhere other than South Beach led to Blazers general manager Joe Cronin ceasing communication with Lillard’s agent, Aaron Goodwin. It also fostered “a level of contentiousness” between the Balzers and Heat.

However, on September 18, trade talks heated up between the Blazers and teams outside of Florida, including the Bucks, Boston Celtics, New Orleans Pelicans, Toronto Raptors, Minnesota Timberwolves, and Chicago Bulls.

At this point, Goodwin and Lillard reportedly saw the writing on the wall and started opening up to the idea of moving elsewhere, with Boston’s Jayson Tatum and Milwaukee’s Giannis Antetokounmpo both recruiting him hard.

While working on a Damian Lillard trade, Charania and Amick also report that Cronin agreed in principle to a trade with the Suns to send Jusuf Nurkić to Phoenix for Deandre Ayton. The Blazers just needed to find a home for Lillard’s contract, which has potentially four years and around $216 million on it.

Lillard still wanted to play for the Heat, but he also opened himself up to the possibility of playing for the Bucks or Brooklyn Nets.

That’s when “Milwaukee owners Wes Edens and Jimmy Haslam showed genuine aggressiveness Wednesday, taking on the four years and $216 million remaining on Lillard’s contract,” and Cronin merged the Bucks and Suns deals to pull off the blockbuster of the year.