Stat Padders

The Official Site of the Michigan Basketball Analytics Association

Power Rankings

18 min read


Week 9

*through Friday, December 21


  1. Atlanta Hawks (6-23)

Last Week: 28 (↓2)

Last Week’s Games: Lakers (L, 96-101), Knicks (L, 120-143), Jazz (L, 106-111)

Next Week’s Games: @Nets, @Cavs, Bucks

The Hawks are last in average point differential and net rating. They are 28th in defensive rating. They are 27th in offensive rating. Atlanta is one of the worst rebounding teams in the league, turns the ball over as much as anyone, and is a bottom ten shooting team by pretty much any metric. Yes, this team is young. Yes, they will get John Collins back against the Cavs and be better from there. But the Hawks are worse than they were last year, and that’s not the way things were supposed to go here. Trae Young is averaging 28.4 points, 8.5 assists, and 4.2 boards per game on 37% shooting from deep, and it’s fair to start questioning how far his patience goes. Collins better bring one heck of a boost in his return. 


  1. Golden State Warriors (6-24)

Last Week: 29 (↑1)

Last Week’s Games: Kings (L, 79-100), TrailBlazers (L, 112-122), Pelicans (W, 106-102)

Next Week’s Games: Timberwolves, Rockets, Suns

Thanks to the Hawks, the Warriors are no longer the clear worst team in basketball. That being said, with a bottom three offense and bottom six defense, they are still very bad. There are some pieces here (D’Angelo Russell, Draymond, Eric Paschall, Damion Lee, Alec Burks, etc.), but none of them have been all that effective in actually winning games. Golden State is going to pick very early in the draft. Right now, there’s a 5 team battle for the top spot. The Hawks should rise out with the return of Collins. The Pelicans, with the eventual return of Zion Williamson and the overall talent on their roster, could do the same. Unless the Grizzlies, Wizards, or an unexpected team fall back to crash the party, it’s likely going to be the Cavs, Warriors, and Knicks heading into the lottery with equal odds for number 1. 


  1. New York Knicks (6-20)

Last Week: 29 (↑1)

Last Week’s Games: Nuggets (L, 105-111), Hawks (W, 143-120), Heat (L, 114-129)

Next Week’s Games: Bucks, Wizards, @Nets

The Knicks have made it back outside of the bottom 2 of these rankings. This week, they beat the Hawks by 23, a margin of victory they hadn’t matched since the 2017-2018 season. And, to top it all off, they don’t have to be embarrassed on national TV this Christmas. What a time to be alive for Knicks fans. 


  1. Cleveland Cavaliers (8-21)

Last Week: 27 (-)

Last Week’s Games: Bucks (L, 108-125), Raptors (L, 113-133), Hornets (W, 100-98), Grizzlies (W, 114-107)

Next Week’s Games: Hawks, @Celtics

The Cavs had lost 16 of 18 before closing the week with two straight wins. Their 6-5 start has become a distant memory. Cleveland has a bottom 5 defense and offense, and they’re 29th in average point differential. Considering that this team will probably need a further infusion of talent to become competitive in the future, a high pick is probably the best outcome at this point. It would be nice to see some occasional boosts like the wins against Charlotte and Memphis, but the Cavs should probably start working towards the draft, even if they don’t admit it publicly. Trading Tristan Thompson and Kevin Love could also be a win-win situation, depending on the return.


  1. New Orleans Pelicans (7-23)

Last Week: 26 (-)

Last Week’s Games: Magic (L, 119-130), Nets (L, 101-108 OT), Timberwolves (L, 99-107), Warriors (L, 102-106)

Next Week’s Games: @Trail Blazers, @Nuggets

There’s a pretty clear gap between the Pelicans and the bottom 4 in terms of quality of play. The Pelicans hold the fifth worst net rating at -6.7, which is 2.2 points higher than the next highest team (Knicks). They also hold the fifth worst average point differential (-6.6), with the Warriors and Knicks coming next all the way down at -9.0. That probably isn’t much of a silver lining for New Orleans, who has now lost 14 of 15. It also didn’t stop them from losing to a Warriors team that was without Eric Paschall. Even if they’re not the worst team in the league, this has been an absolute disaster of a season for the Pelicans. Zion doesn’t appear to be all that close to his debut either. 


  1. Washington Wizards (8-19)

