code: def get_cloud_fs(repo_config, **kwargs):
      repo_config = repo_config or {}
      core_config = repo_config.get("core", {})
  
      remote_conf = get_fs_config(repo_config, **kwargs)
      try:
          remote_conf = SCHEMA["remote"][str](remote_conf)  # type: ignore[index]
      except Invalid as exc:
          raise RepoConfigError(str(exc)) from None
  
      if "checksum_jobs" not in remote_conf:
          checksum_jobs = core_config.get("checksum_jobs")
          if checksum_jobs:
              remote_conf["checksum_jobs"] = checksum_jobs
  
      cls = get_fs_cls(remote_conf)
  
      url = remote_conf.pop("url")
      if cls.protocol in ["webdav", "webdavs"]:
          # For WebDAVFileSystem, provided url is the base path itself, so it
          # should be treated as being a root path.
          fs_path = cls.root_marker
      else:
          fs_path = cls._strip_protocol(url)
  
      extras = cls._get_kwargs_from_urls(url)
      conf = {**extras, **remote_conf}  # remote config takes priority
      return cls, conf, fs_path
  
file_path: dvc/dvc/fs/__init__.py
imports: from typing import Optional
  from urllib.parse import urlparse
  from dvc_http import HTTPFileSystem, HTTPSFileSystem
  from dvc.config import ConfigError
  from dvc.config_schema import SCHEMA, Invalid
  from dvc_objects.fs import LocalFileSystem, MemoryFileSystem, Schemes, generic, get_fs_cls, known_implementations, localfs, registry, system, utils
  from dvc_objects.fs.base import AnyFSPath, FileSystem
  from dvc_objects.fs.errors import AuthError, ConfigError, RemoteMissingDepsError
  from .callbacks import Callback
  from .data import DataFileSystem
  from .dvc import DVCFileSystem
  from .git import GitFileSystem
label_desc: Use image node_id 5 for calling a global function with example usage: get_cloud_fs(repo_config) and returns: cls,  conf,  fs_path