code: def __getattr__(self, name):
      func = _get_function(name)
  
      def wrapper(*args, **kwargs):
          self._used = True
  
          result = self._compiled_subprocess.run(
              self._evaluator_weakref(),
              func,
              args=args,
              kwargs=kwargs,
          )
          # IMO it should be possible to create a hook in pickle.load to
          # mess with the loaded objects. However it's extremely complicated
          # to work around this so just do it with this call. ~ dave
          return self._convert_access_handles(result)
  
      return wrapper
  
imports: import os
  import sys
  import subprocess
  import socket
  import errno
  import weakref
  import traceback
  from functools import partial
  from threading import Thread
  from jedi._compatibility import queue, is_py3, force_unicode, pickle_dump, pickle_load, GeneralizedPopen, print_to_stderr
  from jedi import debug
  from jedi.cache import memoize_method
  from jedi.evaluate.compiled.subprocess import functions
  from jedi.evaluate.compiled.access import DirectObjectAccess, AccessPath, SignatureParam
  from jedi.api.exceptions import InternalError
label_desc: Use image node_id 2 for calling the EvaluatorSubprocess obj's underlying member method code with example usage: obj.__getattr__(name) and returns: wrapper, self