D-backs position players rank 3rd in the NL this season in FanGraphs’ version of Wins Above Replacement. Sure, they could be better — two teams actually are — but for a team that finished last in baseball just last year, that’s a pretty enormous accomplishment. Hitting is a big part of it. The D-backs currently have a 96 wRC+, and while that is technically below average, it includes the team’s pitchers hitting, which are not included in setting the middle for wRC+. In other words, 100 wRC+ is average for a “non-pitcher,” but the D-backs have pitchers hit — it’s part of why only three NL teams have a 100 wRC+ or better. Hats off, then, to a team that is tied for 4th in the NL in hitting, even if they’ve fallen below 100 wRC+.

The reason they rank even better in WAR, of course, is that D-backs position players have contributed defense to beat the band. They fare well according to UZR, first in NL with 21.2 (Marlins second, 19.9 UZR). Their lead is even more formidable in Defensive Runs Saved — 56, first in the NL by a very wide margin (Marlins second again, 34 DRS). Just for context’s sake, if we split the difference between the two metrics and said the defense had saved about 38 runs, we can credit the defense with dropping team ERA from 4.32 to its current 4.01. That’s huge.

I think it’s fair to say that lately, D-backs hitters have outperformed expectations at the plate. D-backs defense has been an outlier. Separately, each of those things would make it difficult to get an accurate read on team pitching. Combined, it only gets worse.

Our easiest method for getting a read on how good D-backs pitching has actually been is through the use of fielding-independent statistics. FIP is the simplest ERA estimator, relying only on strikeouts, walks, and home runs — and FIP has the team a little bit worse than its 4.01 ERA, at 4.15 FIP. Our working theory, however, is that pitching half of the team’s games in Arizona makes it harder to prevent home runs, or hits in general — and for that, we’d want to include a park factor. xFIP is a quick and dirty version of that, replacing the team’s home run rate with an average rate. As expected, the team does better by xFIP (3.99). SIERA is a much more nuanced estimator, rewarding pitchers for things like high ground ball rates (the higher the rate, the lower the batting average on the ground balls) and controlling for park. SIERA looks even more favorably on the D-backs staff (3.94 this year, 11th in the NL).

I like SIERA best for this, and not just because it likes the D-backs the most. But remember, SIERA is a fielding-independent ERA estimator, so that 3.94 mark does not reflect the excellence of D-backs fielding this year. For purposes of evaluating the staff, that doesn’t matter, really — but note that if you took this staff and this defense and put it in a neutral park, you might be looking at a 3.77 ERA for the staff, good enough for 7th in the NL. The offense would also take a hit, so it would be one step forward and one similarly-sized step back. I think it highlights, though, that D-backs pitching has been far from horrible, in a vacuum.

How Good is Good Enough for the Playoffs in 2016?

I feel a little sheepish assuming that next year’s D-backs position players will be as good as this year’s. Yes, no one important is leaving, and yes, the team’s best is all on the right side of 30, and could conceivably get better. Outstanding is hard to replicate, however, and the D-backs have had unusual luck with respect to injuries — so far, it’s about two-thirds of the season from Tuffy Gosewisch, just under half for Jake Lamb, and less than a quarter for Ender Inciarte.

So let’s be a little conservative, but not by too much. Bad things happen, but at the same time, this exercise isn’t very useful if we assume that a lot of bad things happen. 73% of the season is in the books, and D-backs position players have totaled 18.9 WAR by FanGraphs’ metrics. Scale that up to a full season, and we’re at 25.9 WAR. Let’s tone that down 23, shall we? I think that’s fairly conservative but fair. Last season, 23 WAR would have landed the team 5th in the NL, so that’s not assuming a new standard for excellence or anything like that.

The FanGraphs metrics assume that a team full of replacement players would win 47.7 games over the course of a season. Add in our 23 wins from position players, and we’re at 70.7 wins. Last season, no team with fewer than 88 wins made the postseason, but three playoff teams had exactly that number. Let’s use that. 88 – 70.7 wins = 17.3 wins that we’re looking for from the pitching staff in 2016 in order to make the playoffs.

Since position players get credit for fielding in addition to offense, WAR totals for pitching staffs are not as high as they are for position players. As it turns out, just three NL teams had their pitching top 17.3 WAR, the Nationals (23.1), Dodgers (18.7) and Cubs (17.7). Eight teams (most of the NL) was between 13.0 and 16.4 WAR. 17.3 wins is solidly above average.

