code: def decons_obs_group_ids(comp_ids, obs_ids, shape, labels, xnull):
      """
      reconstruct labels from observed group ids
  
      Parameters
      ----------
      xnull: boolean,
          if nulls are excluded; i.e. -1 labels are passed through
      """
  
      if not xnull:
          lift = np.fromiter(
              ((a == -1).any() for a in labels), dtype="i8"
          )
          shape = np.asarray(shape, dtype="i8") + lift
  
      if not is_int64_overflow_possible(shape):
          # obs ids are deconstructable! take the fast route!
          out = decons_group_index(obs_ids, shape)
          return (
              out
              if xnull or not lift.any()
              else [x - y for x, y in zip(out, lift)]
          )
  
      i = unique_label_indices(comp_ids)
      i8copy = lambda a: a.astype("i8", subok=False, copy=True)
      return [i8copy(lab[i]) for lab in labels]
  
imports: import warnings
  import numpy
  from pandas._libs import algos, hashtable, lib
  from pandas._libs.hashtable import unique_label_indices
  from pandas.compat import PY3, long, string_types
  from pandas.core.dtypes.cast import infer_dtype_from_array
  from pandas.core.dtypes.common import ensure_int64, ensure_platform_int, is_categorical_dtype, is_list_like
  from pandas.core.dtypes.missing import isna
  import pandas.core.algorithms
label_desc: Use image node_id 5 for calling a global function with example usage: decons_obs_group_ids(comp_ids, obs_ids, shape, labels, xnull) and returns: unknown, unknown