code: def get_fixed_long_line(target, previous_line, original,
                          indent_word='    ', max_line_length=79,
                          aggressive=False, experimental=False, verbose=False):
      
      indent = _get_indentation(target)
      source = target[len(indent):]
      assert source.lstrip() == source
      assert not target.lstrip().startswith('#')
  
      # Check for partial multiline.
      tokens = list(generate_tokens(source))
  
      candidates = shorten_line(
          tokens, source, indent,
          indent_word,
          max_line_length,
          aggressive=aggressive,
          experimental=experimental,
          previous_line=previous_line)
  
      # Also sort alphabetically as a tie breaker (for determinism).
      candidates = sorted(
          sorted(set(candidates).union([target, original])),
          key=lambda x: line_shortening_rank(
              x,
              indent_word,
              max_line_length,
              experimental=experimental))
  
      if verbose >= 4:
          print(('-' * 79 + '\n').join([''] + candidates + ['']),
                file=wrap_output(sys.stderr, 'utf-8'))
  
      if candidates:
          best_candidate = candidates[0]
  
          # Don't allow things to get longer.
          if longest_line_length(best_candidate) > longest_line_length(original):
              return None
  
          return best_candidate
docs: Break up long line and return result.
  
      Do this by generating multiple reformatted candidates and then
      ranking the candidates to heuristically select the best option.