module T3.Client
  ( XO(..)
  , Loc(..)
  , Action(..)
  , Result(..)
  , Board
  , yinYang
  , emptyBoard
  , boardMap
  , boardList
  , boardSize
  , insertXO
  , inside
  , valid
  , result
  , Win(..)
  , Lose(..)
  , run
  , UserCreds(..)
  , StartRequest(..)
  , PlayRequest(..)
  , GameState(..)
  , Users(..)
  , StartResponse(..)
  , PlayResponse(..)
  , UserName(..)
  , UserKey(..)
  , RegisterRequest(..)
  , RegisterResponse(..)
  , Users(..)
  , MatchId(..)
  , MatchToken(..)
  , Step(..)
  , MatchInfo(..)
  , Final(..)
  , Result(..)
  , Playback(..)
  , randomLoc
  ) where

import T3.Server
import T3.Match
import T3.Game
import T3.Random
import T3.Playback