Home | Webstore
Latest News: OOTP 27 Buy Now - FHM 12 Available - OOTP Go! 27 Available

Out of the Park Baseball 27 Buy Now!

  

Go Back   OOTP Developments Forums > Prior Versions of Our Games > Earlier versions of Out of the Park Baseball > Earlier versions of OOTP: General Discussions

Earlier versions of OOTP: General Discussions General chat about the game...

Reply
 
Thread Tools
Old 06-21-2009, 09:10 PM   #121
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
How about the team level. Much was made about the 2008 Rays having a better defense... the local writers named Jason Bartlett MVP.

2007
7.5 k/9
3.6 bb/9
1.3 hr/9
2.1 k/bb

2008
7.1 k/9
3.2 bb/9
1.0 hr/9
2.2 k/bb

BABIP
2007
.334
2008
.280


Drumroll please

Team ERA
2007
5.53

2008?
3.82
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 09:11 PM   #122
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
Quote:
Originally Posted by knockahoma View Post
Hey,
Studying the same teams through 30 sims gives you a good idea of which teams are importing good and bad defenses.
You know in the game who has a good defense and who doesn't. You don't know in real life who had a good defense and who didn't.
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 09:12 PM   #123
knockahoma
All Star Reserve
 
Join Date: Dec 2002
Posts: 792
Quote:
Would you consider Carlos Silva to have blown up in 2008?

2007 ERA 4.19 33 starts
2008 ERA 6.46 28 starts

Home runs...
0.9 to 1.2
Walks...
1.6 to 1.9
Strikeouts...
4.0 to 4.1

His BABIP?

.302 to .344
Not that one. That's consistent with what I've seen in the 70s. 40 point swings sometimes happen, though that's on the extreme side in the 70's. More often, it's a 20-30 point swing that's eye-catching. I'm talking about 70 to 80 point swings, like Messersmith's rise from .235 to .310

I'm worried about the swings that are double in size of this example.
knockahoma is offline   Reply With Quote
Old 06-21-2009, 09:22 PM   #124
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
How about the 1998 trade of Randy Johnson from Seattle to Houston. Small sample size in Houston but this is an in-season example of it working the other way.

Seattle:
12.0 k/9
3.4 bb/9
1.1 hr/9

Houston
12.4 k/9
2.8 bb/9
0.4 hr/9

You can't expect truly consistent numbers for these categories when changing leagues, a huge stadium change from Kingdome to Astrodome and a small sample size.

His ERA in Seattle was 4.33. In Houston it was 1.28.
BABIP .294 in Houston, .334 in Seattle

Johnson's BABIP are all over the place. It seems to me someone that wins 300 games in the major leagues would be the kind of guy who could control hits against him on balls in play. High as .354 in 2003 to a low of .250 in 1990.

His career number is .295 against a league average of .296.

600 starts, 301 wins and he can no better control BABIP then the average pitchers from 1988-today.

Knocka talked about 4 year stretches. Well Johnson won 4 straight Cy Youngs. BABIP those years?
.294
.335
.321
.291

The next year? .354 The year after that he finished second in the Cy vote.. BABIP? .267

Last edited by lynchjm24; 06-21-2009 at 09:25 PM.
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 09:24 PM   #125
knockahoma
All Star Reserve
 
Join Date: Dec 2002
Posts: 792
Quote:
You know in the game who has a good defense and who doesn't. You don't know in real life who had a good defense and who didn't.
My bad. Misread that. But the OOTP defense is what I'm talking about. I was talking about how this BABIP issue affects even fictional teams. In other words, even if team defense imports are wrong, the BABIP tweak might create better pitcher results.

One thing: My IMPRESSION is that 40 or 50 point swings is very normal for OOTP. One or two examples of real life swings like that isn't my issue. It's whether 2%, or 10%, or 40% of pitchers regularly experience such severe swings.

I could ask you to show me what percentage of pitchers today have suffered from such swings year to year, but that's the head-ache I've been trying to soothe. I won't burden you with it. But, such research is pretty daunting, especially when you then must go through OOTP seasons to compare with your real life findings.

