docs: def column_order(b1, b2):
      """
      A comparator that sorts bboxes first by "columns", where a column is made
      up of all bboxes that overlap, then by vertical position in each column.
  
      b1 = [b1.type, b1.top, b1.left, b1.bottom, b1.right]
      b2 = [b2.type, b2.top, b2.left, b2.bottom, b2.right]
      """
      (top, left, bottom) = (1, 2, 3)
      # TODO(senwu): Reimplement the functionality of this comparator to
      # detect the number of columns, and sort those in reading order.
  
      # TODO: This is just a simple top to bottom, left to right comparator
      # for now.
      if round(b1[top]) == round(b2[top]) or round(b1[bottom]) == round(b2[bottom]):
          return float_cmp(b1[left], b2[left])
      return float_cmp(b1[top], b2[top])