AaronGleeman.com
Thursday, November 27, 2003

The GPA Quick Reference Guide (2003)

Earlier this week I introduced a new "pet" stat of mine called the "Gross Production Average" (GPA).

The purpose of the stat is to provide something that is a step above simple OPS (on-base percentage + slugging percentage), while still remaining incredibly easy to use. If I had to describe GPA in one sentence, I would say that it is in-between OPS and Baseball Prospectus' Equivalent Average, combining a mixture of most of the ease and simplicity of OPS and a portion of the value of EqA.

For more information on the stat, I urge you to check out the following entry:

Introducing GPA (November 25, 2003)

I received a ton of feedback on the stat, the majority of which came from people who, like me, think GPA can be a nice alternative to other stats out there. As with any good stat, it helps to have a place of reference, with some leaderboards and team-totals and such. GPA is still in its infancy and perhaps if it becomes more popular an in-depth database will be created. Until then, today's entry will have to do.

Below you'll find a few of what I would consider the essential categories - positional averages, league averages, team-totals, league leaders, positional leaders. And all of the numbers come from running two stats - on-base percentage and slugging percentage - through the following extremely simple formula:

[(OBP*1.8) + SLG] / 4

So, after you're done chewing on all that turkey and stuffing this weekend, here are some numbers to chew on. If you have any questions, comments or suggestions about the stat or the numbers below, feel free to email me. Also, if you have any other important categories that you'd like to see a reference for in regard to GPA, I am open to suggestions.

CUMULATIVE TOTALS:
Position                  GPA          League                    GPA

Catcher .245 American League .257
First Base .279 National League .254
Second Base .251
Shortstop .245
Third Base .251
Left Field .276
Center Field .256
Right Field .274
Designated Hitter .268
Pitcher .125
TEAM TOTALS:
AL Team                   GPA          NL Team                   GPA

Boston .285 Atlanta .276
New York .274 St. Louis .271
Toronto .271 Colorado .266
Texas .262 Houston .259
Chicago .261 Philadelphia .259
Minnesota .261 San Francisco .258
Kansas City .258 Pittsburgh .257
Seattle .257 Florida .255
Anaheim .252 Arizona .253
Oakland .251 Milwaukee .253
Baltimore .247 Chicago .249
Tampa Bay .245 San Diego .247
Cleveland .243 Montreal .247
Detroit .229 Cincinnati .242
New York .235
Los Angeles .228
LEAGUE LEADERS (MIN. 500 PA):
NL Player                 GPA          AL Player                 GPA

Barry Bonds .425 Carlos Delgado .340
Albert Pujols .364 Manny Ramirez .339
Todd Helton .363 Alex Rodriguez .328
Gary Sheffield .340 Trot Nixon .323
Jim Edmonds .328 Jason Giambi .317
Brian Giles .321 Frank Thomas .316
Jim Thome .317 David Ortiz .314
Richard Hidalgo .316 Bill Mueller .314
Luis Gonzalez .314 Jorge Posada .312
Lance Berkman .314 Magglio Ordonez .308
TOP 15 BY POSITION (MIN. 350 PA):
Catchers                  GPA          First Basemen/DHs         GPA

Javy Lopez .341 Todd Helton .363
Jorge Posada .312 Carlos Delgado .340
Greg Myers .294 Jim Thome .317
Jason Varitek .284 Jason Giambi .317
Ivan Rodriguez .284 Frank Thomas .316
Jason Kendall .283 David Ortiz .314
Mike Lieberthal .281 Richie Sexson .307
A.J. Pierzynski .277 Nick Johnson .306
Ramon Hernandez .263 Edgar Martinez .305
Charles Johnson .257 Jeff Bagwell .299
Benito Santiago .254 Derrek Lee .298
Jason LaRue .250 Mike Sweeney .293
Ben Molina .247 Doug Mientkiewicz .289
Paul Lo Duca .244 Rafael Palmeiro .289
Eddie Perez .239 Erubiel Durazo .276
Second Basemen            GPA          Shortstops                GPA

