docs: public static byte[] bigIntegerToBytes(BigInteger b, int numBytes) {
          if (b == null)
              return null;
          byte[] bytes = new byte[numBytes];
          byte[] biBytes = b.toByteArray();
          int start = (biBytes.length == numBytes + 1) ? 1 : 0;
          int length = Math.min(biBytes.length, numBytes);
          System.arraycopy(biBytes, start, bytes, numBytes - length, length);
          return bytes;
      }