code: def _break_line(self, line_source, point_size):
          
          lines = _BinarySearchTree.from_ordered_sequence(line_source)
          predicate = self._fits_in_width_predicate(point_size)
          return lines.find_max(predicate)
docs: Return a (line, remainder) pair where *line* is the longest line in
          *line_source* that will fit in this fitter's width and *remainder* is
          a |_LineSource| object containing the text following the break point.