code: def get_skateboard_data(
      avoid_manifold: bool = False, silence_logs: bool = False
  ) -> Generator[Tuple[str, PathManager], None, None]:
      """
      Context manager for accessing Co3D dataset by tests, at least for
      the first 5 skateboards. Internally, we want this to exercise the
      normal way to access the data directly manifold, but on an RE
      worker this is impossible so we use a workaround.
  
      Args:
          avoid_manifold: Use the method used by RE workers even locally.
          silence_logs: Whether to reduce log output from iopath library.
  
      Yields:
          dataset_root: (str) path to dataset root.
          path_manager: path_manager to access it with.
      """
      if silence_logs:
          logging.getLogger("iopath.fb.manifold").setLevel(
              logging.CRITICAL
          )
          logging.getLogger("iopath.common.file_io").setLevel(
              logging.CRITICAL
          )
  
      if not os.environ.get("FB_TEST", False):
          if os.getenv("FAIR_ENV_CLUSTER", "") == "":
              raise unittest.SkipTest(
                  "Unknown environment. Data not available."
              )
          yield "/datasets01/co3d/081922", PathManager()
  
      elif avoid_manifold or INSIDE_RE_WORKER:
          from libfb.py.parutil import get_file_path
  
          par_path = "skateboard_first_5"
          source = get_file_path(par_path)
          assert Path(source).is_file()
          with tempfile.TemporaryDirectory() as dest:
              with ZipFile(source) as f:
                  f.extractall(dest)
              yield os.path.join(dest, "extracted"), PathManager()
      else:
          yield CO3D_MANIFOLD_PATH, get_path_manager()
  
file_path: pytorch3d/tests/implicitron/common_resources.py
imports: import contextlib
  import logging
  import os
  import tempfile
  import unittest
  from pathlib import Path
  from typing import Generator, Tuple
  from zipfile import ZipFile
  from iopath.common.file_io import PathManager
label_desc: Use image node_id 2 for calling a global function with example usage: get_skateboard_data(avoid_manifold, silence_logs) without return types