code: def _unpack(data, mem):
      if len(mem) == 0:
          return data
      t = type(data)
      if t is tuple or t is list:
          ret = []
          for v in data:
              if isinstance(v, _PackedNdarray):
                  v = v.unpack(mem)
              ret.append(v)
          data = t(ret)
      elif t is dict:
          ret = {}
          for k, v in six.iteritems(data):
              if isinstance(v, _PackedNdarray):
                  v = v.unpack(mem)
              ret[k] = v
          data = ret
      elif t is _PackedNdarray:
          data = data.unpack(mem)
      return data
  
imports: from __future__ import division
  import datetime
  import multiprocessing
  from multiprocessing import sharedctypes
  import signal
  import sys
  import threading
  import warnings
  import numpy
  import six
  from chainer.dataset import iterator
  from chainer.iterators import _statemachine
  from chainer.iterators.order_samplers import ShuffleOrderSampler
label_desc: Use image node_id 7 for calling a global function with example usage: _unpack(data, mem) and returns: data, data