@Override
  public @Nullable VirtualFileSystem getFileSystem(@Nullable String protocol) {
    if (protocol == null) return null;

    List<? extends VirtualFileSystem> candidates = getFileSystemsForProtocol(protocol);
    int size = candidates.size();
    if (size == 0) {
      return null;
    }
    if (size > 1) {
      LOG.error(">1 file system registered for protocol [" + protocol + "]: " + candidates);
    }
    return candidates.get(0);
  }
@Override
  public @Nullable VirtualFileSystem getFileSystem(@Nullable String protocol)