@internal<EOL><INDENT>def _merge_with_other_stm(self, other: "<STR_LIT>") -> None:<DEDENT>
merge = self._merge_statement_lists<EOL>self.ifTrue = merge(self.ifTrue, other.ifTrue)<EOL>new_elifs = []<EOL>for ((c, elifA), (_, elifB)) in zip(self.elIfs, other.elIfs):<EOL><INDENT>new_elifs.append((c,  merge(elifA, elifB)))<EOL><DEDENT>self.elIfs = new_elifs<EOL>self.ifFalse = merge(self.ifFalse, other.ifFalse)<EOL>other.ifTrue = []<EOL>other.elIfs = []<EOL>other.ifFalse = None<EOL>self._on_merge(other)<EOL>
:attention: statements has to be mergable (to check use _is_mergable method)