code: def _prepare_build_dir(app, config):
      """Get current working directory to the state expected
      by the ReadTheDocs builder. Shortly, it does the same as
      ./build-docs.sh script except not running `sphinx-build` step."""
      build_root = Path(app.srcdir)
      build_out = Path(app.outdir)
      copy_tree(str(here / "source"), str(build_root))
      copy_tree(str(build_root / "api_docs"), str(build_root))
      shutil.rmtree(str(build_root / "api_docs"))
      shutil.rmtree(str(build_out), ignore_errors=True)
      copy_tree(
          str(build_root / "css"), str(build_out / "_static" / "css")
      )
      copy_tree(
          str(build_root / "04_user_guide/images"),
          str(build_out / "04_user_guide"),
      )
      copy_tree(
          str(build_root / "03_tutorial/supporting_files"),
          str(build_out / "03_tutorial/supporting_files"),
      )
      shutil.rmtree(str(build_root / "css"))
  
imports: import importlib
  import re
  import shutil
  import sys
  from distutils.dir_util import copy_tree
  from inspect import getmembers, isclass, isfunction
  from pathlib import Path
  from typing import List
  from click import secho, style
  from causalnex import __version__
label_desc: Use image node_id 9 for calling a global function with example usage: _prepare_build_dir(app, config) without return types