PS. Can you expand on this?
Quote:
You don't know in real life who had a good defense and who didn't
I would say we've got a pretty good idea who had a good D and who didn't in 1974. Are you saying the stats aren't accurate enough? I'm trying not to put words into your mouth. But, it was a surprising comment.
knockahoma is offline   Reply With Quote
Old 06-21-2009, 09:31 PM   #126
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
Quote:
Originally Posted by knockahoma View Post
I would say we've got a pretty good idea who had a good D and who didn't in 1974. Are you saying the stats aren't accurate enough? I'm trying not to put words into your mouth. But, it was a surprising comment.
That's been my point all along. Those defensive stats from the 70's are useless. You've got no idea who had a good defense and who didn't.

In OOTP you know, in real life you have no idea, except from anecdotal evidence. Some of which is accurate and some of which isn't.
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 09:35 PM   #127
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
Quote:
Originally Posted by knockahoma View Post
My bad. Misread that. But the OOTP defense is what I'm talking about. I was talking about how this BABIP issue affects even fictional teams. In other words, even if team defense imports are wrong, the BABIP tweak might create better pitcher results.
Here is the problem with that. If you put in a fudge factor for a historical pitchers BABIP it causes downstream issues with how defense is modeled and how the AI works. Yes, adding a BABIP fudge factor would make the historical pitchers play more accurately then they do now, but it would also force the defense to be better then it's rated... if that makes any sense. You'd be backing into the pitcher's results and ignoring the ratings of the players on the field.
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 09:37 PM   #128
knockahoma
All Star Reserve
 
Join Date: Dec 2002
Posts: 792
Lynch.

Damn it. This is a good run. I've got some responses on Johnson (which also apply to Ryan, as someone brought him up earlier). But, I'm being dragged to a damn movie.

What defensive stats do you find useless? I know many saber-dudes are measuring the 70s with their new rulers. And what defensive stats impress you?

Quote:
Here is the problem with that. If you put in a fudge factor for a historical pitchers BABIP it causes downstream issues with how defense is modeled and how the AI works. Yes, adding a BABIP fudge factor would make the historical pitchers play more accurately then they do now, but it would also force the defense to be better then it's rated... if that makes any sense. You'd be backing into the pitcher's results and ignoring the ratings of the players on the field.
No, I'm a Belanger-ite. I'm serious about defense in the game. Ideally, we find a good marriage that brings results that check correctly with 1974, or 2009. I would never sacrifice Blade's magic to the likes of a Dyar Miller. But, neither do I like the San Diego defense obstensibly turning Andy Messersmith to Dyar Miller-Smith, if you catch my drift.

Gotta go see damned " Up!" Out for tonite.

Last edited by knockahoma; 06-21-2009 at 09:43 PM.
knockahoma is offline   Reply With Quote
Old 06-21-2009, 10:49 PM   #129
knockahoma
All Star Reserve
 
Join Date: Dec 2002
Posts: 792
A momentary reprieve has given me a chance to dig thru some numbers.

Lynch, let's start from here, okay? I work in an industry that takes numbers and studies very seriously. I sit in those meetings where we discuss the direction of million dollar radio stations. I'm 47. I've learned (sometimes painfully) through the years what happens to those who jump at conclusions too early. I want you to see me in that way. I think it will help you understand me. So, I'm just musing for now. That being said, here's what I notice:

I THINk for every pitcher with a 4 year roller-coaster BABIP you can show me, I can show you FIVE that are pretty darn consistent thru a 4 year period. And that's where I wonder if OOTP is off.

At the beginning of this thread, I started looking at a single pitcher. I think it's crucial to do that when considering BABIP. For example, it's accurate to say what you did:

Quote:
Johnson's BABIP are all over the place. It seems to me someone that wins 300 games in the major leagues would be the kind of guy who could control hits against him on balls in play. High as .354 in 2003 to a low of .250 in 1990.
But, it's also accurate when scoping in to say that Johnson had a lot of consistency in periods of his career. Also, it's extremely interesting to me that Johnson's BABIP ROSE significantly often in years when he was injured! The same is not true of Nolan Ryan's high BABIP seasons, but more on Ryan and Johnson in a sec.

