docs: public static String escape(String string) {
          char            c;
          String          s = string.trim();
          int             length = s.length();
          StringBuilder   sb = new StringBuilder(length);
          for (int i = 0; i < length; i += 1) {
              c = s.charAt(i);
              if (c < ' ' || c == '+' || c == '%' || c == '=' || c == ';') {
                  sb.append('%');
                  sb.append(Character.forDigit((char)((c >>> 4) & 0x0f), 16));
                  sb.append(Character.forDigit((char)(c & 0x0f), 16));
              } else {
                  sb.append(c);
              }
          }
          return sb.toString();
      }