Thread Rating:

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:13:51 PM permalink
I seem to recall somebody asking a while ago if there was an "easy" way to map the 2,598,960 different possible 5-card hands into the 134,459 "unique" 5-card hands (the ones that took suits into account, but didn't depend on "specific" suits - for example, 3,5,7,9 of spades and 3 of diamonds is the same as the other 11 hands that are 3,5,7,9 of any suit and 3 of any other suit).

The answer, as far as I know, is, "No, there's no 'easy' way; it has to be done by brute force." In fact, I find that it is easiest to build the table of unique hands while you are doing the mapping of the 2,598,960 hands.

Here is some slightly modified C# code that generates both the "unique hands" and maps all of the 5-card hands to them.

However, the full code is too long to fit into a single post, so it will be broken up into sections; each section will be added as a reply within this post

Part 1 - Definitions


A few definitions:

Each card is represented by a number from 0 to 51; the number divided by 4 (and rounded down) represents the rank, and the number modulo 4 represents the suit. Technically, the ranks do not have to be in order, but I like to use 0-3 = Ace, 4-6 = Two, and so on, through 48-51 = King.
Each 5-card hand is converted to a unique number from 0 to 2,598,959. The way to do this with cards numbered 0-51 is:
Index = (52)C(5) - (52-X1)C(5) + (51-X1)C(4) - (52-X2)C(4) + (51-X2)C(3) - (52-X3)C(3) + (51-X3)C(2) - (52-X4)C(2) + (51-X4) - (52-X5)
where (A)C(B) is the number of combinations of A elements taken B at a time (also written as combin(A,B))

AllHands[2598960] is an array that holds each hand's unique hand index

UniqueHands[134459][3] is an array for each unique hand; column 0 holds a pointer to the pay table (which I won't get into right now, but, for Jacks or Better, it is usually something like 0 = lose, 1 = high pair, 2 = two pair, ..., 9 = royal flush), column 1 holds the number of AllHands[ ] hands that point to this row, and column 2 holds a pointer to an AllHands[ ] row that points back to this row. (The latter two are useful when calculating the game's expected return.)

Combin[53][6] is a table that holds the combination values - i.e. Combin[A] = (A)C(B). It is much faster to "calculate" combinations this way than by actually calculating them when needed.

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:14:24 PM permalink
Here are the functions and global variables used in the main code section:

GetID takes five card values and returns the 0-2598959 index of the hand

GetUniqueHand takes five card values, assigns it to the next available row in UniqueHands[ ], and returns that value so that the code that called the function can
then assign the UniqueHand value to other hands; this is why it is easiest to determine the unique hands while mapping the full set of hands to them.
If you look at the code, you will notice that UniqueHands[UniqueID, 2] is always set to 1. In reality, it would be set to a value based on the game being
played, and there would be additional code - most likely a function - that determines the hand from the cards (e.g. 0 1 2 3 4 is four aces; 0 36 40 44 48 is a royal flush).
There would be another table called PayTable which holds the pay values; this is separate to make it easier to change the pay values without
having to change too many values in arrays. For example, if PayTable[7] represented four of a kind, its value could be 25, and all of the UniqueHands
rows that represent a four of a kind would have their column 2 values set to 7 to point to it.

Part 2 - Global Variables and Functions


private int[] AllHands = new int[2598960];
private int[,] UniqueHands = new int[134459, 3];
private int UniqueID;
private int[,] Combin = new int[53, 6];

// Variables used in GetID but declared public so they're not dropped
// and recreated each time GetID is called
private int[] H = new int[5];
private int A, B, Z;

private int GetID(int C1, int C2, int C3, int C4, int C5)
{
int ReturnValue = -1;

// Sort the five numbers
H[0] = C1;
H[1] = C2;
H[2] = C3;
H[3] = C4;
H[4] = C5;
for (A = 0; A < 4; A++)
{
for (B = A + 1; B < 5; B++)
{
if (H[A] > H)
{
Z = H[A];
H[A] = H;
H = Z;
}
}
}
ReturnValue = Combin[52, 5] - Combin[52 - H[0], 5]
+ Combin[51 - H[0], 4] - Combin[52 - H[1], 4]
+ Combin[51 - H[1], 3] - Combin[52 - H[2], 3]
+ Combin[51 - H[2], 2] - Combin[52 - H[3], 2]
+ (51 - H[3]) - (52 - H[4]);
return ReturnValue;
}

private void GetUniqueHand(int C1, int C2, int C3, int C4, int C5, int NumHands)
{
UniqueID++;
A = GetID(C1, C2, C3, C4, C5);
AllHands[A] = UniqueID;
UniqueHands[UniqueID, 2] = A;
UniqueHands[UniqueID, 1] = NumHands;
UniqueHands[UniqueID, 0] = 1;
}

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:15:10 PM permalink
And now for the main event - er, main code. This is broken up into sections to make it easier to read (and post).

Part 3 - four of a kinds, and full houses


private void main()
{
// Initialize the Combination table
for (int A = 1; A <= 52; A++)
{
Combin[A, 0] = 1;
for (int B = 1; B <= 5; B++)
{
Combin[A, B] = Combin[A, B - 1] * (A + 1 - B) / B;
}
}

for (int N = 0; N < 2598960; N++)
{
AllHands[N] = -1;
}
UniqueID = -1;

int C1, C2, C3, C4, C5;

// 4-1
for (C1 = 0; C1 < 13; C1++)
{
for (C2 = 0; C2 < 13; C2++)
{
if (C1 != C2)
{
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , 4);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3)] = UniqueID;
}
}
}