Last Week: 22 (↓2)

Last Week’s Games: Grizzlies (L, 111-128), Pistons (W, 133-119), Bulls (L, 109-110 OT), Raptors (L, 118-122)

Next Week’s Games: @76ers, @Knicks, @Pistons

The Wizards have fallen off after a decent start that had them overperforming their record. It would appear that having a top 5 offense and the worst defense in the league is not a great formula for consistently winning basketball games. Washington has seen some promising signs from its rotation this year, from solid play from Rui Hachimura, Moe Wagner, and Thomas Bryant to a revival of sorts from Isaiah Thomas to Davis Bertans become Steph Curry, and part of the recent struggles have come with injuries to Wanger, Bryant, and Hachimura. However, none of that will matter next year if the return of John Wall doesn’t coincide with an improved defense. Something needs to be done on that end of the court. 


  1. Memphis Grizzlies (10-19)

Last Week: 25 (↑1)

Last Week’s Games: Wizards (W, 128-111), Heat (W, 118-111), Thunder (L, 122-126), Cavs (L, 107-114)

Next Week’s Games: Kings, Spurs, @Thunder

The Grizzlies might not be all that good this season, but, man, the future is bright. Ja Morant is just electric. He’s averaging 18.4 points and 6.7 assists per game, shooting over 42% from three, and producing at least one viral highlight a week. He came close to a legendary poster over Kevin Love this week. The guy is a must watch. Brandon Clarke might not be quite as flashy, but he’s just as good. He’s shooting over 64% from the field and over 44% from three. Those are ridiculous numbers. Jaren Jackson Jr. (17. 4 points per game and nearly 40% from three) isn’t too bad either. It’s going to be a fun decade in Memphis. 


  1. Chicago Bulls (11-19)

Last Week: 24 (↑1)

Last Week’s Games: Clippers (W, 109-106), Thunder (L, 106-109), Wizards (W, 110-109 OT)

Next Week’s Games: @Pistons, @Magic

The Bulls played three very close games this week against the severely depleted Clippers, (no Kawhi, Patrick Beverley, or Lou Williams), the Thunder, and the Wizards. They won two of them, which should give them a little momentum boost as the season continues. They’re within 1.5 games of the 8 seed, and the Magic, Pistons, and Hornets aren’t exactly frightening competition at this point. A lot has gone wrong in Chicago so far (coaching, failing veterans, stunted developments, and more), but here they stand with two big games coming against the Magic and Pistons. If they win both, they might be in the 8 seed by the end of the week. That’s something to be happy about. 


  1. Charlotte Hornets (12-16)

Last Week: 23 (↑1)

Last Week’s Games: Pacers (L, 85-107), Kings (W, 110-102), Cavs (L, 98-100)

Next Week’s Games: Jazz, @Celtics, Thunder

These next 6 teams could be ranked in a lot of ways. Despite their record, the Hornets are probably the worst of them. Charlotte is 25th in average point differential despite having the 17th best record. That suggests unsustainable luck in close games, and it means that they probably won’t hold onto a playoff spot down the road. That’s probably a good thing for the Hornets, who don’t have a ton of talent even with the emergence of Devonte’ Graham. They could use a high pick or two after a stretch of mediocrity with Kemba Walker. 


  1. Detroit Pistons (11-18)

Last Week: 20 (↓1)

Last Week’s Games: Rockets (W, 115-107), Wizards (L, 119-133), Raptors (L, 99-112), Celtics (L, 93-114)

Next Week’s Games: Bulls, 76ers, Wizards

The good news is that the Pistons are only one game out of the playoffs. The bad news is that the Pistons just can’t seem to turn the corner this season. Considering that Reggie Jackson has only played in 2 games while Blake Griffin has struggled to match last year’s production, that bad news is probably understandable. The weakness of the league this year beyond the top 12 or so teams is enough to keep pretty much anyone in the playoff chase, and Detroit has been one of the main beneficiaries of that so far. If Griffin can turn it around, and if Jackson can come back and produce at some point, they’ll have a solid shot at making it to the postseason. Wins over the Bulls and Wizards this week would help. 


  1. Minnesota Timberwolves (10-17)

Last Week: 17 (↓3)

Last Week’s Games: Pelicans (L, 99-107), Nuggets (L, 100-109)

Next Week’s Games: @Warriors, @Kings

