docs: public static String encode(byte[] data, int size)
      {
          if (size % 4 != 0) {
              return null;
          }
          StringBuilder builder = new StringBuilder();
          int byteNbr = 0;
          long value = 0;
          while (byteNbr < size) {
              //  Accumulate value in base 256 (binary)
              int d = data[byteNbr++] & 0xff;
              value = value * 256 + d;
              if (byteNbr % 4 == 0) {
                  //  Output value in base 85
                  int divisor = 85 * 85 * 85 * 85;
                  while (divisor != 0) {
                      int index = (int) (value / divisor % 85);
                      builder.append(encoder.charAt(index));
                      divisor /= 85;
                  }
                  value = 0;
              }
          }
          assert (builder.length() == size * 5 / 4);
          return builder.toString();
      }