code: def persistent_load(self, pid):
          
          if len(pid) == 2:
              # Pre GLC-1.3 release behavior, without memorization
              type_tag, filename = pid
              abs_path = _os.path.join(self.gl_temp_storage_path, filename)
              return  _get_gl_object_from_persistent_id(type_tag, abs_path)
          else:
              # Post GLC-1.3 release behavior, with memorization
              type_tag, filename, object_id = pid
              if object_id in self.gl_object_memo:
                  return self.gl_object_memo[object_id]
              else:
                  abs_path = _os.path.join(self.gl_temp_storage_path, filename)
                  obj = _get_gl_object_from_persistent_id(type_tag, abs_path)
                  self.gl_object_memo[object_id] = obj
                  return obj
docs: Reconstruct a GLC object using the persistent ID.
  
          This method should not be used externally. It is required by the unpickler super class.
  
          Parameters
          ----------
          pid      : The persistent ID used in pickle file to save the GLC object.
  
          Returns
          ----------
          The GLC object.