Jump to content


Yo! You're not logged in. Why am I seeing this ad?

Photo

The Incredibly Interesting Davenport Peak Hitting Translations


  • Please log in to reply
35 replies to this topic

#1 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 22 July 2010 - 07:28 AM

The Sox have promoted guys so aggressively that it's hard to get a handle on how guys are doing. Clay Davenport's Peak Translations are the most ambitious effort I know of to adjust for age relative to league, so I always find them worth looking at.

He has very clearly changed his Peak Translation formulas since last year; while they used to be too rosy for guys in general, they are now progressively more pessimistic as you go lower in the minors. Will Middlebrooks projects to have a peak TAv (Eqa) of .257, which is below MLB average -- but he's 4th in the league after Eric Hosmer, Lavarnway, and Derek Norris.

So I've re-scaled all the AA, A+, and A numbers to match the AAA numbers (where the average player projects to have a position-adjusted .232). And I've added a positional adjustment. Here's the very interesting ranking, which doesn't include defense or luck (two tweaks I may make later).

The numbers appear to be a few days out of date, but they give you an idea of what to make of some of the tough-to-read guys.

Kalish is ranked as a RF; as a CF he's .309. (Hazelbaker as a CF would be .274, and he can definitely play there.)

Davenport Peaks, Position-Adjusted
Name Peak
Ryan_Kalish .298
Ryan_Lavarnway .298
Will_Middlebrooks .282
Lars_Anderson .281
Anthony_Rizzo .276
Yamaico_Navarro .271
Oscar_Tejeda .268
Luis_Exposito .265
Jeremy_Hazelbaker .263
Michael_Almanzar .261
Reymond_Fuentes .261
Daniel_Butler .260
Alex_Hassan .257
Jose_Iglesias .256
Daniel_Nava .256
Che-Hsuan_Lin .255
Christopher_McGuiness .252
Nate_Spears .250
Tim_Federowicz .249
Peter_Hissey .248
Derrik_Gibson .246
Mitch_Dening .242
Christian_Vazquez .242
Ronald_Bermudez .238
Niuman_Romero .237
Ray_Chang .231
Chih-Hsien_Chiang .230
Ryan_Dent .229
Bubba_Bell .225
Dusty_Brown .222
Josh_Reddick .221
Jorge_Padron .217
Mark_Wagner .215
Zach_Gentile .213
Gil_Velazquez .212
Tug_Hulett .210
Jonathan_Hee .203
Reynaldo_Rodriguez .203
Aaron_Bates .200
Shannon_Wilkerson .197
Jorge_Jimenez .188
Drew_Hedman .188
Vladimir_Frias .117


Some Lowell numbers:

Davenport Peaks, Position-Adjusted
Name Peak
Jose_Garcia .282
Miles_Head .262
Kolbrin_Vitek .260
Felix_Sanchez .260
Brandon_Jacobs .258
Bryce_Brentz .202
Joantoni_Garcia .186
David_Renfroe .179

Edited by Eric Van, 07 September 2010 - 04:43 PM.


#2 ELMER FLICK

  • 238 posts

Posted 22 July 2010 - 08:04 AM

Fascinating stuff. Do you have the Davenport rankings before adjustment? It would be interesting to compare.

Looking through the rankings, most of them are not too far from what I would have expected. Three surprised me. I knew Hazelbaker was having a good season, but I had no idea it was that good. Iglesias, on the other hand, seemed to be doing well at the plate, better than most scouts expected, yet even with a position adjustment, he is only middle of the pack. And yet he is one place ahead of Nava, the other surprise.

The more aggressive promotion strategy also intrigues me. Is it a lesson learned from Clay Buchholz? I've seen several times in the press lately the assertion that, because he had never struggled in the minor leagues, he had a lot more trouble adjusting when he faced adversity in MLB. Or is it because they have so many high upside prospects that they feel compelled to challenge them, to get a quicker read on which are likely to succeed?

#3 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 22 July 2010 - 10:51 AM

Fascinating stuff. Do you have the Davenport rankings before adjustment? It would be interesting to compare.

They're available at BP, here.

Here's an interesting alternative ranking (with most guys below .240 omitted), which takes 1/3 (arbitrary guess) of the luck on balls in play as estimated by MinorLeagueSplits.com and adds or subtracts it to the above rankings. (It uses the estimation formula TAv = .4605 * OBP + .2254 * SA + .0151.)

Navarro is ranked as a 3B here, rather than as a SS (he loses .015).

Davenport Peaks, Position and Luck-Adjusted
Name Peak OBP Lu SA Lu Adj
Ryan_Kalish .298 .007 .009 .300
Ryan_Lavarnway .298 -.004 -.005 .297
Anthony_Rizzo .276 .031 .048 .285
Lars_Anderson .281 -.014 -.023 .277
Will_Middlebrooks .282 -.035 -.048 .273
Luis_Exposito .265 .018 .026 .270
Jose_Garcia .282 -.048 -.069 .270
Miles_Head .262 .017 .019 .266
Michael_Almanzar .261 .014 .018 .264
Daniel_Nava .256 .033 .048 .264
Che-Hsuan_Lin .255 .017 .024 .260
Yamaico_Navarro .256 .010 .014 .259
Nate_Spears .250 .028 .044 .258
Oscar_Tejeda .268 -.044 -.060 .257
Alex_Hassan .257 -.003 -.003 .257
Jeremy_Hazelbaker .263 -.025 -.042 .256
Daniel_Butler .260 -.016 -.023 .256
Reymond_Fuentes .261 -.023 -.029 .255
Christopher_McGuiness .252 -.005 -.006 .251
Brandon_Jacobs .258 -.031 -.044 .250
Kolbrin_Vitek .260 -.040 -.066 .249
Tim_Federowicz .249 -.003 -.004 .249
Jose_Iglesias .256 -.045 -.054 .245
Derrik_Gibson .246 -.007 -.011 .244
Peter_Hissey .248 -.028 -.037 .241
Felix_Sanchez .260 -.081 -.102 .240
Bryce_Brentz .202 .055 .096 .217


#4 SoxScout


  • SoSH Member


  • 28,875 posts

Posted 22 July 2010 - 11:16 AM

Awesome stuff. What does Lavarnway look like as a 1B/DH?

