package suicideChess; import java.util.ArrayList; import suicideChess.Square.NotAValidSquare; /** * This class is used to compute legal moves. * * @author Jean-Baptiste Hétier * @version $LastChangedRevision$, $LastChangedDate$ */ public class Rules { private static ArrayList legalMovesNonCapture; private static ArrayList legalMovesCapture; // public class UnexpectedError extends Exception { // /* // * Generated by Eclipse // */ // private static final long serialVersionUID = 7448113740797323379L; // // UnexpectedError(String s) { super(s); }; // } // public Rules () { // legalMovesNonCapture = new ArrayList(); // legalMovesCapture = new ArrayList(); // } /** * Computes the possible moves according to the current status of the {@link Board} and the * color of the current player. * @param board The current board position. * @param color The color of the current player. * @throws NotAValidSquare If the program throws this exception then there is a bug. * @throws UnexpectedError This should never happen. * @see Square * @see Board */ public static void legalMovesForPlayer(Board board) throws NotAValidSquare { legalMovesNonCapture = new ArrayList(); legalMovesCapture = new ArrayList(); Square square; for(int squareNb = 0; squareNb < Board.NB_OF_SQUARES; squareNb++) { square = new Square(squareNb); if (board.isEmpty(square, new Piece(board.getCurrentPlayer()))) { continue; } legalMovesFromSquare(square,board); } } /** * Computes the possible moves from a given {@link Square} * according to the current status of the {@link Board} * @param fromSquare The square from which the move must start * @param board The current board position. * @throws NotAValidSquare If the program throws this exception then there is a bug. * @throws UnexpectedError This should never happen. * @see Square * @see Board */ public static void legalMovesFromSquare(Square fromSquare, Board board) throws NotAValidSquare { Move validMove; Square toSquare; Piece movingPiece = board.getPiece(fromSquare); switch (movingPiece.getPieceType()) { case Piece.NONE: break; case Piece.PAWN: boolean normalMove=true; //is a normal (straight) move allowed boolean promotion=false; boolean bigJump=false; //if the pawn is allowed to move two squares Square toBigJumpSquare=null; //the square for the "big jump" boolean captureRight=true; boolean captureLeft=true; Square toCaptureLeftSquare=null; Square toCaptureRightSquare=null; boolean captureEnPassantRight=board.isEnPassant(); boolean captureEnPassantLeft=board.isEnPassant(); Square captureEnPassantLeftSquare=null; Square captureEnPassantRightSquare=null; switch (movingPiece.getColor()) { case Piece.WHITE: toSquare = new Square(fromSquare.getFileNb(), fromSquare.getRank()+1); if (fromSquare.getRank()==2) { bigJump=true; toBigJumpSquare = new Square(fromSquare.getFileNb(), fromSquare.getRank()+2); } else if (toSquare.getRank()==Board.NB_OF_RANKS) { promotion=true; } if(fromSquare.getFileNb()>1) { //make sure not to go out of the board toCaptureLeftSquare = new Square(fromSquare.getFileNb()-1, fromSquare.getRank()+1); if(captureEnPassantLeft) { captureEnPassantLeftSquare = new Square(fromSquare.getFileNb()-1, fromSquare.getRank()); if (!toCaptureLeftSquare.isEqual(board.getEnPassantSquare())) { captureEnPassantLeft=false; } } } else { captureLeft = false; captureEnPassantLeft=false; } if(fromSquare.getFileNb()1) { //make sure not to go out of the board toCaptureLeftSquare = new Square(fromSquare.getFileNb()-1, fromSquare.getRank()-1); if(captureEnPassantLeft) { captureEnPassantLeftSquare = new Square(fromSquare.getFileNb()-1, fromSquare.getRank()); if (!toCaptureLeftSquare.isEqual(board.getEnPassantSquare())) { captureEnPassantLeft=false; } } } else { captureLeft = false; captureEnPassantLeft=false; } if(fromSquare.getFileNb() of all legal {@link Move} * without a capture. * You need to call legalMovesFromSquare before calling this function. * @return ArrayList */ public static ArrayList getLegalMovesNonCapture() { return legalMovesNonCapture; } /** * This function return the current status of the ArrayList of all legal {@link Move} * with a capture. * You need to call legalMovesFromSquare before calling this function. * @return ArrayList */ public static ArrayList getLegalMovesCapture() { return legalMovesCapture; } /*===================* * PRECOMPUTED MOVES * *===================*/ private static int[][][][] movesAllowed; static { initialise1(); initialise2(); } private final static void initialise1() { //all possible moves for a rook, a bishop, a king and a knight are preprocessed here /* movesAllowed[Piece.CONSTANT] will be an array of 64 integers (64 squares on the board) and for every square we have a array of all possible destination squares. squares are represented using the bitboard numbers (see Board.class). Pawns move won't be processed using this table so movesAllowed[Piece.PAWN] will be empty */ movesAllowed = new int [Piece.NB_OF_PIECES][][][]; //Values taken and adapted from François-Dominic Laramée JavaChess program /*======* * KING * ********/ movesAllowed[Piece.KING] = new int[Board.NB_OF_SQUARES][][]; movesAllowed[Piece.KING][ 0 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KING][ 0 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KING][ 0 ][ 1 ][ 0 ] = 8; movesAllowed[Piece.KING][ 0 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.KING][ 1 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 1 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.KING][ 1 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.KING][ 1 ][ 2 ][ 0 ] = 8; movesAllowed[Piece.KING][ 1 ][ 3 ][ 0 ] = 9; movesAllowed[Piece.KING][ 1 ][ 4 ][ 0 ] = 10; movesAllowed[Piece.KING][ 2 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 2 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KING][ 2 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.KING][ 2 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.KING][ 2 ][ 3 ][ 0 ] = 10; movesAllowed[Piece.KING][ 2 ][ 4 ][ 0 ] = 11; movesAllowed[Piece.KING][ 3 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 3 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.KING][ 3 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.KING][ 3 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.KING][ 3 ][ 3 ][ 0 ] = 11; movesAllowed[Piece.KING][ 3 ][ 4 ][ 0 ] = 12; movesAllowed[Piece.KING][ 4 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 4 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.KING][ 4 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.KING][ 4 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.KING][ 4 ][ 3 ][ 0 ] = 12; movesAllowed[Piece.KING][ 4 ][ 4 ][ 0 ] = 13; movesAllowed[Piece.KING][ 5 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 5 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.KING][ 5 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.KING][ 5 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.KING][ 5 ][ 3 ][ 0 ] = 13; movesAllowed[Piece.KING][ 5 ][ 4 ][ 0 ] = 14; movesAllowed[Piece.KING][ 6 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 6 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.KING][ 6 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.KING][ 6 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.KING][ 6 ][ 3 ][ 0 ] = 14; movesAllowed[Piece.KING][ 6 ][ 4 ][ 0 ] = 15; movesAllowed[Piece.KING][ 7 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KING][ 7 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.KING][ 7 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.KING][ 7 ][ 2 ][ 0 ] = 15; movesAllowed[Piece.KING][ 8 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 8 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.KING][ 8 ][ 1 ][ 0 ] = 1; movesAllowed[Piece.KING][ 8 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.KING][ 8 ][ 3 ][ 0 ] = 17; movesAllowed[Piece.KING][ 8 ][ 4 ][ 0 ] = 16; movesAllowed[Piece.KING][ 9 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 9 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.KING][ 9 ][ 1 ][ 0 ] = 1; movesAllowed[Piece.KING][ 9 ][ 2 ][ 0 ] = 2; movesAllowed[Piece.KING][ 9 ][ 3 ][ 0 ] = 8; movesAllowed[Piece.KING][ 9 ][ 4 ][ 0 ] = 10; movesAllowed[Piece.KING][ 9 ][ 5 ][ 0 ] = 16; movesAllowed[Piece.KING][ 9 ][ 6 ][ 0 ] = 17; movesAllowed[Piece.KING][ 9 ][ 7 ][ 0 ] = 18; movesAllowed[Piece.KING][ 10 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 10 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KING][ 10 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.KING][ 10 ][ 2 ][ 0 ] = 3; movesAllowed[Piece.KING][ 10 ][ 3 ][ 0 ] = 9; movesAllowed[Piece.KING][ 10 ][ 4 ][ 0 ] = 11; movesAllowed[Piece.KING][ 10 ][ 5 ][ 0 ] = 17; movesAllowed[Piece.KING][ 10 ][ 6 ][ 0 ] = 18; movesAllowed[Piece.KING][ 10 ][ 7 ][ 0 ] = 19; movesAllowed[Piece.KING][ 11 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 11 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.KING][ 11 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.KING][ 11 ][ 2 ][ 0 ] = 4; movesAllowed[Piece.KING][ 11 ][ 3 ][ 0 ] = 10; movesAllowed[Piece.KING][ 11 ][ 4 ][ 0 ] = 12; movesAllowed[Piece.KING][ 11 ][ 5 ][ 0 ] = 18; movesAllowed[Piece.KING][ 11 ][ 6 ][ 0 ] = 19; movesAllowed[Piece.KING][ 11 ][ 7 ][ 0 ] = 20; movesAllowed[Piece.KING][ 12 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 12 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.KING][ 12 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.KING][ 12 ][ 2 ][ 0 ] = 5; movesAllowed[Piece.KING][ 12 ][ 3 ][ 0 ] = 11; movesAllowed[Piece.KING][ 12 ][ 4 ][ 0 ] = 13; movesAllowed[Piece.KING][ 12 ][ 5 ][ 0 ] = 19; movesAllowed[Piece.KING][ 12 ][ 6 ][ 0 ] = 20; movesAllowed[Piece.KING][ 12 ][ 7 ][ 0 ] = 21; movesAllowed[Piece.KING][ 13 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 13 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.KING][ 13 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.KING][ 13 ][ 2 ][ 0 ] = 6; movesAllowed[Piece.KING][ 13 ][ 3 ][ 0 ] = 12; movesAllowed[Piece.KING][ 13 ][ 4 ][ 0 ] = 14; movesAllowed[Piece.KING][ 13 ][ 5 ][ 0 ] = 20; movesAllowed[Piece.KING][ 13 ][ 6 ][ 0 ] = 21; movesAllowed[Piece.KING][ 13 ][ 7 ][ 0 ] = 22; movesAllowed[Piece.KING][ 14 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 14 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.KING][ 14 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.KING][ 14 ][ 2 ][ 0 ] = 7; movesAllowed[Piece.KING][ 14 ][ 3 ][ 0 ] = 13; movesAllowed[Piece.KING][ 14 ][ 4 ][ 0 ] = 15; movesAllowed[Piece.KING][ 14 ][ 5 ][ 0 ] = 21; movesAllowed[Piece.KING][ 14 ][ 6 ][ 0 ] = 22; movesAllowed[Piece.KING][ 14 ][ 7 ][ 0 ] = 23; movesAllowed[Piece.KING][ 15 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 15 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.KING][ 15 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.KING][ 15 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.KING][ 15 ][ 3 ][ 0 ] = 22; movesAllowed[Piece.KING][ 15 ][ 4 ][ 0 ] = 23; movesAllowed[Piece.KING][ 16 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 16 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.KING][ 16 ][ 1 ][ 0 ] = 8; movesAllowed[Piece.KING][ 16 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.KING][ 16 ][ 3 ][ 0 ] = 24; movesAllowed[Piece.KING][ 16 ][ 4 ][ 0 ] = 25; movesAllowed[Piece.KING][ 17 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 17 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.KING][ 17 ][ 1 ][ 0 ] = 9; movesAllowed[Piece.KING][ 17 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.KING][ 17 ][ 3 ][ 0 ] = 16; movesAllowed[Piece.KING][ 17 ][ 4 ][ 0 ] = 18; movesAllowed[Piece.KING][ 17 ][ 5 ][ 0 ] = 24; movesAllowed[Piece.KING][ 17 ][ 6 ][ 0 ] = 25; movesAllowed[Piece.KING][ 17 ][ 7 ][ 0 ] = 26; movesAllowed[Piece.KING][ 18 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 18 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.KING][ 18 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.KING][ 18 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.KING][ 18 ][ 3 ][ 0 ] = 17; movesAllowed[Piece.KING][ 18 ][ 4 ][ 0 ] = 19; movesAllowed[Piece.KING][ 18 ][ 5 ][ 0 ] = 25; movesAllowed[Piece.KING][ 18 ][ 6 ][ 0 ] = 26; movesAllowed[Piece.KING][ 18 ][ 7 ][ 0 ] = 27; movesAllowed[Piece.KING][ 19 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 19 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.KING][ 19 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.KING][ 19 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.KING][ 19 ][ 3 ][ 0 ] = 18; movesAllowed[Piece.KING][ 19 ][ 4 ][ 0 ] = 20; movesAllowed[Piece.KING][ 19 ][ 5 ][ 0 ] = 26; movesAllowed[Piece.KING][ 19 ][ 6 ][ 0 ] = 27; movesAllowed[Piece.KING][ 19 ][ 7 ][ 0 ] = 28; movesAllowed[Piece.KING][ 20 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 20 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.KING][ 20 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.KING][ 20 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.KING][ 20 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.KING][ 20 ][ 4 ][ 0 ] = 21; movesAllowed[Piece.KING][ 20 ][ 5 ][ 0 ] = 27; movesAllowed[Piece.KING][ 20 ][ 6 ][ 0 ] = 28; movesAllowed[Piece.KING][ 20 ][ 7 ][ 0 ] = 29; movesAllowed[Piece.KING][ 21 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 21 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.KING][ 21 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.KING][ 21 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.KING][ 21 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.KING][ 21 ][ 4 ][ 0 ] = 22; movesAllowed[Piece.KING][ 21 ][ 5 ][ 0 ] = 28; movesAllowed[Piece.KING][ 21 ][ 6 ][ 0 ] = 29; movesAllowed[Piece.KING][ 21 ][ 7 ][ 0 ] = 30; movesAllowed[Piece.KING][ 22 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 22 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.KING][ 22 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.KING][ 22 ][ 2 ][ 0 ] = 15; movesAllowed[Piece.KING][ 22 ][ 3 ][ 0 ] = 21; movesAllowed[Piece.KING][ 22 ][ 4 ][ 0 ] = 23; movesAllowed[Piece.KING][ 22 ][ 5 ][ 0 ] = 29; movesAllowed[Piece.KING][ 22 ][ 6 ][ 0 ] = 30; movesAllowed[Piece.KING][ 22 ][ 7 ][ 0 ] = 31; movesAllowed[Piece.KING][ 23 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 23 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.KING][ 23 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.KING][ 23 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.KING][ 23 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.KING][ 23 ][ 4 ][ 0 ] = 31; movesAllowed[Piece.KING][ 24 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 24 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.KING][ 24 ][ 1 ][ 0 ] = 17; movesAllowed[Piece.KING][ 24 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.KING][ 24 ][ 3 ][ 0 ] = 32; movesAllowed[Piece.KING][ 24 ][ 4 ][ 0 ] = 33; movesAllowed[Piece.KING][ 25 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 25 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.KING][ 25 ][ 1 ][ 0 ] = 17; movesAllowed[Piece.KING][ 25 ][ 2 ][ 0 ] = 18; movesAllowed[Piece.KING][ 25 ][ 3 ][ 0 ] = 24; movesAllowed[Piece.KING][ 25 ][ 4 ][ 0 ] = 26; movesAllowed[Piece.KING][ 25 ][ 5 ][ 0 ] = 32; movesAllowed[Piece.KING][ 25 ][ 6 ][ 0 ] = 33; movesAllowed[Piece.KING][ 25 ][ 7 ][ 0 ] = 34; movesAllowed[Piece.KING][ 26 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 26 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.KING][ 26 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.KING][ 26 ][ 2 ][ 0 ] = 19; movesAllowed[Piece.KING][ 26 ][ 3 ][ 0 ] = 25; movesAllowed[Piece.KING][ 26 ][ 4 ][ 0 ] = 27; movesAllowed[Piece.KING][ 26 ][ 5 ][ 0 ] = 33; movesAllowed[Piece.KING][ 26 ][ 6 ][ 0 ] = 34; movesAllowed[Piece.KING][ 26 ][ 7 ][ 0 ] = 35; movesAllowed[Piece.KING][ 27 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 27 ][ 0 ][ 0 ] = 18; movesAllowed[Piece.KING][ 27 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.KING][ 27 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.KING][ 27 ][ 3 ][ 0 ] = 26; movesAllowed[Piece.KING][ 27 ][ 4 ][ 0 ] = 28; movesAllowed[Piece.KING][ 27 ][ 5 ][ 0 ] = 34; movesAllowed[Piece.KING][ 27 ][ 6 ][ 0 ] = 35; movesAllowed[Piece.KING][ 27 ][ 7 ][ 0 ] = 36; movesAllowed[Piece.KING][ 28 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 28 ][ 0 ][ 0 ] = 19; movesAllowed[Piece.KING][ 28 ][ 1 ][ 0 ] = 20; movesAllowed[Piece.KING][ 28 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.KING][ 28 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.KING][ 28 ][ 4 ][ 0 ] = 29; movesAllowed[Piece.KING][ 28 ][ 5 ][ 0 ] = 35; movesAllowed[Piece.KING][ 28 ][ 6 ][ 0 ] = 36; movesAllowed[Piece.KING][ 28 ][ 7 ][ 0 ] = 37; movesAllowed[Piece.KING][ 29 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 29 ][ 0 ][ 0 ] = 20; movesAllowed[Piece.KING][ 29 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.KING][ 29 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.KING][ 29 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.KING][ 29 ][ 4 ][ 0 ] = 30; movesAllowed[Piece.KING][ 29 ][ 5 ][ 0 ] = 36; movesAllowed[Piece.KING][ 29 ][ 6 ][ 0 ] = 37; movesAllowed[Piece.KING][ 29 ][ 7 ][ 0 ] = 38; movesAllowed[Piece.KING][ 30 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 30 ][ 0 ][ 0 ] = 21; movesAllowed[Piece.KING][ 30 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.KING][ 30 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.KING][ 30 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.KING][ 30 ][ 4 ][ 0 ] = 31; movesAllowed[Piece.KING][ 30 ][ 5 ][ 0 ] = 37; movesAllowed[Piece.KING][ 30 ][ 6 ][ 0 ] = 38; movesAllowed[Piece.KING][ 30 ][ 7 ][ 0 ] = 39; movesAllowed[Piece.KING][ 31 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 31 ][ 0 ][ 0 ] = 22; movesAllowed[Piece.KING][ 31 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.KING][ 31 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.KING][ 31 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.KING][ 31 ][ 4 ][ 0 ] = 39; movesAllowed[Piece.KING][ 32 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 32 ][ 0 ][ 0 ] = 24; movesAllowed[Piece.KING][ 32 ][ 1 ][ 0 ] = 25; movesAllowed[Piece.KING][ 32 ][ 2 ][ 0 ] = 33; movesAllowed[Piece.KING][ 32 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.KING][ 32 ][ 4 ][ 0 ] = 40; movesAllowed[Piece.KING][ 33 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 33 ][ 0 ][ 0 ] = 24; movesAllowed[Piece.KING][ 33 ][ 1 ][ 0 ] = 25; movesAllowed[Piece.KING][ 33 ][ 2 ][ 0 ] = 26; movesAllowed[Piece.KING][ 33 ][ 3 ][ 0 ] = 32; movesAllowed[Piece.KING][ 33 ][ 4 ][ 0 ] = 34; movesAllowed[Piece.KING][ 33 ][ 5 ][ 0 ] = 40; movesAllowed[Piece.KING][ 33 ][ 6 ][ 0 ] = 41; movesAllowed[Piece.KING][ 33 ][ 7 ][ 0 ] = 42; movesAllowed[Piece.KING][ 34 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 34 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.KING][ 34 ][ 1 ][ 0 ] = 26; movesAllowed[Piece.KING][ 34 ][ 2 ][ 0 ] = 27; movesAllowed[Piece.KING][ 34 ][ 3 ][ 0 ] = 33; movesAllowed[Piece.KING][ 34 ][ 4 ][ 0 ] = 35; movesAllowed[Piece.KING][ 34 ][ 5 ][ 0 ] = 41; movesAllowed[Piece.KING][ 34 ][ 6 ][ 0 ] = 42; movesAllowed[Piece.KING][ 34 ][ 7 ][ 0 ] = 43; movesAllowed[Piece.KING][ 35 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 35 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.KING][ 35 ][ 1 ][ 0 ] = 27; movesAllowed[Piece.KING][ 35 ][ 2 ][ 0 ] = 28; movesAllowed[Piece.KING][ 35 ][ 3 ][ 0 ] = 34; movesAllowed[Piece.KING][ 35 ][ 4 ][ 0 ] = 36; movesAllowed[Piece.KING][ 35 ][ 5 ][ 0 ] = 42; movesAllowed[Piece.KING][ 35 ][ 6 ][ 0 ] = 43; movesAllowed[Piece.KING][ 35 ][ 7 ][ 0 ] = 44; movesAllowed[Piece.KING][ 36 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 36 ][ 0 ][ 0 ] = 27; movesAllowed[Piece.KING][ 36 ][ 1 ][ 0 ] = 28; movesAllowed[Piece.KING][ 36 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.KING][ 36 ][ 3 ][ 0 ] = 35; movesAllowed[Piece.KING][ 36 ][ 4 ][ 0 ] = 37; movesAllowed[Piece.KING][ 36 ][ 5 ][ 0 ] = 43; movesAllowed[Piece.KING][ 36 ][ 6 ][ 0 ] = 44; movesAllowed[Piece.KING][ 36 ][ 7 ][ 0 ] = 45; movesAllowed[Piece.KING][ 37 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 37 ][ 0 ][ 0 ] = 28; movesAllowed[Piece.KING][ 37 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.KING][ 37 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.KING][ 37 ][ 3 ][ 0 ] = 36; movesAllowed[Piece.KING][ 37 ][ 4 ][ 0 ] = 38; movesAllowed[Piece.KING][ 37 ][ 5 ][ 0 ] = 44; movesAllowed[Piece.KING][ 37 ][ 6 ][ 0 ] = 45; movesAllowed[Piece.KING][ 37 ][ 7 ][ 0 ] = 46; movesAllowed[Piece.KING][ 38 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 38 ][ 0 ][ 0 ] = 29; movesAllowed[Piece.KING][ 38 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.KING][ 38 ][ 2 ][ 0 ] = 31; movesAllowed[Piece.KING][ 38 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.KING][ 38 ][ 4 ][ 0 ] = 39; movesAllowed[Piece.KING][ 38 ][ 5 ][ 0 ] = 45; movesAllowed[Piece.KING][ 38 ][ 6 ][ 0 ] = 46; movesAllowed[Piece.KING][ 38 ][ 7 ][ 0 ] = 47; movesAllowed[Piece.KING][ 39 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 39 ][ 0 ][ 0 ] = 30; movesAllowed[Piece.KING][ 39 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.KING][ 39 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.KING][ 39 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.KING][ 39 ][ 4 ][ 0 ] = 47; movesAllowed[Piece.KING][ 40 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 40 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.KING][ 40 ][ 1 ][ 0 ] = 33; movesAllowed[Piece.KING][ 40 ][ 2 ][ 0 ] = 41; movesAllowed[Piece.KING][ 40 ][ 3 ][ 0 ] = 48; movesAllowed[Piece.KING][ 40 ][ 4 ][ 0 ] = 49; movesAllowed[Piece.KING][ 41 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 41 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.KING][ 41 ][ 1 ][ 0 ] = 33; movesAllowed[Piece.KING][ 41 ][ 2 ][ 0 ] = 34; movesAllowed[Piece.KING][ 41 ][ 3 ][ 0 ] = 40; movesAllowed[Piece.KING][ 41 ][ 4 ][ 0 ] = 42; movesAllowed[Piece.KING][ 41 ][ 5 ][ 0 ] = 48; movesAllowed[Piece.KING][ 41 ][ 6 ][ 0 ] = 49; movesAllowed[Piece.KING][ 41 ][ 7 ][ 0 ] = 50; movesAllowed[Piece.KING][ 42 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 42 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.KING][ 42 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.KING][ 42 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.KING][ 42 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.KING][ 42 ][ 4 ][ 0 ] = 43; movesAllowed[Piece.KING][ 42 ][ 5 ][ 0 ] = 49; movesAllowed[Piece.KING][ 42 ][ 6 ][ 0 ] = 50; movesAllowed[Piece.KING][ 42 ][ 7 ][ 0 ] = 51; movesAllowed[Piece.KING][ 43 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 43 ][ 0 ][ 0 ] = 34; movesAllowed[Piece.KING][ 43 ][ 1 ][ 0 ] = 35; movesAllowed[Piece.KING][ 43 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.KING][ 43 ][ 3 ][ 0 ] = 42; movesAllowed[Piece.KING][ 43 ][ 4 ][ 0 ] = 44; movesAllowed[Piece.KING][ 43 ][ 5 ][ 0 ] = 50; movesAllowed[Piece.KING][ 43 ][ 6 ][ 0 ] = 51; movesAllowed[Piece.KING][ 43 ][ 7 ][ 0 ] = 52; movesAllowed[Piece.KING][ 44 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 44 ][ 0 ][ 0 ] = 35; movesAllowed[Piece.KING][ 44 ][ 1 ][ 0 ] = 36; movesAllowed[Piece.KING][ 44 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.KING][ 44 ][ 3 ][ 0 ] = 43; movesAllowed[Piece.KING][ 44 ][ 4 ][ 0 ] = 45; movesAllowed[Piece.KING][ 44 ][ 5 ][ 0 ] = 51; movesAllowed[Piece.KING][ 44 ][ 6 ][ 0 ] = 52; movesAllowed[Piece.KING][ 44 ][ 7 ][ 0 ] = 53; movesAllowed[Piece.KING][ 45 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 45 ][ 0 ][ 0 ] = 36; movesAllowed[Piece.KING][ 45 ][ 1 ][ 0 ] = 37; movesAllowed[Piece.KING][ 45 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.KING][ 45 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.KING][ 45 ][ 4 ][ 0 ] = 46; movesAllowed[Piece.KING][ 45 ][ 5 ][ 0 ] = 52; movesAllowed[Piece.KING][ 45 ][ 6 ][ 0 ] = 53; movesAllowed[Piece.KING][ 45 ][ 7 ][ 0 ] = 54; movesAllowed[Piece.KING][ 46 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 46 ][ 0 ][ 0 ] = 37; movesAllowed[Piece.KING][ 46 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.KING][ 46 ][ 2 ][ 0 ] = 39; movesAllowed[Piece.KING][ 46 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.KING][ 46 ][ 4 ][ 0 ] = 47; movesAllowed[Piece.KING][ 46 ][ 5 ][ 0 ] = 53; movesAllowed[Piece.KING][ 46 ][ 6 ][ 0 ] = 54; movesAllowed[Piece.KING][ 46 ][ 7 ][ 0 ] = 55; movesAllowed[Piece.KING][ 47 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 47 ][ 0 ][ 0 ] = 38; movesAllowed[Piece.KING][ 47 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.KING][ 47 ][ 2 ][ 0 ] = 46; movesAllowed[Piece.KING][ 47 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.KING][ 47 ][ 4 ][ 0 ] = 55; movesAllowed[Piece.KING][ 48 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 48 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.KING][ 48 ][ 1 ][ 0 ] = 41; movesAllowed[Piece.KING][ 48 ][ 2 ][ 0 ] = 49; movesAllowed[Piece.KING][ 48 ][ 3 ][ 0 ] = 56; movesAllowed[Piece.KING][ 48 ][ 4 ][ 0 ] = 57; movesAllowed[Piece.KING][ 49 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 49 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.KING][ 49 ][ 1 ][ 0 ] = 41; movesAllowed[Piece.KING][ 49 ][ 2 ][ 0 ] = 42; movesAllowed[Piece.KING][ 49 ][ 3 ][ 0 ] = 48; movesAllowed[Piece.KING][ 49 ][ 4 ][ 0 ] = 50; movesAllowed[Piece.KING][ 49 ][ 5 ][ 0 ] = 56; movesAllowed[Piece.KING][ 49 ][ 6 ][ 0 ] = 57; movesAllowed[Piece.KING][ 49 ][ 7 ][ 0 ] = 58; movesAllowed[Piece.KING][ 50 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 50 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.KING][ 50 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.KING][ 50 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.KING][ 50 ][ 3 ][ 0 ] = 49; movesAllowed[Piece.KING][ 50 ][ 4 ][ 0 ] = 51; movesAllowed[Piece.KING][ 50 ][ 5 ][ 0 ] = 57; movesAllowed[Piece.KING][ 50 ][ 6 ][ 0 ] = 58; movesAllowed[Piece.KING][ 50 ][ 7 ][ 0 ] = 59; movesAllowed[Piece.KING][ 51 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 51 ][ 0 ][ 0 ] = 42; movesAllowed[Piece.KING][ 51 ][ 1 ][ 0 ] = 43; movesAllowed[Piece.KING][ 51 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.KING][ 51 ][ 3 ][ 0 ] = 50; movesAllowed[Piece.KING][ 51 ][ 4 ][ 0 ] = 52; movesAllowed[Piece.KING][ 51 ][ 5 ][ 0 ] = 58; movesAllowed[Piece.KING][ 51 ][ 6 ][ 0 ] = 59; movesAllowed[Piece.KING][ 51 ][ 7 ][ 0 ] = 60; movesAllowed[Piece.KING][ 52 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 52 ][ 0 ][ 0 ] = 43; movesAllowed[Piece.KING][ 52 ][ 1 ][ 0 ] = 44; movesAllowed[Piece.KING][ 52 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.KING][ 52 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.KING][ 52 ][ 4 ][ 0 ] = 53; movesAllowed[Piece.KING][ 52 ][ 5 ][ 0 ] = 59; movesAllowed[Piece.KING][ 52 ][ 6 ][ 0 ] = 60; movesAllowed[Piece.KING][ 52 ][ 7 ][ 0 ] = 61; movesAllowed[Piece.KING][ 53 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 53 ][ 0 ][ 0 ] = 44; movesAllowed[Piece.KING][ 53 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.KING][ 53 ][ 2 ][ 0 ] = 46; movesAllowed[Piece.KING][ 53 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.KING][ 53 ][ 4 ][ 0 ] = 54; movesAllowed[Piece.KING][ 53 ][ 5 ][ 0 ] = 60; movesAllowed[Piece.KING][ 53 ][ 6 ][ 0 ] = 61; movesAllowed[Piece.KING][ 53 ][ 7 ][ 0 ] = 62; movesAllowed[Piece.KING][ 54 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KING][ 54 ][ 0 ][ 0 ] = 45; movesAllowed[Piece.KING][ 54 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.KING][ 54 ][ 2 ][ 0 ] = 47; movesAllowed[Piece.KING][ 54 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.KING][ 54 ][ 4 ][ 0 ] = 55; movesAllowed[Piece.KING][ 54 ][ 5 ][ 0 ] = 61; movesAllowed[Piece.KING][ 54 ][ 6 ][ 0 ] = 62; movesAllowed[Piece.KING][ 54 ][ 7 ][ 0 ] = 63; movesAllowed[Piece.KING][ 55 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 55 ][ 0 ][ 0 ] = 46; movesAllowed[Piece.KING][ 55 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.KING][ 55 ][ 2 ][ 0 ] = 54; movesAllowed[Piece.KING][ 55 ][ 3 ][ 0 ] = 62; movesAllowed[Piece.KING][ 55 ][ 4 ][ 0 ] = 63; movesAllowed[Piece.KING][ 56 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KING][ 56 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.KING][ 56 ][ 1 ][ 0 ] = 49; movesAllowed[Piece.KING][ 56 ][ 2 ][ 0 ] = 57; movesAllowed[Piece.KING][ 57 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 57 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.KING][ 57 ][ 1 ][ 0 ] = 49; movesAllowed[Piece.KING][ 57 ][ 2 ][ 0 ] = 50; movesAllowed[Piece.KING][ 57 ][ 3 ][ 0 ] = 56; movesAllowed[Piece.KING][ 57 ][ 4 ][ 0 ] = 58; movesAllowed[Piece.KING][ 58 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 58 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.KING][ 58 ][ 1 ][ 0 ] = 50; movesAllowed[Piece.KING][ 58 ][ 2 ][ 0 ] = 51; movesAllowed[Piece.KING][ 58 ][ 3 ][ 0 ] = 57; movesAllowed[Piece.KING][ 58 ][ 4 ][ 0 ] = 59; movesAllowed[Piece.KING][ 59 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 59 ][ 0 ][ 0 ] = 50; movesAllowed[Piece.KING][ 59 ][ 1 ][ 0 ] = 51; movesAllowed[Piece.KING][ 59 ][ 2 ][ 0 ] = 52; movesAllowed[Piece.KING][ 59 ][ 3 ][ 0 ] = 58; movesAllowed[Piece.KING][ 59 ][ 4 ][ 0 ] = 60; movesAllowed[Piece.KING][ 60 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 60 ][ 0 ][ 0 ] = 51; movesAllowed[Piece.KING][ 60 ][ 1 ][ 0 ] = 52; movesAllowed[Piece.KING][ 60 ][ 2 ][ 0 ] = 53; movesAllowed[Piece.KING][ 60 ][ 3 ][ 0 ] = 59; movesAllowed[Piece.KING][ 60 ][ 4 ][ 0 ] = 61; movesAllowed[Piece.KING][ 61 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 61 ][ 0 ][ 0 ] = 52; movesAllowed[Piece.KING][ 61 ][ 1 ][ 0 ] = 53; movesAllowed[Piece.KING][ 61 ][ 2 ][ 0 ] = 54; movesAllowed[Piece.KING][ 61 ][ 3 ][ 0 ] = 60; movesAllowed[Piece.KING][ 61 ][ 4 ][ 0 ] = 62; movesAllowed[Piece.KING][ 62 ] = new int[ 5 ][ 1 ]; movesAllowed[Piece.KING][ 62 ][ 0 ][ 0 ] = 53; movesAllowed[Piece.KING][ 62 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.KING][ 62 ][ 2 ][ 0 ] = 55; movesAllowed[Piece.KING][ 62 ][ 3 ][ 0 ] = 61; movesAllowed[Piece.KING][ 62 ][ 4 ][ 0 ] = 63; movesAllowed[Piece.KING][ 63 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KING][ 63 ][ 0 ][ 0 ] = 54; movesAllowed[Piece.KING][ 63 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.KING][ 63 ][ 2 ][ 0 ] = 62; /*========* * BISHOP * *========*/ movesAllowed[Piece.BISHOP] = new int[ 64 ][][]; movesAllowed[Piece.BISHOP][ 0 ] = new int [ 1 ][ 7 ]; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 3 ] = 36; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 4 ] = 45; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 5 ] = 54; movesAllowed[Piece.BISHOP][ 0 ][ 0 ][ 6 ] = 63; movesAllowed[Piece.BISHOP][ 1 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 1 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 1 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.BISHOP][ 1 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 1 ] = 19; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 2 ] = 28; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 3 ] = 37; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 4 ] = 46; movesAllowed[Piece.BISHOP][ 1 ][ 1 ][ 5 ] = 55; movesAllowed[Piece.BISHOP][ 2 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 2 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 2 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.BISHOP][ 2 ][ 0 ][ 1 ] = 16; movesAllowed[Piece.BISHOP][ 2 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 2 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.BISHOP][ 2 ][ 1 ][ 1 ] = 20; movesAllowed[Piece.BISHOP][ 2 ][ 1 ][ 2 ] = 29; movesAllowed[Piece.BISHOP][ 2 ][ 1 ][ 3 ] = 38; movesAllowed[Piece.BISHOP][ 2 ][ 1 ][ 4 ] = 47; movesAllowed[Piece.BISHOP][ 3 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 3 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 3 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.BISHOP][ 3 ][ 0 ][ 1 ] = 17; movesAllowed[Piece.BISHOP][ 3 ][ 0 ][ 2 ] = 24; movesAllowed[Piece.BISHOP][ 3 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 3 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.BISHOP][ 3 ][ 1 ][ 1 ] = 21; movesAllowed[Piece.BISHOP][ 3 ][ 1 ][ 2 ] = 30; movesAllowed[Piece.BISHOP][ 3 ][ 1 ][ 3 ] = 39; movesAllowed[Piece.BISHOP][ 4 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 4 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 4 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.BISHOP][ 4 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.BISHOP][ 4 ][ 0 ][ 2 ] = 25; movesAllowed[Piece.BISHOP][ 4 ][ 0 ][ 3 ] = 32; movesAllowed[Piece.BISHOP][ 4 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 4 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.BISHOP][ 4 ][ 1 ][ 1 ] = 22; movesAllowed[Piece.BISHOP][ 4 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.BISHOP][ 5 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 5 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 5 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.BISHOP][ 5 ][ 0 ][ 1 ] = 19; movesAllowed[Piece.BISHOP][ 5 ][ 0 ][ 2 ] = 26; movesAllowed[Piece.BISHOP][ 5 ][ 0 ][ 3 ] = 33; movesAllowed[Piece.BISHOP][ 5 ][ 0 ][ 4 ] = 40; movesAllowed[Piece.BISHOP][ 5 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 5 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.BISHOP][ 5 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.BISHOP][ 6 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 6 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 1 ] = 20; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 3 ] = 34; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 4 ] = 41; movesAllowed[Piece.BISHOP][ 6 ][ 0 ][ 5 ] = 48; movesAllowed[Piece.BISHOP][ 6 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 6 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.BISHOP][ 7 ] = new int [ 1 ][ 7 ]; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 1 ] = 21; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 2 ] = 28; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 3 ] = 35; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 4 ] = 42; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 5 ] = 49; movesAllowed[Piece.BISHOP][ 7 ][ 0 ][ 6 ] = 56; movesAllowed[Piece.BISHOP][ 8 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 8 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 8 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.BISHOP][ 8 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 0 ] = 17; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 1 ] = 26; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 2 ] = 35; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 3 ] = 44; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 4 ] = 53; movesAllowed[Piece.BISHOP][ 8 ][ 1 ][ 5 ] = 62; movesAllowed[Piece.BISHOP][ 9 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 9 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 9 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 9 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 9 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 9 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.BISHOP][ 9 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.BISHOP][ 9 ][ 2 ][ 0 ] = 16; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 0 ] = 18; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 1 ] = 27; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 2 ] = 36; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 3 ] = 45; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 4 ] = 54; movesAllowed[Piece.BISHOP][ 9 ][ 3 ][ 5 ] = 63; movesAllowed[Piece.BISHOP][ 10 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 10 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 10 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 10 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 10 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 10 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.BISHOP][ 10 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.BISHOP][ 10 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.BISHOP][ 10 ][ 2 ][ 1 ] = 24; movesAllowed[Piece.BISHOP][ 10 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.BISHOP][ 10 ][ 3 ][ 1 ] = 28; movesAllowed[Piece.BISHOP][ 10 ][ 3 ][ 2 ] = 37; movesAllowed[Piece.BISHOP][ 10 ][ 3 ][ 3 ] = 46; movesAllowed[Piece.BISHOP][ 10 ][ 3 ][ 4 ] = 55; movesAllowed[Piece.BISHOP][ 11 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 11 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 11 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 11 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 11 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 11 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.BISHOP][ 11 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.BISHOP][ 11 ][ 2 ][ 0 ] = 18; movesAllowed[Piece.BISHOP][ 11 ][ 2 ][ 1 ] = 25; movesAllowed[Piece.BISHOP][ 11 ][ 2 ][ 2 ] = 32; movesAllowed[Piece.BISHOP][ 11 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.BISHOP][ 11 ][ 3 ][ 1 ] = 29; movesAllowed[Piece.BISHOP][ 11 ][ 3 ][ 2 ] = 38; movesAllowed[Piece.BISHOP][ 11 ][ 3 ][ 3 ] = 47; movesAllowed[Piece.BISHOP][ 12 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 12 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 12 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 12 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 12 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 12 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.BISHOP][ 12 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.BISHOP][ 12 ][ 2 ][ 0 ] = 19; movesAllowed[Piece.BISHOP][ 12 ][ 2 ][ 1 ] = 26; movesAllowed[Piece.BISHOP][ 12 ][ 2 ][ 2 ] = 33; movesAllowed[Piece.BISHOP][ 12 ][ 2 ][ 3 ] = 40; movesAllowed[Piece.BISHOP][ 12 ][ 3 ][ 0 ] = 21; movesAllowed[Piece.BISHOP][ 12 ][ 3 ][ 1 ] = 30; movesAllowed[Piece.BISHOP][ 12 ][ 3 ][ 2 ] = 39; movesAllowed[Piece.BISHOP][ 13 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 13 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 13 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 13 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 13 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 13 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.BISHOP][ 13 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.BISHOP][ 13 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.BISHOP][ 13 ][ 2 ][ 1 ] = 27; movesAllowed[Piece.BISHOP][ 13 ][ 2 ][ 2 ] = 34; movesAllowed[Piece.BISHOP][ 13 ][ 2 ][ 3 ] = 41; movesAllowed[Piece.BISHOP][ 13 ][ 2 ][ 4 ] = 48; movesAllowed[Piece.BISHOP][ 13 ][ 3 ][ 0 ] = 22; movesAllowed[Piece.BISHOP][ 13 ][ 3 ][ 1 ] = 31; movesAllowed[Piece.BISHOP][ 14 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 14 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 14 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 14 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 14 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 14 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.BISHOP][ 14 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 1 ] = 28; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 2 ] = 35; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 3 ] = 42; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 4 ] = 49; movesAllowed[Piece.BISHOP][ 14 ][ 2 ][ 5 ] = 56; movesAllowed[Piece.BISHOP][ 14 ][ 3 ][ 0 ] = 23; movesAllowed[Piece.BISHOP][ 15 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 15 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 15 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 15 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 1 ] = 29; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 2 ] = 36; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 3 ] = 43; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 4 ] = 50; movesAllowed[Piece.BISHOP][ 15 ][ 1 ][ 5 ] = 57; movesAllowed[Piece.BISHOP][ 16 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 16 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 16 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 16 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.BISHOP][ 16 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.BISHOP][ 16 ][ 1 ][ 0 ] = 25; movesAllowed[Piece.BISHOP][ 16 ][ 1 ][ 1 ] = 34; movesAllowed[Piece.BISHOP][ 16 ][ 1 ][ 2 ] = 43; movesAllowed[Piece.BISHOP][ 16 ][ 1 ][ 3 ] = 52; movesAllowed[Piece.BISHOP][ 16 ][ 1 ][ 4 ] = 61; movesAllowed[Piece.BISHOP][ 17 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 17 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 17 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 17 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 17 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 17 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.BISHOP][ 17 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.BISHOP][ 17 ][ 1 ][ 1 ] = 3; movesAllowed[Piece.BISHOP][ 17 ][ 2 ][ 0 ] = 24; movesAllowed[Piece.BISHOP][ 17 ][ 3 ][ 0 ] = 26; movesAllowed[Piece.BISHOP][ 17 ][ 3 ][ 1 ] = 35; movesAllowed[Piece.BISHOP][ 17 ][ 3 ][ 2 ] = 44; movesAllowed[Piece.BISHOP][ 17 ][ 3 ][ 3 ] = 53; movesAllowed[Piece.BISHOP][ 17 ][ 3 ][ 4 ] = 62; movesAllowed[Piece.BISHOP][ 18 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 18 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 18 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 18 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 18 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 18 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.BISHOP][ 18 ][ 0 ][ 1 ] = 0; movesAllowed[Piece.BISHOP][ 18 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.BISHOP][ 18 ][ 1 ][ 1 ] = 4; movesAllowed[Piece.BISHOP][ 18 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.BISHOP][ 18 ][ 2 ][ 1 ] = 32; movesAllowed[Piece.BISHOP][ 18 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.BISHOP][ 18 ][ 3 ][ 1 ] = 36; movesAllowed[Piece.BISHOP][ 18 ][ 3 ][ 2 ] = 45; movesAllowed[Piece.BISHOP][ 18 ][ 3 ][ 3 ] = 54; movesAllowed[Piece.BISHOP][ 18 ][ 3 ][ 4 ] = 63; movesAllowed[Piece.BISHOP][ 19 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 19 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 19 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 19 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 19 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 19 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.BISHOP][ 19 ][ 0 ][ 1 ] = 1; movesAllowed[Piece.BISHOP][ 19 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.BISHOP][ 19 ][ 1 ][ 1 ] = 5; movesAllowed[Piece.BISHOP][ 19 ][ 2 ][ 0 ] = 26; movesAllowed[Piece.BISHOP][ 19 ][ 2 ][ 1 ] = 33; movesAllowed[Piece.BISHOP][ 19 ][ 2 ][ 2 ] = 40; movesAllowed[Piece.BISHOP][ 19 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.BISHOP][ 19 ][ 3 ][ 1 ] = 37; movesAllowed[Piece.BISHOP][ 19 ][ 3 ][ 2 ] = 46; movesAllowed[Piece.BISHOP][ 19 ][ 3 ][ 3 ] = 55; movesAllowed[Piece.BISHOP][ 20 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 20 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 20 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 20 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 20 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 20 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.BISHOP][ 20 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.BISHOP][ 20 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.BISHOP][ 20 ][ 1 ][ 1 ] = 6; movesAllowed[Piece.BISHOP][ 20 ][ 2 ][ 0 ] = 27; movesAllowed[Piece.BISHOP][ 20 ][ 2 ][ 1 ] = 34; movesAllowed[Piece.BISHOP][ 20 ][ 2 ][ 2 ] = 41; movesAllowed[Piece.BISHOP][ 20 ][ 2 ][ 3 ] = 48; movesAllowed[Piece.BISHOP][ 20 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.BISHOP][ 20 ][ 3 ][ 1 ] = 38; movesAllowed[Piece.BISHOP][ 20 ][ 3 ][ 2 ] = 47; movesAllowed[Piece.BISHOP][ 21 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 21 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 21 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 21 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 21 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 21 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.BISHOP][ 21 ][ 0 ][ 1 ] = 3; movesAllowed[Piece.BISHOP][ 21 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.BISHOP][ 21 ][ 1 ][ 1 ] = 7; movesAllowed[Piece.BISHOP][ 21 ][ 2 ][ 0 ] = 28; movesAllowed[Piece.BISHOP][ 21 ][ 2 ][ 1 ] = 35; movesAllowed[Piece.BISHOP][ 21 ][ 2 ][ 2 ] = 42; movesAllowed[Piece.BISHOP][ 21 ][ 2 ][ 3 ] = 49; movesAllowed[Piece.BISHOP][ 21 ][ 2 ][ 4 ] = 56; movesAllowed[Piece.BISHOP][ 21 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.BISHOP][ 21 ][ 3 ][ 1 ] = 39; movesAllowed[Piece.BISHOP][ 22 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 22 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 22 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 22 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 22 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 22 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.BISHOP][ 22 ][ 0 ][ 1 ] = 4; movesAllowed[Piece.BISHOP][ 22 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.BISHOP][ 22 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.BISHOP][ 22 ][ 2 ][ 1 ] = 36; movesAllowed[Piece.BISHOP][ 22 ][ 2 ][ 2 ] = 43; movesAllowed[Piece.BISHOP][ 22 ][ 2 ][ 3 ] = 50; movesAllowed[Piece.BISHOP][ 22 ][ 2 ][ 4 ] = 57; movesAllowed[Piece.BISHOP][ 22 ][ 3 ][ 0 ] = 31; movesAllowed[Piece.BISHOP][ 23 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 23 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 23 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 23 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.BISHOP][ 23 ][ 0 ][ 1 ] = 5; movesAllowed[Piece.BISHOP][ 23 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.BISHOP][ 23 ][ 1 ][ 1 ] = 37; movesAllowed[Piece.BISHOP][ 23 ][ 1 ][ 2 ] = 44; movesAllowed[Piece.BISHOP][ 23 ][ 1 ][ 3 ] = 51; movesAllowed[Piece.BISHOP][ 23 ][ 1 ][ 4 ] = 58; movesAllowed[Piece.BISHOP][ 24 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 24 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 24 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 24 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.BISHOP][ 24 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.BISHOP][ 24 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.BISHOP][ 24 ][ 1 ][ 0 ] = 33; movesAllowed[Piece.BISHOP][ 24 ][ 1 ][ 1 ] = 42; movesAllowed[Piece.BISHOP][ 24 ][ 1 ][ 2 ] = 51; movesAllowed[Piece.BISHOP][ 24 ][ 1 ][ 3 ] = 60; movesAllowed[Piece.BISHOP][ 25 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 25 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 25 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 25 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 25 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 25 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.BISHOP][ 25 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.BISHOP][ 25 ][ 1 ][ 1 ] = 11; movesAllowed[Piece.BISHOP][ 25 ][ 1 ][ 2 ] = 4; movesAllowed[Piece.BISHOP][ 25 ][ 2 ][ 0 ] = 32; movesAllowed[Piece.BISHOP][ 25 ][ 3 ][ 0 ] = 34; movesAllowed[Piece.BISHOP][ 25 ][ 3 ][ 1 ] = 43; movesAllowed[Piece.BISHOP][ 25 ][ 3 ][ 2 ] = 52; movesAllowed[Piece.BISHOP][ 25 ][ 3 ][ 3 ] = 61; movesAllowed[Piece.BISHOP][ 26 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 26 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 26 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 26 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 26 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 26 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.BISHOP][ 26 ][ 0 ][ 1 ] = 8; movesAllowed[Piece.BISHOP][ 26 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.BISHOP][ 26 ][ 1 ][ 1 ] = 12; movesAllowed[Piece.BISHOP][ 26 ][ 1 ][ 2 ] = 5; movesAllowed[Piece.BISHOP][ 26 ][ 2 ][ 0 ] = 33; movesAllowed[Piece.BISHOP][ 26 ][ 2 ][ 1 ] = 40; movesAllowed[Piece.BISHOP][ 26 ][ 3 ][ 0 ] = 35; movesAllowed[Piece.BISHOP][ 26 ][ 3 ][ 1 ] = 44; movesAllowed[Piece.BISHOP][ 26 ][ 3 ][ 2 ] = 53; movesAllowed[Piece.BISHOP][ 26 ][ 3 ][ 3 ] = 62; movesAllowed[Piece.BISHOP][ 27 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 27 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 27 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 27 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 27 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 27 ][ 0 ][ 0 ] = 18; movesAllowed[Piece.BISHOP][ 27 ][ 0 ][ 1 ] = 9; movesAllowed[Piece.BISHOP][ 27 ][ 0 ][ 2 ] = 0; movesAllowed[Piece.BISHOP][ 27 ][ 1 ][ 0 ] = 20; movesAllowed[Piece.BISHOP][ 27 ][ 1 ][ 1 ] = 13; movesAllowed[Piece.BISHOP][ 27 ][ 1 ][ 2 ] = 6; movesAllowed[Piece.BISHOP][ 27 ][ 2 ][ 0 ] = 34; movesAllowed[Piece.BISHOP][ 27 ][ 2 ][ 1 ] = 41; movesAllowed[Piece.BISHOP][ 27 ][ 2 ][ 2 ] = 48; movesAllowed[Piece.BISHOP][ 27 ][ 3 ][ 0 ] = 36; movesAllowed[Piece.BISHOP][ 27 ][ 3 ][ 1 ] = 45; movesAllowed[Piece.BISHOP][ 27 ][ 3 ][ 2 ] = 54; movesAllowed[Piece.BISHOP][ 27 ][ 3 ][ 3 ] = 63; movesAllowed[Piece.BISHOP][ 28 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 28 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 28 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 28 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 28 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 28 ][ 0 ][ 0 ] = 19; movesAllowed[Piece.BISHOP][ 28 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.BISHOP][ 28 ][ 0 ][ 2 ] = 1; movesAllowed[Piece.BISHOP][ 28 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.BISHOP][ 28 ][ 1 ][ 1 ] = 14; movesAllowed[Piece.BISHOP][ 28 ][ 1 ][ 2 ] = 7; movesAllowed[Piece.BISHOP][ 28 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.BISHOP][ 28 ][ 2 ][ 1 ] = 42; movesAllowed[Piece.BISHOP][ 28 ][ 2 ][ 2 ] = 49; movesAllowed[Piece.BISHOP][ 28 ][ 2 ][ 3 ] = 56; movesAllowed[Piece.BISHOP][ 28 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.BISHOP][ 28 ][ 3 ][ 1 ] = 46; movesAllowed[Piece.BISHOP][ 28 ][ 3 ][ 2 ] = 55; movesAllowed[Piece.BISHOP][ 29 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 29 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 29 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 29 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 29 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 29 ][ 0 ][ 0 ] = 20; movesAllowed[Piece.BISHOP][ 29 ][ 0 ][ 1 ] = 11; movesAllowed[Piece.BISHOP][ 29 ][ 0 ][ 2 ] = 2; movesAllowed[Piece.BISHOP][ 29 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.BISHOP][ 29 ][ 1 ][ 1 ] = 15; movesAllowed[Piece.BISHOP][ 29 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.BISHOP][ 29 ][ 2 ][ 1 ] = 43; movesAllowed[Piece.BISHOP][ 29 ][ 2 ][ 2 ] = 50; movesAllowed[Piece.BISHOP][ 29 ][ 2 ][ 3 ] = 57; movesAllowed[Piece.BISHOP][ 29 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.BISHOP][ 29 ][ 3 ][ 1 ] = 47; movesAllowed[Piece.BISHOP][ 30 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 30 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 30 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 30 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 30 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 30 ][ 0 ][ 0 ] = 21; movesAllowed[Piece.BISHOP][ 30 ][ 0 ][ 1 ] = 12; movesAllowed[Piece.BISHOP][ 30 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.BISHOP][ 30 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.BISHOP][ 30 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.BISHOP][ 30 ][ 2 ][ 1 ] = 44; movesAllowed[Piece.BISHOP][ 30 ][ 2 ][ 2 ] = 51; movesAllowed[Piece.BISHOP][ 30 ][ 2 ][ 3 ] = 58; movesAllowed[Piece.BISHOP][ 30 ][ 3 ][ 0 ] = 39; movesAllowed[Piece.BISHOP][ 31 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 31 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 31 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 31 ][ 0 ][ 0 ] = 22; movesAllowed[Piece.BISHOP][ 31 ][ 0 ][ 1 ] = 13; movesAllowed[Piece.BISHOP][ 31 ][ 0 ][ 2 ] = 4; movesAllowed[Piece.BISHOP][ 31 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.BISHOP][ 31 ][ 1 ][ 1 ] = 45; movesAllowed[Piece.BISHOP][ 31 ][ 1 ][ 2 ] = 52; movesAllowed[Piece.BISHOP][ 31 ][ 1 ][ 3 ] = 59; movesAllowed[Piece.BISHOP][ 32 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 32 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 32 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 32 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.BISHOP][ 32 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.BISHOP][ 32 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.BISHOP][ 32 ][ 0 ][ 3 ] = 4; movesAllowed[Piece.BISHOP][ 32 ][ 1 ][ 0 ] = 41; movesAllowed[Piece.BISHOP][ 32 ][ 1 ][ 1 ] = 50; movesAllowed[Piece.BISHOP][ 32 ][ 1 ][ 2 ] = 59; movesAllowed[Piece.BISHOP][ 33 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 33 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 33 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 33 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 33 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 33 ][ 0 ][ 0 ] = 24; movesAllowed[Piece.BISHOP][ 33 ][ 1 ][ 0 ] = 26; movesAllowed[Piece.BISHOP][ 33 ][ 1 ][ 1 ] = 19; movesAllowed[Piece.BISHOP][ 33 ][ 1 ][ 2 ] = 12; movesAllowed[Piece.BISHOP][ 33 ][ 1 ][ 3 ] = 5; movesAllowed[Piece.BISHOP][ 33 ][ 2 ][ 0 ] = 40; movesAllowed[Piece.BISHOP][ 33 ][ 3 ][ 0 ] = 42; movesAllowed[Piece.BISHOP][ 33 ][ 3 ][ 1 ] = 51; movesAllowed[Piece.BISHOP][ 33 ][ 3 ][ 2 ] = 60; movesAllowed[Piece.BISHOP][ 34 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 34 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 34 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 34 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 34 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 34 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.BISHOP][ 34 ][ 0 ][ 1 ] = 16; movesAllowed[Piece.BISHOP][ 34 ][ 1 ][ 0 ] = 27; movesAllowed[Piece.BISHOP][ 34 ][ 1 ][ 1 ] = 20; movesAllowed[Piece.BISHOP][ 34 ][ 1 ][ 2 ] = 13; movesAllowed[Piece.BISHOP][ 34 ][ 1 ][ 3 ] = 6; movesAllowed[Piece.BISHOP][ 34 ][ 2 ][ 0 ] = 41; movesAllowed[Piece.BISHOP][ 34 ][ 2 ][ 1 ] = 48; movesAllowed[Piece.BISHOP][ 34 ][ 3 ][ 0 ] = 43; movesAllowed[Piece.BISHOP][ 34 ][ 3 ][ 1 ] = 52; movesAllowed[Piece.BISHOP][ 34 ][ 3 ][ 2 ] = 61; movesAllowed[Piece.BISHOP][ 35 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 35 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 35 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 35 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 35 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 35 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.BISHOP][ 35 ][ 0 ][ 1 ] = 17; movesAllowed[Piece.BISHOP][ 35 ][ 0 ][ 2 ] = 8; movesAllowed[Piece.BISHOP][ 35 ][ 1 ][ 0 ] = 28; movesAllowed[Piece.BISHOP][ 35 ][ 1 ][ 1 ] = 21; movesAllowed[Piece.BISHOP][ 35 ][ 1 ][ 2 ] = 14; movesAllowed[Piece.BISHOP][ 35 ][ 1 ][ 3 ] = 7; movesAllowed[Piece.BISHOP][ 35 ][ 2 ][ 0 ] = 42; movesAllowed[Piece.BISHOP][ 35 ][ 2 ][ 1 ] = 49; movesAllowed[Piece.BISHOP][ 35 ][ 2 ][ 2 ] = 56; movesAllowed[Piece.BISHOP][ 35 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.BISHOP][ 35 ][ 3 ][ 1 ] = 53; movesAllowed[Piece.BISHOP][ 35 ][ 3 ][ 2 ] = 62; movesAllowed[Piece.BISHOP][ 36 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 36 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 36 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 36 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 36 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 36 ][ 0 ][ 0 ] = 27; movesAllowed[Piece.BISHOP][ 36 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.BISHOP][ 36 ][ 0 ][ 2 ] = 9; movesAllowed[Piece.BISHOP][ 36 ][ 0 ][ 3 ] = 0; movesAllowed[Piece.BISHOP][ 36 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.BISHOP][ 36 ][ 1 ][ 1 ] = 22; movesAllowed[Piece.BISHOP][ 36 ][ 1 ][ 2 ] = 15; movesAllowed[Piece.BISHOP][ 36 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.BISHOP][ 36 ][ 2 ][ 1 ] = 50; movesAllowed[Piece.BISHOP][ 36 ][ 2 ][ 2 ] = 57; movesAllowed[Piece.BISHOP][ 36 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.BISHOP][ 36 ][ 3 ][ 1 ] = 54; movesAllowed[Piece.BISHOP][ 36 ][ 3 ][ 2 ] = 63; movesAllowed[Piece.BISHOP][ 37 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 37 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 37 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 37 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 37 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 37 ][ 0 ][ 0 ] = 28; movesAllowed[Piece.BISHOP][ 37 ][ 0 ][ 1 ] = 19; movesAllowed[Piece.BISHOP][ 37 ][ 0 ][ 2 ] = 10; movesAllowed[Piece.BISHOP][ 37 ][ 0 ][ 3 ] = 1; movesAllowed[Piece.BISHOP][ 37 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.BISHOP][ 37 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.BISHOP][ 37 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.BISHOP][ 37 ][ 2 ][ 1 ] = 51; movesAllowed[Piece.BISHOP][ 37 ][ 2 ][ 2 ] = 58; movesAllowed[Piece.BISHOP][ 37 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.BISHOP][ 37 ][ 3 ][ 1 ] = 55; movesAllowed[Piece.BISHOP][ 38 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 38 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 38 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 38 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 38 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 38 ][ 0 ][ 0 ] = 29; movesAllowed[Piece.BISHOP][ 38 ][ 0 ][ 1 ] = 20; movesAllowed[Piece.BISHOP][ 38 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.BISHOP][ 38 ][ 0 ][ 3 ] = 2; movesAllowed[Piece.BISHOP][ 38 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.BISHOP][ 38 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.BISHOP][ 38 ][ 2 ][ 1 ] = 52; movesAllowed[Piece.BISHOP][ 38 ][ 2 ][ 2 ] = 59; movesAllowed[Piece.BISHOP][ 38 ][ 3 ][ 0 ] = 47; movesAllowed[Piece.BISHOP][ 39 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 39 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 39 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 39 ][ 0 ][ 0 ] = 30; movesAllowed[Piece.BISHOP][ 39 ][ 0 ][ 1 ] = 21; movesAllowed[Piece.BISHOP][ 39 ][ 0 ][ 2 ] = 12; movesAllowed[Piece.BISHOP][ 39 ][ 0 ][ 3 ] = 3; movesAllowed[Piece.BISHOP][ 39 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.BISHOP][ 39 ][ 1 ][ 1 ] = 53; movesAllowed[Piece.BISHOP][ 39 ][ 1 ][ 2 ] = 60; movesAllowed[Piece.BISHOP][ 40 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 40 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 40 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 40 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.BISHOP][ 40 ][ 0 ][ 1 ] = 26; movesAllowed[Piece.BISHOP][ 40 ][ 0 ][ 2 ] = 19; movesAllowed[Piece.BISHOP][ 40 ][ 0 ][ 3 ] = 12; movesAllowed[Piece.BISHOP][ 40 ][ 0 ][ 4 ] = 5; movesAllowed[Piece.BISHOP][ 40 ][ 1 ][ 0 ] = 49; movesAllowed[Piece.BISHOP][ 40 ][ 1 ][ 1 ] = 58; movesAllowed[Piece.BISHOP][ 41 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 41 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 41 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 41 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 41 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 41 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.BISHOP][ 41 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.BISHOP][ 41 ][ 1 ][ 1 ] = 27; movesAllowed[Piece.BISHOP][ 41 ][ 1 ][ 2 ] = 20; movesAllowed[Piece.BISHOP][ 41 ][ 1 ][ 3 ] = 13; movesAllowed[Piece.BISHOP][ 41 ][ 1 ][ 4 ] = 6; movesAllowed[Piece.BISHOP][ 41 ][ 2 ][ 0 ] = 48; movesAllowed[Piece.BISHOP][ 41 ][ 3 ][ 0 ] = 50; movesAllowed[Piece.BISHOP][ 41 ][ 3 ][ 1 ] = 59; movesAllowed[Piece.BISHOP][ 42 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 42 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 42 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 42 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 42 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 42 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.BISHOP][ 42 ][ 0 ][ 1 ] = 24; movesAllowed[Piece.BISHOP][ 42 ][ 1 ][ 0 ] = 35; movesAllowed[Piece.BISHOP][ 42 ][ 1 ][ 1 ] = 28; movesAllowed[Piece.BISHOP][ 42 ][ 1 ][ 2 ] = 21; movesAllowed[Piece.BISHOP][ 42 ][ 1 ][ 3 ] = 14; movesAllowed[Piece.BISHOP][ 42 ][ 1 ][ 4 ] = 7; movesAllowed[Piece.BISHOP][ 42 ][ 2 ][ 0 ] = 49; movesAllowed[Piece.BISHOP][ 42 ][ 2 ][ 1 ] = 56; movesAllowed[Piece.BISHOP][ 42 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.BISHOP][ 42 ][ 3 ][ 1 ] = 60; movesAllowed[Piece.BISHOP][ 43 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 43 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 43 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 43 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 43 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 43 ][ 0 ][ 0 ] = 34; movesAllowed[Piece.BISHOP][ 43 ][ 0 ][ 1 ] = 25; movesAllowed[Piece.BISHOP][ 43 ][ 0 ][ 2 ] = 16; movesAllowed[Piece.BISHOP][ 43 ][ 1 ][ 0 ] = 36; movesAllowed[Piece.BISHOP][ 43 ][ 1 ][ 1 ] = 29; movesAllowed[Piece.BISHOP][ 43 ][ 1 ][ 2 ] = 22; movesAllowed[Piece.BISHOP][ 43 ][ 1 ][ 3 ] = 15; movesAllowed[Piece.BISHOP][ 43 ][ 2 ][ 0 ] = 50; movesAllowed[Piece.BISHOP][ 43 ][ 2 ][ 1 ] = 57; movesAllowed[Piece.BISHOP][ 43 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.BISHOP][ 43 ][ 3 ][ 1 ] = 61; movesAllowed[Piece.BISHOP][ 44 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 44 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 44 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 44 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 44 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 44 ][ 0 ][ 0 ] = 35; movesAllowed[Piece.BISHOP][ 44 ][ 0 ][ 1 ] = 26; movesAllowed[Piece.BISHOP][ 44 ][ 0 ][ 2 ] = 17; movesAllowed[Piece.BISHOP][ 44 ][ 0 ][ 3 ] = 8; movesAllowed[Piece.BISHOP][ 44 ][ 1 ][ 0 ] = 37; movesAllowed[Piece.BISHOP][ 44 ][ 1 ][ 1 ] = 30; movesAllowed[Piece.BISHOP][ 44 ][ 1 ][ 2 ] = 23; movesAllowed[Piece.BISHOP][ 44 ][ 2 ][ 0 ] = 51; movesAllowed[Piece.BISHOP][ 44 ][ 2 ][ 1 ] = 58; movesAllowed[Piece.BISHOP][ 44 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.BISHOP][ 44 ][ 3 ][ 1 ] = 62; movesAllowed[Piece.BISHOP][ 45 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 45 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 45 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 45 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 45 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 45 ][ 0 ][ 0 ] = 36; movesAllowed[Piece.BISHOP][ 45 ][ 0 ][ 1 ] = 27; movesAllowed[Piece.BISHOP][ 45 ][ 0 ][ 2 ] = 18; movesAllowed[Piece.BISHOP][ 45 ][ 0 ][ 3 ] = 9; movesAllowed[Piece.BISHOP][ 45 ][ 0 ][ 4 ] = 0; movesAllowed[Piece.BISHOP][ 45 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.BISHOP][ 45 ][ 1 ][ 1 ] = 31; movesAllowed[Piece.BISHOP][ 45 ][ 2 ][ 0 ] = 52; movesAllowed[Piece.BISHOP][ 45 ][ 2 ][ 1 ] = 59; movesAllowed[Piece.BISHOP][ 45 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.BISHOP][ 45 ][ 3 ][ 1 ] = 63; movesAllowed[Piece.BISHOP][ 46 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 46 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 46 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 46 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 46 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 46 ][ 0 ][ 0 ] = 37; movesAllowed[Piece.BISHOP][ 46 ][ 0 ][ 1 ] = 28; movesAllowed[Piece.BISHOP][ 46 ][ 0 ][ 2 ] = 19; movesAllowed[Piece.BISHOP][ 46 ][ 0 ][ 3 ] = 10; movesAllowed[Piece.BISHOP][ 46 ][ 0 ][ 4 ] = 1; movesAllowed[Piece.BISHOP][ 46 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.BISHOP][ 46 ][ 2 ][ 0 ] = 53; movesAllowed[Piece.BISHOP][ 46 ][ 2 ][ 1 ] = 60; movesAllowed[Piece.BISHOP][ 46 ][ 3 ][ 0 ] = 55; movesAllowed[Piece.BISHOP][ 47 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 47 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 47 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 47 ][ 0 ][ 0 ] = 38; movesAllowed[Piece.BISHOP][ 47 ][ 0 ][ 1 ] = 29; movesAllowed[Piece.BISHOP][ 47 ][ 0 ][ 2 ] = 20; movesAllowed[Piece.BISHOP][ 47 ][ 0 ][ 3 ] = 11; movesAllowed[Piece.BISHOP][ 47 ][ 0 ][ 4 ] = 2; movesAllowed[Piece.BISHOP][ 47 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.BISHOP][ 47 ][ 1 ][ 1 ] = 61; movesAllowed[Piece.BISHOP][ 48 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 48 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 48 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 3 ] = 20; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 4 ] = 13; movesAllowed[Piece.BISHOP][ 48 ][ 0 ][ 5 ] = 6; movesAllowed[Piece.BISHOP][ 48 ][ 1 ][ 0 ] = 57; movesAllowed[Piece.BISHOP][ 49 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 49 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 49 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 49 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 49 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 49 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 1 ] = 35; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 2 ] = 28; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 3 ] = 21; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 4 ] = 14; movesAllowed[Piece.BISHOP][ 49 ][ 1 ][ 5 ] = 7; movesAllowed[Piece.BISHOP][ 49 ][ 2 ][ 0 ] = 56; movesAllowed[Piece.BISHOP][ 49 ][ 3 ][ 0 ] = 58; movesAllowed[Piece.BISHOP][ 50 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 50 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 50 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 50 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 50 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 50 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.BISHOP][ 50 ][ 0 ][ 1 ] = 32; movesAllowed[Piece.BISHOP][ 50 ][ 1 ][ 0 ] = 43; movesAllowed[Piece.BISHOP][ 50 ][ 1 ][ 1 ] = 36; movesAllowed[Piece.BISHOP][ 50 ][ 1 ][ 2 ] = 29; movesAllowed[Piece.BISHOP][ 50 ][ 1 ][ 3 ] = 22; movesAllowed[Piece.BISHOP][ 50 ][ 1 ][ 4 ] = 15; movesAllowed[Piece.BISHOP][ 50 ][ 2 ][ 0 ] = 57; movesAllowed[Piece.BISHOP][ 50 ][ 3 ][ 0 ] = 59; movesAllowed[Piece.BISHOP][ 51 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 51 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 51 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 51 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 51 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 51 ][ 0 ][ 0 ] = 42; movesAllowed[Piece.BISHOP][ 51 ][ 0 ][ 1 ] = 33; movesAllowed[Piece.BISHOP][ 51 ][ 0 ][ 2 ] = 24; movesAllowed[Piece.BISHOP][ 51 ][ 1 ][ 0 ] = 44; movesAllowed[Piece.BISHOP][ 51 ][ 1 ][ 1 ] = 37; movesAllowed[Piece.BISHOP][ 51 ][ 1 ][ 2 ] = 30; movesAllowed[Piece.BISHOP][ 51 ][ 1 ][ 3 ] = 23; movesAllowed[Piece.BISHOP][ 51 ][ 2 ][ 0 ] = 58; movesAllowed[Piece.BISHOP][ 51 ][ 3 ][ 0 ] = 60; movesAllowed[Piece.BISHOP][ 52 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 52 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 52 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 52 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 52 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 52 ][ 0 ][ 0 ] = 43; movesAllowed[Piece.BISHOP][ 52 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.BISHOP][ 52 ][ 0 ][ 2 ] = 25; movesAllowed[Piece.BISHOP][ 52 ][ 0 ][ 3 ] = 16; movesAllowed[Piece.BISHOP][ 52 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.BISHOP][ 52 ][ 1 ][ 1 ] = 38; movesAllowed[Piece.BISHOP][ 52 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.BISHOP][ 52 ][ 2 ][ 0 ] = 59; movesAllowed[Piece.BISHOP][ 52 ][ 3 ][ 0 ] = 61; movesAllowed[Piece.BISHOP][ 53 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 53 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 53 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 53 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 53 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 53 ][ 0 ][ 0 ] = 44; movesAllowed[Piece.BISHOP][ 53 ][ 0 ][ 1 ] = 35; movesAllowed[Piece.BISHOP][ 53 ][ 0 ][ 2 ] = 26; movesAllowed[Piece.BISHOP][ 53 ][ 0 ][ 3 ] = 17; movesAllowed[Piece.BISHOP][ 53 ][ 0 ][ 4 ] = 8; movesAllowed[Piece.BISHOP][ 53 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.BISHOP][ 53 ][ 1 ][ 1 ] = 39; movesAllowed[Piece.BISHOP][ 53 ][ 2 ][ 0 ] = 60; movesAllowed[Piece.BISHOP][ 53 ][ 3 ][ 0 ] = 62; movesAllowed[Piece.BISHOP][ 54 ] = new int[ 4 ][]; movesAllowed[Piece.BISHOP][ 54 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 54 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 54 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 54 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 0 ] = 45; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 1 ] = 36; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 3 ] = 18; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 4 ] = 9; movesAllowed[Piece.BISHOP][ 54 ][ 0 ][ 5 ] = 0; movesAllowed[Piece.BISHOP][ 54 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.BISHOP][ 54 ][ 2 ][ 0 ] = 61; movesAllowed[Piece.BISHOP][ 54 ][ 3 ][ 0 ] = 63; movesAllowed[Piece.BISHOP][ 55 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 55 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 55 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 0 ] = 46; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 1 ] = 37; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 2 ] = 28; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 3 ] = 19; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 4 ] = 10; movesAllowed[Piece.BISHOP][ 55 ][ 0 ][ 5 ] = 1; movesAllowed[Piece.BISHOP][ 55 ][ 1 ][ 0 ] = 62; movesAllowed[Piece.BISHOP][ 56 ] = new int[ 1 ][ 7 ]; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 3 ] = 28; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 4 ] = 21; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 5 ] = 14; movesAllowed[Piece.BISHOP][ 56 ][ 0 ][ 6 ] = 7; movesAllowed[Piece.BISHOP][ 57 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 57 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 57 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 57 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 0 ] = 50; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 1 ] = 43; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 2 ] = 36; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 3 ] = 29; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 4 ] = 22; movesAllowed[Piece.BISHOP][ 57 ][ 1 ][ 5 ] = 15; movesAllowed[Piece.BISHOP][ 58 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 58 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 58 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 58 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.BISHOP][ 58 ][ 0 ][ 1 ] = 40; movesAllowed[Piece.BISHOP][ 58 ][ 1 ][ 0 ] = 51; movesAllowed[Piece.BISHOP][ 58 ][ 1 ][ 1 ] = 44; movesAllowed[Piece.BISHOP][ 58 ][ 1 ][ 2 ] = 37; movesAllowed[Piece.BISHOP][ 58 ][ 1 ][ 3 ] = 30; movesAllowed[Piece.BISHOP][ 58 ][ 1 ][ 4 ] = 23; movesAllowed[Piece.BISHOP][ 59 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 59 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 59 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 59 ][ 0 ][ 0 ] = 50; movesAllowed[Piece.BISHOP][ 59 ][ 0 ][ 1 ] = 41; movesAllowed[Piece.BISHOP][ 59 ][ 0 ][ 2 ] = 32; movesAllowed[Piece.BISHOP][ 59 ][ 1 ][ 0 ] = 52; movesAllowed[Piece.BISHOP][ 59 ][ 1 ][ 1 ] = 45; movesAllowed[Piece.BISHOP][ 59 ][ 1 ][ 2 ] = 38; movesAllowed[Piece.BISHOP][ 59 ][ 1 ][ 3 ] = 31; movesAllowed[Piece.BISHOP][ 60 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 60 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.BISHOP][ 60 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.BISHOP][ 60 ][ 0 ][ 0 ] = 51; movesAllowed[Piece.BISHOP][ 60 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.BISHOP][ 60 ][ 0 ][ 2 ] = 33; movesAllowed[Piece.BISHOP][ 60 ][ 0 ][ 3 ] = 24; movesAllowed[Piece.BISHOP][ 60 ][ 1 ][ 0 ] = 53; movesAllowed[Piece.BISHOP][ 60 ][ 1 ][ 1 ] = 46; movesAllowed[Piece.BISHOP][ 60 ][ 1 ][ 2 ] = 39; movesAllowed[Piece.BISHOP][ 61 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 61 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.BISHOP][ 61 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.BISHOP][ 61 ][ 0 ][ 0 ] = 52; movesAllowed[Piece.BISHOP][ 61 ][ 0 ][ 1 ] = 43; movesAllowed[Piece.BISHOP][ 61 ][ 0 ][ 2 ] = 34; movesAllowed[Piece.BISHOP][ 61 ][ 0 ][ 3 ] = 25; movesAllowed[Piece.BISHOP][ 61 ][ 0 ][ 4 ] = 16; movesAllowed[Piece.BISHOP][ 61 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.BISHOP][ 61 ][ 1 ][ 1 ] = 47; movesAllowed[Piece.BISHOP][ 62 ] = new int[ 2 ][]; movesAllowed[Piece.BISHOP][ 62 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.BISHOP][ 62 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 0 ] = 53; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 1 ] = 44; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 3 ] = 26; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 4 ] = 17; movesAllowed[Piece.BISHOP][ 62 ][ 0 ][ 5 ] = 8; movesAllowed[Piece.BISHOP][ 62 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.BISHOP][ 63 ] = new int[ 1 ][ 7 ]; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 0 ] = 54; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 1 ] = 45; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 2 ] = 36; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 3 ] = 27; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 4 ] = 18; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 5 ] = 9; movesAllowed[Piece.BISHOP][ 63 ][ 0 ][ 6 ] = 0; /*======* * ROOK * *======*/ movesAllowed[Piece.ROOK] = new int[ 64 ][][]; movesAllowed[Piece.ROOK][ 0 ] = new int[ 2 ][]; movesAllowed[Piece.ROOK][ 0 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 0 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 3 ] = 4; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 4 ] = 5; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 5 ] = 6; movesAllowed[Piece.ROOK][ 0 ][ 0 ][ 6 ] = 7; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 0 ] = 8; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 1 ] = 16; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 2 ] = 24; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 3 ] = 32; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 4 ] = 40; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 5 ] = 48; movesAllowed[Piece.ROOK][ 0 ][ 1 ][ 6 ] = 56; movesAllowed[Piece.ROOK][ 1 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 1 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 1 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 1 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 1 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 1 ] = 3; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 2 ] = 4; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 3 ] = 5; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 4 ] = 6; movesAllowed[Piece.ROOK][ 1 ][ 1 ][ 5 ] = 7; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 1 ] = 17; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 2 ] = 25; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 3 ] = 33; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 4 ] = 41; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 5 ] = 49; movesAllowed[Piece.ROOK][ 1 ][ 2 ][ 6 ] = 57; movesAllowed[Piece.ROOK][ 2 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 2 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 2 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 2 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 2 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.ROOK][ 2 ][ 0 ][ 1 ] = 0; movesAllowed[Piece.ROOK][ 2 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.ROOK][ 2 ][ 1 ][ 1 ] = 4; movesAllowed[Piece.ROOK][ 2 ][ 1 ][ 2 ] = 5; movesAllowed[Piece.ROOK][ 2 ][ 1 ][ 3 ] = 6; movesAllowed[Piece.ROOK][ 2 ][ 1 ][ 4 ] = 7; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 2 ] = 26; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 3 ] = 34; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 4 ] = 42; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 5 ] = 50; movesAllowed[Piece.ROOK][ 2 ][ 2 ][ 6 ] = 58; movesAllowed[Piece.ROOK][ 3 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 3 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 3 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 3 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 3 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.ROOK][ 3 ][ 0 ][ 1 ] = 1; movesAllowed[Piece.ROOK][ 3 ][ 0 ][ 2 ] = 0; movesAllowed[Piece.ROOK][ 3 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.ROOK][ 3 ][ 1 ][ 1 ] = 5; movesAllowed[Piece.ROOK][ 3 ][ 1 ][ 2 ] = 6; movesAllowed[Piece.ROOK][ 3 ][ 1 ][ 3 ] = 7; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 1 ] = 19; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 3 ] = 35; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 4 ] = 43; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 5 ] = 51; movesAllowed[Piece.ROOK][ 3 ][ 2 ][ 6 ] = 59; movesAllowed[Piece.ROOK][ 4 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 4 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 4 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 4 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 4 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.ROOK][ 4 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.ROOK][ 4 ][ 0 ][ 2 ] = 1; movesAllowed[Piece.ROOK][ 4 ][ 0 ][ 3 ] = 0; movesAllowed[Piece.ROOK][ 4 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.ROOK][ 4 ][ 1 ][ 1 ] = 6; movesAllowed[Piece.ROOK][ 4 ][ 1 ][ 2 ] = 7; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 1 ] = 20; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 2 ] = 28; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 3 ] = 36; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 4 ] = 44; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 5 ] = 52; movesAllowed[Piece.ROOK][ 4 ][ 2 ][ 6 ] = 60; movesAllowed[Piece.ROOK][ 5 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 5 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 5 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 5 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 5 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.ROOK][ 5 ][ 0 ][ 1 ] = 3; movesAllowed[Piece.ROOK][ 5 ][ 0 ][ 2 ] = 2; movesAllowed[Piece.ROOK][ 5 ][ 0 ][ 3 ] = 1; movesAllowed[Piece.ROOK][ 5 ][ 0 ][ 4 ] = 0; movesAllowed[Piece.ROOK][ 5 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.ROOK][ 5 ][ 1 ][ 1 ] = 7; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 1 ] = 21; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 2 ] = 29; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 3 ] = 37; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 4 ] = 45; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 5 ] = 53; movesAllowed[Piece.ROOK][ 5 ][ 2 ][ 6 ] = 61; movesAllowed[Piece.ROOK][ 6 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 6 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 6 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 6 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 1 ] = 4; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 3 ] = 2; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 4 ] = 1; movesAllowed[Piece.ROOK][ 6 ][ 0 ][ 5 ] = 0; movesAllowed[Piece.ROOK][ 6 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 1 ] = 22; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 2 ] = 30; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 3 ] = 38; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 4 ] = 46; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 5 ] = 54; movesAllowed[Piece.ROOK][ 6 ][ 2 ][ 6 ] = 62; movesAllowed[Piece.ROOK][ 7 ] = new int[ 2 ][]; movesAllowed[Piece.ROOK][ 7 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 7 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 1 ] = 5; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 2 ] = 4; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 3 ] = 3; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 4 ] = 2; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 5 ] = 1; movesAllowed[Piece.ROOK][ 7 ][ 0 ][ 6 ] = 0; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 3 ] = 39; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 4 ] = 47; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 5 ] = 55; movesAllowed[Piece.ROOK][ 7 ][ 1 ][ 6 ] = 63; movesAllowed[Piece.ROOK][ 8 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 8 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 8 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 8 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 3 ] = 12; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 4 ] = 13; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 5 ] = 14; movesAllowed[Piece.ROOK][ 8 ][ 0 ][ 6 ] = 15; movesAllowed[Piece.ROOK][ 8 ][ 1 ][ 0 ] = 0; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 0 ] = 16; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 1 ] = 24; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 2 ] = 32; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 3 ] = 40; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 4 ] = 48; movesAllowed[Piece.ROOK][ 8 ][ 2 ][ 5 ] = 56; movesAllowed[Piece.ROOK][ 9 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 9 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 9 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 9 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 9 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 9 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 1 ] = 11; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 2 ] = 12; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 3 ] = 13; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 4 ] = 14; movesAllowed[Piece.ROOK][ 9 ][ 1 ][ 5 ] = 15; movesAllowed[Piece.ROOK][ 9 ][ 2 ][ 0 ] = 1; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 0 ] = 17; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 1 ] = 25; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 2 ] = 33; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 3 ] = 41; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 4 ] = 49; movesAllowed[Piece.ROOK][ 9 ][ 3 ][ 5 ] = 57; movesAllowed[Piece.ROOK][ 10 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 10 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 10 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 10 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 10 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 10 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.ROOK][ 10 ][ 0 ][ 1 ] = 8; movesAllowed[Piece.ROOK][ 10 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.ROOK][ 10 ][ 1 ][ 1 ] = 12; movesAllowed[Piece.ROOK][ 10 ][ 1 ][ 2 ] = 13; movesAllowed[Piece.ROOK][ 10 ][ 1 ][ 3 ] = 14; movesAllowed[Piece.ROOK][ 10 ][ 1 ][ 4 ] = 15; movesAllowed[Piece.ROOK][ 10 ][ 2 ][ 0 ] = 2; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 0 ] = 18; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 1 ] = 26; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 2 ] = 34; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 3 ] = 42; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 4 ] = 50; movesAllowed[Piece.ROOK][ 10 ][ 3 ][ 5 ] = 58; movesAllowed[Piece.ROOK][ 11 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 11 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 11 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 11 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 11 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 11 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.ROOK][ 11 ][ 0 ][ 1 ] = 9; movesAllowed[Piece.ROOK][ 11 ][ 0 ][ 2 ] = 8; movesAllowed[Piece.ROOK][ 11 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.ROOK][ 11 ][ 1 ][ 1 ] = 13; movesAllowed[Piece.ROOK][ 11 ][ 1 ][ 2 ] = 14; movesAllowed[Piece.ROOK][ 11 ][ 1 ][ 3 ] = 15; movesAllowed[Piece.ROOK][ 11 ][ 2 ][ 0 ] = 3; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 1 ] = 27; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 2 ] = 35; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 3 ] = 43; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 4 ] = 51; movesAllowed[Piece.ROOK][ 11 ][ 3 ][ 5 ] = 59; movesAllowed[Piece.ROOK][ 12 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 12 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 12 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 12 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 12 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 12 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.ROOK][ 12 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.ROOK][ 12 ][ 0 ][ 2 ] = 9; movesAllowed[Piece.ROOK][ 12 ][ 0 ][ 3 ] = 8; movesAllowed[Piece.ROOK][ 12 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.ROOK][ 12 ][ 1 ][ 1 ] = 14; movesAllowed[Piece.ROOK][ 12 ][ 1 ][ 2 ] = 15; movesAllowed[Piece.ROOK][ 12 ][ 2 ][ 0 ] = 4; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 1 ] = 28; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 2 ] = 36; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 3 ] = 44; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 4 ] = 52; movesAllowed[Piece.ROOK][ 12 ][ 3 ][ 5 ] = 60; movesAllowed[Piece.ROOK][ 13 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 13 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 13 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 13 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 13 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 13 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.ROOK][ 13 ][ 0 ][ 1 ] = 11; movesAllowed[Piece.ROOK][ 13 ][ 0 ][ 2 ] = 10; movesAllowed[Piece.ROOK][ 13 ][ 0 ][ 3 ] = 9; movesAllowed[Piece.ROOK][ 13 ][ 0 ][ 4 ] = 8; movesAllowed[Piece.ROOK][ 13 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.ROOK][ 13 ][ 1 ][ 1 ] = 15; movesAllowed[Piece.ROOK][ 13 ][ 2 ][ 0 ] = 5; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 0 ] = 21; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 1 ] = 29; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 2 ] = 37; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 3 ] = 45; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 4 ] = 53; movesAllowed[Piece.ROOK][ 13 ][ 3 ][ 5 ] = 61; movesAllowed[Piece.ROOK][ 14 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 14 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 14 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 14 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 14 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 1 ] = 12; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 3 ] = 10; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 4 ] = 9; movesAllowed[Piece.ROOK][ 14 ][ 0 ][ 5 ] = 8; movesAllowed[Piece.ROOK][ 14 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.ROOK][ 14 ][ 2 ][ 0 ] = 6; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 0 ] = 22; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 1 ] = 30; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 2 ] = 38; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 3 ] = 46; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 4 ] = 54; movesAllowed[Piece.ROOK][ 14 ][ 3 ][ 5 ] = 62; movesAllowed[Piece.ROOK][ 15 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 15 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 15 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 15 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 1 ] = 13; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 2 ] = 12; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 3 ] = 11; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 4 ] = 10; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 5 ] = 9; movesAllowed[Piece.ROOK][ 15 ][ 0 ][ 6 ] = 8; movesAllowed[Piece.ROOK][ 15 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 1 ] = 31; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 2 ] = 39; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 3 ] = 47; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 4 ] = 55; movesAllowed[Piece.ROOK][ 15 ][ 2 ][ 5 ] = 63; movesAllowed[Piece.ROOK][ 16 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 16 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 16 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 16 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 16 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.ROOK][ 16 ][ 0 ][ 1 ] = 0; movesAllowed[Piece.ROOK][ 16 ][ 1 ][ 0 ] = 24; movesAllowed[Piece.ROOK][ 16 ][ 1 ][ 1 ] = 32; movesAllowed[Piece.ROOK][ 16 ][ 1 ][ 2 ] = 40; movesAllowed[Piece.ROOK][ 16 ][ 1 ][ 3 ] = 48; movesAllowed[Piece.ROOK][ 16 ][ 1 ][ 4 ] = 56; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 2 ] = 19; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 3 ] = 20; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 4 ] = 21; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 5 ] = 22; movesAllowed[Piece.ROOK][ 16 ][ 2 ][ 6 ] = 23; movesAllowed[Piece.ROOK][ 17 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 17 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 17 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 17 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 17 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 17 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 1 ] = 19; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 2 ] = 20; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 3 ] = 21; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 4 ] = 22; movesAllowed[Piece.ROOK][ 17 ][ 1 ][ 5 ] = 23; movesAllowed[Piece.ROOK][ 17 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.ROOK][ 17 ][ 2 ][ 1 ] = 1; movesAllowed[Piece.ROOK][ 17 ][ 3 ][ 0 ] = 25; movesAllowed[Piece.ROOK][ 17 ][ 3 ][ 1 ] = 33; movesAllowed[Piece.ROOK][ 17 ][ 3 ][ 2 ] = 41; movesAllowed[Piece.ROOK][ 17 ][ 3 ][ 3 ] = 49; movesAllowed[Piece.ROOK][ 17 ][ 3 ][ 4 ] = 57; movesAllowed[Piece.ROOK][ 18 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 18 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 18 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 18 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 18 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 18 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.ROOK][ 18 ][ 0 ][ 1 ] = 16; movesAllowed[Piece.ROOK][ 18 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.ROOK][ 18 ][ 1 ][ 1 ] = 20; movesAllowed[Piece.ROOK][ 18 ][ 1 ][ 2 ] = 21; movesAllowed[Piece.ROOK][ 18 ][ 1 ][ 3 ] = 22; movesAllowed[Piece.ROOK][ 18 ][ 1 ][ 4 ] = 23; movesAllowed[Piece.ROOK][ 18 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.ROOK][ 18 ][ 2 ][ 1 ] = 2; movesAllowed[Piece.ROOK][ 18 ][ 3 ][ 0 ] = 26; movesAllowed[Piece.ROOK][ 18 ][ 3 ][ 1 ] = 34; movesAllowed[Piece.ROOK][ 18 ][ 3 ][ 2 ] = 42; movesAllowed[Piece.ROOK][ 18 ][ 3 ][ 3 ] = 50; movesAllowed[Piece.ROOK][ 18 ][ 3 ][ 4 ] = 58; movesAllowed[Piece.ROOK][ 19 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 19 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 19 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 19 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 19 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 19 ][ 0 ][ 0 ] = 18; movesAllowed[Piece.ROOK][ 19 ][ 0 ][ 1 ] = 17; movesAllowed[Piece.ROOK][ 19 ][ 0 ][ 2 ] = 16; movesAllowed[Piece.ROOK][ 19 ][ 1 ][ 0 ] = 20; movesAllowed[Piece.ROOK][ 19 ][ 1 ][ 1 ] = 21; movesAllowed[Piece.ROOK][ 19 ][ 1 ][ 2 ] = 22; movesAllowed[Piece.ROOK][ 19 ][ 1 ][ 3 ] = 23; movesAllowed[Piece.ROOK][ 19 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.ROOK][ 19 ][ 2 ][ 1 ] = 3; movesAllowed[Piece.ROOK][ 19 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.ROOK][ 19 ][ 3 ][ 1 ] = 35; movesAllowed[Piece.ROOK][ 19 ][ 3 ][ 2 ] = 43; movesAllowed[Piece.ROOK][ 19 ][ 3 ][ 3 ] = 51; movesAllowed[Piece.ROOK][ 19 ][ 3 ][ 4 ] = 59; movesAllowed[Piece.ROOK][ 20 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 20 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 20 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 20 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 20 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 20 ][ 0 ][ 0 ] = 19; movesAllowed[Piece.ROOK][ 20 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.ROOK][ 20 ][ 0 ][ 2 ] = 17; movesAllowed[Piece.ROOK][ 20 ][ 0 ][ 3 ] = 16; movesAllowed[Piece.ROOK][ 20 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.ROOK][ 20 ][ 1 ][ 1 ] = 22; movesAllowed[Piece.ROOK][ 20 ][ 1 ][ 2 ] = 23; movesAllowed[Piece.ROOK][ 20 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.ROOK][ 20 ][ 2 ][ 1 ] = 4; movesAllowed[Piece.ROOK][ 20 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.ROOK][ 20 ][ 3 ][ 1 ] = 36; movesAllowed[Piece.ROOK][ 20 ][ 3 ][ 2 ] = 44; movesAllowed[Piece.ROOK][ 20 ][ 3 ][ 3 ] = 52; movesAllowed[Piece.ROOK][ 20 ][ 3 ][ 4 ] = 60; movesAllowed[Piece.ROOK][ 21 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 21 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 21 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 21 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 21 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 21 ][ 0 ][ 0 ] = 20; movesAllowed[Piece.ROOK][ 21 ][ 0 ][ 1 ] = 19; movesAllowed[Piece.ROOK][ 21 ][ 0 ][ 2 ] = 18; movesAllowed[Piece.ROOK][ 21 ][ 0 ][ 3 ] = 17; movesAllowed[Piece.ROOK][ 21 ][ 0 ][ 4 ] = 16; movesAllowed[Piece.ROOK][ 21 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.ROOK][ 21 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.ROOK][ 21 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.ROOK][ 21 ][ 2 ][ 1 ] = 5; movesAllowed[Piece.ROOK][ 21 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.ROOK][ 21 ][ 3 ][ 1 ] = 37; movesAllowed[Piece.ROOK][ 21 ][ 3 ][ 2 ] = 45; movesAllowed[Piece.ROOK][ 21 ][ 3 ][ 3 ] = 53; movesAllowed[Piece.ROOK][ 21 ][ 3 ][ 4 ] = 61; movesAllowed[Piece.ROOK][ 22 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 22 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 22 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 22 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 22 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 0 ] = 21; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 1 ] = 20; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 2 ] = 19; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 3 ] = 18; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 4 ] = 17; movesAllowed[Piece.ROOK][ 22 ][ 0 ][ 5 ] = 16; movesAllowed[Piece.ROOK][ 22 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.ROOK][ 22 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.ROOK][ 22 ][ 2 ][ 1 ] = 6; movesAllowed[Piece.ROOK][ 22 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.ROOK][ 22 ][ 3 ][ 1 ] = 38; movesAllowed[Piece.ROOK][ 22 ][ 3 ][ 2 ] = 46; movesAllowed[Piece.ROOK][ 22 ][ 3 ][ 3 ] = 54; movesAllowed[Piece.ROOK][ 22 ][ 3 ][ 4 ] = 62; movesAllowed[Piece.ROOK][ 23 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 23 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 23 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 23 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 0 ] = 22; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 1 ] = 21; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 2 ] = 20; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 3 ] = 19; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 4 ] = 18; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 5 ] = 17; movesAllowed[Piece.ROOK][ 23 ][ 0 ][ 6 ] = 16; movesAllowed[Piece.ROOK][ 23 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.ROOK][ 23 ][ 1 ][ 1 ] = 7; movesAllowed[Piece.ROOK][ 23 ][ 2 ][ 0 ] = 31; movesAllowed[Piece.ROOK][ 23 ][ 2 ][ 1 ] = 39; movesAllowed[Piece.ROOK][ 23 ][ 2 ][ 2 ] = 47; movesAllowed[Piece.ROOK][ 23 ][ 2 ][ 3 ] = 55; movesAllowed[Piece.ROOK][ 23 ][ 2 ][ 4 ] = 63; movesAllowed[Piece.ROOK][ 24 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 24 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 24 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 24 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 24 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.ROOK][ 24 ][ 0 ][ 1 ] = 8; movesAllowed[Piece.ROOK][ 24 ][ 0 ][ 2 ] = 8; movesAllowed[Piece.ROOK][ 24 ][ 1 ][ 0 ] = 32; movesAllowed[Piece.ROOK][ 24 ][ 1 ][ 1 ] = 40; movesAllowed[Piece.ROOK][ 24 ][ 1 ][ 2 ] = 48; movesAllowed[Piece.ROOK][ 24 ][ 1 ][ 3 ] = 56; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 1 ] = 26; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 3 ] = 28; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 4 ] = 29; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 5 ] = 30; movesAllowed[Piece.ROOK][ 24 ][ 2 ][ 6 ] = 31; movesAllowed[Piece.ROOK][ 25 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 25 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 25 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 25 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 25 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 25 ][ 0 ][ 0 ] = 24; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 0 ] = 26; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 1 ] = 27; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 2 ] = 28; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 3 ] = 29; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 4 ] = 30; movesAllowed[Piece.ROOK][ 25 ][ 1 ][ 5 ] = 31; movesAllowed[Piece.ROOK][ 25 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.ROOK][ 25 ][ 2 ][ 1 ] = 9; movesAllowed[Piece.ROOK][ 25 ][ 2 ][ 2 ] = 1; movesAllowed[Piece.ROOK][ 25 ][ 3 ][ 0 ] = 33; movesAllowed[Piece.ROOK][ 25 ][ 3 ][ 1 ] = 41; movesAllowed[Piece.ROOK][ 25 ][ 3 ][ 2 ] = 49; movesAllowed[Piece.ROOK][ 25 ][ 3 ][ 3 ] = 57; movesAllowed[Piece.ROOK][ 26 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 26 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 26 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 26 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 26 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 26 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.ROOK][ 26 ][ 0 ][ 1 ] = 24; movesAllowed[Piece.ROOK][ 26 ][ 1 ][ 0 ] = 27; movesAllowed[Piece.ROOK][ 26 ][ 1 ][ 1 ] = 28; movesAllowed[Piece.ROOK][ 26 ][ 1 ][ 2 ] = 29; movesAllowed[Piece.ROOK][ 26 ][ 1 ][ 3 ] = 30; movesAllowed[Piece.ROOK][ 26 ][ 1 ][ 4 ] = 31; movesAllowed[Piece.ROOK][ 26 ][ 2 ][ 0 ] = 18; movesAllowed[Piece.ROOK][ 26 ][ 2 ][ 1 ] = 10; movesAllowed[Piece.ROOK][ 26 ][ 2 ][ 2 ] = 2; movesAllowed[Piece.ROOK][ 26 ][ 3 ][ 0 ] = 34; movesAllowed[Piece.ROOK][ 26 ][ 3 ][ 1 ] = 42; movesAllowed[Piece.ROOK][ 26 ][ 3 ][ 2 ] = 50; movesAllowed[Piece.ROOK][ 26 ][ 3 ][ 3 ] = 58; movesAllowed[Piece.ROOK][ 27 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 27 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 27 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 27 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 27 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 27 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.ROOK][ 27 ][ 0 ][ 1 ] = 25; movesAllowed[Piece.ROOK][ 27 ][ 0 ][ 2 ] = 24; movesAllowed[Piece.ROOK][ 27 ][ 1 ][ 0 ] = 28; movesAllowed[Piece.ROOK][ 27 ][ 1 ][ 1 ] = 29; movesAllowed[Piece.ROOK][ 27 ][ 1 ][ 2 ] = 30; movesAllowed[Piece.ROOK][ 27 ][ 1 ][ 3 ] = 31; movesAllowed[Piece.ROOK][ 27 ][ 2 ][ 0 ] = 19; movesAllowed[Piece.ROOK][ 27 ][ 2 ][ 1 ] = 11; movesAllowed[Piece.ROOK][ 27 ][ 2 ][ 2 ] = 3; movesAllowed[Piece.ROOK][ 27 ][ 3 ][ 0 ] = 35; movesAllowed[Piece.ROOK][ 27 ][ 3 ][ 1 ] = 43; movesAllowed[Piece.ROOK][ 27 ][ 3 ][ 2 ] = 51; movesAllowed[Piece.ROOK][ 27 ][ 3 ][ 3 ] = 59; movesAllowed[Piece.ROOK][ 28 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 28 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 28 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 28 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 28 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 28 ][ 0 ][ 0 ] = 27; movesAllowed[Piece.ROOK][ 28 ][ 0 ][ 1 ] = 26; movesAllowed[Piece.ROOK][ 28 ][ 0 ][ 2 ] = 25; movesAllowed[Piece.ROOK][ 28 ][ 0 ][ 3 ] = 24; movesAllowed[Piece.ROOK][ 28 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.ROOK][ 28 ][ 1 ][ 1 ] = 30; movesAllowed[Piece.ROOK][ 28 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.ROOK][ 28 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.ROOK][ 28 ][ 2 ][ 1 ] = 12; movesAllowed[Piece.ROOK][ 28 ][ 2 ][ 2 ] = 4; movesAllowed[Piece.ROOK][ 28 ][ 3 ][ 0 ] = 36; movesAllowed[Piece.ROOK][ 28 ][ 3 ][ 1 ] = 44; movesAllowed[Piece.ROOK][ 28 ][ 3 ][ 2 ] = 52; movesAllowed[Piece.ROOK][ 28 ][ 3 ][ 3 ] = 60; movesAllowed[Piece.ROOK][ 29 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 29 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 29 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 29 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 29 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 29 ][ 0 ][ 0 ] = 28; movesAllowed[Piece.ROOK][ 29 ][ 0 ][ 1 ] = 27; movesAllowed[Piece.ROOK][ 29 ][ 0 ][ 2 ] = 26; movesAllowed[Piece.ROOK][ 29 ][ 0 ][ 3 ] = 25; movesAllowed[Piece.ROOK][ 29 ][ 0 ][ 4 ] = 24; movesAllowed[Piece.ROOK][ 29 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.ROOK][ 29 ][ 1 ][ 1 ] = 31; movesAllowed[Piece.ROOK][ 29 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.ROOK][ 29 ][ 2 ][ 1 ] = 13; movesAllowed[Piece.ROOK][ 29 ][ 2 ][ 2 ] = 5; movesAllowed[Piece.ROOK][ 29 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.ROOK][ 29 ][ 3 ][ 1 ] = 45; movesAllowed[Piece.ROOK][ 29 ][ 3 ][ 2 ] = 53; movesAllowed[Piece.ROOK][ 29 ][ 3 ][ 3 ] = 61; movesAllowed[Piece.ROOK][ 30 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 30 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 30 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 30 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 30 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 0 ] = 29; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 1 ] = 28; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 3 ] = 26; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 4 ] = 25; movesAllowed[Piece.ROOK][ 30 ][ 0 ][ 5 ] = 24; movesAllowed[Piece.ROOK][ 30 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.ROOK][ 30 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.ROOK][ 30 ][ 2 ][ 1 ] = 14; movesAllowed[Piece.ROOK][ 30 ][ 2 ][ 2 ] = 6; movesAllowed[Piece.ROOK][ 30 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.ROOK][ 30 ][ 3 ][ 1 ] = 46; movesAllowed[Piece.ROOK][ 30 ][ 3 ][ 2 ] = 54; movesAllowed[Piece.ROOK][ 30 ][ 3 ][ 3 ] = 62; movesAllowed[Piece.ROOK][ 31 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 31 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 31 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 31 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 0 ] = 30; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 1 ] = 29; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 2 ] = 28; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 3 ] = 27; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 4 ] = 26; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 5 ] = 25; movesAllowed[Piece.ROOK][ 31 ][ 0 ][ 6 ] = 24; movesAllowed[Piece.ROOK][ 31 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.ROOK][ 31 ][ 1 ][ 1 ] = 15; movesAllowed[Piece.ROOK][ 31 ][ 1 ][ 2 ] = 7; movesAllowed[Piece.ROOK][ 31 ][ 2 ][ 0 ] = 39; movesAllowed[Piece.ROOK][ 31 ][ 2 ][ 1 ] = 47; movesAllowed[Piece.ROOK][ 31 ][ 2 ][ 2 ] = 55; movesAllowed[Piece.ROOK][ 31 ][ 2 ][ 3 ] = 63; movesAllowed[Piece.ROOK][ 32 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 32 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 32 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 32 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 3 ] = 36; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 4 ] = 37; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 5 ] = 38; movesAllowed[Piece.ROOK][ 32 ][ 0 ][ 6 ] = 39; movesAllowed[Piece.ROOK][ 32 ][ 1 ][ 0 ] = 40; movesAllowed[Piece.ROOK][ 32 ][ 1 ][ 1 ] = 48; movesAllowed[Piece.ROOK][ 32 ][ 1 ][ 2 ] = 56; movesAllowed[Piece.ROOK][ 32 ][ 2 ][ 0 ] = 24; movesAllowed[Piece.ROOK][ 32 ][ 2 ][ 1 ] = 16; movesAllowed[Piece.ROOK][ 32 ][ 2 ][ 2 ] = 8; movesAllowed[Piece.ROOK][ 32 ][ 2 ][ 3 ] = 0; movesAllowed[Piece.ROOK][ 33 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 33 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 33 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 33 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 33 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 33 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 1 ] = 35; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 2 ] = 36; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 3 ] = 37; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 4 ] = 38; movesAllowed[Piece.ROOK][ 33 ][ 1 ][ 5 ] = 39; movesAllowed[Piece.ROOK][ 33 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.ROOK][ 33 ][ 2 ][ 1 ] = 17; movesAllowed[Piece.ROOK][ 33 ][ 2 ][ 2 ] = 9; movesAllowed[Piece.ROOK][ 33 ][ 2 ][ 3 ] = 1; movesAllowed[Piece.ROOK][ 33 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.ROOK][ 33 ][ 3 ][ 1 ] = 49; movesAllowed[Piece.ROOK][ 33 ][ 3 ][ 2 ] = 57; movesAllowed[Piece.ROOK][ 34 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 34 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 34 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 34 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 34 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 34 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.ROOK][ 34 ][ 0 ][ 1 ] = 32; movesAllowed[Piece.ROOK][ 34 ][ 1 ][ 0 ] = 35; movesAllowed[Piece.ROOK][ 34 ][ 1 ][ 1 ] = 36; movesAllowed[Piece.ROOK][ 34 ][ 1 ][ 2 ] = 37; movesAllowed[Piece.ROOK][ 34 ][ 1 ][ 3 ] = 38; movesAllowed[Piece.ROOK][ 34 ][ 1 ][ 4 ] = 39; movesAllowed[Piece.ROOK][ 34 ][ 2 ][ 0 ] = 26; movesAllowed[Piece.ROOK][ 34 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.ROOK][ 34 ][ 2 ][ 2 ] = 10; movesAllowed[Piece.ROOK][ 34 ][ 2 ][ 3 ] = 2; movesAllowed[Piece.ROOK][ 34 ][ 3 ][ 0 ] = 42; movesAllowed[Piece.ROOK][ 34 ][ 3 ][ 1 ] = 50; movesAllowed[Piece.ROOK][ 34 ][ 3 ][ 2 ] = 58; movesAllowed[Piece.ROOK][ 35 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 35 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 35 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 35 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 35 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 35 ][ 0 ][ 0 ] = 34; movesAllowed[Piece.ROOK][ 35 ][ 0 ][ 1 ] = 33; movesAllowed[Piece.ROOK][ 35 ][ 0 ][ 2 ] = 32; movesAllowed[Piece.ROOK][ 35 ][ 1 ][ 0 ] = 36; movesAllowed[Piece.ROOK][ 35 ][ 1 ][ 1 ] = 37; movesAllowed[Piece.ROOK][ 35 ][ 1 ][ 2 ] = 38; movesAllowed[Piece.ROOK][ 35 ][ 1 ][ 3 ] = 39; movesAllowed[Piece.ROOK][ 35 ][ 2 ][ 0 ] = 27; movesAllowed[Piece.ROOK][ 35 ][ 2 ][ 1 ] = 19; movesAllowed[Piece.ROOK][ 35 ][ 2 ][ 2 ] = 11; movesAllowed[Piece.ROOK][ 35 ][ 2 ][ 3 ] = 3; movesAllowed[Piece.ROOK][ 35 ][ 3 ][ 0 ] = 43; movesAllowed[Piece.ROOK][ 35 ][ 3 ][ 1 ] = 51; movesAllowed[Piece.ROOK][ 35 ][ 3 ][ 2 ] = 59; movesAllowed[Piece.ROOK][ 36 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 36 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 36 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 36 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 36 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 36 ][ 0 ][ 0 ] = 35; movesAllowed[Piece.ROOK][ 36 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.ROOK][ 36 ][ 0 ][ 2 ] = 33; movesAllowed[Piece.ROOK][ 36 ][ 0 ][ 3 ] = 32; movesAllowed[Piece.ROOK][ 36 ][ 1 ][ 0 ] = 37; movesAllowed[Piece.ROOK][ 36 ][ 1 ][ 1 ] = 38; movesAllowed[Piece.ROOK][ 36 ][ 1 ][ 2 ] = 39; movesAllowed[Piece.ROOK][ 36 ][ 2 ][ 0 ] = 28; movesAllowed[Piece.ROOK][ 36 ][ 2 ][ 1 ] = 20; movesAllowed[Piece.ROOK][ 36 ][ 2 ][ 2 ] = 12; movesAllowed[Piece.ROOK][ 36 ][ 2 ][ 3 ] = 4; movesAllowed[Piece.ROOK][ 36 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.ROOK][ 36 ][ 3 ][ 1 ] = 52; movesAllowed[Piece.ROOK][ 36 ][ 3 ][ 2 ] = 60; movesAllowed[Piece.ROOK][ 37 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 37 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 37 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 37 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 37 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 37 ][ 0 ][ 0 ] = 36; movesAllowed[Piece.ROOK][ 37 ][ 0 ][ 1 ] = 35; movesAllowed[Piece.ROOK][ 37 ][ 0 ][ 2 ] = 34; movesAllowed[Piece.ROOK][ 37 ][ 0 ][ 3 ] = 33; movesAllowed[Piece.ROOK][ 37 ][ 0 ][ 4 ] = 32; movesAllowed[Piece.ROOK][ 37 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.ROOK][ 37 ][ 1 ][ 1 ] = 39; movesAllowed[Piece.ROOK][ 37 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.ROOK][ 37 ][ 2 ][ 1 ] = 21; movesAllowed[Piece.ROOK][ 37 ][ 2 ][ 2 ] = 13; movesAllowed[Piece.ROOK][ 37 ][ 2 ][ 3 ] = 5; movesAllowed[Piece.ROOK][ 37 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.ROOK][ 37 ][ 3 ][ 1 ] = 53; movesAllowed[Piece.ROOK][ 37 ][ 3 ][ 2 ] = 61; movesAllowed[Piece.ROOK][ 38 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 38 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 38 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 38 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 38 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 0 ] = 37; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 1 ] = 36; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 3 ] = 34; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 4 ] = 33; movesAllowed[Piece.ROOK][ 38 ][ 0 ][ 5 ] = 32; movesAllowed[Piece.ROOK][ 38 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.ROOK][ 38 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.ROOK][ 38 ][ 2 ][ 1 ] = 22; movesAllowed[Piece.ROOK][ 38 ][ 2 ][ 2 ] = 14; movesAllowed[Piece.ROOK][ 38 ][ 2 ][ 3 ] = 6; movesAllowed[Piece.ROOK][ 38 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.ROOK][ 38 ][ 3 ][ 1 ] = 54; movesAllowed[Piece.ROOK][ 38 ][ 3 ][ 2 ] = 62; movesAllowed[Piece.ROOK][ 39 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 39 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 39 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 39 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 0 ] = 38; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 1 ] = 37; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 2 ] = 36; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 3 ] = 35; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 4 ] = 34; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 5 ] = 33; movesAllowed[Piece.ROOK][ 39 ][ 0 ][ 6 ] = 32; movesAllowed[Piece.ROOK][ 39 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.ROOK][ 39 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.ROOK][ 39 ][ 1 ][ 2 ] = 15; movesAllowed[Piece.ROOK][ 39 ][ 1 ][ 3 ] = 7; movesAllowed[Piece.ROOK][ 39 ][ 2 ][ 0 ] = 47; movesAllowed[Piece.ROOK][ 39 ][ 2 ][ 1 ] = 55; movesAllowed[Piece.ROOK][ 39 ][ 2 ][ 2 ] = 63; movesAllowed[Piece.ROOK][ 40 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 40 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 40 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 40 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 2 ] = 43; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 3 ] = 44; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 4 ] = 45; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 5 ] = 46; movesAllowed[Piece.ROOK][ 40 ][ 0 ][ 6 ] = 47; movesAllowed[Piece.ROOK][ 40 ][ 1 ][ 0 ] = 32; movesAllowed[Piece.ROOK][ 40 ][ 1 ][ 1 ] = 24; movesAllowed[Piece.ROOK][ 40 ][ 1 ][ 2 ] = 16; movesAllowed[Piece.ROOK][ 40 ][ 1 ][ 3 ] = 8; movesAllowed[Piece.ROOK][ 40 ][ 1 ][ 4 ] = 0; movesAllowed[Piece.ROOK][ 40 ][ 2 ][ 0 ] = 48; movesAllowed[Piece.ROOK][ 40 ][ 2 ][ 1 ] = 56; movesAllowed[Piece.ROOK][ 41 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 41 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 41 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 41 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 41 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 41 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 1 ] = 43; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 2 ] = 44; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 3 ] = 45; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 4 ] = 46; movesAllowed[Piece.ROOK][ 41 ][ 1 ][ 5 ] = 47; movesAllowed[Piece.ROOK][ 41 ][ 2 ][ 0 ] = 33; movesAllowed[Piece.ROOK][ 41 ][ 2 ][ 1 ] = 25; movesAllowed[Piece.ROOK][ 41 ][ 2 ][ 2 ] = 17; movesAllowed[Piece.ROOK][ 41 ][ 2 ][ 3 ] = 9; movesAllowed[Piece.ROOK][ 41 ][ 2 ][ 4 ] = 1; movesAllowed[Piece.ROOK][ 41 ][ 3 ][ 0 ] = 49; movesAllowed[Piece.ROOK][ 41 ][ 3 ][ 1 ] = 57; movesAllowed[Piece.ROOK][ 42 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 42 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 42 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 42 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 42 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 42 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.ROOK][ 42 ][ 0 ][ 1 ] = 40; movesAllowed[Piece.ROOK][ 42 ][ 1 ][ 0 ] = 43; movesAllowed[Piece.ROOK][ 42 ][ 1 ][ 1 ] = 44; movesAllowed[Piece.ROOK][ 42 ][ 1 ][ 2 ] = 45; movesAllowed[Piece.ROOK][ 42 ][ 1 ][ 3 ] = 46; movesAllowed[Piece.ROOK][ 42 ][ 1 ][ 4 ] = 47; movesAllowed[Piece.ROOK][ 42 ][ 2 ][ 0 ] = 34; movesAllowed[Piece.ROOK][ 42 ][ 2 ][ 1 ] = 26; movesAllowed[Piece.ROOK][ 42 ][ 2 ][ 2 ] = 18; movesAllowed[Piece.ROOK][ 42 ][ 2 ][ 3 ] = 10; movesAllowed[Piece.ROOK][ 42 ][ 2 ][ 4 ] = 2; movesAllowed[Piece.ROOK][ 42 ][ 3 ][ 0 ] = 50; movesAllowed[Piece.ROOK][ 42 ][ 3 ][ 1 ] = 58; movesAllowed[Piece.ROOK][ 43 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 43 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 43 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 43 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 43 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 43 ][ 0 ][ 0 ] = 42; movesAllowed[Piece.ROOK][ 43 ][ 0 ][ 1 ] = 41; movesAllowed[Piece.ROOK][ 43 ][ 0 ][ 2 ] = 40; movesAllowed[Piece.ROOK][ 43 ][ 1 ][ 0 ] = 44; movesAllowed[Piece.ROOK][ 43 ][ 1 ][ 1 ] = 45; movesAllowed[Piece.ROOK][ 43 ][ 1 ][ 2 ] = 46; movesAllowed[Piece.ROOK][ 43 ][ 1 ][ 3 ] = 47; movesAllowed[Piece.ROOK][ 43 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.ROOK][ 43 ][ 2 ][ 1 ] = 27; movesAllowed[Piece.ROOK][ 43 ][ 2 ][ 2 ] = 19; movesAllowed[Piece.ROOK][ 43 ][ 2 ][ 3 ] = 11; movesAllowed[Piece.ROOK][ 43 ][ 2 ][ 4 ] = 3; movesAllowed[Piece.ROOK][ 43 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.ROOK][ 43 ][ 3 ][ 1 ] = 59; movesAllowed[Piece.ROOK][ 44 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 44 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 44 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 44 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 44 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 44 ][ 0 ][ 0 ] = 43; movesAllowed[Piece.ROOK][ 44 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.ROOK][ 44 ][ 0 ][ 2 ] = 41; movesAllowed[Piece.ROOK][ 44 ][ 0 ][ 3 ] = 40; movesAllowed[Piece.ROOK][ 44 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.ROOK][ 44 ][ 1 ][ 1 ] = 46; movesAllowed[Piece.ROOK][ 44 ][ 1 ][ 2 ] = 47; movesAllowed[Piece.ROOK][ 44 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.ROOK][ 44 ][ 2 ][ 1 ] = 28; movesAllowed[Piece.ROOK][ 44 ][ 2 ][ 2 ] = 20; movesAllowed[Piece.ROOK][ 44 ][ 2 ][ 3 ] = 12; movesAllowed[Piece.ROOK][ 44 ][ 2 ][ 4 ] = 4; movesAllowed[Piece.ROOK][ 44 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.ROOK][ 44 ][ 3 ][ 1 ] = 60; movesAllowed[Piece.ROOK][ 45 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 45 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 45 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 45 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 45 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 45 ][ 0 ][ 0 ] = 44; movesAllowed[Piece.ROOK][ 45 ][ 0 ][ 1 ] = 43; movesAllowed[Piece.ROOK][ 45 ][ 0 ][ 2 ] = 42; movesAllowed[Piece.ROOK][ 45 ][ 0 ][ 3 ] = 41; movesAllowed[Piece.ROOK][ 45 ][ 0 ][ 4 ] = 40; movesAllowed[Piece.ROOK][ 45 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.ROOK][ 45 ][ 1 ][ 1 ] = 47; movesAllowed[Piece.ROOK][ 45 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.ROOK][ 45 ][ 2 ][ 1 ] = 29; movesAllowed[Piece.ROOK][ 45 ][ 2 ][ 2 ] = 21; movesAllowed[Piece.ROOK][ 45 ][ 2 ][ 3 ] = 13; movesAllowed[Piece.ROOK][ 45 ][ 2 ][ 4 ] = 5; movesAllowed[Piece.ROOK][ 45 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.ROOK][ 45 ][ 3 ][ 1 ] = 61; movesAllowed[Piece.ROOK][ 46 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 46 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 46 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 46 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 46 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 0 ] = 45; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 1 ] = 44; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 2 ] = 43; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 3 ] = 42; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 4 ] = 41; movesAllowed[Piece.ROOK][ 46 ][ 0 ][ 5 ] = 40; movesAllowed[Piece.ROOK][ 46 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.ROOK][ 46 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.ROOK][ 46 ][ 2 ][ 1 ] = 30; movesAllowed[Piece.ROOK][ 46 ][ 2 ][ 2 ] = 22; movesAllowed[Piece.ROOK][ 46 ][ 2 ][ 3 ] = 14; movesAllowed[Piece.ROOK][ 46 ][ 2 ][ 4 ] = 6; movesAllowed[Piece.ROOK][ 46 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.ROOK][ 46 ][ 3 ][ 1 ] = 62; movesAllowed[Piece.ROOK][ 47 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 47 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 47 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 47 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 0 ] = 46; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 1 ] = 45; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 2 ] = 44; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 3 ] = 43; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 4 ] = 42; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 5 ] = 41; movesAllowed[Piece.ROOK][ 47 ][ 0 ][ 6 ] = 40; movesAllowed[Piece.ROOK][ 47 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.ROOK][ 47 ][ 1 ][ 1 ] = 31; movesAllowed[Piece.ROOK][ 47 ][ 1 ][ 2 ] = 23; movesAllowed[Piece.ROOK][ 47 ][ 1 ][ 3 ] = 15; movesAllowed[Piece.ROOK][ 47 ][ 1 ][ 4 ] = 7; movesAllowed[Piece.ROOK][ 47 ][ 2 ][ 0 ] = 55; movesAllowed[Piece.ROOK][ 47 ][ 2 ][ 1 ] = 63; movesAllowed[Piece.ROOK][ 48 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 48 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 48 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 48 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 1 ] = 50; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 2 ] = 51; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 3 ] = 52; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 4 ] = 53; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 5 ] = 54; movesAllowed[Piece.ROOK][ 48 ][ 0 ][ 6 ] = 55; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 0 ] = 40; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 1 ] = 32; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 2 ] = 24; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 3 ] = 16; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 4 ] = 8; movesAllowed[Piece.ROOK][ 48 ][ 1 ][ 5 ] = 0; movesAllowed[Piece.ROOK][ 48 ][ 2 ][ 0 ] = 56; movesAllowed[Piece.ROOK][ 49 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 49 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 49 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 49 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 49 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 49 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 0 ] = 50; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 1 ] = 51; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 2 ] = 52; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 3 ] = 53; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 4 ] = 54; movesAllowed[Piece.ROOK][ 49 ][ 1 ][ 5 ] = 55; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 0 ] = 41; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 1 ] = 33; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 2 ] = 25; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 3 ] = 17; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 4 ] = 9; movesAllowed[Piece.ROOK][ 49 ][ 2 ][ 5 ] = 1; movesAllowed[Piece.ROOK][ 49 ][ 3 ][ 0 ] = 57; movesAllowed[Piece.ROOK][ 50 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 50 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 50 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 50 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 50 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 50 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.ROOK][ 50 ][ 0 ][ 1 ] = 48; movesAllowed[Piece.ROOK][ 50 ][ 1 ][ 0 ] = 51; movesAllowed[Piece.ROOK][ 50 ][ 1 ][ 1 ] = 52; movesAllowed[Piece.ROOK][ 50 ][ 1 ][ 2 ] = 53; movesAllowed[Piece.ROOK][ 50 ][ 1 ][ 3 ] = 54; movesAllowed[Piece.ROOK][ 50 ][ 1 ][ 4 ] = 55; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 0 ] = 42; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 1 ] = 34; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 2 ] = 26; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 3 ] = 18; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 4 ] = 10; movesAllowed[Piece.ROOK][ 50 ][ 2 ][ 5 ] = 2; movesAllowed[Piece.ROOK][ 50 ][ 3 ][ 0 ] = 58; movesAllowed[Piece.ROOK][ 51 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 51 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 51 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 51 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 51 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 51 ][ 0 ][ 0 ] = 50; movesAllowed[Piece.ROOK][ 51 ][ 0 ][ 1 ] = 49; movesAllowed[Piece.ROOK][ 51 ][ 0 ][ 2 ] = 48; movesAllowed[Piece.ROOK][ 51 ][ 1 ][ 0 ] = 52; movesAllowed[Piece.ROOK][ 51 ][ 1 ][ 1 ] = 53; movesAllowed[Piece.ROOK][ 51 ][ 1 ][ 2 ] = 54; movesAllowed[Piece.ROOK][ 51 ][ 1 ][ 3 ] = 55; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 1 ] = 35; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 3 ] = 19; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 4 ] = 11; movesAllowed[Piece.ROOK][ 51 ][ 2 ][ 5 ] = 3; movesAllowed[Piece.ROOK][ 51 ][ 3 ][ 0 ] = 59; movesAllowed[Piece.ROOK][ 52 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 52 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 52 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 52 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 52 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 52 ][ 0 ][ 0 ] = 51; movesAllowed[Piece.ROOK][ 52 ][ 0 ][ 1 ] = 50; movesAllowed[Piece.ROOK][ 52 ][ 0 ][ 2 ] = 49; movesAllowed[Piece.ROOK][ 52 ][ 0 ][ 3 ] = 48; movesAllowed[Piece.ROOK][ 52 ][ 1 ][ 0 ] = 53; movesAllowed[Piece.ROOK][ 52 ][ 1 ][ 1 ] = 54; movesAllowed[Piece.ROOK][ 52 ][ 1 ][ 2 ] = 55; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 1 ] = 36; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 2 ] = 28; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 3 ] = 20; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 4 ] = 12; movesAllowed[Piece.ROOK][ 52 ][ 2 ][ 5 ] = 4; movesAllowed[Piece.ROOK][ 52 ][ 3 ][ 0 ] = 60; movesAllowed[Piece.ROOK][ 53 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 53 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 53 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 53 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 53 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 53 ][ 0 ][ 0 ] = 52; movesAllowed[Piece.ROOK][ 53 ][ 0 ][ 1 ] = 51; movesAllowed[Piece.ROOK][ 53 ][ 0 ][ 2 ] = 50; movesAllowed[Piece.ROOK][ 53 ][ 0 ][ 3 ] = 49; movesAllowed[Piece.ROOK][ 53 ][ 0 ][ 4 ] = 48; movesAllowed[Piece.ROOK][ 53 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.ROOK][ 53 ][ 1 ][ 1 ] = 55; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 1 ] = 37; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 2 ] = 29; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 3 ] = 21; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 4 ] = 13; movesAllowed[Piece.ROOK][ 53 ][ 2 ][ 5 ] = 5; movesAllowed[Piece.ROOK][ 53 ][ 3 ][ 0 ] = 61; movesAllowed[Piece.ROOK][ 54 ] = new int[ 4 ][]; movesAllowed[Piece.ROOK][ 54 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 54 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 54 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 54 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 0 ] = 53; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 1 ] = 52; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 2 ] = 51; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 3 ] = 50; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 4 ] = 49; movesAllowed[Piece.ROOK][ 54 ][ 0 ][ 5 ] = 48; movesAllowed[Piece.ROOK][ 54 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 0 ] = 46; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 1 ] = 38; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 2 ] = 30; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 3 ] = 22; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 4 ] = 14; movesAllowed[Piece.ROOK][ 54 ][ 2 ][ 5 ] = 6; movesAllowed[Piece.ROOK][ 54 ][ 3 ][ 0 ] = 62; movesAllowed[Piece.ROOK][ 55 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 55 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 55 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 55 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 0 ] = 54; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 1 ] = 53; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 2 ] = 52; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 3 ] = 51; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 4 ] = 50; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 5 ] = 49; movesAllowed[Piece.ROOK][ 55 ][ 0 ][ 6 ] = 48; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 1 ] = 39; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 3 ] = 23; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 4 ] = 15; movesAllowed[Piece.ROOK][ 55 ][ 1 ][ 5 ] = 7; movesAllowed[Piece.ROOK][ 55 ][ 2 ][ 0 ] = 63; movesAllowed[Piece.ROOK][ 56 ] = new int[ 2 ][]; movesAllowed[Piece.ROOK][ 56 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 56 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 0 ] = 57; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 1 ] = 58; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 2 ] = 59; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 3 ] = 60; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 4 ] = 61; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 5 ] = 62; movesAllowed[Piece.ROOK][ 56 ][ 0 ][ 6 ] = 63; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 0 ] = 48; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 1 ] = 40; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 2 ] = 32; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 3 ] = 24; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 4 ] = 16; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 5 ] = 8; movesAllowed[Piece.ROOK][ 56 ][ 1 ][ 6 ] = 0; movesAllowed[Piece.ROOK][ 57 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 57 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 57 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 57 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 57 ][ 0 ][ 0 ] = 56; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 0 ] = 58; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 1 ] = 59; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 2 ] = 60; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 3 ] = 61; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 4 ] = 62; movesAllowed[Piece.ROOK][ 57 ][ 1 ][ 5 ] = 63; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 0 ] = 49; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 1 ] = 41; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 2 ] = 33; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 3 ] = 25; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 4 ] = 17; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 5 ] = 9; movesAllowed[Piece.ROOK][ 57 ][ 2 ][ 6 ] = 1; movesAllowed[Piece.ROOK][ 58 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 58 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 58 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 58 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 58 ][ 0 ][ 0 ] = 57; movesAllowed[Piece.ROOK][ 58 ][ 0 ][ 1 ] = 56; movesAllowed[Piece.ROOK][ 58 ][ 1 ][ 0 ] = 59; movesAllowed[Piece.ROOK][ 58 ][ 1 ][ 1 ] = 60; movesAllowed[Piece.ROOK][ 58 ][ 1 ][ 2 ] = 61; movesAllowed[Piece.ROOK][ 58 ][ 1 ][ 3 ] = 62; movesAllowed[Piece.ROOK][ 58 ][ 1 ][ 4 ] = 63; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 0 ] = 50; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 1 ] = 42; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 2 ] = 34; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 3 ] = 26; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 4 ] = 18; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 5 ] = 10; movesAllowed[Piece.ROOK][ 58 ][ 2 ][ 6 ] = 2; movesAllowed[Piece.ROOK][ 59 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 59 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 59 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 59 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 59 ][ 0 ][ 0 ] = 58; movesAllowed[Piece.ROOK][ 59 ][ 0 ][ 1 ] = 57; movesAllowed[Piece.ROOK][ 59 ][ 0 ][ 2 ] = 56; movesAllowed[Piece.ROOK][ 59 ][ 1 ][ 0 ] = 60; movesAllowed[Piece.ROOK][ 59 ][ 1 ][ 1 ] = 61; movesAllowed[Piece.ROOK][ 59 ][ 1 ][ 2 ] = 62; movesAllowed[Piece.ROOK][ 59 ][ 1 ][ 3 ] = 63; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 0 ] = 51; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 1 ] = 43; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 2 ] = 35; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 3 ] = 27; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 4 ] = 19; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 5 ] = 11; movesAllowed[Piece.ROOK][ 59 ][ 2 ][ 6 ] = 3; movesAllowed[Piece.ROOK][ 60 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 60 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.ROOK][ 60 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.ROOK][ 60 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 60 ][ 0 ][ 0 ] = 59; movesAllowed[Piece.ROOK][ 60 ][ 0 ][ 1 ] = 58; movesAllowed[Piece.ROOK][ 60 ][ 0 ][ 2 ] = 57; movesAllowed[Piece.ROOK][ 60 ][ 0 ][ 3 ] = 56; movesAllowed[Piece.ROOK][ 60 ][ 1 ][ 0 ] = 61; movesAllowed[Piece.ROOK][ 60 ][ 1 ][ 1 ] = 62; movesAllowed[Piece.ROOK][ 60 ][ 1 ][ 2 ] = 63; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 0 ] = 52; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 1 ] = 44; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 2 ] = 36; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 3 ] = 28; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 4 ] = 20; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 5 ] = 12; movesAllowed[Piece.ROOK][ 60 ][ 2 ][ 6 ] = 4; movesAllowed[Piece.ROOK][ 61 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 61 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.ROOK][ 61 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.ROOK][ 61 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 61 ][ 0 ][ 0 ] = 60; movesAllowed[Piece.ROOK][ 61 ][ 0 ][ 1 ] = 59; movesAllowed[Piece.ROOK][ 61 ][ 0 ][ 2 ] = 58; movesAllowed[Piece.ROOK][ 61 ][ 0 ][ 3 ] = 57; movesAllowed[Piece.ROOK][ 61 ][ 0 ][ 4 ] = 56; movesAllowed[Piece.ROOK][ 61 ][ 1 ][ 0 ] = 62; movesAllowed[Piece.ROOK][ 61 ][ 1 ][ 1 ] = 63; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 0 ] = 53; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 1 ] = 45; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 2 ] = 37; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 3 ] = 29; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 4 ] = 21; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 5 ] = 13; movesAllowed[Piece.ROOK][ 61 ][ 2 ][ 6 ] = 5; movesAllowed[Piece.ROOK][ 62 ] = new int[ 3 ][]; movesAllowed[Piece.ROOK][ 62 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.ROOK][ 62 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.ROOK][ 62 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 0 ] = 61; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 1 ] = 60; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 2 ] = 59; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 3 ] = 58; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 4 ] = 57; movesAllowed[Piece.ROOK][ 62 ][ 0 ][ 5 ] = 56; movesAllowed[Piece.ROOK][ 62 ][ 1 ][ 0 ] = 63; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 0 ] = 54; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 1 ] = 46; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 2 ] = 38; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 3 ] = 30; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 4 ] = 22; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 5 ] = 14; movesAllowed[Piece.ROOK][ 62 ][ 2 ][ 6 ] = 6; movesAllowed[Piece.ROOK][ 63 ] = new int[ 2 ][]; movesAllowed[Piece.ROOK][ 63 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 63 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 0 ] = 62; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 1 ] = 61; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 2 ] = 60; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 3 ] = 59; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 4 ] = 58; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 5 ] = 57; movesAllowed[Piece.ROOK][ 63 ][ 0 ][ 6 ] = 56; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 1 ] = 47; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 2 ] = 39; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 3 ] = 31; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 4 ] = 23; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 5 ] = 15; movesAllowed[Piece.ROOK][ 63 ][ 1 ][ 6 ] = 7; /*========* * KNIGHT * *========*/ movesAllowed[Piece.KNIGHT] = new int[ 64 ][][]; movesAllowed[Piece.KNIGHT][ 0 ] = new int[ 2 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 0 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 0 ][ 1 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 1 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 1 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.KNIGHT][ 1 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 1 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 2 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 2 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.KNIGHT][ 2 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 2 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 2 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 3 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 3 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.KNIGHT][ 3 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 3 ][ 2 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 3 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 4 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 4 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 4 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.KNIGHT][ 4 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 4 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 5 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 5 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 5 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.KNIGHT][ 5 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 5 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 6 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 6 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 6 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 6 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.KNIGHT][ 7 ] = new int[ 2 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 7 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 7 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 8 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 8 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.KNIGHT][ 8 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 8 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 9 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 9 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.KNIGHT][ 9 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 9 ][ 2 ][ 0 ] = 24; movesAllowed[Piece.KNIGHT][ 9 ][ 3 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 10 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 10 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.KNIGHT][ 10 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.KNIGHT][ 10 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 10 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 10 ][ 4 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 10 ][ 5 ][ 0 ] = 16; movesAllowed[Piece.KNIGHT][ 11 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 11 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KNIGHT][ 11 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.KNIGHT][ 11 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 11 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 11 ][ 4 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 11 ][ 5 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 12 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 12 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.KNIGHT][ 12 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.KNIGHT][ 12 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 12 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 12 ][ 4 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 12 ][ 5 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 13 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 13 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.KNIGHT][ 13 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.KNIGHT][ 13 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.KNIGHT][ 13 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 13 ][ 4 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 13 ][ 5 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 14 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 14 ][ 0 ][ 0 ] = 31; movesAllowed[Piece.KNIGHT][ 14 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 14 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 14 ][ 3 ][ 0 ] = 4; movesAllowed[Piece.KNIGHT][ 15 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 15 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.KNIGHT][ 15 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 15 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 16 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 16 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KNIGHT][ 16 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 16 ][ 2 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 16 ][ 3 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 17 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 17 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.KNIGHT][ 17 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.KNIGHT][ 17 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 17 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 17 ][ 4 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 17 ][ 5 ][ 0 ] = 32; movesAllowed[Piece.KNIGHT][ 18 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 18 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.KNIGHT][ 18 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.KNIGHT][ 18 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 18 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 18 ][ 4 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 18 ][ 5 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 18 ][ 6 ][ 0 ] = 24; movesAllowed[Piece.KNIGHT][ 18 ][ 7 ][ 0 ] = 8; movesAllowed[Piece.KNIGHT][ 19 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 19 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.KNIGHT][ 19 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.KNIGHT][ 19 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 19 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 19 ][ 4 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 19 ][ 5 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 19 ][ 6 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 19 ][ 7 ][ 0 ] = 9; movesAllowed[Piece.KNIGHT][ 20 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 20 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.KNIGHT][ 20 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.KNIGHT][ 20 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.KNIGHT][ 20 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 20 ][ 4 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 20 ][ 5 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 20 ][ 6 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 20 ][ 7 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 21 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 21 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.KNIGHT][ 21 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.KNIGHT][ 21 ][ 2 ][ 0 ] = 15; movesAllowed[Piece.KNIGHT][ 21 ][ 3 ][ 0 ] = 31; movesAllowed[Piece.KNIGHT][ 21 ][ 4 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 21 ][ 5 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 21 ][ 6 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 21 ][ 7 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 22 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 22 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.KNIGHT][ 22 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.KNIGHT][ 22 ][ 2 ][ 0 ] = 39; movesAllowed[Piece.KNIGHT][ 22 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 22 ][ 4 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 22 ][ 5 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 23 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 23 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.KNIGHT][ 23 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 23 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 23 ][ 3 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 24 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 24 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.KNIGHT][ 24 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 24 ][ 2 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 24 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 25 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 25 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.KNIGHT][ 25 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 25 ][ 2 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 25 ][ 3 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 25 ][ 4 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 25 ][ 5 ][ 0 ] = 40; movesAllowed[Piece.KNIGHT][ 26 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 26 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.KNIGHT][ 26 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 26 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 26 ][ 3 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 26 ][ 4 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 26 ][ 5 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 26 ][ 6 ][ 0 ] = 32; movesAllowed[Piece.KNIGHT][ 26 ][ 7 ][ 0 ] = 16; movesAllowed[Piece.KNIGHT][ 27 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 27 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.KNIGHT][ 27 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 27 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 27 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 27 ][ 4 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 27 ][ 5 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 27 ][ 6 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 27 ][ 7 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 28 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 28 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.KNIGHT][ 28 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 28 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 28 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 28 ][ 4 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 28 ][ 5 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 28 ][ 6 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 28 ][ 7 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 29 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 29 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.KNIGHT][ 29 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.KNIGHT][ 29 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.KNIGHT][ 29 ][ 3 ][ 0 ] = 39; movesAllowed[Piece.KNIGHT][ 29 ][ 4 ][ 0 ] = 46; movesAllowed[Piece.KNIGHT][ 29 ][ 5 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 29 ][ 6 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 29 ][ 7 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 30 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 30 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.KNIGHT][ 30 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.KNIGHT][ 30 ][ 2 ][ 0 ] = 47; movesAllowed[Piece.KNIGHT][ 30 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 30 ][ 4 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 30 ][ 5 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 31 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 31 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.KNIGHT][ 31 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.KNIGHT][ 31 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 31 ][ 3 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 32 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 32 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 32 ][ 1 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 32 ][ 2 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 32 ][ 3 ][ 0 ] = 49; movesAllowed[Piece.KNIGHT][ 33 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 33 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.KNIGHT][ 33 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 33 ][ 2 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 33 ][ 3 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 33 ][ 4 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 33 ][ 5 ][ 0 ] = 48; movesAllowed[Piece.KNIGHT][ 34 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 34 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.KNIGHT][ 34 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 34 ][ 2 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 34 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 34 ][ 4 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 34 ][ 5 ][ 0 ] = 49; movesAllowed[Piece.KNIGHT][ 34 ][ 6 ][ 0 ] = 40; movesAllowed[Piece.KNIGHT][ 34 ][ 7 ][ 0 ] = 24; movesAllowed[Piece.KNIGHT][ 35 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 35 ][ 0 ][ 0 ] = 18; movesAllowed[Piece.KNIGHT][ 35 ][ 1 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 35 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 35 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 35 ][ 4 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 35 ][ 5 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 35 ][ 6 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 35 ][ 7 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 36 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 36 ][ 0 ][ 0 ] = 19; movesAllowed[Piece.KNIGHT][ 36 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 36 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 36 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.KNIGHT][ 36 ][ 4 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 36 ][ 5 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 36 ][ 6 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 36 ][ 7 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 37 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 37 ][ 0 ][ 0 ] = 20; movesAllowed[Piece.KNIGHT][ 37 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 37 ][ 2 ][ 0 ] = 31; movesAllowed[Piece.KNIGHT][ 37 ][ 3 ][ 0 ] = 47; movesAllowed[Piece.KNIGHT][ 37 ][ 4 ][ 0 ] = 54; movesAllowed[Piece.KNIGHT][ 37 ][ 5 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 37 ][ 6 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 37 ][ 7 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 38 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 38 ][ 0 ][ 0 ] = 21; movesAllowed[Piece.KNIGHT][ 38 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.KNIGHT][ 38 ][ 2 ][ 0 ] = 55; movesAllowed[Piece.KNIGHT][ 38 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 38 ][ 4 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 38 ][ 5 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 39 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 39 ][ 0 ][ 0 ] = 22; movesAllowed[Piece.KNIGHT][ 39 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.KNIGHT][ 39 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 39 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 40 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 40 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 40 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 40 ][ 2 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 40 ][ 3 ][ 0 ] = 57; movesAllowed[Piece.KNIGHT][ 41 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 41 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 41 ][ 1 ][ 0 ] = 24; movesAllowed[Piece.KNIGHT][ 41 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 41 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 41 ][ 4 ][ 0 ] = 58; movesAllowed[Piece.KNIGHT][ 41 ][ 5 ][ 0 ] = 56; movesAllowed[Piece.KNIGHT][ 42 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 42 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.KNIGHT][ 42 ][ 1 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 42 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 42 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 42 ][ 4 ][ 0 ] = 59; movesAllowed[Piece.KNIGHT][ 42 ][ 5 ][ 0 ] = 57; movesAllowed[Piece.KNIGHT][ 42 ][ 6 ][ 0 ] = 48; movesAllowed[Piece.KNIGHT][ 42 ][ 7 ][ 0 ] = 32; movesAllowed[Piece.KNIGHT][ 43 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 43 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.KNIGHT][ 43 ][ 1 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 43 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 43 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 43 ][ 4 ][ 0 ] = 60; movesAllowed[Piece.KNIGHT][ 43 ][ 5 ][ 0 ] = 58; movesAllowed[Piece.KNIGHT][ 43 ][ 6 ][ 0 ] = 49; movesAllowed[Piece.KNIGHT][ 43 ][ 7 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 44 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 44 ][ 0 ][ 0 ] = 27; movesAllowed[Piece.KNIGHT][ 44 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 44 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 44 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.KNIGHT][ 44 ][ 4 ][ 0 ] = 61; movesAllowed[Piece.KNIGHT][ 44 ][ 5 ][ 0 ] = 59; movesAllowed[Piece.KNIGHT][ 44 ][ 6 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 44 ][ 7 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 45 ] = new int[ 8 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 45 ][ 0 ][ 0 ] = 28; movesAllowed[Piece.KNIGHT][ 45 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 45 ][ 2 ][ 0 ] = 39; movesAllowed[Piece.KNIGHT][ 45 ][ 3 ][ 0 ] = 55; movesAllowed[Piece.KNIGHT][ 45 ][ 4 ][ 0 ] = 62; movesAllowed[Piece.KNIGHT][ 45 ][ 5 ][ 0 ] = 60; movesAllowed[Piece.KNIGHT][ 45 ][ 6 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 45 ][ 7 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 46 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 46 ][ 0 ][ 0 ] = 29; movesAllowed[Piece.KNIGHT][ 46 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.KNIGHT][ 46 ][ 2 ][ 0 ] = 63; movesAllowed[Piece.KNIGHT][ 46 ][ 3 ][ 0 ] = 61; movesAllowed[Piece.KNIGHT][ 46 ][ 4 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 46 ][ 5 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 47 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 47 ][ 0 ][ 0 ] = 30; movesAllowed[Piece.KNIGHT][ 47 ][ 1 ][ 0 ] = 62; movesAllowed[Piece.KNIGHT][ 47 ][ 2 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 47 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 48 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 48 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 48 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 48 ][ 2 ][ 0 ] = 58; movesAllowed[Piece.KNIGHT][ 49 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 49 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.KNIGHT][ 49 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 49 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 49 ][ 3 ][ 0 ] = 59; movesAllowed[Piece.KNIGHT][ 50 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 50 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.KNIGHT][ 50 ][ 1 ][ 0 ] = 33; movesAllowed[Piece.KNIGHT][ 50 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 50 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 50 ][ 4 ][ 0 ] = 60; movesAllowed[Piece.KNIGHT][ 50 ][ 5 ][ 0 ] = 56; movesAllowed[Piece.KNIGHT][ 51 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 51 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 51 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.KNIGHT][ 51 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 51 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 51 ][ 4 ][ 0 ] = 61; movesAllowed[Piece.KNIGHT][ 51 ][ 5 ][ 0 ] = 57; movesAllowed[Piece.KNIGHT][ 52 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 52 ][ 0 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 52 ][ 1 ][ 0 ] = 35; movesAllowed[Piece.KNIGHT][ 52 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 52 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.KNIGHT][ 52 ][ 4 ][ 0 ] = 62; movesAllowed[Piece.KNIGHT][ 52 ][ 5 ][ 0 ] = 58; movesAllowed[Piece.KNIGHT][ 53 ] = new int[ 6 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 53 ][ 0 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 53 ][ 1 ][ 0 ] = 36; movesAllowed[Piece.KNIGHT][ 53 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 53 ][ 3 ][ 0 ] = 47; movesAllowed[Piece.KNIGHT][ 53 ][ 4 ][ 0 ] = 63; movesAllowed[Piece.KNIGHT][ 53 ][ 5 ][ 0 ] = 59; movesAllowed[Piece.KNIGHT][ 54 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 54 ][ 0 ][ 0 ] = 39; movesAllowed[Piece.KNIGHT][ 54 ][ 1 ][ 0 ] = 60; movesAllowed[Piece.KNIGHT][ 54 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 54 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.KNIGHT][ 55 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 55 ][ 0 ][ 0 ] = 38; movesAllowed[Piece.KNIGHT][ 55 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 55 ][ 2 ][ 0 ] = 61; movesAllowed[Piece.KNIGHT][ 56 ] = new int[ 2 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 56 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 56 ][ 1 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 57 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 57 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.KNIGHT][ 57 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 57 ][ 2 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 58 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 58 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.KNIGHT][ 58 ][ 1 ][ 0 ] = 41; movesAllowed[Piece.KNIGHT][ 58 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 58 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 59 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 59 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.KNIGHT][ 59 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.KNIGHT][ 59 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 59 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 60 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 60 ][ 0 ][ 0 ] = 50; movesAllowed[Piece.KNIGHT][ 60 ][ 1 ][ 0 ] = 43; movesAllowed[Piece.KNIGHT][ 60 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 60 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.KNIGHT][ 61 ] = new int[ 4 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 61 ][ 0 ][ 0 ] = 51; movesAllowed[Piece.KNIGHT][ 61 ][ 1 ][ 0 ] = 44; movesAllowed[Piece.KNIGHT][ 61 ][ 2 ][ 0 ] = 46; movesAllowed[Piece.KNIGHT][ 61 ][ 3 ][ 0 ] = 55; movesAllowed[Piece.KNIGHT][ 62 ] = new int[ 3 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 62 ][ 0 ][ 0 ] = 52; movesAllowed[Piece.KNIGHT][ 62 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.KNIGHT][ 62 ][ 2 ][ 0 ] = 47; movesAllowed[Piece.KNIGHT][ 63 ] = new int[ 2 ][ 1 ]; movesAllowed[Piece.KNIGHT][ 63 ][ 0 ][ 0 ] = 53; movesAllowed[Piece.KNIGHT][ 63 ][ 1 ][ 0 ] = 46; } private final static void initialise2() { /*=======* * QUEEN * *=======*/ movesAllowed[Piece.QUEEN] = new int[ 64 ][][]; movesAllowed[Piece.QUEEN][ 0 ] = new int[ 3 ][]; movesAllowed[Piece.QUEEN][ 0 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 0 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 3 ] = 4; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 4 ] = 5; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 5 ] = 6; movesAllowed[Piece.QUEEN][ 0 ][ 0 ][ 6 ] = 7; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 0 ] = 8; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 1 ] = 16; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 2 ] = 24; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 3 ] = 32; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 4 ] = 40; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 5 ] = 48; movesAllowed[Piece.QUEEN][ 0 ][ 1 ][ 6 ] = 56; movesAllowed[Piece.QUEEN][ 0 ][ 2 ]= new int [ 7 ]; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 3 ] = 36; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 4 ] = 45; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 5 ] = 54; movesAllowed[Piece.QUEEN][ 0 ][ 2 ][ 6 ] = 63; movesAllowed[Piece.QUEEN][ 1 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 1 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 1 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 1 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 1 ][ 0 ][ 0 ] = 0; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 0 ] = 2; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 1 ] = 3; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 2 ] = 4; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 3 ] = 5; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 4 ] = 6; movesAllowed[Piece.QUEEN][ 1 ][ 1 ][ 5 ] = 7; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 1 ] = 17; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 2 ] = 25; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 3 ] = 33; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 4 ] = 41; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 5 ] = 49; movesAllowed[Piece.QUEEN][ 1 ][ 2 ][ 6 ] = 57; movesAllowed[Piece.QUEEN][ 1 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 1 ][ 3 ][ 0 ] = 8; movesAllowed[Piece.QUEEN][ 1 ][ 4 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 3 ] = 37; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 4 ] = 46; movesAllowed[Piece.QUEEN][ 1 ][ 4 ][ 5 ] = 55; movesAllowed[Piece.QUEEN][ 2 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 2 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 2 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 2 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 2 ][ 0 ][ 0 ] = 1; movesAllowed[Piece.QUEEN][ 2 ][ 0 ][ 1 ] = 0; movesAllowed[Piece.QUEEN][ 2 ][ 1 ][ 0 ] = 3; movesAllowed[Piece.QUEEN][ 2 ][ 1 ][ 1 ] = 4; movesAllowed[Piece.QUEEN][ 2 ][ 1 ][ 2 ] = 5; movesAllowed[Piece.QUEEN][ 2 ][ 1 ][ 3 ] = 6; movesAllowed[Piece.QUEEN][ 2 ][ 1 ][ 4 ] = 7; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 2 ] = 26; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 3 ] = 34; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 4 ] = 42; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 5 ] = 50; movesAllowed[Piece.QUEEN][ 2 ][ 2 ][ 6 ] = 58; movesAllowed[Piece.QUEEN][ 2 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 2 ][ 3 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 2 ][ 3 ][ 1 ] = 16; movesAllowed[Piece.QUEEN][ 2 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 2 ][ 4 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 2 ][ 4 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 2 ][ 4 ][ 2 ] = 29; movesAllowed[Piece.QUEEN][ 2 ][ 4 ][ 3 ] = 38; movesAllowed[Piece.QUEEN][ 2 ][ 4 ][ 4 ] = 47; movesAllowed[Piece.QUEEN][ 3 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 3 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 3 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 3 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 3 ][ 0 ][ 0 ] = 2; movesAllowed[Piece.QUEEN][ 3 ][ 0 ][ 1 ] = 1; movesAllowed[Piece.QUEEN][ 3 ][ 0 ][ 2 ] = 0; movesAllowed[Piece.QUEEN][ 3 ][ 1 ][ 0 ] = 4; movesAllowed[Piece.QUEEN][ 3 ][ 1 ][ 1 ] = 5; movesAllowed[Piece.QUEEN][ 3 ][ 1 ][ 2 ] = 6; movesAllowed[Piece.QUEEN][ 3 ][ 1 ][ 3 ] = 7; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 3 ] = 35; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 4 ] = 43; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 5 ] = 51; movesAllowed[Piece.QUEEN][ 3 ][ 2 ][ 6 ] = 59; movesAllowed[Piece.QUEEN][ 3 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 3 ][ 3 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 3 ][ 3 ][ 1 ] = 17; movesAllowed[Piece.QUEEN][ 3 ][ 3 ][ 2 ] = 24; movesAllowed[Piece.QUEEN][ 3 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 3 ][ 4 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 3 ][ 4 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 3 ][ 4 ][ 2 ] = 30; movesAllowed[Piece.QUEEN][ 3 ][ 4 ][ 3 ] = 39; movesAllowed[Piece.QUEEN][ 4 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 4 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 4 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 4 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 4 ][ 0 ][ 0 ] = 3; movesAllowed[Piece.QUEEN][ 4 ][ 0 ][ 1 ] = 2; movesAllowed[Piece.QUEEN][ 4 ][ 0 ][ 2 ] = 1; movesAllowed[Piece.QUEEN][ 4 ][ 0 ][ 3 ] = 0; movesAllowed[Piece.QUEEN][ 4 ][ 1 ][ 0 ] = 5; movesAllowed[Piece.QUEEN][ 4 ][ 1 ][ 1 ] = 6; movesAllowed[Piece.QUEEN][ 4 ][ 1 ][ 2 ] = 7; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 3 ] = 36; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 4 ] = 44; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 5 ] = 52; movesAllowed[Piece.QUEEN][ 4 ][ 2 ][ 6 ] = 60; movesAllowed[Piece.QUEEN][ 4 ][ 3] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 4 ][ 3 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 4 ][ 3 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 4 ][ 3 ][ 2 ] = 25; movesAllowed[Piece.QUEEN][ 4 ][ 3 ][ 3 ] = 32; movesAllowed[Piece.QUEEN][ 4 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 4 ][ 4 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 4 ][ 4 ][ 1 ] = 22; movesAllowed[Piece.QUEEN][ 4 ][ 4 ][ 2 ] = 31; movesAllowed[Piece.QUEEN][ 5 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 5 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 5 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 5 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 5 ][ 0 ][ 0 ] = 4; movesAllowed[Piece.QUEEN][ 5 ][ 0 ][ 1 ] = 3; movesAllowed[Piece.QUEEN][ 5 ][ 0 ][ 2 ] = 2; movesAllowed[Piece.QUEEN][ 5 ][ 0 ][ 3 ] = 1; movesAllowed[Piece.QUEEN][ 5 ][ 0 ][ 4 ] = 0; movesAllowed[Piece.QUEEN][ 5 ][ 1 ][ 0 ] = 6; movesAllowed[Piece.QUEEN][ 5 ][ 1 ][ 1 ] = 7; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 2 ] = 29; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 3 ] = 37; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 4 ] = 45; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 5 ] = 53; movesAllowed[Piece.QUEEN][ 5 ][ 2 ][ 6 ] = 61; movesAllowed[Piece.QUEEN][ 5 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 5 ][ 3 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 5 ][ 3 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 5 ][ 3 ][ 2 ] = 26; movesAllowed[Piece.QUEEN][ 5 ][ 3 ][ 3 ] = 33; movesAllowed[Piece.QUEEN][ 5 ][ 3 ][ 4 ] = 40; movesAllowed[Piece.QUEEN][ 5 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 5 ][ 4 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 5 ][ 4 ][ 1 ] = 23; movesAllowed[Piece.QUEEN][ 6 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 6 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 6 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 6 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 0 ] = 5; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 1 ] = 4; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 2 ] = 3; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 3 ] = 2; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 4 ] = 1; movesAllowed[Piece.QUEEN][ 6 ][ 0 ][ 5 ] = 0; movesAllowed[Piece.QUEEN][ 6 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 1 ] = 22; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 2 ] = 30; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 3 ] = 38; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 4 ] = 46; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 5 ] = 54; movesAllowed[Piece.QUEEN][ 6 ][ 2 ][ 6 ] = 62; movesAllowed[Piece.QUEEN][ 6 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 3 ] = 34; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 4 ] = 41; movesAllowed[Piece.QUEEN][ 6 ][ 3 ][ 5 ] = 48; movesAllowed[Piece.QUEEN][ 6 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 6 ][ 4 ][ 0 ] = 15; movesAllowed[Piece.QUEEN][ 7 ] = new int[ 3 ][]; movesAllowed[Piece.QUEEN][ 7 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 7 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 0 ] = 6; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 1 ] = 5; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 2 ] = 4; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 3 ] = 3; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 4 ] = 2; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 5 ] = 1; movesAllowed[Piece.QUEEN][ 7 ][ 0 ][ 6 ] = 0; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 3 ] = 39; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 4 ] = 47; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 5 ] = 55; movesAllowed[Piece.QUEEN][ 7 ][ 1 ][ 6 ] = 63; movesAllowed[Piece.QUEEN][ 7 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 3 ] = 35; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 4 ] = 42; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 5 ] = 49; movesAllowed[Piece.QUEEN][ 7 ][ 2 ][ 6 ] = 56; movesAllowed[Piece.QUEEN][ 8 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 8 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 8 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 8 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 3 ] = 12; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 4 ] = 13; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 5 ] = 14; movesAllowed[Piece.QUEEN][ 8 ][ 0 ][ 6 ] = 15; movesAllowed[Piece.QUEEN][ 8 ][ 1 ][ 0 ] = 0; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 0 ] = 16; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 1 ] = 24; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 2 ] = 32; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 3 ] = 40; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 4 ] = 48; movesAllowed[Piece.QUEEN][ 8 ][ 2 ][ 5 ] = 56; movesAllowed[Piece.QUEEN][ 8 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 8 ][ 3 ][ 0 ] = 1; movesAllowed[Piece.QUEEN][ 8 ][ 4 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 3 ] = 44; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 4 ] = 53; movesAllowed[Piece.QUEEN][ 8 ][ 4 ][ 5 ] = 62; movesAllowed[Piece.QUEEN][ 9 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 9 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 9 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 9 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 9 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 9 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 1 ] = 11; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 2 ] = 12; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 3 ] = 13; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 4 ] = 14; movesAllowed[Piece.QUEEN][ 9 ][ 1 ][ 5 ] = 15; movesAllowed[Piece.QUEEN][ 9 ][ 2 ][ 0 ] = 1; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 1 ] = 25; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 2 ] = 33; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 3 ] = 41; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 4 ] = 49; movesAllowed[Piece.QUEEN][ 9 ][ 3 ][ 5 ] = 57; movesAllowed[Piece.QUEEN][ 9 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 9 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 9 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 9 ][ 7 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 9 ][ 4 ][ 0 ] = 0; movesAllowed[Piece.QUEEN][ 9 ][ 5 ][ 0 ] = 2; movesAllowed[Piece.QUEEN][ 9 ][ 6 ][ 0 ] = 16; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 3 ] = 45; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 4 ] = 54; movesAllowed[Piece.QUEEN][ 9 ][ 7 ][ 5 ] = 63; movesAllowed[Piece.QUEEN][ 10 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 10 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 10 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 10 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 10 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 10 ][ 0 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 10 ][ 0 ][ 1 ] = 8; movesAllowed[Piece.QUEEN][ 10 ][ 1 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 10 ][ 1 ][ 1 ] = 12; movesAllowed[Piece.QUEEN][ 10 ][ 1 ][ 2 ] = 13; movesAllowed[Piece.QUEEN][ 10 ][ 1 ][ 3 ] = 14; movesAllowed[Piece.QUEEN][ 10 ][ 1 ][ 4 ] = 15; movesAllowed[Piece.QUEEN][ 10 ][ 2 ][ 0 ] = 2; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 2 ] = 34; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 3 ] = 42; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 4 ] = 50; movesAllowed[Piece.QUEEN][ 10 ][ 3 ][ 5 ] = 58; movesAllowed[Piece.QUEEN][ 10 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 10 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 10 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 10 ][ 7 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 10 ][ 4 ][ 0 ] = 1; movesAllowed[Piece.QUEEN][ 10 ][ 5 ][ 0 ] = 3; movesAllowed[Piece.QUEEN][ 10 ][ 6 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 10 ][ 6 ][ 1 ] = 24; movesAllowed[Piece.QUEEN][ 10 ][ 7 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 10 ][ 7 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 10 ][ 7 ][ 2 ] = 37; movesAllowed[Piece.QUEEN][ 10 ][ 7 ][ 3 ] = 46; movesAllowed[Piece.QUEEN][ 10 ][ 7 ][ 4 ] = 55; movesAllowed[Piece.QUEEN][ 11 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 11 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 11 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 11 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 11 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 11 ][ 0 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 11 ][ 0 ][ 1 ] = 9; movesAllowed[Piece.QUEEN][ 11 ][ 0 ][ 2 ] = 8; movesAllowed[Piece.QUEEN][ 11 ][ 1 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 11 ][ 1 ][ 1 ] = 13; movesAllowed[Piece.QUEEN][ 11 ][ 1 ][ 2 ] = 14; movesAllowed[Piece.QUEEN][ 11 ][ 1 ][ 3 ] = 15; movesAllowed[Piece.QUEEN][ 11 ][ 2 ][ 0 ] = 3; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 3 ] = 43; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 4 ] = 51; movesAllowed[Piece.QUEEN][ 11 ][ 3 ][ 5 ] = 59; movesAllowed[Piece.QUEEN][ 11 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 11 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 11 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 11 ][ 7 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 11 ][ 4 ][ 0 ] = 2; movesAllowed[Piece.QUEEN][ 11 ][ 5 ][ 0 ] = 4; movesAllowed[Piece.QUEEN][ 11 ][ 6 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 11 ][ 6 ][ 1 ] = 25; movesAllowed[Piece.QUEEN][ 11 ][ 6 ][ 2 ] = 32; movesAllowed[Piece.QUEEN][ 11 ][ 7 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 11 ][ 7 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 11 ][ 7 ][ 2 ] = 38; movesAllowed[Piece.QUEEN][ 11 ][ 7 ][ 3 ] = 47; movesAllowed[Piece.QUEEN][ 12 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 12 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 12 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 12 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 12 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 12 ][ 0 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 12 ][ 0 ][ 1 ] = 10; movesAllowed[Piece.QUEEN][ 12 ][ 0 ][ 2 ] = 9; movesAllowed[Piece.QUEEN][ 12 ][ 0 ][ 3 ] = 8; movesAllowed[Piece.QUEEN][ 12 ][ 1 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 12 ][ 1 ][ 1 ] = 14; movesAllowed[Piece.QUEEN][ 12 ][ 1 ][ 2 ] = 15; movesAllowed[Piece.QUEEN][ 12 ][ 2 ][ 0 ] = 4; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 3 ] = 44; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 4 ] = 52; movesAllowed[Piece.QUEEN][ 12 ][ 3 ][ 5 ] = 60; movesAllowed[Piece.QUEEN][ 12 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 12 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 12 ][ 6 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 12 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 12 ][ 4 ][ 0 ] = 3; movesAllowed[Piece.QUEEN][ 12 ][ 5 ][ 0 ] = 5; movesAllowed[Piece.QUEEN][ 12 ][ 6 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 12 ][ 6 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 12 ][ 6 ][ 2 ] = 33; movesAllowed[Piece.QUEEN][ 12 ][ 6 ][ 3 ] = 40; movesAllowed[Piece.QUEEN][ 12 ][ 7 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 12 ][ 7 ][ 1 ] = 30; movesAllowed[Piece.QUEEN][ 12 ][ 7 ][ 2 ] = 39; movesAllowed[Piece.QUEEN][ 13 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 13 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 13 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 13 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 13 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 13 ][ 0 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 13 ][ 0 ][ 1 ] = 11; movesAllowed[Piece.QUEEN][ 13 ][ 0 ][ 2 ] = 10; movesAllowed[Piece.QUEEN][ 13 ][ 0 ][ 3 ] = 9; movesAllowed[Piece.QUEEN][ 13 ][ 0 ][ 4 ] = 8; movesAllowed[Piece.QUEEN][ 13 ][ 1 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 13 ][ 1 ][ 1 ] = 15; movesAllowed[Piece.QUEEN][ 13 ][ 2 ][ 0 ] = 5; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 2 ] = 37; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 3 ] = 45; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 4 ] = 53; movesAllowed[Piece.QUEEN][ 13 ][ 3 ][ 5 ] = 61; movesAllowed[Piece.QUEEN][ 13 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 13 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 13 ][ 6 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 13 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 13 ][ 4 ][ 0 ] = 4; movesAllowed[Piece.QUEEN][ 13 ][ 5 ][ 0 ] = 6; movesAllowed[Piece.QUEEN][ 13 ][ 6 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 13 ][ 6 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 13 ][ 6 ][ 2 ] = 34; movesAllowed[Piece.QUEEN][ 13 ][ 6 ][ 3 ] = 41; movesAllowed[Piece.QUEEN][ 13 ][ 6 ][ 4 ] = 48; movesAllowed[Piece.QUEEN][ 13 ][ 7 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 13 ][ 7 ][ 1 ] = 31; movesAllowed[Piece.QUEEN][ 14 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 14 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 14 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 14 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 14 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 1 ] = 12; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 2 ] = 11; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 3 ] = 10; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 4 ] = 9; movesAllowed[Piece.QUEEN][ 14 ][ 0 ][ 5 ] = 8; movesAllowed[Piece.QUEEN][ 14 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.QUEEN][ 14 ][ 2 ][ 0 ] = 6; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 1 ] = 30; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 2 ] = 38; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 3 ] = 46; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 4 ] = 54; movesAllowed[Piece.QUEEN][ 14 ][ 3 ][ 5 ] = 62; movesAllowed[Piece.QUEEN][ 14 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 14 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 14 ][ 6 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 14 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 14 ][ 4 ][ 0 ] = 5; movesAllowed[Piece.QUEEN][ 14 ][ 5 ][ 0 ] = 7; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 3 ] = 42; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 4 ] = 49; movesAllowed[Piece.QUEEN][ 14 ][ 6 ][ 5 ] = 56; movesAllowed[Piece.QUEEN][ 14 ][ 7 ][ 0 ] = 23; movesAllowed[Piece.QUEEN][ 15 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 15 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 15 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 15 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 1 ] = 13; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 2 ] = 12; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 3 ] = 11; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 4 ] = 10; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 5 ] = 9; movesAllowed[Piece.QUEEN][ 15 ][ 0 ][ 6 ] = 8; movesAllowed[Piece.QUEEN][ 15 ][ 1 ][ 0 ] = 7; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 0 ] = 23; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 1 ] = 31; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 2 ] = 39; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 3 ] = 47; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 4 ] = 55; movesAllowed[Piece.QUEEN][ 15 ][ 2 ][ 5 ] = 63; movesAllowed[Piece.QUEEN][ 15 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 15 ][ 4 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 15 ][ 3 ][ 0 ] = 6; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 3 ] = 43; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 4 ] = 50; movesAllowed[Piece.QUEEN][ 15 ][ 4 ][ 5 ] = 57; movesAllowed[Piece.QUEEN][ 16 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 16 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 16 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 16 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 16 ][ 0 ][ 0 ] = 8; movesAllowed[Piece.QUEEN][ 16 ][ 0 ][ 1 ] = 0; movesAllowed[Piece.QUEEN][ 16 ][ 1 ][ 0 ] = 24; movesAllowed[Piece.QUEEN][ 16 ][ 1 ][ 1 ] = 32; movesAllowed[Piece.QUEEN][ 16 ][ 1 ][ 2 ] = 40; movesAllowed[Piece.QUEEN][ 16 ][ 1 ][ 3 ] = 48; movesAllowed[Piece.QUEEN][ 16 ][ 1 ][ 4 ] = 56; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 2 ] = 19; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 3 ] = 20; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 4 ] = 21; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 5 ] = 22; movesAllowed[Piece.QUEEN][ 16 ][ 2 ][ 6 ] = 23; movesAllowed[Piece.QUEEN][ 16 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 16 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 16 ][ 3 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 16 ][ 3 ][ 1 ] = 2; movesAllowed[Piece.QUEEN][ 16 ][ 4 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 16 ][ 4 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 16 ][ 4 ][ 2 ] = 43; movesAllowed[Piece.QUEEN][ 16 ][ 4 ][ 3 ] = 52; movesAllowed[Piece.QUEEN][ 16 ][ 4 ][ 4 ] = 61; movesAllowed[Piece.QUEEN][ 17 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 17 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 17 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 17 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 17 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 17 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 2 ] = 20; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 3 ] = 21; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 4 ] = 22; movesAllowed[Piece.QUEEN][ 17 ][ 1 ][ 5 ] = 23; movesAllowed[Piece.QUEEN][ 17 ][ 2 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 17 ][ 2 ][ 1 ] = 1; movesAllowed[Piece.QUEEN][ 17 ][ 3 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 17 ][ 3 ][ 1 ] = 33; movesAllowed[Piece.QUEEN][ 17 ][ 3 ][ 2 ] = 41; movesAllowed[Piece.QUEEN][ 17 ][ 3 ][ 3 ] = 49; movesAllowed[Piece.QUEEN][ 17 ][ 3 ][ 4 ] = 57; movesAllowed[Piece.QUEEN][ 17 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 17 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 17 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 17 ][ 7 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 17 ][ 4 ][ 0 ] = 8; movesAllowed[Piece.QUEEN][ 17 ][ 5 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 17 ][ 5 ][ 1 ] = 3; movesAllowed[Piece.QUEEN][ 17 ][ 6 ][ 0 ] = 24; movesAllowed[Piece.QUEEN][ 17 ][ 7 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 17 ][ 7 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 17 ][ 7 ][ 2 ] = 44; movesAllowed[Piece.QUEEN][ 17 ][ 7 ][ 3 ] = 53; movesAllowed[Piece.QUEEN][ 17 ][ 7 ][ 4 ] = 62; movesAllowed[Piece.QUEEN][ 18 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 18 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 18 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 18 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 18 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 18 ][ 0 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 18 ][ 0 ][ 1 ] = 16; movesAllowed[Piece.QUEEN][ 18 ][ 1 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 18 ][ 1 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 18 ][ 1 ][ 2 ] = 21; movesAllowed[Piece.QUEEN][ 18 ][ 1 ][ 3 ] = 22; movesAllowed[Piece.QUEEN][ 18 ][ 1 ][ 4 ] = 23; movesAllowed[Piece.QUEEN][ 18 ][ 2 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 18 ][ 2 ][ 1 ] = 2; movesAllowed[Piece.QUEEN][ 18 ][ 3 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 18 ][ 3 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 18 ][ 3 ][ 2 ] = 42; movesAllowed[Piece.QUEEN][ 18 ][ 3 ][ 3 ] = 50; movesAllowed[Piece.QUEEN][ 18 ][ 3 ][ 4 ] = 58; movesAllowed[Piece.QUEEN][ 18 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 18 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 18 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 18 ][ 7 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 18 ][ 4 ][ 0 ] = 9; movesAllowed[Piece.QUEEN][ 18 ][ 4 ][ 1 ] = 0; movesAllowed[Piece.QUEEN][ 18 ][ 5 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 18 ][ 5 ][ 1 ] = 4; movesAllowed[Piece.QUEEN][ 18 ][ 6 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 18 ][ 6 ][ 1 ] = 32; movesAllowed[Piece.QUEEN][ 18 ][ 7 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 18 ][ 7 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 18 ][ 7 ][ 2 ] = 45; movesAllowed[Piece.QUEEN][ 18 ][ 7 ][ 3 ] = 54; movesAllowed[Piece.QUEEN][ 18 ][ 7 ][ 4 ] = 63; movesAllowed[Piece.QUEEN][ 19 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 19 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 19 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 19 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 19 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 19 ][ 0 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 19 ][ 0 ][ 1 ] = 17; movesAllowed[Piece.QUEEN][ 19 ][ 0 ][ 2 ] = 16; movesAllowed[Piece.QUEEN][ 19 ][ 1 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 19 ][ 1 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 19 ][ 1 ][ 2 ] = 22; movesAllowed[Piece.QUEEN][ 19 ][ 1 ][ 3 ] = 23; movesAllowed[Piece.QUEEN][ 19 ][ 2 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 19 ][ 2 ][ 1 ] = 3; movesAllowed[Piece.QUEEN][ 19 ][ 3 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 19 ][ 3 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 19 ][ 3 ][ 2 ] = 43; movesAllowed[Piece.QUEEN][ 19 ][ 3 ][ 3 ] = 51; movesAllowed[Piece.QUEEN][ 19 ][ 3 ][ 4 ] = 59; movesAllowed[Piece.QUEEN][ 19 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 19 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 19 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 19 ][ 7 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 19 ][ 4 ][ 0 ] = 10; movesAllowed[Piece.QUEEN][ 19 ][ 4 ][ 1 ] = 1; movesAllowed[Piece.QUEEN][ 19 ][ 5 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 19 ][ 5 ][ 1 ] = 5; movesAllowed[Piece.QUEEN][ 19 ][ 6 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 19 ][ 6 ][ 1 ] = 33; movesAllowed[Piece.QUEEN][ 19 ][ 6 ][ 2 ] = 40; movesAllowed[Piece.QUEEN][ 19 ][ 7 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 19 ][ 7 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 19 ][ 7 ][ 2 ] = 46; movesAllowed[Piece.QUEEN][ 19 ][ 7 ][ 3 ] = 55; movesAllowed[Piece.QUEEN][ 20 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 20 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 20 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 20 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 20 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 20 ][ 0 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 20 ][ 0 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 20 ][ 0 ][ 2 ] = 17; movesAllowed[Piece.QUEEN][ 20 ][ 0 ][ 3 ] = 16; movesAllowed[Piece.QUEEN][ 20 ][ 1 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 20 ][ 1 ][ 1 ] = 22; movesAllowed[Piece.QUEEN][ 20 ][ 1 ][ 2 ] = 23; movesAllowed[Piece.QUEEN][ 20 ][ 2 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 20 ][ 2 ][ 1 ] = 4; movesAllowed[Piece.QUEEN][ 20 ][ 3 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 20 ][ 3 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 20 ][ 3 ][ 2 ] = 44; movesAllowed[Piece.QUEEN][ 20 ][ 3 ][ 3 ] = 52; movesAllowed[Piece.QUEEN][ 20 ][ 3 ][ 4 ] = 60; movesAllowed[Piece.QUEEN][ 20 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 20 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 20 ][ 6 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 20 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 20 ][ 4 ][ 0 ] = 11; movesAllowed[Piece.QUEEN][ 20 ][ 4 ][ 1 ] = 2; movesAllowed[Piece.QUEEN][ 20 ][ 5 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 20 ][ 5 ][ 1 ] = 6; movesAllowed[Piece.QUEEN][ 20 ][ 6 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 20 ][ 6 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 20 ][ 6 ][ 2 ] = 41; movesAllowed[Piece.QUEEN][ 20 ][ 6 ][ 3 ] = 48; movesAllowed[Piece.QUEEN][ 20 ][ 7 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 20 ][ 7 ][ 1 ] = 38; movesAllowed[Piece.QUEEN][ 20 ][ 7 ][ 2 ] = 47; movesAllowed[Piece.QUEEN][ 21 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 21 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 21 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 21 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 21 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 21 ][ 0 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 21 ][ 0 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 21 ][ 0 ][ 2 ] = 18; movesAllowed[Piece.QUEEN][ 21 ][ 0 ][ 3 ] = 17; movesAllowed[Piece.QUEEN][ 21 ][ 0 ][ 4 ] = 16; movesAllowed[Piece.QUEEN][ 21 ][ 1 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 21 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.QUEEN][ 21 ][ 2 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 21 ][ 2 ][ 1 ] = 5; movesAllowed[Piece.QUEEN][ 21 ][ 3 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 21 ][ 3 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 21 ][ 3 ][ 2 ] = 45; movesAllowed[Piece.QUEEN][ 21 ][ 3 ][ 3 ] = 53; movesAllowed[Piece.QUEEN][ 21 ][ 3 ][ 4 ] = 61; movesAllowed[Piece.QUEEN][ 21 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 21 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 21 ][ 6 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 21 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 21 ][ 4 ][ 0 ] = 12; movesAllowed[Piece.QUEEN][ 21 ][ 4 ][ 1 ] = 3; movesAllowed[Piece.QUEEN][ 21 ][ 5 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 21 ][ 5 ][ 1 ] = 7; movesAllowed[Piece.QUEEN][ 21 ][ 6 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 21 ][ 6 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 21 ][ 6 ][ 2 ] = 42; movesAllowed[Piece.QUEEN][ 21 ][ 6 ][ 3 ] = 49; movesAllowed[Piece.QUEEN][ 21 ][ 6 ][ 4 ] = 56; movesAllowed[Piece.QUEEN][ 21 ][ 7 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 21 ][ 7 ][ 1 ] = 39; movesAllowed[Piece.QUEEN][ 22 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 22 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 22 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 22 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 22 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 2 ] = 19; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 3 ] = 18; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 4 ] = 17; movesAllowed[Piece.QUEEN][ 22 ][ 0 ][ 5 ] = 16; movesAllowed[Piece.QUEEN][ 22 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.QUEEN][ 22 ][ 2 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 22 ][ 2 ][ 1 ] = 6; movesAllowed[Piece.QUEEN][ 22 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 22 ][ 3 ][ 1 ] = 38; movesAllowed[Piece.QUEEN][ 22 ][ 3 ][ 2 ] = 46; movesAllowed[Piece.QUEEN][ 22 ][ 3 ][ 3 ] = 54; movesAllowed[Piece.QUEEN][ 22 ][ 3 ][ 4 ] = 62; movesAllowed[Piece.QUEEN][ 22 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 22 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 22 ][ 6 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 22 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 22 ][ 4 ][ 0 ] = 13; movesAllowed[Piece.QUEEN][ 22 ][ 4 ][ 1 ] = 4; movesAllowed[Piece.QUEEN][ 22 ][ 5 ][ 0 ] = 15; movesAllowed[Piece.QUEEN][ 22 ][ 6 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 22 ][ 6 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 22 ][ 6 ][ 2 ] = 43; movesAllowed[Piece.QUEEN][ 22 ][ 6 ][ 3 ] = 50; movesAllowed[Piece.QUEEN][ 22 ][ 6 ][ 4 ] = 57; movesAllowed[Piece.QUEEN][ 22 ][ 7 ][ 0 ] = 31; movesAllowed[Piece.QUEEN][ 23 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 23 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 23 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 23 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 2 ] = 20; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 3 ] = 19; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 4 ] = 18; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 5 ] = 17; movesAllowed[Piece.QUEEN][ 23 ][ 0 ][ 6 ] = 16; movesAllowed[Piece.QUEEN][ 23 ][ 1 ][ 0 ] = 15; movesAllowed[Piece.QUEEN][ 23 ][ 1 ][ 1 ] = 7; movesAllowed[Piece.QUEEN][ 23 ][ 2 ][ 0 ] = 31; movesAllowed[Piece.QUEEN][ 23 ][ 2 ][ 1 ] = 39; movesAllowed[Piece.QUEEN][ 23 ][ 2 ][ 2 ] = 47; movesAllowed[Piece.QUEEN][ 23 ][ 2 ][ 3 ] = 55; movesAllowed[Piece.QUEEN][ 23 ][ 2 ][ 4 ] = 63; movesAllowed[Piece.QUEEN][ 23 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 23 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 23 ][ 3 ][ 0 ] = 14; movesAllowed[Piece.QUEEN][ 23 ][ 3 ][ 1 ] = 5; movesAllowed[Piece.QUEEN][ 23 ][ 4 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 23 ][ 4 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 23 ][ 4 ][ 2 ] = 44; movesAllowed[Piece.QUEEN][ 23 ][ 4 ][ 3 ] = 51; movesAllowed[Piece.QUEEN][ 23 ][ 4 ][ 4 ] = 58; movesAllowed[Piece.QUEEN][ 24 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 24 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 24 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 24 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 24 ][ 0 ][ 0 ] = 16; movesAllowed[Piece.QUEEN][ 24 ][ 0 ][ 1 ] = 8; movesAllowed[Piece.QUEEN][ 24 ][ 0 ][ 2 ] = 8; movesAllowed[Piece.QUEEN][ 24 ][ 1 ][ 0 ] = 32; movesAllowed[Piece.QUEEN][ 24 ][ 1 ][ 1 ] = 40; movesAllowed[Piece.QUEEN][ 24 ][ 1 ][ 2 ] = 48; movesAllowed[Piece.QUEEN][ 24 ][ 1 ][ 3 ] = 56; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 3 ] = 28; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 4 ] = 29; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 5 ] = 30; movesAllowed[Piece.QUEEN][ 24 ][ 2 ][ 6 ] = 31; movesAllowed[Piece.QUEEN][ 24 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 24 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 24 ][ 3 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 24 ][ 3 ][ 1 ] = 10; movesAllowed[Piece.QUEEN][ 24 ][ 3 ][ 2 ] = 3; movesAllowed[Piece.QUEEN][ 24 ][ 4 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 24 ][ 4 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 24 ][ 4 ][ 2 ] = 51; movesAllowed[Piece.QUEEN][ 24 ][ 4 ][ 3 ] = 60; movesAllowed[Piece.QUEEN][ 25 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 25 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 25 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 25 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 25 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 25 ][ 0 ][ 0 ] = 24; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 3 ] = 29; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 4 ] = 30; movesAllowed[Piece.QUEEN][ 25 ][ 1 ][ 5 ] = 31; movesAllowed[Piece.QUEEN][ 25 ][ 2 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 25 ][ 2 ][ 1 ] = 9; movesAllowed[Piece.QUEEN][ 25 ][ 2 ][ 2 ] = 1; movesAllowed[Piece.QUEEN][ 25 ][ 3 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 25 ][ 3 ][ 1 ] = 41; movesAllowed[Piece.QUEEN][ 25 ][ 3 ][ 2 ] = 49; movesAllowed[Piece.QUEEN][ 25 ][ 3 ][ 3 ] = 57; movesAllowed[Piece.QUEEN][ 25 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 25 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 25 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 25 ][ 7 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 25 ][ 4 ][ 0 ] = 16; movesAllowed[Piece.QUEEN][ 25 ][ 5 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 25 ][ 5 ][ 1 ] = 11; movesAllowed[Piece.QUEEN][ 25 ][ 5 ][ 2 ] = 4; movesAllowed[Piece.QUEEN][ 25 ][ 6 ][ 0 ] = 32; movesAllowed[Piece.QUEEN][ 25 ][ 7 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 25 ][ 7 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 25 ][ 7 ][ 2 ] = 52; movesAllowed[Piece.QUEEN][ 25 ][ 7 ][ 3 ] = 61; movesAllowed[Piece.QUEEN][ 26 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 26 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 26 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 26 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 26 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 26 ][ 0 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 26 ][ 0 ][ 1 ] = 24; movesAllowed[Piece.QUEEN][ 26 ][ 1 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 26 ][ 1 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 26 ][ 1 ][ 2 ] = 29; movesAllowed[Piece.QUEEN][ 26 ][ 1 ][ 3 ] = 30; movesAllowed[Piece.QUEEN][ 26 ][ 1 ][ 4 ] = 31; movesAllowed[Piece.QUEEN][ 26 ][ 2 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 26 ][ 2 ][ 1 ] = 10; movesAllowed[Piece.QUEEN][ 26 ][ 2 ][ 2 ] = 2; movesAllowed[Piece.QUEEN][ 26 ][ 3 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 26 ][ 3 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 26 ][ 3 ][ 2 ] = 50; movesAllowed[Piece.QUEEN][ 26 ][ 3 ][ 3 ] = 58; movesAllowed[Piece.QUEEN][ 26 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 26 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 26 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 26 ][ 7 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 26 ][ 4 ][ 0 ] = 17; movesAllowed[Piece.QUEEN][ 26 ][ 4 ][ 1 ] = 8; movesAllowed[Piece.QUEEN][ 26 ][ 5 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 26 ][ 5 ][ 1 ] = 12; movesAllowed[Piece.QUEEN][ 26 ][ 5 ][ 2 ] = 5; movesAllowed[Piece.QUEEN][ 26 ][ 6 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 26 ][ 6 ][ 1 ] = 40; movesAllowed[Piece.QUEEN][ 26 ][ 7 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 26 ][ 7 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 26 ][ 7 ][ 2 ] = 53; movesAllowed[Piece.QUEEN][ 26 ][ 7 ][ 3 ] = 62; movesAllowed[Piece.QUEEN][ 27 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 27 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 27 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 27 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 27 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 27 ][ 0 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 27 ][ 0 ][ 1 ] = 25; movesAllowed[Piece.QUEEN][ 27 ][ 0 ][ 2 ] = 24; movesAllowed[Piece.QUEEN][ 27 ][ 1 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 27 ][ 1 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 27 ][ 1 ][ 2 ] = 30; movesAllowed[Piece.QUEEN][ 27 ][ 1 ][ 3 ] = 31; movesAllowed[Piece.QUEEN][ 27 ][ 2 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 27 ][ 2 ][ 1 ] = 11; movesAllowed[Piece.QUEEN][ 27 ][ 2 ][ 2 ] = 3; movesAllowed[Piece.QUEEN][ 27 ][ 3 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 27 ][ 3 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 27 ][ 3 ][ 2 ] = 51; movesAllowed[Piece.QUEEN][ 27 ][ 3 ][ 3 ] = 59; movesAllowed[Piece.QUEEN][ 27 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 27 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 27 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 27 ][ 7 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 27 ][ 4 ][ 0 ] = 18; movesAllowed[Piece.QUEEN][ 27 ][ 4 ][ 1 ] = 9; movesAllowed[Piece.QUEEN][ 27 ][ 4 ][ 2 ] = 0; movesAllowed[Piece.QUEEN][ 27 ][ 5 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 27 ][ 5 ][ 1 ] = 13; movesAllowed[Piece.QUEEN][ 27 ][ 5 ][ 2 ] = 6; movesAllowed[Piece.QUEEN][ 27 ][ 6 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 27 ][ 6 ][ 1 ] = 41; movesAllowed[Piece.QUEEN][ 27 ][ 6 ][ 2 ] = 48; movesAllowed[Piece.QUEEN][ 27 ][ 7 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 27 ][ 7 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 27 ][ 7 ][ 2 ] = 54; movesAllowed[Piece.QUEEN][ 27 ][ 7 ][ 3 ] = 63; movesAllowed[Piece.QUEEN][ 28 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 28 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 28 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 28 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 28 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 28 ][ 0 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 28 ][ 0 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 28 ][ 0 ][ 2 ] = 25; movesAllowed[Piece.QUEEN][ 28 ][ 0 ][ 3 ] = 24; movesAllowed[Piece.QUEEN][ 28 ][ 1 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 28 ][ 1 ][ 1 ] = 30; movesAllowed[Piece.QUEEN][ 28 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.QUEEN][ 28 ][ 2 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 28 ][ 2 ][ 1 ] = 12; movesAllowed[Piece.QUEEN][ 28 ][ 2 ][ 2 ] = 4; movesAllowed[Piece.QUEEN][ 28 ][ 3 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 28 ][ 3 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 28 ][ 3 ][ 2 ] = 52; movesAllowed[Piece.QUEEN][ 28 ][ 3 ][ 3 ] = 60; movesAllowed[Piece.QUEEN][ 28 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 28 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 28 ][ 6 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 28 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 28 ][ 4 ][ 0 ] = 19; movesAllowed[Piece.QUEEN][ 28 ][ 4 ][ 1 ] = 10; movesAllowed[Piece.QUEEN][ 28 ][ 4 ][ 2 ] = 1; movesAllowed[Piece.QUEEN][ 28 ][ 5 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 28 ][ 5 ][ 1 ] = 14; movesAllowed[Piece.QUEEN][ 28 ][ 5 ][ 2 ] = 7; movesAllowed[Piece.QUEEN][ 28 ][ 6 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 28 ][ 6 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 28 ][ 6 ][ 2 ] = 49; movesAllowed[Piece.QUEEN][ 28 ][ 6 ][ 3 ] = 56; movesAllowed[Piece.QUEEN][ 28 ][ 7 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 28 ][ 7 ][ 1 ] = 46; movesAllowed[Piece.QUEEN][ 28 ][ 7 ][ 2 ] = 55; movesAllowed[Piece.QUEEN][ 29 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 29 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 29 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 29 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 29 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 29 ][ 0 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 29 ][ 0 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 29 ][ 0 ][ 2 ] = 26; movesAllowed[Piece.QUEEN][ 29 ][ 0 ][ 3 ] = 25; movesAllowed[Piece.QUEEN][ 29 ][ 0 ][ 4 ] = 24; movesAllowed[Piece.QUEEN][ 29 ][ 1 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 29 ][ 1 ][ 1 ] = 31; movesAllowed[Piece.QUEEN][ 29 ][ 2 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 29 ][ 2 ][ 1 ] = 13; movesAllowed[Piece.QUEEN][ 29 ][ 2 ][ 2 ] = 5; movesAllowed[Piece.QUEEN][ 29 ][ 3 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 29 ][ 3 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 29 ][ 3 ][ 2 ] = 53; movesAllowed[Piece.QUEEN][ 29 ][ 3 ][ 3 ] = 61; movesAllowed[Piece.QUEEN][ 29 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 29 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 29 ][ 6 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 29 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 29 ][ 4 ][ 0 ] = 20; movesAllowed[Piece.QUEEN][ 29 ][ 4 ][ 1 ] = 11; movesAllowed[Piece.QUEEN][ 29 ][ 4 ][ 2 ] = 2; movesAllowed[Piece.QUEEN][ 29 ][ 5 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 29 ][ 5 ][ 1 ] = 15; movesAllowed[Piece.QUEEN][ 29 ][ 6 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 29 ][ 6 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 29 ][ 6 ][ 2 ] = 50; movesAllowed[Piece.QUEEN][ 29 ][ 6 ][ 3 ] = 57; movesAllowed[Piece.QUEEN][ 29 ][ 7 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 29 ][ 7 ][ 1 ] = 47; movesAllowed[Piece.QUEEN][ 30 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 30 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 30 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 30 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 30 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 3 ] = 26; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 4 ] = 25; movesAllowed[Piece.QUEEN][ 30 ][ 0 ][ 5 ] = 24; movesAllowed[Piece.QUEEN][ 30 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.QUEEN][ 30 ][ 2 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 30 ][ 2 ][ 1 ] = 14; movesAllowed[Piece.QUEEN][ 30 ][ 2 ][ 2 ] = 6; movesAllowed[Piece.QUEEN][ 30 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 30 ][ 3 ][ 1 ] = 46; movesAllowed[Piece.QUEEN][ 30 ][ 3 ][ 2 ] = 54; movesAllowed[Piece.QUEEN][ 30 ][ 3 ][ 3 ] = 62; movesAllowed[Piece.QUEEN][ 30 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 30 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 30 ][ 6 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 30 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 30 ][ 4 ][ 0 ] = 21; movesAllowed[Piece.QUEEN][ 30 ][ 4 ][ 1 ] = 12; movesAllowed[Piece.QUEEN][ 30 ][ 4 ][ 2 ] = 3; movesAllowed[Piece.QUEEN][ 30 ][ 5 ][ 0 ] = 23; movesAllowed[Piece.QUEEN][ 30 ][ 6 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 30 ][ 6 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 30 ][ 6 ][ 2 ] = 51; movesAllowed[Piece.QUEEN][ 30 ][ 6 ][ 3 ] = 58; movesAllowed[Piece.QUEEN][ 30 ][ 7 ][ 0 ] = 39; movesAllowed[Piece.QUEEN][ 31 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 31 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 31 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 31 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 3 ] = 27; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 4 ] = 26; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 5 ] = 25; movesAllowed[Piece.QUEEN][ 31 ][ 0 ][ 6 ] = 24; movesAllowed[Piece.QUEEN][ 31 ][ 1 ][ 0 ] = 23; movesAllowed[Piece.QUEEN][ 31 ][ 1 ][ 1 ] = 15; movesAllowed[Piece.QUEEN][ 31 ][ 1 ][ 2 ] = 7; movesAllowed[Piece.QUEEN][ 31 ][ 2 ][ 0 ] = 39; movesAllowed[Piece.QUEEN][ 31 ][ 2 ][ 1 ] = 47; movesAllowed[Piece.QUEEN][ 31 ][ 2 ][ 2 ] = 55; movesAllowed[Piece.QUEEN][ 31 ][ 2 ][ 3 ] = 63; movesAllowed[Piece.QUEEN][ 31 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 31 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 31 ][ 3 ][ 0 ] = 22; movesAllowed[Piece.QUEEN][ 31 ][ 3 ][ 1 ] = 13; movesAllowed[Piece.QUEEN][ 31 ][ 3 ][ 2 ] = 4; movesAllowed[Piece.QUEEN][ 31 ][ 4 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 31 ][ 4 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 31 ][ 4 ][ 2 ] = 52; movesAllowed[Piece.QUEEN][ 31 ][ 4 ][ 3 ] = 59; movesAllowed[Piece.QUEEN][ 32 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 32 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 32 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 32 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 3 ] = 36; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 4 ] = 37; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 5 ] = 38; movesAllowed[Piece.QUEEN][ 32 ][ 0 ][ 6 ] = 39; movesAllowed[Piece.QUEEN][ 32 ][ 1 ][ 0 ] = 40; movesAllowed[Piece.QUEEN][ 32 ][ 1 ][ 1 ] = 48; movesAllowed[Piece.QUEEN][ 32 ][ 1 ][ 2 ] = 56; movesAllowed[Piece.QUEEN][ 32 ][ 2 ][ 0 ] = 24; movesAllowed[Piece.QUEEN][ 32 ][ 2 ][ 1 ] = 16; movesAllowed[Piece.QUEEN][ 32 ][ 2 ][ 2 ] = 8; movesAllowed[Piece.QUEEN][ 32 ][ 2 ][ 3 ] = 0; movesAllowed[Piece.QUEEN][ 32 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 32 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 32 ][ 3 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 32 ][ 3 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 32 ][ 3 ][ 2 ] = 11; movesAllowed[Piece.QUEEN][ 32 ][ 3 ][ 3 ] = 4; movesAllowed[Piece.QUEEN][ 32 ][ 4 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 32 ][ 4 ][ 1 ] = 50; movesAllowed[Piece.QUEEN][ 32 ][ 4 ][ 2 ] = 59; movesAllowed[Piece.QUEEN][ 33 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 33 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 33 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 33 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 33 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 33 ][ 0 ][ 0 ] = 32; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 3 ] = 37; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 4 ] = 38; movesAllowed[Piece.QUEEN][ 33 ][ 1 ][ 5 ] = 39; movesAllowed[Piece.QUEEN][ 33 ][ 2 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 33 ][ 2 ][ 1 ] = 17; movesAllowed[Piece.QUEEN][ 33 ][ 2 ][ 2 ] = 9; movesAllowed[Piece.QUEEN][ 33 ][ 2 ][ 3 ] = 1; movesAllowed[Piece.QUEEN][ 33 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 33 ][ 3 ][ 1 ] = 49; movesAllowed[Piece.QUEEN][ 33 ][ 3 ][ 2 ] = 57; movesAllowed[Piece.QUEEN][ 33 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 33 ][ 5 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 33 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 33 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 33 ][ 4 ][ 0 ] = 24; movesAllowed[Piece.QUEEN][ 33 ][ 5 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 33 ][ 5 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 33 ][ 5 ][ 2 ] = 12; movesAllowed[Piece.QUEEN][ 33 ][ 5 ][ 3 ] = 5; movesAllowed[Piece.QUEEN][ 33 ][ 6 ][ 0 ] = 40; movesAllowed[Piece.QUEEN][ 33 ][ 7 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 33 ][ 7 ][ 1 ] = 51; movesAllowed[Piece.QUEEN][ 33 ][ 7 ][ 2 ] = 60; movesAllowed[Piece.QUEEN][ 34 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 34 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 34 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 34 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 34 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 34 ][ 0 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 34 ][ 0 ][ 1 ] = 32; movesAllowed[Piece.QUEEN][ 34 ][ 1 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 34 ][ 1 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 34 ][ 1 ][ 2 ] = 37; movesAllowed[Piece.QUEEN][ 34 ][ 1 ][ 3 ] = 38; movesAllowed[Piece.QUEEN][ 34 ][ 1 ][ 4 ] = 39; movesAllowed[Piece.QUEEN][ 34 ][ 2 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 34 ][ 2 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 34 ][ 2 ][ 2 ] = 10; movesAllowed[Piece.QUEEN][ 34 ][ 2 ][ 3 ] = 2; movesAllowed[Piece.QUEEN][ 34 ][ 3 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 34 ][ 3 ][ 1 ] = 50; movesAllowed[Piece.QUEEN][ 34 ][ 3 ][ 2 ] = 58; movesAllowed[Piece.QUEEN][ 34 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 34 ][ 5 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 34 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 34 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 34 ][ 4 ][ 0 ] = 25; movesAllowed[Piece.QUEEN][ 34 ][ 4 ][ 1 ] = 16; movesAllowed[Piece.QUEEN][ 34 ][ 5 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 34 ][ 5 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 34 ][ 5 ][ 2 ] = 13; movesAllowed[Piece.QUEEN][ 34 ][ 5 ][ 3 ] = 6; movesAllowed[Piece.QUEEN][ 34 ][ 6 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 34 ][ 6 ][ 1 ] = 48; movesAllowed[Piece.QUEEN][ 34 ][ 7 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 34 ][ 7 ][ 1 ] = 52; movesAllowed[Piece.QUEEN][ 34 ][ 7 ][ 2 ] = 61; movesAllowed[Piece.QUEEN][ 35 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 35 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 35 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 35 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 35 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 35 ][ 0 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 35 ][ 0 ][ 1 ] = 33; movesAllowed[Piece.QUEEN][ 35 ][ 0 ][ 2 ] = 32; movesAllowed[Piece.QUEEN][ 35 ][ 1 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 35 ][ 1 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 35 ][ 1 ][ 2 ] = 38; movesAllowed[Piece.QUEEN][ 35 ][ 1 ][ 3 ] = 39; movesAllowed[Piece.QUEEN][ 35 ][ 2 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 35 ][ 2 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 35 ][ 2 ][ 2 ] = 11; movesAllowed[Piece.QUEEN][ 35 ][ 2 ][ 3 ] = 3; movesAllowed[Piece.QUEEN][ 35 ][ 3 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 35 ][ 3 ][ 1 ] = 51; movesAllowed[Piece.QUEEN][ 35 ][ 3 ][ 2 ] = 59; movesAllowed[Piece.QUEEN][ 35 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 35 ][ 5 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 35 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 35 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 35 ][ 4 ][ 0 ] = 26; movesAllowed[Piece.QUEEN][ 35 ][ 4 ][ 1 ] = 17; movesAllowed[Piece.QUEEN][ 35 ][ 4 ][ 2 ] = 8; movesAllowed[Piece.QUEEN][ 35 ][ 5 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 35 ][ 5 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 35 ][ 5 ][ 2 ] = 14; movesAllowed[Piece.QUEEN][ 35 ][ 5 ][ 3 ] = 7; movesAllowed[Piece.QUEEN][ 35 ][ 6 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 35 ][ 6 ][ 1 ] = 49; movesAllowed[Piece.QUEEN][ 35 ][ 6 ][ 2 ] = 56; movesAllowed[Piece.QUEEN][ 35 ][ 7 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 35 ][ 7 ][ 1 ] = 53; movesAllowed[Piece.QUEEN][ 35 ][ 7 ][ 2 ] = 62; movesAllowed[Piece.QUEEN][ 36 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 36 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 36 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 36 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 36 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 36 ][ 0 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 36 ][ 0 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 36 ][ 0 ][ 2 ] = 33; movesAllowed[Piece.QUEEN][ 36 ][ 0 ][ 3 ] = 32; movesAllowed[Piece.QUEEN][ 36 ][ 1 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 36 ][ 1 ][ 1 ] = 38; movesAllowed[Piece.QUEEN][ 36 ][ 1 ][ 2 ] = 39; movesAllowed[Piece.QUEEN][ 36 ][ 2 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 36 ][ 2 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 36 ][ 2 ][ 2 ] = 12; movesAllowed[Piece.QUEEN][ 36 ][ 2 ][ 3 ] = 4; movesAllowed[Piece.QUEEN][ 36 ][ 3 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 36 ][ 3 ][ 1 ] = 52; movesAllowed[Piece.QUEEN][ 36 ][ 3 ][ 2 ] = 60; movesAllowed[Piece.QUEEN][ 36 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 36 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 36 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 36 ][ 7 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 36 ][ 4 ][ 0 ] = 27; movesAllowed[Piece.QUEEN][ 36 ][ 4 ][ 1 ] = 18; movesAllowed[Piece.QUEEN][ 36 ][ 4 ][ 2 ] = 9; movesAllowed[Piece.QUEEN][ 36 ][ 4 ][ 3 ] = 0; movesAllowed[Piece.QUEEN][ 36 ][ 5 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 36 ][ 5 ][ 1 ] = 22; movesAllowed[Piece.QUEEN][ 36 ][ 5 ][ 2 ] = 15; movesAllowed[Piece.QUEEN][ 36 ][ 6 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 36 ][ 6 ][ 1 ] = 50; movesAllowed[Piece.QUEEN][ 36 ][ 6 ][ 2 ] = 57; movesAllowed[Piece.QUEEN][ 36 ][ 7 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 36 ][ 7 ][ 1 ] = 54; movesAllowed[Piece.QUEEN][ 36 ][ 7 ][ 2 ] = 63; movesAllowed[Piece.QUEEN][ 37 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 37 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 37 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 37 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 37 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 37 ][ 0 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 37 ][ 0 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 37 ][ 0 ][ 2 ] = 34; movesAllowed[Piece.QUEEN][ 37 ][ 0 ][ 3 ] = 33; movesAllowed[Piece.QUEEN][ 37 ][ 0 ][ 4 ] = 32; movesAllowed[Piece.QUEEN][ 37 ][ 1 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 37 ][ 1 ][ 1 ] = 39; movesAllowed[Piece.QUEEN][ 37 ][ 2 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 37 ][ 2 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 37 ][ 2 ][ 2 ] = 13; movesAllowed[Piece.QUEEN][ 37 ][ 2 ][ 3 ] = 5; movesAllowed[Piece.QUEEN][ 37 ][ 3 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 37 ][ 3 ][ 1 ] = 53; movesAllowed[Piece.QUEEN][ 37 ][ 3 ][ 2 ] = 61; movesAllowed[Piece.QUEEN][ 37 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 37 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 37 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 37 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 37 ][ 4 ][ 0 ] = 28; movesAllowed[Piece.QUEEN][ 37 ][ 4 ][ 1 ] = 19; movesAllowed[Piece.QUEEN][ 37 ][ 4 ][ 2 ] = 10; movesAllowed[Piece.QUEEN][ 37 ][ 4 ][ 3 ] = 1; movesAllowed[Piece.QUEEN][ 37 ][ 5 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 37 ][ 5 ][ 1 ] = 23; movesAllowed[Piece.QUEEN][ 37 ][ 6 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 37 ][ 6 ][ 1 ] = 51; movesAllowed[Piece.QUEEN][ 37 ][ 6 ][ 2 ] = 58; movesAllowed[Piece.QUEEN][ 37 ][ 7 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 37 ][ 7 ][ 1 ] = 55; movesAllowed[Piece.QUEEN][ 38 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 38 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 38 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 38 ][ 2 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 38 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 3 ] = 34; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 4 ] = 33; movesAllowed[Piece.QUEEN][ 38 ][ 0 ][ 5 ] = 32; movesAllowed[Piece.QUEEN][ 38 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.QUEEN][ 38 ][ 2 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 38 ][ 2 ][ 1 ] = 22; movesAllowed[Piece.QUEEN][ 38 ][ 2 ][ 2 ] = 14; movesAllowed[Piece.QUEEN][ 38 ][ 2 ][ 3 ] = 6; movesAllowed[Piece.QUEEN][ 38 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 38 ][ 3 ][ 1 ] = 54; movesAllowed[Piece.QUEEN][ 38 ][ 3 ][ 2 ] = 62; movesAllowed[Piece.QUEEN][ 38 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 38 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 38 ][ 6 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 38 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 38 ][ 4 ][ 0 ] = 29; movesAllowed[Piece.QUEEN][ 38 ][ 4 ][ 1 ] = 20; movesAllowed[Piece.QUEEN][ 38 ][ 4 ][ 2 ] = 11; movesAllowed[Piece.QUEEN][ 38 ][ 4 ][ 3 ] = 2; movesAllowed[Piece.QUEEN][ 38 ][ 5 ][ 0 ] = 31; movesAllowed[Piece.QUEEN][ 38 ][ 6 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 38 ][ 6 ][ 1 ] = 52; movesAllowed[Piece.QUEEN][ 38 ][ 6 ][ 2 ] = 59; movesAllowed[Piece.QUEEN][ 38 ][ 7 ][ 0 ] = 47; movesAllowed[Piece.QUEEN][ 39 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 39 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 39 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 39 ][ 2 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 3 ] = 35; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 4 ] = 34; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 5 ] = 33; movesAllowed[Piece.QUEEN][ 39 ][ 0 ][ 6 ] = 32; movesAllowed[Piece.QUEEN][ 39 ][ 1 ][ 0 ] = 31; movesAllowed[Piece.QUEEN][ 39 ][ 1 ][ 1 ] = 23; movesAllowed[Piece.QUEEN][ 39 ][ 1 ][ 2 ] = 15; movesAllowed[Piece.QUEEN][ 39 ][ 1 ][ 3 ] = 7; movesAllowed[Piece.QUEEN][ 39 ][ 2 ][ 0 ] = 47; movesAllowed[Piece.QUEEN][ 39 ][ 2 ][ 1 ] = 55; movesAllowed[Piece.QUEEN][ 39 ][ 2 ][ 2 ] = 63; movesAllowed[Piece.QUEEN][ 39 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 39 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 39 ][ 3 ][ 0 ] = 30; movesAllowed[Piece.QUEEN][ 39 ][ 3 ][ 1 ] = 21; movesAllowed[Piece.QUEEN][ 39 ][ 3 ][ 2 ] = 12; movesAllowed[Piece.QUEEN][ 39 ][ 3 ][ 3 ] = 3; movesAllowed[Piece.QUEEN][ 39 ][ 4 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 39 ][ 4 ][ 1 ] = 53; movesAllowed[Piece.QUEEN][ 39 ][ 4 ][ 2 ] = 60; movesAllowed[Piece.QUEEN][ 40 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 40 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 40 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 40 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 2 ] = 43; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 3 ] = 44; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 4 ] = 45; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 5 ] = 46; movesAllowed[Piece.QUEEN][ 40 ][ 0 ][ 6 ] = 47; movesAllowed[Piece.QUEEN][ 40 ][ 1 ][ 0 ] = 32; movesAllowed[Piece.QUEEN][ 40 ][ 1 ][ 1 ] = 24; movesAllowed[Piece.QUEEN][ 40 ][ 1 ][ 2 ] = 16; movesAllowed[Piece.QUEEN][ 40 ][ 1 ][ 3 ] = 8; movesAllowed[Piece.QUEEN][ 40 ][ 1 ][ 4 ] = 0; movesAllowed[Piece.QUEEN][ 40 ][ 2 ][ 0 ] = 48; movesAllowed[Piece.QUEEN][ 40 ][ 2 ][ 1 ] = 56; movesAllowed[Piece.QUEEN][ 40 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 40 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 40 ][ 3 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 40 ][ 3 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 40 ][ 3 ][ 2 ] = 19; movesAllowed[Piece.QUEEN][ 40 ][ 3 ][ 3 ] = 12; movesAllowed[Piece.QUEEN][ 40 ][ 3 ][ 4 ] = 5; movesAllowed[Piece.QUEEN][ 40 ][ 4 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 40 ][ 4 ][ 1 ] = 58; movesAllowed[Piece.QUEEN][ 41 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 41 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 41 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 41 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 41 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 41 ][ 0 ][ 0 ] = 40; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 2 ] = 44; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 3 ] = 45; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 4 ] = 46; movesAllowed[Piece.QUEEN][ 41 ][ 1 ][ 5 ] = 47; movesAllowed[Piece.QUEEN][ 41 ][ 2 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 41 ][ 2 ][ 1 ] = 25; movesAllowed[Piece.QUEEN][ 41 ][ 2 ][ 2 ] = 17; movesAllowed[Piece.QUEEN][ 41 ][ 2 ][ 3 ] = 9; movesAllowed[Piece.QUEEN][ 41 ][ 2 ][ 4 ] = 1; movesAllowed[Piece.QUEEN][ 41 ][ 3 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 41 ][ 3 ][ 1 ] = 57; movesAllowed[Piece.QUEEN][ 41 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 41 ][ 5 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 41 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 41 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 41 ][ 4 ][ 0 ] = 32; movesAllowed[Piece.QUEEN][ 41 ][ 5 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 41 ][ 5 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 41 ][ 5 ][ 2 ] = 20; movesAllowed[Piece.QUEEN][ 41 ][ 5 ][ 3 ] = 13; movesAllowed[Piece.QUEEN][ 41 ][ 5 ][ 4 ] = 6; movesAllowed[Piece.QUEEN][ 41 ][ 6 ][ 0 ] = 48; movesAllowed[Piece.QUEEN][ 41 ][ 7 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 41 ][ 7 ][ 1 ] = 59; movesAllowed[Piece.QUEEN][ 42 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 42 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 42 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 42 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 42 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 42 ][ 0 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 42 ][ 0 ][ 1 ] = 40; movesAllowed[Piece.QUEEN][ 42 ][ 1 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 42 ][ 1 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 42 ][ 1 ][ 2 ] = 45; movesAllowed[Piece.QUEEN][ 42 ][ 1 ][ 3 ] = 46; movesAllowed[Piece.QUEEN][ 42 ][ 1 ][ 4 ] = 47; movesAllowed[Piece.QUEEN][ 42 ][ 2 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 42 ][ 2 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 42 ][ 2 ][ 2 ] = 18; movesAllowed[Piece.QUEEN][ 42 ][ 2 ][ 3 ] = 10; movesAllowed[Piece.QUEEN][ 42 ][ 2 ][ 4 ] = 2; movesAllowed[Piece.QUEEN][ 42 ][ 3 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 42 ][ 3 ][ 1 ] = 58; movesAllowed[Piece.QUEEN][ 42 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 42 ][ 5 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 42 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 42 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 42 ][ 4 ][ 0 ] = 33; movesAllowed[Piece.QUEEN][ 42 ][ 4 ][ 1 ] = 24; movesAllowed[Piece.QUEEN][ 42 ][ 5 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 42 ][ 5 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 42 ][ 5 ][ 2 ] = 21; movesAllowed[Piece.QUEEN][ 42 ][ 5 ][ 3 ] = 14; movesAllowed[Piece.QUEEN][ 42 ][ 5 ][ 4 ] = 7; movesAllowed[Piece.QUEEN][ 42 ][ 6 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 42 ][ 6 ][ 1 ] = 56; movesAllowed[Piece.QUEEN][ 42 ][ 7 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 42 ][ 7 ][ 1 ] = 60; movesAllowed[Piece.QUEEN][ 43 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 43 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 43 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 43 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 43 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 43 ][ 0 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 43 ][ 0 ][ 1 ] = 41; movesAllowed[Piece.QUEEN][ 43 ][ 0 ][ 2 ] = 40; movesAllowed[Piece.QUEEN][ 43 ][ 1 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 43 ][ 1 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 43 ][ 1 ][ 2 ] = 46; movesAllowed[Piece.QUEEN][ 43 ][ 1 ][ 3 ] = 47; movesAllowed[Piece.QUEEN][ 43 ][ 2 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 43 ][ 2 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 43 ][ 2 ][ 2 ] = 19; movesAllowed[Piece.QUEEN][ 43 ][ 2 ][ 3 ] = 11; movesAllowed[Piece.QUEEN][ 43 ][ 2 ][ 4 ] = 3; movesAllowed[Piece.QUEEN][ 43 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 43 ][ 3 ][ 1 ] = 59; movesAllowed[Piece.QUEEN][ 43 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 43 ][ 5 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 43 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 43 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 43 ][ 4 ][ 0 ] = 34; movesAllowed[Piece.QUEEN][ 43 ][ 4 ][ 1 ] = 25; movesAllowed[Piece.QUEEN][ 43 ][ 4 ][ 2 ] = 16; movesAllowed[Piece.QUEEN][ 43 ][ 5 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 43 ][ 5 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 43 ][ 5 ][ 2 ] = 22; movesAllowed[Piece.QUEEN][ 43 ][ 5 ][ 3 ] = 15; movesAllowed[Piece.QUEEN][ 43 ][ 6 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 43 ][ 6 ][ 1 ] = 57; movesAllowed[Piece.QUEEN][ 43 ][ 7 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 43 ][ 7 ][ 1 ] = 61; movesAllowed[Piece.QUEEN][ 44 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 44 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 44 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 44 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 44 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 44 ][ 0 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 44 ][ 0 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 44 ][ 0 ][ 2 ] = 41; movesAllowed[Piece.QUEEN][ 44 ][ 0 ][ 3 ] = 40; movesAllowed[Piece.QUEEN][ 44 ][ 1 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 44 ][ 1 ][ 1 ] = 46; movesAllowed[Piece.QUEEN][ 44 ][ 1 ][ 2 ] = 47; movesAllowed[Piece.QUEEN][ 44 ][ 2 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 44 ][ 2 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 44 ][ 2 ][ 2 ] = 20; movesAllowed[Piece.QUEEN][ 44 ][ 2 ][ 3 ] = 12; movesAllowed[Piece.QUEEN][ 44 ][ 2 ][ 4 ] = 4; movesAllowed[Piece.QUEEN][ 44 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 44 ][ 3 ][ 1 ] = 60; movesAllowed[Piece.QUEEN][ 44 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 44 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 44 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 44 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 44 ][ 4 ][ 0 ] = 35; movesAllowed[Piece.QUEEN][ 44 ][ 4 ][ 1 ] = 26; movesAllowed[Piece.QUEEN][ 44 ][ 4 ][ 2 ] = 17; movesAllowed[Piece.QUEEN][ 44 ][ 4 ][ 3 ] = 8; movesAllowed[Piece.QUEEN][ 44 ][ 5 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 44 ][ 5 ][ 1 ] = 30; movesAllowed[Piece.QUEEN][ 44 ][ 5 ][ 2 ] = 23; movesAllowed[Piece.QUEEN][ 44 ][ 6 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 44 ][ 6 ][ 1 ] = 58; movesAllowed[Piece.QUEEN][ 44 ][ 7 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 44 ][ 7 ][ 1 ] = 62; movesAllowed[Piece.QUEEN][ 45 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 45 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 45 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 45 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 45 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 45 ][ 0 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 45 ][ 0 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 45 ][ 0 ][ 2 ] = 42; movesAllowed[Piece.QUEEN][ 45 ][ 0 ][ 3 ] = 41; movesAllowed[Piece.QUEEN][ 45 ][ 0 ][ 4 ] = 40; movesAllowed[Piece.QUEEN][ 45 ][ 1 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 45 ][ 1 ][ 1 ] = 47; movesAllowed[Piece.QUEEN][ 45 ][ 2 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 45 ][ 2 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 45 ][ 2 ][ 2 ] = 21; movesAllowed[Piece.QUEEN][ 45 ][ 2 ][ 3 ] = 13; movesAllowed[Piece.QUEEN][ 45 ][ 2 ][ 4 ] = 5; movesAllowed[Piece.QUEEN][ 45 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 45 ][ 3 ][ 1 ] = 61; movesAllowed[Piece.QUEEN][ 45 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 45 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 45 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 45 ][ 7 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 45 ][ 4 ][ 0 ] = 36; movesAllowed[Piece.QUEEN][ 45 ][ 4 ][ 1 ] = 27; movesAllowed[Piece.QUEEN][ 45 ][ 4 ][ 2 ] = 18; movesAllowed[Piece.QUEEN][ 45 ][ 4 ][ 3 ] = 9; movesAllowed[Piece.QUEEN][ 45 ][ 4 ][ 4 ] = 0; movesAllowed[Piece.QUEEN][ 45 ][ 5 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 45 ][ 5 ][ 1 ] = 31; movesAllowed[Piece.QUEEN][ 45 ][ 6 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 45 ][ 6 ][ 1 ] = 59; movesAllowed[Piece.QUEEN][ 45 ][ 7 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 45 ][ 7 ][ 1 ] = 63; movesAllowed[Piece.QUEEN][ 46 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 46 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 46 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 46 ][ 2 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 46 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 2 ] = 43; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 3 ] = 42; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 4 ] = 41; movesAllowed[Piece.QUEEN][ 46 ][ 0 ][ 5 ] = 40; movesAllowed[Piece.QUEEN][ 46 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.QUEEN][ 46 ][ 2 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 46 ][ 2 ][ 1 ] = 30; movesAllowed[Piece.QUEEN][ 46 ][ 2 ][ 2 ] = 22; movesAllowed[Piece.QUEEN][ 46 ][ 2 ][ 3 ] = 14; movesAllowed[Piece.QUEEN][ 46 ][ 2 ][ 4 ] = 6; movesAllowed[Piece.QUEEN][ 46 ][ 3 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 46 ][ 3 ][ 1 ] = 62; movesAllowed[Piece.QUEEN][ 46 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 46 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 46 ][ 6 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 46 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 46 ][ 4 ][ 0 ] = 37; movesAllowed[Piece.QUEEN][ 46 ][ 4 ][ 1 ] = 28; movesAllowed[Piece.QUEEN][ 46 ][ 4 ][ 2 ] = 19; movesAllowed[Piece.QUEEN][ 46 ][ 4 ][ 3 ] = 10; movesAllowed[Piece.QUEEN][ 46 ][ 4 ][ 4 ] = 1; movesAllowed[Piece.QUEEN][ 46 ][ 5 ][ 0 ] = 39; movesAllowed[Piece.QUEEN][ 46 ][ 6 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 46 ][ 6 ][ 1 ] = 60; movesAllowed[Piece.QUEEN][ 46 ][ 7 ][ 0 ] = 55; movesAllowed[Piece.QUEEN][ 47 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 47 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 47 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 47 ][ 2 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 2 ] = 44; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 3 ] = 43; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 4 ] = 42; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 5 ] = 41; movesAllowed[Piece.QUEEN][ 47 ][ 0 ][ 6 ] = 40; movesAllowed[Piece.QUEEN][ 47 ][ 1 ][ 0 ] = 39; movesAllowed[Piece.QUEEN][ 47 ][ 1 ][ 1 ] = 31; movesAllowed[Piece.QUEEN][ 47 ][ 1 ][ 2 ] = 23; movesAllowed[Piece.QUEEN][ 47 ][ 1 ][ 3 ] = 15; movesAllowed[Piece.QUEEN][ 47 ][ 1 ][ 4 ] = 7; movesAllowed[Piece.QUEEN][ 47 ][ 2 ][ 0 ] = 55; movesAllowed[Piece.QUEEN][ 47 ][ 2 ][ 1 ] = 63; movesAllowed[Piece.QUEEN][ 47 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 47 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 47 ][ 3 ][ 0 ] = 38; movesAllowed[Piece.QUEEN][ 47 ][ 3 ][ 1 ] = 29; movesAllowed[Piece.QUEEN][ 47 ][ 3 ][ 2 ] = 20; movesAllowed[Piece.QUEEN][ 47 ][ 3 ][ 3 ] = 11; movesAllowed[Piece.QUEEN][ 47 ][ 3 ][ 4 ] = 2; movesAllowed[Piece.QUEEN][ 47 ][ 4 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 47 ][ 4 ][ 1 ] = 61; movesAllowed[Piece.QUEEN][ 48 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 48 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 48 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 48 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 1 ] = 50; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 2 ] = 51; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 3 ] = 52; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 4 ] = 53; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 5 ] = 54; movesAllowed[Piece.QUEEN][ 48 ][ 0 ][ 6 ] = 55; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 0 ] = 40; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 1 ] = 32; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 2 ] = 24; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 3 ] = 16; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 4 ] = 8; movesAllowed[Piece.QUEEN][ 48 ][ 1 ][ 5 ] = 0; movesAllowed[Piece.QUEEN][ 48 ][ 2 ][ 0 ] = 56; movesAllowed[Piece.QUEEN][ 48 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 48 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 3 ] = 20; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 4 ] = 13; movesAllowed[Piece.QUEEN][ 48 ][ 3 ][ 5 ] = 6; movesAllowed[Piece.QUEEN][ 48 ][ 4 ][ 0 ] = 57; movesAllowed[Piece.QUEEN][ 49 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 49 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 49 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 49 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 49 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 49 ][ 0 ][ 0 ] = 48; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 1 ] = 51; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 2 ] = 52; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 3 ] = 53; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 4 ] = 54; movesAllowed[Piece.QUEEN][ 49 ][ 1 ][ 5 ] = 55; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 1 ] = 33; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 2 ] = 25; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 3 ] = 17; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 4 ] = 9; movesAllowed[Piece.QUEEN][ 49 ][ 2 ][ 5 ] = 1; movesAllowed[Piece.QUEEN][ 49 ][ 3 ][ 0 ] = 57; movesAllowed[Piece.QUEEN][ 49 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 49 ][ 5 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 49 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 49 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 49 ][ 4 ][ 0 ] = 40; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 3 ] = 21; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 4 ] = 14; movesAllowed[Piece.QUEEN][ 49 ][ 5 ][ 5 ] = 7; movesAllowed[Piece.QUEEN][ 49 ][ 6 ][ 0 ] = 56; movesAllowed[Piece.QUEEN][ 49 ][ 7 ][ 0 ] = 58; movesAllowed[Piece.QUEEN][ 50 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 50 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 50 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 50 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 50 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 50 ][ 0 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 50 ][ 0 ][ 1 ] = 48; movesAllowed[Piece.QUEEN][ 50 ][ 1 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 50 ][ 1 ][ 1 ] = 52; movesAllowed[Piece.QUEEN][ 50 ][ 1 ][ 2 ] = 53; movesAllowed[Piece.QUEEN][ 50 ][ 1 ][ 3 ] = 54; movesAllowed[Piece.QUEEN][ 50 ][ 1 ][ 4 ] = 55; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 2 ] = 26; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 3 ] = 18; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 4 ] = 10; movesAllowed[Piece.QUEEN][ 50 ][ 2 ][ 5 ] = 2; movesAllowed[Piece.QUEEN][ 50 ][ 3 ][ 0 ] = 58; movesAllowed[Piece.QUEEN][ 50 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 50 ][ 5 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 50 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 50 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 50 ][ 4 ][ 0 ] = 41; movesAllowed[Piece.QUEEN][ 50 ][ 4 ][ 1 ] = 32; movesAllowed[Piece.QUEEN][ 50 ][ 5 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 50 ][ 5 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 50 ][ 5 ][ 2 ] = 29; movesAllowed[Piece.QUEEN][ 50 ][ 5 ][ 3 ] = 22; movesAllowed[Piece.QUEEN][ 50 ][ 5 ][ 4 ] = 15; movesAllowed[Piece.QUEEN][ 50 ][ 6 ][ 0 ] = 57; movesAllowed[Piece.QUEEN][ 50 ][ 7 ][ 0 ] = 59; movesAllowed[Piece.QUEEN][ 51 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 51 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 51 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 51 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 51 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 51 ][ 0 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 51 ][ 0 ][ 1 ] = 49; movesAllowed[Piece.QUEEN][ 51 ][ 0 ][ 2 ] = 48; movesAllowed[Piece.QUEEN][ 51 ][ 1 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 51 ][ 1 ][ 1 ] = 53; movesAllowed[Piece.QUEEN][ 51 ][ 1 ][ 2 ] = 54; movesAllowed[Piece.QUEEN][ 51 ][ 1 ][ 3 ] = 55; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 3 ] = 19; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 4 ] = 11; movesAllowed[Piece.QUEEN][ 51 ][ 2 ][ 5 ] = 3; movesAllowed[Piece.QUEEN][ 51 ][ 3 ][ 0 ] = 59; movesAllowed[Piece.QUEEN][ 51 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 51 ][ 5 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 51 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 51 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 51 ][ 4 ][ 0 ] = 42; movesAllowed[Piece.QUEEN][ 51 ][ 4 ][ 1 ] = 33; movesAllowed[Piece.QUEEN][ 51 ][ 4 ][ 2 ] = 24; movesAllowed[Piece.QUEEN][ 51 ][ 5 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 51 ][ 5 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 51 ][ 5 ][ 2 ] = 30; movesAllowed[Piece.QUEEN][ 51 ][ 5 ][ 3 ] = 23; movesAllowed[Piece.QUEEN][ 51 ][ 6 ][ 0 ] = 58; movesAllowed[Piece.QUEEN][ 51 ][ 7 ][ 0 ] = 60; movesAllowed[Piece.QUEEN][ 52 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 52 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 52 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 52 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 52 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 52 ][ 0 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 52 ][ 0 ][ 1 ] = 50; movesAllowed[Piece.QUEEN][ 52 ][ 0 ][ 2 ] = 49; movesAllowed[Piece.QUEEN][ 52 ][ 0 ][ 3 ] = 48; movesAllowed[Piece.QUEEN][ 52 ][ 1 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 52 ][ 1 ][ 1 ] = 54; movesAllowed[Piece.QUEEN][ 52 ][ 1 ][ 2 ] = 55; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 3 ] = 20; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 4 ] = 12; movesAllowed[Piece.QUEEN][ 52 ][ 2 ][ 5 ] = 4; movesAllowed[Piece.QUEEN][ 52 ][ 3 ][ 0 ] = 60; movesAllowed[Piece.QUEEN][ 52 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 52 ][ 5 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 52 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 52 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 52 ][ 4 ][ 0 ] = 43; movesAllowed[Piece.QUEEN][ 52 ][ 4 ][ 1 ] = 34; movesAllowed[Piece.QUEEN][ 52 ][ 4 ][ 2 ] = 25; movesAllowed[Piece.QUEEN][ 52 ][ 4 ][ 3 ] = 16; movesAllowed[Piece.QUEEN][ 52 ][ 5 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 52 ][ 5 ][ 1 ] = 38; movesAllowed[Piece.QUEEN][ 52 ][ 5 ][ 2 ] = 31; movesAllowed[Piece.QUEEN][ 52 ][ 6 ][ 0 ] = 59; movesAllowed[Piece.QUEEN][ 52 ][ 7 ][ 0 ] = 61; movesAllowed[Piece.QUEEN][ 53 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 53 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 53 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 53 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 53 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 53 ][ 0 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 53 ][ 0 ][ 1 ] = 51; movesAllowed[Piece.QUEEN][ 53 ][ 0 ][ 2 ] = 50; movesAllowed[Piece.QUEEN][ 53 ][ 0 ][ 3 ] = 49; movesAllowed[Piece.QUEEN][ 53 ][ 0 ][ 4 ] = 48; movesAllowed[Piece.QUEEN][ 53 ][ 1 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 53 ][ 1 ][ 1 ] = 55; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 2 ] = 29; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 3 ] = 21; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 4 ] = 13; movesAllowed[Piece.QUEEN][ 53 ][ 2 ][ 5 ] = 5; movesAllowed[Piece.QUEEN][ 53 ][ 3 ][ 0 ] = 61; movesAllowed[Piece.QUEEN][ 53 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 53 ][ 5 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 53 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 53 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 53 ][ 4 ][ 0 ] = 44; movesAllowed[Piece.QUEEN][ 53 ][ 4 ][ 1 ] = 35; movesAllowed[Piece.QUEEN][ 53 ][ 4 ][ 2 ] = 26; movesAllowed[Piece.QUEEN][ 53 ][ 4 ][ 3 ] = 17; movesAllowed[Piece.QUEEN][ 53 ][ 4 ][ 4 ] = 8; movesAllowed[Piece.QUEEN][ 53 ][ 5 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 53 ][ 5 ][ 1 ] = 39; movesAllowed[Piece.QUEEN][ 53 ][ 6 ][ 0 ] = 60; movesAllowed[Piece.QUEEN][ 53 ][ 7 ][ 0 ] = 62; movesAllowed[Piece.QUEEN][ 54 ] = new int[ 8 ][]; movesAllowed[Piece.QUEEN][ 54 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 54 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 54 ][ 2 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 54 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 1 ] = 52; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 2 ] = 51; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 3 ] = 50; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 4 ] = 49; movesAllowed[Piece.QUEEN][ 54 ][ 0 ][ 5 ] = 48; movesAllowed[Piece.QUEEN][ 54 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 1 ] = 38; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 2 ] = 30; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 3 ] = 22; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 4 ] = 14; movesAllowed[Piece.QUEEN][ 54 ][ 2 ][ 5 ] = 6; movesAllowed[Piece.QUEEN][ 54 ][ 3 ][ 0 ] = 62; movesAllowed[Piece.QUEEN][ 54 ][ 4 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 54 ][ 5 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 54 ][ 6 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 54 ][ 7 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 0 ] = 45; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 1 ] = 36; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 2 ] = 27; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 3 ] = 18; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 4 ] = 9; movesAllowed[Piece.QUEEN][ 54 ][ 4 ][ 5 ] = 0; movesAllowed[Piece.QUEEN][ 54 ][ 5 ][ 0 ] = 47; movesAllowed[Piece.QUEEN][ 54 ][ 6 ][ 0 ] = 61; movesAllowed[Piece.QUEEN][ 54 ][ 7 ][ 0 ] = 63; movesAllowed[Piece.QUEEN][ 55 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 55 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 55 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 55 ][ 2 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 1 ] = 53; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 2 ] = 52; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 3 ] = 51; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 4 ] = 50; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 5 ] = 49; movesAllowed[Piece.QUEEN][ 55 ][ 0 ][ 6 ] = 48; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 0 ] = 47; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 1 ] = 39; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 2 ] = 31; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 3 ] = 23; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 4 ] = 15; movesAllowed[Piece.QUEEN][ 55 ][ 1 ][ 5 ] = 7; movesAllowed[Piece.QUEEN][ 55 ][ 2 ][ 0 ] = 63; movesAllowed[Piece.QUEEN][ 55 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 55 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 0 ] = 46; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 1 ] = 37; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 2 ] = 28; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 3 ] = 19; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 4 ] = 10; movesAllowed[Piece.QUEEN][ 55 ][ 3 ][ 5 ] = 1; movesAllowed[Piece.QUEEN][ 55 ][ 4 ][ 0 ] = 62; movesAllowed[Piece.QUEEN][ 56 ] = new int[ 3 ][]; movesAllowed[Piece.QUEEN][ 56 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 56 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 0 ] = 57; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 1 ] = 58; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 2 ] = 59; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 3 ] = 60; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 4 ] = 61; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 5 ] = 62; movesAllowed[Piece.QUEEN][ 56 ][ 0 ][ 6 ] = 63; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 0 ] = 48; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 1 ] = 40; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 2 ] = 32; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 3 ] = 24; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 4 ] = 16; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 5 ] = 8; movesAllowed[Piece.QUEEN][ 56 ][ 1 ][ 6 ] = 0; movesAllowed[Piece.QUEEN][ 56 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 3 ] = 28; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 4 ] = 21; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 5 ] = 14; movesAllowed[Piece.QUEEN][ 56 ][ 2 ][ 6 ] = 7; movesAllowed[Piece.QUEEN][ 57 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 57 ][ 0 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 57 ][ 1 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 57 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 57 ][ 0 ][ 0 ] = 56; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 0 ] = 58; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 1 ] = 59; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 2 ] = 60; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 3 ] = 61; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 4 ] = 62; movesAllowed[Piece.QUEEN][ 57 ][ 1 ][ 5 ] = 63; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 1 ] = 41; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 2 ] = 33; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 3 ] = 25; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 4 ] = 17; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 5 ] = 9; movesAllowed[Piece.QUEEN][ 57 ][ 2 ][ 6 ] = 1; movesAllowed[Piece.QUEEN][ 57 ][ 3 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 57 ][ 4 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 57 ][ 3 ][ 0 ] = 48; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 3 ] = 29; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 4 ] = 22; movesAllowed[Piece.QUEEN][ 57 ][ 4 ][ 5 ] = 15; movesAllowed[Piece.QUEEN][ 58 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 58 ][ 0 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 58 ][ 1 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 58 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 58 ][ 0 ][ 0 ] = 57; movesAllowed[Piece.QUEEN][ 58 ][ 0 ][ 1 ] = 56; movesAllowed[Piece.QUEEN][ 58 ][ 1 ][ 0 ] = 59; movesAllowed[Piece.QUEEN][ 58 ][ 1 ][ 1 ] = 60; movesAllowed[Piece.QUEEN][ 58 ][ 1 ][ 2 ] = 61; movesAllowed[Piece.QUEEN][ 58 ][ 1 ][ 3 ] = 62; movesAllowed[Piece.QUEEN][ 58 ][ 1 ][ 4 ] = 63; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 2 ] = 34; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 3 ] = 26; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 4 ] = 18; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 5 ] = 10; movesAllowed[Piece.QUEEN][ 58 ][ 2 ][ 6 ] = 2; movesAllowed[Piece.QUEEN][ 58 ][ 3 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 58 ][ 4 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 58 ][ 3 ][ 0 ] = 49; movesAllowed[Piece.QUEEN][ 58 ][ 3 ][ 1 ] = 40; movesAllowed[Piece.QUEEN][ 58 ][ 4 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 58 ][ 4 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 58 ][ 4 ][ 2 ] = 37; movesAllowed[Piece.QUEEN][ 58 ][ 4 ][ 3 ] = 30; movesAllowed[Piece.QUEEN][ 58 ][ 4 ][ 4 ] = 23; movesAllowed[Piece.QUEEN][ 59 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 59 ][ 0 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 59 ][ 1 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 59 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 59 ][ 0 ][ 0 ] = 58; movesAllowed[Piece.QUEEN][ 59 ][ 0 ][ 1 ] = 57; movesAllowed[Piece.QUEEN][ 59 ][ 0 ][ 2 ] = 56; movesAllowed[Piece.QUEEN][ 59 ][ 1 ][ 0 ] = 60; movesAllowed[Piece.QUEEN][ 59 ][ 1 ][ 1 ] = 61; movesAllowed[Piece.QUEEN][ 59 ][ 1 ][ 2 ] = 62; movesAllowed[Piece.QUEEN][ 59 ][ 1 ][ 3 ] = 63; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 3 ] = 27; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 4 ] = 19; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 5 ] = 11; movesAllowed[Piece.QUEEN][ 59 ][ 2 ][ 6 ] = 3; movesAllowed[Piece.QUEEN][ 59 ][ 3 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 59 ][ 4 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 59 ][ 3 ][ 0 ] = 50; movesAllowed[Piece.QUEEN][ 59 ][ 3 ][ 1 ] = 41; movesAllowed[Piece.QUEEN][ 59 ][ 3 ][ 2 ] = 32; movesAllowed[Piece.QUEEN][ 59 ][ 4 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 59 ][ 4 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 59 ][ 4 ][ 2 ] = 38; movesAllowed[Piece.QUEEN][ 59 ][ 4 ][ 3 ] = 31; movesAllowed[Piece.QUEEN][ 60 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 60 ][ 0 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 60 ][ 1 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 60 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 60 ][ 0 ][ 0 ] = 59; movesAllowed[Piece.QUEEN][ 60 ][ 0 ][ 1 ] = 58; movesAllowed[Piece.QUEEN][ 60 ][ 0 ][ 2 ] = 57; movesAllowed[Piece.QUEEN][ 60 ][ 0 ][ 3 ] = 56; movesAllowed[Piece.QUEEN][ 60 ][ 1 ][ 0 ] = 61; movesAllowed[Piece.QUEEN][ 60 ][ 1 ][ 1 ] = 62; movesAllowed[Piece.QUEEN][ 60 ][ 1 ][ 2 ] = 63; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 3 ] = 28; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 4 ] = 20; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 5 ] = 12; movesAllowed[Piece.QUEEN][ 60 ][ 2 ][ 6 ] = 4; movesAllowed[Piece.QUEEN][ 60 ][ 3 ] = new int[ 4 ]; movesAllowed[Piece.QUEEN][ 60 ][ 4 ] = new int[ 3 ]; movesAllowed[Piece.QUEEN][ 60 ][ 3 ][ 0 ] = 51; movesAllowed[Piece.QUEEN][ 60 ][ 3 ][ 1 ] = 42; movesAllowed[Piece.QUEEN][ 60 ][ 3 ][ 2 ] = 33; movesAllowed[Piece.QUEEN][ 60 ][ 3 ][ 3 ] = 24; movesAllowed[Piece.QUEEN][ 60 ][ 4 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 60 ][ 4 ][ 1 ] = 46; movesAllowed[Piece.QUEEN][ 60 ][ 4 ][ 2 ] = 39; movesAllowed[Piece.QUEEN][ 61 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 61 ][ 0 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 61 ][ 1 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 61 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 61 ][ 0 ][ 0 ] = 60; movesAllowed[Piece.QUEEN][ 61 ][ 0 ][ 1 ] = 59; movesAllowed[Piece.QUEEN][ 61 ][ 0 ][ 2 ] = 58; movesAllowed[Piece.QUEEN][ 61 ][ 0 ][ 3 ] = 57; movesAllowed[Piece.QUEEN][ 61 ][ 0 ][ 4 ] = 56; movesAllowed[Piece.QUEEN][ 61 ][ 1 ][ 0 ] = 62; movesAllowed[Piece.QUEEN][ 61 ][ 1 ][ 1 ] = 63; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 2 ] = 37; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 3 ] = 29; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 4 ] = 21; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 5 ] = 13; movesAllowed[Piece.QUEEN][ 61 ][ 2 ][ 6 ] = 5; movesAllowed[Piece.QUEEN][ 61 ][ 3 ] = new int[ 5 ]; movesAllowed[Piece.QUEEN][ 61 ][ 4 ] = new int[ 2 ]; movesAllowed[Piece.QUEEN][ 61 ][ 3 ][ 0 ] = 52; movesAllowed[Piece.QUEEN][ 61 ][ 3 ][ 1 ] = 43; movesAllowed[Piece.QUEEN][ 61 ][ 3 ][ 2 ] = 34; movesAllowed[Piece.QUEEN][ 61 ][ 3 ][ 3 ] = 25; movesAllowed[Piece.QUEEN][ 61 ][ 3 ][ 4 ] = 16; movesAllowed[Piece.QUEEN][ 61 ][ 4 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 61 ][ 4 ][ 1 ] = 47; movesAllowed[Piece.QUEEN][ 62 ] = new int[ 5 ][]; movesAllowed[Piece.QUEEN][ 62 ][ 0 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 62 ][ 1 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 62 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 0 ] = 61; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 1 ] = 60; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 2 ] = 59; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 3 ] = 58; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 4 ] = 57; movesAllowed[Piece.QUEEN][ 62 ][ 0 ][ 5 ] = 56; movesAllowed[Piece.QUEEN][ 62 ][ 1 ][ 0 ] = 63; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 1 ] = 46; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 2 ] = 38; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 3 ] = 30; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 4 ] = 22; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 5 ] = 14; movesAllowed[Piece.QUEEN][ 62 ][ 2 ][ 6 ] = 6; movesAllowed[Piece.QUEEN][ 62 ][ 3 ] = new int[ 6 ]; movesAllowed[Piece.QUEEN][ 62 ][ 4 ] = new int[ 1 ]; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 0 ] = 53; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 1 ] = 44; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 2 ] = 35; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 3 ] = 26; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 4 ] = 17; movesAllowed[Piece.QUEEN][ 62 ][ 3 ][ 5 ] = 8; movesAllowed[Piece.QUEEN][ 62 ][ 4 ][ 0 ] = 55; movesAllowed[Piece.QUEEN][ 63 ] = new int[ 3 ][]; movesAllowed[Piece.QUEEN][ 63 ][ 0 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 63 ][ 1 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 0 ] = 62; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 1 ] = 61; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 2 ] = 60; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 3 ] = 59; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 4 ] = 58; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 5 ] = 57; movesAllowed[Piece.QUEEN][ 63 ][ 0 ][ 6 ] = 56; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 0 ] = 55; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 1 ] = 47; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 2 ] = 39; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 3 ] = 31; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 4 ] = 23; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 5 ] = 15; movesAllowed[Piece.QUEEN][ 63 ][ 1 ][ 6 ] = 7; movesAllowed[Piece.QUEEN][ 63 ][ 2 ] = new int[ 7 ]; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 0 ] = 54; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 1 ] = 45; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 2 ] = 36; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 3 ] = 27; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 4 ] = 18; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 5 ] = 9; movesAllowed[Piece.QUEEN][ 63 ][ 2 ][ 6 ] = 0; } }