code: def tab_rowstack(ListOfTabArrays, mode='nulls'):
      
      data = spreadsheet.rowstack(ListOfTabArrays, mode=mode)
  
      coloring = {}
      for a in ListOfTabArrays:
          for k in a.coloring:
              if k in coloring.keys():
                  coloring[k] = utils.uniqify(coloring[k] + a.coloring[k])
              else:
                  coloring[k] = a.coloring[k]
      for k in coloring.keys():
          s = [x for x in coloring[k] if x in data.dtype.names]
          if len(s) > 0:
              coloring[k] = s
          else:
              coloring.pop(k)
  
      data = data.view(tabarray)
      data.coloring = coloring
      return data
docs: "Vertical stacking" of tabarrays, e.g. adding rows.
  
      Wrapper for :func:`tabular.spreadsheet.rowstack` that deals with the 
      coloring and returns the result as a tabarray.
  
      Method calls::
  
          data = tabular.spreadsheet.rowstack(ListOfTabArrays, mode=mode)