Karl Anthony-Towns is out indefinitely (though relatively briefly) with a knee injury, and the bottom is starting to fall out in Minnesota. Despite strong play from Anthony-Towns and Andrew Wiggins, the Timberwolves have lost 9 straight and 11 of 13, which has them getting further and further behind their 36-win pace from last season. They’re now 2 games back of the 8 seed, and it’s not clear where the turnaround will come from with Towns out for a bit. 


  1. Phoenix Suns (11-17)

Last Week: 14 (↓5)

Last Week’s Games: Spurs (L, 119-121 OT), Trail Blazers (L, 110-111), Clippers (L, 99-120), Thunder (L, 108-126)

Next Week’s Games: Rockets, Nuggets, @Warriors

The bottom is also falling out in Phoenix, as the Suns have now lost 5 in a row and 13 of 17. This is more like the team we expected to see coming into the year. Aron Baynes, Ricky Rubio, and the rest have faded after hot starts. One wildcard here is DeAndre Ayton, who returned to drop 18 points and 12 rebounds in the loss to the Clippers. A game against Los Angeles isn’t the best measuring stick for a struggling team, and it was the only game Ayton played this week. We’ll see how he fits into this team in the coming weeks. 


  1. Orlando Magic (12-17)

Last Week: 19 (↑1)

Last Week’s Games: Pelicans (W, 130-119), Jazz (L, 102-109), Nuggets (L, 104-113), Trail Blazers (L, 103-118)

Next Week’s Games: Bulls, 76ers

The Magic went on a 4 game road trip and lost three of the four. The story here is very similar to the one in Detroit. The good news is that the Magic are tied for the 8 seed. The bad news is that the Magic just can’t seem to turn the corner this season. The weakness of the league this year beyond the top 12 or so teams is enough to keep pretty much anyone in the playoff chase, and, like Detroit, Orlando has been one of the main beneficiaries of that so far. A win over the Bulls would also help the Magic this week, as would better play from Aaron Gordon and Nikola Vucevic, who have at best stagnated after solid seasons last year. 


  1. San Antonio Spurs (11-16)

Last Week: 21 (↑4)

Last Week’s Games: Suns (W, 121-119 OT), Rockets (L, 107-109), Nets (W, 118-105)

Next Week’s Games: Clippers, @Grizzlies, @Mavs

The Spurs did well this week, and the falls of the Suns and Timberwolves have left them 1 game out of the playoffs. This team might not be great, but Gregg Popovich obviously knows how to make the playoffs. The streak could very well live to see another year despite the rough start. 


  1. Sacramento Kings (12-16)

Last Week: 16 (-)

Last Week’s Games: Warriors (W, 100-79), Hornets (L, 102-110), Pacers (L, 105-119)

Next Week’s Games: @Grizzlies, Rockets, Timberwolves

This was not a good week for the Kings, but they’re still sitting within 0.5 games of the 8 seed out West. Unless things change quickly, it’s not going to be as hard to make the playoffs as it looked to be a few months ago. That’s good news for Sacramento. The returns of Marvin Bagley III and De’Aaron Fox is also good news, and both looked pretty good this past week. The Kings are now fully healthy, and, with the exception of the struggling Dewayne Dedmon, have the rotation they expected to have this season. It’s time to start getting the wins they were expected to have this season. 


  1. Portland Trail Blazers (13-16)

Last Week: 18 (↑3) 

Last Week’s Games: Suns (W, 111-110), Warriors (W, 122-112), Magic (W, 118-103)

Next Week’s Games: Timberwolves, Pelicans, @Jazz

The Trail Blazers are back in the playoff bracket, though there are four teams trailing by 2 games or less. CJ McCollum (30.3 points per game this week) and Damian Lillard (31.3 points and 8 assists per game this week) led the charge, and Portland will need them to play at that level to win games with consistency. With Carmelo Anthony and Hassan Whiteside also chipping in, that should be enough to stay afloat in a struggling West. This week, with three games against bad to mediocre Western teams, will offer a chance to confirm that. Portland should be active in the trade market as well, though it’s not clear where the trade chips will come from to land a truly impactful piece. 


  1. Oklahoma City Thunder (14-14)

Last Week: 15 (↑1)

Last Week’s Games: Nuggets (L, 102-110), Bulls (W, 109-106), Grizzlies (W, 126-122), Suns (W, 126-108)

