def _split_explanation(explanation):
 raw_lines = (explanation or u('')).split('\n')
 lines = [raw_lines[0]]
 for l in raw_lines[1:]:
  if (l and (l[0] in ['{', '}', '~', '>'])):
   lines.append(l)
  else:
   lines[(-1)] += ('\\n' + l)
 return lines

def _split_explanation ( explanation ) : raw_lines = ( explanation or u ( '' ) ) . split ( '\n' ) lines = [ raw_lines [ 0 ] ] for l in raw_lines [ 1 : ] : if ( l and ( l [ 0 ] in [ '{' , '}' , '~' , '>' ] ) ) : lines . append ( l ) else : lines [ ( - 1 ) ] += ( '\\n' + l ) return lines
return a list of individual lines in the explanation this will return a list of lines split on } and any other newlines will be escaped and appear in the line as the literal characters .