code: def find_file(obj):
      """Find the absolute path to the file where an object was defined.
  
      This is essentially a robust wrapper around `inspect.getabsfile`.
  
      Returns None if no file can be found.
  
      Parameters
      ----------
      obj : any Python object
  
      Returns
      -------
      fname : str
        The absolute path to the file where the object was defined.
      """
      obj = _get_wrapped(obj)
  
      fname = None
      try:
          fname = inspect.getabsfile(obj)
      except TypeError:
          # For an instance, the file that matters is where its class was
          # declared.
          if hasattr(obj, "__class__"):
              try:
                  fname = inspect.getabsfile(obj.__class__)
              except TypeError:
                  # Can happen for builtins
                  pass
      except:
          pass
      return cast_unicode(fname)
  
imports: from __future__ import print_function
  import inspect
  import linecache
  import warnings
  import os
  from textwrap import dedent
  import types
  import io
  from IPython.core import page
  from IPython.lib.pretty import pretty
  from IPython.testing.skipdoctest import skip_doctest_py3
  from IPython.utils import PyColorize
  from IPython.utils import openpy
  from IPython.utils import py3compat
  from IPython.utils.dir2 import safe_hasattr
  from IPython.utils.path import compress_user
  from IPython.utils.text import indent
  from IPython.utils.wildcard import list_namespace
  from IPython.utils.coloransi import TermColors, ColorScheme, ColorSchemeTable
  from IPython.utils.py3compat import cast_unicode, string_types, PY3
  from IPython.utils.signatures import signature
  from IPython.utils.colorable import Colorable
  from pygments import highlight
  from pygments.formatters import HtmlFormatter
label_desc: Use image node_id 11 for calling a global function with example usage: find_file(obj) and returns: cast_unicode