Analyzing Oakland Athletics Hitters for 2020 – 60-Game Season Update

Austin Bristow II breaks down the Oakland Athletics' lineup as we look toward the 2020 season.

One of the teams with the lowest budget in the majors, the Oakland A’s have been easily one of the most interesting ballclubs of the 2010s, due in part to the 2011 film “Moneyball.” The film highlighted the A’s 2002 season, during which they completely changed the way owners, GMs, statisticians, and even players and fans look at the game of baseball. Throughout the 2010s, the A’s finished with a .518 record, including two 97-win seasons to close out the decade.

Despite their success in the past 10 years, the A’s have not won a playoff series since 2006 and are still heavily limited by their financial capabilities. This money crunch has gained them the reputation of a creative ballclub. As we look toward 2020, the A’s have one of the best offenses in baseball, losing very little in the offseason.

With that, let’s take a look at what Oakland fans and fantasy owners can expect from the A’s hitters this coming year.

(Last Updated: 7/8/2020)

 

60-Game Season Update

 

The Oakland Athletics have an established team that could really benefit from a shortened season. Their real-life team should only be improved with increase roster flexibility. Despite excellent defense from their core players (Matt Chapman, Matt Olson, Ramon Laureano, Marcus Semien), fantasy managers shouldn’t expect Oakland hitters to not, occasionally, rotate in and out of the lineup in a compressed season. Fortunately, most of the A’s will play as often as they are physically able.

There will, however, be some shortened-season impacts. Here are some of the players whose fantasy contributions rise and fall based on the time off, new rules, and other major changes we’ll see in 2020. What is fascinating about the A’s is that we can see positive and negative impacts from each of the players discussed.

 

Trending Up

There was wide speculation that a trade would come to the player who lost the Spring Training playing-time battle between Franklin Barreto and Jorge Mateo. The decision was made when Billy Beane sent Mateo to San Diego for a PTBNL. This move, along with the expanded roster, should alleviate the roster crunch and should open up a safe position in Oakland for Barreto. 

“Safe” is a relative term for a team on a budget and with the added flexibility of an expanded roster. Mateo’s departure would indicate that second base is Barreto’s to lose, but Tony Kemp is a veteran option, and don’t forget about Sheldon Neuse. Neuse looks like a taxi-squad candidate, but if he impresses early, he could be an option to further muddle things up. Considering that Barreto and Kemp slashed .123/.138/.263 and .212/.291/.380, respectively, last season, the job will be available to the player who has the hottest bat.

If the National League had the DH in 2019, Khris Davis season might have looked much different. There may be an alternate universe where Davis doesn’t injure himself playing the field at PNC he doesn’t play through that injury. Instead, he hits .247 with 40+ home runs last season. When the A’s play interleague games this season, Davis can stay out of the outfield and focus on krushing baseballs. The universal DH in 2020 means that Davis should play in NL parks and should avoid a dozen, or so, forced days off.

 

Trending Down

The shortened season in Oakland hurts fantasy owners much more than it does Oakland’s players. By giving a frugal team more options to get creative with player usage, fantasy managers will have the added frustration of coping with undefined and regularly changing roles.

If we change the perspective on the second base battle between Franklin Barreto, Tony Kemp, and Sheldon Neuse we can see that these players also fit in the trending down category. With all three on the roster, fantasy managers will have to cope with a shared-time situation at second. In weekly leagues, it will be difficult to know who will get the bulk of the playing time. As a late-round option at an MI slot, the winner of Oakland’s second base job was supposed to be a playing-time upside option, but now the headache of three players really makes the Oakland option less viable in a season where getting playing time is king.

We just don’t know how the A’s will use the DH. They have Khris Davis locked into the role if he is healthy to start the season, but the DH lineup slot is an enticing option for managers looking to get a regular player off his feet. With so few off-days and potential double-headers, Davis’ lineup spot isn’t the lock that it should be. While I don’t expect the 2016-2018 versions of Khris Davis to be benched, if there is any glimpse of the 2019 version, he may not see the full complement of plate appearances. Beware of the DH spot being used as a day-off machine. Davis’ value plummets if the DH slot isn’t his.

