code: def _get_module_attrs(
      name: str, members: Any
  ) -> tuple[list[str], list[str]]:
      """Find module attributes with docstrings."""
      attrs, public = [], []
      try:
          analyzer = ModuleAnalyzer.for_module(name)
          attr_docs = analyzer.find_attr_docs()
          for namespace, attr_name in attr_docs:
              if namespace == "" and attr_name in members:
                  attrs.append(attr_name)
                  if not attr_name.startswith("_"):
                      public.append(attr_name)
      except PycodeError:
          pass  # give up if ModuleAnalyzer fails to parse code
      return public, attrs
  
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 11 for calling a global function with example usage: _get_module_attrs(name, members) and returns: public,  attrs