Next Week’s Games: Clippers, Grizzlies, @Hornets

The Thunder might be the team to watch at the trade deadline. Their window of title contention lies a few years in the future, and they have quality veterans that could be moved (Danilo Gallinari, Dennis Schroder, Chris Paul?, Steven Adams?). On the other hand, they’re sitting in the 7 seed out West, with a 1.5 game edge on the 8 seed and a 2 game edge on the 9 seed. Based on the struggles of all the teams below them, they have to be the favorites to land one of those final two playoff spots if they keep the team intact. They also really don’t need to move any of those guys unless they get blown out of the water by an offer. They have enough draft picks to feel good about their chances to build a team down the road. It’s going to be interesting to watch Sam Presti and Co. handle this. 


  1. Brooklyn Nets (15-13)

Last Week: 14 (↑1)

Last Week’s Games: Raptors (L, 102-110), 76ers (W, 109-89), Pelicans (W, 108-101 OT), Spurs (L, 105-118)

Next Week’s Games: Hawks, Knicks

The Nets are the 7 seed in the East right now. They’re 4 games back of the 6 seed. They’re 3.5 games up on the 8 seed. They’re just floating around in no man’s land, and they’ll likely stay there until Kevin Durant makes his Brooklyn debut next season. One standout in Brooklyn has been Spencer Dinwiddie, who averaged 30 points per game this week. He’s making a strong case to be the lead ball handler even with the eventual returns of Kyrie Irving and Caris LeVert. Don’t expect those returns to make this team much better though. The Nets are 0.8 points worse per 100 possessions with Irving on the court so far, and only 2.0 points better per 100 possessions with LeVert on the floor. The reality is that neither player is much of a needle mover in terms of wins and losses at this point. 


  1. Utah Jazz (17-11)

Last Week: 12 (-)

Last Week’s Games: Magic (W, 109-102), Hawks (W, 111-106)

Next Week’s Games: @Hornets, @Heat, Trail Blazers

Wins against Orlando and Atlanta aren’t launching the Jazz up any tiers, but it’s better than losing to Orlando and Atlanta. After losing 5 of 6, with all 5 losses coming against teams that currently hold better records than the Jazz, Utah has won 5 of 6, with all 6 games coming against teams with worse records. The latter stretch means that the Jazz have just fallen out of title contention, rather than playoff contention. It’s going to take a lot to get back to title contention, which is where they want to be. That journey starts with a game in Miami next week. 


  1. Indiana Pacers (20-9)

Last Week: 11 (-)

Last Week’s Games: Hornets (W, 107-85), Lakers (W, 105-102), Kings (W, 119-105)

Next Week’s Games: @Bucks, Raptors, @Heat 

The Pacers just keep winning. Nothing else matters. After starting 0-4 against teams above .500 that don’t play in Utah or Brooklyn, they’ve beaten both the Celtics and Lakers. This week offers three chances to keep that run going. Winning two of three would be huge. 


  1. Toronto Raptors (20-8)

Last Week: 9 (↓1)

Last Week’s Games: Nets (W, 110-102), Cavs (W, 133-113), Pistons (W, 112-99), Wizards (W, 122-118)

Next Week’s Games: Mavs, @Pacers, Celtics

The Raptors went 4-0 in 4 games they should have won. That’s never a bad thing, but injuries to Norm Powell, Pascal Siakam, and Marc Gasol are. All three are out indefinitely after going down against the Pistons. Siakam is the best player in Toronto, Gasol is the most impactful defender in Toronto, and Powell is a solid scoring wing.  It’s not clear what the Raptors are going to do here, as a close win against the Wizards isn’t the best indicator of future prospects. It wasn’t even clear where Toronto stood before the injuries. They’re 4-8 against teams above .500, with one of those wins coming against the Nets and another coming during the Jazz’s free fall. That puts them at 16-0 against teams below .500, which is a mark of consistency and good leadership but does little to prove contender status. The situation is even murkier now. 


  1. Philadelphia 76ers (20-10)

Last Week: 4 (↓5)

Last Week’s Games: Nets (L, 89-109), Heat (L, 104-108), Mavs (L, 98-117)

Next Week’s Games: Wizards, @Pistons, Bucks, @Magic

