code: def assert_recursively_close(
      obj_a, obj_b, rtol=1e-05, atol=1e-08, equal_nan=True
  ):
      """
      Asserts that two objects are "close" to each other, recursively.
  
      Strings or ints are close iff they are equal; floats or numpy arrays
      are defined close according to the numpy.isclose and numpy.allclose
      functions, respectively. Lists are close if all of their items are close.
      Dicts are close if they have the same keys, and elements corresponding
      to the same key are close.
  
      Parameters:
      -----------
      obj_a
      obj_b
          Objects to compare.
      rtol
      atol
          Relative and absolute tolerance for float comparison; see docs for
          numpy.isclose.
      equal_nan
          Indicates whether or not numpy.nan values should be considered equal.
      """
      _assert_recursively_close(
          obj_a,
          obj_b,
          location="",
          rtol=rtol,
          atol=atol,
          equal_nan=equal_nan,
      )
  
imports: import pandas
  import numpy
label_desc: Use image node_id 2 for calling a global function with example usage: assert_recursively_close(obj_a, obj_b, rtol, atol, equal_nan) without return types