Strange behaviour endEvent and terminateAll

I have following process which simulate race.

User which came first wins and ends process instance. These works great because of ( <terminateEventDefinition flowable:terminateAll="true">). But there is one BIG problem which that I can’t understand why terminateAll also terminates my parent process. Imagine that process from current example is used as following

I can understand why termination of process instance could terminates also his sub-processes but why his parent…