code: private static String serialize(final byte[] bytes, final int offset, final int length) {
          if (bytes == null) {
              throw new NullPointerException("bytes");
          }
          final StringBuilder sb = new StringBuilder(length);
          for (int i = offset; i < offset + length; i++) {
              final byte b = bytes[i];
              if (0x20 == b) {
                  sb.append((char)0x20);
              } else if (0x2A == b || 0x2D == b || 0x2E == b || (0x30 <= b && b <= 0x39)
                      || (0x41 <= b && b <= 0x5A) || 0x5F == b || (0x61 <= b && b <= 0x7A)) {
                  sb.appendCodePoint(b);
              } else {
                  URLUtils.percentEncode(b, sb);
              }
          }
          return sb.toString();
      }
docs: Implements the application/x-www-form-urlencoded byte serializer.