def breakable(self, sep='<STR_LIT:U+0020>'):
width = len(sep)<EOL>group = self.group_stack[-<NUM_LIT:1>]<EOL>if group.want_break:<EOL><INDENT>self.flush()<EOL>self.output.write(self.newline)<EOL>self.output.write('<STR_LIT:U+0020>' * self.indentation)<EOL>self.output_width = self.indentation<EOL>self.buffer_width = <NUM_LIT:0><EOL><DEDENT>else:<EOL><INDENT>self.buffer.append(Breakable(sep, width, self))<EOL>self.buffer_width += width<EOL>self._break_outer_groups()<EOL><DEDENT>
Add a breakable separator to the output.  This does not mean that it
will automatically break here.  If no breaking on this position takes
place the `sep` is inserted which default to one space.