private static @NotNull Couple<String> splitToUsernameAndUrl(@NotNull String url) {
    if (StringUtil.isEmptyOrSpaces(url)) return Couple.of(null, url);

    Couple<String> schemeAndUrl = UriUtil.splitScheme(url);
    String scheme = schemeAndUrl.first;
    String urlWithoutScheme = schemeAndUrl.second;
    if (StringUtil.isEmptyOrSpaces(urlWithoutScheme)) return Couple.of(null, url);

    int i = urlWithoutScheme.indexOf('@');
    if (i <= 0) {
      return Couple.of(null, scheme + URLUtil.SCHEME_SEPARATOR + urlWithoutScheme);
    }
    else {
      return Couple.of(urlWithoutScheme.substring(0, i), scheme + URLUtil.SCHEME_SEPARATOR + urlWithoutScheme.substring(i + 1));
    }
  }
private static @NotNull Couple<String> splitToUsernameAndUrl(@NotNull String url)