code: def _typevar_reduce(obj):
      # TypeVar instances require the module information hence why we
      # are not using the _should_pickle_by_reference directly
      module_and_name = _lookup_module_and_qualname(
          obj, name=obj.__name__
      )
  
      if module_and_name is None:
          return (_make_typevar, _decompose_typevar(obj))
      elif _is_registered_pickle_by_value(module_and_name[0]):
          return (_make_typevar, _decompose_typevar(obj))
  
      return (getattr, module_and_name)
  
imports: import builtins
  import dis
  import opcode
  import platform
  import sys
  import types
  import weakref
  import uuid
  import threading
  import typing
  import warnings
  from .compat import pickle
  from collections import OrderedDict
  from typing import ClassVar, Generic, Union, Tuple, Callable
  from pickle import _getattribute
label_desc: Use image node_id 36 for calling a global function with example usage: _typevar_reduce(obj) and returns: getattr,  module_and_name, _make_typevar,  _decompose_typevar, _make_typevar,  _decompose_typevar