// 3-2
for (C1 = 0; C1 < 13; C1++)
{
for (C2 = 0; C2 < 13; C2++)
{
if (C1 != C2)
{
// Both suits in the 2 also in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3)] = UniqueID;
// One suit in the 2 not in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C2 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C2 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C2 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C2 * 4 )] = UniqueID;
}
}
}

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:15:41 PM permalink
Part 4 - threes of a kind, and two pairs


// 3-1-1
for (C1 = 0; C1 < 13; C1++)
{
for (C2 = 0; C2 < 12; C2++)
{
if (C2 != C1)
{
for (C3 = C2 + 1; C3 < 13; C3++)
{
if (C3 != C1)
{
// Two 1s suited, in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
// Two 1s suited, not in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, 4);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 )] = UniqueID;
// Two 1s unsuited, both in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
// Two 1s unsuited, first in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 )] = UniqueID;
// Two 1s unsuited, second in the 3
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 3)] = UniqueID;
}
}
}
}
}

// 2-2-1
for (C1 = 0; C1 < 12; C1++)
{
for (C2 = C1 + 1; C2 < 13; C2++)
{
for (C3 = 0; C3 < 13; C3++)
{
if (C3 != C1 && C3 != C2)
{
// Pairs have the same suits; 1 is one of these suits
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 1, C3 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
// Pairs have the same suits; 1 is not one of these suits
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 1, C3 * 4 + 2, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
// Pairs have 1 card matching suit; 1 is in both pairs
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 2, C3 * 4 , 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
// Pairs have 1 card matching suit; 1 is in only the first pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 2, C3 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
// Pairs have 1 card matching suit; 1 is in only the second pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 2, C3 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 , C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
// Pairs have 1 card matching suit; 1 is in neither pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 2, C3 * 4 + 3, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 , C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 , C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 , C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C2 * 4 + 1, C3 * 4 )] = UniqueID;
// Pairs have no matches in suits; 1 is in first pair
GetUniqueHand (C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 3)] = UniqueID;
// Pairs have no matches in suits; 1 is in second pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C2 * 4 + 3, C3 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C2 * 4 + 2, C3 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C2 * 4 + 1, C3 * 4 + 1)] = UniqueID;
}
}
}
}

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:16:05 PM permalink
Part 5 - one pair


