code: def fix_long_line_logically(self, result, logical):
          
          if (
              not logical or
              len(logical[2]) == 1 or
              self.source[result['line'] - 1].lstrip().startswith('#')
          ):
              return self.fix_long_line_physically(result)
  
          start_line_index = logical[0][0]
          end_line_index = logical[1][0]
          logical_lines = logical[2]
  
          previous_line = get_item(self.source, start_line_index - 1, default='')
          next_line = get_item(self.source, end_line_index + 1, default='')
  
          single_line = join_logical_line(''.join(logical_lines))
  
          try:
              fixed = self.fix_long_line(
                  target=single_line,
                  previous_line=previous_line,
                  next_line=next_line,
                  original=''.join(logical_lines))
          except (SyntaxError, tokenize.TokenError):
              return self.fix_long_line_physically(result)
  
          if fixed:
              for line_index in range(start_line_index, end_line_index + 1):
                  self.source[line_index] = ''
              self.source[start_line_index] = fixed
              return range(start_line_index + 1, end_line_index + 1)
          else:
              return []
docs: Try to make lines fit within --max-line-length characters.