code: def column_lists_equal(a: List[Column], b: List[Column]) -> bool:
      
      n = len(a)
      if len(b) != n:
          return False
      for i in range(n):
          if not columns_equal(a[i], b[i]):
              log.debug("Mismatch: {!r} != {!r}", a[i], b[i])
              return False
      return True
docs: Are all columns in list ``a`` equal to their counterparts in list ``b``,
      as per :func:`columns_equal`?