#5 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 22 July 2010 - 03:01 PM

Awesome stuff. What does Lavarnway look like as a 1B/DH?

Catchers moving to 1B lose .034. He's just another guy as a 1B, an elite prospect as a C.

Here's the adjustment table, which is based on the TrA of regular players, not everyone who plays the position:

C +.017
1B -.017
2B +.004
3B -.001
SS +.014
LF -.008
CF +.006
RF -.005
DH -.017

#6 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 31 August 2010 - 11:10 AM

As of sometime in the last week or two, Clay completely revised or corrected his algorithms, as the peak projections of guys who had already been promoted from a level changed by more than the usual .001. It's possible that the projections have been merely improved via some new insight, but (since the algorithm changed a ton from last year) it's also possible that there was a bug in the earlier version.

Despite my curiosity I am resisting the temptation to completely redo my spreadsheet since the season will be over in a week. But look for final numbers on September 7th, probably early in the morning. :)

In the meantime, though, Rizzo is leading the EL (non-position adjusted) after being 2nd in the CL, where Tejeda is now 2nd. Fuentes is 7th in the SAL. Kalish and Lavanway are top 10 guys, too.

#7 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 07 September 2010 - 05:01 PM

Here are the final numbers, and I find them utterly fascinating (hence the change to the thread title).

The question of properly adjusting for age relative for ml players to level is one of the thorniest in sabermetrics. How much air should we take out of Jeremy Hazelbaker's numbers? How much pizazz should we give to Reymond Fuentes instead?

Clay Davenport's Peak Translations are the only comprehensive attempt that I know of to answer those questions. Of course, they should not be taken as gospel, but they should absolutely be used to inform our prospect ratings.

His raw numbers are available at Baseball Prospectus (under Minor League True Average) and you can find stats for the NYP and GCL, even though they are not linked to on the page, by hacking the URL (you can also put in a team code such as BOS to get all the stats for that team).

I have made two adjustments to Clay's numbers.

First, the average peak projection in Clay's system drops as you go down the minors. It's .236 in the IL, .217 in the EL, .198 in the CRL, .186 in the SAL, .171 in the NYPL, and .161 in the GCL. That reflects the reality that guys farther from the bigs are less juicy as prospects than guys in the high minors, but we include that knowledge when we rank prospects anyway. We would really like a set of numbers where the best player in any league had the same peak projection as the best in any other league regardless of level, and ditto for the average player. That tells you how the guy hit relative to his peer group, age and level adjusted. So I have normalized every league to the .236 TAv of the IL.

Second, I've added a positional adjustment: +.017 for C, +.014 for SS, +.006 for CF, +.004 for 2B, -.001 for 3B, -.005 for RF, -.008 for LF, and -.017 for 1B. These are based on the average TAv of MLB regulars at each position.

Here, without comment, are the rankings. To say there are some surprises is an understatement (Pete Hissey lives!)

Final Position and Level-Adjusted Davenport Peak Hitting Translations
Name Age Tm Pn PA TAv
Ryan_Kalish 22 BOS CF 447 .302
Ryan_Lavarnway 22 PME C 550 .297
Reymond_Fuentes 19 GRN CF 420 .295
Anthony_Rizzo 20 PME 1B 626 .293
Jose_Vinicio 16 GCL SS 172 .291
Oscar_Tejeda 20 SLM 2B 560 .290
Jose_Garcia 19 GRN SS 220 .283
Keury_De La Cruz 18 GCL CF 224 .282
Michael_Almanzar 19 GRN 3B 542 .282
Lars_Anderson 22 BOS 1B 543 .279
Yamaico_Navarro 22 BOS SS 459 .277
Che-Hsuan_Lin 21 PME CF 555 .276
Daniel_Butler 23 SLM C 382 .276
Will_Middlebrooks 21 SLM 3B 485 .274
Jose_Iglesias 20 PME SS 284 .273
Peter_Hissey 20 SLM CF 511 .271
Christian_Vazquez 19 GRN C 303 .268
Luis_Exposito 23 PME C 536 .267
Felix_Sanchez 20 GRN CF 254 .266
Josh_Reddick 23 BOS CF 508 .266
Brandon_Jacobs 19 LOW LF 267 .261
Kolbrin_Vitek 21 GRN 3B 287 .259
Jeremy_Hazelbaker 22 GRN CF 511 .259
Alex_Hassan 22 SLM LF 409 .257
Nate_Spears 25 PME 2B 605 .256
Daniel_Nava 27 BOS RF 456 .253
Derrik_Gibson 20 GRN SS 567 .253
Jason_Thompson 19 GCL 2B 193 .253
Henry_Ramos 18 LOW RF 184 .252
Chih-Hsien_Chiang 22 PME RF 480 .252
Ryan_Dent 21 SLM SS 427 .251
Sean_Killeen 23 GRN C 123 .250
Heiker_Meneses 18 GCL 3B 227 .250
Josue_Peley 22 LOW C 116 .247
Mitch_Dening 21 SLM RF 508 .247
Tim_Federowicz 22 SLM C 456 .246
Ray_Chang 26 PME 3B 497 .244
Ronald_Bermudez 22 SLM CF 480 .242
Miles_Head 19 LOW 1B 273 .242
Bubba_Bell 27 PAW RF 392 .240
Dusty_Brown 28 PAW C 288 .233
Wilfred_Pichardo 20 GRN RF 242 .233
Gustavo_Molina 28 PAW C 126 .232
David_Renfroe 19 LOW 3B 227 .230
Luke_Yoder 22 GCL LF 196 .229
Moko_Moanaroa 20 GCL LF 122 .228
Joantoni_Garcia 19 LOW 2B 236 .227
Kenneth_Roque 20 GRN 2B 188 .226
Oscar_Perez 18 GCL C 91 .225
Seth_Schwindenhamm 18 LOW LF 123 .223
Mark_Wagner 26 PAW C 151 .221
Reynaldo_Rodriguez 24 GRN 1B 328 .220
Gil_Velazquez 30 PAW SS 259 .218
Jorge_Padron 23 PME LF 327 .216
Aaron_Bates 26 PAW LF 489 .216
James_Kang 22 LOW 2B 165 .215
Jason_Place 22 SLM RF 110 .214
Shannon_Wilkerson 21 GRN LF 294 .214
Bryce_Brentz 21 LOW RF 288 .214
Ryan_Khoury 26 PME 2B 317 .213
Niuman_Romero 25 PAW 2B 388 .212
Jonathan_Hee 24 SLM 2B 315 .207
William_Holmes 22 GCL RF 144 .206
Luis_Segovia 23 SLM SS 136 .206
Zach_Gentile 23 GRN 2B 381 .205
Matt_Sheely 23 PME RF 270 .205
Trygg_Larsson-Danforth 23 GCL 1B 170 .203
David_Mailman 21 SLM LF 93 .193
Jorge_Jimenez 25 PAW 3B 370 .186
Vladimir_Frias 23 GRN SS 333 .184
Drew_Hedman 23 SLM 1B 353 .181
William_Vazquez 25 PME C 163 .180
Chia-Chu_Chen 21 LOW C 86 .164


