Add some new utility methods for clearing a bit and right shifting
Avoid explicit clearing of high bits as they are processed
Keep the k values in an array
Implement word-wise reduction
Fix toString
Remove broken right-shift stuff
Improve speed of multiply
Improve performance of shiftLeft(int)
Add method to support adding an IntArray left-shifted by some number of
bits
Replace IntArray.bitLength() with degree(), using lookup for byte
bit-lengths
Replace some repetitive calculations with a lookup
Refactoring
Provide internal method addShiftedByWordsQuick for use in the inner loop
of multiply where we don't need the bounds checking
Move squaring table to static field
Factor out square16 method and unroll loop
Use an 8-bit precomputation table for squaring
A few more small improvements to multiply
Don't store t
Check BigInteger in IntArray
Move F2m inversion code into IntArray
Fix off-by-1 error in degree()
Delete old unused methods
Renaming and refactoring, loop unrolling
Return carries from shift methods and use instead of explicit read
Add methods using longs
GCM exponentiators work with int[] instead of byte[] internally
Don't bother with random number unless percentPacketLoss > 0
checkCurveEquation special case x == 0 for lambda coordinates