public List<List<Rate>> getAllGameCombinationWithSure() {

		if (sourceGameList == null || sourceGameList.size() == 0) {
			return null;
		}

		Game gameSureGame = null;
		for (Game game : sourceGameList) {

			if (game.isSure()) {
				gameSureGame = game;
				System.out.println("breaking");
				break;
			}
			System.out.println("next");
		}

		sourceGameList.remove(gameSureGame);
		clear();
		initChoiceCombinationAndChoices();
		computeChoiceCombinationIndexSet();

		List<List<Rate>> tempResult = getAllGameCombination();

		if (tempResult == null) {
			return tempResult;
		}

		// 加上胆的赔率数据
		for (List<Rate> rateList : tempResult) {
			for (Rate rate : gameSureGame.getRateList()) {
				rateList.add(rate);
			}
		}

		return tempResult;
	}