Itty Bitty Sample Size Appendix
[td=*][color="#000000"]C[/color] [/td][td=*][color="#000000"]45[/color] [/td][td=*][color="#000000"].224[/color] [/td][td=*][color="#000000"]Jayson_Hernandez [/color] [/td][td=*][color="#000000"]21[/color] [/td][td=*][color="#000000"]LOW [/color] [/td][td=*][color="#000000"]C[/color] [/td][td=*][color="#000000"]68[/color] [/td][td=*][color="#000000"].215[/color] [/td][td=*][color="#000000"]Juan_Carlos_Linares[/color] [/td][td=*][color="#000000"]25[/color] [/td][td=*][color="#000000"]PME [/color] [/td][td=*][color="#000000"]RF[/color] [/td][td=*][color="#000000"]47[/color] [/td][td=*][color="#000000"].195[/color] [/td][td=*][color="#000000"]Nick_Robinson [/color] [/td][td=*][color="#000000"]22[/color] [/td][td=*][color="#000000"]LOW [/color] [/td][td=*][color="#000000"]2B[/color] [/td][td=*][color="#000000"]70[/color] [/td][td=*][color="#000000"].193[/color] [/td][td=*][color="#000000"]Bryan_Peterson [/color] [/td][td=*][color="#000000"]20[/color] [/td][td=*][color="#000000"]PME [/color] [/td][td=*][color="#000000"]RF[/color] [/td][td=*][color="#000000"]61[/color] [/td][td=*][color="#000000"].190[/color] [/td][td=*][color="#000000"]Roberto_Ramos [/color] [/td][td=*][color="#000000"]21[/color] [/td][td=*][color="#000000"]GCL[/color] [/td][td=*][color="#000000"]RF[/color] [/td][td=*][color="#000000"]42[/color] [/td][td=*][color="#000000"].155[/color] [/td][td=*][color="#000000"]Trey_Lucas [/color] [/td][td=*][color="#000000"]22[/color] [/td][td=*][color="#000000"]GCL[/color] [/td][td=*][color="#000000"]C[/color] [/td][td=*][color="#000000"]3[/color] [/td][td=*][color="#000000"].149[/color] [/td][td=*][color="#000000"]Zach_Kapstein [/color] [/td][td=*][color="#000000"]18[/color] [/td][td=*][color="#000000"]GCL[/color] [/td][td=*][color="#000000"]C[/color] [/td][td=*][color="#000000"]9[/color] [/td][td=*][color="#000000"].149[/color] [/td][td=*][color="#000000"]Drew_Dominguez [/color] [/td][td=*][color="#000000"]23[/color] [/td][td=*][color="#000000"]SLM [/color] [/td][td=*][color="#000000"]2B[/color] [/td][td=*][color="#000000"]41[/color] [/td][td=*][color="#000000"].081[/color] [/td]
Name Age Tm Pn PA TAv
Leonel_Escobar 19 SLM C 77 .276
Kendrick_Perkins 18 RSX RF 9 .271
Sean_Coyle 18 GCL 2B 12 .271
Maykol_Sanchez 22 GCL C 28 .257
Adalberto_Ibarra 23 SLM C 53 .256
Boss_Moanaroa 18 GCL 1B 69 .250
Jordan_Sallis 21 GCL 2B 20 .230
Roberto_Reyes 19 GCL 3B 23 .226
Carson_Blair 20 LOW


OK, I lied: I can't help noting that Henry Ramos was .279 before his promotion.

Next I'm going to see if minorleaguesplits.com's luck adjustments actually do what they're designed to do, and if they do, I'm going to toss those into the mix.

Edited by Eric Van, 07 September 2010 - 05:03 PM.


#8 Detts

  • 726 posts

Posted 07 September 2010 - 05:17 PM

Eric,

Did you consider Vitek as a Greenville guy or a Lowell guy? Only 40 of his AB's were in Greenville this year.

#9 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 07 September 2010 - 09:59 PM

Eric,

Did you consider Vitek as a Greenville guy or a Lowell guy? Only 40 of his AB's were in Greenville this year.

Oops, meant to explain that: all numbers combine all play at all levels with two exceptions: rehab assignments are only included if they would improve the overall numbers, and brief super-promotions to cover injury gaps like Dan Butler's are excluded. The listed team is simply the team the player finished the season with.

Vitek's .259 is .258 with Lowell and .266 with Greenville. Kalish was .310 in AA, .297 in AAA, .294 with Boston. Lavarnway was .284 with Salem and .320 with Portland. Rizzo was .280, then .297, while Lars was .304, then .276. I already mentioned Henry Ramos, whose .087 in 26 PA with Lowell dragged his number from .279 down to .252.

#10 someoneanywhere

  • 2,912 posts

Posted 08 September 2010 - 07:28 AM

For me, there's no one bottom-feeding who surprises me -- but there are a couple on the top end. If Dan Butler is TAVing at that tune, he's a prospect. He is already an advanced defensive catcher -- ahead of both Expo and Lavarnway and Fedex in my book -- and if you buy the conventional wisdom that catching prospects mature later than other every day prospects, I think you have to consider him in your mix. The other is Almanzar. As most of you know I'm pro-Mike. But most of that was projection and tools and, especially, the chance for big-time power. That there is some basis for hope beyond what the eyes see is encouraging. The same with Fuentes. You can see it, and you can salivate on it, but it's something else to note that the translations have him pegged that high.

