private static void addPuttingOutMoves(ArrayList<BoardState> listPositions, BoardState state, boolean whitesTurn, int[] movesToMake, int position) {
		if(whitesTurn) {
			for(int i=18; i<=23; i++) {
				if(state.isPositionWhite(i) && state.getCountAt(i)>0 && movesToMake[position] + i >= BoardUtils.BOARD_SIZE) {
					BoardState resultingState = BoardUtils.getBoardStateAfterPuttingOut(state, i, movesToMake[position]);
					addAllPositions(listPositions, resultingState, movesToMake, position+1, whitesTurn);
				}
			}
		}
		else {
			for(int i=0; i<=5; i++) {
				if(state.isPositionBlack(i) && state.getCountAt(i)<0 && i - movesToMake[position] < 0) {
					BoardState resultingState = BoardUtils.getBoardStateAfterPuttingOut(state, i, movesToMake[position]);
					addAllPositions(listPositions, resultingState, movesToMake, position+1, whitesTurn);
				}
			}
		}
	}