Files
Sushi/src/suicideChess/Rules.java
djib a3916eb445 End of game detection now works fine but has made the game a lot slower.
I will imporve this with a : istherevalidmove function.
2006-01-28 13:50:40 +00:00

5400 lines
270 KiB
Java

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<Move> legalMovesNonCapture;
private static ArrayList<Move> 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<Move>();
// legalMovesCapture = new ArrayList<Move>();
// }
/**
* 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<Move>();
legalMovesCapture = new ArrayList<Move>();
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()<Board.NB_OF_FILES) {
toCaptureRightSquare = new Square(fromSquare.getFileNb()+1, fromSquare.getRank()+1);
if(captureEnPassantRight) {
captureEnPassantRightSquare = new Square(fromSquare.getFileNb()+1, fromSquare.getRank());
if (!toCaptureRightSquare.isEqual(board.getEnPassantSquare())) {
captureEnPassantRight=false;
}
}
} else {
captureRight = false;
captureEnPassantRight=false;
}
break;
case Piece.BLACK:
toSquare = new Square(fromSquare.getFileNb(), fromSquare.getRank()-1);
if (fromSquare.getRank()==(Board.NB_OF_RANKS-1)) {
bigJump=true;
toBigJumpSquare = new Square(fromSquare.getFileNb(), fromSquare.getRank()-2);
} else if (toSquare.getRank()==1) {
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()<Board.NB_OF_FILES) {
toCaptureRightSquare = new Square(fromSquare.getFileNb()+1, fromSquare.getRank()-1);
if(captureEnPassantRight) {
captureEnPassantRightSquare = new Square(fromSquare.getFileNb()+1, fromSquare.getRank());
if (!toCaptureRightSquare.isEqual(board.getEnPassantSquare())) {
captureEnPassantRight=false;
}
}
} else {
captureRight = false;
captureEnPassantRight=false;
}
break;
default:
throw new RuntimeException("ERROR 01.");
}
if (board.getPiece(toSquare).getPieceNumber()!=Piece.NONE) {
normalMove= false; //cannot move forward if there is a piece
bigJump=false;
}
if (captureLeft&&
((board.getPiece(toCaptureLeftSquare).getColor()==Piece.NO_COLOR)
|| (board.getPiece(toCaptureLeftSquare).getColor()==movingPiece.getColor()))) {
captureLeft = false;
}
if (captureRight&&
((board.getPiece(toCaptureRightSquare).getColor()==Piece.NO_COLOR)
|| (board.getPiece(toCaptureRightSquare).getColor()==movingPiece.getColor()))) {
captureRight = false;
}
if (bigJump && (board.getPiece(toBigJumpSquare).getPieceNumber()!=Piece.NONE)) {
bigJump=false;
}
if (promotion) {
if (normalMove) {
//to Queen
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.QUEEN_CHAR, movingPiece.getColor()));
legalMovesNonCapture.add(validMove);
//to King
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.KING_CHAR, movingPiece.getColor()));
legalMovesNonCapture.add(validMove);
//to Bishop
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.BISHOP_CHAR, movingPiece.getColor()));
legalMovesNonCapture.add(validMove);
//to Knight
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.KNIGHT_CHAR, movingPiece.getColor()));
legalMovesNonCapture.add(validMove);
//to Rook
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.ROOK_CHAR, movingPiece.getColor()));
legalMovesNonCapture.add(validMove);
}
if (captureLeft) {
//to Queen
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.QUEEN_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to King
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.KING_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Bishop
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.BISHOP_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Knight
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.KNIGHT_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Rook
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.ROOK_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
}
if (captureRight) {
//to Queen
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.QUEEN_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to King
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.KING_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Knight
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.KNIGHT_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Bishop
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.BISHOP_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
//to Rook
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.ROOK_CHAR, movingPiece.getColor()));
legalMovesCapture.add(validMove);
}
} else {
if (normalMove) {
validMove = new Move(fromSquare, toSquare, movingPiece, new Piece(Piece.NONE), new Piece(Piece.NONE));
legalMovesNonCapture.add(validMove);
}
if (bigJump) {
//create an 'en-passant' status
validMove = new Move(fromSquare, toBigJumpSquare, toSquare, movingPiece, false);
legalMovesNonCapture.add(validMove);
}
if (captureEnPassantLeft) {
//create an 'en-passant' move
validMove = new Move(fromSquare, toCaptureLeftSquare, captureEnPassantLeftSquare, movingPiece, true);
legalMovesCapture.add(validMove);
}
if (captureEnPassantRight) {
//create an 'en-passant' move
validMove = new Move(fromSquare, toCaptureRightSquare, captureEnPassantRightSquare, movingPiece, true);
legalMovesCapture.add(validMove);
}
if (captureLeft) {
validMove = new Move(fromSquare, toCaptureLeftSquare, movingPiece, board.getPiece(toCaptureLeftSquare), new Piece(Piece.NONE));
legalMovesCapture.add(validMove);
}
if (captureRight) {
validMove = new Move(fromSquare, toCaptureRightSquare, movingPiece, board.getPiece(toCaptureRightSquare), new Piece(Piece.NONE));
legalMovesCapture.add(validMove);
}
}
break;
default:
int pieceType = movingPiece.getPieceType();
int bitboardSquare = Board.squareToBitBoardSquare(fromSquare);
//look for all valid moves
for (int ray=0; ray<movesAllowed[pieceType][bitboardSquare].length; ray++) {
try {
for (int moveNumber=0; moveNumber<movesAllowed[pieceType][bitboardSquare][ray].length; moveNumber++) {
toSquare =
new Square(movesAllowed[pieceType][bitboardSquare][ray][moveNumber]);
//first check if there is a piece of the same color on that square
if (board.getPiece(toSquare).getColor()==movingPiece.getColor()) {
break;
}
validMove = new Move(fromSquare, toSquare, movingPiece, board.getPiece(toSquare), new Piece(Piece.NONE));
//add move to list of legal moves
if (validMove.isCaptureMove()) {
legalMovesCapture.add(validMove);
break; //don't go further in the ray
} else {
legalMovesNonCapture.add(validMove);
}
}//end for moveNumber
} catch (Exception e) {
throw new RuntimeException("pieceType:"+pieceType+" bitboardSquare:"+bitboardSquare+
" ray:"+ray+" movesAllowed[pieceType][bitboardSquare][ray]:"+movesAllowed[pieceType][bitboardSquare][ray]);
}
}//end for ray
} //end case
}
/**
* This function return the current status of the ArrayList<Move> of all legal {@link Move}
* without a capture.
* You need to call legalMovesFromSquare before calling this function.
* @return ArrayList<Move>
*/
public static ArrayList<Move> getLegalMovesNonCapture() {
return legalMovesNonCapture;
}
/**
* This function return the current status of the ArrayList<Move> of all legal {@link Move}
* with a capture.
* You need to call legalMovesFromSquare before calling this function.
* @return ArrayList<Move>
*/
public static ArrayList<Move> 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;
}
}