// 2-1-1-1
for (C1 = 0; C1 < 13; C1++)
{
for (C2 = 0; C2 < 11; C2++)
{
if (C2 != C1)
{
for (C3 = C2 + 1; C3 < 12; C3++)
{
if (C3 != C1)
{
for (C4 = C3 + 1; C4 < 13; C4++)
{
if (C4 != C1)
{
// All three 1s suited, and the suit is in the 2
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
// All three 1s suited, but the suit is not in the 2
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
// 1s are AAB, both in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
// 1s are ABA, both in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
// 1s are BAA, both in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 , 12);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
// 1s are AAB, only A in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
// 1s are ABA, only A in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
// 1s are BAA, only A in pair
GetUniqueHand( C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
// 1s are AAB, only B in pair
GetUniqueHand( C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, 24);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
// 1s are ABA, only B in pair
GetUniqueHand( C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
// 1s are BAA, only B in pair
GetUniqueHand( C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
// 1s are AAB, neither in pair
GetUniqueHand( C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1, 12);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
// 1s are ABA, neither in pair
GetUniqueHand( C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 , 12);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
// 1s are BAA, neither in pair
GetUniqueHand( C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 , 12);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3)] = UniqueID;
// 1s are all different; only first one in 2
GetUniqueHand( C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
// 1s are all different; only second one in 2
GetUniqueHand( C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
// 1s are all different; only third one in 2
GetUniqueHand( C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
// 1s are all different; first & second in 2
GetUniqueHand( C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
// 1s are all different; first & third in 2
GetUniqueHand( C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
// 1s are all different; second & third in 2
GetUniqueHand( C1 * 4 + 1, C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, 24);
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1)] = UniqueID;
}
}
}
}
}
}
}

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:17:55 PM permalink
Part 6 - five different cards

This section has over 1100 lines of code, which is too big to post, so it will be broken down by suit breakdown:
Flush
4-1
3-2
3-1-1
2-2-1
2-1-1-1


// 1-1-1-1-1
for (C1 = 0; C1 < 9; C1++)
{
for (C2 = C1 + 1; C2 < 10; C2++)
{
for (C3 = C2 + 1; C3 < 11; C3++)
{
for (C4 = C3 + 1; C4 < 12; C4++)
{
for (C5 = C4 + 1; C5 < 13; C5++)
{
// 1-1-1-1-1 by suits:
// Flush
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 , 4);
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 4-1 AAAAB
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 4-1 AAABA
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 , 4);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 4-1 AABAA
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 4-1 ABAAA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 4-1 BAAAA
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:19:19 PM permalink
Part 6b - five different cards, with 3-2 and 3-1-1 suit breakdowns


// 3-2 AAABB
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
// 3-2 AABAB
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 3-2 AABBA
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 , 12);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 3-2 ABAAB
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 1, 12);
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 3-2 ABABA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 , 12);
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 3-2 ABBAA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 3-2 BAAAB
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 1, 12);
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 3-2 BAABA
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 , 12);
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 3-2 BABAA
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 3-2 BBAAA
GetUniqueHand( C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 , 12);
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 3-1-1 AAABC
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
// 3-1-1 AABAC
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
// 3-1-1 AABCA
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
// 3-1-1 ABAAC
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
// 3-1-1 ABACA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
// 3-1-1 ABCAA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 3-1-1 BAAAC
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
// 3-1-1 BAACA
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
// 3-1-1 BACAA
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
// 3-1-1 BCAAA
GetUniqueHand( C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:21:58 PM permalink
Part 6c - five different cards, with 2-2-1 suit breakdowns


// 2-2-1 AABBC
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
// 2-2-1 AABCB
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
// 2-2-1 AACBB
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
// 2-2-1 ABABC
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
// 2-2-1 ABACB
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
// 2-2-1 ACABB
GetUniqueHand( C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
// 2-2-1 ABBAC
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
// 2-2-1 ABCAB
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 2-2-1 ACBAB
GetUniqueHand( C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 2-2-1 ABBCA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
// 2-2-1 ABCBA
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 2-2-1 ACBBA
GetUniqueHand( C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
// 2-2-1 CAABB (24)
GetUniqueHand( C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
// 2-2-1 CABAB (24)
GetUniqueHand( C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 1, 24);
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
// 2-2-1 CABBA (24)
GetUniqueHand( C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;

ThatDonGuy
ThatDonGuy
Joined: Jun 22, 2011
  • Threads: 95
  • Posts: 4328
August 26th, 2016 at 6:22:51 PM permalink
Part 6d (the final part) - five different cards, with 2-1-1-1 suit breakdowns


// 2-1-1-1 AABCD (24)
GetUniqueHand( C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
// 2-1-1-1 ABACD (24)
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
// 2-1-1-1 ABCAD (24)
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
// 2-1-1-1 ABCDA (24)
GetUniqueHand( C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 , 24);
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
// 2-1-1-1 BAACD (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
// 2-1-1-1 BACAD (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
// 2-1-1-1 BACDA (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 3)] = UniqueID;
// 2-1-1-1 BCAAD (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 3, 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 3, C5 * 4 )] = UniqueID;
// 2-1-1-1 BCADA (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 + 3)] = UniqueID;
// 2-1-1-1 BCDAA (24)
GetUniqueHand( C1 * 4 + 1, C2 * 4 + 2, C3 * 4 + 3, C4 * 4 , C5 * 4 , 24);
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 + 3, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 + 2, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 + 1, C4 * 4 , C5 * 4 )] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 3, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 3, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 2, C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 2, C3 * 4 , C4 * 4 + 1, C5 * 4 + 1)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 3, C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 3, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 3, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 , C3 * 4 + 1, C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 + 3, C2 * 4 + 1, C3 * 4 , C4 * 4 + 2, C5 * 4 + 2)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 1, C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 , C2 * 4 + 2, C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 , C3 * 4 + 2, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 1, C2 * 4 + 2, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 , C3 * 4 + 1, C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
AllHands[GetID(C1 * 4 + 2, C2 * 4 + 1, C3 * 4 , C4 * 4 + 3, C5 * 4 + 3)] = UniqueID;
}
}
}
}
}
}

Wizard
Administrator
Wizard
Joined: Oct 14, 2009
  • Threads: 1336
  • Posts: 22029
August 26th, 2016 at 8:42:39 PM permalink
This is great stuff!

Beers I owe you++;
It's not whether you win or lose; it's whether or not you had a good bet.

  • Jump to: