code: def format_module(module: Module, depth: int = 0) -> str:
      """Recursively formats module information as a human readable string."""
      s = "  " * depth + module.name
      if module.flops is not None:
          s += " " + _decimal_prefix(module.flops, "flops")
      if module.total_param_size > 0:
          s += " " + _decimal_prefix(module.total_param_size, "params")
      if module.total_state_size > 0:
          s += " " + _decimal_prefix(module.total_state_size, "state")
      s += "\n"
      for exp in module.expressions:
          s += format_expression(exp, depth + 1)
      return s
  
imports: from collections.abc import Mapping, Sequence
  import dataclasses
  import itertools
  import logging
  import os
  import sys
  from typing import Any, Callable, NamedTuple, Optional
  from haiku._src import summarise
  import jax
  import jax.core
label_desc: Use image node_id 11 for calling a global function with example usage: format_module(module, depth) and returns: s