Marcus Giles .305 Alex Rodriguez .328
Bret Boone .299 Edgar Renteria .297
Jose Vidro .295 Derek Jeter .289
Jeff Kent .285 Nomar Garciaparra .286
Alfonso Soriano .283 Alex Cintron .282
Mark Loretta .277 Orlando Cabrera .271
Ray Durham .274 Miguel Tejada .269
Placido Polanco .268 Rafael Furcal .268
Luis Castillo .267 Angel Berroa .262
Mark Grudzielanek .267 Carlos Guillen .258
Keith Ginter .265 Jose Valentin .255
Michael Young .264 Alex Gonzalez .251
D'Angelo Jimenez .260 Julio Lugo .251
Ronnie Belliard .258 Mike Bordick .249
Todd Walker .256 Rich Aurilia .249
Third Basemen             GPA          Left Fielders             GPA

Bill Mueller .312 Barry Bonds .425
Scott Rolen .304 Albert Pujols .364
Morgan Ensberg .302 Manny Ramirez .339
Mike Lowell .290 Brian Giles .321
Corey Koskie .290 Luis Gonzalez .314
Hank Blalock .288 Lance Berkman .314
Eric Chavez .286 Chipper Jones .311
Troy Glaus .271 Melvin Mora .311
Joe Randa .267 Geoff Jenkins .303
Aramis Ramirez .262 Dmitri Young .301
Wes Helms .261 Cliff Floyd .299
Aaron Boone .260 Garret Anderson .290
Sean Burroughs .258 Brad Wilkerson .287
Shea Hillenbrand .258 Jay Payton .286
Eric Hinske .257 Shannon Stewart .277
Center Fielders           GPA          Right Fielders            GPA

Jim Edmonds .327 Gary Sheffield .340
Milton Bradley .315 Vladimir Guerrero .339
Carlos Beltran .305 Trot Nixon .327
Vernon Wells .299 Richard Hidalgo .316
Carl Everett .291 Matt Stairs .315
Preston Wilson .289 Larry Walker .309
Steve Finley .288 Magglio Ordonez .308
Andruw Jones .280 Aubrey Huff .304
Scott Podsednik .279 Jose Guillen .302
Luis Matos .270 Bobby Abreu .300
Bernie Williams .269 Sammy Sosa .300
Kenny Lofton .269 Reggie Sanders .297
Marlon Byrd .268 Craig Wilson .291
Eric Byrnes .264 Tim Salmon .284
Mike Cameron .262 Aaron Guiel .277


*****Comments? Questions? Email me!*****


Wednesday, November 26, 2003

Lee for Choi

To Chicago:
Derrek Lee

To Florida:
Hee Seop Choi
PTBNL

It seems strange for the two teams that squared off in the NLCS last month to be making a major trade with each other, but that's exactly what happened yesterday. The Florida Marlins sent their starting first baseman from last year, Derrek Lee, to the Chicago Cubs, in exchange for Hee Seop Choi and a Player to be Named Later (PTBNL).

By trading Lee, the Marlins have come full-circle. Back when they won their first World Series, in 1997, they had a firesale, trading away essentially every good veteran on the team. One of those trades sent Kevin Brown to the San Diego Padres, in exchange for a 21-year old first base prospect named Derrek Lee.

Now, after another World Series win, the Marlins once again appear set to make some wholesale changes to the roster. It sounds as though Lee, now 28 and likely to make about $6-7 million next year, is probably just the first one out the door.

I thought it might be interesting to look back to see how the Marlins 1997 firesale went. So, with the help of Retrosheet.org (one of the best baseball websites around) I was able to find that, from the end of the 1997 season until the start of the 1998 season, the Marlins traded away the following players:
Kevin Brown (to San Diego)

Moises Alou (to Houston)
Al Leiter (to New York)
Robb Nen (to San Francisco)
Jeff Conine (Kansas City)
Devon White (to Arizona)
Dennis Cook (to New York)
Kurt Abbott (to Oakland)
In addition to those deals prior to the start of the 1998 season, the Marlins also sent Bobby Bonilla, Jim Eisenreich, Charles Johnson and Gary Sheffield to the Dodgers about two months into the season. That deal netted them Mike Piazza and Todd Zeile. Just a few days later, they traded Piazza to the Mets for Geoff Goetz, Preston Wilson and Ed Yarnall, and they sent Zeile to the Rangers for Daniel DeYoung and Jose Santo at mid-season.

So, in the span of about eight months, the Marlins dismantled their entire championship team, trading away nearly every valuable veteran player, including stars like Sheffield, Alou, Nen, Brown, Bonilla, Conine, White, Johnson and Leiter.

