private void Adjust (byte[] a, int aOff, byte[] b)
{
int x = (b[b.Length - 1] & 0xff) + (a [aOff + b.Length - 1] & 0xff) + 1;
a [aOff + b.Length - 1] = (byte) x;
x >>= 8;
for (int i = b.Length - 2; i >= 0; i--) {
x += (b [i] & 0xff) + (a [aOff + i] & 0xff);
a [aOff + i] = (byte) x;
x >>= 8;
}
}