Well, we jumped the gun on the Sixers being back with last week’s rankings. It turns out that they are not. To make matters worse, their fans can no longer hang onto the “we’re undefeated at home” mantra, as Philadelphia lost twice in their own building this week. A loss in Brooklyn without Joel Embiid is fine. A 20-point loss in Brooklyn without Joel Embiid is not. A close loss to the Heat is what it is. A blowout home loss to the Mavs, where Embiid is the only player to score more than 12 points, is not good. This week was a chance to prove that the Philadelphia 76ers were among the best of the best in the NBA. It was a LeBronian flop instead. Fortunately, the Bucks come to town on Christmas. Unfortunately, it’s not looking like the Sixers are playing well enough to win that game. 


  1. Denver Nuggets (19-8)

Last Week: 10 (↑2)

Last Week’s Games: Thunder (W, 110-102), Knicks (W, 111-105), Magic (W, 113-104), Timberwolves (W, 109-100)

Next Week’s Games: @Lakers, @Suns, Pelicans

The Nuggets have been struggling lately. This week’s schedule offered an opportunity to change that, and they took advantage with four wins. It was far from a dominating week, but wins are wins. After starting 5-1 against teams currently above .500, Denver has lost 4 in a row to those teams. A trip to Los Angeles will offer a big chance to change that trend and fully reestablish contender status. The Lakers beat the Nuggets 105-96 in Denver just over two weeks ago. 


  1. Houston Rockets (19-9)

Last Week: 7 (-)

Last Week’s Games: Pistons (L, 107-115), Spurs (W, 109-107), Clippers (W, 122-117)

Next Week’s Games: @Suns, @Kings, @Warriors

The Rockets got a big 40-point effort from Russell Westbrook against the Clippers, with five other players scoring in double figures, including 28 from James Harden. That was enough for a huge win in Los Angeles that helped to stabilize a shaky week for Houston. Going -6 in two games against Detroit and San Antonio isn’t great, but it’s fair to point out that Westbrook missed the Pistons game. Another thing to consider here is the return of Eric Gordon, which could happen as early as this month. Gordon was terrible to start the year, but he’s a big piece for Houston when he’s right. The Rockets could jump a few spots if he comes back and plays well. 


  1. Miami Heat (21-8)

Last Week: 8 (↑2)

Last Week’s Games: Mavs (W, 122-1118 OT), Grizzlies (L, 111-118), 76ers (W, 108-104), Knicks (W, 129-114)

Next Week’s Games: Jazz, Pacers

The Heat fell in Memphis, but that wasn’t enough to spoil two huge road wins in Dallas and Philadelphia. Those wins put Miami in the 2 seed, though there are four teams within 1.5 games. The seeding battle out East could be pretty important this year. Let’s assume that the Bucks maintain their 4 game lead and dominant play, as there’s little reason to believe they won’t at this point. The 2 seed is very attractive here, as that team will likely start with the Nets, who are currently 4 games behind the 6 seed and 4 games ahead of the 8 seed. They would then only have one series against another good team (sorry Nets) before the conference finals. That series would come against the winner of the 3-6 battle, which is still more desirable than a 4 or 5 seed, as those teams would have to play each other in the first round and then try to go through Milwaukee in the second just to get to the conference finals That’s not ideal . There’s a lot to play with here for Miami, Boston, Philadelphia, Toronto, and Indiana (don’t forget about Victor Oladipo). 


  1. Los Angeles Clippers (21-9)

Last Week: 3 (↓2)

Last Week’s Games: Bulls (L 106-109), Suns (W, 120-99), Rockets (L, 117-122)

Next Week’s Games: @Spurs, @Thunder, @Lakers

Losing to the Bulls isn’t ideal, but it’s going to happen every once in a while when you sit Kawhi Leonard, Lou Williams, and Patrick Beverley. The Clippers responded by beating the Suns and falling to the Rockets with a full cast in both games. Los Angeles holds the 2 seed out West by a hair, with the Nuggets, Rockets, and Mavs all within a game. It’s obviously better to have a higher seed, but the Clippers have made it clear with their rest decisions that regular season results aren’t the most important thing in the world for them. That makes it a little hard to tell how they compare to other contenders. A Christmas matchup against the Lakers should be a very helpful measuring stick. The Clippers were clearly the better team in the opener despite the absence of Paul George. The Lakers have been the better team since. Wednesday should be fun. 


  1. Dallas Mavericks (19-9)

