docs: def _extract_table(table_data, current, pc, ts, tt):
      """
      Use the given table data to create a time series entry for each column in the table.
  
      :param dict table_data: Table data
      :param dict current: LiPD root data
      :param str pc: paleoData or chronData
      :param list ts: Time series (so far)
      :param bool summary: Summary Table or not
      :return list ts: Time series (so far)
      """
      current["tableType"] = tt
      # Get root items for this table
      current = _extract_table_root(table_data, current, pc)
      # Add in modelNumber and tableNumber if this is "ens" or "summ" table
      current = _extract_table_model(table_data, current, tt)
      # Add age, depth, and year columns to root if available
      _table_tmp = _extract_special(current, table_data)
      try:
          # Start creating entries using dictionary copies.
          for _col_name, _col_data in table_data["columns"].items():
              # Add column data onto root items. Copy so we don't ruin original data
              _col_tmp = _extract_columns(_col_data, copy.deepcopy(_table_tmp), pc)
              try:
                  ts.append(_col_tmp)
              except Exception as e:
                  logger_ts.warn("extract_table: Unable to create ts entry, {}".format(e))
      except Exception as e:
          logger_ts.error("extract_table: {}".format(e))
      return ts