code: def check_circular_dependency(stage):
      from dvc.exceptions import CircularDependencyError
  
      circular_dependencies = {d.fs_path for d in stage.deps} & {
          o.fs_path for o in stage.outs
      }
  
      if circular_dependencies:
          raise CircularDependencyError(
              str(circular_dependencies.pop())
          )
  
imports: import os
  import pathlib
  from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
  from funcy import concat, first, lsplit, rpartial
  from dvc.annotations import ANNOTATION_FIELDS
  from dvc.exceptions import InvalidArgumentError
  from dvc_data.hashfile.meta import Meta
  from .exceptions import MissingDataSource, StageExternalOutputsError, StagePathNotDirectoryError, StagePathNotFoundError, StagePathOutsideError
label_desc: Use image node_id 5 for calling a global function with example usage: check_circular_dependency(stage) without return types