code: def _pickle_data(self, data, fp):
      if fiber.util.is_in_interactive_console():
          logger.debug("in interactive shell, use cloudpickle")
          cloudpickle.dump(data, fp)
      else:
          logger.debug("not in interactive shell, use reduction")
          reduction.dump(data, fp)
  
imports: import fcntl
  import io
  import itertools
  import logging
  import multiprocessing
  import os
  import socket
  import struct
  import subprocess
  import sys
  import threading
  import time
  from multiprocessing import reduction, spawn, util
  from multiprocessing.context import set_spawning_popen
  import cloudpickle
  import requests
  import fiber.util
  import fiber.config
  from fiber.backend import get_backend
  from fiber.core import JobSpec
  from fiber.core import ProcessStatus
label_desc: Use image node_id 12 for calling the Popen obj's underlying member method code with example usage: obj._pickle_data(data, fp) without return types