It seems to me that a 17.3 fWAR standard for the pitching staff is a safe benchmark. Injuries happen, luck happens, etc., so a safe benchmark is not the same thing as a safe number. To feel confident in making the playoffs, we’d want to sit on expectations higher than that. As noted, though, we were a little conservative on the position player side. If the D-backs entered the 2016 season with a staff they estimated as being an 18-WAR-quality staff, the team would be in good shape even in the event of bad luck — so long as that was balanced with good luck, either with pitching or with the position players.

The Standard for a Rotation

A rotation does not a pitching staff make. In the NL last year, 20.3% of all pitching WAR was accumulated by relievers. We are gunning for the playoffs, though, and among last year’s 5 NL playoff teams, just 16.8% of pitching WAR came from relievers. Right now we’re mostly interested in the rotation, but 20% of the 18 WAR total we’re looking for from the staff would be about 3.5 WAR. Unless Aroldis Chapman falls from the skies, it seems unrealistic to expect that next year, as they’re currently on pace for 2.5 WAR. Noting that the bullpen could be an area to upgrade, let’s stick with 2.5 WAR and move on.

We need a 15.5 WAR rotation, then, to feel pretty confident in a playoff run next season. Is this a bad time to mention that the D-backs staff is on a pace for 5.1 WAR?

Assuming fill-in starters are above replacement, we’re looking for about 15 wins from 5 pitchers. That’s kind of an unfair standard, as pitching WAR at FanGraphs is based on FIP, which, as noted above, does not give D-backs pitchers any credit for pitching in a tougher environment. So we’ll judge our D-backs pitchers on their D-backs numbers for this exercise, noting that “3 win season” is code for something like “3.5 win pitcher.” And through that lens, if a rotation member is not pitching to a 3.0 WAR season, he’s not bringing up our average. We need the space above 3 wins for the better pitchers’ totals to make up for any performances that fall under 3 wins.

3 wins is hard. Last year just 40 pitchers reached that threshold, although there are a handful that surpassed 2 WAR with 20 or fewer starts, etc. Maybe 3 wins is code for “top 50 quality starter.” By all rights, any given team might have just two of those guys — so gaining some breathing room from the front end of a rotation is not just helpful, but maybe required. And that makes things very difficult for this team. In 2001, Randy Johnson (9.7 WAR) and Curt Schilling (7.2 WAR) led all of baseball in pitching WAR. The D-backs staff finished with 19.6 WAR, meaning the staff averaged about 1 win from each of the rotation’s other three slots. That’s not going to happen in 2016, sadly, but the team does have a couple of guys who might beat that 3 win mark.

The Current Staff

The first is Patrick Corbin. As you read yesterday, the man is back throwing like an above-average pitcher. That’s a good thing, because in Corbin’s full season in 2013, he was part of the solution. To put it in our pitching WAR terms, he finished at 3.5 WAR — helpful with some extra room to spare, but not so helpful that you could pair him off with a 2-win pitcher and be on track for 15 wins from the rotation. As noted too many times here, maybe, things tailed off badly at the end (32 ER in last 36 IP for an 8.00 ERA; 47 ER in his first 172.1 IP for a 2.45 ERA).

This team is not the Yankees, or the Dodgers. There’s no way to come close to guaranteeing a playoff berth, which means not acting like a guarantee is the goal. It’s about putting the team in a position to make the playoffs if things break somewhat in the team’s favor. To that end, let’s box up Corbin as a 4-win pitcher, a pitcher of that caliber. If you say there’s no way he can reach 4.5 wins, I’ll call bull on that — that’s the pace he was on in 2013, when he tallied 2.6 WAR in his first 19 starts (the “first half”). 4 wins is bullish, but not unreasonably so.

4 wins also doesn’t give us too much in the way of margin for error in the other rotation spots. Robbie Ray has pitched to 1.5 WAR in 14 starts, less than a half season — and if he were to, say, learn a hard slider and use it in place of the highly visible and eminently hittable looping hangerball he still runs out there now, his ceiling could be higher. Going bullish yet again, it’s a stretch but not too far a stretch to put Ray in the 3.2 WAR area, or at least, above our 3 win threshold.

