#
#  HERE ARE THE RULES FOR HOW I'M GOING TO CONDUCT THE FINALS.
#  There is no need to comment on these rules ... rules is rules!
#
# STEP 1:  I chose three programs from the pack of those
#		that were submitted.  I chose an "old" version
#		of these programs that the author had since
#		re-submitted ... thus, the three seed opponents
#		were legitimate entries at one time, but they
#		were not actual entries that would compete in
#		the finals.
#
#  ???????	STEP 2:  I made up a gameboard ... and put
#  ???????	very little thought behind it.
#  ???????
#  ???????	STEP 3:  For each program that passed system 
#  ???????	test, I ran a match against each of the three
#  ???????	seed programs - for a total of six games.
#  ???????
#
# STEP 4:  I scored each of the six games as follows:
#
# You get 1000 points for winning when you play X (first)
# You get 1200 points for winning when you play O (second)
# You get  500 points for tieing when you play X 
# You get  600 points for tieing when you play O
# For each of the six games, you get the total points you scored
#	(NOT the difference in scores!)
#
# STEP 5:  I sorted the programs according to the total points
#		scored in all six games according to the above.
#		The top scoring program is seeded first, the
#		next second, and so forth down the line.  The
#		seedings are used ONLY to determine the position
#		within the elimination tournament ... nothing more!
#
# ==========================  END STAGE ONE  =======================
#
# I now have N programs in an ordered table ... since N may be even
# or odd and will probably be on the order of 100, I proceed as follows:
#
# STEP 1:  If N is odd, the highest seeded entry that has not yet
#		received a bye will get a bye.  This leaves us with
#		an even number of entries.
#
# STEP 2:  seed 1 plays seed N in a match; seed 2 plays N-1; etc.
#		Each match consists of 2 games on the same board,
#		with each player getting a chance to go first.
#
# STEP 3:  If an entry wins or ties, it advances to the next round in
#		that bracket.  A loss will drop it to the loser's
#		bracket, or will eliminate it if the match took place
#		in the loser's bracket.
#
# AND THEN ... after the first set of games, we will have two brackets.
#	play in each bracket will proceed as above.  For each round,
#	seeding will be determined based on the original values.  For
#	each round, a different starting board will be used.  For each
#	round, entries that win or tie will remain in the bracket.
#	First time losers will drop to the next lower bracket.  A loss
#	in the losers bracket will eliminate you.  I will not award
#	more than a single bye to any one entry, and I will try to
#	avoid having two programs play "repeat" matches against each other.
#
# EVENTUALLY, after some number of rounds, there will be only 2K entries
#	left in the winners bracket.  These will advance to the playoffs.
#	I will then continue the loser's bracket until there are roughly
#	K entries remaining.  These will also advance to the playoffs.
#
# ==========================  END STAGE TWO  =======================
#
# I now have 3K entries left ... more or less.  I will use my judgement
# on the value of K, but there will be no fewer than 4 and no more
# than 8 entries remaining at this point.
#
# EVERYONE WILL PLAY EVERYONE ELSE IN THE FINAL ROUND.  A SINGLE BOARD
# WILL BE USED FOR ALL THESE GAMES.
#
# Scoring of these games will follow the rules for the first stage.
# (Bonuses for wins and ties + the total points scored over all games.)
#
# The scores over all games played will be summed and the winner will
# be the entry with the highest number of points.  I'm willing to bet
# anyone a buck that there won't be a tie to resolve after all this!
# (But if there is, I'll think of something clever of course)