No contract in the NBA is untradeable, no matter how egregious or lengthy it may be.

There are a few ways to move a bad deal. The Houston Rockets just demonstrated one by trading Chris Paul for another hefty contract in Russell Westbrook, also throwing in draft compensation to make up for the gap in age and talent level.

Swapping bad contracts is perhaps the most popular way, and attaching draft picks or young talent is another tried-and-true method.

Finding the right team to dump a bloated deal on is key as well. Usually this involves a rebuilding squad desperate for picks or a fringe contender in a bad free-agent market that's OK overpaying for a player with star potential.

Here is how the five worst contracts in the NBA can be moved.

Gordon Hayward to Cavs

Cavaliers Receive: SF Gordon Hayward, C Robert Williams, 2020 first-round pick (lottery-protected)

Celtics Receive: C Tristan Thompson, SG Jordan Clarkson

Hayward is owed $66.9 million over the next two years, will enter his 30s in March and is coming off a season in which he averaged 11.5 points, 4.5 rebounds and 3.4 assists in 25.9 minutes.

While his deal is the shortest on this list, paying Hayward $33.5 million a year to be a backup is seriously constraining what the Celtics can do to make a title push this season or make a splash in free agency next summer.

Moving him to the Cavs for Thompson and Clarkson would make sense both now and in the future.

Boston likely craves a defensive center after Al Horford left for the Philadelphia 76ers in free agency and Enes Kanter was brought in as his replacement. Thompson, 28, averaged 10.9 points, 10.2 rebounds, 2.0 assists and held opponents to 56.1 percent shooting at the rim, a better mark than Horford (59.6 percent) last season.

Clarkson, 27, would give them instant offense off the bench, as he ranked second on the Cavs in scoring (career-high 16.8 points) despite not starting any of his 81 games. 

For a rebuilding Cavs team, Hayward would serve as a veteran presence for young wings like Cedi Osman and rookie Dylan Windler until his contract expires. Cleveland would pick up a first-round pick that should be in the low 20s, and Williams would give them a 21-year-old center that blocked 5.1 shots per 36 minutes last season as a rookie.

Andrew Wiggins Goes Home to Toronto

Raptors Receive: SF Andrew Wiggins, 2020 first-round pick (top-five protected)

Timberwolves Receive: PF Serge Ibaka

The Raptors can still be good this season even without Kawhi Leonard and Danny Green, although they won't make much noise in the playoffs without an additional scoring punch.

For all his faults, Wiggins can put the ball in the basket (career 19.4 points per game), and the veteran supporting cast around him (Kyle Lowry, Marc Gasol, Pascal Siakam, Fred VanVleet) would do wonders for the 24-year-old's development.

Taking Wiggins out of a Minnesota rebuild and putting him on his hometown team would be the best possible situation to extract the talent that made him the No. 1 overall pick in 2014.

For the Timberwolves, this move would mainly be about clearing future cap space.

Adding Ibaka would be great for the short term, given he'd be the team's best power forward and bring championship experience.

Ibaka averaged 16.4 points, 8.4 rebounds and shot 53.6 percent from the floor when he started for the Raptors last season, and his $23.3 million deal expires next summer.

The Wolves would have to sacrifice a lightly protected first-round pick in the process, given the amount of money they'd be saving by not having to pay the remaining $122.2 million on Wiggins' contract. 

Philly Maxes out Tobias Harris' New Monster Deal

Nuggets Receive: F Tobias Harris

76ers Receive: SG Gary Harris, SF Will Barton, PF Jarred Vanderbilt

This is the best Harris' new five-year, $180 million contract will ever look.