public PolyEquationImpl(final BigInteger[] inCoeffs)
    {
        if (inCoeffs.length <= 0)
        {
            throw new SecretShareException("Must have at least 1 coefficient");
        }
        coefficients = new BigInteger[inCoeffs.length];
        
        for (int i = 0, n = inCoeffs.length; i < n ; i++)
        {
            if (inCoeffs[i] == null)
            {
                throw new SecretShareException("Coefficient index=" + i +
                                               " is null, and cannot be null");
            }
            coefficients[i] = inCoeffs[i];
        }
        
        // Constraint check:
        for (Number n : coefficients)
        {
            if (n == null)
            {
                throw new SecretShareException("Programmer error - internal coefficient is null");
            }
        }
    }