That’s 7.2 wins from two spots, leaving 7.8 for the final three. That’s not easy, friends.

Put one single 1 WAR starter in the remaining mix, and you end up needing two more Robbie Rays in order to get to 15 WAR from the rotation. Put differently, you’d need to have both Corbin and Ray among the top 30-40 starters, and then add two more 30-40 ranked starters. That’s next to impossible given the current supporting cast:

  • Rubby De La Rosa has pitched to a 0.3 WAR in 24 starts so far this year. fWAR is based on FIP, which might penalize RDLR more than the other pitchers — his 3.92 SIERA is pretty far away from his 4.63 FIP, which is atrocious. It’s hard to know if we would get Bad Rubby or something more like the flashes of brilliance we’ve sometimes seen. Any result next year between 0.0 WAR and 3.0 WAR would not shock me. He may not occupy a rotation spot all year if he’s veering toward zero, so maybe we can put it at 1.5 WAR. I’m not sure whether that’s the weighted average of the scenarios, or the most likely scenario, or what.
  • Chase Anderson just got demoted, and he’s not a sure thing to be in the rotation even at the start of the season in 2016. For what it’s worth, though, Anderson has the second-highest WAR total on the staff so far this year (behind only Ray). 1.0 WAR this season makes 1.5 WAR seem pretty safe, especially with 0.7 WAR in just over a half season last year. He does what he does nearly every time out, and sometimes he gets burned. He’s a very big step above replacement, but it’s hard to see how he’d suddenly rocket his way past 2 WAR (or under 1).
  • Jeremy Hellickson is the subject of a piece running tomorrow, so return here to see if you agree with an assessment that puts Hellickson in the 1-1.5 WAR range. He’s been Not Bad and he’s been Pretty Bad, but he’s fallen far short of the 3-win threshold.

7.8 WAR needed from the last three spots, and we might only count on 3-5 wins from this crowd of three pitchers. If things go fairly right, this rotation might end up at 11.2 WAR, and given our other assumptions, that’s just good enough to have the team finish around 84-78. That’s a solid season and it would be fun to hang out on the summit of Mount Five Hundred, but that’s a low-probability (but some-probability) playoffs-caliber team.

Getting the Rotation to 15 WAR

RDLR, Anderson and Hellickson are not the only candidates for the back end of the rotation, even working only from the organization right now. Aaron Blair may soon get the call with the news that Zack Godley is headed to the bullpen (in place of Anderson on the 25-man). From what I understand, we might be able to shake a 2 WAR performance out of him next year (and he’s already got the innings built up), and that would be a pretty good outcome. It would also offer an upgrade. Godley himself could conceivably be a better option than Hellickson or others; he acquitted himself well earlier this season, but the doubts I had after his first start that what he was doing could keep working are doubts that remain now. I’d land with embracing a good thing and keeping Andrew Chafin in the bullpen, but his excellence this season could at least put him in line for a rotation tryout in the spring. And if Archie Bradley is able to throw, he might warrant a spot purely for upside reasons. He was doing exactly what Godley was doing, pitching down relentlessly. Bradley’s approach and arm may not work next season, but if it does, you could see him anywhere between 1 WAR and 3 WAR over a full year.

Among the D-backs’ options for the rotation this season, the one with the best major league season as a starter is: Daniel Hudson, who spun a 4.6-win season in 2011. He can’t and won’t repeat that 222 inning performance next season, not with the strong likelihood that he’ll be four and a half years removed from throwing more than 70 innings in a season once spring training starts in February. He does offer upside, though. If he could pitch a half-season of 4-win quality, with someone like Blair filling in as a 2-win guy for the other half of the season — that would meet the 3-win threshold. It looks very likely that the team will need to make sure no value slips through the cracks, that it’s not taking on water anywhere in the rotation. This could be an upgrade that makes sense.

Bottom line, getting the rotation to 15 wins is about two questions:

  1. Upgrade from within the organization, or without?
  2. Upgrade the front of the rotation, or the back?

These are questions to which we will return frequently over the next eight months. Note, though, that with respect to the second question, there is one major difficulty that should have become obvious in discussing the current back and internal candidates: you can’t guarantee you’re going to get it right. Maybe Blair would be a half win better than Hellickson, but we can’t know for sure. Maybe RDLR should be slotted in the bullpen in favor of an extended tryout for Zack Godley, but we just don’t know who would be better. You can’t line up these six or seven candidates, and pick the best three — because their identity would be impossible to suss out in an error-free way. These guys are human, and adjustments are not only possible but necessary. The same lesson goes for picking up third-tier options via trade or free agency, where we might also deal with the wild card of how they would adjust to Arizona.

