With three weeks remaining in the NBA regular season, nine teams have already been eliminated from playoff contention. Though it might’ve been a painful viewing experience, there have been silver linings to justify each fan base staying tuned in. Some of these bright spots could lead to better days for the league’s bottom-feeders. For now, here’s one thing to feel good about for each team:

Suns: Josh Jackson

Devin Booker is the real deal; he’s on the verge of becoming only the ninth player in NBA history to average over 24 points per game before his 22nd birthday. But the Suns still aren’t any good because the rest of the team is lagging. Booker needs help, and he’s starting to get it with Jackson. After getting off to a slow start, the rookie from Kansas is averaging 17.1 points over his past 20 games, while flashing an all-around offensive game.

Jackson is at his best in transition, where he can grab defensive rebounds, push the pace, and make nifty moves to get his shot off.

But the best offensive players can score against set defenses. Jackson has made some progress by adding an element of control to his natural speed and athleticism; instead of being all Yngwie Malmsteen, Jackson is adding a little David Gilmour to his repertoire.

Changing speed and setting tempo have enabled Jackson to more effectively get to the basket, draw fouls, and create shots off the dribble. His progress is relatively reminiscent of his surge in college, when he began to show flashes late in the season and into the NCAA tournament. And it’s not as if his numbers are a product of garbage time; Jackson has gotten buckets against depleted defenses (36 points against the Warriors, minus three of their stars) and bad defenses (29 points against the Grizzlies), but also against great defenses (39 points in his last two games against the Jazz).

The level of consistency for a rookie is encouraging, especially considering he entered the league expected to be raw offensively. His spot-up 3-pointer still needs work (28.5 percent, per Second Spectrum) and so does his finishing at the rim in half-court sets (47.9 percent, per Synergy), but there are signs of life. For a team that’s lost 29 of 34 games in the new year, you have to find the positives where you can. Booker and Jackson, plus whomever they add with three 2018 first-rounders, could quickly turn the beat around.

Kings: Buddy Hield

Hield had one of the greatest college shooting seasons ever as a senior at Oklahoma, draining 45.7 percent of his attempts in 2015-16, often with defenders draped all over him. After being traded from the Pelicans to the Kings in last year’s Boogie Blockbuster, Hield quickly found a rhythm in Sacramento that carried over to this season.

Hield has already become one of the NBA’s most lethal shooters, hitting 49.3 percent of his 207 catch-and-shoot 3-pointers, which ranks second among the 185 players with more than 100 attempts (only Kevin Durant shoots better, at 50.3 percent, per Second Spectrum). And it’s not as if Hield simply stands in the corner and jacks up open shots. He uses deceptive cuts and sudden movement to create space:

The Kings emphasize Hield’s shooting prowess within their system by running him through mazes of screens. The 24-year-old has drained 30 of 70 triples off screens and dribble handoffs, per Synergy. Those are J.J. Redick–level numbers, and Hield has the footwork and touch to launch from anywhere, no matter the angle or spot on the floor, to match.

Redick (a Ringer podcaster) told me in 2016 that “footwork is the foundation” of everything on the court; if that’s the case, Hield has a stable base for a fruitful career. The Hield-Redick comparison was popular before the 2016 draft, but it wasn’t perfect because Hield projected as a more dynamic scorer off the dribble with superior handling and a quicker first step. Hield shoots 32.4 percent of his 3s off the dribble, so it hasn’t quite translated yet, but he’s made progress as he’s adjusted to the pace of the game and added more moves. If Hield keeps trending upward, so will the Kings.

Bulls: Bobby Portis

All eyes are rightfully on Lauri Markkanen, who is having a wonderful rookie season, but don’t overlook his backup, third-year big man Portis. Portis—yes, the guy who punched Nikola Mirotic—is quietly averaging 13.3 points and 6.7 rebounds for the entire season, and has surged since the All-Star break, with 16.2 points, eight rebounds, and 2.2 assists (on 41.5 percent from 3) in 27.1 minutes per game. Projecting based on per-100-possession numbers can be risky business, but for every Michael Beasley, there’s a Paul Millsap. Portis may be more of the latter. The 23-year-old is averaging 28.2 points and 14.3 rebounds per 100 possessions, which puts him alongside the likes of Anthony Davis, Joel Embiid, Boban Marjanovic, and Julius Randle.

Randle virtually replicated his projected numbers while playing 34 minutes per game this month. Portis does a lot of his damage against bench units, but I’d love to see how he’d produce with the starters. The flashes alone are intriguing. He is a knockdown shooter from the deep midrange, and it’s translating to past the 3-point arc. He’s also coordinated enough to attack closeouts and beat mismatches in the post. Portis’s defense must improve astronomically to ever enter Taj Gibson’s class, but it’s hard not to be reminded of Gibson’s motor and intensity when you watch Portis.

The Bulls are dropping the ball on their tank—they’re currently 24-46, eighth worst in the league—but at least Markkanen, Portis, and others are showing enough signs to provide the franchise some hope for the future.

Grizzlies: They Tanked Without Blowing It Up

I’ve long felt the Grizzlies should consider blowing it up by trading Marc Gasol and Mike Conley. But Gasol is 33, two years removed from major foot surgery, and has shown signs of declining. Conley is 30, missed basically the entire season with an Achilles injury, and has $97.5 million left on his contract. It may be hard to get much value in return for either at this point.

