Recursively delegating tasks

Hello!
I am trying to create a process that when is started it allows you to do a certain task or to delegate that task to other people who can either accept to do it or to also delegate it. After someone solves the task it has to automatically “come back” to the initial creator and to end all the other process instances that were created.
This is what I was able to do so far:

<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:modeler="http://camunda.org/schema/modeler/1.0" id="Definitions_19sya5k" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.2.0" modeler:executionPlatform="Camunda Platform" modeler:executionPlatformVersion="7.17.0">
  <bpmn:process id="Recursive" isExecutable="true">
    <bpmn:startEvent id="StartEvent_1">
      <bpmn:outgoing>Flow_0pqusf4</bpmn:outgoing>
    </bpmn:startEvent>
    <bpmn:sequenceFlow id="Flow_0pqusf4" sourceRef="StartEvent_1" targetRef="Activity_1hao2rj" />
    <bpmn:userTask id="Activity_1hao2rj" name="Do you want to delegate or to solve?">
      <bpmn:incoming>Flow_0pqusf4</bpmn:incoming>
      <bpmn:outgoing>Flow_0p313e1</bpmn:outgoing>
    </bpmn:userTask>
    <bpmn:callActivity id="Activity_1s4y1yw" name="Ask if they want to do it or to also delegate" calledElement="Recursive">
      <bpmn:incoming>Flow_10lu9sk</bpmn:incoming>
      <bpmn:multiInstanceLoopCharacteristics camunda:collection="list" camunda:elementVariable="name" />
    </bpmn:callActivity>
    <bpmn:endEvent id="Event_17jbnn3">
      <bpmn:incoming>Flow_17nabob</bpmn:incoming>
    </bpmn:endEvent>
    <bpmn:userTask id="Activity_0ichsqv" name="Solve task">
      <bpmn:incoming>Flow_0slol0a</bpmn:incoming>
      <bpmn:outgoing>Flow_17nabob</bpmn:outgoing>
    </bpmn:userTask>
    <bpmn:sequenceFlow id="Flow_17nabob" sourceRef="Activity_0ichsqv" targetRef="Event_17jbnn3" />
    <bpmn:exclusiveGateway id="Gateway_1iaede5">
      <bpmn:incoming>Flow_0p313e1</bpmn:incoming>
      <bpmn:outgoing>Flow_0slol0a</bpmn:outgoing>
      <bpmn:outgoing>Flow_1rbj8vm</bpmn:outgoing>
    </bpmn:exclusiveGateway>
    <bpmn:sequenceFlow id="Flow_0slol0a" name="Solve" sourceRef="Gateway_1iaede5" targetRef="Activity_0ichsqv">
      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${!delegat}</bpmn:conditionExpression>
    </bpmn:sequenceFlow>
    <bpmn:sequenceFlow id="Flow_1rbj8vm" name="Delegate" sourceRef="Gateway_1iaede5" targetRef="Activity_1u32mv2">
      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${delegat}</bpmn:conditionExpression>
    </bpmn:sequenceFlow>
    <bpmn:sequenceFlow id="Flow_0p313e1" sourceRef="Activity_1hao2rj" targetRef="Gateway_1iaede5" />
    <bpmn:scriptTask id="Activity_1u32mv2" name="Choose who will do the task" scriptFormat="JavaScript">
      <bpmn:incoming>Flow_1rbj8vm</bpmn:incoming>
      <bpmn:outgoing>Flow_10lu9sk</bpmn:outgoing>
      <bpmn:script>var ArrayList = Java.type('java.util.ArrayList');
var list = new ArrayList();
list.add('tom');
list.add('kurt');
list.add('guido');

execution.setVariable('list', list);</bpmn:script>
    </bpmn:scriptTask>
    <bpmn:sequenceFlow id="Flow_10lu9sk" sourceRef="Activity_1u32mv2" targetRef="Activity_1s4y1yw" />
  </bpmn:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Recursive">
      <bpmndi:BPMNEdge id="Flow_0p313e1_di" bpmnElement="Flow_0p313e1">
        <di:waypoint x="400" y="357" />
        <di:waypoint x="525" y="357" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="Flow_1rbj8vm_di" bpmnElement="Flow_1rbj8vm">
        <di:waypoint x="550" y="332" />
        <di:waypoint x="550" y="290" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="558" y="306" width="45" height="14" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="Flow_0slol0a_di" bpmnElement="Flow_0slol0a">
        <di:waypoint x="550" y="382" />
        <di:waypoint x="550" y="490" />
        <bpmndi:BPMNLabel>
          <dc:Bounds x="566" y="431" width="28" height="14" />
        </bpmndi:BPMNLabel>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="Flow_17nabob_di" bpmnElement="Flow_17nabob">
        <di:waypoint x="550" y="570" />
        <di:waypoint x="550" y="662" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="Flow_0pqusf4_di" bpmnElement="Flow_0pqusf4">
        <di:waypoint x="215" y="357" />
        <di:waypoint x="300" y="357" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="Flow_10lu9sk_di" bpmnElement="Flow_10lu9sk">
        <di:waypoint x="550" y="210" />
        <di:waypoint x="550" y="160" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
        <dc:Bounds x="179" y="339" width="36" height="36" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Activity_1jj21pn_di" bpmnElement="Activity_1hao2rj">
        <dc:Bounds x="300" y="317" width="100" height="80" />
        <bpmndi:BPMNLabel />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Event_17jbnn3_di" bpmnElement="Event_17jbnn3">
        <dc:Bounds x="532" y="662" width="36" height="36" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Activity_19f1icg_di" bpmnElement="Activity_1u32mv2">
        <dc:Bounds x="500" y="210" width="100" height="80" />
        <bpmndi:BPMNLabel />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Activity_0ti08c0_di" bpmnElement="Activity_1s4y1yw">
        <dc:Bounds x="500" y="80" width="100" height="80" />
        <bpmndi:BPMNLabel />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Gateway_1iaede5_di" bpmnElement="Gateway_1iaede5" isMarkerVisible="true">
        <dc:Bounds x="525" y="332" width="50" height="50" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Activity_14cm65o_di" bpmnElement="Activity_0ichsqv">
        <dc:Bounds x="500" y="490" width="100" height="80" />
        <bpmndi:BPMNLabel />
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn:definitions>