docs: public static String unescape(String source, String encoding) {
  
          if (source == null) {
              return null;
          }
          int len = source.length();
          // to use standard decoder we need to replace '+' with "%20" (space)
          StringBuffer preparedSource = new StringBuffer(len);
          for (int i = 0; i < len; i++) {
              char c = source.charAt(i);
              if (c == '+') {
                  preparedSource.append("%20");
              } else {
                  preparedSource.append(c);
              }
          }
          return decode(preparedSource.toString(), encoding);
      }