Last Week: 6 (↑2)

Last Week’s Games: Heat (L, 118-122), Bucks (W, 120-116), Celtics (L, 103-109), 76ers (W, 117-98)

Next Week’s Games: @Raptors, Spurs

The Mavs played the first four of a five game stretch against the best teams in the East. 2-2 isn’t bad, especially without Luka Doncic. Oddly enough, both wins came on the road while both losses came at home. This week confirmed that Dallas’s depth is elite, as they were, more or less, able to absorb the loss of Doncic without many negative effects. Tim Hardaway Jr, Jalen Brunson, Delon Wright, Dwight Powell, Seth Curry, Dorian Finney-Smith, and Maxi Kleber form one of the deepest rotation in the league alongside Doncic and Kristaps Porzingis. Porzingis had his best week as a Mav, averaging 23.3 points, 14.3 boards, and 2.5 blocks per game. If he continues that production when Doncic comes back, Dallas is going to be scary in the playoffs. They already have the second best average point differential in the league (+8.8), edging the Lakers by 0.4 points and trailing the Bucks by 3.9 points. 


  1. Boston Celtics (19-7)

Last Week: 5 (↑2)

Last Week’s Games: Mavs (W, 109-103), Pistons (W, 114-93)

Next Week’s Games: Hornets, @Raptors, Cavs

The Celtics picked up a nice win over the Mavs before crushing the Pistons. They did both without Gordon Hayward (foot soreness) and Marcus Smart (really bad eye infection). They have a top 6 offense and defense, and they edge out the Clippers by 0.3 points for the fourth best average point differential (+7.3). They’ve been really good, and they’ll have a good shot at grabbing a top 3 seed and avoiding the Bucks in the second round. If they continue to play this well, they’ll have a shot at giving Milwaukee all they can handle as well. 


  1. Los Angeles Lakers (24-5)

Last Week: 2 (-)

Last Week’s Games: Hawks (W, 101-96), Pacers (L, 102-105), Bucks (L, 111-104)

Next Week’s Games: Nuggets, Clippers

Even after a 1-2 week, the Lakers are still top 3 in average point differential and net rating. They still rank in the top 5 in both offensive and defensive rating. They’re still 24-5, and they still have a 3.5 game cushion at the top of the Western Conference standings. They’re in a very good spot compared to everyone outside of Milwaukee, which is unfortunately one spot too low for their expectations. They have about 50 games left to figure out how to close that gap, and it likely starts with unlocking Kyle Kuzma as a third go-to scorer. Kuzma missed the game in Milwaukee, but he hasn’t done a whole lot even when he has played this year. Pick pretty much any number, and it’s been down so far this season. In Milwaukee, both teams were missing their theoretical third-best player, and the Bucks were clearly superior with both Eric Bledsoe and Kyle Kuzma sitting. Right now, Bledsoe is a good deal better than Kuzma as well. Until that changes, the Bucks will be a good deal better than the Lakers. 


  1. Milwaukee Bucks (25-4)

Last Week: 1 (-)

Last Week’s Games: Cavs (W, 125-108), Mavs (L, 116-120), Lakers (W, 111-104)

Next Week’s Games: @Knicks, Pacers, 76ers, @Hawks

Against Cleveland, Eric Bledsoe went down with a two-week leg injury. The next game saw the Luka-less Mavs expose Bledsoe’s absence by getting into the paint often and bringing an end to Milwaukee’s 18-game winning streak, but it didn’t come without a fierce comeback in the final minutes. The Bucks followed up that loss with a huge win against the Lakers in a game that wasn’t very close until Giannis Antetokounmpo and Khris Middleton joined Bledsoe on the bench with third quarter foul trouble. Giannis is the best player in the league, and the Bucks have all the right pieces around him. None of it matters until the postseason, but from this point forward, the title favorites reside in Milwaukee. If someone else wants to win the whole thing this July, they’re going to have to go through Giannis and his supporting cast. Good luck. Side note – despite the loss, the Bucks remain on pace to break the single season record for average point differential, as their +12.7 is 0.4 points above the record-holding ‘71-’72 Lakers. 


1 thought on “Power Rankings

Leave a Reply

Your email address will not be published. Required fields are marked *

Copyright © All rights reserved. | Newsphere by AF themes.