code: def _get_members(
      doc: type[Documenter],
      app: Sphinx,
      obj: Any,
      types: set[str],
      *,
      include_public: Set[str] = frozenset(),
      imported: bool = True,
  ) -> tuple[list[str], list[str]]:
      items: list[str] = []
      public: list[str] = []
  
      all_members = _get_all_members(doc, app, obj)
      for name, value in all_members.items():
          documenter = get_documenter(app, value, obj)
          if documenter.objtype in types:
              # skip imported members if expected
              if (
                  imported
                  or getattr(value, "__module__", None) == obj.__name__
              ):
                  skipped = _skip_member(
                      app, value, name, documenter.objtype
                  )
                  if skipped is True:
                      pass
                  elif skipped is False:
                      # show the member forcedly
                      items.append(name)
                      public.append(name)
                  else:
                      items.append(name)
                      if name in include_public or not name.startswith(
                          "_"
                      ):
                          # considers member as public
                          public.append(name)
      return public, items
  
imports: from __future__ import annotations
  import argparse
  import importlib
  import inspect
  import locale
  import os
  import pkgutil
  import pydoc
  import re
  import sys
  from os import path
  from typing import TYPE_CHECKING, Any, NamedTuple
  from jinja2 import TemplateNotFound
  from jinja2.sandbox import SandboxedEnvironment
  import sphinx.locale
  from sphinx import __display_version__, package_dir
  from sphinx.builders import Builder
  from sphinx.config import Config
  from sphinx.ext.autodoc.importer import import_module
  from sphinx.ext.autosummary import ImportExceptionGroup, get_documenter, import_by_name, import_ivar_by_name
  from sphinx.locale import __
  from sphinx.pycode import ModuleAnalyzer, PycodeError
  from sphinx.registry import SphinxComponentRegistry
  from sphinx.util import logging, rst
  from sphinx.util.inspect import getall, safe_getattr
  from sphinx.util.osutil import ensuredir
  from sphinx.util.template import SphinxTemplateLoader
label_desc: Use image node_id 10 for calling a global function with example usage: _get_members(doc, app, obj, types) and returns: public,  items