!K<      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~;Basic data types and functions related to the game of chess(c) Mario Lang, 2019BSD3mlang@blind.guru experimentalNone"#$%&'*-7=>?@AHMPVX_akp chessIO active colorchessIOnumber of the full moveYchessIO=The starting position as given by the FEN string "rnbqkbnrpppppppp8888 PPPPPPPP/RNBQKBNR w KQkq - 0 1".^chessIO3Construct a position from Forsyth-Edwards-Notation._chessIO/Convert a position to Forsyth-Edwards-Notation.achessIOJParse a move in the format used by the Universal Chess Interface protocol.bchessIOLConvert a move to the format used by the Universal Chess Interface protocol.chessIO<Validate that a certain move is legal in the given position.cchessIO#Apply a move to the given position.[This function checks if the move is actually legal and throws and error if it isn't. See d- for a version that omits the legality check.dchessIOAn unsafe version of c. Only use this if you are sure the given move can be applied to the position. This is useful if the move has been generated by the moves function.echessIO9Generate a list of possible moves for the given position.fchessIOReturns  if J# is in check in the given position.j 6  !"#$%&'()*+,-./012345789:;<=>?@ABCDEFGHIJLKMNOPQRSTUVWXYZ[\]^_`abcdefghijJLK[ 6  !"#$%&'()*+,-./012345789:;<=>?@ABCDEFGHI]\MNOPQRSYZfghi^_TUVWXab`ecdNone"#$%&'*7>@AHMPV_akp$None"#$%*7>@AHMPV_akp%fNone"#$%*7>@AHMPVX_akp&None"#$%*7>@AHMPV_akp: chessIO+restrict search to the specified moves onlychessIO(time (in milliseconds) left on the clockchessIO'time increment per move in millisecondschessIO(number of moves to the next time controlchessIO search until  gets calledchessIOWSet the starting position of the current game, also clearing any pre-existing history.chessIOMStart a UCI engine with the given executable name and command line arguments.chessIO=Start a UCI engine with the given timeout for initialisation._If the engine takes more then the given microseconds to answer to the initialisation request, : is returned and the external process will be terminated.chessIO5Wait until the engine is ready to take more commands.chessIO'Instruct the engine to begin searching.chessIOStop a search in progress.chessIO(Set a spin option to a particular value.MBounds are validated. Make sure you don't set a value which is out of range.chessIO7Return the final position of the currently active game.chessIOAdd a Move to the game history.AThis function checks if the move is actually legal, and throws a  if it isn't.chessIOQuit the engine.chessIOthe game previously in progress<<None"#$%*7>@AHMPV_akp<            !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     &chessIO-0.3.0.0-HB67pb9HGS7E7Fd2bZKkZU Game.ChessGame.Chess.PGNGame.Chess.Polyglot.HashGame.Chess.Polyglot.BookGame.Chess.UCI Paths_chessIOCastleKingside QueensidePlyPositioncolor halfMoveClock moveNumberSqA1B1C1D1E1F1G1H1A2B2C2D2E2F2G2H2A3B3C3D3E3F3G3H3A4B4C4D4E4F4G4H4A5B5C5D5E5F5G5H5A6B6C6D6E6F6G6H6A7B7C7D7E7F7G7H7A8B8C8D8E8F8G8H8ColorBlackWhite PieceTypePawnKnightBishopRookQueenKing strictSAN relaxedSANfromSANtoSAN unsafeToSANstartpospieceAtopponentisDarkisLightfromFENtoFEN fromPolyglotfromUCItoUCIdoPly unsafeDoPly legalPliesinCheckcastlingRightscanCastleKingsidecanCastleQueenside$fSANTokenWord8$fSANTokenChar $fIsSquareInt $fIsSquareSq $fEqPosition $fShowPly $fShowFrom $fEqSANStatus$fReadSANStatus$fShowSANStatus $fEqPieceType $fIxPieceType$fOrdPieceType$fShowPieceType $fEqColor $fIxColor $fOrdColor $fShowColor $fEqPiece $fShowPiece $fBoundedSq$fEnumSq$fEqSq$fIxSq$fOrdSq$fShowSq$fEqBB$fShowBB$fEqPly $fEqCastle $fIxCastle $fOrdCastle $fShowCastle $fEqDirection$fShowDirectionRAVOrderOutcomeWinDraw UndecidedGamePGNgameFromForest readPGNFilehPutPGN breadthFirst depthFirstpgnDocgameDoc$fPrettyOutcome $fEqOutcome $fShowOutcome $fEqPlyData $fShowPlyData$fEqPGN $fMonoidPGN$fSemigroupPGN hashPositionpieceKey castleKeyturnKey PolyglotBook defaultBooktwicfromByteStringreadPolyglotFile bookForestbookPly bookPlies$fStorableBookEntry $fEqBookEntry$fShowBookEntry SearchParamOptionCheckBoxComboBox SpinButtonOStringButton comboBoxValuecomboBoxValuesspinButtonValuespinButtonMinBoundspinButtonMaxBoundBounds UpperBound LowerBoundScore CentiPawnsMateInInfoPVDepthSelDepthElapsedMultiPVNodesNPSTBHitsHashFullCurrMoveCurrMoveNumberString UCIException IllegalMoveEnginenameauthoroptions setPositionstartstart'isready searchmovestimeleft timeincrement movestogomovetimenodesdepthinfinite searchingsearchstop getOptionsetOptionSpinButtonsetOptionStringcurrentPositionaddPlyquitquit'$fExceptionUCIException$fIsStringOption$fShowUCIException $fEqScore $fOrdScore $fShowScore $fEqBounds $fShowBounds$fEqInfo $fShowInfo $fEqOption $fShowOption $fShowCommand$fEqSearchParam$fShowSearchParam relativeToghc-prim GHC.TypesTrue SearchMovesTimeLeft TimeIncrement MovesToGoInfinitebase GHC.MaybeNothingversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName