code: def flatten(
      d: collections.abc.MutableMapping,
      parent_key: str = "",
      sep: str = ".",
  ):
      items = []
      for k, v in d.items():
          new_key = parent_key + sep + k if parent_key else k
          if isinstance(v, collections.abc.MutableMapping):
              items.extend(flatten(v, new_key, sep=sep).items())
          else:
              items.append((new_key, v))
      return collections.OrderedDict(items)
  
file_path: vissl/extra_scripts/experiment_spreadsheet_from_logs.py
imports: import argparse
  import ast
  import collections
  import os
  import pathlib
  import re
  import typing
  import pandas
label_desc: Use image node_id 3 for calling a global function with example usage: flatten(d, parent_key, sep) and returns: collections