#11 Koufax

  • 1,428 posts

Posted 08 September 2010 - 08:19 AM

Incredibly interesting that Jose Iglesias is not ranked higher. Not having paid attention to Reymond Fuentes, I will start doing so now. Thanks for presenting this data.

#12 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 08 September 2010 - 11:03 AM

Incredibly interesting that Jose Iglesias is not ranked higher. Not having paid attention to Reymond Fuentes, I will start doing so now. Thanks for presenting this data.

The thing that makes these translations interesting is that Clay has looked at how the separate hitting components project. BABIP doesn''t project well. Iso and IsoD, especially at young ages, project well, and I suspect speed does as well. Iglesias is merely good here because his numbers are very BABIP-dependent.

In their first years these translations (IIRC) had Lavarnway way, way ahead of Fed-X even though the latter had better numbers, playing at the same age for the same team. Ryan had the Iso and IsoD, Fed-X was all BA. It took exactly one year for those translations to come up bingo.

I wonder whether this latest version overrates youth -- Fuentes, Hissey, and Almanzar are all getting big boosts for being young for their level. But as I said they are the only attempt to objectively determine how much of a boost should be given for that, and I think it's safe to say that even if the translations are over-adjusting, that most prospect raters have at least Almanzar and Hissey too low. I have them at 31-32 and 38-40 respectively in the rankings I'm working on whereas SP has them at 43 and 53.

#13 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 08 September 2010 - 11:13 AM

For me, there's no one bottom-feeding who surprises me -- but there are a couple on the top end. If Dan Butler is TAVing at that tune, he's a prospect. He is already an advanced defensive catcher -- ahead of both Expo and Lavarnway and Fedex in my book -- and if you buy the conventional wisdom that catching prospects mature later than other every day prospects, I think you have to consider him in your mix.

SP has just bumped him up to 39, and if that's not right it's only a few notches too high.

"This guy's been unbelievable – the way he's run the pitching staff, his energy, the confidence he has, his maturity even for his inexperience in professional baseball," said Hazen. "He's a good sign. There are a lot of guys who walk out of there and say, 'I don't know when or how, but Dan Butler is going to play in the big leagues someday.'"

"Look at Daniel Nava. He went undrafted. You look at Dan Butler, a kid who played at Arizona but never played, backed up, and now he's getting an opportunity to play and look what he's doing. He's played himself into being a prospect. These stories motivate the hell out of people and it's awesome to see," said Red Sox minor league catching instructor Chad Epperson. "At some point in time, [Butler] will be a big leaguer."


Full story,

#14 Detts

  • 726 posts

Posted 08 September 2010 - 12:38 PM

Butler and Nava are a good comparison.

If I remember correctly, Butler is listed at 5'10", however I'm guessing that height was measured in his cleats on a sidewalk, and then rounded up.

He's another guy trying to overcome the 'you have to be big to be a catching prospect' hurdle.

#15 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 08 September 2010 - 03:18 PM

Next I'm going to see if minorleaguesplits.com's luck adjustments actually do what they're designed to do, and if they do, I'm going to toss those into the mix.

Well, I've only got 50 pairs of player seasons in the database so far, but it's very clear that "luck" (the difference between BABIP and expected BABIP based on GB/ LD / FB breakdown) for minor leaguers is largely a skill.

The correlation from year to year for OBP is .43.

