protected static List<Card> getAllFlushCards(Set<Card> cardSet) {
		if (cardSet.size() < 5) {
			return null;
		}
    	// Note that we could return more than 5 cards here.
    	Map<Suit, List<Card>> suitMap = new HashMap<Suit, List<Card>>();
    	for (Card card : cardSet) {
    		List<Card> flushLists = suitMap.get(card.suit);
    		if (flushLists == null) {
    			flushLists = new ArrayList<Card>();
    		}
    		flushLists.add(card);
    		suitMap.put(card.suit, flushLists);
    	}
    	for (Suit suit : suitMap.keySet()) {
    		 /* 
    		  * This presumes the first flush we find is the
    		  * definitive flush. Since we don't have more than seven cards, 
    		  * two five-flush hands are impossible.
    		  */
    		if (suitMap.get(suit).size() > 4) {
    			Collections.sort(suitMap.get(suit));
    			return suitMap.get(suit);
    		}
    	}
    	return null;
    }