Counting the quick turn-around deals involving Piazza and Zeile, here are the players the Marlins got in return for all those veterans:
Manuel Barrios

Oscar Henriquez
Mark Johnson
Jesus Martinez
Joe Fontenot
Mike Pageler
Mike Villano
Blaine Mull
Chris Clark
Steve Hoff
Derrek Lee
Rafael Medina
Fletcher Bates
Scott Comer
Eric Ludwick
A.J. Burnett
Jesus Sanchez
Geoff Goetz
Preston Wilson
Ed Yarnall
Daniel DeYoung
Jose Santo
That's a very long list (which is what happens when you trade away a dozen veteran players for all prospects, I suppose), but there aren't a lot of impressive names. The only guys who have gone on to have any sort of a distinguished major league career are Derrek Lee, A.J. Burnett and Preston Wilson.

The relevance of this to the current Florida situation is probably less than it seems. While they have already traded Lee, a key part of their championship team last season, and appear ready to lose several other important veterans, many of them will leave via free agency and not through trades.

Luis Castillo, Ivan Rodriguez and Ugueth Urbina are all free agents right now and Florida also has a few arbitration eligible guys like Mark Redman, Brad Penny, Juan Encarnacion and Mike Lowell, some of whom may be cut loose because of their rising salaries.

As for the Lee/Choi trade, I think it is a deal that works fairly well for both teams. For the Marlins, they cut payroll and get a young player who is very capable of stepping right in to replace Lee at first base next season and beyond. For the Cubs, they add an established upper-level first baseman (Lee ranked 6th among MLB first basemen in RARP last year), while taking on some salary and trading away a young player whom they appear to have soured on recently.

Personally, had I been the Cubs, I would have simply kept Choi and spent the extra $6 million on improving the team somewhere else. I think Choi is going to be a very good hitter very soon and, as good as Lee is and has been, I don't know that the difference between them is worth that much. That said, Dusty Baker didn't seem to have been a huge Choi fan and I have a feeling, had he stayed in Chicago, Choi's opportunity to blossom would have been severely limited.

Many people seem to be very down on Choi at the moment, for reasons I don't really understand. They point to the fact that he hit just .218 this year or to his 71 strikeouts in 80 games. As if no 24-year old rookie has ever struggled before. And really, if this season was Choi "struggling" (.218/.350/.421), he is in for a very good career.

In fact, I think Choi's rookie season was actually quite a bit more promising than the overall numbers suggest. He was doing very well through the first two months or so, while being platooned at first base with Eric Karros and playing on a regular-basis. Through June 7th he was hitting .244/.389/.496. That day he collided with Kerry Wood while trying to field a pop-up and crashed hard into the ground.

Choi didn't play again for three weeks and, when he finally returned, he no longer played as often. After getting 68 plate appearances in April and 75 in May, Choi got a total of just 72 plate appearances in July, August and September combined. He hit terribly when he was given a chance to play and his season-totals plummeted.

Still, this is a young player who did very well in his first taste of the big leagues this season before getting injured. He struggled when he came back, there is no doubt about it, but he also was not given a chance to play regularly during the last several months of the season. And, throughout all of that, he still managed to put up a decent rookie year. He's also got an impressive minor league track-record

Choi hit .321/.422/.610 in 79 Single-A games in 1999 and then hit .296/.369/.553 at Single-A in 2000, before moving up to Double-A. Once there, he hit .303/.419/.623 to finish the season. He moved up to Triple-A in 2001 and had a very sub par year while struggling with a wrist injury. Choi bounced back in 2002 however, hitting .287/.406/.513 with 26 homers in 135 Triple-A games. And, in 18 games back at Triple-A this season, Choi posted a .621 slugging percentage.

Hee Seop Choi will never be the defensive player that Derrek Lee is, but I think he eventually has a good chance to be just as good offensively. Whether or not that happens in the next year or two is a little less clear and I think that is why the Cubs made this move. Derrek Lee is far more of a "sure thing" over the next several seasons. Still, I wouldn't be surprised if Hee Seop Choi, assuming he gets everyday playing time in Florida, puts up very similar numbers to Derrek Lee over the next 2-3 seasons. And, after that, as Lee reaches the wrong side of 30 while Choi enters his prime, Choi should be a far better player.

