Scrabble Game, with AI plyers -> created by Matthew Goldfarb Playing The Game: Run the scrabble.java file to begin play of the game. Enter in how many human players will be playing and then how many AI players. Then the game will begin. AI turns will play automatically, to play your turn enter in the word you wish to place on the board at the prompt and press enter. It will then ask for an X coordinate, then a Y coordinate, and finnaly a direction. The direction is entered as 0 (for horizontal) and 1 (for vertical). X coordinate is horizontal from 0-14 and Y is vertical 0-14, the X-Y coordinate is the tile of the first letter of the word you are placing, the function will place the word accordinaly. If the word is not valid for any reason, the word is not in the database or the cooridinate is wrong, a prompt for trading you tray will appear, type 't' for true and your turn will pass, or 'f' for false and the word prompt will appear again. Classes: scrabble.java -> The main function, will call GameSetup and begin play of the game. If you wish to watch a complete AI game, enter 0 for number of humans and the next prompt will ask you for number of AI players, enter in what you want and the game will begin. GameSetup.java -> Dynamically creates a game with Human and AI players and includes a function for traversing turns and playing the game. AIplayer.java -> Creates an new AI player to play the game, keeping of it's score and tray. HumanPlayer.java -> Creates a new Human player to play the game, keeping of it's score and tray. It also prompts user for any input needed and plays accordingly. Bag.java -> Creates and maintains a Bag of letters for play. Board.java -> Creates and maintains a Board, keeping track of all placed words and blank tiles placed. This class also has the placeWords() function used by both AI and Human players to places words onto the board. Check.java -> This class is the AI class for scrabble. It uses the database of possible words to determine placement of the AI letters on the board. This class handles blank tiles as well, treating them as any letter A-Z. This class also contains a function for checking if a placed word is in fact in the database. Coordinate.java -> Creates an object for storing a word and it's coordinate and direction on the board. Used for storing information recieved in Check and Board classes. ConsoleIn.java -> Contains all the console related commands. Boolean, integer, and string prompts to list a few. TwoThreeTree.java -> A Two-Three Tree class for storing the database words for fast access.