Marcus Semien is an accumulator. He led baseball in plate appearances in 2019 with 747 (Whit Merrifield was second with 735). With 162 games played, Semien had the chance to build his counting stats during those extra appearances. Even though accumulators will have value in a shortened season, the compressed schedule won’t allow Semien to separate himself from other players by accumulation. Regression to the league’s mean in plate appearances is worth considering when ranking the top shortstops. Don’t pay full price expecting Semien to lead the league in plate appearances again, but Semien should still get regular playing time and lead-off, so he’s no slouch; he just doesn’t have quite enough season to fully separate from the pack.

 

Projected Lineups

vs. LHP

vs. RHP

 

Original March Edition

 

Roster Changes

 

 

Hitter Previews

 

Catchers

 

Sean Murphy (C | Batting 8th)

2019: (AAA & MLB) 51 games, 39 R, 14 HR, 38 RBI, 0 SB, .289/.370/.607 | C #56

2020 ADP: 215 (C #13)

2019 saw the debut of Sean Murphy, one of the top catching prospects in baseball. With Josh Phegley out of the picture, Murphy is in line to get the lion’s share behind the dish. Scouts and prospect analysts saw Murphy as an above-average offensive and defensive catcher, with a cannon for an arm. A torn meniscus in May kept his 2019 season limited to 61 games across three levels. He went on to hit well in Triple-A and MLB after a September call-up. After the A’s unceremonious postseason, Murphy had a second knee surgery, though he is expected to be healthy and ready for a full workload by spring.

It’s unclear what type of hitter we will see Murphy develop into. While he does boast plus raw power, his swing has been described as compact and contact-oriented, which is backed up by his impressive 27% line drive rate in the majors. I expect we see Murphy hit for a decent average, somewhere in the .250-.260 range, while hitting nearly 20 home runs. I will say that projection is purposefully conservative, as I want to see what Murphy can do in a full, healthy season. I’m definitely interested in drafting him, so long as I can do so after pick 200.

Strengths: HR

Weaknesses: Runs, SB

 

Best-Case Scenario

 

Murphy manages to stay healthy throughout the entire 2020 season, hitting over .260 with 25+ home runs. It’s not completely unrealistic for Murphy to be a poor man’s 2019 Mitch Garver.

 

Worst-Case Scenario

 

Assuming his health doesn’t keep him off the field, I could see Murphy disappointing to the tune of a .230 average with only 15 homers.

 

2020 Projection: 58 R, 21 HR, 67 RBI, 1 SB, .258/.349/.488

 

Infielders

 

Matt Olson (1B | Batting 4th)

2019: 73 R, 36 HR, 91 RBI, 0 SB, .267/.351/.545 | 1B #15

2020 ADP: 61 (1B #4)

Matt Olson has been one of my personal favorite players since 2016, the year before his amazing MLB debut. I had drafted him in my dynasty league and, despite a multitude of offers, have held onto him throughout the years. I love his potential, and in 2019 we got to see the higher end of that potential.

After a delayed start to the 2019 season – due to a broken hamate bone in Oakland’s second game of the season – Olson hit 36 homers in just 127 games this past season. He also put up a career-high .267 average, due likely to his career-high contact rate (75%) and line drive rate (24%). According to Statcast, Olson ranked 9th in the majors  in hard-hit rate, boasting an impressive 50.3%.

The long and short of it is this: Matt Olson hits the ball very hard and very far. He played in 162 games in 2018 and was injured this past season due to being hit by a pitch. He seems as safe as anyone to play a full 160+ games, and if he does 45 homers won’t be out of the question. I just hope he will maintain his batting average improvements in the coming year.

Strengths: HR, RBI

Weaknesses: SB

 

Best-Case Scenario

 

Olson plays in 160+ games, challenging for the AL home run lead with 50+ homers. This power outburst leads him to 200+ RBI & runs combined.

 

Worst-Case Scenario

 

Olson reverts back to his 2017 form, barely hitting 30 homers and batting below .250.

 

2020 Projection: 89 R, 44 HR, 112 RBI, 0 SB, .261/.342/.588

 

Franklin Barreto (2B | Batting 9th)

2019 (Triple-A): 98 games, 88 R, 19 HR, 65 RBI, 15 SB, .295/.374/.552

2020 ADP: 615 (2B #50)

With Jurickson Profar‘s move to San Diego, second base is wide open in Oakland. I’ll be discussing the options that I expect may get opportunities for regular playing time, but expect this section to get updated as the situation becomes clearer.

Franklin Barreto may get the first shot at playing time going into 2020, as he is out of minor league options. Without any more minor league options, the Athletics would have to place Barreto on waivers before they demote him to the minors, giving other teams the opportunity to claim him. The former Oakland top prospect has fallen from graces in recent years, struggling to get any form of a foothold in the Majors. Barreto put up a very disappointing .123 batting average along with a 40% strikeout rate in his 23-game cup of coffee in 2019. Still, in Triple-A, he managed to put up a .295 average with 19 homers and 15 steals.

The question that is left to be determined is if Barreto can rein in the strikeouts. If he can, we may see a 15-15 season with an average around .250. If not, he could hit below the Mendoza Line once again and find himself back in the minors. Barreto would not be my pick to get the majority of playing time at second base in Oakland next season.

Strengths: Out of options and some MLB experience

Weaknesses: Strikeouts

 

Best-Case Scenario

 

Barreto figures out how to consistently make contact at the plate, maintaining control of the 2B gig throughout the season and hitting near .260 with 15+ homers and 15+ steals.

 

Worst-Case Scenario

 

Barreto continues to strike out at a nearly 40% clip, winding up designated for assignment before the end of May.

 

2020 Projection: 40 games, 15 R, 4 HR, 11 RBI, 5 SB, .211/.230/.309

 

Jorge Mateo (2B | Batting 9th)

2019 (Triple-A): 119 games, 95 R, 19 HR, 78 RBI, 24 SB, .289/.330/.504

2020 ADP: 519 (2B #42)

The next potential second baseman I’ll look at is Jorge Mateo, a prospect that I’ve followed closely for the last few years. There are a lot of parallels between Mateo and Franklin Barreto: both are 24 years old and both performed very well as teammates in Triple-A in 2019. Mateo has been well known for his 80-grade speed, stealing 71 bases in 96 games of A-ball back in 2015. This past year was the first time he showed signs of power: He hit 19 homers in 2019, easily topping his previous career-best of eight.

Mateo does have one more year in the minors, so he’s likely to start the year off in the minors unless he really impresses in spring training. He came up as a shortstop and center fielder in the Yankees organization but has played mainly shortstop and second base since coming to the A’s in 2017. While I do expect Barreto to get the first shot at the starting role, I would not at all be surprised to see Mateo get a shot to usurp him after a month or so. Their bat skills are comparable, with Barreto already having shown a swing-and-miss problem in the majors.

Since he’ll probably start the year in the minors, Mateo isn’t a guy I’d be drafting, but one I’d watch out for in case he’s called up. If Mateo is given an opportunity, he’d be a definite add in most leagues. His speed could put him on track for 30+ steals, a clear need for all categories and roto players. I’d bet on him getting the majority of playing time at second for the A’s next season.

Strengths: SB

Weaknesses: Could spend the whole year in Triple-A

 

Best-Case Scenario

 

Mateo is given an opportunity at 2B early and runs with it, literally. He steals 35+ bags while hitting near .265.

 

Worst-Case Scenario

 

For one reason or another, Mateo spends the entire season in Triple-A.

 

2020 Projection: 90 games, 49 R, 9 HR, 33 RBI, 28 SB, .254/.301/.429

 

Sheldon Neuse (2B | Batting 9th)

2019 (Triple-A): 126 games, 99 R, 27 HR, 102 RBI, 3 SB, .317/.389/.550

2020 ADP: 691 (2B #58)

A dark horse for the second baseman role is Sheldon Neuse. Neuse was among the most improved players in the Athletics’ farm system this past season, hitting an impressive .317 with 27 homers. He dramatically improved strikeout rate, lowering it from 32% in 2018 to just 23.6% in 2019, while also raising his walk rate to a career-high 10%. He’s been touted by scouts as a prospect that had power potential but had not shown it much until 2019. Now it’s clear he is a different hitter than he was a year ago, one worth considering at the major league level.

The biggest thing that Neuse has against him is his service time. Unlike Barreto, Neuse still has available minor league options. The A’s could easily start him out in the minors without repercussion, giving both of the prior two the opportunity to claim the 2B opening first. Barreto will likely need to flop before Neuse is called up and given a crack at regular playing time.

This second base situation is one of the most wide open playing-time battles in the league and will be one I’ll be watching closely as the season approaches.

Strengths: AVG, HR

Weaknesses: Will likely begin in Triple-A, SB

 

Best-Case Scenario

 

Both Barreto and Mateo fail to claim the starting second base role, allowing Neuse to get a shot. He takes advantage, hitting near .270 with 20+ homers.

 

Worst-Case Scenario

 

Neuse spends the entire season in Triple-A, eclipsed by either of the two prior players.

 

2020 Projection: 40 games, 29 R, 10 HR, 32 RBI, 1 SB, .267/.320/.482

 

Matt Chapman (3B | Batting 3rd)

2019: 102 R, 36 HR, 91 RBI, 1 SB, .249/.342/.506

2020 ADP: 92 (3B #14)

Matt Chapman was a popular pick for a 2019 breakout, and, after the dust settled, it seems the jury is out on whether he truly reached those expectations. Chapman posted the best power numbers of his career, hitting 36 homers compared to the 24 he hit in 2018. However, his batting average slipped from .278 down to .249, possibly a result of selling out for homers a bit. Chapman increased his fly-ball rate at the expense of his line drive rate. That said, his BABIP shouldn’t have fallen 68 points (.338 in 2018 to .270 in 2019) due to that fly-ball increase, so I do expect a rebound in average.

Chapman is being drafted 87th overall, being taken after other third basemen such as Jeff McNeilMax MuncyYoan Moncada, and Manny Machado. While those men may deserve to be taken over Chapman, I’m not sure I’d bet on any of them outperforming him in 2020. Aside from McNeil, I see the other four 3B to have fairly similar skill sets; Muncy, Moncada, Machado, and Chapman will likely hit between 30-38 homers, have a batting average between .245 and .265, and push 180+ runs and RBI combined. With that in mind, I think I’ll be looking to wait on a third baseman in drafts, skipping the high-end ones for someone like Chapman that I can take in the middle rounds.

Strengths: R, RBI, HR

Weaknesses: SB

 

Best-Case Scenario

 

Chapman sees his BABIP rebound from 2019 while maintaining his power improvements. He hits near .270 with 30+ homers and 200+ combined runs and RBI.

 

Worst-Case Scenario

 

I don’t really see Chapman being too much worse than he was in 2019. Maybe the power regresses to 25-30 homers while the batting average stays around .250, but that seems like the floor for him.

 

2020 Projection: 109 R, 32 HR, 97 RBI, 1 SB, .264/.352/.512

 

Marcus Semien (SS | Batting 1st)

2019: 123 R, 33 HR, 92 RBI, 10 SB, .285/.369/.522 | SS #8, #21 hitter

2020 ADP: 90 (SS #13)

I have been a big Marcus Semien fan since I first joined the Pitcher List staff, writing my first article on his path to a breakout season. Turns out I was just one season too early, as he busted out to the tune of the 21st overall hitter in roto leagues in 2019. Semien improved across the board, posting career highs in all major hitting categories. Clearly, 2019 was a career year and there will be some regression, but the underlying numbers suggest there is a new, higher floor for the 29-year-old shortstop.

Semien has been consistently improving on his plate discipline since 2013, culminating in his best approach at the plate this past season. Semien walked nearly as often as he struck out in 2019, posting an 11.6% BB-rate and a 13.7% K-rate. For reference, this is only a bit behind the season that Semien’s new division rival, Anthony Rendon, just put up. Rendon posted a 12.4% BB-rate and 13.3% K-rate but is being taken four-and-a-half rounds ahead of Semien. I’m not saying Rendon is too high, but rather Semien deserves to be taken earlier.

In my personal rankings, I have Semien slotted around 40th overall. While that may be aggressive, I believe in the changes that he made this past season and believe he could very well be worth a third or fourth round pick in 2020.

Strengths: R, RBI, HR

Weaknesses: Can you call 10-15 SB a weakness?

 

Best-Case Scenario

 

Semien pulls a Yelich and improves further on skills that everyone expects to regress, cementing himself as a high-end SS. This could look like a .290 AVG, 35 homers, and 15 steals.

 

Worst-Case Scenario

 

Regression hits harder than a tiger on catnip, pushing his numbers closer to 2016 or 2018 – .250 AVG, 25 homers.

 

2020 Projection: 121 R, 30 HR, 89 RBI, 11 SB, .278/.367/.515

 

Outfielders

 

Ramón Laureano (CF | Batting 2nd)

2019: 79 R, 24 HR, 67 RBI, 13 SB, .288/.340/.521 | OF #25

2020 ADP: 78 (OF #21)

After a 48 game stint in 2018, Ramon Laureano got his chance for a full-time starter’s role this past season. He took full advantage, showing off his dynamic defense and capable bat. Between 2018 and 2019 Laureano hit essentially had a full season’s worth of work (657 PAs) and managed to put up a .288/.345/.508 slash line with 29 homers and 20 steals in 23 attempts. Now the clear starter in CF, 2020 should give him the opportunity for 500+ plate appearances for the first time.

Laureano seems as likely as anyone to post a 20/20 season in 2020 (oh hey, that’s neat!), though the upside borders on 30/30. The one concern with the 25-year-old is his plate discipline. He only had a 5.6% BB-rate and a 25.6% K-rate this past year, though he regularly posted better figures in the minors. There is still room for development, but if something were to go wrong, it’d likely stem from the plate discipline.

Strengths: R, HR, SB

Weaknesses: RBI

 

Best-Case Scenario

 

Laureano takes a step forward, pushing for a 30/30 season with a .280 average.

 

Worst-Case Scenario

 

The strikeouts drag down Laureano’s numbers, limiting him to a .255 AVG and 20 homers.

 

2020 Projection: 101 R, 29 HR, 80 RBI, 32 SB, .279/.330/.531

 

Mark Canha (LF | Batting 5th)

2019: 80 R, 26 HR, 58 RBI, 3 SB, .273/.396/.517 | OF #49

2020 ADP: 262 (OF #71)

Another underrated factor in the A’s success this past year was the quiet breakout of Mark Canha. Much like his teammate Marcus Semien, Canha put up career-high numbers across all majors hitting categories in 2019. The key to Canha’s unexpected success can likely be attributed to a change in approach at the plate.

This past year, Canha drastically improved his selectiveness at the dish. Specifically, he swung at pitches outside the strike zone far less often, improving his O-Swing% to 25% from a mark that had never below 31%. This improvement in pitch selection and strike zone knowledge led Canha to greatly increase his walk rate and led him to swing at better pitches in the strike zone.

Whether this improvement is an aberration or the new standard that we can expect from Canha is yet to be determined, but he may be worth a late-round draft pick, especially in AL-only or OBP leagues. He’s in line to get regular playing time which makes him automatically a consideration in deeper formats.

Strengths: OBP, R

Weaknesses: SB, low ceiling

 

Best-Case Scenario

 

Canha continues he selective approach at the plate, once again putting up an OBP near .400 while providing mid-20s home runs.

 

Worst-Case Scenario

 

2019’s approach is the outlier and Canha reverts back to his league-average-at-best 2018 numbers.

 

2020 Projection: 85 R, 24 HR, 50 RBI, 2 SB, .264/.372/.491

 

Stephen Piscotty (RF | Batting 7th)

2019: 93 games, 46 R, 13 HR, 44 RBI, 2 SB, .249/.309/.412 | OF #123

2020 ADP: 463 (OF #99)

Stephen Piscotty had a lost year, riddled with injury. He missed all of July with a knee sprain and the majority of September with an ankle sprain. When he was on the field he was wildly inconsistent, hitting .290 in May, .169 in June, then .304 in August after returning from his knee injury. The season was very disappointing, especially for the player that Bob Melvin entrusted with the 3rd slot in the order on opening day.

That said, not all is lost for the 29-year-old outfielder. His plate approach was fairly similar to his successful 2018 season, and the underlying numbers do not show a notable regression in skills. Piscotty’s down season seems to be almost wholly due to the injuries and inconsistency he dealt with throughout the year.

After Semien’s breakout, the rise of Laureano, and the continued success of Olson and Chapman, there will be little pressure on Piscotty to start the year. I expect him to begin the year hitting in the lower half of the order until he gets his feet under him and proves he deserves to move up. This is absolutely a player that is an actual sleeper; nobody is excited to draft him right now, yet he seems to still have the skill set he showcased in 2018. I’ll be targeting Piscotty in a number of drafts with my last-round pick in hopes of finding a discarded stud.

Strengths: Consistent playing time

Weaknesses: Health

 

Best-Case Scenario

 

Piscotty proves he’s healthy and repeats or improves upon his 2018 numbers. We may see a .265+ AVG, 25+ homers, and near 180 runs and RBI combined.

 

Worst-Case Scenario

 

Injuries continue to plague Piscotty, as he struggles to hang onto a starting role.

 

2020 Projection: 145 games, 73 R, 25 HR, 87 RBI, 3 SB, .260/.321/.484

 

Khris Davis (DH | Batting 6th)

2019: 61 R, 23 HR, 73 RBI, 0 SB, .220/.293/.387 | OF #106

2020 ADP: 178 (DH #4)

Oh, how the mighty have fallen. Once touted as “the most consistent player in baseball,” owners could count on Khris Davis to deliver 40+ home runs and a .247 batting average year after year. However, in 2019 things fell apart, as Davis saw his slugging percentage fall from .549 to a measly .387 this past year.

So, what happened? I believe Davis was playing inured throughout the majority of 2019. On May 5, Davis made a catch in the outfield (the third of only four games he played in the field) in which he crashed into the railing. He was removed from the game, complaining of hip and oblique soreness.

Davis would go on to miss 12 games before being placed on the injured list on May 24 with an oblique contusion/soreness. Prior to the injury, Davis was playing like his consistent self — before May 5 he had hit 10 home runs in 34 games (a 46-homer pace), while batting .231. He only managed to hit another 13 home runs in 99 games the rest of the way, while batting just .217. Davis remained on the IL the minimum 10 days, playing DH all but a single game for the remainder of the year.

With all of that in mind, I am looking at 2019 as a lost season for Khrush. Prior to this past season, Davis was consistently among the league leaders in BRL%, xSLG, and average exit velocity. The man is one of the best, most consistent power hitters in the game when he’s healthy. Now, with a full offseason to recover, I see no reason why Davis should come back and hit 40 homers with a .247 batting average on the dot.

Strengths: HR, RBI, R

Weaknesses: AVG, SB

 

Best-Case Scenario

 

Khrush goes back to his standard performance: 40+ homers and a .247 batting average.

 

Worst-Case Scenario

 

2019 becomes the new standard instead of the outlier. That or he finishes the season with anything but a .247 average.

 

2020 Projection: 87 R, 41 HR, 115 RBI, 0 SB, .247/.328/.525

 

Playing-Time Battles

 

I went into more detail about this above, but the second base spot is wide open. Any of Franklin Barreto, Jorge Mateo, or Sheldon Neuse could easily take it and run. I also wouldn’t at all be surprised to see the Athletics sign a middle infielder to fill the spot.

I’d put my money on Barreto getting the first opportunity for the starting role, but losing it to Mateo before the end of May. I’m not sure that Mateo has what it takes to thrive at the Majors, but he’s my pick among those three to succeed in the role.

 

Projected Lineup

 

 

OAK Lineup vs RHP

 

OAK Lineup vs LHP

 

Conclusion

The Oakland Athletics have managed to put together one of the best offenses in the American League with less than half the budget of some of their competitors. While it wouldn’t be totally shocking, I’d be surprised if the A’s decide to sign a free agent or make a trade to bolster their offense. Most of the starting roles are locked in for 2020, with the obvious exception of second base. Should Khris Davis and Stephen Piscotty both bounce back from their down years, the A’s should see themselves in the AL postseason hunt once again.

Photo by Leslie Plaza Johnson/Icon Sportswire | Adapted by Justin Paradis (@freshmeatcomm on Twitter)

Austin Bristow II

Raised as an Atlanta Braves fan in central Illinois, Austin Bristow II attended Eureka College. Since cofounding his home league at age 16, Austin has been obsessed with fantasy baseball, always intent to stay ahead of the changes in player value. Austin serves as the Staff Manager for Pitcher List.

  • Avatar Erik says:

    Awesome article! One thing though – I think Mateo is out of options as well.

  • Avatar Kyle says:

    Good article, Austin! One quick note, Khris Davis had a triple slash of .220/.293/.387 last year, according to his FanGraphs player page. Sad that he didn’t keep the .247 streak alive.

  • Avatar Jake says:

    What about Seth Brown? Could he factor into the mix. I thought he was surprisingly good in the outfield last year. He looked like one of those hard nosed competitors that I’ve learned not to count out.

  • Account / Login
    >