But guess what. The Grizzlies will still get to add a young piece without having to trade anybody. Assuming the roster isn’t detonated this offseason, they’ll come back with the current core and an elite prospect. The Grizzlies have the second-worst record, which, if they finish the season there, would give them a 55.8 percent chance at a top-three pick and a guarantee of drafting in the top five in a draft with a wealth of talent.

Conley’s nagging hip injury could turn out to be a blessing in disguise. Now they just need to finish the season strong by losing more games. Don’t blow it, Memphis.

Hawks: Taurean Prince

I feel for you if you haven’t been watching Prince ball out for the Hawks. The second-year forward grinds on defense, hustles in transition, and scores from all over the floor. As of late, his effort is translating into high-volume, high-efficiency scoring. Over the past five games, Prince averaged 26.8 points, seven rebounds, and 3.8 assists, while dropping 38 points twice.

It’s not like Prince is just getting garbage time points, either: Hawks coach Mike Budenholzer uses him in all sorts of actions—from isolations to pick-and-rolls to handoffs to screens. It’s a sign of the positionless times when Coach Bud can have his thick, 6-foot-8 forward sprint through screens then splash 3s.

Prince flashed his upside as an upperclassman at Baylor, but his shot selection was often frustrating to watch when he’d turn on “hero mode” and fail to make shots. But his jumper has improved, and he’s tightened his ballhandling to become a more reliable scorer. The Hawks are a long way from being good, but they have a few diamonds and pearls: their own draft picks, and Prince.

Magic: Mario Hezonja Has Risen From the Dead

The Magic declined Hezonja’s fourth-year option in October, which means the 2015 no. 5 overall draft pick will be an unrestricted free agent this offseason. You can’t really blame the Orlando front office—Hezonja has shot 42 percent from the field in three seasons, and his $5.2 million salary would’ve felt like an overpay on what’s expected to be a grim market for free agents this summer.

But Hezonja has at least shown some flashes of what made him an appealing pick in the first place, including dropping 20 or more points four times since February 1. He’s fizzling in March, but the 23-year-old at least has my attention again. Hezonja entered the league as more of a wing, but he has played more power forward this season, which makes him an intriguing pick-and-roll threat. The shot still doesn’t fall enough, but when it does, he’ll be a consistent rotation player. I’d be interested to see how he can perform in a stable situation, whether it’s with a new Magic regime or elsewhere.

Nets: Caris LeVert

As the Nets rebuild their identity, LeVert has emerged as one of the organization’s reasons for optimism. The 23-year-old, tall, lanky guard is averaging 27.1 points, 7.2 assists, and 5.6 rebounds per 100 possessions since the All-Star break, with stellar scoring efficiency (55.8 effective field goal percentage, 59 true shooting). LeVert struggled to put the ball in the basket early in the season, but he demonstrated a natural feel for making the right reads, much like he did in college. Now shots are falling.

LeVert is a nifty, herky-jerky ball handler and a fluid athlete, which keeps defenders on their toes. He can pull up to shoot 3s, like he does above, or he can attack the rim.

It might be hard for Nets fans to think positively about another losing season. But there aren’t too many players who are as long as LeVert who can score from all three levels, pass, and play versatile defense. Once the surrounding talent is better, LeVert’s skills will become far more appreciated.

Knicks: Frank Ntilikina’s Defense

I totally get why some Knicks fans (and LeBron James) say Phil Jackson should’ve drafted Dennis Smith Jr. instead of Ntilikina. Dunking and scoring are fun. And Smith very well may end up a better pro. But Ntilikina is already one of the NBA’s best guard defenders—and he’s still only 19. Here’s a clip of him harassing LeVert for 24 seconds during a game in January.

Ntilikina is roadrunner-quick moving laterally, and he can alter or block any shot with his 7-foot-1 wingspan. The teenager has also regularly given high effort, even as New York’s losses mount.

Ntilikina has defended Smith, Hield, John Wall, Chris Paul, and D’Angelo Russell for at least 10 possessions, and each has scored zero points, according to Second Spectrum. Some of them, like Paul, wound up creating baskets for teammates instead, but Ntilikina has already become a deterrent. There’s legitimate concern about Ntilikina’s raw offense (he’s one of the NBA’s least efficient scorers), but lockdown defenders will always have a place in the NBA.

Mavs: Dirk Nowitzki’s Twilight

Watching the NBA’s greats deteriorate before our eyes can be depressing. Hakeem Olajuwon’s final season—a one-off with the Raptors—was miserable; same goes for Shaquille O’Neal in Boston and Patrick Ewing in Orlando. You can’t blame players for sticking around—there’s more money to be made, titles to be won, and a love for the game they can’t let go of.

I was worried the 2017-18 season would feel like a long funeral for Nowitzki; in October, he looked totally overmatched in back-to-back games against the Rockets and Warriors, shooting a combined 5-for-20 for 13 points. The Mavericks have continued to stink, but as Smith develops, Kyle Collinsworth and Jalen Jones get opportunities, and Nerlens Noel eats hot dogs, nothing has been more enjoyable than watching Dirk keep doing what Dirk does.

In Year 20, at age 39, Nowitzki is posting career highs in 3-point percentage (42.9) and effective field goal percentage (55.7), while scoring an elite 1.09 points per possession in the half court. Dirk is still a lethal shooter that teams must account for anytime he’s involved in the pick-and-roll, spotting up, or has a mismatch in the post. The volume and minutes aren’t there anymore for Dirk, but at least he’s still producing. If this is the final season of his Hall of Fame career, it was a worthy farewell.