public double getWinningProbility(int c1,int c2){
		if(!reduced){
			if(!indexUpdated)updatePositionIndex();
			return 1-position[c1*52+c2];
		}else{
			if(!rankUpdated)updateRank();
			if(!positionUpdated)updatePosition();
			int queryrank = 0;
			if(common == 3){
				queryrank = FiveEval.getBestRankOf(c1, c2, 
						comCard[0], comCard[1], comCard[2]);
			}else if(common == 4){
				queryrank = FiveEval.getBestRankOf(c1, c2, 
						comCard[0], comCard[1], comCard[2], comCard[3]);
			}else if(common == 5){
				queryrank = FiveEval.getBestRankOf(c1, c2, 
						comCard[0], comCard[1], comCard[2], comCard[3], comCard[4]);
			}
			int L = 0, R = len, M;
			while(L<R-1){
				M=(L+R)/2;
				if(queryrank>hand[M].rank){
					R = M;
				}else {
					L = M;
				}
			}
			return 1-hand[L].position;
		}
	}