It's a question of "now" versus "later." The "sure thing" versus "what might be." The Cubs have the luxury of adding to the payroll to get the "now" and the "sure thing." I think the Marlins, all things considered, did very well here, getting a very intriguing "what might be" with a potentially very good "later." And if the PTBNL turns out to be someone valuable, that's just icing on the cake.


*****Comments? Questions? Email me!*****


Tuesday, November 25, 2003

Introducing GPA

Over the last several years, the stat "OPS" (on-base percentage + slugging percentage) has become widely-known and constantly used. As more and more people begin to realize the value of things other than batting averages and RBI-totals, tons of fans and experts have started to use OPS as their preferred stat for measuring a player's hitting. It is routinely used at such places as ESPN.com and OPS has even made its way onto the back of some baseball cards.

At the same time, I find that, while OPS is a very quick and easy way to look at offense that is infinitely better than batting averages and RBIs, it still leaves an awful lot to be desired. For one thing, it gives equal weight to both on-base percentage and slugging percentage, which simply is not an accurate representation of the value of each.

In other words, a player who has a .400 on-base percentage and a .450 slugging percentage is a more valuable offensive player than someone with a .330 on-base percentage and a .520 slugging percentage. Yet, with OPS, they both come out with the same .850.

Because of that, I rarely use OPS. When I talk of a player's offense, I typically show his stats in the AVG/OBP/SLG form (for example, .300/.400/.500). Rarely will I say "Player A's OPS is 35 points higher than Player Z's," simply because I don't think it has all that much meaning or value.

Still, I often find myself interested in something that attempts to put a player's offense succinctly into one number. In those cases, I usually turn to Baseball Prospectus' "Equivalent Average." EqA uses an uneven and more accurate weighing of on-base percentage and slugging percentage and it also adjusts a player's performance for the ballpark and league they played in. I will often cite a player's EqA on this blog and I also use other stats that are based on EqA, such as "Equivalent Runs" and "Runs Above Replacement Position."

That said, EqA is a relatively complicated formula. It not only involves a number of steps and the use of more than just OBP and SLG, it also involves ballpark adjustments that can't be made without additional information.

No, what I have been looking for is a stat that can accurately wrap someone's on-base percentage and slugging percentage into one nice package, while still maintaining at least some of the "quick and easy" nature of OPS. Believe it or not, I think I have stumbled across such a stat.

Earlier this year I read a two-part series of articles by "Tangotiger" over at Baseball Primer. He titled the articles "OPS Begone!" and in them he discusses the problems with using OPS as an all encompassing stat.

He ran some very interesting studies and found that the "best-fit" for a player's overall value to an offense is not on-base percentage plus slugging percentage, but rather something more like on-base percentage multiplied by 1.7-2.0, plus slugging percentage.

After reading that, I began to use OBP*1.7 + SLG quite often. A quick look through this blog's archives reveals that, over the last couple months, I have used it here and here and then, most recently, in last Friday's entry.

Multiplying on-base percentage by 1.7 and then adding it to slugging percentage is obviously not as quick or as easy as simply adding the two numbers. That said, it is a much better and more valuable stat than OPS and it still maintains quite a bit of simplicity and ease, particularly when compared to something like EqA.

Of course, OBP*1.7 + SLG is not without its faults. For one thing, as I discussed last Friday, the number you get from the formula is a little hard to get a good feel for.

For example, if someone hits .300/.400/.500, their OBP*1.7 + SLG comes out to 1.180. But really, if you saw somewhere that a hitter had an OBP*1.7 + SLG of 1.180, would you know if that were good or bad, let alone have a decent grasp for how good or how bad it was? I know I wouldn't.

Luckily, I think I have found a stat that:

a) Combines on-base percentage and slugging percentage into one number

b) Accurately weighs on-base percentage and slugging percentage

c) Is a relatively easy formula without the need for additional information or stats

d) Provides a "final" number that is easy to understand

Last Friday, I introduced ((OBP*1.7) + SLG) / 4 as the "Aaron's Baseball Blog Number" ("ABB#" for short). Since then, I have made one slight revision to the formula that I think makes the stat much better.

The value in OBP*1.7 + SLG is that you get a much more meaningful number than simple OPS. The value in dividing that number by four is that you end up with something that looks a whole lot like a batting average, which is a number that everyone can put into context pretty easily.