The correlation for "luckiness" on OBP (luck-adjusted OBP minus real OBP -- it's going to be the same as the BA differential) is ... .44. Even with just 50 pairs of seasons that has a 1 in 1000 chance of being random.

However, as you might expect, there does appear to be some luck that's being measured. If you want to predict a player's OBP it seems like you can do a better job by tossing in some of last year's luck differential. I need to load up quite a bit more data before I can even make a guess as to how much of the luck to count, though.

The really interesting question, though, is this: what does it mean if a player consistently has a higher or lower BABIP than expected?

Tejeda has been consistently better than expected ("lucky"), ditto Middlebrooks. Ellsbury was hugely "lucky."

Lin is the guy most consistently underperforming, also Almanzar. I looked at a handful of guys who have disappointed in MLB and most of them were "lucky" as prospects.

My guess is that being consistently "lucky" is a good sign, which is what you'd expect, since it means that your line drives, fly balls, and grounders are as a whole harder than ml average.. The question is whether being neutral or "unlucky" (Kalish, Rizzo and Lavarnway the last two years) is any kind of warning sign.

#16 Detts

  • 726 posts

Posted 08 September 2010 - 03:26 PM

Well, I've only got 50 pairs of player seasons in the database so far, but it's very clear that "luck" (the difference between BABIP and expected BABIP based on GB/ LD / FB breakdown) for minor leaguers is largely a skill.

The correlation from year to year for OBP is .43.

The correlation for "luckiness" on OBP (luck-adjusted OBP minus real OBP -- it's going to be the same as the BA differential) is ... .44. Even with just 50 pairs of seasons that has a 1 in 1000 chance of being random.

However, as you might expect, there does appear to be some luck that's being measured. If you want to predict a player's OBP it seems like you can do a better job by tossing in some of last year's luck differential. I need to load up quite a bit more data before I can even make a guess as to how much of the luck to count, though.

The really interesting question, though, is this: what does it mean if a player consistently has a higher or lower BABIP than expected?

Tejeda has been consistently better than expected ("lucky"), ditto Middlebrooks. Ellsbury was hugely "lucky."

Lin is the guy most consistently underperforming, also Almanzar. I looked at a handful of guys who have disappointed in MLB and most of them were "lucky" as prospects.

My guess is that being consistently "lucky" is a good sign, which is what you'd expect, since it means that your line drives, fly balls, and grounders are as a whole harder than ml average.. The question is whether being neutral or "unlucky" (Kalish, Rizzo and Lavarnway the last two years) is any kind of warning sign.


Could it be speed? In the minors defense overall isn't as good as the majors, so you would expect to turn more balls into hits if you can run fast...

#17 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 08 September 2010 - 03:49 PM

Could it be speed? In the minors defense overall isn't as good as the majors, so you would expect to turn more balls into hits if you can run fast...

Lin is fast, so I don't think it's speed.

Edit: this isn't quite right but I have to go eat a yummy Mom-cooked New Year's meal ... more later.

Looking at the player seasons so far ... hitters with high OBP have a very big tendency to have been "unlucky." So hitting the ball harder is simply something better hitters do.

So the cool question is whether we can use this to identify the actual lucky or unlucky guys. A good hitter with a lower than expected BABIP may have actually been unlucky.

The crappy thing is that I didn't put BA into this database and now I wish I had so that I could look at it and Iso separately. I may have to look up my 74 seasons again ....

And of course if I wanted to put in the separate LD, GB, FB data that would be even more informative, but that's a ton of work.

Edited by Eric Van, 08 September 2010 - 03:57 PM.


#18 Buzzkill Pauley

  • 4,866 posts

Posted 08 September 2010 - 04:06 PM

Could it be speed? In the minors defense overall isn't as good as the majors, so you would expect to turn more balls into hits if you can run fast...


I think the most valuable thing would be to see where the "luck" occurs vis-a-vis FB/GB/LD falling for hits.

If the luck is in line drives, then I can see the luck being a "hits the ball hard" type of thing. I don't believe one could easily make the case for BABIP data to reflect a "hit it where they ain't" level of superior bat control, as each batter is working on specific skills in the minor leagues, as well as trying to put up good numbers. So I would tend to think that luck on grounders and fly balls above the norm is reflective of, well, luck. Perhaps speed if it's a boost on grounders.

I tend to thin this is like fielding stats, where a greater sample size than a single season is needed to derive a reasonable projection from the data. To me that makes sense because there's a relatively limited number of contact events once they're broken down by type.

Or, frankly, it could be reflecting something totally different, like how much additional topspin the player's swing produces upon contact, causing line drives to sink and grounders to take weird bounces. If that's the case, then it definitely reflects a skill.

#19 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 08 September 2010 - 10:18 PM

Well, looking at the data more closely just leads to more confusion and a realization that I need much more data to make sense of it all.

The guys with the highest "expected SA" according to batted ball type (but which still counts all HR as HR, mind you) tend to have lower actual OBP and SA, that is, to underperform BA on balls in play. Guys with very low "expected SA" tend to have higher actual OBP and SA.

Looking at the 16 seasons in my database (so far) with the highest expected SA, 12 of them were "unlucky." Looking at batted ball type BABIP, the general tendency for these 16 guys is to be "lucky" on ground balls, "lucky" on line drives, and -- the one near constant -- very "unlucky" on fly balls. I would say that guys who hit the ball hard hit lots of home runs, tend to hit harder grounders and line drives, but hit a lot fewer bloop fly ball hits than guys with less power. Now, the system in use here does not report the same expected BABIP for everyone each year so it is already attempting to factor in some other elements. But clearly it could do a much better job.

The other thing that seems to be true is that a player's "luck" profile seems to be part of his makeup. Josh Reddick has been "lucky" on GB and "unlucky" on FB four straight years and "unlucky" on line drives three years out of four.

Here are the 16 seasons, the overall unlucky ones in red. Unfortunately, I coded the luck by batted ball type just + or - no matter how small the margin was (I should have coded 0 for small margins; Exposito's positive luck on FB is just 2 points).

Luck of Top Expected Sluggers
Name Year Exp Act Luck
Reddick 07 541 526 G+F-L-
Lavarnway 09 540 537 G+F-L-
Reddick 08 538 546 G+F-L-
Kalish 10 527 502 G-F-L+
Rizzo 10 527 477 G-F-L+
Lavarnway 10 512 503 G+F-L+
Anderson 08 507 520 G+F+L+
Exposito 08 507 508 G-F+L+
Reddick 10 502 461 G+F-L-
Nava 10 490 459 G+F-L-
Nava 09 488 533 G+F+L+
Chiang 09 486 418 G-F-L+
Reddick 09 485 446 G+F-L+
Spears 10 485 440 G+F-L-
Chiang 10 484 423 G-F-L+
Lin 07 477 411 G-F-L+


I'll look at the "lucky" non-sluggers next.

#20 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 11 September 2010 - 01:54 AM

I've now got a spreadsheet with every player in the minors. And I've discovered that, while my instincts were correct in thinking that the published Davenport Peak Transalstions were too tough on players in the lower minors, my method of correcting for this (assuming that the prospects at every level are equally good) actually over-corrected. If you take the published translations verbatim, players that were promoted a level tended to gain, on average, .006 of Peak Projection, which is clearly not right. With my fix, though, they tended to lose -.009. Taking 60% of Clay's figure and 40% of my figure yields a Peak Projected TAv which doesn't change when you get promoted, which is as it should be.

I haven't added my positional adjustments yet, so here are the top 20 hitting prospects in the minors regardless of position (I've thrown in the positional adjustment just FYI):

Top 20 Hitting Prospects, Corrected Davenport Peak Translations
Name TAv Org Pos Adj Lvl
Jesus_Montero .336 NYA DH? .319 AAA
Freddie_Freeman .325 ATL 1B .308 AAA
Eric_Hosmer .322 KC 1B .305 A+/AA
Mike_Moustakas .307 KC 3B .306 AAA/AA
Domonic_Brown .304 PHI RF .302 AA/AAA/MLB
Nicholas_Weglarz .304 CLE LF .296 AAA/AA
Anthony_Rizzo .302 BOS 1B .285 AA/A+
Lars_Anderson .295 BOS 1B .278 AAA/AA
Ryan_Kalish .293 BOS CF .299 AA/AAA/MLB
Alex_Liddi .292 SEA 3B .291 AA
Brandon_Belt .291 SF 1B .274 A+/AA/AAA
Chris_Marrero .290 WAS 1B .273 AA
Greg_Halman .288 SEA CF .294 AAA
Chris_Carter .287 OAK 1B .270 AAA
William_Myers .287 KC C .304 A/A+
Mike_Trout .287 LAA CF .293 A/A+
Matt_Dominguez .286 FLA 3B .285 AA
Wilmer_Flores .286 NYN SS .300 A/A+
Brett_Jackson .286 CHN CF .292 A+/AA
Lonnie_Chisenhall .285 CLE 3B .284 AA


#21 jon abbey


  • Shanghai Warrior


  • 11,758 posts

Posted 11 September 2010 - 02:12 AM

Montero caught 105 games this year and DHd 18, he's a catcher right now no matter where the consensus has him ending up and he should get the positional adjustment to match.

#22 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 13 September 2010 - 12:10 PM

Montero caught 105 games this year and DHd 18, he's a catcher right now no matter where the consensus has him ending up and he should get the positional adjustment to match.

He still had the most impressive season in the minors either way, though. I'm close to having a full list for that.

#23 jon abbey


  • Shanghai Warrior


  • 11,758 posts

Posted 13 September 2010 - 12:13 PM

I know, I just think he should get full credit for how impressive it was. :)

#24 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 13 September 2010 - 12:23 PM

The ranked list of Sox prospects I posted earlier is not wrong. But it doesn't mean what I thought it meant.

It was a list of how well each player had performed, given his age and position, relative to other players at his level. So Fuentes indeed had a terrific year for a CF that age in low-A.

What it did not factor into consideration is that prospects are winnowed out as you move up the minor leagues, so that being the 5th best hitting prospect in your low-A league is not as impressive as being the 5th-best one in your AA league.

This (still very interesting!) list factors that in. It is just Clay's Peak Translations, corrected for the demonstrable bias against higher levels so that guys no longer become better prospects as soon as they're promoted (if anything, they should drop a tiny bit since the promoted guys were a bit likelier to have been lucky), plus the position adjustment.

The first column shows the rank among all prospects in the minors, for those who made the top 100 (a ranking that excluded AAA vets 26 and older, 27 for C, and required 200 AB+BB minimum).

Sox Position-Adjusted (Corrected) Davenport Peak Translations
[td=*].167 [/td][td=*]2B [/td][td=*].171 [/td][td=*] [/td][td=*]Oscar_Perez [/td][td=*]18 [/td][td=*]RSX [/td][td=*]91 [/td][td=*].153 [/td][td=*]C [/td][td=*].170 [/td][td=*] [/td][td=*]David_Mailman [/td][td=*]21 [/td][td=*]SLM [/td][td=*]93 [/td][td=*].172 [/td][td=*]LF [/td][td=*].164 [/td][td=*] [/td][td=*]Josue_Peley [/td][td=*]22 [/td][td=*]PME [/td][td=*]209 [/td][td=*].145 [/td][td=*]C [/td][td=*].162 [/td][td=*] [/td][td=*]William_Vazquez [/td][td=*]25 [/td][td=*]PME [/td][td=*]163 [/td][td=*].142 [/td][td=*]C [/td][td=*].159 [/td][td=*] [/td][td=*]Jonathan_Hee [/td][td=*]24 [/td][td=*]SLM [/td][td=*]315 [/td][td=*].175 [/td][td=*]1B [/td][td=*].158 [/td][td=*] [/td][td=*]William_Holmes [/td][td=*]22 [/td][td=*]RSX [/td][td=*]144 [/td][td=*].158 [/td][td=*]RF [/td][td=*].153 [/td][td=*] [/td][td=*]Trygg_Larsson-Danf [/td][td=*]23 [/td][td=*]RSX [/td][td=*]170 [/td][td=*].170 [/td][td=*]1B [/td][td=*].153 [/td][td=*] [/td][td=*]Drew_Hedman [/td][td=*]23 [/td][td=*][color="#000000"]SLM [/color] [/td][td=*][color="#000000"]353[/color] [/td][td=*][color="#000000"].169[/color] [/td][td=*][color="#000000"]1B[/color] [/td][td=*][color="#000000"].152[/color] [/td][td=*] [/td][td=*][color="#000000"]Vladimir_Frias[/color] [/td][td=*][color="#000000"]23[/color] [/td][td=*][color="#000000"]GRN [/color] [/td][td=*][color="#000000"]333[/color] [/td][td=*][color="#000000"].136[/color] [/td][td=*][color="#000000"]2B[/color] [/td][td=*][color="#000000"].140[/color] [/td][td=*] [/td][td=*][color="#000000"]Chia-Chu_Chen[/color] [/td][td=*][color="#000000"]21[/color] [/td][td=*][color="#000000"]LOW [/color] [/td][td=*][color="#000000"]86[/color] [/td][td=*][color="#000000"].101[/color] [/td][td=*][color="#000000"]C[/color] [/td][td=*][color="#000000"].118[/color] [/td]
Rnk Name Age Tm PA* TAv Pos Adj
7 Ryan_Kalish 22 BOS 452 .293 CF .299
19 Anthony_Rizzo 20 PME 626 .302 1B .285
28 Ryan_Lavarnway 22 PME 550 .264 C .281
35 Lars_Anderson 22 BOS 548 .295 1B .278
57 Oscar_Tejeda 20 SLM 560 .268 2B .272
72 Yamaico_Navarro 22 BOS 462 .254 SS .268
73 Josh_Reddick 23 BOS 515 .262 CF .268
83 Che-Hsuan_Lin 21 PME 555 .261 CF .267
Reymond_Fuentes 19 GRN 420 .256 CF .262
Jose_Vinicio 16 RSX 172 .244 SS .258
Jose_Iglesias 20 PME 284 .243 SS .257
Will_Middlebrooks 21 SLM 485 .256 3B .255
Luis_Exposito 23 PME 536 .238 C .255
Peter_Hissey 20 SLM 511 .245 CF .251
Michael_Almanzar 19 GRN 542 .251 3B .250
Keury_De_La_Cruz 18 RSX 224 .244 CF .250
Jose_Garcia 19 GRN 220 .231 SS .245
Nate_Spears 25 PME 605 .241 2B .245
Daniel_Butler 23 PAW 387 .228 C .245
Chih-Hsien_Chiang 22 PME 480 .246 RF .241
Bubba_Bell 27 PAW 392 .245 RF .240
Christian_Vazquez 19 GRN 303 .218 C .235
Alex_Hassan 22 PAW 412 .243 LF .235
Gustavo_Molina 28 BOS 126 .215 C .232
Dusty_Brown 28 BOS 288 .215 C .232
Ray_Chang 26 PME 497 .232 3B .231
Felix_Sanchez 20 GRN 254 .222 CF .228
Ryan_Dent 21 SLM 427 .213 SS .227
Mitch_Dening 21 SLM 508 .230 RF .225
Brandon_Jacobs 19 LOW 267 .231 LF .223
Kolbrin_Vitek 21 GRN 287 .223 3B .222
Tim_Federowicz 22 SLM 456 .204 C .221
Derrik_Gibson 20 GRN 567 .206 SS .220
Henry_Ramos 18 LOW 184 .224 RF .219
Mark_Wagner 26 PAW 151 .202 C .219
Gil_Velazquez 30 PAW 259 .204 SS .218
Aaron_Bates 26 PAW 489 .224 LF .216
Jeremy_Hazelbaker 22 GRN 511 .220 RF .215
Sean_Killeen 23 GRN 123 .195 C .212
Jason_Thompson 19 RSX 193 .207 2B .211
Heiker_Menses 18 RSX 227 .210 3B .209
Miles_Head 19 LOW 273 .220 1B .203
Jorge_Padron 23 PME 327 .206 LF .198
Wilfred_Pichardo 20 GRN 242 .202 RF .197
Ronald_Bermudez 22 SLM 480 .204 LF .196
Ryan_Khoury 26 PAW 317 .196 3B .195
Matt_Sheely 23 PAW 270 .196 RF .191
David_Renfroe 19 LOW 227 .191 3B .190
Kenneth_Roque 20 GRN 188 .186 2B .190
Joantoni_Garcia 19 GRN 236 .184 2B .188
Reynaldo_Rodriguez 24 GRN 328 .204 1B .187
Jorge_Jimenez 25 PAW 370 .187 3B .186
Luke_Yoder 22 RSX 196 .192 LF .184
Seth_Schwindenhamm 18 LOW 123 .191 LF .183
Moko_Moanaroa 20 RSX 122 .190 LF .182
Shannon_Wilkerson 21 GRN 294 .189 LF .181
Jason_Place 22 PME 136 .185 RF .180
Michael_Thomas 21 GRN 104 .161 C .178
Luis_Segovia 23 PME 136 .162 SS .176
Bryce_Brentz 21 LOW 288 .177 RF .172
James_Kang 22 PAW 174 .168 2B .172
Zach_Gentile 23 GRN 381


#25 Buzzkill Pauley

  • 4,866 posts

Posted 13 September 2010 - 04:42 PM

As much crap as Lars seems to get around here for Rizzo having "overtaken" him, it's fascinating to see just how equivalent the two players seem to be as hitters.

Not much difference between #19 and #35 overall, when you consider just how many hitters are playing in the minor leagues.

#26 judyb

  • 2,779 posts

Posted 13 September 2010 - 06:12 PM

As much crap as Lars seems to get around here for Rizzo having "overtaken" him, it's fascinating to see just how equivalent the two players seem to be as hitters.

Not much difference between #19 and #35 overall, when you consider just how many hitters are playing in the minor leagues.

It's been a little disturbing to me how eager some people have seemed to declare Anderson a bust before he's even had a chance to celebrate his 23rd birthday.

#27 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 14 September 2010 - 03:46 AM

It's been a little disturbing to me how eager some people have seemed to declare Anderson a bust before he's even had a chance to celebrate his 23rd birthday.

The take on him now seems to be, he'll be a decent MLB hitter but nothing special.

But the Davenport Peak Translations have him as the 8th best hitting prospect in the minors (and Rizzo as the 7th). How high do you have to rank to project as a middle-of-the-order bat? Figure that there are 60 of them in MLB at a time (average clubs are short a bat and bad clubs are short two) and that the average such hitter has six years of being that good. So that means that 10 such bats come out of the minors each year. Guys on the list I posted earlier pretty much comprise two crop years worth of prospects, so the top 20 guys in the minors project as middle-of-the-order bats. (And just about all the guys on that list have that reputation.)

And the swing he put on Fister tonight for the opposite field double was just beautiful.

Edited by Eric Van, 14 September 2010 - 03:47 AM.


#28 Hairps

  • 1,631 posts

Posted 14 September 2010 - 12:16 PM

The question of properly adjusting for age relative for ml players to level is one of the thorniest in sabermetrics. How much air should we take out of Jeremy Hazelbaker's numbers? How much pizazz should we give to Reymond Fuentes instead?

Clay Davenport's Peak Translations are the only comprehensive attempt that I know of to answer those questions. Of course, they should not be taken as gospel, but they should absolutely be used to inform our prospect ratings.

His raw numbers are available at Baseball Prospectus (under Minor League True Average) and you can find stats for the NYP and GCL, even though they are not linked to on the page, by hacking the URL (you can also put in a team code such as BOS to get all the stats for that team).

I'm just getting caught up on this thread. Cool stuff.

EV, do you have the age adjustments pulled out and isolated from the overall translations? If so, I'd be interest in seeing what they are.

#29 Koufax

  • 1,428 posts

Posted 14 September 2010 - 12:51 PM

The take on him now seems to be, he'll be a decent MLB hitter but nothing special.

But the Davenport Peak Translations have him as the 8th best hitting prospect in the minors (and Rizzo as the 7th). How high do you have to rank to project as a middle-of-the-order bat? Figure that there are 60 of them in MLB at a time (average clubs are short a bat and bad clubs are short two) and that the average such hitter has six years of being that good. So that means that 10 such bats come out of the minors each year. Guys on the list I posted earlier pretty much comprise two crop years worth of prospects, so the top 20 guys in the minors project as middle-of-the-order bats. (And just about all the guys on that list have that reputation.)

And the swing he put on Fister tonight for the opposite field double was just beautiful.


This analysis seems to ignore your own adjustments, which place Rizzo at #17 and Andersen at #35. If 10 middle-of-the-order bats come out of the minors each year, where does #35 put you? I have seen very little of Andersen myself, and missed last night's game. But your numbers seem to suggest that Andersen is not destined to be a middle of the order bat.

#30 BLumbergh

  • 4 posts

Posted 14 September 2010 - 01:43 PM

This analysis seems to ignore your own adjustments, which place Rizzo at #17 and Andersen at #35. If 10 middle-of-the-order bats come out of the minors each year, where does #35 put you? I have seen very little of Andersen myself, and missed last night's game. But your numbers seem to suggest that Andersen is not destined to be a middle of the order bat.


Isn't the point that Anderson and Rizzo are the 7th and 8th best hitters -- which is what determines whether one is a middle of the order bat -- but inferior prospects when you take into account the fact that a middle of the order first baseman might be less valuable than a centerfielder who hits in the 6 hole?

#31 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 14 September 2010 - 04:12 PM


Isn't the point that Anderson and Rizzo are the 7th and 8th best hitters -- which is what determines whether one is a middle of the order bat -- but inferior prospects when you take into account the fact that a middle of the order first baseman might be less valuable than a centerfielder who hits in the 6 hole?

That's it. The top 20 hitter list, where tthey ranked 7 & 8, was not position-adjusted, the list where they ranked 19 and 35 was. Essentially, the big majority of middle-of-the-order hitters are 1B, DH, and corner OF.

With the position adjustments, there are a lot of C (Wil Myers, Wilin Rosario, Devin Mesoraco, Hang Conger, Salvador Perez, Austin Romine, Lavarnway, Gary Sanchez),, CF (Gregg Halman, Mike Trout, Brett Jackson, Kirk Niewenhuis, Anthony Gose, Daniel Fields), 3B (Alex Liddi, Matt Dominguez, Lonnie Chisenhall, Juan Francisco, Dayan Viciedo), SS (Wilmer Flores, Junior Lake, Eduardo Nunez, Tim Beckham, Jose Pirela) and one 2B (Brett Lawrie) that pass Lars as prospects without projecting to be better hitters. Note that some of these guys may move to easier positions: Myers as a RF and Flores as a 3B still rank ahead of Lars, but Lawrie as a RF, Lavarnway as a DH, Lake or Beckham as 3B, or (obviously) Francisco or Vicideo as 1B do not. So Lars' true prospect ranking is higher than 35 -- but lacking precognitive powers I'm basing this on current positions.

#32 Koufax

  • 1,428 posts

Posted 14 September 2010 - 04:31 PM

Got it. That went over my head, but looking back at the thread I see your point.

Having three top hitting prospects (including Kalish)is FAR more hopeful than I thought our system had to offer.

#33 jon abbey


  • Shanghai Warrior


  • 11,758 posts

Posted 14 September 2010 - 05:59 PM

With the position adjustments, there are a lot of C (Wil Myers, Wilin Rosario, Devin Mesoraco, Hang Conger, Salvador Perez, Austin Romine, Lavarnway, Gary Sanchez),, CF (Gregg Halman, Mike Trout, Brett Jackson, Kirk Niewenhuis, Anthony Gose, Daniel Fields), 3B (Alex Liddi, Matt Dominguez, Lonnie Chisenhall, Juan Francisco, Dayan Viciedo), SS (Wilmer Flores, Junior Lake, Eduardo Nunez, Tim Beckham, Jose Pirela) and one 2B (Brett Lawrie) that pass Lars as prospects without projecting to be better hitters.


Eric, I think I know the answer, but none of this factors in home park, does it? Romine's home OPS in a noted pitcher's park was .604, but on the road, it was .843, so just curious.

#34 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 14 September 2010 - 11:08 PM

Eric, I think I know the answer, but none of this factors in home park, does it? Romine's home OPS in a noted pitcher's park was .604, but on the road, it was .843, so just curious.

All of Clay's translations attempt the best park adjustment he can manage. If he has data to separately adjust the hitting components, he would do that, but at the very least he is taking the run environment and doing a generic translation onto the components.

According to these translations Romine is the 5th best catching prospect in MLB of guys who are considered likely to remain there. And Staten Island C Gary Sanchez was 6th and was the highest rated prospect in all of short-season ball (and Jose Vinicio of the GCL Sox was the highest-rated prospect in all of rookie ball. In fact, the Sox and Yankee organizations dominate in terms of number of guys in the top 100 or more).

It should be noted, though, that as you go further down in the minors you see more and more skill position players (especially C, CF, SS) and fewer and fewer 1B and corner OF. Some of that is because guys have not been moved yet to the easier positions, but that might not be the whole reason.

#35 finnVT

  • 943 posts

Posted 15 September 2010 - 08:43 AM

I've now got a spreadsheet with every player in the minors. And I've discovered that, while my instincts were correct in thinking that the published Davenport Peak Transalstions were too tough on players in the lower minors, my method of correcting for this (assuming that the prospects at every level are equally good) actually over-corrected. If you take the published translations verbatim, players that were promoted a level tended to gain, on average, .006 of Peak Projection, which is clearly not right. With my fix, though, they tended to lose -.009. Taking 60% of Clay's figure and 40% of my figure yields a Peak Projected TAv which doesn't change when you get promoted, which is as it should be.


I'm just catching up on this, but one thought. It seems like the problem with your initial scaling could be that it doesn't take into effect that at each level, the bottom end of the player talent/skill distribution gets lopped off (since they don't make it to the next level). So you don't want the A average to match the AA average. What you want is that the average of AA should match the average of the top X% of A, where X is whatever % of A players eventually make it to AA. I suspect your 60/40 average is approximating this, but this might give you a slightly more accurate (or at least more easily defended) approach.

#36 Eric Van


  • Kid-tested, mother-approved


  • 10,900 posts

Posted 15 September 2010 - 10:46 AM

I'm just catching up on this, but one thought. It seems like the problem with your initial scaling could be that it doesn't take into effect that at each level, the bottom end of the player talent/skill distribution gets lopped off (since they don't make it to the next level). So you don't want the A average to match the AA average. What you want is that the average of AA should match the average of the top X% of A, where X is whatever % of A players eventually make it to AA. I suspect your 60/40 average is approximating this, but this might give you a slightly more accurate (or at least more easily defended) approach.

That's exactly the problem with the initial scaling.

I think the most accurate simple way to fix it is to make sure that, on average, promoted players do not change their prospect status, and the 60 % original Clay, 40% fully scaled mix accomplishes that. I bet it's equivalent to your idea

One thing I didn't look at is whether Clay's mis-adjustment was linear or not. IOW, maybe that 60/40 mix should vary by level. But there almost certainly wouldn't be enough guys at each level to make a definite decision. With three or five years of data, that would be worth looking at.




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users