Is this a consistent BABIP? We're in the 70s with
Jerry Koosman:

Quote:
YR BABIP
77 .279
78 .289
79 .298
80 .296
81 .300
82 .300 (.301 with Min, .300 with Chic)
During a 6 year period, Koosman had a 17 point variance on BABIP. Is that consistent, considering various defenses, luck, etc? From 78-02, it was an 11 point variance. From 79-02 it was a 4 point variance!


To Randy Johnson.

Quote:
91 .282
92 .279
93 .273
94 .298 (a 15 point jump in a year where Johnson had only 172 IP. Hurt? And now, a new period, higher BABIP, but consistent within that period)
Quote:
95. .301
96 .294 (61 IP)
97 .282
A 19 point swing in 4 years. But nothing like 40 point swings all over the place. And now, again, Johnson seems to enter a new "period".

Quote:
98 .332 (162 IP, more injuries?)
99 .321
00 .327
01 .316
If Randy Johnson's baseball career were Egyptian history, each of those segments would be separately named Kingdoms.

Someone mentioned Nolan Ryan. Another guy who went thru consistent periods:
Quote:
68 .245
69 .256
70 .229
71 .275 (152 IP. Injured? Anomaly for the period?)
72 .237
Next period

Quote:
73 .281
74 .256
75 .264
76 .270
77 .266
We see such partitions in the careers of every-day ballplayers. In fact, OOTP constructs career paths, in part, based on career partitions. And, I would expect to see pitchers with long careers have different "ages", too.

So, I started looking, and I saw this kind of stuff all over the place. Inferences? I'm not ready to take a definite stand. But, the partitioning of careers is not something I've seen in BABIP discussions.

However, I believe strongly that such partitions in careers exist for various reasons, beyond, but not discluding, defense and luck.

Last edited by knockahoma; 06-21-2009 at 10:53 PM.
knockahoma is offline   Reply With Quote
Old 06-21-2009, 11:13 PM   #130
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
Quote:
Originally Posted by knockahoma View Post

I THINk for every pitcher with a 4 year roller-coaster BABIP you can show me, I can show you FIVE that are pretty darn consistent thru a 4 year period. And that's where I wonder if OOTP is off.
I think you need to do that before you can be sure that you can do it. Since in a fictional universe the results in OOTP seem decent and Ronco's recent defensive work is encouraging, I think the burden of proof is on you.

Starting from the bottom of the top 1000 pitchers in MLB wins.. the active pitchers, using what look to be seasons with at least decent sample sizes:

Jake Westbrook .275-.324
Braden Looper .256-.322
Kip Wells .260-.346
Jose Contreras .262-.330 3 straight years with WS goes - 262/284/330
Dontrelle Willis .288-.326 as bad as he has been this year... it's .306
Dave Weathers .232-.366
Mariano Rivera .212-.325
Kris Benson .263-.318 3 years Pit 318/320/312 to NYM 273/263 Bal 283
Adam Eaton .282-.329
Dan Haren .288-.307

These are the 10 active pitchers with between 63 and 71 career wins.

Haren was super consistent... but guess what. 2009 his number is down to .230.

Pretty much everyone else is inconsistent. I'm not seeing where you are going to find a 5:1 ratio of consistent to inconsistent. I've never even really looked at BABIP in OOTP other then to make a roster decision at a point in time. I've never given much thought to it, because since the results in fictionals pass the smell test, I'm guessing that the BABIP will also pass that test.

If you limit the study to pitchers like Ryan and Johnson who pitches for decades... sooner or later they are going to have chunks of seasons that are consistent. It's 0.1% of pitchers who last that long though, so are they really representative of the pitching world in general?
lynchjm24 is offline   Reply With Quote
Old 06-21-2009, 11:23 PM   #131
lynchjm24
All Star Reserve
 
Join Date: Jun 2002
Location: Hartford
Posts: 978
Infractions: 0/1 (1)
Ryan certainly has periods where he is all over the place.