.325 is great. .300 is good. .275 is okay. .250 is bad. And .225 stinks. It's pretty simple. The only problem with using ((OBP*1.7) + SLG) / 4 is that the final number, the "batting average" that comes out, is just a tad low.

However, if you change the on-base percentage portion of the formula to OBP times 1.8, instead of 1.7, it spits out a number that is a better match for the batting averages of this era, while still maintaining the proper weight for on-base percentage (and still staying within Tangotiger's recommended range of OBP*1.7-2.0).

For example, the National League as a whole had a batting average of .261 past season. The NL also had a .332 on-base percentage and a .417 slugging percentage. If you run those two numbers through the ((OBP*1.8) + SLG) / 4 formula, you get .254. That's close enough to the batting average scale that I think it works very well.

So, I would like to officially introduce everyone to the "Gross Production Average." The all-important acronym is "GPA," which is easy to remember and actually relates somewhat to the stat, which is a sort of "grade" for hitters.

Gross Production Average (GPA) = ((OBP*1.8) + SLG) / 4

Here are the GPA leaders from this past season:
NATIONAL LEAGUE                        AMERICAN LEAGUE


Player GPA Player GPA
Barry Bonds .425 Carlos Delgado .340
Albert Pujols .364 Manny Ramirez .339
Todd Helton .363 Alex Rodriguez .328
Gary Sheffield .340 Trot Nixon .323
Jim Edmonds .328 Jason Giambi .317
Brian Giles .321 Frank Thomas .316
Jim Thome .317 David Ortiz .314
Richard Hidalgo .316 Bill Mueller .314
Luis Gonzalez .314 Jorge Posada .312
Lance Berkman .314 Magglio Ordonez .308
I really hope many of you use this stat. It is perfect for when you want something more informative than OPS, but don't have access to anything other than someone's OBP and SLG. Some people can probably run the numbers in their head and even those of you who are as shaky with math as I am can run the formula with a calculator in a matter of seconds.

Take the OBP and multiply it by 1.8. Take that number and add slugging percentage. Take the total and divide it by four. It's pretty easy.

Aside from its simplicity, another nice thing about GPA is that you can use it for any number of things. For example, EqA is essentially limited to evaluating a season as a whole (and I don't mean to pick on EqA, because it is a stat I love and use often). On the other hand, GPA can be used for pretty much anything.

How does someone hit against lefties and righties? At home and on the road? In the first-half of the year and in the second-half? With runners in scoring position and with no one on base? The possibilities are endless, because all you need are a hitter's on-base percentage and slugging percentage in a given situation.

Learn it. Love it. Use it. GPA, the Gross Production Average!


*****Comments? Questions? Email me!*****


Monday, November 24, 2003

Interesting Seasons in Baseball History: Nolan Ryan, 1987

Nolan Ryan had one of the best seasons of his 27-year career for the Houston Astros in 1987. At 40 years old, he pitched 211.2 innings in 34 starts and led the National League in ERA (2.76), fewest hits per nine innings (6.55), adjusted ERA+ (142) and strikeouts (270). His 11.5 strikeouts per nine innings not only led the National League, it was the best strikeout-rate of his entire career.



So, what exactly is so interesting about Nolan Ryan's 1987 season? His record: 8-16.

Since 1920, no pitcher who has thrown at least 180 innings has had a better ERA than Ryan's 2.76 while winning fewer games or having a worse winning percentage.

There have been 157 times in baseball history when a pitcher has recorded at least 250 strikeouts in a season. Nolan Ryan in 1987 is the only one of the 157 when the pitcher didn't win at least 10 games.

While Nolan Ryan was going 8-16 with a league-leading ERA, the other pitchers on the 1987 Astros were doing quite a bit better, at least in the wins department.
                     ERA     Win%

Nolan Ryan 2.76 .333
Other Astros 4.02 .493
Despite a combined ERA that was 45.6% higher than Ryan's, the other Houston pitchers went 68-70, good for a .493 winning percentage, 160 points higher than Ryan's.

The reason for Ryan's horrible record is pretty obvious. Ryan was much better at preventing the other team from scoring than his teammates, but when he was on the mound the Houston hitters just didn't score any runs of their own.

Take a look at how Houston's hitters performed with Ryan on the mound, compared to other pitchers:
                    RS/G

Ryan's starts 3.35
Other games 4.17
Certainly Houston's offense was not very good in 1987. They ranked 11th in the NL in batting average, on-base percentage, slugging percentage and, the most important stat for an offense, runs scored.

Still, as bad as Houston's hitters were in 1987, they were even worse when Nolan Ryan was on the mound. They scored an average of just 3.35 runs per game in Ryan's 34 starts, 24.4% fewer runs than they scored in the 128 games Ryan didn't start.

Overall, here is the run-support Ryan got in 1987:
Runs     Starts

0 3
1 8
2 5
3 4
4 4
5 3
6 2
7 3
8 2
9 0
10+ 1
The 1987 Astros averaged exactly 4.0 runs per game. Nolan Ryan made 34 starts. They scored him more than four runs in 10 of them (29.4%), fewer than four runs in 20 of them (58.9%) and exactly four runs in four of them (11.7%).

In the 14 games in which Ryan received at least four runs of run-support, he went 6-2. In the other 20 games, he went 2-14. In the 16 games Ryan lost, the Astros scored him a grand-total of 27 runs, or 1.68 runs per game.

It is really amazing the degree to which Ryan had to "take things into his own hands" in order to get a win in 1987. In four of his eight total wins, Ryan allowed zero earned runs. Overall in those eight starts he won, he had an ERA of 1.10 in 57 innings pitched.

In the 26 starts he made when he didn't get a win, Ryan had an ERA of 3.37, which would have ranked eighth in the National League. Ryan's "stat-line" for those 26 starts is rather amusing:
GS        IP      ERA     W      L

26 152.2 3.37 0 16
Amazingly, Nolan Ryan won his first start of the year. He was also 2-2 after five starts (with a 2.23 ERA). After that, he went 6-14 for the rest of the year, including one stretch, from the middle of June until the middle of August, in which he made 11 starts and went 0-8, with eight losses in a row.

Ryan made five starts in July with a 2.62 ERA. He went 0-5.

Despite winning just eight games the whole year, Ryan won back-to-back starts in early June and then won three straight starts in September. Aside from those five starts, he was 3-16 in his other 29 starts.

Just in case you weren't yet convinced that life isn't fair...

There were 96 different pitchers who won more games than Nolan Ryan in 1987. Exactly one of them, a reliever named Ken Dayley who won nine games in 61 innings as a reliever for St. Louis, had a lower ERA (2.66) than Ryan (2.76).

Eight different pitchers with an ERA of at least 5.00 won more games than Ryan, including one, Dan Petry, who had an ERA (5.61) that was more than twice as high as Ryan's.

18 pitchers won at least twice as many games as Ryan in 1987. Dave Stewart won 20 games with an ERA (3.68) that was 33.3% higher than Ryan's. In fact, of the 18 guys who won at least twice as many games as Ryan, 10 of them had an ERA that was at least 25% higher. Walt Terrell and Shane Rawley each won 17 games, with ERAs that were 46.7% and 59.0% higher than Ryan's.

Mike Scott, who was Ryan's teammate on the Astros, won 16 games with an ERA 17% higher. Another one of Ryan's teammates, Jim Deshaies, won 11 games despite pitching in 59.2 fewer innings than Ryan, with an ERA (4.62) that was 67.4% higher.

Yet another of Ryan's Houston teammates, Bob Knepper, pitched horribly in 1987. He appeared in 33 games, making 31 starts, and had an ERA of 5.27. He struck out just 3.8 batters per nine innings, had a strikeout/walk ratio of just 1.4/1 and served up 26 homers in 177.2 innings. Opposing batters hit .313 off him with a .502 slugging percentage.

Nolan Ryan went 8-16 for the Houston Astros in 1987. Bob Knepper went 8-17.
"Statistically, wins mean the most to me.

Fans tend to value ERA as the most important statistic for a pitcher. But ERA is like a batting average; it's a personal number. Pitchers can have low ERAs and not win many games.

If a pitcher has a low ERA and consistently loses low-scoring games, like 2-1 or 3-2, it means the opposing pitchers are outpitching him. That is not a criticism; the pitcher may be pitching great. But he is pitching well enough to lose, not to win."
--- Joe Morgan, Hall of Fame second baseman and ESPN baseball expert
Sure Joe, whatever you say.


*****Comments? Questions? Email me!*****