private  Double rankDiffSwapThreeCards() {
		
		Double rankdiff = 0.0;
		int bestcardoneindex = 0;
		int bestcardtwoindex = 0;
		int bestcardthreeindex = 0;
		Card bestcardtoswapcardone;
		Card bestcardtoswapcardtwo;
		Card bestcardtoswapcardthree;
		

		for (int i = 0; i < hand.size() - 2 ; i++)
			for (int j = i+1; j < hand.size() - 1 ; j++ )
				for (int k = j+1; k < hand.size(); k++){
					Double temprankdiff = rankDiffIfSwapped(i, j, k);
					if (rankdiff < temprankdiff){
						rankdiff = temprankdiff;
						bestcardoneindex = i;
						bestcardtwoindex = j;
						bestcardthreeindex = k;
				}
			}
		
		bestcardtoswapcardone = hand.get(bestcardoneindex);
		bestcardtoswapcardtwo = hand.get(bestcardtwoindex);
		bestcardtoswapcardthree = hand.get(bestcardthreeindex);
		
		
		swapcardsthreecards.add(bestcardtoswapcardone);
		swapcardsthreecards.add(bestcardtoswapcardtwo);
		swapcardsthreecards.add(bestcardtoswapcardthree);
		
		 
		return rankdiff;
	}