With California he pitched full seasons in 72, 73 and 74 and put up
240/283/259.

79 to 81 he moved from California in 79 to the Astros and went
270/294/249 Which year was he hurt? The year he was at 249.

85 to 87 with Stros.

277/298/244

88 with Houston, 89 with Texas
290/262

If the argument is that controlling hits on balls in play is a true 'skill', then why did Ryan have 2 of his best seasons at age 43 and 44? 246/232 in those back to back year? If it's something that develops late in a career why did he go from 232 to 306 the next year?

His career number is 269 versus a league average of 282. But if you look at the numbers season by season if you took out what happened after 1988 he'd be almost exactly on the league average. His last few seasons was where he really got below the league average, because the average BABIP was rising, and his was sinking.

I'm lazy and it will take a while to calculate but it looks like he would be at about 273 against league average 279 through his age 41 season. If this is a 'skill' that has a huge influence on results.
A: Why did he wait until he was so old?
B: Why does it seem to age different then almost every skill in the world?
C: Why can't other pitchers extend their careers as they start to fade by limiting hits on balls in play?
lynchjm24 is offline   Reply With Quote
Old 06-22-2009, 08:19 AM   #132
knockahoma
All Star Reserve
 
Join Date: Dec 2002
Posts: 792
Lynch,

Not much time this morning. I did a lot of work with pitchers I found in 74 (since I'm extremely familiar with that year), looking at their career. Again, I think it's worth looking at segments of years, the idea being that players go through ebbs and flows in their careers.

By looking at these ebbs and flows, we might pick up some interesting stuff. You see these partitions in every-day player stats. You'll see a guy struggle in the first few years with a .220 BA, 4HR, then for the next three be productive with a .260 BA and maybe 15 HRs, then he disappears, batting .205 with a couple of homers. I was looking at several players like this from the 74 and 71 leagues last night. We could say, "He ranged from .205-.260 and hit 55 HR in 7 years. But, we'd be missing his true productivity in that three year period.

Three year periods in a 15 year career look like blinks of the eye on a stats page. But, they weren't, of course. That's why I want to examine pitchers year by year. It's kind of a detective story. When Johnson pitches a stretch like this:

Quote:
91 .282
92 .279
93 .273
That's a differential of 9 points in THREE years. So, what, 90 to 100 games, I'm thinking? When you think of it that way, that's incredibly consistent over 100 games and 3 full years. How much is D, Luck, Pitcher? I dunno.

I just know that, more and more, I'm seeing consistency where I used to hear there was little, or none. If only a small percentage of pitchers had stretches like that, I would chalk it up to luck.

How about I bring full staffs from the 74 season. We can examine each pitcher for periods of consistency (3 years, or longer).

Also, I would like to follow up on the defense thing. What defensive stats do you like, or dislike, when it comes to measuring past teams? I saw a couple of questions I'd like to take a swing at. I just don't have time this morning. Maybe the next post.

Last edited by knockahoma; 06-22-2009 at 08:38 AM.
knockahoma is offline   Reply With Quote
Old 06-22-2009, 11:01 AM   #133
RonCo
Hall Of Famer
 
Join Date: Aug 2003
Posts: 10,508
Realize that unadjusted numbers are never good enough...

Anyway, I took every pitcher who changed teams mid-year from 1960-1985. I then removed all examples who changed more than once, and all who had fewer than 100 BIP in either stint. This left me with 124 pitchers who had pitched for two teams in the same year, and had seen at least 100 BIP with each team. I then took the raw difference of their BABIP.

Here's the data--treat it for what it's worth:

Code:
Change in BABIP with Team 2 from Team 1:

Min	-0.135
Max	0.122
Avg	-0.013
Stdev	0.047
A couple interesting items of note...

1) 11 pitchers gained more than 50 points on their BABIP
2) 26 pitchers lost more than 50 points on their BABIP
3) So, 29.8% of pitchers varied bymore than .050 BABIP
4) The AVERAGE pitcher in this sample got .013 BABIP points better after the trade. That's interesting...perhaps they were unfamiliar to hitters? Your guess is as good as mine. My guess is that the data is off a little since it's raw and un-adjusted.
5) The standard deviation of .047 shows how varied this data is--but it makes sense because of the sample size. Change the sample size to year-by-year, and the variation should drop just by the math.
6) The standard deviation of .047 also says that ~ 31% of the data should fall outside this zone by random chance. That 29.8% varies by more than .050 is a confirmation of this...hence the distribution is pretty danged close to random.

