Change to use System.Numerics.BigInteger