@startuml class GameState { int size GameTree gameTree GameMove lastMove 'GameData gameData getCurrentPlayer(self) getPlayerCode(self) getBoard(self) playMove(self, row, col) playMoveForPlayer(self, row, col, player) playPass(self) undo(self) } @enduml