code: private static Map<String, Collection<String>> extractQueryMap(final String queryString) {
          final Map<String, Collection<String>> map = new HashMap<>();
  
          for (final String nvp : queryString.split("&")) {
              final String[] pair = nvp.split("=");
              map.computeIfAbsent(pair[0], k -> {
                  List<String> list = new LinkedList<>();
                  list.add(pair[1]);
                  return list;
              });
          }
  
          return map;
      }
docs: does not do any encoding