It’s possible to upgrade the back end in such a way as to get the rotation over the 15-win hump. It’s also possible that the position players will reach 26 WAR instead of 23, and the 12-win hump is much more attainable with current options, as it allows for at least one big mistake. The bullpen still offers an area for easy upgrade, although variability among relievers is at least as much an issue as the wait-but-which-one conundrum offered by the back end of the rotation.

It may be, though, that upgrading the front end is the only way to minimize the number of things that must go right in order for the D-backs to reach the playoffs next year. Add a 5-win pitcher and get 7.2 wins out of Corbin and Ray, and suddenly it doesn’t really matter who mans the back end of the rotation — the current options can scrape together 3 wins out of two spots with ease. Add a 3.5 win pitcher, and you’re getting about 11.5 wins out of the top three spots (or planning for that, anyway). Things are tight again, as you’d need at least one more 2-win performance to make it all work. It’s going to be close, friends. But just as Ray was a surprise this year, there are still many ways for these players — and this front office — to surprise us again.

18 Responses to The D-backs Rotation: How Good is Good Enough?

  1. Dave-Phoenix says:

    With the D-Backs and just about every other MLB team going after the few TOR pitchers available, the D-Backs have to prepare themselves for the possibility on not getting any of those guys.

    The next best thing to do is to fill up the rotation with five #3 starters, by adding a couple #3 starters during the off-season and ensuring that the current 4-5 starters improve or are replaced. I’m guessing this will be the D-Backs plan B.

    Five #3 starters may give the D-Backs the additional 10-15 wins needed to make the playoffs. Its not necessarily a World Series winning formula, but if the D-Backs make the playoffs in 2016, they may attract better free agent pitchers in 2017…

    • Ryan P. Morrison says:

      I hear you, but I wonder if this is the type of thing where semantics can lead us astray.

      What is a #3 starter, I guess? Because if it’s anything less than a 3-win pitcher, it looks like that would have the team falling short. And in terms of the guys currently in the org, only Corbin and Ray are guys I feel good about getting over 3 wins, even if there are quite a few guys who, with a little luck, could be 2 win pitchers.

      If we’re defining a #3 as a break-even guy on a playoff staff (at least for this team?), then #3 means three wins. That makes guys like Gio Gonzalez and Tyson Ross and Hisashi Iwakuma #3 pitchers… and I don’t see how the D-backs are going to get three of those guys to put with Corbin and Ray.

      I love the strategies that mean picking up value on the margins, and I don’t feel like I have or am even leaning strongly toward one answer over the other. TOR means fighting with a lot of other teams, and it would be expensive as all hell, but it also might have the fewest moving parts, and therefore lower transaction costs. If RDLR and Anderson can’t be part of a 5-man roto of #3s, but have some real value despite that, I’m not sure we can bank on cashing them out in trades. It’s nice to have this depth of 2-win guys, but maybe the way to take advantage of that is to expose the team with the high price for a #1 or at least a Corbin-esque high #2.

      • Ryan P. Morrison says:

        Just working this out out loud:

        if rotations had just three pitchers, and we had one 4-win guy and two 2-win guys, but we needed to get to 10 wins, the options would be:
        pay a high price for a 4-win guy, so the mini-roto were 4, 4, 2
        replace the 2-win guys with 3-win guys, so the mini-roto were 4, 3, 3

        Even if buying another 4-win guy in this fake scenario were very expensive, the price of a 3-win guy is still significant. I’m just wondering if the lost value of the guy(s) who is/are bounced tips the scales. Maybe you could trade one 2-win guy, but it might be hard to trade both of them.

      • Dave-Phoenix says:

        It varies by team what is considered a #3 starter.

        I guess I’m just saying make each of the 5 rotation pitchers better than this year.

        To be honest, this year’s D-Backs rotation was was already built this way. There were no big name TOR pitchers, but the D-backs made sure they upgraded the entire rotation from 1-5, compared to last year. For the most part, the D-Backs did that. RDLR and Ray are much better than what was at the top of the rotation last year (Miley and Cahill). So if we insert a pitcher who is better than than RDLR, and Ray and add a 100% healthy Corbin into the mix, you’ve now push RLDR and Ray into the 3-4 spot in the rotation. Add a second pitcher of that caliber and RLDR and Ray are the 4-5 starters. That looks pretty good, when you look at the total package.

        • Ryan P. Morrison says:

          If #3 starter only means something in the context of specific teams, it’s probably not that helpful for us. Maybe that’s the answer in general with these… and we can probably just move on to “wins” (with Ben’s caveat).

          I’m on board: there are multiple ways to make the rotation better. That’s a great thing, because it means you can just pick the best opportunities regardless of what they are, rather than do the best version of something in particular, which sometimes means settling (like it would if the team had to sit on a certain type of player in the draft).

          I’m not sure the numbers are with you on RDLR, but I’m not saying the jury is out either way.

          Makes sense to me. Add as high as you can, push people down. If the price is way too high for TOR because that’s what everyone wants, then raise your threshold for what you’re willing to pay to add one or two 3-win pitchers, the kind that slot in 3rd frequently on playoff teams.

          It’s going to be interesting to see how Jeff’s piece tomorrow adds to this discussion.

  2. Ben says:

    Bref has the Dbacks with 23.3 bWAR, which extrapolated out brings the team to 32 WAR for this season. The main difference between fWAR and bWAR so far has been in how it values Goldy and Pollock’s defensive contributions. I so far have agreed more with bWAR in that aspect so far this year.

    If we were more like a 28+ WAR team next year that would make things significantly easier for sure.

    • Ryan P. Morrison says:

      Hey Ben — There are probably some small differences other than the main change in methodology, but you’re right — the main difference is about defense. Basically, it’s how much credit you give to the pitcher for outs made in play.

      The way I understand it, everything above should theoretically work exactly the same, just that the numbers were different. Giving more credit to the position players for defense means that there’s less WAR up for grabs for the pitchers. We’d just swap out the win total names or something like that.

      • Ben says:

        The comparison breaks down like this:


        POS: 23.3 / 32.0
        PIT: 5.8 / 8.0


        POS: 18.9 / 25.9
        PIT: 5.5 / 7.6

        So bref is giving more credit to both our position players and our pitchers. I’m aware that bWAR uses RA9 instead of FIP, but the difference in how position players and pitchers are valued in each system aren’t that large. So far in 2015, bWAR has position players holding 59% of the overall WAR, while in fWAR they hold 57%. While this is signifant to some degree it won’t explain the ~6 WAR shift with our position players (explains about .5 WAR of it). Plus as I said above bref gives more value to our pitchers as well.

        Basically in bref we get 40 WAR instead of 33.5 WAR out of the possible 1000 WAR each. Now I have been observing this difference is mainly because 1) several hitters are valued differently defensively (Goldy, Inciarte, etc.) and 2) overall our pitchers are outperforming their FIPs.

        Generally I think fWAR is more accurate, but I think taking into consideration bWAR to some extent is fine. This season I have tended to agree more with bWAR in how the system is valuing Goldschmidt and Pollock especially (I think Goldy provides positive value with the glove, not negative like fWAR says).

        • Ryan P. Morrison says:

          Ben —

          Thanks for all this. After I responded to your earlier comment, Jeff and I kicked off a conversation about whether he and I should switch to bWAR as our default on the site. We’re still kicking that around. It’s a little harder to move in the directions we like moving there, but it might be worth it.

          In terms of which position player numbers to trust this year, we have one other cross check: the team’s actual record. Prorate the 47.7 base number of wins for this point in the season, and bWAR has the team at 63.9 wins, fWAR 59.2 wins. B-R’s number seems a little more off the team’s current 58-60 record. I would trust run differential at least as much, though, and since the team is +31 at the moment, we’d expect to be something like 60-58 or 61-57. Doesn’t decide anything either way.

          I looked at the previous four seasons, too. Virtual tie, but frequently off in either direction.
          2011: 94 wins, 90.5 per fWAR, 82.7 per bWAR
          2012: 81 wins, 84.9 per fWAR, 83.5 per bWAR
          2013: 81 wins, 78.4 per fWAR, 77.9 per bWAR
          2014: 64 wins, 68.6 per fWAR, 66.1 per bWAR.

          It’s not weird that they’re off like this year by year, but I’m also kind of satisfied that it’s not like one or the other treats the D-backs incorrectly for some reason. I dunno. I like that bWAR rewards pitching success, and I also like that it has more variability player to player — fWAR is so much more related to playing time. What I don’t love, though, is that it rewards players for defense, but it also credits pitchers with some of the benefit of that defense. Sometimes that’s right (e.g. Ziegler), sometimes probably not, at least when we’re working on team totals. Might be some double counting, which then waters down other kinds of value.

          No matter what, though, I do now wish I had gone down this road before publishing. I might circle back and do the same exercise with bWAR in the roundup on Friday. Thanks for making the point.

  3. rye says:

    Great, great piece. I’m very much in favor of going all in on David Price and his 4.5-6.0 WAR. IMO, this is the surest way to the playoffs. Assuming he could be had for $30M AAV over 7 years and being optimistic that he would be willing to sign with the D-Backs over the competition if given the best offer, I think it makes good financial sense as well. Two 3 WAR pitchers are most likely going to cost nearly $20M AAV over 5 years anyway. As much as this season should be taking advantage of volatility in its search for 3 WAR pitchers on the cheap, next season should move forward with some stability in the staff. If the only thing this season yields is a 3-win pitcher in Robbie Ray, I’ll consider it a rousing success. If the front-office believes it can get 15 WAR out of its rotation by adding Maeda and Leake I think we’re in for big disappointment.

  4. […] for Robbie Ray. As rye put it in the comments on Wednesday, “[i]f the only thing this season yields is a 3-win pitcher in Robbie […]

  5. OJ says:

    I think next year we see an aggressive spending spree.

    my guess is they miss on price, cueto and greinke, so they settle for both samardijza and kazmir or something along the lines of a #3(Kazmir/Wei Yin-Chen/Gallardo) and an upside play #4 with potential to be a #2(Samardijza/Kenta Maeda/Fister/etc)

    giving us:
    1. Corbin
    2. Kazmir
    3. Samardijza
    4. Ray
    5. Anderson
    6. RDLR

    I think Stewart will make moves to deal some young pitching like bradley or Anderson to finish out the bullpen or swap projects to finish the rotation. Like I could see him overpaying for chapman or for a year of benoit from the pads

  6. JoAnne says:

    The D-Backs are a team that relies too heavily on one player.. The huge difference between this year and last year is Goldschmidt.. You saw what happened last year without him.. You can put the team in a vacuum and say “we need 15 WAR from our rotation” but without him they are toast.. They should by all means chase a TOR and I believe they should also pickup a cheap candidate for a bounce back like Fister.. They also need to pick up an additional thumper that they can put into the middle of the lineup as insurance for Goldie.. Plus, another catching option would probably be a good idea since you never know which Castillo is going to show up.. Salty could be a solid option for a bounce back season but I think he is just better suited for the AL.. I would also suggest trading one of their excellent corner outfielders for a quality starter or starting prospects.. O’Brien is waiting in the wings in Reno and he could provide some nice power to add to the middle of the lineup.. All said, of course the D-Backs need to upgrade their pitching staff majorly, but they also need to tweak the lineup a bit..

  7. […] week in setting a benchmark for wins needed from the rotation, I used a placeholder for wins we could expect from the bullpen: about 2.5 above replacement. It […]

  8. BobJ says:

    Seems to me you are putting a ton of “hope” in Robbie Ray becoming a much better, much more consistent pitcher. He is still young and it may happen, but it seems much more likely that he will continue to be the exasperating lefty with a ton of potential that he has always been. I hope he can gain consistency but I am skeptical.

  9. […] to improve, and even if the team adds one big arm this offseason, that’s unlikely to get the rotation to 15 wins or more. That’s where a new coach comes in: there may still be pitching experiments in 2016, […]

  10. […] either. Steamer projects a 2.8 WAR total for Kazmir, assuming 200 innings; if the team really does need about 15 WAR from its starters next season, that total would be helpful, but only if it came in lieu of a worse performance. Still […]

  11. […] to get it done, mostly because his friends aren’t very good. That’s not his fault, but as Ryan examined first, then I discussed second, there really was a target magnitude for improvement. The team […]

Leave a Reply

Your email address will not be published.