code: def equalize_rows(rows)
          column_sizes = rows.collect { |r| r.size }
  
          return rows if column_sizes.uniq.size == 1
  
          max_size = column_sizes.max
          small_rows = []
          column_sizes.each_with_index { |c,i| small_rows << i if c < max_size }
  
          small_rows.each do |i| 
            rows[i] += [NotAvailable] * (max_size - rows[i].size)
          end
  
          rows
        end
docs: If rows are of different column size the rows are equalized in column
   size by filling missing columns with NA