code: def save_function(elements, module_path):
      """Recursively save functions with module name and signature."""
      for elem, signature in elements.items():
          if isinstance(signature, dict):  # Submodule case
              save_function(signature, module_path + (elem,))
          elif signature.isstaticfunction():
              functions.setdefault(elem, []).append(
                  (
                      module_path,
                      signature,
                  )
              )
          elif isinstance(signature, Class):
              save_function(signature.fields, module_path + (elem,))
  
imports: import gast
  from importlib import import_module
  import inspect
  import logging
  import numpy
  import sys
  from pythran.typing import Dict, Set, List, TypeVar, Union, Optional, NDArray
  from pythran.typing import Generator, Fun, Tuple, Iterable, Sized, File
  from pythran.conversion import to_ast, ToNotEval
  from pythran.intrinsic import Class
  from pythran.intrinsic import ClassWithConstConstructor, ExceptionClass
  from pythran.intrinsic import ClassWithReadOnceConstructor
  from pythran.intrinsic import ConstFunctionIntr, FunctionIntr, UpdateEffect
  from pythran.intrinsic import ConstMethodIntr, MethodIntr
  from pythran.intrinsic import AttributeIntr, StaticAttributeIntr
  from pythran.intrinsic import ReadEffect, ConstantIntr, UFunc
  from pythran.intrinsic import ReadOnceMethodIntr
  from pythran.intrinsic import ReadOnceFunctionIntr, ConstExceptionIntr
  from pythran import interval
  import beniget
label_desc: Use image node_id 10 for calling a global function with example usage: save_function(elements, module_path) without return types