code: def _build_columns_list(
      datapoints: tp.List[Datapoint],
  ) -> tp.List[str]:
      columns: tp.Set[str] = set()
      for dp in datapoints:
          columns = columns.union(dp.values.keys())
      for reserved_col in ["uid", "from_uid"]:
          try:
              columns.remove(reserved_col)
          except KeyError:
              pass
      return list(columns)
  
label_desc: Use image node_id 1 for calling a global function with example usage: _build_columns_list(datapoints) and returns: list