@Override
  public @Nullable String mapUrl(@Nullable String url) {
    if (url == null) return null;
    for (String wslPrefix : WSL_PREFIXES) {
      if (url.contains(wslPrefix)) {
        int startPos = url.indexOf(wslPrefix);
        int endPos = url.indexOf('/', startPos + wslPrefix.length());
        if (endPos >= 0) {
          return url.substring(0, startPos) + url.substring(endPos);
        }
      }
    }
    if (url.startsWith(JpsPathUtil.FILE_URL_PREFIX)) {
      return JpsPathUtil.FILE_URL_PREFIX + mapPath(url.substring(JpsPathUtil.FILE_URL_PREFIX.length()));
    }
    if (url.startsWith(JpsPathUtil.JAR_URL_PREFIX)) {
      int index = url.indexOf(JpsPathUtil.JAR_SEPARATOR);
      if (index >= 0) {
        return JpsPathUtil.JAR_URL_PREFIX + mapPath(url.substring(JpsPathUtil.JAR_URL_PREFIX.length(), index)) + url.substring(index);
      }
    }

    return url;
  }
@Override
  public @Nullable String mapUrl(@Nullable String url)