Last edited by RonCo; 06-22-2009 at 01:34 PM. Reason: added "% of"
RonCo is offline   Reply With Quote
Old 06-22-2009, 11:06 AM   #134
RonCo
Hall Of Famer
 
Join Date: Aug 2003
Posts: 10,508
I also note that 30 pitchers (24.1%) were "consistent" -- measured as varying by under +/-.015 from team-to-team.

Last edited by RonCo; 06-22-2009 at 01:35 PM. Reason: added "+/-"
RonCo is offline   Reply With Quote
Old 06-22-2009, 11:37 AM   #135
RonCo
Hall Of Famer
 
Join Date: Aug 2003
Posts: 10,508
So, at that level, I can say that for every "consitent" pitcher (variance < .015) I can find one super-inconsistent pichter (variance >.05), and two merely inconsistent pichers (variance between .015-.050).
RonCo is offline   Reply With Quote
Old 06-22-2009, 12:22 PM   #136
Curtis
Hall Of Famer
 
Join Date: Jul 2006
Location: Watertown, New York
Posts: 4,567
knockahoma, I think what RonCo's saying is that (and I'm sure he'll correct me if I'm misinterpreting) you need to do more than find that there are pitchers who appear to be consistent. You need to find that there are more who appear consistent than pure chance would predict.

I think that can be extended to your original point of stretches of consistency. I think in order to 'prove' (or strongly imply) that there's some causality to what you've observed, you'd need to look at all pitchers with careers of 7+ seasons whose entire careers (or all but the first two seasons) were after 1920. I would throw out their first two 'establishing' and last two 'declining' seasons as being uncharacteristic of most players' careers. There are exceptions, especially for guys who suffered CEIs, but I'd want to treat everyone the same.

After establishing your pitching pool, you'd need to correct BABIP by stadium, team defense and year, so you get a value that would be above or below the standard for each season. I'm sure someone has already done this (and likely also corrected for something that hasn't occured to me), and it probably has a weird acronym name, but I wouldn't know where to find it.

Then find out how many discrete three year and four year periods you have. As an example, a pitcher with a ten year career would have four three year periods to look at (3-4-5/4-5-6/5-6-7/6-7-8) and three four year periods. You'd evaluate the three and four year periods seperately, of course.

After finding the number of periods, you'd establish the mean range for a period, and from that and the number of periods you'd calculate the standard deviation. That would tell you how many of these periods were expected to be twenty or fewer points in range. Then count the actual number of periods that were within twenty points.

THEN come back and tell us whether you were seeing an oasis or a mirage. I wish you luck.

And, as long as I'm here, your stories are the best parts of your posts, and you write them well. So, ignore lynchjm, and keep churning out that fiction. Have you tried your hand at writing a dynasty thread? Fiction would seem to be your 'first, best destiny'.
Curtis is offline   Reply With Quote
Old 06-22-2009, 12:59 PM   #137
jbergey22
Hall Of Famer
 
jbergey22's Avatar
 
Join Date: Apr 2005
Location: Minnesota
Posts: 3,481
Has anyone ever done a study in which they lump k/bb/hr/3b/2b's together?

I ask this simply because I think we would all agree that Silva gives up harder hit balls then Mariano Rivera. Singles in my opinion are not in the pitchers hand as you see so many weak grounders and flares that fall in.

On the other hand a lot of doubles and triples are well struck balls that hit off the wall or linedrive into the gap that even the best defenders have no chance on. Of course some of these are on the defense so its going to have a lot of flaws Id just like to know what a guy like Messersmith looks like compared to other pitchers this way.

Last edited by jbergey22; 06-22-2009 at 01:02 PM.
jbergey22 is offline   Reply With Quote
Old 06-22-2009, 01:09 PM   #138
RonCo
Hall Of Famer
 
Join Date: Aug 2003
Posts: 10,508
Yes, Curtis...that's the flavor I'm trying to capture. To go through the process Knock is going trough, and then finding that "I think I see lots of consistency" is interesting, but in the end is what Bill James would call "bad sabermetrics." Instead, I suggest designing an experiment that studies a topic, gathering enough data to make the experiment hold its weight, and let it fly. I also suggest presenting the data in a format that makes a case. Given Knock's professional status, I assume he knows all this, but it's not evident from what he's doing here...maybe it's just me...I don't know.

My study above is also "bad sabermetrics" if I try to draw a full inference from it. My data is not adjusted at all, and I haven't done anything to try to balance the selection criteria particularly well. (I'm also cheating just a little on a couple raw stats things, but not so badly that I feel messy because of it!). It was just an quick and dirty initial shot in the dark. But I would suggest that my shot in the dark carries a tiny bit more weight than Knocks approach to my way of thinking and doing things.

