code: def _get_free_symbols(exprs):
      """Returns the free symbols of a symbolic expression.
  
      If the expression contains any of these elements, assume that they are
      the "free symbols" of the expression:
  
      * indexed objects
      * applied undefined function (useful for sympy.physics.mechanics module)
      """
      if not isinstance(exprs, (list, tuple, set)):
          exprs = [exprs]
      if all(callable(e) for e in exprs):
          return set()
  
      free = set().union(*[e.atoms(Indexed) for e in exprs])
      free = free.union(*[e.atoms(AppliedUndef) for e in exprs])
      return free or set().union(*[e.free_symbols for e in exprs])
  
file_path: sympy/sympy/plotting/utils.py
imports: from sympy.core.containers import Tuple
  from sympy.core.basic import Basic
  from sympy.core.expr import Expr
  from sympy.core.function import AppliedUndef
  from sympy.core.relational import Relational
  from sympy.core.symbol import Dummy
  from sympy.core.sympify import sympify
  from sympy.logic.boolalg import BooleanFunction
  from sympy.sets.fancysets import ImageSet
  from sympy.sets.sets import FiniteSet
  from sympy.tensor.indexed import Indexed
label_desc: Use image node_id 1 for calling a global function with example usage: _get_free_symbols(exprs) and returns: unknown, set