<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>// do something here &#187; C#.NET</title>
	<atom:link href="http://www.dosomethinghere.com/tag/c-net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dosomethinghere.com</link>
	<description>Turning impossibilities into 1s and 0s professionally since 0&#120;07C1</description>
	<lastBuildDate>Thu, 29 Jul 2010 14:46:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>2010 Central Ohio Day of .NET</title>
		<link>http://www.dosomethinghere.com/2010/06/05/2010-central-ohio-day-of-net/</link>
		<comments>http://www.dosomethinghere.com/2010/06/05/2010-central-ohio-day-of-net/#comments</comments>
		<pubDate>Sat, 05 Jun 2010 23:48:56 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[C#.NET]]></category>
		<category><![CDATA[CONDG]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=535</guid>
		<description><![CDATA[A co-w0rker and I attended the Central Ohio Day of .NET on June 5, 2010. There was quite a bit of good content at the conference, which is a real tribute to the organizers, volunteers, and presenters.
The highlights of my day were sitting in on Matt Casto&#8217;s regular expressions talk, Phil Japikse&#8217;s M-V-VM primer, discussing [...]]]></description>
			<content:encoded><![CDATA[<p>A co-w0rker and I attended the Central Ohio Day of .NET on June 5, 2010. There was quite a bit of good content at the conference, which is a real tribute to the organizers, volunteers, and presenters.</p>
<p>The highlights of my day were sitting in on Matt Casto&#8217;s regular expressions talk, Phil Japikse&#8217;s M-V-VM primer, discussing the etymology of the MongoDB project with Sam Corder (I still say it was named such after the character in Blazing Saddles), Michael Eaton&#8217;s talk on WPF, and Parag Joshi&#8217;s demonstration of XNA/Windows Phone 7 game development.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2010/06/05/2010-central-ohio-day-of-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Demo days (CONDG meeting, December 14, 2009)</title>
		<link>http://www.dosomethinghere.com/2009/12/15/demo-days-condg-meeting-december-14-2009/</link>
		<comments>http://www.dosomethinghere.com/2009/12/15/demo-days-condg-meeting-december-14-2009/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 14:52:58 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[C#.NET]]></category>
		<category><![CDATA[CONDG]]></category>
		<category><![CDATA[iPhone SDK]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=426</guid>
		<description><![CDATA[2009-12-15 09.13.18]]></description>
			<content:encoded><![CDATA[<p>The Central Ohio .NET Developers Group held their final meeting of the year last night at the Microsoft office in Polaris. Four people gave short demos of Xbox, Zune HD, Windows Mobile, and iPhone, and talked about developing for each platform.</p>
<p>The highlight of the evening was my name being drawn as winning the year&#8217;s final and perhaps most craptastic door prize, which I then gave to my coworker who was attending the meeting with me. He is into free t-shirts.</p>
<p><img class="alignnone size-full wp-image-429" title="2009-12-15 09.13.18" src="http://www.dosomethinghere.com/wp-content/uploads/2009/12/2009-12-15-09.13.18.jpg" alt="2009-12-15 09.13.18" width="480" height="643" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/12/15/demo-days-condg-meeting-december-14-2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Battleship AI contest on Stack Overflow</title>
		<link>http://www.dosomethinghere.com/2009/11/26/battleship-ai-contest-on-stack-overflow/</link>
		<comments>http://www.dosomethinghere.com/2009/11/26/battleship-ai-contest-on-stack-overflow/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 16:39:27 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Stack Overflow]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=400</guid>
		<description><![CDATA[Recently there was a contest running on Stack Overflow to design the best Battleship AI. Here is a link to the page:
What is the best Battleship AI?
I must admit that I am still smarting over this contest, as my BP7 contest entry did awesomely well and incredibly poor at the same time. Here is the [...]]]></description>
			<content:encoded><![CDATA[<p>Recently there was a contest running on Stack Overflow to design the best Battleship AI. Here is a link to the page:</p>
<p><a href="http://stackoverflow.com/questions/1631414/what-is-the-best-battleship-ai" target="_blank">What is the best Battleship AI?</a></p>
<p>I must admit that I am still smarting over this contest, as my BP7 contest entry did awesomely well and incredibly poor at the same time. Here is the code:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">namespace</span> Battleship
<span style="color: #000000;">&#123;</span>
    <span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
    <span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
    <span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Drawing</span><span style="color: #008000;">;</span>
    <span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
    <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">class</span> BP7 <span style="color: #008000;">:</span> IBattleshipOpponent
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">string</span> Name <span style="color: #000000;">&#123;</span> get <span style="color: #000000;">&#123;</span> <span style="color: #0600FF;">return</span> <span style="color: #666666;">&quot;BP7&quot;</span><span style="color: #008000;">;</span> <span style="color: #000000;">&#125;</span> <span style="color: #000000;">&#125;</span>
        <span style="color: #0600FF;">public</span> Version Version <span style="color: #000000;">&#123;</span> get <span style="color: #000000;">&#123;</span> <span style="color: #0600FF;">return</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">version</span><span style="color: #008000;">;</span> <span style="color: #000000;">&#125;</span> <span style="color: #000000;">&#125;</span>
&nbsp;
        Random rand <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Random<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        Version version <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Version<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">0</span>, <span style="color: #FF0000;">7</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        Size gameSize<span style="color: #008000;">;</span>
        List<span style="color: #008000;">&lt;</span>Point<span style="color: #008000;">&gt;</span> scanShots<span style="color: #008000;">;</span>
        List<span style="color: #008000;">&lt;</span>NextShot<span style="color: #008000;">&gt;</span> nextShots<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> wins, losses<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> totalWins <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> totalLosses <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> maxWins <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> maxLosses <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> matchWins <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> matchLosses <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">enum</span> Direction <span style="color: #000000;">&#123;</span> VERTICAL <span style="color: #008000;">=</span> <span style="color: #008000;">-</span><span style="color: #FF0000;">1</span>, UNKNOWN <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span>, HORIZONTAL <span style="color: #008000;">=</span> <span style="color: #FF0000;">1</span> <span style="color: #000000;">&#125;</span><span style="color: #008000;">;</span>
        Direction hitDirection, lastShotDirection<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #FF0000;">enum</span> ShotResult <span style="color: #000000;">&#123;</span> UNKNOWN, MISS, HIT <span style="color: #000000;">&#125;</span><span style="color: #008000;">;</span>
        ShotResult<span style="color: #000000;">&#91;</span>,<span style="color: #000000;">&#93;</span> board<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">struct</span> NextShot
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">public</span> Point point<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">public</span> Direction direction<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">public</span> NextShot<span style="color: #000000;">&#40;</span>Point p, Direction d<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                point <span style="color: #008000;">=</span> p<span style="color: #008000;">;</span>
                direction <span style="color: #008000;">=</span> d<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">struct</span> ScanShot
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">public</span> Point point<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">public</span> <span style="color: #FF0000;">int</span> openSpaces<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">public</span> ScanShot<span style="color: #000000;">&#40;</span>Point p, <span style="color: #FF0000;">int</span> o<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                point <span style="color: #008000;">=</span> p<span style="color: #008000;">;</span>
                openSpaces <span style="color: #008000;">=</span> o<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> NewGame<span style="color: #000000;">&#40;</span>Size size, TimeSpan timeSpan<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">gameSize</span> <span style="color: #008000;">=</span> size<span style="color: #008000;">;</span>
            scanShots <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>Point<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            nextShots <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>NextShot<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fillScanShots<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            hitDirection <span style="color: #008000;">=</span> Direction.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #008000;">;</span>
            board <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> ShotResult<span style="color: #000000;">&#91;</span>size.<span style="color: #0000FF;">Width</span>, size.<span style="color: #0000FF;">Height</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">void</span> fillScanShots<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> x<span style="color: #008000;">;</span>
            <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> x <span style="color: #008000;">&lt;</span> gameSize.<span style="color: #0000FF;">Width</span> <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span><span style="color: #008000;">;</span> x<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                scanShots.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x, x<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>gameSize.<span style="color: #0000FF;">Width</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">10</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> x <span style="color: #008000;">&lt;</span> <span style="color: #FF0000;">3</span><span style="color: #008000;">;</span> x<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    scanShots.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">9</span> <span style="color: #008000;">-</span> x, x<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    scanShots.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x, <span style="color: #FF0000;">9</span> <span style="color: #008000;">-</span> x<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> PlaceShips<span style="color: #000000;">&#40;</span><span style="color: #000000;">System.<span style="color: #0000FF;">Collections</span></span>.<span style="color: #0000FF;">ObjectModel</span>.<span style="color: #0000FF;">ReadOnlyCollection</span><span style="color: #008000;">&lt;</span>Ship<span style="color: #008000;">&gt;</span> ships<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span>Ship s <span style="color: #0600FF;">in</span> ships<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                s.<span style="color: #0000FF;">Place</span><span style="color: #000000;">&#40;</span>
                    <span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>
                        rand.<span style="color: #0000FF;">Next</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">gameSize</span>.<span style="color: #0000FF;">Width</span><span style="color: #000000;">&#41;</span>,
                        rand.<span style="color: #0000FF;">Next</span><span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">gameSize</span>.<span style="color: #0000FF;">Height</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>,
                    <span style="color: #000000;">&#40;</span>ShipOrientation<span style="color: #000000;">&#41;</span>rand.<span style="color: #0000FF;">Next</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Point GetShot<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Point shot<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Count</span> <span style="color: #008000;">&gt;</span> <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>hitDirection <span style="color: #008000;">!=</span> Direction.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>hitDirection <span style="color: #008000;">==</span> Direction.<span style="color: #0000FF;">HORIZONTAL</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span> <span style="color: #008000;">=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">OrderByDescending</span><span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=&gt;</span> x.<span style="color: #0000FF;">direction</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                    <span style="color: #0600FF;">else</span>
                    <span style="color: #000000;">&#123;</span>
                        <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span> <span style="color: #008000;">=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">OrderBy</span><span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=&gt;</span> x.<span style="color: #0000FF;">direction</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
&nbsp;
                shot <span style="color: #008000;">=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">First</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">point</span><span style="color: #008000;">;</span>
                lastShotDirection <span style="color: #008000;">=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">First</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">direction</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">RemoveAt</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">return</span> shot<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            List<span style="color: #008000;">&lt;</span>ScanShot<span style="color: #008000;">&gt;</span> scanShots <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>ScanShot<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> x <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> x <span style="color: #008000;">&lt;</span> gameSize.<span style="color: #0000FF;">Width</span><span style="color: #008000;">;</span> x<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> y <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> y <span style="color: #008000;">&lt;</span> gameSize.<span style="color: #0000FF;">Height</span><span style="color: #008000;">;</span> y<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>board<span style="color: #000000;">&#91;</span>x, y<span style="color: #000000;">&#93;</span> <span style="color: #008000;">==</span> ShotResult.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        scanShots.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> ScanShot<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x, y<span style="color: #000000;">&#41;</span>, OpenSpaces<span style="color: #000000;">&#40;</span>x, y<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
            scanShots <span style="color: #008000;">=</span> scanShots.<span style="color: #0000FF;">OrderByDescending</span><span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=&gt;</span> x.<span style="color: #0000FF;">openSpaces</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> maxOpenSpaces <span style="color: #008000;">=</span> scanShots.<span style="color: #0000FF;">FirstOrDefault</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">openSpaces</span><span style="color: #008000;">;</span>
&nbsp;
            List<span style="color: #008000;">&lt;</span>ScanShot<span style="color: #008000;">&gt;</span> scanShots2 <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>ScanShot<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            scanShots2 <span style="color: #008000;">=</span> scanShots.<span style="color: #0000FF;">Where</span><span style="color: #000000;">&#40;</span>x <span style="color: #008000;">=&gt;</span> x.<span style="color: #0000FF;">openSpaces</span> <span style="color: #008000;">==</span> maxOpenSpaces<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            shot <span style="color: #008000;">=</span> scanShots2<span style="color: #000000;">&#91;</span>rand.<span style="color: #0000FF;">Next</span><span style="color: #000000;">&#40;</span>scanShots2.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">point</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> shot<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #FF0000;">int</span> OpenSpaces<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> x, <span style="color: #FF0000;">int</span> y<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> ctr <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
            Point p<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// spaces to the left</span>
            p <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span>, y<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>p.<span style="color: #0000FF;">X</span> <span style="color: #008000;">&gt;=</span> <span style="color: #FF0000;">0</span> <span style="color: #008000;">&amp;&amp;</span> board<span style="color: #000000;">&#91;</span>p.<span style="color: #0000FF;">X</span>, p.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">==</span> ShotResult.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                ctr<span style="color: #008000;">++;</span>
                p.<span style="color: #0000FF;">X</span><span style="color: #008000;">--;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// spaces to the right</span>
            p <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x <span style="color: #008000;">+</span> <span style="color: #FF0000;">1</span>, y<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>p.<span style="color: #0000FF;">X</span> <span style="color: #008000;">&lt;</span> gameSize.<span style="color: #0000FF;">Width</span> <span style="color: #008000;">&amp;&amp;</span> board<span style="color: #000000;">&#91;</span>p.<span style="color: #0000FF;">X</span>, p.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">==</span> ShotResult.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                ctr<span style="color: #008000;">++;</span>
                p.<span style="color: #0000FF;">X</span><span style="color: #008000;">++;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// spaces to the top</span>
            p <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x, y <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>p.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">&gt;=</span> <span style="color: #FF0000;">0</span> <span style="color: #008000;">&amp;&amp;</span> board<span style="color: #000000;">&#91;</span>p.<span style="color: #0000FF;">X</span>, p.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">==</span> ShotResult.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                ctr<span style="color: #008000;">++;</span>
                p.<span style="color: #0000FF;">Y</span><span style="color: #008000;">--;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// spaces to the bottom</span>
            p <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>x, y <span style="color: #008000;">+</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>p.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">&lt;</span> gameSize.<span style="color: #0000FF;">Height</span> <span style="color: #008000;">&amp;&amp;</span> board<span style="color: #000000;">&#91;</span>p.<span style="color: #0000FF;">X</span>, p.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">==</span> ShotResult.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                ctr<span style="color: #008000;">++;</span>
                p.<span style="color: #0000FF;">Y</span><span style="color: #008000;">++;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> ctr<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> NewMatch<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> opponenet<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            wins <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
            losses <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> OpponentShot<span style="color: #000000;">&#40;</span>Point shot<span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span> <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> ShotHit<span style="color: #000000;">&#40;</span>Point shot, <span style="color: #FF0000;">bool</span> sunk<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            board<span style="color: #000000;">&#91;</span>shot.<span style="color: #0000FF;">X</span>, shot.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">=</span> ShotResult.<span style="color: #0000FF;">HIT</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #008000;">!</span>sunk<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                hitDirection <span style="color: #008000;">=</span> lastShotDirection<span style="color: #008000;">;</span>
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span> <span style="color: #008000;">!=</span> <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> NextShot<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span> <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span>, shot.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#41;</span>, Direction.<span style="color: #0000FF;">HORIZONTAL</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #000000;">&#125;</span>
&nbsp;
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">!=</span> <span style="color: #FF0000;">0</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> NextShot<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span>, shot.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span>, Direction.<span style="color: #0000FF;">VERTICAL</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #000000;">&#125;</span>
&nbsp;
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">gameSize</span>.<span style="color: #0000FF;">Width</span> <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> NextShot<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span> <span style="color: #008000;">+</span> <span style="color: #FF0000;">1</span>, shot.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#41;</span>, Direction.<span style="color: #0000FF;">HORIZONTAL</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #000000;">&#125;</span>
&nbsp;
                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">gameSize</span>.<span style="color: #0000FF;">Height</span> <span style="color: #008000;">-</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> NextShot<span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Point<span style="color: #000000;">&#40;</span>shot.<span style="color: #0000FF;">X</span>, shot.<span style="color: #0000FF;">Y</span> <span style="color: #008000;">+</span> <span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span>, Direction.<span style="color: #0000FF;">VERTICAL</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">else</span>
            <span style="color: #000000;">&#123;</span>
                hitDirection <span style="color: #008000;">=</span> Direction.<span style="color: #0000FF;">UNKNOWN</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">this</span>.<span style="color: #0000FF;">nextShots</span>.<span style="color: #0000FF;">Clear</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// so now this works like gangbusters ?!?!?!?!?!?!?!?!?</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> ShotMiss<span style="color: #000000;">&#40;</span>Point shot<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            board<span style="color: #000000;">&#91;</span>shot.<span style="color: #0000FF;">X</span>, shot.<span style="color: #0000FF;">Y</span><span style="color: #000000;">&#93;</span> <span style="color: #008000;">=</span> ShotResult.<span style="color: #0000FF;">MISS</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> GameWon<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            wins<span style="color: #008000;">++;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> GameLost<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            losses<span style="color: #008000;">++;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> MatchOver<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>wins <span style="color: #008000;">&gt;</span> maxWins<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                maxWins <span style="color: #008000;">=</span> wins<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>losses <span style="color: #008000;">&gt;</span> maxLosses<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                maxLosses <span style="color: #008000;">=</span> losses<span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            totalWins <span style="color: #008000;">+=</span> wins<span style="color: #008000;">;</span>
            totalLosses <span style="color: #008000;">+=</span> losses<span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>wins <span style="color: #008000;">&gt;=</span> losses<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                matchWins<span style="color: #008000;">++;</span>
            <span style="color: #000000;">&#125;</span>
            <span style="color: #0600FF;">else</span>
            <span style="color: #000000;">&#123;</span>
                matchLosses<span style="color: #008000;">++;</span>
            <span style="color: #000000;">&#125;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">void</span> FinalStats<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Games won: &quot;</span> <span style="color: #008000;">+</span> totalWins.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Games lost: &quot;</span> <span style="color: #008000;">+</span> totalLosses.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Game winning percentage: &quot;</span> <span style="color: #008000;">+</span> <span style="color: #000000;">&#40;</span>totalWins <span style="color: #008000;">*</span> <span style="color: #FF0000;">1.0</span> <span style="color: #008000;">/</span> <span style="color: #000000;">&#40;</span>totalWins <span style="color: #008000;">+</span> totalLosses<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;P&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Game losing percentage: &quot;</span> <span style="color: #008000;">+</span> <span style="color: #000000;">&#40;</span>totalLosses <span style="color: #008000;">*</span> <span style="color: #FF0000;">1.0</span> <span style="color: #008000;">/</span> <span style="color: #000000;">&#40;</span>totalWins <span style="color: #008000;">+</span> totalLosses<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;P&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Matches won: &quot;</span> <span style="color: #008000;">+</span> matchWins.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Matches lost: &quot;</span> <span style="color: #008000;">+</span> matchLosses.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Match winning percentage: &quot;</span> <span style="color: #008000;">+</span> <span style="color: #000000;">&#40;</span>matchWins <span style="color: #008000;">*</span> <span style="color: #FF0000;">1.0</span> <span style="color: #008000;">/</span> <span style="color: #000000;">&#40;</span>matchWins <span style="color: #008000;">+</span> matchLosses<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;P&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Match losing percentage: &quot;</span> <span style="color: #008000;">+</span> <span style="color: #000000;">&#40;</span>matchLosses <span style="color: #008000;">*</span> <span style="color: #FF0000;">1.0</span> <span style="color: #008000;">/</span> <span style="color: #000000;">&#40;</span>matchWins <span style="color: #008000;">+</span> matchLosses<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;P&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Match games won high: &quot;</span> <span style="color: #008000;">+</span> maxWins.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Match games lost high: &quot;</span> <span style="color: #008000;">+</span> maxLosses.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>The thing I find odd about this was that against the winning entry, Dreadnought, my AI was far and away the most successful, winning about 40% of the individual games. The next closest competitor to Dreadnought was BSKiller, crafted by my compatriot in crime, John Boker, winning 20% in the initial round robin and 12% and 14% in the knockout round.</p>
<p>And yet, BP7 stunk against most of the other real submissions, which is a bit mysterious to me. I understand that there is some random fortune involved here (for example, in the round robin, BSKiller defeated BP7 121 games to 80, even though in my own testing, BP7 was winning about 54% of the games over BSKiller), but to be defeated at almost every turn?</p>
<p>Oh well. Here is my VS2008 solution and class files, if you would care to try it out for yourself:</p>
<p><a href="http://www.dosomethinghere.com/downloads/Battleship.zip">Battleship solution</a></p>
<p>Also, when I was first looking into this problem, I created some graph paper to help me visualize certain situations. Here is the PDF file of this graph paper:</p>
<p><a href="http://www.dosomethinghere.com/downloads/battleship_graph_paper.pdf">Battleship Graph Paper</a></p>
<p>Happy Thanksgiving everyone! (For those outside the U.S., Happy November 26th.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/11/26/battleship-ai-contest-on-stack-overflow/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Deuces wild???</title>
		<link>http://www.dosomethinghere.com/2009/11/12/deuces-wild/</link>
		<comments>http://www.dosomethinghere.com/2009/11/12/deuces-wild/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 03:08:17 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Retrosheet]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=383</guid>
		<description><![CDATA[As a baseball loving youth, I remember with great fondness watching and listening to baseball as called by the voice of baseball, Vin Scully, who is unquestionably one of the greatest baseball announcers.
One thing I can always remember him saying during his calls was &#8220;deuces wild&#8221;, which he used to describe a situation that occurs [...]]]></description>
			<content:encoded><![CDATA[<p>As a baseball loving youth, I remember with great fondness watching and listening to baseball as called by the voice of baseball, Vin Scully, who is unquestionably one of the greatest baseball announcers.</p>
<p>One thing I can always remember him saying during his calls was &#8220;deuces wild&#8221;, which he used to describe a situation that occurs with a count of 2 balls, 2 strikes, and 2 outs.</p>
<p>So, I figured I would take a look at the raw statistics and see how often the deuces wild situation actually came up.  Here is the code from my Program.cs file:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> Program
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Team<span style="color: #008000;">&gt;</span> teamList<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Player<span style="color: #008000;">&gt;</span> playerList<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span><span style="color: #0600FF;">Event</span><span style="color: #008000;">&gt;</span> eventList<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">const</span> <span style="color: #FF0000;">string</span> DATA <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;c:<span style="color: #008080; font-weight: bold;">\\</span>baseball_data<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> Main<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> args<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Retrosheet Reader&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            teamList <span style="color: #008000;">=</span> Team.<span style="color: #0000FF;">GetTeamList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playerList <span style="color: #008000;">=</span> Player.<span style="color: #0000FF;">GetPlayerList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            eventList <span style="color: #008000;">=</span> <span style="color: #0600FF;">Event</span>.<span style="color: #0000FF;">GetEventList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of teams: &quot;</span> <span style="color: #008000;">+</span> teamList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of players: &quot;</span> <span style="color: #008000;">+</span> playerList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of events: &quot;</span> <span style="color: #008000;">+</span> eventList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">int</span><span style="color: #000000;">&#91;</span>, ,<span style="color: #000000;">&#93;</span> pitchCount <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> <span style="color: #FF0000;">int</span><span style="color: #000000;">&#91;</span><span style="color: #FF0000;">4</span>, <span style="color: #FF0000;">3</span>, <span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> balls, strikes, totalPitches<span style="color: #008000;">;</span>
&nbsp;
            totalPitches <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span>var ev <span style="color: #0600FF;">in</span> eventList<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                balls <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
                strikes <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">char</span> c <span style="color: #0600FF;">in</span> ev.<span style="color: #0000FF;">pitchSequence</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>Functions.<span style="color: #0000FF;">IsBallOrStrike</span><span style="color: #000000;">&#40;</span>c<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        pitchCount<span style="color: #000000;">&#91;</span>balls, strikes, ev.<span style="color: #0000FF;">outs</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">++;</span>
                        totalPitches<span style="color: #008000;">++;</span>
                        <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>Functions.<span style="color: #0000FF;">IsStrike</span><span style="color: #000000;">&#40;</span>c<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
                        <span style="color: #000000;">&#123;</span>
                            <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>strikes <span style="color: #008000;">==</span> <span style="color: #FF0000;">2</span><span style="color: #000000;">&#41;</span>
                            <span style="color: #000000;">&#123;</span>
                                <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #008000;">!</span>Functions.<span style="color: #0000FF;">IsFoul</span><span style="color: #000000;">&#40;</span>c<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
                                    strikes<span style="color: #008000;">++;</span>
                            <span style="color: #000000;">&#125;</span>
                            <span style="color: #0600FF;">else</span>
                                strikes<span style="color: #008000;">++;</span>
                        <span style="color: #000000;">&#125;</span>
                        <span style="color: #0600FF;">else</span>
                        <span style="color: #000000;">&#123;</span>
                            balls<span style="color: #008000;">++;</span>
                        <span style="color: #000000;">&#125;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Total pitches: &quot;</span> <span style="color: #008000;">+</span> totalPitches.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> o <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> o <span style="color: #008000;">&lt;</span> <span style="color: #FF0000;">3</span><span style="color: #008000;">;</span> o<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
                <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> s <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> s <span style="color: #008000;">&lt;</span> <span style="color: #FF0000;">3</span><span style="color: #008000;">;</span> s<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #0600FF;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> b <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">;</span> b <span style="color: #008000;">&lt;</span> <span style="color: #FF0000;">4</span><span style="color: #008000;">;</span> b<span style="color: #008000;">++</span><span style="color: #000000;">&#41;</span>
                        Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">String</span>.<span style="color: #0000FF;">Format</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Total pitches on B{0}-S{1}-O{2}: {3,8}  ({4,6:P})&quot;</span>, b, s, o, pitchCount<span style="color: #000000;">&#91;</span>b, s, o<span style="color: #000000;">&#93;</span>,
                                                    pitchCount<span style="color: #000000;">&#91;</span>b, s, o<span style="color: #000000;">&#93;</span> <span style="color: #008000;">*</span> <span style="color: #FF0000;">1.0</span> <span style="color: #008000;">/</span> totalPitches<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Strike any key to end...&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">ReadKey</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>By the way, there is a new Functions.cs file in the project that contains utility functions, and I had to modify the Event.cs file to take into account the fact that the BEVENT application creates duplicate records for a batter if there is some kind of on-base event that happens in the middle of the at-bat, such as a stolen base or pick off.</p>
<p>The results? I ran the application with the 2008 season data, and found that there were 700,242 total pitches. The deuces wild situation happened on only 17,141 pitches, or 2.45%. Of course, the highest percentage occurred with 0 balls, 0 strikes, and 0 outs (the first pitch to any batters that bat in an inning before the first out is recorded, including the first batter of each inning) with 65,050 pitches, or 9.29%.</p>
<p>Here is the zipped up solution:</p>
<p><a href="http://www.dosomethinghere.com/downloads/RetrosheetReader.zip" target="_blank">RetrosheetReader.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/11/12/deuces-wild/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Best way to not use an enumeration, ever!</title>
		<link>http://www.dosomethinghere.com/2009/11/10/best-way-to-not-use-an-enumeration-ever/</link>
		<comments>http://www.dosomethinghere.com/2009/11/10/best-way-to-not-use-an-enumeration-ever/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 00:38:46 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Inspirational code]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=379</guid>
		<description><![CDATA[So here is some more interesting stuff found in some code that needed some emergency modifications.
The enumeration of this code starts on line 26 of the class file:

public enum City
&#123;
    CLINTON = 78,
    FRANKLIN = 1,
    FAIRVIEW = 59,
    GREENVILLE = 55,
  [...]]]></description>
			<content:encoded><![CDATA[<p>So here is some more interesting stuff found in some code that needed some emergency modifications.</p>
<p>The enumeration of this code starts on line 26 of the class file:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">public</span> <span style="color: #FF0000;">enum</span> City
<span style="color: #000000;">&#123;</span>
    CLINTON <span style="color: #008000;">=</span> <span style="color: #FF0000;">78</span>,
    FRANKLIN <span style="color: #008000;">=</span> <span style="color: #FF0000;">1</span>,
    FAIRVIEW <span style="color: #008000;">=</span> <span style="color: #FF0000;">59</span>,
    GREENVILLE <span style="color: #008000;">=</span> <span style="color: #FF0000;">55</span>,
    SALEM <span style="color: #008000;">=</span> <span style="color: #FF0000;">83</span>,
    MADISON <span style="color: #008000;">=</span> <span style="color: #FF0000;">81</span>,
    SPRINGFIELD <span style="color: #008000;">=</span> <span style="color: #FF0000;">14</span>,
    ARLINGTON <span style="color: #008000;">=</span> <span style="color: #FF0000;">84</span>,
    CLAYTON <span style="color: #008000;">=</span> <span style="color: #FF0000;">63</span>,
    GEORGETOWN <span style="color: #008000;">=</span> <span style="color: #FF0000;">85</span>,
    MARION <span style="color: #008000;">=</span> <span style="color: #FF0000;">15</span>,
    OXFORD <span style="color: #008000;">=</span> <span style="color: #FF0000;">65</span>,
    BURLINGTON <span style="color: #008000;">=</span> <span style="color: #FF0000;">5</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>And instead of using the MADISON enumeration, the if statement of this code starts on line 118 of the very same class file:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>cityID <span style="color: #008000;">==</span> 0x51<span style="color: #000000;">&#41;</span>
<span style="color: #000000;">&#123;</span>
    actual <span style="color: #008000;">=</span> expected <span style="color: #008000;">-</span> actual<span style="color: #008000;">;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>The names were changed to protect the innocent, thanks to Wikipedia for having an easy to find <a href="http://en.wikipedia.org/wiki/List_of_the_most_common_U.S._place_names" target="_blank">list of common place names</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/11/10/best-way-to-not-use-an-enumeration-ever/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Because you never know how many days could be between Monday and Friday</title>
		<link>http://www.dosomethinghere.com/2009/10/19/because-you-never-know-how-many-days-could-be-between-monday-and-friday/</link>
		<comments>http://www.dosomethinghere.com/2009/10/19/because-you-never-know-how-many-days-could-be-between-monday-and-friday/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 15:30:14 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Inspirational code]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=350</guid>
		<description><![CDATA[Why do a couple of subtractions when two loops can do the same work?

while &#40;processDate.DayOfWeek != DayOfWeek.Monday&#41;
    processDate = processDate.AddDays&#40;-1&#41;;
&#160;
string mondayDate = processDate.ToShortDateString&#40;&#41;;
&#160;
while &#40;processDate.DayOfWeek != DayOfWeek.Friday&#41;
    processDate = processDate.AddDays&#40;1&#41;;
&#160;
string fridayDate = processDate.ToShortDateString&#40;&#41;;

]]></description>
			<content:encoded><![CDATA[<p>Why do a couple of subtractions when two loops can do the same work?</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>processDate.<span style="color: #0000FF;">DayOfWeek</span> <span style="color: #008000;">!=</span> DayOfWeek.<span style="color: #0000FF;">Monday</span><span style="color: #000000;">&#41;</span>
    processDate <span style="color: #008000;">=</span> processDate.<span style="color: #0000FF;">AddDays</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">-</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #FF0000;">string</span> mondayDate <span style="color: #008000;">=</span> processDate.<span style="color: #0000FF;">ToShortDateString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span>processDate.<span style="color: #0000FF;">DayOfWeek</span> <span style="color: #008000;">!=</span> DayOfWeek.<span style="color: #0000FF;">Friday</span><span style="color: #000000;">&#41;</span>
    processDate <span style="color: #008000;">=</span> processDate.<span style="color: #0000FF;">AddDays</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #FF0000;">string</span> fridayDate <span style="color: #008000;">=</span> processDate.<span style="color: #0000FF;">ToShortDateString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/10/19/because-you-never-know-how-many-days-could-be-between-monday-and-friday/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Retrosheet event record mapping completed</title>
		<link>http://www.dosomethinghere.com/2009/10/18/retrosheet-event-record-mapping-completed/</link>
		<comments>http://www.dosomethinghere.com/2009/10/18/retrosheet-event-record-mapping-completed/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 01:53:59 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Retrosheet]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=343</guid>
		<description><![CDATA[The Retrosheet project has kind of sat around for a while untouched, so I figured I would finish up the reading of the event records. I have decided to break the project into separate files, as if I kept it in one file, it would be obscenely long.
So, here is the main Program.cs file:
Program.cs

using System;
using [...]]]></description>
			<content:encoded><![CDATA[<p>The Retrosheet project has kind of sat around for a while untouched, so I figured I would finish up the reading of the event records. I have decided to break the project into separate files, as if I kept it in one file, it would be obscenely long.</p>
<p>So, here is the main Program.cs file:</p>
<p>Program.cs</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> Program
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Team<span style="color: #008000;">&gt;</span> teamList<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Player<span style="color: #008000;">&gt;</span> playerList<span style="color: #008000;">;</span>
        <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span><span style="color: #0600FF;">Event</span><span style="color: #008000;">&gt;</span> eventList<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">const</span> <span style="color: #FF0000;">string</span> DATA <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;c:<span style="color: #008080; font-weight: bold;">\\</span>baseball_data<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> Main<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> args<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Retrosheet Reader&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            teamList <span style="color: #008000;">=</span> Team.<span style="color: #0000FF;">GetTeamList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playerList <span style="color: #008000;">=</span> Player.<span style="color: #0000FF;">GetPlayerList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            eventList <span style="color: #008000;">=</span> <span style="color: #0600FF;">Event</span>.<span style="color: #0000FF;">GetEventList</span><span style="color: #000000;">&#40;</span>DATA<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of teams: &quot;</span> <span style="color: #008000;">+</span> teamList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of players: &quot;</span> <span style="color: #008000;">+</span> playerList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of events: &quot;</span> <span style="color: #008000;">+</span> eventList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Strike any key to end...&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">ReadKey</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>There are now 3 class files, one each for a team, player, and event. The event file is the one with the most new stuff going on.</p>
<p>Team.cs</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> Team
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">int</span> year<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> city<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> nickname<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> abbreviation<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> league<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Team<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> y, <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            year <span style="color: #008000;">=</span> y<span style="color: #008000;">;</span>
            abbreviation <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            league <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            city <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            nickname <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Team<span style="color: #008000;">&gt;</span> GetTeamList<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> dir<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> y<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span> s<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> splitLine<span style="color: #008000;">;</span>
            List<span style="color: #008000;">&lt;</span>Team<span style="color: #008000;">&gt;</span> teamList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>Team<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            List<span style="color: #008000;">&lt;</span><span style="color: #FF0000;">string</span><span style="color: #008000;">&gt;</span> tfs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>dir, <span style="color: #666666;">&quot;team*&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> tf <span style="color: #0600FF;">in</span> tfs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                y <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Path.<span style="color: #0000FF;">GetFileName</span><span style="color: #000000;">&#40;</span>tf<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Substring</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>tf<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        teamList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Team<span style="color: #000000;">&#40;</span>y, splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> teamList<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>Player.cs</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> Player
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">int</span> year<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> team<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> playerID<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> firstName<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> lastName<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> bats<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> throws<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> position<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Player<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> y, <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            year <span style="color: #008000;">=</span> y<span style="color: #008000;">;</span>
            playerID <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            lastName <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            firstName <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            bats <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            throws <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            team <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">5</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            position <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">6</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span>Player<span style="color: #008000;">&gt;</span> GetPlayerList<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> dir<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">int</span> y<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span> s<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> splitLine<span style="color: #008000;">;</span>
            List<span style="color: #008000;">&lt;</span>Player<span style="color: #008000;">&gt;</span> playerList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span>Player<span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            List<span style="color: #008000;">&lt;</span><span style="color: #FF0000;">string</span><span style="color: #008000;">&gt;</span> rfs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>dir, <span style="color: #666666;">&quot;*.ros&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> rf <span style="color: #0600FF;">in</span> rfs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                y <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Path.<span style="color: #0000FF;">GetFileName</span><span style="color: #000000;">&#40;</span>rf<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Substring</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'.'</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>rf<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">7</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        playerList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Player<span style="color: #000000;">&#40;</span>y, splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> playerList<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>Event.cs</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> <span style="color: #0600FF;">Event</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">string</span> gameID<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 0, A</span>
        <span style="color: #FF0000;">string</span> visitingTeam<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 1, B</span>
        <span style="color: #FF0000;">int</span> inning<span style="color: #008000;">;</span>             <span style="color: #008080; font-style: italic;">// 2, C</span>
        <span style="color: #FF0000;">int</span> battingTeam<span style="color: #008000;">;</span>        <span style="color: #008080; font-style: italic;">// 3, D</span>
        <span style="color: #FF0000;">int</span> outs<span style="color: #008000;">;</span>               <span style="color: #008080; font-style: italic;">// 4, E</span>
        <span style="color: #FF0000;">int</span> balls<span style="color: #008000;">;</span>              <span style="color: #008080; font-style: italic;">// 5, F</span>
        <span style="color: #FF0000;">int</span> strikes<span style="color: #008000;">;</span>            <span style="color: #008080; font-style: italic;">// 6, G</span>
        <span style="color: #FF0000;">string</span> pitchSequence<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 7, H</span>
        <span style="color: #FF0000;">int</span> visitorScore<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 8, I</span>
        <span style="color: #FF0000;">int</span> homeScore<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 9, J</span>
        <span style="color: #FF0000;">string</span> batter<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 10, K</span>
        <span style="color: #FF0000;">string</span> batterHand<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 11, L</span>
        <span style="color: #FF0000;">string</span> resBatter<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 12, M</span>
        <span style="color: #FF0000;">string</span> resBatterHand<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 13, N</span>
        <span style="color: #FF0000;">string</span> pitcher<span style="color: #008000;">;</span>         <span style="color: #008080; font-style: italic;">// 14, O</span>
        <span style="color: #FF0000;">string</span> pitcherHand<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 15, P</span>
        <span style="color: #FF0000;">string</span> resPitcher<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 16, Q</span>
        <span style="color: #FF0000;">string</span> resPitcherHand<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 17, R</span>
        <span style="color: #FF0000;">string</span> catcher<span style="color: #008000;">;</span>         <span style="color: #008080; font-style: italic;">// 18, S</span>
        <span style="color: #FF0000;">string</span> firstBase<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 19, T</span>
        <span style="color: #FF0000;">string</span> secondBase<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 20, U</span>
        <span style="color: #FF0000;">string</span> thirdBase<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 21, V</span>
        <span style="color: #FF0000;">string</span> shortstop<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 22, W</span>
        <span style="color: #FF0000;">string</span> leftField<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 23, X</span>
        <span style="color: #FF0000;">string</span> centerField<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 24, Y</span>
        <span style="color: #FF0000;">string</span> rightField<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 25, Z</span>
        <span style="color: #FF0000;">string</span> firstRunner<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 26, AA</span>
        <span style="color: #FF0000;">string</span> secondRunner<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 27, AB</span>
        <span style="color: #FF0000;">string</span> thirdRunner<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 28, AC</span>
        <span style="color: #FF0000;">string</span> eventText<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 29, AD</span>
        <span style="color: #FF0000;">bool</span> leadoffFlag<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 30, AE</span>
        <span style="color: #FF0000;">bool</span> pinchHitFlag<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 31, AF</span>
        <span style="color: #FF0000;">int</span> defensivePosition<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 32, AG</span>
        <span style="color: #FF0000;">int</span> lineupPosition<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 33, AH</span>
        <span style="color: #FF0000;">int</span> eventType<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 34, AI</span>
        <span style="color: #FF0000;">bool</span> batterEventFlag<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 35, AJ</span>
        <span style="color: #FF0000;">bool</span> abFlag<span style="color: #008000;">;</span>            <span style="color: #008080; font-style: italic;">// 36, AK</span>
        <span style="color: #FF0000;">int</span> hitValue<span style="color: #008000;">;</span>           <span style="color: #008080; font-style: italic;">// 37, AL</span>
        <span style="color: #FF0000;">bool</span> shFlag<span style="color: #008000;">;</span>            <span style="color: #008080; font-style: italic;">// 38, AM</span>
        <span style="color: #FF0000;">bool</span> sfFlag<span style="color: #008000;">;</span>            <span style="color: #008080; font-style: italic;">// 39, AN</span>
        <span style="color: #FF0000;">int</span> outsOnPlay<span style="color: #008000;">;</span>         <span style="color: #008080; font-style: italic;">// 40, AO</span>
        <span style="color: #FF0000;">bool</span> doublePlayFlag<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 41, AP</span>
        <span style="color: #FF0000;">bool</span> triplePlayFlag<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 42, AQ</span>
        <span style="color: #FF0000;">int</span> rbiOnPlay<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 43, AR</span>
        <span style="color: #FF0000;">bool</span> wildPitchFlag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 44, AS</span>
        <span style="color: #FF0000;">bool</span> passedBallFlag<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 45, AT</span>
        <span style="color: #FF0000;">int</span> fieldedBy<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 46, AU</span>
        <span style="color: #FF0000;">string</span> battedBallType<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 47, AV</span>
        <span style="color: #FF0000;">bool</span> buntFlag<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 48, AW</span>
        <span style="color: #FF0000;">bool</span> foulFlag<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 49, AX</span>
        <span style="color: #FF0000;">string</span> hitLocation<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 50, AY</span>
        <span style="color: #FF0000;">int</span> numErrors<span style="color: #008000;">;</span>          <span style="color: #008080; font-style: italic;">// 51, AZ</span>
        <span style="color: #FF0000;">int</span> firstErrorPlayer<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 52, BA</span>
        <span style="color: #FF0000;">string</span> firstErrorType<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 53, BB</span>
        <span style="color: #FF0000;">int</span> secondErrorPlayer<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 54, BC</span>
        <span style="color: #FF0000;">string</span> secondErrorType<span style="color: #008000;">;</span> <span style="color: #008080; font-style: italic;">// 55, BD</span>
        <span style="color: #FF0000;">int</span> thirdErrorPlayer<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 56, BE</span>
        <span style="color: #FF0000;">string</span> thirdErrorType<span style="color: #008000;">;</span>  <span style="color: #008080; font-style: italic;">// 57, BF</span>
        <span style="color: #FF0000;">int</span> batterDest<span style="color: #008000;">;</span>         <span style="color: #008080; font-style: italic;">// 58, BG</span>
        <span style="color: #FF0000;">int</span> runner1Dest<span style="color: #008000;">;</span>        <span style="color: #008080; font-style: italic;">// 59, BH</span>
        <span style="color: #FF0000;">int</span> runner2Dest<span style="color: #008000;">;</span>        <span style="color: #008080; font-style: italic;">// 60, BI</span>
        <span style="color: #FF0000;">int</span> runner3Dest<span style="color: #008000;">;</span>        <span style="color: #008080; font-style: italic;">// 61, BJ</span>
        <span style="color: #FF0000;">string</span> playOnBatter<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 62, BK</span>
        <span style="color: #FF0000;">string</span> playOnRunner1<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 63, BL</span>
        <span style="color: #FF0000;">string</span> playOnRunner2<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 64, BM</span>
        <span style="color: #FF0000;">string</span> playOnRunner3<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 65, BN</span>
        <span style="color: #FF0000;">bool</span> sbRunner1Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 66, BO</span>
        <span style="color: #FF0000;">bool</span> sbRunner2Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 67, BP</span>
        <span style="color: #FF0000;">bool</span> sbRunner3Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 68, BQ</span>
        <span style="color: #FF0000;">bool</span> csRunner1Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 69, BR</span>
        <span style="color: #FF0000;">bool</span> csRunner2Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 70, BS</span>
        <span style="color: #FF0000;">bool</span> csRunner3Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 71, BT</span>
        <span style="color: #FF0000;">bool</span> poRunner1Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 72, BU</span>
        <span style="color: #FF0000;">bool</span> poRunner2Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 73, BV</span>
        <span style="color: #FF0000;">bool</span> poRunner3Flag<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 74, BW</span>
        <span style="color: #FF0000;">string</span> respPitcher1<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 75, BX</span>
        <span style="color: #FF0000;">string</span> respPitcher2<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 76, BY</span>
        <span style="color: #FF0000;">string</span> respPitcher3<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 77, BZ</span>
        <span style="color: #FF0000;">bool</span> newGameFlag<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 78, CA</span>
        <span style="color: #FF0000;">bool</span> endGameFlag<span style="color: #008000;">;</span>       <span style="color: #008080; font-style: italic;">// 79, CB</span>
        <span style="color: #FF0000;">bool</span> pinchRunner1<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 80, CC</span>
        <span style="color: #FF0000;">bool</span> pinchRunner2<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 81, CD</span>
        <span style="color: #FF0000;">bool</span> pinchRunner3<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 82, CE</span>
        <span style="color: #FF0000;">string</span> removedForPR1<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 83, CF</span>
        <span style="color: #FF0000;">string</span> removedForPR2<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 84, CG</span>
        <span style="color: #FF0000;">string</span> removedForPR3<span style="color: #008000;">;</span>   <span style="color: #008080; font-style: italic;">// 85, CH</span>
        <span style="color: #FF0000;">string</span> removedForPH<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 86, CI</span>
        <span style="color: #FF0000;">int</span> posRemovedForPH<span style="color: #008000;">;</span>    <span style="color: #008080; font-style: italic;">// 87, CJ</span>
        <span style="color: #FF0000;">int</span> fielderWithPO1<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 88, CK</span>
        <span style="color: #FF0000;">int</span> fielderWithPO2<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 89, CL</span>
        <span style="color: #FF0000;">int</span> fielderWithPO3<span style="color: #008000;">;</span>     <span style="color: #008080; font-style: italic;">// 90, CM</span>
        <span style="color: #FF0000;">int</span> fielderWithA1<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 91, CN</span>
        <span style="color: #FF0000;">int</span> fielderWithA2<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 92, CO</span>
        <span style="color: #FF0000;">int</span> fielderWithA3<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 93, CP</span>
        <span style="color: #FF0000;">int</span> fielderWithA4<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 94, CQ</span>
        <span style="color: #FF0000;">int</span> fielderWithA5<span style="color: #008000;">;</span>      <span style="color: #008080; font-style: italic;">// 95, CR</span>
        <span style="color: #FF0000;">int</span> eventNum<span style="color: #008000;">;</span>           <span style="color: #008080; font-style: italic;">// 96, CS</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">Event</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            gameID <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            visitingTeam <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            inning <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            battingTeam <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            outs <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            balls <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">5</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            strikes <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">6</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pitchSequence <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">7</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            visitorScore <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">8</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            homeScore <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">9</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            batter <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">10</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            batterHand <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">11</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            resBatter <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">12</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            resBatterHand <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">13</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pitcher <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">14</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pitcherHand <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">15</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            resPitcher <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">16</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            resPitcherHand <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">17</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            catcher <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">18</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            firstBase <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">19</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            secondBase <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">20</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            thirdBase <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">21</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            shortstop <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">22</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            leftField <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">23</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            centerField <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">24</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            rightField <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">25</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            firstRunner <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">26</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            secondRunner <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">27</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            thirdRunner <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">28</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            eventText <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">29</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            leadoffFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">30</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pinchHitFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">31</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            defensivePosition <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">32</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            lineupPosition <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">33</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            eventType <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">34</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            batterEventFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">35</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            abFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">36</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            hitValue <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">37</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            shFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">38</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            sfFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">39</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            outsOnPlay <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">40</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            doublePlayFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">41</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            triplePlayFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">42</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            rbiOnPlay <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">43</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            wildPitchFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">44</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            passedBallFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">45</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fieldedBy <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">46</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            battedBallType <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">47</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            buntFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">48</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            foulFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">49</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            hitLocation <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">50</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            numErrors <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">51</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            firstErrorPlayer <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">52</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            firstErrorType <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">53</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            secondErrorPlayer <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">54</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            secondErrorType <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">55</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            thirdErrorPlayer <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">56</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            thirdErrorType <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">57</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            batterDest <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">58</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            runner1Dest <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">59</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            runner2Dest <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">60</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            runner3Dest <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">61</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playOnBatter <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">62</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playOnRunner1 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">63</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playOnRunner2 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">64</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            playOnRunner3 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">65</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            sbRunner1Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">66</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            sbRunner2Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">67</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            sbRunner3Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">68</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            csRunner1Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">69</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            csRunner2Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">70</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            csRunner3Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">71</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            poRunner1Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">72</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            poRunner2Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">73</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            poRunner3Flag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">74</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            respPitcher1 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">75</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            respPitcher2 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">76</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            respPitcher3 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">77</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            newGameFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">78</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            endGameFlag <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">79</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pinchRunner1 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">80</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pinchRunner2 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">81</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            pinchRunner3 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">82</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Contains</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'T'</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            removedForPR1 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">83</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            removedForPR2 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">84</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            removedForPR3 <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">85</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            removedForPH <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">86</span><span style="color: #000000;">&#93;</span>.<span style="color: #0000FF;">Replace</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            posRemovedForPH <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">87</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithPO1 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">88</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithPO2 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">89</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithPO3 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">90</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithA1 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">91</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithA2 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">92</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithA3 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">93</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithA4 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">94</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            fielderWithA5 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">95</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            eventNum <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">96</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">static</span> List<span style="color: #008000;">&lt;</span><span style="color: #0600FF;">Event</span><span style="color: #008000;">&gt;</span> GetEventList<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> dir<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">string</span> s<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> splitLine<span style="color: #008000;">;</span>
            List<span style="color: #008000;">&lt;</span><span style="color: #0600FF;">Event</span><span style="color: #008000;">&gt;</span> eventList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #008000;">&lt;</span><span style="color: #0600FF;">Event</span><span style="color: #008000;">&gt;</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            List<span style="color: #008000;">&lt;</span><span style="color: #FF0000;">string</span><span style="color: #008000;">&gt;</span> efs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>dir, <span style="color: #666666;">&quot;*.csv&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> ef <span style="color: #0600FF;">in</span> efs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Reading events in &quot;</span> <span style="color: #008000;">+</span> ef<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>ef<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">97</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        eventList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> <span style="color: #0600FF;">Event</span><span style="color: #000000;">&#40;</span>splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> eventList<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>I have zipped up the solution if you would like to work with it:</p>
<p><a href="http://www.dosomethinghere.com/downloads/RetrosheetReader.zip" target="_blank">RetrosheetReader.zip</a></p>
<p>Next up will come some actual analysis of the data, now that it is completely being read in and stored.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/10/18/retrosheet-event-record-mapping-completed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NetCFSvcUtil.exe error in Windows 7</title>
		<link>http://www.dosomethinghere.com/2009/10/08/netcfsvcutil-exe-error-in-windows-7/</link>
		<comments>http://www.dosomethinghere.com/2009/10/08/netcfsvcutil-exe-error-in-windows-7/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 17:59:46 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[C#.NET]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=339</guid>
		<description><![CDATA[I have been using Windows 7 for a while now, and always had to keep my Windows XP dev machine handy to help out with my Windows Mobile software development.
It turns out that the NetCFSvcUtil application included in the .NET CF Power Toys did not get along with Windows 7 (neither the RC or the [...]]]></description>
			<content:encoded><![CDATA[<p>I have been using Windows 7 for a while now, and always had to keep my Windows XP dev machine handy to help out with my Windows Mobile software development.</p>
<p>It turns out that the NetCFSvcUtil application included in the .NET CF Power Toys did not get along with Windows 7 (neither the RC or the RTM bits), as it gave a cryptic error message of &#8220;An error occurred in the tool&#8221;.</p>
<p>So just for giggles, I decided to see if there were any updates, and lo and behold, I found a blog post from Habib Heydarian with an updated application:</p>
<p><a href="http://blogs.msdn.com/habibh/archive/2009/06/26/netcfsvcutil-exe-and-windows-7.aspx" target="_blank">NetCFSvcUtil.exe and Windows 7</a></p>
<p>Now I can happily generate the client code on my Windows 7 machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/10/08/netcfsvcutil-exe-error-in-windows-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cannot enable networking in Windows Mobile emulator on Windows 7</title>
		<link>http://www.dosomethinghere.com/2009/10/05/cannot-enable-networking-in-windows-mobile-emulator-on-windows-7/</link>
		<comments>http://www.dosomethinghere.com/2009/10/05/cannot-enable-networking-in-windows-mobile-emulator-on-windows-7/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 14:34:49 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[C#.NET]]></category>
		<category><![CDATA[VB.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=337</guid>
		<description><![CDATA[So you are using a new Windows 7 installation and developing a Windows Mobile application, and you have been using it just fine on another dev box or in an earlier version of Windows. You deploy your application, and it needs to communicate over the internet, so you go into the Network tab of the Emulator Properties [...]]]></description>
			<content:encoded><![CDATA[<p>So you are using a new Windows 7 installation and developing a Windows Mobile application, and you have been using it just fine on another dev box or in an earlier version of Windows. You deploy your application, and it needs to communicate over the internet, so you go into the Network tab of the Emulator Properties and enable the network adapter.</p>
<p>Only this time, it comes up with an error message about installing Virtual PC 2007.</p>
<p>And then you find out that Virtual PC 2007 does not play nicely with Windows 7.</p>
<p>Well it all has to do with Virtual Machine Network Services. Here is a blog post from Brian Peek on how to solve the problem:</p>
<p><a href="http://www.brianpeek.com/blog/archive/2009/05/02/windows-virtual-pc-and-the-microsoft-device-emulator.aspx" target="_blank">Windows Virtual PC and the Microsoft Device Emulator</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/10/05/cannot-enable-networking-in-windows-mobile-emulator-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Retrosheet reader</title>
		<link>http://www.dosomethinghere.com/2009/09/26/retrosheet-reader/</link>
		<comments>http://www.dosomethinghere.com/2009/09/26/retrosheet-reader/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 01:05:37 +0000</pubDate>
		<dc:creator>BP</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Retrosheet]]></category>
		<category><![CDATA[C#.NET]]></category>

		<guid isPermaLink="false">http://www.dosomethinghere.com/?p=316</guid>
		<description><![CDATA[OK, so you just got back from the Ohio LinuxFest 2009  (meh, not exactly a hoppin&#8217; place this year, I was kind of disappointed), and you have your event files converted over to CSV files after you generated the BEVENT batch files per last weekend&#8217;s post.
Now, you would like to read in that data and [...]]]></description>
			<content:encoded><![CDATA[<p>OK, so you just got back from the Ohio LinuxFest 2009  (meh, not exactly a hoppin&#8217; place this year, I was kind of disappointed), and you have your event files converted over to CSV files after you generated the BEVENT batch files per last weekend&#8217;s post.</p>
<p>Now, you would like to read in that data and start looking through it for anything useful. Well this weekend&#8217;s post will help you with the reading in part, and you can take it from there if you would like.</p>
<p>Here is the C# console code. I have put all of the CSV files, ROS (roster) files, and the TEAM???? file into a folder on my C: drive called baseball_data, if your folder is different then just change the constant defined in the code below:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> RetrosheetReader
<span style="color: #000000;">&#123;</span>
&nbsp;
    <span style="color: #FF0000;">class</span> Team
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">int</span> year<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> city<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> nickname<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> abbreviation<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> league<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Team<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> y, <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            year <span style="color: #008000;">=</span> y<span style="color: #008000;">;</span>
            abbreviation <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            league <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            city <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            nickname <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #FF0000;">class</span> Player
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">int</span> year<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> team<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> playerID<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> firstName<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> lastName<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> bats<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> throws<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> position<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">public</span> Player<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> y, <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            year <span style="color: #008000;">=</span> y<span style="color: #008000;">;</span>
            playerID <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            lastName <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            firstName <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            bats <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            throws <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            team <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">5</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            position <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">6</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #FF0000;">class</span> <span style="color: #0600FF;">Event</span>
    <span style="color: #000000;">&#123;</span>
        <span style="color: #FF0000;">string</span> gameID<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> visitingTeam<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> inning<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">string</span> battingTeam<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> outs<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> balls<span style="color: #008000;">;</span>
        <span style="color: #FF0000;">int</span> strikes<span style="color: #008000;">;</span>
        <span style="color: #008080; font-style: italic;">// yeah, there is still some work left here to do</span>
        <span style="color: #008080; font-style: italic;">// maybe next time</span>
&nbsp;
        <span style="color: #0600FF;">public</span> <span style="color: #0600FF;">Event</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> a<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            gameID <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            visitingTeam <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">1</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            inning <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">2</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            battingTeam <span style="color: #008000;">=</span> a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#93;</span><span style="color: #008000;">;</span>
            outs <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            balls <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">5</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            strikes <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>a<span style="color: #000000;">&#91;</span><span style="color: #FF0000;">6</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
&nbsp;
    <span style="color: #FF0000;">class</span> Program
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">const</span> <span style="color: #FF0000;">string</span> DATA <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;c:<span style="color: #008080; font-weight: bold;">\\</span>baseball_data<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span><span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> Main<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> args<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            List teamList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            List playerList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            List eventList <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> List<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">string</span> s<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> splitLine<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> y<span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Retrosheet Reader&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            List tfs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>DATA, <span style="color: #666666;">&quot;team*&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> tf <span style="color: #0600FF;">in</span> tfs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                y <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Path.<span style="color: #0000FF;">GetFileName</span><span style="color: #000000;">&#40;</span>tf<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Substring</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>tf<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">4</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        teamList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Team<span style="color: #000000;">&#40;</span>y, splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            List rfs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>DATA, <span style="color: #666666;">&quot;*.ros&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> rf <span style="color: #0600FF;">in</span> rfs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                y <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Path.<span style="color: #0000FF;">GetFileName</span><span style="color: #000000;">&#40;</span>rf<span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Substring</span><span style="color: #000000;">&#40;</span><span style="color: #FF0000;">3</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">'.'</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#91;</span><span style="color: #FF0000;">0</span><span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>rf<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">7</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        playerList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> Player<span style="color: #000000;">&#40;</span>y, splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            List efs <span style="color: #008000;">=</span> Directory.<span style="color: #0000FF;">GetFiles</span><span style="color: #000000;">&#40;</span>DATA, <span style="color: #666666;">&quot;*.csv&quot;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToList</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">foreach</span> <span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span> ef <span style="color: #0600FF;">in</span> efs<span style="color: #000000;">&#41;</span>
            <span style="color: #000000;">&#123;</span>
                Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Reading events in &quot;</span> <span style="color: #008000;">+</span> ef<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                StreamReader sr <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> StreamReader<span style="color: #000000;">&#40;</span>ef<span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #000000;">&#40;</span>s <span style="color: #008000;">=</span> sr.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">!=</span> <span style="color: #0600FF;">null</span><span style="color: #000000;">&#41;</span>
                <span style="color: #000000;">&#123;</span>
                    splitLine <span style="color: #008000;">=</span> s.<span style="color: #0000FF;">Split</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">','</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #0600FF;">if</span> <span style="color: #000000;">&#40;</span>splitLine.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #008000;">==</span> <span style="color: #FF0000;">97</span><span style="color: #000000;">&#41;</span>
                    <span style="color: #000000;">&#123;</span>
                        eventList.<span style="color: #0000FF;">Add</span><span style="color: #000000;">&#40;</span><span style="color: #008000;">new</span> <span style="color: #0600FF;">Event</span><span style="color: #000000;">&#40;</span>splitLine<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
                    <span style="color: #000000;">&#125;</span>
                <span style="color: #000000;">&#125;</span>
            <span style="color: #000000;">&#125;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of teams: &quot;</span> <span style="color: #008000;">+</span> teamList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of players: &quot;</span> <span style="color: #008000;">+</span> playerList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Number of events: &quot;</span> <span style="color: #008000;">+</span> eventList.<span style="color: #0000FF;">Count</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>.<span style="color: #0000FF;">ToString</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Strike any key to end...&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">ReadKey</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>I have an idea as to the first thing that I am going to look for in the Retrosheet data, so tune in next weekend and I will (hopefully) have some interesting insights.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dosomethinghere.com/2009/09/26/retrosheet-reader/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
