-/// Position::pretty() returns an ASCII representation of the position to be
-/// printed to the standard output together with the move's san notation.
-
-const string Position::pretty(Move m) const {
-
- std::ostringstream ss;
-
- if (m)
- ss << "\nMove: " << (sideToMove == BLACK ? ".." : "")
- << move_to_san(*const_cast<Position*>(this), m);
-
- ss << "\n +---+---+---+---+---+---+---+---+\n";
-
- for (Rank r = RANK_8; r >= RANK_1; --r)
- {
- for (File f = FILE_A; f <= FILE_H; ++f)
- ss << " | " << PieceToChar[piece_on(make_square(f, r))];
-
- ss << " |\n +---+---+---+---+---+---+---+---+\n";
- }
-
- ss << "\nFen: " << fen() << "\nKey: " << std::hex << std::uppercase
- << std::setfill('0') << std::setw(16) << st->key << "\nCheckers: ";
-
- for (Bitboard b = checkers(); b; )
- ss << to_string(pop_lsb(&b)) << " ";
-
- ss << "\nLegal moves: ";
- for (MoveList<LEGAL> it(*this); *it; ++it)
- ss << move_to_san(*const_cast<Position*>(this), *it) << " ";
-
- return ss.str();
-}
-
-
-/// Position::game_phase() calculates the game phase of the position