private int[][] PolySelection()
{
int[][] exponents = ExtractPolyExponents(pArray);
int[][] usingPolynomials = new int[nRegisters][];
int counter = 0;
int j = 0; //since i variable is reset
for (int i = 0; i < exponents.Length; i++)
{
if (counter == nRegisters)
break;
int largest = FindLargestInt(exponents[i]);
if (largest < mRegLens[j])
{
usingPolynomials[counter] = new int[exponents[i].Length];
for (int x = 0; x < exponents[i].Length; x++)
usingPolynomials[counter][x] = exponents[i][x];
exponents = RemoveIntArrElement(exponents, i);
i = -1; //reset loop
counter++;
}
j++;
}
return usingPolynomials;
}