At the end of the day, if I were a GM I wouldn't want to rely on Knock's method _or_ my study. But if I had 15 seconds to make a decision and had to pick just one, I would trust the data of mine over the approach Knock is using merely because of its scope and because it tells a story that I can use as a predictive tool even though its confidence factor has got to be low.

In either case, if I were a GM looking to make a deal I would look at BABIP only at the very end of a much longer assessment trail.

Last edited by RonCo; 06-22-2009 at 02:36 PM.
RonCo is offline   Reply With Quote
Old 06-22-2009, 01:14 PM   #139
RonCo
Hall Of Famer
 
Join Date: Aug 2003
Posts: 10,508
Quote:
Originally Posted by jbergey22 View Post
Has anyone ever done a study in which they lump k/bb/hr/3b/2b's together?

I ask this simply because I think we would all agree that Silva gives up harder hit balls then Mariano Rivera. Singles in my opinion are not in the pitchers hand as you see so many weak grounders and flares that fall in.

On the other hand a lot of doubles and triples are well struck balls that hit off the wall or linedrive into the gap that even the best defenders have no chance on. Of course some of these are on the defense so its going to have a lot of flaws Id just like to know what a guy like Messersmith looks like compared to other pitchers this way.
The studies I've seen support that line drives fall into the "batter matters a lot, pitcher doesn't matter much at all" camp. This makes sense based on other data, because line drives correlate well with BABIP. So it would be a contradictory finding to discover that pitchers have considerably more control over line drives than they do over BABIP.

To be clear, though "not much at all" does not necesssarily equate to 0.00000000000.

Last edited by RonCo; 06-22-2009 at 01:38 PM.
RonCo is offline   Reply With Quote
Old 06-22-2009, 01:26 PM   #140
jbergey22
Hall Of Famer
 
jbergey22's Avatar
 
Join Date: Apr 2005
Location: Minnesota
Posts: 3,481
Perhaps being traded to good teams helped the pitchers BABIP in your example Ron. Teams in a pennant race tend to make deals to improve at some point in the season. Athough Im not sure how common that was from 60-85.

Last edited by jbergey22; 06-22-2009 at 01:28 PM.
jbergey22 is offline   Reply With Quote
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:48 AM.

 

Major League and Minor League Baseball trademarks and copyrights are used with permission of Major League Baseball. Visit MLB.com and MiLB.com.

Officially Licensed Product – MLB Players, Inc.

Out of the Park Baseball is a registered trademark of Out of the Park Developments GmbH & Co. KG

Google Play is a trademark of Google Inc.

Apple, iPhone, iPod touch and iPad are trademarks of Apple Inc., registered in the U.S. and other countries.

COPYRIGHT © 2023 OUT OF THE PARK DEVELOPMENTS. ALL RIGHTS RESERVED.

 

Powered by vBulletin® Version 3.8.10
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Copyright © 2024 Out of the Park Developments