Initial OpenECOMP MSO commit

Change-Id: Ia6a7574859480717402cc2f22534d9973a78fa6d
Signed-off-by: ChrisC <cc697w@intl.att.com>
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/META-INF/persistence.xml b/bpmn/MSOGammaBPMN/src/main/resources/META-INF/persistence.xml
new file mode 100644
index 0000000..605d6f3
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/META-INF/persistence.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ============LICENSE_START=======================================================
+  ECOMP MSO
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+<persistence version="2.0"
+  xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="
+        http://java.sun.com/xml/ns/persistence
+        http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
+
+  <persistence-unit name="primary">
+    <jta-data-source>java:jboss/datasources/ProcessEngine</jta-data-source>
+    <properties>
+      <!-- Properties for Hibernate -->
+      <property name="hibernate.hbm2ddl.auto" value="create-drop" />
+      <property name="hibernate.show_sql" value="true" />
+    </properties>
+  </persistence-unit>
+
+</persistence>
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/META-INF/processes.xml b/bpmn/MSOGammaBPMN/src/main/resources/META-INF/processes.xml
new file mode 100644
index 0000000..641e674
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/META-INF/processes.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+  ============LICENSE_START=======================================================
+  ECOMP MSO
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+ 
+<process-application
+    xmlns="http://www.camunda.org/schema/1.0/ProcessApplication"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <process-engine name="default">
+    <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneProcessEngineConfiguration</configuration>
+    <datasource>java:jboss/datasources/ProcessEngine</datasource>
+    <properties>
+        <property name="history">full</property>
+        <property name="databaseSchemaUpdate">true</property>
+        <property name="authorizationEnabled">true</property>
+        <property name="jobExecutorDeploymentAware">true</property>
+        <property name="jobExecutorActivate">true</property>
+    </properties>
+    <plugins>
+
+      <!-- plugin enabling Process Application event listener support -->
+      <plugin>
+        <class>org.camunda.bpm.application.impl.event.ProcessApplicationEventListenerPlugin</class>
+      </plugin>
+      
+      <!-- plugin enabling integration of camunda Spin -->
+      <plugin>
+        <class>org.camunda.spin.plugin.impl.SpinProcessEnginePlugin</class>
+      </plugin>
+
+      <!-- plugin enabling connect support -->
+      <plugin>
+        <class>org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin</class>
+      </plugin>
+      
+      <plugin>
+        <class>org.openecomp.mso.bpmn.core.plugins.LoggingAndURNMappingPlugin</class>
+      </plugin>
+      
+      <!-- Needed until all subflows generate MSOWorkflowException events -->
+       <plugin>
+        <class>org.openecomp.mso.bpmn.core.plugins.WorkflowExceptionPlugin</class>
+      </plugin>
+     
+	 <!-- Optional Plugin for Camunda BPM Workbench -->
+ <!--     <plugin>
+        <class>org.camunda.bpm.debugger.server.EmbeddableDebugWebsocketBootstrap</class>
+        <properties>
+        	<property name="httpPort">8088</property>
+        </properties>
+      </plugin>    -->      
+   </plugins>
+  </process-engine>
+ 
+ 
+  	<process-archive name="MSOGammaBPMN">
+<!--     <process-engine>default</process-engine>
+ -->    <properties>
+      <property name="isDeleteUponUndeploy">false</property>
+      <property name="isScanForProcessDefinitions">true</property>
+    </properties>
+  </process-archive>
+
+</process-application>
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/logback.xml b/bpmn/MSOGammaBPMN/src/main/resources/logback.xml
new file mode 100644
index 0000000..133fa54
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/logback.xml
@@ -0,0 +1,159 @@
+<!--
+  ============LICENSE_START=======================================================
+  ECOMP MSO
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+<configuration scan="true" scanPeriod="3 seconds" debug="true">
+  <!--<jmxConfigurator /> -->
+  <!-- directory path for all other type logs -->
+  <property name="logDir" value="/var/log/ecomp" />
+
+  <!-- directory path for debugging type logs -->
+  <property name="debugDir" value="/var/log/ecomp" />
+
+  <!--  specify the component name
+    <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
+  <property name="componentName" value="MSO"></property>
+  <property name="subComponentName" value="BPMN"></property>
+  <!--  log file names -->
+  <property name="errorLogName" value="error" />
+  <property name="metricsLogName" value="metrics" />
+  <property name="auditLogName" value="audit" />
+  <property name="debugLogName" value="debug" />
+
+  <property name="errorPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
+  <property name="debugPattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}|%X{RequestId}|%msg%n" />
+  
+  <property name="auditPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
+  <property name="metricPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
+  <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
+  <property name="debugLogDirectory" value="${debugDir}/${componentName}/${subComponentName}" />
+
+
+  <!-- ============================================================================ -->
+  <!-- EELF Appenders -->
+  <!-- ============================================================================ -->
+
+  <!-- The EELFAppender is used to record events to the general application
+    log -->
+
+  <!-- EELF Audit Appender. This appender is used to record audit engine
+    related logging events. The audit logger and appender are specializations
+    of the EELF application root logger and appender. This can be used to segregate
+    Policy engine events from other components, or it can be eliminated to record
+    these events as part of the application root log. -->
+
+  <appender name="EELFAudit"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${auditLogName}${jboss.server.name}.log</file>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${auditLogName}${jboss.server.name}.log.%d</fileNamePattern>
+      <!--<maxHistory>30</maxHistory>-->
+    </rollingPolicy>
+    <encoder>
+      <pattern>${auditPattern}</pattern>
+    </encoder>
+  </appender>
+  <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFAudit" />
+  </appender>
+
+  <appender name="EELFMetrics"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${metricsLogName}${jboss.server.name}.log</file>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${metricsLogName}${jboss.server.name}.log.%d</fileNamePattern>
+      <!--<maxHistory>30</maxHistory>-->
+    </rollingPolicy>
+    <encoder>
+      <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
+        %msg%n"</pattern> -->
+      <pattern>${metricPattern}</pattern>
+    </encoder>
+  </appender>
+
+
+  <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFMetrics"/>
+  </appender>
+
+  <appender name="EELFError"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${logDirectory}/${errorLogName}${jboss.server.name}.log</file>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${logDirectory}/${errorLogName}${jboss.server.name}.log.%d</fileNamePattern>
+      <!--<maxHistory>30</maxHistory>-->
+    </rollingPolicy>
+    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+      <level>INFO</level>
+    </filter>
+    <encoder>
+      <pattern>${errorPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFError"/>
+  </appender>
+
+  <appender name="EELFDebug"
+            class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <file>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log</file>
+    <rollingPolicy
+            class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+      <fileNamePattern>${debugLogDirectory}/${debugLogName}${jboss.server.name}.log.%d</fileNamePattern>
+      <!--<maxHistory>30</maxHistory>-->
+    </rollingPolicy>
+    <encoder>
+      <pattern>${debugPattern}</pattern>
+    </encoder>
+  </appender>
+
+  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
+    <queueSize>256</queueSize>
+    <appender-ref ref="EELFDebug" />
+    <includeCallerData>true</includeCallerData>
+  </appender>
+
+
+  <!-- ============================================================================ -->
+  <!--  EELF loggers -->
+  <!-- ============================================================================ -->
+
+  <logger name="com.att.eelf.audit" level="info" additivity="false">
+    <appender-ref ref="asyncEELFAudit" />
+  </logger>
+
+  <logger name="com.att.eelf.metrics" level="info" additivity="false">
+    <appender-ref ref="asyncEELFMetrics" />
+  </logger>
+
+  <logger name="com.att.eelf.error" level="debug" additivity="false">
+    <appender-ref ref="asyncEELFError" />
+  </logger>
+  <root level="INFO">
+    <appender-ref ref="asyncEELFDebug" />
+  </root>
+
+</configuration>
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateNetworkInstanceInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateNetworkInstanceInfra.bpmn
new file mode 100644
index 0000000..8ce38e4
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateNetworkInstanceInfra.bpmn
@@ -0,0 +1,1297 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateNetworkInstanceInfra" name="CreateNetworkInstanceInfra" isExecutable="true">

+    <bpmn2:startEvent id="createNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="createNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>

+    <bpmn2:endEvent id="aai_Error_EndEvent" name="AAI Name Error">

+      <bpmn2:incoming>isReturnCode404_No_SequenceFlow</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_53" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:inclusiveGateway id="InclusiveGateway">

+      <bpmn2:incoming>isNetworkActiveNo_SequenceFlow</bpmn2:incoming>

+      <bpmn2:incoming>isReturnCode404_Yes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+    </bpmn2:inclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" sourceRef="InclusiveGateway" targetRef="callRESTQueryCloudRegion_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryCloudRegion_ScriptTask" name="Call REST Query Cloud Region " scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTQueryAAICloudRegion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="callRESTQueryCloudRegion_ScriptTask" targetRef="prepareSDNCTopoRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareSDNCTopoRequest_ScriptTask" name="Prepare SDNC Topology Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareSDNCRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="prepareSDNCTopoRequest_ScriptTask" targetRef="callAssignSDNCAdapter_CallActivity"/>

+    <bpmn2:scriptTask id="validateSDNCResponse_ScriptTask" name="Validate SDNC Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.validateSDNCResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="isSdncTopoOk_ExclusiveGateway" name="Is SDNC Ok?" default="sdncTopoNo_SequenceFlow">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>sdncTopoNo_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>sdncTopoYes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="sdncTopoNo_SequenceFlow" name="No" sourceRef="isSdncTopoOk_ExclusiveGateway" targetRef="sndcError_EndEvent"/>

+    <bpmn2:sequenceFlow id="sdncTopoYes_SequenceFlow" name="Yes" sourceRef="isSdncTopoOk_ExclusiveGateway" targetRef="callRESTQueryNetworkId_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_sdncResponseSuccess" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="validateSDNCResponse_ScriptTask" targetRef="isSdncTopoOk_ExclusiveGateway"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_4" name="" attachedToRef="validateSDNCResponse_ScriptTask">

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_84" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="BoundaryEvent_4" targetRef="sndcError_EndEvent"/>

+    <bpmn2:endEvent id="sndcError_EndEvent" name="SNDC Error">

+      <bpmn2:incoming>sdncTopoNo_SequenceFlow</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_57" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="callRESTQueryNetworkId_ScriptTask" name="Call REST Query Network Id In AAI" scriptFormat="groovy">

+      <bpmn2:incoming>sdncTopoYes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTQueryAAINetworkId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="callRESTQueryNetworkId_ScriptTask" targetRef="callRESTQueryVpnBinding_ScriptTask"/>

+    <bpmn2:callActivity id="callRollbackSDNCAdapter_CallActivity" name="Call Rollback SDNC Adapter" isForCompensation="true" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="CRENWKI_rollbackSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="SDNCA_ResponseCode" target="CRENWKI_rollbackSDNCReturnCode"/>

+        <camunda:out source="sdncAdapterResponse" target="CRENWKI_rollbackSDNCResponse"/>

+      </bpmn2:extensionElements>

+    </bpmn2:callActivity>

+    <bpmn2:boundaryEvent id="sndcCompensation_BoundaryEvent" attachedToRef="callAssignSDNCAdapter_CallActivity">

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_1" waitForCompletion="true"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:callActivity id="callAssignSDNCAdapter_CallActivity" name="Call SDNC Assign Adapter V1 Sub-process" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="CRENWKI_assignSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:out source="sdncAdapterResponse" target="CRENWKI_assignSDNCResponse"/>

+        <camunda:out source="SDNCA_ResponseCode" target="CRENWKI_sdncReturnCode"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="WorkflowException" target="CRENWKI_WorkflowException"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+        <camunda:in variables="all"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="callAssignSDNCAdapter_CallActivity" targetRef="validateSDNCResponse_ScriptTask"/>

+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Post Process &amp; Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>

+    <bpmn2:serviceTask id="callRollbackContrailNetwork_ServiceTask" name="Call Rollback Network" isForCompensation="true">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="payload">${CRENWKI_rollbackNetworkRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="url">${URN_mso_adapters_network_rest_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Authorization">#{BasicAuthHeaderValuePO}</camunda:entry>

+                <camunda:entry key="content-type">application/xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CRENWKI_rollbackNetworkReturnCode">${statusCode}</camunda:outputParameter>

+            <camunda:outputParameter name="CRENWKI_rollbackNetworkResponse">${response}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+    </bpmn2:serviceTask>

+    <bpmn2:scriptTask id="validateCreatePONetwork_ScriptTask" name="Validate Create PO Network" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_59</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.validateCreateNetworkResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="isNetworkActive_ExclusiveGateway" name="Is Network Active?" default="isNetworkActiveNo_SequenceFlow">

+      <bpmn2:incoming>isAAIQueryNameYes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>isNetworkActiveYes_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>isNetworkActiveNo_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="isNetworkActiveYes_SequenceFlow" name="Yes" sourceRef="isNetworkActive_ExclusiveGateway" targetRef="prepareDBInfraRequestSilentSucces_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_orchestrationStatus") == "ACTIVE"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="isNetworkActiveNo_SequenceFlow" name="No" sourceRef="isNetworkActive_ExclusiveGateway" targetRef="InclusiveGateway"/>

+    <bpmn2:scriptTask id="prepareDBInfraRequestSilentSucces_ScriptTask" name="Prepare DB Infra Request for Active Network" scriptFormat="groovy">

+      <bpmn2:incoming>isNetworkActiveYes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareDBRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="prepareDBInfraRequestSilentSucces_ScriptTask" targetRef="silentSuccessCallDB_ServiceTask"/>

+    <bpmn2:serviceTask id="silentSuccessCallDB_ServiceTask" name="Call DB Infra Update (Silent Success)">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${CRENWKI_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CRENWKI_createDBRequest">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="CRENWKI_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_40" name="" sourceRef="silentSuccessCallDB_ServiceTask" targetRef="prepareSilentCompletion_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareSilentCompletion_ScriptTask" name="Prepare Active Network Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_41</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_41" name="" sourceRef="prepareSilentCompletion_ScriptTask" targetRef="silentAccess_CallActivity"/>

+    <bpmn2:callActivity id="silentAccess_CallActivity" name="Call CompleteMsoProcess (Silent Success)" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="CRENWKI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_41</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="silentAccess_CallActivity" targetRef="EndEvent_5"/>

+    <bpmn2:endEvent id="EndEvent_5">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="isAAIQueryNameOk_ExclusiveGateway" name="Is Query Name Ok?" default="isAAIQueryNameNo_SequenceFlow">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>isAAIQueryNameNo_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>isAAIQueryNameYes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="isAAIQueryNameNo_SequenceFlow" name="No" sourceRef="isAAIQueryNameOk_ExclusiveGateway" targetRef="isReturnCode404_ExclusiveGateway"/>

+    <bpmn2:sequenceFlow id="isAAIQueryNameYes_SequenceFlow" name="Yes" sourceRef="isAAIQueryNameOk_ExclusiveGateway" targetRef="isNetworkActive_ExclusiveGateway">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_isAAIqueryNameGood") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="isReturnCode404_ExclusiveGateway" name="Is Code 404?" default="isReturnCode404_No_SequenceFlow">

+      <bpmn2:incoming>isAAIQueryNameNo_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>isReturnCode404_No_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>isReturnCode404_Yes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="isReturnCode404_No_SequenceFlow" name="No" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="aai_Error_EndEvent"/>

+    <bpmn2:sequenceFlow id="isReturnCode404_Yes_SequenceFlow" name="Yes" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="InclusiveGateway">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_aaiNameReturnCode" ) == "404"}
+
+]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">

+      <bpmn2:exclusiveGateway id="isRollbackOn_Network_ExclusiveGateway" name="Is Rollback On?" default="isRollbackOn_NoNetwork_SequenceFlow">

+        <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+        <bpmn2:outgoing>isRollbackOn_YesNetwork_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isRollbackOn_NoNetwork_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isRollbackOn_YesNetwork_SequenceFlow" name="Yes" sourceRef="isRollbackOn_Network_ExclusiveGateway" targetRef="isPONR_ExclusiveGateway">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_rollbackEnabled") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="isRollbackOn_NoNetwork_SequenceFlow" name="No" sourceRef="isRollbackOn_Network_ExclusiveGateway" targetRef="InclusiveGateway_6"/>

+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">

+        <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="subProcessStart_StartEvent" targetRef="isRollbackOn_Network_ExclusiveGateway"/>

+      <bpmn2:exclusiveGateway id="isPONR_ExclusiveGateway" name="isPONR?" default="isPONR_No_SequenceFlow">

+        <bpmn2:incoming>isRollbackOn_YesNetwork_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>isPONR_Yes_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isPONR_No_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isPONR_Yes_SequenceFlow" name="Yes" sourceRef="isPONR_ExclusiveGateway" targetRef="InclusiveGateway_6">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_isPONR") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="isPONR_No_SequenceFlow" name="No" sourceRef="isPONR_ExclusiveGateway" targetRef="isNetworkOk_ExclusiveGateway"/>

+      <bpmn2:exclusiveGateway id="isNetworkOk_ExclusiveGateway" name="is Network Ok?" default="isNetworkOk_No_SequenceFlow">

+        <bpmn2:incoming>isPONR_No_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>isNetworkOk_No_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isNetworkOk_Yes_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isNetworkOk_No_SequenceFlow" name="No" sourceRef="isNetworkOk_ExclusiveGateway" targetRef="sdncOk_ExclusiveGateway"/>

+      <bpmn2:sequenceFlow id="isNetworkOk_Yes_SequenceFlow" name="Yes" sourceRef="isNetworkOk_ExclusiveGateway" targetRef="networkContrailRollback_IntermediateThrowEvent">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_isNetworkRollbackNeeded") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:exclusiveGateway id="sdncOk_ExclusiveGateway" name="is Sdnc Ok?" default="sdncOk_No_ExclusiveGateway">

+        <bpmn2:incoming>isNetworkOk_No_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+        <bpmn2:outgoing>sdncOk_Yeso_ExclusiveGateway</bpmn2:outgoing>

+        <bpmn2:outgoing>sdncOk_No_ExclusiveGateway</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="sdncOk_Yeso_ExclusiveGateway" name="Yes" sourceRef="sdncOk_ExclusiveGateway" targetRef="prepareSDNCRollbackRequest_ScriptTask">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRENWKI_isSdncRollbackNeeded" ) == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="sdncOk_No_ExclusiveGateway" name="No" sourceRef="sdncOk_ExclusiveGateway" targetRef="validateRollbacksResponse_ScriptTask_2"/>

+      <bpmn2:intermediateThrowEvent id="networkContrailRollback_IntermediateThrowEvent" name="Network Rollback">

+        <bpmn2:incoming>isNetworkOk_Yes_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+        <bpmn2:compensateEventDefinition id="network_CompensateEventDefinition" activityRef="callRollbackContrailNetwork_ServiceTask" waitForCompletion="false"/>

+      </bpmn2:intermediateThrowEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="networkContrailRollback_IntermediateThrowEvent" targetRef="sdncOk_ExclusiveGateway"/>

+      <bpmn2:scriptTask id="prepareSDNCRollbackRequest_ScriptTask" name="Prepare SDNCRollback Request" scriptFormat="groovy">

+        <bpmn2:incoming>sdncOk_Yeso_ExclusiveGateway</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_53</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareSDNCRollbackRequest(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_53" name="" sourceRef="prepareSDNCRollbackRequest_ScriptTask" targetRef="sdncTopoRollback_IntermediateThrowEvent"/>

+      <bpmn2:intermediateThrowEvent id="sdncTopoRollback_IntermediateThrowEvent" name="SDNC Rollback">

+        <bpmn2:incoming>SequenceFlow_53</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_55</bpmn2:outgoing>

+        <bpmn2:compensateEventDefinition id="sndc_CompensateEventDefinition" activityRef="callRollbackSDNCAdapter_CallActivity" waitForCompletion="true"/>

+      </bpmn2:intermediateThrowEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_55" name="" sourceRef="sdncTopoRollback_IntermediateThrowEvent" targetRef="validateRollbacksResponse_ScriptTask_2"/>

+      <bpmn2:scriptTask id="prepareDBInfraErrorRequest_ScriptTask" name="Prepare DB Infra Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_47</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareDBRequestError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="prepareDBInfraErrorRequest_ScriptTask" targetRef="callDBInfraErrorUpdate_ServiceTask_1"/>

+      <bpmn2:serviceTask id="callDBInfraErrorUpdate_ServiceTask_1" name="Call DB Infra Error Update">

+        <bpmn2:extensionElements>

+          <camunda:connector>

+            <camunda:connectorId>http-connector</camunda:connectorId>

+            <camunda:inputOutput>

+              <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+              <camunda:inputParameter name="payload">${CRENWKI_createDBRequest}</camunda:inputParameter>

+              <camunda:inputParameter name="headers">

+                <camunda:map>

+                  <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+                </camunda:map>

+              </camunda:inputParameter>

+              <camunda:inputParameter name="method">POST</camunda:inputParameter>

+              <camunda:outputParameter name="CRENWKI_createDBResponse">${response}</camunda:outputParameter>

+              <camunda:outputParameter name="CRENWKI_dbReturnCode">${statusCode}</camunda:outputParameter>

+            </camunda:inputOutput>

+          </camunda:connector>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:serviceTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="callDBInfraErrorUpdate_ServiceTask_1" targetRef="prepareFalloutHandler_ScriptTask"/>

+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in variables="all"/>

+          <camunda:out variables="all"/>

+          <camunda:in source="CRENWKI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="validateRollbacksResponse_ScriptTask_2" name="Validate Rollback Responses" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_55</bpmn2:incoming>

+        <bpmn2:incoming>sdncOk_No_ExclusiveGateway</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.validateRollbackResponses(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="validateRollbacksResponse_ScriptTask_2" targetRef="InclusiveGateway_6"/>

+      <bpmn2:inclusiveGateway id="InclusiveGateway_6">

+        <bpmn2:incoming>isRollbackOn_NoNetwork_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>isPONR_Yes_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_47</bpmn2:outgoing>

+      </bpmn2:inclusiveGateway>

+      <bpmn2:sequenceFlow id="SequenceFlow_47" name="" sourceRef="InclusiveGateway_6" targetRef="prepareDBInfraErrorRequest_ScriptTask"/>

+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def buildErrorResponse = new CreateNetworkInstanceInfra()
+buildErrorResponse.buildErrorResponse(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="faultHandler_CallActivity"/>

+    </bpmn2:subProcess>

+    <bpmn2:boundaryEvent id="networkPOCompensation_BoundaryEvent" attachedToRef="callCreateNetwork_ServiceTask">

+      <bpmn2:compensateEventDefinition id="_CompensateEventDefinition_5" waitForCompletion="false"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:serviceTask id="callCreateNetwork_ServiceTask" name="Call Create Network">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="payload">${CRENWKI_createNetworkRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="url">${URN_mso_adapters_network_rest_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Authorization">#{BasicAuthHeaderValuePO}</camunda:entry>

+                <camunda:entry key="content-type">application/xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CRENWKI_networkReturnCode">${statusCode}</camunda:outputParameter>

+            <camunda:outputParameter name="CRENWKI_createNetworkResponse">${response}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_61</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_59</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_59" name="" sourceRef="callCreateNetwork_ServiceTask" targetRef="validateCreatePONetwork_ScriptTask"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="validateCreatePONetwork_ScriptTask" targetRef="callRESTReQueryNetworkID_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTReQueryNetworkID_ScriptTask" name="Call REST ReQuery Network Id in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTReQueryAAINetworkId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="callRESTReQueryNetworkID_ScriptTask" targetRef="callRESTUpdateContrailNetwork_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTUpdateContrailNetwork_ScriptTask" name="Call REST Update Contrail Network in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTUpdateContrailAAINetwork(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_46" name="PONR" sourceRef="callRESTUpdateContrailNetwork_ScriptTask" targetRef="prepareDBInfraRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareDBRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>

+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${CRENWKI_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CRENWKI_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="CRENWKI_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>

+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:in source="CRENWKI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:subProcess id="unexpectedErrors_SubProcess" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_1" name="Log / Print Unexpected Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_1" targetRef="EndEvent_1"/>

+      <bpmn2:startEvent id="StartEvent_1">

+        <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_2" errorRef="Error_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>

+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>link</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new  CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="link" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="callGetServiceInstance"/>

+    <bpmn2:callActivity id="callGetServiceInstance" name="Get&#xD;&#xA;Service&#xD;&#xA;Instance" calledElement="GenericGetService">

+      <bpmn2:extensionElements>

+        <camunda:in source="CRENWKI_serviceInstanceId" target="GENGS_serviceInstanceId"/>

+        <camunda:out source="GENGS_serviceInstance" target="CRENWKI_serviceInstance"/>

+        <camunda:out source="GENGS_FoundIndicator" target="GENGSI_FoundIndicator"/>

+        <camunda:out source="GENGS_SuccessIndicator" target="GENGSI_SuccessIndicator"/>

+        <camunda:out source="GENGS_siResourceLink" target="GENGSI_siResourceLink"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="GENGS_type" target="GENGS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>link</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="callAAIQuery_scriptTask" name="Call REST Query Network Name In AAI" scriptFormat="groovy">

+      <bpmn2:incoming>siFoundYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTQueryAAINetworkName(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="callAAIQuery_scriptTask" targetRef="isAAIQueryNameOk_ExclusiveGateway"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="callGetServiceInstance" targetRef="siFoundCheck"/>

+    <bpmn2:exclusiveGateway id="siFoundCheck" name="Service Instance Found?" default="siFoundNo">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>siFoundYes</bpmn2:outgoing>

+      <bpmn2:outgoing>siFoundNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="siFoundYes" name="Yes" sourceRef="siFoundCheck" targetRef="callAAIQuery_scriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGSI_FoundIndicator" ) == true && execution.getVariable("GENGSI_SuccessIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="siFoundNo" name="No" sourceRef="siFoundCheck" targetRef="workflowExceptionSINotFound"/>

+    <bpmn2:scriptTask id="workflowExceptionSINotFound" name="Create Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>siFoundNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 404, "Service Instance Not Found")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="" sourceRef="workflowExceptionSINotFound" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_97" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="callRESTQueryVpnBinding_ScriptTask" name="Call REST Query Vpn Binding in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTQueryAAINetworkVpnBinding(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="callRESTQueryVpnBinding_ScriptTask" targetRef="callRESTQueryNetworkPolicy_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryNetworkPolicy_ScriptTask" name="Call REST Query Network Policy in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.callRESTQueryAAINetworkPolicy(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="callRESTQueryNetworkPolicy_ScriptTask" targetRef="callRESTQueryNetworkTableRef_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareNetworkRequest_ScriptTask" name="Prepare Create Network Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_61</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()
+CreateNetworkInstanceInfra.prepareCreateNetworkRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_61" name="" sourceRef="prepareNetworkRequest_ScriptTask" targetRef="callCreateNetwork_ServiceTask"/>

+    <bpmn2:scriptTask id="callRESTQueryNetworkTableRef_ScriptTask" name="Call REST Query Network TableRef in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def CreateNetworkInstanceInfra = new CreateNetworkInstanceInfra()

+CreateNetworkInstanceInfra.callRESTQueryAAINetworkTableRef(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="callRESTQueryNetworkTableRef_ScriptTask" targetRef="prepareNetworkRequest_ScriptTask"/>

+    <bpmn2:association id="Association_1" sourceRef="sndcCompensation_BoundaryEvent" targetRef="callRollbackSDNCAdapter_CallActivity"/>

+    <bpmn2:association id="Association_3" sourceRef="networkPOCompensation_BoundaryEvent" targetRef="callRollbackContrailNetwork_ServiceTask"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="java.lang.Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateNetworkInstanceInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="createNetwork_startEvent">

+        <dc:Bounds height="36.0" width="36.0" x="192.0" y="185.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="193.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="350.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="249.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_62" bpmnElement="callAAIQuery_scriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="929.0" y="58.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_62" bpmnElement="isAAIQueryNameOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1097.0" y="72.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="121.0" x="1063.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_62" targetElement="_BPMNShape_ExclusiveGateway_62">

+        <di:waypoint xsi:type="dc:Point" x="1029.0" y="97.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1052.0" y="97.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1097.0" y="97.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1054.0" y="97.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_63" bpmnElement="validateCreatePONetwork_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="1259.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="isAAIQueryNameNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_62" targetElement="_BPMNShape_ExclusiveGateway_64">

+        <di:waypoint xsi:type="dc:Point" x="1122.0" y="122.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1122.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1129.0" y="120.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="isAAIQueryNameYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_62" targetElement="_BPMNShape_ExclusiveGateway_73">

+        <di:waypoint xsi:type="dc:Point" x="1147.0" y="97.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1214.0" y="97.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1146.0" y="97.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_64" bpmnElement="isReturnCode404_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1097.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1037.0" y="165.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="isReturnCode404_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_EndEvent_118">

+        <di:waypoint xsi:type="dc:Point" x="1122.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1122.0" y="260.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1123.0" y="260.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1123.0" y="288.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1097.0" y="225.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="isReturnCode404_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_InclusiveGateway_4">

+        <di:waypoint xsi:type="dc:Point" x="1147.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1215.0" y="205.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1149.0" y="205.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_118" bpmnElement="aai_Error_EndEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1105.0" y="288.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="97.0" x="1075.0" y="329.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_83" bpmnElement="callCreateNetwork_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="1101.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_67" bpmnElement="prepareSDNCTopoRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="276.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="137.0" y="1395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">

+        <dc:Bounds height="567.0" width="1122.0" x="17.0" y="585.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="48.0" y="1040.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="67.0" x="33.0" y="1081.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="756.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_67" bpmnElement="isSdncTopoOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1523.0" y="520.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="125.0" x="1487.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="sdncTopoNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_EndEvent_124">

+        <di:waypoint xsi:type="dc:Point" x="1573.0" y="545.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1682.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1577.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="sdncTopoYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_ScriptTask_133">

+        <di:waypoint xsi:type="dc:Point" x="1523.0" y="545.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1443.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1500.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="347.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="792.0" y="1390.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="564.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_124" bpmnElement="sndcError_EndEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1682.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="74.0" x="1663.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_19" bpmnElement="callAssignSDNCAdapter_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_29" bpmnElement="sndcCompensation_BoundaryEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1323.0" y="434.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1280.0" y="474.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_67" targetElement="_BPMNShape_CallActivity_19">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="356.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="374.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="374.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="395.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1389.0" y="374.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_CallActivity_19" targetElement="_BPMNShape_ScriptTask_131">

+        <di:waypoint xsi:type="dc:Point" x="1441.0" y="435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1499.0" y="435.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1473.0" y="435.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_1" bpmnElement="Association_1" sourceElement="_BPMNShape_BoundaryEvent_29" targetElement="_BPMNShape_CallActivity_21">

+        <di:waypoint xsi:type="dc:Point" x="1323.0" y="447.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1290.0" y="438.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="450.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="516.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="481.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="516.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ExclusiveGateway_90">

+        <di:waypoint xsi:type="dc:Point" x="84.0" y="1058.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="1058.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="161.0" y="1057.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="96.0" y="1058.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_128" bpmnElement="prepareDBInfraRequestSilentSucces_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="58.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_87" bpmnElement="silentSuccessCallDB_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1498.0" y="58.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_128" targetElement="_BPMNShape_ServiceTask_87">

+        <di:waypoint xsi:type="dc:Point" x="1441.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1498.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1456.0" y="98.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_24" bpmnElement="sdncTopoRollback_IntermediateThrowEvent">

+        <dc:Bounds height="36.0" width="36.0" x="470.0" y="867.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="96.0" x="440.0" y="906.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_130" bpmnElement="prepareSilentCompletion_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1632.0" y="58.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_20" bpmnElement="silentAccess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1766.0" y="58.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_55" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ServiceTask_87" targetElement="_BPMNShape_ScriptTask_130">

+        <di:waypoint xsi:type="dc:Point" x="1598.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1632.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1617.0" y="98.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_56" bpmnElement="SequenceFlow_41" sourceElement="_BPMNShape_ScriptTask_130" targetElement="_BPMNShape_CallActivity_20">

+        <di:waypoint xsi:type="dc:Point" x="1732.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1766.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1740.0" y="98.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_CallActivity_3">

+        <di:waypoint xsi:type="dc:Point" x="856.0" y="846.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="881.0" y="846.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_131" bpmnElement="validateSDNCResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1499.0" y="395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_131" targetElement="_BPMNShape_ExclusiveGateway_67">

+        <di:waypoint xsi:type="dc:Point" x="1549.0" y="475.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1549.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1548.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1548.0" y="520.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1545.0" y="503.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">

+        <di:waypoint xsi:type="dc:Point" x="564.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="506.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="506.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="447.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="528.0" y="1432.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">

+        <di:waypoint xsi:type="dc:Point" x="347.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="1435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="237.0" y="1435.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="290.0" y="1512.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_21" bpmnElement="callRollbackSDNCAdapter_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1190.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_73" bpmnElement="isNetworkActive_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1214.0" y="72.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="113.0" x="1191.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="isNetworkActiveYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_73" targetElement="_BPMNShape_ScriptTask_128">

+        <di:waypoint xsi:type="dc:Point" x="1264.0" y="97.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1328.0" y="97.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1328.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1341.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1269.0" y="97.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_44" bpmnElement="isNetworkActiveNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_73" targetElement="_BPMNShape_InclusiveGateway_4">

+        <di:waypoint xsi:type="dc:Point" x="1239.0" y="122.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1240.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1238.0" y="123.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_45" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_InclusiveGateway_4" targetElement="_BPMNShape_ScriptTask_245">

+        <di:waypoint xsi:type="dc:Point" x="1265.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1304.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1304.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1344.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1272.0" y="205.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_4" bpmnElement="InclusiveGateway">

+        <dc:Bounds height="50.0" width="50.0" x="1215.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1297.0" y="175.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="callRESTQueryNetworkId_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="506.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_88" bpmnElement="callRollbackContrailNetwork_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1190.0" y="1085.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_134" bpmnElement="callRESTReQueryNetworkID_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1176.0" y="1390.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_135" bpmnElement="callRESTUpdateContrailNetwork_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_134" targetElement="_BPMNShape_ScriptTask_135">

+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1084.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1143.0" y="1657.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_58" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="792.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="664.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="773.0" y="1430.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_65" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_ScriptTask_135" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="892.0" y="1430.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="947.0" y="1432.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_32" bpmnElement="networkPOCompensation_BoundaryEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1326.0" y="1137.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1344.0" y="1178.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_3" bpmnElement="Association_3" sourceElement="_BPMNShape_BoundaryEvent_32" targetElement="_BPMNShape_ServiceTask_88">

+        <di:waypoint xsi:type="dc:Point" x="1326.0" y="1150.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1290.0" y="1139.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_156" bpmnElement="callRESTQueryVpnBinding_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="624.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_156" targetElement="_BPMNShape_ScriptTask_215">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="704.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="739.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="717.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_49" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_ScriptTask_156">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="586.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="624.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="606.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_87" bpmnElement="SequenceFlow_59" sourceElement="_BPMNShape_ServiceTask_83" targetElement="_BPMNShape_ScriptTask_63">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="1181.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="1234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1259.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="1418.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_157" bpmnElement="prepareNetworkRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="970.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_89" bpmnElement="SequenceFlow_61" sourceElement="_BPMNShape_ScriptTask_157" targetElement="_BPMNShape_ServiceTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1050.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="1101.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="1077.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_90" bpmnElement="isRollbackOn_Network_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="1032.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="138.0" y="1092.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_31" bpmnElement="networkContrailRollback_IntermediateThrowEvent">

+        <dc:Bounds height="36.0" width="36.0" x="169.0" y="764.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="107.0" x="121.0" y="739.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="isRollbackOn_YesNetwork_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_ExclusiveGateway_215">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="1032.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="1004.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="186.0" y="1020.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="isRollbackOn_NoNetwork_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="1004.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="211.0" y="1062.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_215" bpmnElement="callRESTQueryNetworkPolicy_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="739.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_60" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_215" targetElement="_BPMNShape_ScriptTask_333">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="819.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="835.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="835.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="851.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1390.0" y="828.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_24" bpmnElement="InclusiveGateway_6">

+        <dc:Bounds height="50.0" width="50.0" x="336.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="361.0" y="1009.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_215" bpmnElement="isPONR_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="60.0" x="88.0" y="969.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_77" bpmnElement="isPONR_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="979.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="204.0" y="983.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_85" bpmnElement="isPONR_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_ExclusiveGateway_216">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="954.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="884.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="191.0" y="933.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_216" bpmnElement="isNetworkOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="834.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="95.0" x="68.0" y="849.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_86" bpmnElement="isNetworkOk_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_216" targetElement="_BPMNShape_ExclusiveGateway_217">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="859.0"/>

+        <di:waypoint xsi:type="dc:Point" x="273.0" y="859.0"/>

+        <di:waypoint xsi:type="dc:Point" x="273.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="211.0" y="863.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_90" bpmnElement="isNetworkOk_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_216" targetElement="_BPMNShape_IntermediateThrowEvent_31">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="834.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="816.0"/>

+        <di:waypoint xsi:type="dc:Point" x="188.0" y="816.0"/>

+        <di:waypoint xsi:type="dc:Point" x="188.0" y="800.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="188.0" y="816.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_217" bpmnElement="sdncOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="336.0" y="756.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="78.0" x="323.0" y="722.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_92" bpmnElement="sdncOk_Yeso_ExclusiveGateway" sourceElement="_BPMNShape_ExclusiveGateway_217" targetElement="_BPMNShape_ScriptTask_261">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="438.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="386.0" y="779.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_93" bpmnElement="sdncOk_No_ExclusiveGateway" sourceElement="_BPMNShape_ExclusiveGateway_217" targetElement="_BPMNShape_ScriptTask_262">

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="806.0"/>

+        <di:waypoint xsi:type="dc:Point" x="362.0" y="845.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="366.0" y="806.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="169.0" y="1536.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="187.0" y="1577.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_EndEvent_177">

+        <di:waypoint xsi:type="dc:Point" x="187.0" y="1475.0"/>

+        <di:waypoint xsi:type="dc:Point" x="187.0" y="1536.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="184.0" y="1475.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1028.0" y="924.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1046.0" y="965.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="886.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="924.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1043.0" y="888.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ServiceTask_97" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="676.0" y="846.0"/>

+        <di:waypoint xsi:type="dc:Point" x="756.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="686.0" y="846.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_97" bpmnElement="callDBInfraErrorUpdate_ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_218" bpmnElement="prepareDBInfraErrorRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="940.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_218" targetElement="_BPMNShape_ServiceTask_97">

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="940.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="886.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="623.0" y="927.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_181" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="1898.0" y="80.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1916.0" y="121.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_CallActivity_20" targetElement="_BPMNShape_EndEvent_181">

+        <di:waypoint xsi:type="dc:Point" x="1866.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1898.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1875.0" y="98.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_43" bpmnElement="link" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_CallActivity_72">

+        <di:waypoint xsi:type="dc:Point" x="616.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="678.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="651.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_245" bpmnElement="callRESTQueryCloudRegion_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_53" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ScriptTask_245" targetElement="_BPMNShape_ScriptTask_67">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="243.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="276.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1390.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_38" bpmnElement="BoundaryEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1581.0" y="377.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_69" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_BoundaryEvent_38" targetElement="_BPMNShape_EndEvent_124">

+        <di:waypoint xsi:type="dc:Point" x="1617.0" y="395.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1700.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1700.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1697.0" y="467.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_261" bpmnElement="prepareSDNCRollbackRequest_ScriptTask">

+        <dc:Bounds height="79.0" width="100.0" x="438.0" y="742.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_IntermediateThrowEvent_31" targetElement="_BPMNShape_ExclusiveGateway_217">

+        <di:waypoint xsi:type="dc:Point" x="205.0" y="782.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="238.0" y="782.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_262" bpmnElement="validateRollbacksResponse_ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="312.0" y="845.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_76" bpmnElement="SequenceFlow_47" sourceElement="_BPMNShape_InclusiveGateway_24" targetElement="_BPMNShape_ScriptTask_218">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="548.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="548.0" y="980.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="980.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="393.0" y="979.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_84" bpmnElement="SequenceFlow_53" sourceElement="_BPMNShape_ScriptTask_261" targetElement="_BPMNShape_IntermediateThrowEvent_24">

+        <di:waypoint xsi:type="dc:Point" x="488.0" y="820.0"/>

+        <di:waypoint xsi:type="dc:Point" x="488.0" y="867.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="485.0" y="847.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_88" bpmnElement="SequenceFlow_55" sourceElement="_BPMNShape_IntermediateThrowEvent_24" targetElement="_BPMNShape_ScriptTask_262">

+        <di:waypoint xsi:type="dc:Point" x="470.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="441.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="441.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="412.0" y="885.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="448.0" y="885.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_262" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="362.0" y="925.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="358.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_63" targetElement="_BPMNShape_ScriptTask_134">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="1339.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1310.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1276.0" y="1430.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="1373.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_28" bpmnElement="unexpectedErrors_SubProcess" isExpanded="true">

+        <dc:Bounds height="188.0" width="394.0" x="21.0" y="381.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_71" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="54.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="72.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_270" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="169.0" y="436.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_220" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="330.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="348.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_StartEvent_71" targetElement="_BPMNShape_ScriptTask_270">

+        <di:waypoint xsi:type="dc:Point" x="90.0" y="476.0"/>

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="476.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="129.0" y="476.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_270" targetElement="_BPMNShape_EndEvent_220">

+        <di:waypoint xsi:type="dc:Point" x="269.0" y="476.0"/>

+        <di:waypoint xsi:type="dc:Point" x="330.0" y="476.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="301.0" y="476.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_72" bpmnElement="callGetServiceInstance">

+        <dc:Bounds height="80.0" width="100.0" x="678.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_244" bpmnElement="siFoundCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="816.0" y="177.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="148.0" x="861.0" y="205.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_CallActivity_72" targetElement="_BPMNShape_ExclusiveGateway_244">

+        <di:waypoint xsi:type="dc:Point" x="778.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="816.0" y="202.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="791.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="siFoundYes" sourceElement="_BPMNShape_ExclusiveGateway_244" targetElement="_BPMNShape_ScriptTask_62">

+        <di:waypoint xsi:type="dc:Point" x="841.0" y="177.0"/>

+        <di:waypoint xsi:type="dc:Point" x="841.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="929.0" y="98.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="845.0" y="111.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_247" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1039.0" y="275.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1057.0" y="316.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_331" bpmnElement="workflowExceptionSINotFound">

+        <dc:Bounds height="80.0" width="100.0" x="885.0" y="253.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="siFoundNo" sourceElement="_BPMNShape_ExclusiveGateway_244" targetElement="_BPMNShape_ScriptTask_331">

+        <di:waypoint xsi:type="dc:Point" x="841.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="841.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="885.0" y="293.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="848.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ScriptTask_331" targetElement="_BPMNShape_EndEvent_247">

+        <di:waypoint xsi:type="dc:Point" x="985.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1039.0" y="293.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1004.0" y="293.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_333" bpmnElement="callRESTQueryNetworkTableRef_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="851.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_333" targetElement="_BPMNShape_ScriptTask_157">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="931.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="950.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="950.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="970.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="943.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateServiceInstanceInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateServiceInstanceInfra.bpmn
new file mode 100644
index 0000000..46faf80
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateServiceInstanceInfra.bpmn
@@ -0,0 +1,466 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateServiceInstanceInfra" name="CreateServiceInstanceInfra" isExecutable="true">

+    <bpmn2:scriptTask id="callRESTQueryNetworkId_ScriptTask" name="Call REST PUT to create SI in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>isReturnCode404_Yes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.callRESTCreateServiceInstanceInAAI(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_46" name="" sourceRef="callRESTQueryNetworkId_ScriptTask" targetRef="prepareDBInfraRequest_ScriptTask"/>

+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">

+      <bpmn2:scriptTask id="prepareDBInfraErrorRequest_ScriptTask" name="Prepare DB Infra Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_47</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.prepareDBRequestError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="prepareDBInfraErrorRequest_ScriptTask" targetRef="callDBInfraErrorUpdate_ServiceTask_1"/>

+      <bpmn2:serviceTask id="callDBInfraErrorUpdate_ServiceTask_1" name="Call DB Infra Error Update">

+        <bpmn2:extensionElements>

+          <camunda:connector>

+            <camunda:connectorId>http-connector</camunda:connectorId>

+            <camunda:inputOutput>

+              <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+              <camunda:inputParameter name="payload">${CRESI_createDBInfraErrorRequest}</camunda:inputParameter>

+              <camunda:inputParameter name="headers">

+                <camunda:map>

+                  <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+                </camunda:map>

+              </camunda:inputParameter>

+              <camunda:inputParameter name="method">POST</camunda:inputParameter>

+              <camunda:outputParameter name="CRESI_errorDBInfraErrorResponse">${response}</camunda:outputParameter>

+              <camunda:outputParameter name="CRESI_errorDBInfraErrorErrorCode">${statusCode}</camunda:outputParameter>

+            </camunda:inputOutput>

+          </camunda:connector>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:serviceTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="callDBInfraErrorUpdate_ServiceTask_1" targetRef="prepareFalloutHandler_ScriptTask"/>

+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.buildErrorResponse(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="sendSyncError_ScriptTask"/>

+      <bpmn2:scriptTask id="sendSyncError_ScriptTask" name="Send Sync Ack Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.sendSyncError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="sendSyncError_ScriptTask" targetRef="faultHandler_CallActivity"/>

+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in variables="all"/>

+          <camunda:out variables="all"/>

+          <camunda:in source="CRESI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="requestId" target="requestId"/>

+          <camunda:in source="serviceInstanceId" target="serviceInstanceId"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">

+        <bpmn2:outgoing>SequenceFlow_47</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_47" name="" sourceRef="subProcessStart_StartEvent" targetRef="prepareDBInfraErrorRequest_ScriptTask"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.prepareDBRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>

+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${CRESI_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CRESI_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="CRESI_createDBCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Post Process &amp; Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>

+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:in source="CRESI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="requestId" target="requestId"/>

+        <camunda:in source="serviceInstanceId" target="serviceInstanceId"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>

+    <bpmn2:exclusiveGateway id="isReturnCode404_ExclusiveGateway" name="Is Code 404?" default="isReturnCode404_No_SequenceFlow">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>isReturnCode404_No_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>isReturnCode404_Yes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="isReturnCode404_No_SequenceFlow" name="No" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="aai_DuplicateFound_EndEvent"/>

+    <bpmn2:sequenceFlow id="isReturnCode404_Yes_SequenceFlow" name="Yes" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="callRESTQueryNetworkId_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CRESI_queryAAISINameCode" ) == "404"}
+
+]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="callRESTQueryCustomerSIName_ScriptTask" name="Call REST Query for SI by Name in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.callRESTQueryAAISIName(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="callRESTQueryCustomerSIName_ScriptTask" targetRef="isReturnCode404_ExclusiveGateway"/>

+    <bpmn2:scriptTask id="callAAIQuery_scriptTask" name="Call REST Query SubscriberId in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.callRESTQueryAAIGlobalSubscriberId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="callAAIQuery_scriptTask" targetRef="callRESTQueryCustomerSIName_ScriptTask"/>

+    <bpmn2:endEvent id="aai_DuplicateFound_EndEvent" name="Duplicate Found in AAI">

+      <bpmn2:incoming>isReturnCode404_No_SequenceFlow</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_53" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="callAAIQuery_scriptTask"/>

+    <bpmn2:subProcess id="UnexpectedError_SubProcess_1" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_1">

+        <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_92" errorRef="Error_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>

+      <bpmn2:scriptTask id="ScriptTask_1" name="Log / Print Unexpected Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateServiceInstanceInfra = new CreateServiceInstanceInfra()
+CreateServiceInstanceInfra.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_1" targetRef="EndEvent_1"/>

+    </bpmn2:subProcess>

+    <bpmn2:startEvent id="createNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="createNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="java.lang.Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateServiceInstanceInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="createNetwork_startEvent">

+        <dc:Bounds height="36.0" width="36.0" x="423.0" y="185.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="65.0" x="409.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="612.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">

+        <di:waypoint xsi:type="dc:Point" x="459.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="498.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_62" bpmnElement="callAAIQuery_scriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="997.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_62" targetElement="_BPMNShape_ScriptTask_135">

+        <di:waypoint xsi:type="dc:Point" x="1097.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1122.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_64" bpmnElement="isReturnCode404_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1368.0" y="177.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1353.0" y="154.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="isReturnCode404_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_EndEvent_118">

+        <di:waypoint xsi:type="dc:Point" x="1418.0" y="202.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1477.0" y="202.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1536.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1418.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="isReturnCode404_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_ScriptTask_133">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1392.0" y="264.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="312.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1395.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="810.0" y="611.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_118" bpmnElement="aai_DuplicateFound_EndEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1536.0" y="185.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="125.0" x="1500.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1167.0" y="775.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">

+        <dc:Bounds height="301.0" width="751.0" x="346.0" y="427.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="408.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="67.0" x="393.0" y="674.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="678.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="775.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="456.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="614.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="712.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="803.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="743.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="803.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="778.0" y="517.0"/>

+        <di:waypoint xsi:type="dc:Point" x="810.0" y="517.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="803.0" y="517.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="694.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="775.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="727.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">

+        <di:waypoint xsi:type="dc:Point" x="1344.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1306.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1306.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1267.0" y="815.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1298.0" y="815.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="callRESTQueryNetworkId_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="312.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_135" bpmnElement="callRESTQueryCustomerSIName_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1176.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_65" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="392.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="456.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="427.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_158" bpmnElement="sendSyncError_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="810.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_57" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ScriptTask_158" targetElement="_BPMNShape_CallActivity_3">

+        <di:waypoint xsi:type="dc:Point" x="860.0" y="557.0"/>

+        <di:waypoint xsi:type="dc:Point" x="860.0" y="611.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="857.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1083.0" y="797.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1101.0" y="838.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="984.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1002.0" y="674.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="910.0" y="651.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="651.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="909.0" y="651.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ServiceTask_97" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="634.0" y="517.0"/>

+        <di:waypoint xsi:type="dc:Point" x="678.0" y="517.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="644.0" y="517.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_97" bpmnElement="callDBInfraErrorUpdate_ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="534.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_218" bpmnElement="prepareDBInfraErrorRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="534.0" y="611.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_218" targetElement="_BPMNShape_ServiceTask_97">

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="611.0"/>

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="557.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="581.0" y="598.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_43" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_ScriptTask_62">

+        <di:waypoint xsi:type="dc:Point" x="903.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="997.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="911.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_76" bpmnElement="SequenceFlow_47" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_218">

+        <di:waypoint xsi:type="dc:Point" x="444.0" y="651.0"/>

+        <di:waypoint xsi:type="dc:Point" x="534.0" y="651.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="451.0" y="651.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="536.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="614.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="575.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_EndEvent_177">

+        <di:waypoint xsi:type="dc:Point" x="1167.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1119.0" y="815.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1140.0" y="815.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_135" targetElement="_BPMNShape_ExclusiveGateway_64">

+        <di:waypoint xsi:type="dc:Point" x="1276.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1317.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1317.0" y="202.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1368.0" y="202.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1324.0" y="202.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_27" bpmnElement="UnexpectedError_SubProcess_1" isExpanded="true">

+        <dc:Bounds height="232.0" width="409.0" x="349.0" y="837.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_70" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="417.0" y="942.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="435.0" y="983.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_269" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="492.0" y="920.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_219" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="647.0" y="939.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="665.0" y="980.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_StartEvent_70" targetElement="_BPMNShape_ScriptTask_269">

+        <di:waypoint xsi:type="dc:Point" x="453.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="492.0" y="960.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="478.0" y="960.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_269" targetElement="_BPMNShape_EndEvent_219">

+        <di:waypoint xsi:type="dc:Point" x="592.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="957.0"/>

+        <di:waypoint xsi:type="dc:Point" x="647.0" y="957.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="614.0" y="960.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleInfra.bpmn
new file mode 100644
index 0000000..0d08da3
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleInfra.bpmn
@@ -0,0 +1,472 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_pNTO8MRhEeWv36YLr7PC3Q" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateVfModuleInfra" name="CreateVfModuleInfra" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="PreProcessRequest"/>

+    <bpmn2:callActivity id="DoCreateVfModuleSubprocess" name="Do Create Vf Module" calledElement="DoCreateVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DoCreateVfModuleRequest" target="DoCreateVfModuleRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="isVidRequest" target="isVidRequest"/>

+        <camunda:in source="newVfModuleId" target="newVfModuleId"/>

+        <camunda:out source="DCVFM_vnfId" target="CVFMI_vnfId"/>

+        <camunda:out source="DCVFM_vfModuleId" target="CVFMI_vfModuleId"/>

+        <camunda:out source="RollbackData" target="RollbackData"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="WorkflowResponse" target="CVFMI_WorkflowResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="SendResponse" camunda:asyncAfter="true" name="Send Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.sendResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="SendResponse" targetRef="DoCreateVfModuleSubprocess"/>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="To FinishLine">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_34" name="FinishLine"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="DoCreateVfModuleSubprocess" targetRef="IntermediateThrowEvent_1"/>

+    <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="FinishLine">

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_35" name="FinishLine"/>

+    </bpmn2:intermediateCatchEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="IntermediateCatchEvent_1" targetRef="PrepareUpdateInfraRequest"/>

+    <bpmn2:scriptTask id="PrepareUpdateInfraRequest" name="Prepare Update Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.prepareUpdateInfraRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:serviceTask id="ServiceTask_1" name="Update Infra Request">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">${CVFMI_updateInfraRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>

+            <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="PrepareUpdateInfraRequest" targetRef="ServiceTask_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ServiceTask_1" targetRef="UpdateInfraRequestResponseCheck"/>

+    <bpmn2:scriptTask id="PrepareMSOCompletionHandler" name="Prepare MSO Completion Handler" scriptFormat="groovy">

+      <bpmn2:incoming>updateInfraRequestResponseGood</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="PrepareMSOCompletionHandler" targetRef="MSOCompletionHandler"/>

+    <bpmn2:callActivity id="MSOCompletionHandler" name="MSO Completion Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="CVFMI_msoCompletionRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:exclusiveGateway id="UpdateInfraRequestResponseCheck" name="Success? " default="updateInfraRequestResponseBad">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>updateInfraRequestResponseBad</bpmn2:outgoing>

+      <bpmn2:outgoing>updateInfraRequestResponseGood</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="updateInfraRequestResponseBad" name="no" sourceRef="UpdateInfraRequestResponseCheck" targetRef="EndEvent_2"/>

+    <bpmn2:sequenceFlow id="updateInfraRequestResponseGood" name="yes" sourceRef="UpdateInfraRequestResponseCheck" targetRef="PrepareMSOCompletionHandler">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_dbResponseCode" ) == '200'}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>updateInfraRequestResponseBad</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_2" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:subProcess id="ErrorHandler" name="Error Handler" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ValidateRollbackResponse" name="Validate Rollback Response" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.validateRollbackResponse(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ValidateRollbackResponse" targetRef="InclusiveGateway_1"/>

+      <bpmn2:callActivity id="ScriptTask_1" name="Do CreateVfModule Rollback" calledElement="DoCreateVfModuleRollback">

+        <bpmn2:extensionElements>

+          <camunda:in source="RollbackData" target="RollbackData"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+          <camunda:in source="isVidRequest" target="isVidRequest"/>

+          <camunda:out source="MSOWorkflowException" target="RollbackWorkflowException"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_1" targetRef="ValidateRollbackResponse"/>

+      <bpmn2:startEvent id="StartEvent_2" name="Catch All Errors">

+        <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="StartEvent_2" targetRef="ExclusiveGateway_1"/>

+      <bpmn2:callActivity id="FalloutHandler" name="Fallout Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="CVFMI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="FalloutHandler" targetRef="EndEvent_3"/>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_11"/>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="PrepareFalloutHandler" name="Prepare Fallout Handler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfm = new CreateVfModuleInfra()
+cvfm.falloutHandlerPrep(execution, 'CVFMI_FalloutHandlerRequest')]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="PrepareFalloutHandler" targetRef="FalloutHandler"/>

+      <bpmn2:inclusiveGateway id="InclusiveGateway_1">

+        <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+        <bpmn2:incoming>isRollbackOnNoSequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      </bpmn2:inclusiveGateway>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="InclusiveGateway_1" targetRef="PrepareFalloutHandler"/>

+      <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Is Rollback On? " default="isRollbackOnNoSequenceFlow">

+        <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+        <bpmn2:outgoing>isRollbackOnNoSequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>IsRollbackOnYesSequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isRollbackOnNoSequenceFlow" name="no" sourceRef="ExclusiveGateway_1" targetRef="InclusiveGateway_1"/>

+      <bpmn2:scriptTask id="LogAndSaveOriginalException" name="Log and Save Original Exception" scriptFormat="groovy">

+        <bpmn2:incoming>IsRollbackOnYesSequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfm = new CreateVfModuleInfra()
+cvfm.logAndSaveOriginalException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="IsRollbackOnYesSequenceFlow" name="yes" sourceRef="ExclusiveGateway_1" targetRef="LogAndSaveOriginalException">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_rollbackEnabled") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="LogAndSaveOriginalException" targetRef="ScriptTask_1"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="SetSuccessIndicator" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[execution.setVariable("CreateVfModuleSuccessIndicator", true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_10"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="MSOCompletionHandler" targetRef="SetSuccessIndicator"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="SetSuccessIndicator" targetRef="EndEvent_1"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="ErrorHandler">

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_3"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_4"/>

+    <bpmn2:endEvent id="EndEvent_4">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_12"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="PreProcessRequest" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="PreProcessRequest" targetRef="SendResponse"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_2" errorCode="RESTFault" name="REST Fault"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="41.0" y="231.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">

+        <di:waypoint xsi:type="dc:Point" x="77.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="226.0" y="249.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="99.0" y="249.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="PreProcessRequest">

+        <dc:Bounds height="80.0" width="100.0" x="226.0" y="209.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="SendResponse">

+        <dc:Bounds height="80.0" width="100.0" x="432.0" y="209.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="326.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="432.0" y="249.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="348.0" y="249.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_178" bpmnElement="DoCreateVfModuleSubprocess">

+        <dc:Bounds height="80.0" width="145.0" x="612.0" y="209.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_178">

+        <di:waypoint xsi:type="dc:Point" x="532.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="249.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_47" bpmnElement="IntermediateThrowEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="823.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="841.0" y="272.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_178" targetElement="_BPMNShape_IntermediateThrowEvent_47">

+        <di:waypoint xsi:type="dc:Point" x="756.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="823.0" y="249.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_32" bpmnElement="IntermediateCatchEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="39.0" y="349.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="65.0" x="25.0" y="390.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_219" bpmnElement="PrepareUpdateInfraRequest">

+        <dc:Bounds height="80.0" width="100.0" x="127.0" y="327.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_103" bpmnElement="ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="277.0" y="327.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_179" bpmnElement="UpdateInfraRequestResponseCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="443.0" y="341.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="68.0" x="435.0" y="308.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_220" bpmnElement="PrepareMSOCompletionHandler">

+        <dc:Bounds height="80.0" width="100.0" x="552.0" y="327.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_221" bpmnElement="MSOCompletionHandler">

+        <dc:Bounds height="80.0" width="100.0" x="708.0" y="327.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1020.0" y="349.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1038.0" y="390.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="452.0" y="469.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="470.0" y="510.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_IntermediateCatchEvent_32" targetElement="_BPMNShape_ScriptTask_219">

+        <di:waypoint xsi:type="dc:Point" x="75.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="127.0" y="367.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="105.0" y="367.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_219" targetElement="_BPMNShape_ServiceTask_103">

+        <di:waypoint xsi:type="dc:Point" x="227.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="277.0" y="367.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ServiceTask_103" targetElement="_BPMNShape_ExclusiveGateway_179">

+        <di:waypoint xsi:type="dc:Point" x="377.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="410.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="410.0" y="366.0"/>

+        <di:waypoint xsi:type="dc:Point" x="443.0" y="366.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="407.0" y="366.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="updateInfraRequestResponseBad" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="468.0" y="391.0"/>

+        <di:waypoint xsi:type="dc:Point" x="469.0" y="421.0"/>

+        <di:waypoint xsi:type="dc:Point" x="470.0" y="421.0"/>

+        <di:waypoint xsi:type="dc:Point" x="470.0" y="469.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="459.0" y="419.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="updateInfraRequestResponseGood" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_ScriptTask_220">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="366.0"/>

+        <di:waypoint xsi:type="dc:Point" x="523.0" y="366.0"/>

+        <di:waypoint xsi:type="dc:Point" x="523.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="552.0" y="367.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="510.0" y="367.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_220" targetElement="_BPMNShape_ScriptTask_221">

+        <di:waypoint xsi:type="dc:Point" x="652.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="367.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="678.0" y="367.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_20" bpmnElement="ErrorHandler" isExpanded="true">

+        <dc:Bounds height="385.0" width="925.0" x="48.0" y="540.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="72.0" y="844.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="60.0" y="886.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_222" bpmnElement="PrepareFalloutHandler">

+        <dc:Bounds height="80.0" width="100.0" x="564.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_223" bpmnElement="FalloutHandler">

+        <dc:Bounds height="80.0" width="100.0" x="708.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_179" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="864.0" y="694.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="882.0" y="735.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_44" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="955.0" y="690.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="970.0" y="731.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_180" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1049.0" y="690.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1067.0" y="731.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_222" targetElement="_BPMNShape_ScriptTask_223">

+        <di:waypoint xsi:type="dc:Point" x="664.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="712.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="689.0" y="712.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_223" targetElement="_BPMNShape_EndEvent_179">

+        <di:waypoint xsi:type="dc:Point" x="808.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="864.0" y="712.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="836.0" y="712.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_BoundaryEvent_44" targetElement="_BPMNShape_EndEvent_180">

+        <di:waypoint xsi:type="dc:Point" x="991.0" y="708.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1049.0" y="708.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1015.0" y="708.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_241" bpmnElement="SetSuccessIndicator">

+        <dc:Bounds height="79.0" width="103.0" x="858.0" y="328.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_221" targetElement="_BPMNShape_ScriptTask_241">

+        <di:waypoint xsi:type="dc:Point" x="808.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="858.0" y="367.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_241" targetElement="_BPMNShape_EndEvent_177">

+        <di:waypoint xsi:type="dc:Point" x="960.0" y="367.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1020.0" y="367.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_223" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="205.0" y="836.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="102.0" x="193.0" y="901.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_266" bpmnElement="ValidateRollbackResponse">

+        <dc:Bounds height="79.0" width="103.0" x="312.0" y="554.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_25" bpmnElement="InclusiveGateway_1">

+        <dc:Bounds height="50.0" width="50.0" x="459.0" y="686.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="484.0" y="741.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_StartEvent_54" targetElement="_BPMNShape_ExclusiveGateway_223">

+        <di:waypoint xsi:type="dc:Point" x="108.0" y="862.0"/>

+        <di:waypoint xsi:type="dc:Point" x="156.0" y="862.0"/>

+        <di:waypoint xsi:type="dc:Point" x="156.0" y="861.0"/>

+        <di:waypoint xsi:type="dc:Point" x="205.0" y="861.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="153.0" y="862.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="isRollbackOnNoSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_InclusiveGateway_25">

+        <di:waypoint xsi:type="dc:Point" x="255.0" y="861.0"/>

+        <di:waypoint xsi:type="dc:Point" x="354.0" y="861.0"/>

+        <di:waypoint xsi:type="dc:Point" x="354.0" y="711.0"/>

+        <di:waypoint xsi:type="dc:Point" x="459.0" y="711.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="324.0" y="866.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ScriptTask_266" targetElement="_BPMNShape_InclusiveGateway_25">

+        <di:waypoint xsi:type="dc:Point" x="414.0" y="593.0"/>

+        <di:waypoint xsi:type="dc:Point" x="484.0" y="593.0"/>

+        <di:waypoint xsi:type="dc:Point" x="484.0" y="686.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="462.0" y="593.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_InclusiveGateway_25" targetElement="_BPMNShape_ScriptTask_222">

+        <di:waypoint xsi:type="dc:Point" x="509.0" y="711.0"/>

+        <di:waypoint xsi:type="dc:Point" x="527.0" y="711.0"/>

+        <di:waypoint xsi:type="dc:Point" x="527.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="564.0" y="712.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="533.0" y="712.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_267" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="79.0" width="103.0" x="179.0" y="554.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_267" targetElement="_BPMNShape_ScriptTask_266">

+        <di:waypoint xsi:type="dc:Point" x="281.0" y="593.0"/>

+        <di:waypoint xsi:type="dc:Point" x="312.0" y="593.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="294.0" y="593.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_283" bpmnElement="LogAndSaveOriginalException">

+        <dc:Bounds height="79.0" width="103.0" x="179.0" y="693.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="IsRollbackOnYesSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ScriptTask_283">

+        <di:waypoint xsi:type="dc:Point" x="230.0" y="836.0"/>

+        <di:waypoint xsi:type="dc:Point" x="230.0" y="771.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="240.0" y="804.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ScriptTask_283" targetElement="_BPMNShape_ScriptTask_267">

+        <di:waypoint xsi:type="dc:Point" x="230.0" y="693.0"/>

+        <di:waypoint xsi:type="dc:Point" x="230.0" y="632.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleVolumeInfraV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleVolumeInfraV1.bpmn
new file mode 100644
index 0000000..9beaad9
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVfModuleVolumeInfraV1.bpmn
@@ -0,0 +1,480 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_CyftwG_HEeaKe-v4u9MasA" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateVfModuleVolumeInfraV1" name="CreateVfModuleVolumeInfraV1" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_createVfModuleVolumeInfraV1" camunda:asyncAfter="true">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_createVfModuleVolumeInfraV1" targetRef="ScriptTask_preProcessRequest"/>

+    <bpmn2:subProcess id="SubProcess_exceptionHandler" name="Exception Handler" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_catchErrors" name="Catch Exceptions">

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="StartEvent_catchErrors" targetRef="ExclusiveGateway_isSyncResponseSent"/>

+      <bpmn2:exclusiveGateway id="ExclusiveGateway_isSyncResponseSent" name="Sync response sent?" default="SequenceFlow_syncResponseNotSent">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_syncResponseSent</bpmn2:outgoing>

+        <bpmn2:outgoing>SequenceFlow_syncResponseNotSent</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="SequenceFlow_syncResponseSent" name="Yes" sourceRef="ExclusiveGateway_isSyncResponseSent" targetRef="ScriptTask_prefalloutHandlerRequest">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{CVMVINFRAV1_syncResponseSent == true}</bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:scriptTask id="ScriptTask_sendSyncErrorResp" name="Send sync error response" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_syncResponseNotSent</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('sendSyncError', execution, isDebugLogEnabled)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_syncResponseNotSent" name="No" sourceRef="ExclusiveGateway_isSyncResponseSent" targetRef="ScriptTask_sendSyncErrorResp"/>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ScriptTask_sendSyncErrorResp" targetRef="ScriptTask_prefalloutHandlerRequest"/>

+      <bpmn2:scriptTask id="ScriptTask_prefalloutHandlerRequest" name="Prepare Fallout Handler Request" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_syncResponseSent</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('prepareFalloutHandlerRequest', execution, isDebugLogEnabled)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="ScriptTask_prefalloutHandlerRequest" targetRef="CallActivity_callFalloutHandler"/>

+      <bpmn2:callActivity id="CallActivity_callFalloutHandler" name="Call Fallout Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="CVMVINFRAV1_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="CallActivity_callFalloutHandler" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4" name="End">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="TerminateEventDefinition_2"/>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="ScriptTask_preProcessRequest" name="Preprocess Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('preProcessRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ScriptTask_preProcessRequest" targetRef="ScriptTask_sendSyncAckResponse"/>

+    <bpmn2:scriptTask id="ScriptTask_sendSyncAckResponse" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('sendSyncResponse', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_sendSyncAckResponse" targetRef="ExclusiveGateway_isVolGrpnamePresent"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_isVolGrpnamePresent" name="Is volume group name present?" default="SequenceFlow_volGrpNameMissing">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_volGrpNamePresent</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_volGrpNameMissing</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_volGrpNamePresent" name="" sourceRef="ExclusiveGateway_isVolGrpnamePresent" targetRef="CallActivity_callGenericGetSI">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{CVMVINFRAV1_volumeGroupName != null  && CVMVINFRAV1_volumeGroupName != "" }]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_volGrpNameMissing" name="" sourceRef="ExclusiveGateway_isVolGrpnamePresent" targetRef="ScriptTask_buildError"/>

+    <bpmn2:scriptTask id="ScriptTask_buildError" name="Build Error" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_volGrpNameMissing</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('buildWorkflowException', execution, 2500, "Volume group name not present in request.", isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ScriptTask_buildError" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="CallActivity_callGenericGetSI" name="Call Generic Get Service Instance" calledElement="GenericGetService">

+      <bpmn2:extensionElements>

+        <camunda:in source="CVMVINFRAV1_serviceInstanceId" target="GENGS_serviceInstanceId"/>

+        <camunda:out source="GENGS_FoundIndicator" target="GENGSI_FoundIndicator"/>

+        <camunda:out source="GENGS_SuccessIndicator" target="GENGSI_SuccessIndicator"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="CVMVINFRAV1_serviceType" target="GENGS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_volGrpNamePresent</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:callActivity id="CallActivity_doCreateVfModuleVolumeV1" name="Call DoCreateVfModuleVolumeV1" calledElement="DoCreateVfModuleVolumeV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="CVMVINFRAV1_Request" target="DoCreateVfModuleVolumeV1Request"/>

+        <camunda:in source="CVMVINFRAV1_vnfId" target="vnf-id"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="CVMVINFRAV1_volumeGroupId" target="volume-group-id"/>

+        <camunda:out source="DCVFMODVOLV1_SuccessIndicator" target="DCVFMODVOLV1_SuccessIndicator"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="CVMVINFRAV1_isVidRequest" target="is-vid-request"/>

+        <camunda:in source="test-volume-group-name" target="test-volume-group-name"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_serviceInstanceFound</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="CallActivity_doCreateVfModuleVolumeV1" targetRef="ScriptTask_prepareDbInfraRequest"/>

+    <bpmn2:scriptTask id="ScriptTask_setSuccessIndicator" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('setSuccessIndicator', execution, true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ScriptTask_setSuccessIndicator" targetRef="EndEvent_3"/>

+    <bpmn2:callActivity id="CallActivity_completeMsoProcess" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="CVMVINFRAV1_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="CallActivity_completeMsoProcess" targetRef="ScriptTask_setSuccessIndicator"/>

+    <bpmn2:scriptTask id="ScriptTask_postCompletionRequest" name="Post Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('postProcessResponse', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="ScriptTask_postCompletionRequest" targetRef="CallActivity_completeMsoProcess"/>

+    <bpmn2:serviceTask id="ServiceTask_callDbInfraUpdate" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${CVMVINFRAV1_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CVMVINFRAV1_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="CVMVINFRAV1_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ServiceTask_callDbInfraUpdate" targetRef="ScriptTask_postCompletionRequest"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_prepareDbInfraRequest" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('prepareDbInfraSuccessRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_prepareDbInfraRequest" targetRef="ServiceTask_callDbInfraUpdate"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Is service instance found?" default="SequenceFlow_serviceInstanceNotFound">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_serviceInstanceFound</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_serviceInstanceNotFound</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="CallActivity_callGenericGetSI" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_serviceInstanceFound" name="Yes" sourceRef="ExclusiveGateway_1" targetRef="CallActivity_doCreateVfModuleVolumeV1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{GENGSI_SuccessIndicator == true && GENGSI_FoundIndicator == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_serviceInstanceNotFound" name="No" sourceRef="ExclusiveGateway_1" targetRef="ScriptTask_buildServiceInstanceNotFoundError"/>

+    <bpmn2:endEvent id="EndEvent_serviceInstanceNotFound">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_buildServiceInstanceNotFoundError" name="Build Service Instance Not Found Error" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_serviceInstanceNotFound</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def createVfModuleVolumeInfraV1 = new CreateVfModuleVolumeInfraV1()
+createVfModuleVolumeInfraV1.executeMethod('buildWorkflowException', execution, 2500, "Service instance id not found in AAI: $CVMVINFRAV1_serviceInstanceId.", isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="ScriptTask_buildServiceInstanceNotFoundError" targetRef="EndEvent_serviceInstanceNotFound"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleVolumeInfraV1">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_67" bpmnElement="StartEvent_createVfModuleVolumeInfraV1">

+        <dc:Bounds height="36.0" width="36.0" x="144.0" y="156.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="162.0" y="197.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_67" targetElement="_BPMNShape_ScriptTask_300">

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="252.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="219.0" y="174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_300" bpmnElement="ScriptTask_preProcessRequest">

+        <dc:Bounds height="80.0" width="100.0" x="252.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_301" bpmnElement="ScriptTask_sendSyncAckResponse">

+        <dc:Bounds height="80.0" width="100.0" x="408.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_249" bpmnElement="ExclusiveGateway_isVolGrpnamePresent" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="589.0" y="148.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="186.0" x="521.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_302" bpmnElement="ScriptTask_buildError">

+        <dc:Bounds height="80.0" width="100.0" x="565.0" y="264.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_36" bpmnElement="CallActivity_doCreateVfModuleVolumeV1">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_volGrpNamePresent" sourceElement="_BPMNShape_ExclusiveGateway_249" targetElement="_BPMNShape_CallActivity_51">

+        <di:waypoint xsi:type="dc:Point" x="639.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="685.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="685.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="680.0" y="173.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_301" targetElement="_BPMNShape_ExclusiveGateway_249">

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="589.0" y="173.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="547.0" y="173.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_300" targetElement="_BPMNShape_ScriptTask_301">

+        <di:waypoint xsi:type="dc:Point" x="352.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="408.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="371.0" y="174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_volGrpNameMissing" sourceElement="_BPMNShape_ExclusiveGateway_249" targetElement="_BPMNShape_ScriptTask_302">

+        <di:waypoint xsi:type="dc:Point" x="614.0" y="198.0"/>

+        <di:waypoint xsi:type="dc:Point" x="615.0" y="264.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="612.0" y="234.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_233" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="598.0" y="389.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="616.0" y="430.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_302" targetElement="_BPMNShape_EndEvent_233">

+        <di:waypoint xsi:type="dc:Point" x="615.0" y="344.0"/>

+        <di:waypoint xsi:type="dc:Point" x="616.0" y="389.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="613.0" y="370.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_234" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1898.0" y="156.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1916.0" y="197.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_22" bpmnElement="SubProcess_exceptionHandler" isExpanded="true">

+        <dc:Bounds height="337.0" width="856.0" x="133.0" y="471.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_68" bpmnElement="StartEvent_catchErrors">

+        <dc:Bounds height="36.0" width="36.0" x="204.0" y="555.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="168.0" y="596.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_235" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="876.0" y="555.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="924.0" y="562.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_304" bpmnElement="ScriptTask_prepareDbInfraRequest">

+        <dc:Bounds height="80.0" width="100.0" x="1160.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_103" bpmnElement="ServiceTask_callDbInfraUpdate">

+        <dc:Bounds height="80.0" width="100.0" x="1298.0" y="135.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_305" bpmnElement="ScriptTask_postCompletionRequest">

+        <dc:Bounds height="80.0" width="100.0" x="1442.0" y="136.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_37" bpmnElement="CallActivity_completeMsoProcess">

+        <dc:Bounds height="80.0" width="100.0" x="1598.0" y="135.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_CallActivity_36" targetElement="_BPMNShape_ScriptTask_304">

+        <di:waypoint xsi:type="dc:Point" x="1096.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1160.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1115.0" y="174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_304" targetElement="_BPMNShape_ServiceTask_103">

+        <di:waypoint xsi:type="dc:Point" x="1260.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1298.0" y="175.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1374.0" y="175.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ServiceTask_103" targetElement="_BPMNShape_ScriptTask_305">

+        <di:waypoint xsi:type="dc:Point" x="1398.0" y="175.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1442.0" y="176.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1417.0" y="176.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_305" targetElement="_BPMNShape_CallActivity_37">

+        <di:waypoint xsi:type="dc:Point" x="1542.0" y="176.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1598.0" y="175.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1653.0" y="176.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_306" bpmnElement="ScriptTask_setSuccessIndicator">

+        <dc:Bounds height="80.0" width="100.0" x="1742.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_CallActivity_37" targetElement="_BPMNShape_ScriptTask_306">

+        <di:waypoint xsi:type="dc:Point" x="1698.0" y="175.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1742.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1767.0" y="174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_306" targetElement="_BPMNShape_EndEvent_234">

+        <di:waypoint xsi:type="dc:Point" x="1842.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1866.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1866.0" y="175.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1898.0" y="174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1963.0" y="175.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_StartEvent_68" targetElement="_BPMNShape_ExclusiveGateway_251">

+        <di:waypoint xsi:type="dc:Point" x="240.0" y="573.0"/>

+        <di:waypoint xsi:type="dc:Point" x="286.0" y="573.0"/>

+        <di:waypoint xsi:type="dc:Point" x="286.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="348.0" y="572.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="286.0" y="572.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_307" bpmnElement="ScriptTask_prefalloutHandlerRequest">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="533.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_50" bpmnElement="CallActivity_callFalloutHandler">

+        <dc:Bounds height="80.0" width="100.0" x="720.0" y="533.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_307" targetElement="_BPMNShape_CallActivity_50">

+        <di:waypoint xsi:type="dc:Point" x="676.0" y="573.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="573.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="694.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_50" targetElement="_BPMNShape_EndEvent_235">

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="573.0"/>

+        <di:waypoint xsi:type="dc:Point" x="876.0" y="573.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="842.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_251" bpmnElement="ExclusiveGateway_isSyncResponseSent" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="348.0" y="547.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="129.0" x="309.0" y="602.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_syncResponseSent" sourceElement="_BPMNShape_ExclusiveGateway_251" targetElement="_BPMNShape_ScriptTask_307">

+        <di:waypoint xsi:type="dc:Point" x="398.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="573.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="573.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="450.0" y="572.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_308" bpmnElement="ScriptTask_sendSyncErrorResp">

+        <dc:Bounds height="80.0" width="100.0" x="324.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_syncResponseNotSent" sourceElement="_BPMNShape_ExclusiveGateway_251" targetElement="_BPMNShape_ScriptTask_308">

+        <di:waypoint xsi:type="dc:Point" x="373.0" y="597.0"/>

+        <di:waypoint xsi:type="dc:Point" x="373.0" y="634.0"/>

+        <di:waypoint xsi:type="dc:Point" x="374.0" y="634.0"/>

+        <di:waypoint xsi:type="dc:Point" x="374.0" y="672.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="363.0" y="634.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_308" targetElement="_BPMNShape_ScriptTask_307">

+        <di:waypoint xsi:type="dc:Point" x="424.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="608.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="712.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="613.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="530.0" y="712.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_51" bpmnElement="CallActivity_callGenericGetSI">

+        <dc:Bounds height="80.0" width="100.0" x="720.0" y="134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_254" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="887.0" y="148.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="912.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_CallActivity_51" targetElement="_BPMNShape_ExclusiveGateway_254">

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="853.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="853.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="173.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_serviceInstanceFound" sourceElement="_BPMNShape_ExclusiveGateway_254" targetElement="_BPMNShape_CallActivity_36">

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="966.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="966.0" y="174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="174.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_237" bpmnElement="EndEvent_serviceInstanceNotFound">

+        <dc:Bounds height="36.0" width="36.0" x="895.0" y="389.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="913.0" y="430.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_serviceInstanceNotFound" sourceElement="_BPMNShape_ExclusiveGateway_254" targetElement="_BPMNShape_ScriptTask_312">

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="198.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="264.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="919.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_312" bpmnElement="ScriptTask_buildServiceInstanceNotFoundError">

+        <dc:Bounds height="80.0" width="100.0" x="862.0" y="264.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_312" targetElement="_BPMNShape_EndEvent_237">

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="344.0"/>

+        <di:waypoint xsi:type="dc:Point" x="913.0" y="389.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="910.0" y="370.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVnfInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVnfInfra.bpmn
new file mode 100644
index 0000000..79d39ca
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/CreateVnfInfra.bpmn
@@ -0,0 +1,463 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_DkzPAHB4EeaJwpcpVN5gXw" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateVnfInfra" name="CreateVnfInfra" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="initialization"/>

+    <bpmn2:scriptTask id="initialization" name="Initialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="initialization" targetRef="sendResponse"/>

+    <bpmn2:scriptTask id="sendResponse" name="Send Sync Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="sendResponse" targetRef="callGetService"/>

+    <bpmn2:scriptTask id="buildWorkflowException" name="Create Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>notFound</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 404, "Service Instance Not Found")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="buildWorkflowException" targetRef="EndEvent_1"/>

+    <bpmn2:callActivity id="callGetService" name="Get&#xD;&#xA;Service&#xD;&#xA;Instance" calledElement="GenericGetService">

+      <bpmn2:extensionElements>

+        <camunda:in source="CREVI_serviceInstanceId" target="GENGS_serviceInstanceId"/>

+        <camunda:out source="GENGS_FoundIndicator" target="GENGS_FoundIndicator"/>

+        <camunda:out source="GENGS_SuccessIndicator" target="GENGS_SuccessIndicator"/>

+        <camunda:out source="GENGS_serviceInstance" target="CRTVI_serviceInstance"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="GENGS_siResourceLink" target="GENGS_siResourceLink"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="GENGS_type" target="GENGS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="callGetService" targetRef="serviceInstanceFound"/>

+    <bpmn2:exclusiveGateway id="serviceInstanceFound" name="Service Instance Found?" default="notFound">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>notFound</bpmn2:outgoing>

+      <bpmn2:outgoing>found</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="notFound" name="No" sourceRef="serviceInstanceFound" targetRef="buildWorkflowException"/>

+    <bpmn2:sequenceFlow id="found" name="Yes" sourceRef="serviceInstanceFound" targetRef="callGetVnf">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGS_FoundIndicator" ) == true && execution.getVariable("GENGS_SuccessIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="vnfExist" name="Vnf Already Exist?" default="vnfExistYes">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>vnfExistYes</bpmn2:outgoing>

+      <bpmn2:outgoing>vnfExistNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="vnfExistYes" name="Yes" sourceRef="vnfExist" targetRef="vnfExistWorkflowException"/>

+    <bpmn2:sequenceFlow id="vnfExistNo" name="No" sourceRef="vnfExist" targetRef="prepareCreateGenericVnf">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGV_FoundIndicator" ) == false && execution.getVariable("GENGV_SuccessIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:callActivity id="callGetVnf" name="Get&#xD;&#xA;Generic Vnf" calledElement="GenericGetVnf">

+      <bpmn2:extensionElements>

+        <camunda:in source="CREVI_vnfName" target="GENGV_vnfName"/>

+        <camunda:in source="CREVI_type" target="GENGV_type"/>

+        <camunda:out source="GENGV_vnf" target="CRTVI_genericVnf"/>

+        <camunda:out source="GENGV_FoundIndicator" target="GENGV_FoundIndicator"/>

+        <camunda:out source="GENGV_SuccessIndicator" target="GENGV_SuccessIndicator"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>found</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="callGetVnf" targetRef="vnfExist"/>

+    <bpmn2:scriptTask id="vnfExistWorkflowException" name="Create Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>vnfExistYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 5000, "Generic Vnf Already Exist.")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="vnfExistWorkflowException" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_2" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="prepareCreateGenericVnf" name="Prepare&#xD;&#xA;Create Vnf Payload" scriptFormat="groovy">

+      <bpmn2:incoming>vnfExistNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.prepareCreateGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="prepareCreateGenericVnf" targetRef="callPutVnf"/>

+    <bpmn2:callActivity id="callPutVnf" name="Create (Put)&#xD;&#xA;Generic Vnf" calledElement="GenericPutVnf">

+      <bpmn2:extensionElements>

+        <camunda:in source="CREVI_genericVnfPayload" target="GENPV_vnfPayload"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="CREVI_vnfId" target="GENPV_vnfId"/>

+        <camunda:out source="GENPV_SuccessIndicator" target="GENPV_SuccessIndicator"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="CREVI_type" target="GENPV_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="callPutVnf" targetRef="postProcess"/>

+    <bpmn2:subProcess id="javaErrorHandlingSubProcess" name="Java Exception Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="processJavaError" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="processJavaError" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="StartEvent_2" targetRef="processJavaError"/>

+    </bpmn2:subProcess>

+    <bpmn2:subProcess id="bpmnErrorHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:callActivity id="callFalloutHandler" name="Call&#xD;&#xA;FalloutHandler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="CREVI_falloutRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="CREVI_requestId" target="requestId"/>

+          <camunda:in source="CREVI_serviceInstanceId" target="serviceInstanceId"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="callFalloutHandler" targetRef="EndEvent_5"/>

+      <bpmn2:scriptTask id="processError" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.prepareFalloutRequest(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="processError" targetRef="callFalloutHandler"/>

+      <bpmn2:endEvent id="EndEvent_5">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_34"/>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="sendErrorResponse" name="Send Error Response" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.sendErrorResponse(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="sendErrorResponse" targetRef="processError"/>

+      <bpmn2:startEvent id="StartEvent_3">

+        <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_4"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="StartEvent_3" targetRef="sendErrorResponse"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="postProcess" name="Prepare Completion Handler" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+CreateVnfInfra createVnf = new CreateVnfInfra()
+createVnf.prepareCompletionHandlerRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="postProcess" targetRef="callCompletionHandler"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_35"/>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="callCompletionHandler" name="Completion&#xD;&#xA;Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="CREVI_completionHandlerRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="CREVI_requestId" target="att-mso-request-id"/>

+        <camunda:in source="CREVI_serviceInstanceId" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="callCompletionHandler" targetRef="EndEvent_3"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="Java Lang Exception"/>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVnfInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_68" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="96.0" y="222.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="114.0" y="263.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_285" bpmnElement="initialization">

+        <dc:Bounds height="80.0" width="100.0" x="216.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_68" targetElement="_BPMNShape_ScriptTask_285">

+        <di:waypoint xsi:type="dc:Point" x="132.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="165.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_286" bpmnElement="sendResponse">

+        <dc:Bounds height="80.0" width="100.0" x="360.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_285" targetElement="_BPMNShape_ScriptTask_286">

+        <di:waypoint xsi:type="dc:Point" x="316.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="360.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="347.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_59" bpmnElement="callGetService">

+        <dc:Bounds height="80.0" width="100.0" x="504.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_286" targetElement="_BPMNShape_CallActivity_59">

+        <di:waypoint xsi:type="dc:Point" x="460.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="504.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="485.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_229" bpmnElement="serviceInstanceFound" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="642.0" y="214.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="148.0" x="678.0" y="244.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_CallActivity_59" targetElement="_BPMNShape_ExclusiveGateway_229">

+        <di:waypoint xsi:type="dc:Point" x="604.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="239.0"/>

+        <di:waypoint xsi:type="dc:Point" x="642.0" y="239.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="617.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_293" bpmnElement="buildWorkflowException">

+        <dc:Bounds height="80.0" width="100.0" x="720.0" y="115.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="notFound" sourceElement="_BPMNShape_ExclusiveGateway_229" targetElement="_BPMNShape_ScriptTask_293">

+        <di:waypoint xsi:type="dc:Point" x="667.0" y="214.0"/>

+        <di:waypoint xsi:type="dc:Point" x="667.0" y="155.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="155.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="666.0" y="174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_225" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="876.0" y="137.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="894.0" y="178.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_293" targetElement="_BPMNShape_EndEvent_225">

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="155.0"/>

+        <di:waypoint xsi:type="dc:Point" x="876.0" y="155.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="846.0" y="155.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="found" sourceElement="_BPMNShape_ExclusiveGateway_229" targetElement="_BPMNShape_CallActivity_60">

+        <di:waypoint xsi:type="dc:Point" x="667.0" y="264.0"/>

+        <di:waypoint xsi:type="dc:Point" x="667.0" y="328.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="328.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="666.0" y="282.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_60" bpmnElement="callGetVnf">

+        <dc:Bounds height="80.0" width="100.0" x="720.0" y="288.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_232" bpmnElement="vnfExist" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="854.0" y="302.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="114.0" x="890.0" y="332.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_CallActivity_60" targetElement="_BPMNShape_ExclusiveGateway_232">

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="328.0"/>

+        <di:waypoint xsi:type="dc:Point" x="854.0" y="327.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="804.0" y="330.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_299" bpmnElement="vnfExistWorkflowException">

+        <dc:Bounds height="80.0" width="100.0" x="926.0" y="367.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_300" bpmnElement="prepareCreateGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="935.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="vnfExistYes" sourceElement="_BPMNShape_ExclusiveGateway_232" targetElement="_BPMNShape_ScriptTask_299">

+        <di:waypoint xsi:type="dc:Point" x="879.0" y="352.0"/>

+        <di:waypoint xsi:type="dc:Point" x="879.0" y="407.0"/>

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="407.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="880.0" y="367.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="vnfExistNo" sourceElement="_BPMNShape_ExclusiveGateway_232" targetElement="_BPMNShape_ScriptTask_300">

+        <di:waypoint xsi:type="dc:Point" x="879.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="879.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="935.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="880.0" y="254.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_227" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1092.0" y="389.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1110.0" y="430.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_299" targetElement="_BPMNShape_EndEvent_227">

+        <di:waypoint xsi:type="dc:Point" x="1026.0" y="407.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1092.0" y="407.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1034.0" y="407.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_228" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1608.0" y="222.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1626.0" y="263.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_300" targetElement="_BPMNShape_CallActivity_61">

+        <di:waypoint xsi:type="dc:Point" x="1035.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1080.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1073.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_61" bpmnElement="callPutVnf">

+        <dc:Bounds height="80.0" width="100.0" x="1080.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_CallActivity_61" targetElement="_BPMNShape_ScriptTask_325">

+        <di:waypoint xsi:type="dc:Point" x="1180.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1236.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1223.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_32" bpmnElement="javaErrorHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="169.0" width="313.0" x="253.0" y="696.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_76" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="277.0" y="763.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="295.0" y="804.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_308" bpmnElement="processJavaError">

+        <dc:Bounds height="80.0" width="100.0" x="360.0" y="741.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_234" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="505.0" y="763.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="523.0" y="804.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_StartEvent_76" targetElement="_BPMNShape_ScriptTask_308">

+        <di:waypoint xsi:type="dc:Point" x="313.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="360.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="331.0" y="781.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_308" targetElement="_BPMNShape_EndEvent_234">

+        <di:waypoint xsi:type="dc:Point" x="460.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="505.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="477.0" y="781.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_33" bpmnElement="bpmnErrorHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="232.0" width="601.0" x="109.0" y="433.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_77" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="133.0" y="532.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="151.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_235" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="649.0" y="532.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="667.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_62" bpmnElement="callFalloutHandler">

+        <dc:Bounds height="80.0" width="100.0" x="493.0" y="510.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_309" bpmnElement="processError">

+        <dc:Bounds height="80.0" width="100.0" x="361.0" y="510.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_StartEvent_77" targetElement="_BPMNShape_ScriptTask_312">

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="550.0"/>

+        <di:waypoint xsi:type="dc:Point" x="229.0" y="550.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="172.0" y="550.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_309" targetElement="_BPMNShape_CallActivity_62">

+        <di:waypoint xsi:type="dc:Point" x="461.0" y="550.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="550.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="486.0" y="550.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_CallActivity_62" targetElement="_BPMNShape_EndEvent_235">

+        <di:waypoint xsi:type="dc:Point" x="593.0" y="550.0"/>

+        <di:waypoint xsi:type="dc:Point" x="649.0" y="550.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="618.0" y="550.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_312" bpmnElement="sendErrorResponse">

+        <dc:Bounds height="80.0" width="100.0" x="229.0" y="510.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_312" targetElement="_BPMNShape_ScriptTask_309">

+        <di:waypoint xsi:type="dc:Point" x="329.0" y="550.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="550.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="342.0" y="550.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_325" bpmnElement="postProcess">

+        <dc:Bounds height="80.0" width="100.0" x="1236.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_325" targetElement="_BPMNShape_CallActivity_69">

+        <di:waypoint xsi:type="dc:Point" x="1336.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1380.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1347.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_69" bpmnElement="callCompletionHandler">

+        <dc:Bounds height="80.0" width="100.0" x="1380.0" y="200.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_CallActivity_69" targetElement="_BPMNShape_EndEvent_228">

+        <di:waypoint xsi:type="dc:Point" x="1480.0" y="240.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1608.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1541.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteNetworkInstanceInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteNetworkInstanceInfra.bpmn
new file mode 100644
index 0000000..fc6d7f5
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteNetworkInstanceInfra.bpmn
@@ -0,0 +1,1007 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">
+  <bpmn2:process id="DeleteNetworkInstanceInfra" name="DeleteNetworkInstanceInfra" isExecutable="true">
+    <bpmn2:startEvent id="deleteNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">
+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="deleteNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>
+    <bpmn2:scriptTask id="callAAIQuery_scriptTask" name="Call REST Query In AAI" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def callRESTDeleteAAI = new DeleteNetworkInstanceInfra()
+callRESTDeleteAAI.callRESTQueryAAI(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="callAAIQuery_scriptTask" targetRef="isRelationshipExists_ExclusiveGateway"/>
+    <bpmn2:callActivity id="callDeleteSDNCAdapter_CallActivity" name="Call SDNC Delete Adapter V1 Sub-process" calledElement="sdncAdapter">
+      <bpmn2:extensionElements>
+        <camunda:in source="DELNWKI_deleteSDNCRequest" target="sdncAdapterWorkflowRequest"/>
+        <camunda:out source="sdncAdapterResponse" target="DELNWKI_deleteSDNCResponse"/>
+        <camunda:out source="SDNCA_ResponseCode" target="DELNWKI_sdncReturnCode"/>
+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>
+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>
+        <camunda:out source="WorkflowException" target="WorkflowException"/>
+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>
+      </bpmn2:extensionElements>
+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>
+    </bpmn2:callActivity>
+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="callDeleteSDNCAdapter_CallActivity" targetRef="validateSDNCResponse_ScriptTask"/>
+    <bpmn2:boundaryEvent id="sndcCompensation_BoundaryEvent" name="Compesation" attachedToRef="callDeleteSDNCAdapter_CallActivity">
+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_1" waitForCompletion="true"/>
+    </bpmn2:boundaryEvent>
+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">
+      <bpmn2:incoming>sdncTopoDeleteYes_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareDBRequest = new DeleteNetworkInstanceInfra()
+prepareDBRequest.prepareDBRequest(execution)
+
+]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:scriptTask id="validateSDNCResponse_ScriptTask" name="Validate SDNC Response" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def validateSDNCResponse = new DeleteNetworkInstanceInfra()
+validateSDNCResponse.validateSDNCResponse(execution)
+]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="validateSDNCResponse_ScriptTask" targetRef="isSdncTopoDeleteOk_ExclusiveGateway"/>
+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="validateSDNCResponse_ScriptTask">
+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>
+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_87" errorRef="Error_3"/>
+    </bpmn2:boundaryEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="BoundaryEvent_1" targetRef="sndcError_EndEvent"/>
+    <bpmn2:exclusiveGateway id="isSdncTopoDeleteOk_ExclusiveGateway" name="Is SDNC Delete Ok?" default="sdncTopoDeleteNo_SequenceFlow">
+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
+      <bpmn2:outgoing>sdncTopoDeleteNo_SequenceFlow</bpmn2:outgoing>
+      <bpmn2:outgoing>sdncTopoDeleteYes_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:exclusiveGateway>
+    <bpmn2:endEvent id="sndcError_EndEvent" name="SNDC Error">
+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>
+      <bpmn2:incoming>sdncTopoDeleteNo_SequenceFlow</bpmn2:incoming>
+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_57" errorRef="Error_3"/>
+    </bpmn2:endEvent>
+    <bpmn2:sequenceFlow id="sdncTopoDeleteNo_SequenceFlow" name="No" sourceRef="isSdncTopoDeleteOk_ExclusiveGateway" targetRef="sndcError_EndEvent"/>
+    <bpmn2:sequenceFlow id="sdncTopoDeleteYes_SequenceFlow" name="Yes" sourceRef="isSdncTopoDeleteOk_ExclusiveGateway" targetRef="prepareDBInfraRequest_ScriptTask">
+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_sdncResponseSuccess" ) == true}
+]]></bpmn2:conditionExpression>
+    </bpmn2:sequenceFlow>
+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>
+    <bpmn2:callActivity id="callRollbackSDNCAdapter_CallActivity" name="Call Rollback SDNC Adapter" isForCompensation="true" calledElement="sdncAdapter">
+      <bpmn2:extensionElements>
+        <camunda:in source="DELNWKI_rollbackSDNCRequest" target="sdncAdapterWorkflowRequest"/>
+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>
+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>
+        <camunda:out source="SDNCA_ResponseCode" target="DELNWKI_rollbackSDNCReturnCode"/>
+        <camunda:out source="sdncAdapterResponse" target="DELNWKI_rollbackSDNCResponse"/>
+        <camunda:out source="WorkflowException" target="WorkflowException"/>
+      </bpmn2:extensionElements>
+    </bpmn2:callActivity>
+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">
+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">
+        <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>
+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>
+      </bpmn2:startEvent>
+      <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="subProcessStart_StartEvent" targetRef="isRollbackON_ExclusiveGateway"/>
+      <bpmn2:exclusiveGateway id="isRollbackON_ExclusiveGateway" name="Is Rollback ON?" default="isRollbackOnNo_SequenceFlow">
+        <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>
+        <bpmn2:outgoing>isRollbackOnNo_SequenceFlow</bpmn2:outgoing>
+        <bpmn2:outgoing>isRollbackOnYes_SequenceFlow</bpmn2:outgoing>
+      </bpmn2:exclusiveGateway>
+      <bpmn2:sequenceFlow id="isRollbackOnNo_SequenceFlow" name="No" sourceRef="isRollbackON_ExclusiveGateway" targetRef="InclusiveGateway_1"/>
+      <bpmn2:sequenceFlow id="isRollbackOnYes_SequenceFlow" name="Yes" sourceRef="isRollbackON_ExclusiveGateway" targetRef="isPONR_ExclusiveGateway">
+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("URN_mso_rollback") == true}
+
+]]></bpmn2:conditionExpression>
+      </bpmn2:sequenceFlow>
+      <bpmn2:exclusiveGateway id="isPONR_ExclusiveGateway" name="is PONR?" default="isPONR_No_SequenceFlow">
+        <bpmn2:incoming>isRollbackOnYes_SequenceFlow</bpmn2:incoming>
+        <bpmn2:outgoing>isPONR_No_SequenceFlow</bpmn2:outgoing>
+        <bpmn2:outgoing>isPONR_Yes_SequenceFlow</bpmn2:outgoing>
+      </bpmn2:exclusiveGateway>
+      <bpmn2:sequenceFlow id="isPONR_No_SequenceFlow" name="No" sourceRef="isPONR_ExclusiveGateway" targetRef="isSdncOk_ExclusiveGateway"/>
+      <bpmn2:sequenceFlow id="isPONR_Yes_SequenceFlow" name="Yes" sourceRef="isPONR_ExclusiveGateway" targetRef="InclusiveGateway_2">
+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_isPONR") == true}]]></bpmn2:conditionExpression>
+      </bpmn2:sequenceFlow>
+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">
+        <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>
+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def buildErrorResponse = new DeleteNetworkInstanceInfra()
+buildErrorResponse.buildErrorResponse(execution)
+]]></bpmn2:script>
+      </bpmn2:scriptTask>
+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="faultHandler_CallActivity"/>
+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">
+        <bpmn2:extensionElements>
+          <camunda:in variables="all"/>
+          <camunda:out variables="all"/>
+          <camunda:in source="DELNWKI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>
+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>
+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>
+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>
+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>
+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>
+        </bpmn2:extensionElements>
+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>
+      </bpmn2:callActivity>
+      <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_2"/>
+      <bpmn2:endEvent id="EndEvent_2">
+        <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>
+      </bpmn2:endEvent>
+      <bpmn2:exclusiveGateway id="isSdncOk_ExclusiveGateway" name="is Sdnc Ok?" default="isSdncOk_No_SequenceFlow">
+        <bpmn2:incoming>isPONR_No_SequenceFlow</bpmn2:incoming>
+        <bpmn2:outgoing>isSdncOk_Yes_SequenceFlow</bpmn2:outgoing>
+        <bpmn2:outgoing>isSdncOk_No_SequenceFlow</bpmn2:outgoing>
+      </bpmn2:exclusiveGateway>
+      <bpmn2:sequenceFlow id="isSdncOk_Yes_SequenceFlow" name="Yes" sourceRef="isSdncOk_ExclusiveGateway" targetRef="sdncTopoRollback_IntermediateThrowEvent">
+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_isSdncRollbackNeeded" ) == true}]]></bpmn2:conditionExpression>
+      </bpmn2:sequenceFlow>
+      <bpmn2:sequenceFlow id="isSdncOk_No_SequenceFlow" name="No" sourceRef="isSdncOk_ExclusiveGateway" targetRef="InclusiveGateway_2"/>
+      <bpmn2:serviceTask id="dbUpdateError_ServiceTask" name="Call DB Update Error">
+        <bpmn2:extensionElements>
+          <camunda:connector>
+            <camunda:connectorId>http-connector</camunda:connectorId>
+            <camunda:inputOutput>
+              <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
+              <camunda:inputParameter name="payload">${DELNWKI_deleteDBRequest}</camunda:inputParameter>
+              <camunda:inputParameter name="headers">
+                <camunda:map>
+                  <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                </camunda:map>
+              </camunda:inputParameter>
+              <camunda:inputParameter name="method">POST</camunda:inputParameter>
+              <camunda:outputParameter name="DELNWKI_deleteDBResponse">${response}</camunda:outputParameter>
+              <camunda:outputParameter name="DELNWKI_dbReturnCode">${statusCode}</camunda:outputParameter>
+            </camunda:inputOutput>
+          </camunda:connector>
+        </bpmn2:extensionElements>
+        <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
+      </bpmn2:serviceTask>
+      <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="dbUpdateError_ServiceTask" targetRef="prepareFalloutHandler_ScriptTask"/>
+      <bpmn2:scriptTask id="prepareDBUpdateErrorRequest_ScriptTask" name="Prepare DB Update Error Request" scriptFormat="groovy">
+        <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareDBRequest = new DeleteNetworkInstanceInfra()
+prepareDBRequest.prepareDBRequestError(execution)]]></bpmn2:script>
+      </bpmn2:scriptTask>
+      <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="prepareDBUpdateErrorRequest_ScriptTask" targetRef="dbUpdateError_ServiceTask"/>
+      <bpmn2:inclusiveGateway id="InclusiveGateway_1">
+        <bpmn2:incoming>isRollbackOnNo_SequenceFlow</bpmn2:incoming>
+        <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>
+      </bpmn2:inclusiveGateway>
+      <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="InclusiveGateway_1" targetRef="prepareDBUpdateErrorRequest_ScriptTask"/>
+      <bpmn2:inclusiveGateway id="InclusiveGateway_2">
+        <bpmn2:incoming>isPONR_Yes_SequenceFlow</bpmn2:incoming>
+        <bpmn2:incoming>isSdncOk_No_SequenceFlow</bpmn2:incoming>
+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>
+      </bpmn2:inclusiveGateway>
+      <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="InclusiveGateway_2" targetRef="InclusiveGateway_1"/>
+      <bpmn2:intermediateThrowEvent id="sdncTopoRollback_IntermediateThrowEvent" name="SDNC Rollback">
+        <bpmn2:incoming>isSdncOk_Yes_SequenceFlow</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>
+        <bpmn2:compensateEventDefinition id="sndc_CompensateEventDefinition" activityRef="callRollbackSDNCAdapter_CallActivity" waitForCompletion="true"/>
+      </bpmn2:intermediateThrowEvent>
+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="sdncTopoRollback_IntermediateThrowEvent" targetRef="InclusiveGateway_2"/>
+    </bpmn2:subProcess>
+    <bpmn2:exclusiveGateway id="isAAIQueryOk_ExclusiveGateway_2" name="Is AAI Query Ok?" default="querySuccessNo_SequenceFlow">
+      <bpmn2:incoming>isRelationshipExistNo_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>querySuccessYes_SequenceFlow</bpmn2:outgoing>
+      <bpmn2:outgoing>querySuccessNo_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:exclusiveGateway>
+    <bpmn2:sequenceFlow id="querySuccessYes_SequenceFlow" name="Yes" sourceRef="isAAIQueryOk_ExclusiveGateway_2" targetRef="isResponseEmpty_ExclusiveGateway_2">
+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_isAAIGood") == true}
+
+]]></bpmn2:conditionExpression>
+    </bpmn2:sequenceFlow>
+    <bpmn2:sequenceFlow id="querySuccessNo_SequenceFlow" name="No" sourceRef="isAAIQueryOk_ExclusiveGateway_2" targetRef="isReturnCode404_ExclusiveGateway"/>
+    <bpmn2:exclusiveGateway id="isReturnCode404_ExclusiveGateway" name="Is Return Code 404?" default="isReturnCode404_No_SequenceFlow">
+      <bpmn2:incoming>querySuccessNo_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>isReturnCode404_No_SequenceFlow</bpmn2:outgoing>
+      <bpmn2:outgoing>isReturnCode404_Yes_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:exclusiveGateway>
+    <bpmn2:sequenceFlow id="isReturnCode404_No_SequenceFlow" name="No" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="aai_Error_EndEvent"/>
+    <bpmn2:sequenceFlow id="isReturnCode404_Yes_SequenceFlow" name="Yes" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="silentSucces_InclusiveGateway">
+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_aaiReturnCode" ) == "404"}
+
+]]></bpmn2:conditionExpression>
+    </bpmn2:sequenceFlow>
+    <bpmn2:endEvent id="aai_Error_EndEvent" name="AAI Error">
+      <bpmn2:incoming>isReturnCode404_No_SequenceFlow</bpmn2:incoming>
+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_53" errorRef="Error_3"/>
+    </bpmn2:endEvent>
+    <bpmn2:exclusiveGateway id="isResponseEmpty_ExclusiveGateway_2" name="Is Resp Empty?" default="isResponseEmptyNo_SequenceFlow">
+      <bpmn2:incoming>querySuccessYes_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>isResponseEmptyNo_SequenceFlow</bpmn2:outgoing>
+      <bpmn2:outgoing>isResponseEmptyYes_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:exclusiveGateway>
+    <bpmn2:sequenceFlow id="isResponseEmptyNo_SequenceFlow" name="No" sourceRef="isResponseEmpty_ExclusiveGateway_2" targetRef="callRESTQueryCloudRegion_ScriptTask"/>
+    <bpmn2:sequenceFlow id="isResponseEmptyYes_SequenceFlow" name="Yes" sourceRef="isResponseEmpty_ExclusiveGateway_2" targetRef="silentSucces_InclusiveGateway">
+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_isSilentSuccess") == true}
+]]></bpmn2:conditionExpression>
+    </bpmn2:sequenceFlow>
+    <bpmn2:inclusiveGateway id="silentSucces_InclusiveGateway" name="Joint">
+      <bpmn2:incoming>isReturnCode404_Yes_SequenceFlow</bpmn2:incoming>
+      <bpmn2:incoming>isResponseEmptyYes_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>silentSuccess_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:inclusiveGateway>
+    <bpmn2:sequenceFlow id="silentSuccess_SequenceFlow" name="Silent Success" sourceRef="silentSucces_InclusiveGateway" targetRef="prepareDBInfraRequestSilentSucces_ScriptTask"/>
+    <bpmn2:scriptTask id="prepareDBInfraRequestSilentSucces_ScriptTask" name="Prepare DB Infra Request Silent Success" scriptFormat="groovy">
+      <bpmn2:incoming>silentSuccess_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareDBRequest = new DeleteNetworkInstanceInfra()
+prepareDBRequest.prepareDBRequest(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="prepareDBInfraRequestSilentSucces_ScriptTask" targetRef="silentSuccessCallDB_ServiceTask"/>
+    <bpmn2:serviceTask id="silentSuccessCallDB_ServiceTask" name="Call DB Infra Update">
+      <bpmn2:extensionElements>
+        <camunda:connector>
+          <camunda:connectorId>http-connector</camunda:connectorId>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="payload">${DELNWKI_deleteDBRequest}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="method">POST</camunda:inputParameter>
+            <camunda:outputParameter name="DELNWKI_deleteDBResponse">${response}</camunda:outputParameter>
+            <camunda:outputParameter name="DELNWKI_dbReturnCode">${statusCode}</camunda:outputParameter>
+          </camunda:inputOutput>
+        </camunda:connector>
+      </bpmn2:extensionElements>
+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>
+    </bpmn2:serviceTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_40" name="" sourceRef="silentSuccessCallDB_ServiceTask" targetRef="prepareSilentCompletion_ScriptTask"/>
+    <bpmn2:scriptTask id="prepareSilentCompletion_ScriptTask" name="Prepare Silent Completion Request" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_41</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def postProcessResponse = new DeleteNetworkInstanceInfra()
+postProcessResponse.postProcessResponse(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_41" name="" sourceRef="prepareSilentCompletion_ScriptTask" targetRef="silentAccess_CallActivity"/>
+    <bpmn2:callActivity id="silentAccess_CallActivity" name="Call CompleteMsoProcess (Silent Success)" calledElement="CompleteMsoProcess">
+      <bpmn2:extensionElements>
+        <camunda:in source="DELNWKI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>
+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>
+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>
+        <camunda:in variables="all"/>
+        <camunda:out variables="all"/>
+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>
+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>
+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>
+      </bpmn2:extensionElements>
+      <bpmn2:incoming>SequenceFlow_41</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>
+    </bpmn2:callActivity>
+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="silentAccess_CallActivity" targetRef="EndEvent_1"/>
+    <bpmn2:endEvent id="EndEvent_1">
+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>
+    </bpmn2:endEvent>
+    <bpmn2:scriptTask id="callRESTQueryCloudRegion_ScriptTask" name="Call REST Query Cloud Region " scriptFormat="groovy">
+      <bpmn2:incoming>isResponseEmptyNo_SequenceFlow</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteNetworkInstanceInfra = new DeleteNetworkInstanceInfra()
+DeleteNetworkInstanceInfra.callRESTQueryAAICloudRegion(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="" sourceRef="callRESTQueryCloudRegion_ScriptTask" targetRef="prepareNetworkRequest_ScriptTask"/>
+    <bpmn2:exclusiveGateway id="isRelationshipExists_ExclusiveGateway" name="Is Relationship Exists?" default="isRelationshipExistNo_SequenceFlow">
+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>
+      <bpmn2:outgoing>isRelationshipExistNo_SequenceFlow</bpmn2:outgoing>
+      <bpmn2:outgoing>isRelationshipExistYes_SequenceFlow</bpmn2:outgoing>
+    </bpmn2:exclusiveGateway>
+    <bpmn2:sequenceFlow id="isRelationshipExistNo_SequenceFlow" name="No" sourceRef="isRelationshipExists_ExclusiveGateway" targetRef="isAAIQueryOk_ExclusiveGateway_2"/>
+    <bpmn2:sequenceFlow id="isRelationshipExistYes_SequenceFlow" name="Yes" sourceRef="isRelationshipExists_ExclusiveGateway" targetRef="relationshipError_EndEvent">
+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELNWKI_isVfRelationshipExist") == true}]]></bpmn2:conditionExpression>
+    </bpmn2:sequenceFlow>
+    <bpmn2:endEvent id="relationshipError_EndEvent" name="Relationship Error">
+      <bpmn2:incoming>isRelationshipExistYes_SequenceFlow</bpmn2:incoming>
+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_89" errorRef="Error_3"/>
+    </bpmn2:endEvent>
+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">
+      <bpmn2:extensionElements>
+        <camunda:connector>
+          <camunda:connectorId>http-connector</camunda:connectorId>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="payload">${DELNWKI_deleteDBRequest}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="method">POST</camunda:inputParameter>
+            <camunda:outputParameter name="DELNWKI_deleteDBResponse">${response}</camunda:outputParameter>
+            <camunda:outputParameter name="DELNWKI_dbReturnCode">${statusCode}</camunda:outputParameter>
+          </camunda:inputOutput>
+        </camunda:connector>
+      </bpmn2:extensionElements>
+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>
+    </bpmn2:serviceTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>
+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Post Process &amp; Completion Request" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def postProcessResponse = new DeleteNetworkInstanceInfra()
+postProcessResponse.postProcessResponse(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>
+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">
+      <bpmn2:extensionElements>
+        <camunda:in variables="all"/>
+        <camunda:out variables="all"/>
+        <camunda:in source="DELNWKI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>
+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>
+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>
+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>
+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>
+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>
+      </bpmn2:extensionElements>
+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>
+    </bpmn2:callActivity>
+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="EndEvent_3"/>
+    <bpmn2:endEvent id="EndEvent_3">
+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>
+    </bpmn2:endEvent>
+    <bpmn2:scriptTask id="prepareSDNCTopoRequest_ScriptTask" name="Prepare SDNC Topology Request" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareSDNCRequest = new DeleteNetworkInstanceInfra()
+prepareSDNCRequest.prepareSDNCRequest(execution)
+]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="prepareSDNCTopoRequest_ScriptTask" targetRef="callDeleteSDNCAdapter_CallActivity"/>
+    <bpmn2:scriptTask id="validateDeletePONetwork_ScriptTask" name="Validate Delete PO Network" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def validateNetworkResponse = new DeleteNetworkInstanceInfra()
+validateNetworkResponse.validateNetworkResponse(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="validateDeletePONetwork_ScriptTask" targetRef="prepareSDNCTopoRequest_ScriptTask"/>
+    <bpmn2:scriptTask id="prepareNetworkRequest_ScriptTask" name="Prepare Network Request" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareNetworkRequest = new DeleteNetworkInstanceInfra()
+prepareNetworkRequest.prepareNetworkRequest(execution)
+]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="prepareNetworkRequest_ScriptTask" targetRef="sendRequestToNewworkAdapater_ScriptTask"/>
+    <bpmn2:scriptTask id="sendRequestToNewworkAdapater_ScriptTask" name="Send Request to Network Adapter" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def prepareNetworkRequest = new DeleteNetworkInstanceInfra()
+prepareNetworkRequest.sendRequestToVnfAdapter(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="sendRequestToNewworkAdapater_ScriptTask" targetRef="validateDeletePONetwork_ScriptTask"/>
+    <bpmn2:subProcess id="SubProcess_1" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">
+      <bpmn2:startEvent id="StartEvent_1">
+        <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>
+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_91" errorRef="Error_1"/>
+      </bpmn2:startEvent>
+      <bpmn2:endEvent id="EndEvent_4">
+        <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>
+      </bpmn2:endEvent>
+      <bpmn2:scriptTask id="unexpectedError_DeleteNetworkInfra_ScriptTask_1" name="Log / Print Unexpected Error" scriptFormat="groovy">
+        <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>
+        <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>
+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def CreateNetworkV2 = new DeleteNetworkInstanceInfra()
+DeleteNetworkInstanceInfra.processJavaException(execution)]]></bpmn2:script>
+      </bpmn2:scriptTask>
+      <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="StartEvent_1" targetRef="unexpectedError_DeleteNetworkInfra_ScriptTask_1"/>
+      <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="unexpectedError_DeleteNetworkInfra_ScriptTask_1" targetRef="EndEvent_4"/>
+    </bpmn2:subProcess>
+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def preProcessRequest = new DeleteNetworkInstanceInfra()
+preProcessRequest.preProcessRequest(execution)
+]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>
+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">
+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sendSyncResponse = new  DeleteNetworkInstanceInfra()
+sendSyncResponse.sendSyncResponse(execution)]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="callAAIQuery_scriptTask"/>
+    <bpmn2:association id="Association_1" sourceRef="sndcCompensation_BoundaryEvent" targetRef="callRollbackSDNCAdapter_CallActivity"/>
+  </bpmn2:process>
+  <bpmn2:error id="Error_3" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>
+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="java.lang.Exception"/>
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteNetworkInstanceInfra">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="deleteNetwork_startEvent">
+        <dc:Bounds height="36.0" width="36.0" x="96.0" y="185.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="34.0" x="97.0" y="226.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="262.0" y="163.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">
+        <di:waypoint xsi:type="dc:Point" x="132.0" y="203.0"/>
+        <di:waypoint xsi:type="dc:Point" x="262.0" y="203.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="216.0" y="203.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_62" bpmnElement="callAAIQuery_scriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="816.0" y="163.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_62" bpmnElement="isAAIQueryOk_ExclusiveGateway_2" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="984.0" y="72.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="108.0" x="956.0" y="51.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_62" targetElement="_BPMNShape_ExclusiveGateway_224">
+        <di:waypoint xsi:type="dc:Point" x="866.0" y="163.0"/>
+        <di:waypoint xsi:type="dc:Point" x="865.0" y="122.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="862.0" y="135.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_63" bpmnElement="validateDeletePONetwork_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1102.0" y="550.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="querySuccessYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_62" targetElement="_BPMNShape_ExclusiveGateway_65">
+        <di:waypoint xsi:type="dc:Point" x="1009.0" y="122.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1009.0" y="177.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="1008.0" y="120.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="querySuccessNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_62" targetElement="_BPMNShape_ExclusiveGateway_64">
+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1126.0" y="97.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="1036.0" y="97.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_64" bpmnElement="isReturnCode404_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="1126.0" y="72.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="124.0" x="1090.0" y="51.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="isReturnCode404_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_EndEvent_118">
+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1212.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1212.0" y="98.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1281.0" y="98.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="1176.0" y="97.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="isReturnCode404_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_InclusiveGateway_2">
+        <di:waypoint xsi:type="dc:Point" x="1151.0" y="122.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1151.0" y="177.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="1152.0" y="120.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">
+        <dc:Bounds height="80.0" width="100.0" x="696.0" y="684.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_65" bpmnElement="isResponseEmpty_ExclusiveGateway_2" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="984.0" y="177.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="95.0" x="1016.0" y="163.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="isResponseEmptyNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_65" targetElement="_BPMNShape_ScriptTask_250">
+        <di:waypoint xsi:type="dc:Point" x="1009.0" y="227.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1010.0" y="269.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="1016.0" y="227.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="isResponseEmptyYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_65" targetElement="_BPMNShape_InclusiveGateway_2">
+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="202.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1126.0" y="202.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="1034.0" y="202.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_118" bpmnElement="aai_Error_EndEvent">
+        <dc:Bounds height="36.0" width="36.0" x="1281.0" y="80.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="59.0" x="1270.0" y="121.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_66" bpmnElement="prepareNetworkRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="960.0" y="417.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_66" targetElement="_BPMNShape_ScriptTask_242">
+        <di:waypoint xsi:type="dc:Point" x="1060.0" y="457.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1104.0" y="457.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1071.0" y="457.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_67" bpmnElement="prepareSDNCTopoRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1102.0" y="687.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_63" targetElement="_BPMNShape_ScriptTask_67">
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="630.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="687.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1149.0" y="641.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">
+        <dc:Bounds height="80.0" width="100.0" x="1102.0" y="1416.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">
+        <dc:Bounds height="512.0" width="902.0" x="0.0" y="576.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">
+        <dc:Bounds height="36.0" width="36.0" x="60.0" y="945.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="67.0" x="45.0" y="987.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="396.0" y="684.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_67" bpmnElement="isSdncTopoDeleteOk_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="1272.0" y="988.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="157.0" x="1221.0" y="1047.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="sdncTopoDeleteNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_EndEvent_124">
+        <di:waypoint xsi:type="dc:Point" x="1322.0" y="1013.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1372.0" y="1013.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1372.0" y="1014.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1407.0" y="1014.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="1326.0" y="1017.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="sdncTopoDeleteYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_ScriptTask_83">
+        <di:waypoint xsi:type="dc:Point" x="1272.0" y="1013.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1245.0" y="1013.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1245.0" y="1014.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1204.0" y="1014.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="1249.0" y="1017.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="1272.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="974.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">
+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="1140.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_124" bpmnElement="sndcError_EndEvent">
+        <dc:Bounds height="36.0" width="36.0" x="1407.0" y="996.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="74.0" x="1388.0" y="1037.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_19" bpmnElement="callDeleteSDNCAdapter_CallActivity">
+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="851.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_29" bpmnElement="sndcCompensation_BoundaryEvent">
+        <dc:Bounds height="36.0" width="36.0" x="1086.0" y="890.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1101.0" y="931.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_67" targetElement="_BPMNShape_CallActivity_19">
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="767.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="798.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="798.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="851.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1149.0" y="786.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_CallActivity_19" targetElement="_BPMNShape_ScriptTask_131">
+        <di:waypoint xsi:type="dc:Point" x="1204.0" y="891.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1246.0" y="891.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1236.0" y="891.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_Association_1" bpmnElement="Association_1" sourceElement="_BPMNShape_BoundaryEvent_29" targetElement="_BPMNShape_CallActivity_21">
+        <di:waypoint xsi:type="dc:Point" x="1086.0" y="922.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1045.0" y="953.0"/>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">
+        <di:waypoint xsi:type="dc:Point" x="362.0" y="203.0"/>
+        <di:waypoint xsi:type="dc:Point" x="432.0" y="203.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="393.0" y="203.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="432.0" y="163.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ExclusiveGateway_72">
+        <di:waypoint xsi:type="dc:Point" x="96.0" y="963.0"/>
+        <di:waypoint xsi:type="dc:Point" x="144.0" y="962.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="108.0" y="963.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_242" targetElement="_BPMNShape_ScriptTask_63">
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="497.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="523.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="523.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="550.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1149.0" y="528.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_2" bpmnElement="silentSucces_InclusiveGateway">
+        <dc:Bounds height="50.0" width="50.0" x="1126.0" y="177.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="33.0" x="1136.0" y="227.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="silentSuccess_SequenceFlow" sourceElement="_BPMNShape_InclusiveGateway_2" targetElement="_BPMNShape_ScriptTask_128">
+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="202.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="202.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="203.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1307.0" y="203.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="94.0" x="1179.0" y="177.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_128" bpmnElement="prepareDBInfraRequestSilentSucces_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1307.0" y="163.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_87" bpmnElement="silentSuccessCallDB_ServiceTask">
+        <dc:Bounds height="80.0" width="100.0" x="1453.0" y="163.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_128" targetElement="_BPMNShape_ServiceTask_87">
+        <di:waypoint xsi:type="dc:Point" x="1407.0" y="203.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1453.0" y="203.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1422.0" y="203.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_24" bpmnElement="sdncTopoRollback_IntermediateThrowEvent">
+        <dc:Bounds height="36.0" width="36.0" x="244.0" y="696.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="96.0" x="194.0" y="666.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_130" bpmnElement="prepareSilentCompletion_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1453.0" y="307.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_20" bpmnElement="silentAccess_CallActivity">
+        <dc:Bounds height="80.0" width="100.0" x="1453.0" y="428.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_55" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ServiceTask_87" targetElement="_BPMNShape_ScriptTask_130">
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="243.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="307.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1500.0" y="265.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_56" bpmnElement="SequenceFlow_41" sourceElement="_BPMNShape_ScriptTask_130" targetElement="_BPMNShape_CallActivity_20">
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="387.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="428.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1500.0" y="417.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_CallActivity_3">
+        <di:waypoint xsi:type="dc:Point" x="496.0" y="724.0"/>
+        <di:waypoint xsi:type="dc:Point" x="696.0" y="724.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="521.0" y="724.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_131" bpmnElement="validateSDNCResponse_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1246.0" y="851.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_131" targetElement="_BPMNShape_ExclusiveGateway_67">
+        <di:waypoint xsi:type="dc:Point" x="1296.0" y="931.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1297.0" y="988.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1294.0" y="960.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1054.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1140.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1151.0" y="1076.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1220.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1272.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1151.0" y="1238.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1352.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="1384.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="1384.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="1416.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1151.0" y="1377.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_72" bpmnElement="isRollbackON_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="144.0" y="937.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="100.0" x="130.0" y="987.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="isRollbackOnNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_72" targetElement="_BPMNShape_InclusiveGateway_27">
+        <di:waypoint xsi:type="dc:Point" x="194.0" y="962.0"/>
+        <di:waypoint xsi:type="dc:Point" x="244.0" y="962.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="192.0" y="968.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="isRollbackOnYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_72" targetElement="_BPMNShape_ExclusiveGateway_218">
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="937.0"/>
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="890.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="180.0" y="917.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_21" bpmnElement="callRollbackSDNCAdapter_CallActivity">
+        <dc:Bounds height="80.0" width="100.0" x="945.0" y="951.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_242" bpmnElement="sendRequestToNewworkAdapater_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="417.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_27" bpmnElement="InclusiveGateway_1">
+        <dc:Bounds height="50.0" width="50.0" x="244.0" y="937.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="269.0" y="992.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_44" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_IntermediateThrowEvent_24" targetElement="_BPMNShape_InclusiveGateway_28">
+        <di:waypoint xsi:type="dc:Point" x="280.0" y="714.0"/>
+        <di:waypoint xsi:type="dc:Point" x="334.0" y="714.0"/>
+        <di:waypoint xsi:type="dc:Point" x="334.0" y="864.0"/>
+        <di:waypoint xsi:type="dc:Point" x="294.0" y="865.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="284.0" y="714.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_45" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_InclusiveGateway_27" targetElement="_BPMNShape_ScriptTask_243">
+        <di:waypoint xsi:type="dc:Point" x="294.0" y="962.0"/>
+        <di:waypoint xsi:type="dc:Point" x="396.0" y="963.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="309.0" y="962.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_179" bpmnElement="EndEvent_1">
+        <dc:Bounds height="36.0" width="36.0" x="1485.0" y="548.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="1503.0" y="589.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_46" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_CallActivity_20" targetElement="_BPMNShape_EndEvent_179">
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="508.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1503.0" y="548.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1500.0" y="530.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_180" bpmnElement="EndEvent_2">
+        <dc:Bounds height="36.0" width="36.0" x="828.0" y="706.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="846.0" y="747.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_49" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_180">
+        <di:waypoint xsi:type="dc:Point" x="796.0" y="724.0"/>
+        <di:waypoint xsi:type="dc:Point" x="828.0" y="724.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="816.0" y="724.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_218" bpmnElement="isPONR_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="144.0" y="840.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="64.0" x="82.0" y="855.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_50" bpmnElement="isPONR_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_218" targetElement="_BPMNShape_ExclusiveGateway_219">
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="840.0"/>
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="804.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="174.0" y="820.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_51" bpmnElement="isPONR_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_218" targetElement="_BPMNShape_InclusiveGateway_28">
+        <di:waypoint xsi:type="dc:Point" x="194.0" y="865.0"/>
+        <di:waypoint xsi:type="dc:Point" x="244.0" y="865.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="189.0" y="865.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_182" bpmnElement="EndEvent_3">
+        <dc:Bounds height="36.0" width="36.0" x="1135.0" y="1545.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="1153.0" y="1586.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_EndEvent_182">
+        <di:waypoint xsi:type="dc:Point" x="1153.0" y="1496.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1153.0" y="1514.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1153.0" y="1545.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1150.0" y="1510.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_28" bpmnElement="InclusiveGateway_2">
+        <dc:Bounds height="50.0" width="50.0" x="244.0" y="840.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="269.0" y="895.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_219" bpmnElement="isSdncOk_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="144.0" y="754.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="78.0" x="60.0" y="769.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_57" bpmnElement="isSdncOk_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_219" targetElement="_BPMNShape_IntermediateThrowEvent_24">
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="754.0"/>
+        <di:waypoint xsi:type="dc:Point" x="169.0" y="714.0"/>
+        <di:waypoint xsi:type="dc:Point" x="244.0" y="714.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="180.0" y="741.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_58" bpmnElement="isSdncOk_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_219" targetElement="_BPMNShape_InclusiveGateway_28">
+        <di:waypoint xsi:type="dc:Point" x="194.0" y="779.0"/>
+        <di:waypoint xsi:type="dc:Point" x="269.0" y="779.0"/>
+        <di:waypoint xsi:type="dc:Point" x="269.0" y="840.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="194.0" y="784.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_59" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_InclusiveGateway_28" targetElement="_BPMNShape_InclusiveGateway_27">
+        <di:waypoint xsi:type="dc:Point" x="269.0" y="890.0"/>
+        <di:waypoint xsi:type="dc:Point" x="269.0" y="937.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="266.0" y="914.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_243" bpmnElement="prepareDBUpdateErrorRequest_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="396.0" y="923.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_98" bpmnElement="dbUpdateError_ServiceTask">
+        <dc:Bounds height="80.0" width="100.0" x="396.0" y="804.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_243" targetElement="_BPMNShape_ServiceTask_98">
+        <di:waypoint xsi:type="dc:Point" x="446.0" y="923.0"/>
+        <di:waypoint xsi:type="dc:Point" x="446.0" y="884.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="443.0" y="901.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ServiceTask_98" targetElement="_BPMNShape_ScriptTask_79">
+        <di:waypoint xsi:type="dc:Point" x="446.0" y="804.0"/>
+        <di:waypoint xsi:type="dc:Point" x="446.0" y="764.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="443.0" y="784.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_ScriptTask_62">
+        <di:waypoint xsi:type="dc:Point" x="532.0" y="203.0"/>
+        <di:waypoint xsi:type="dc:Point" x="816.0" y="203.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="540.0" y="203.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_250" bpmnElement="callRESTQueryCloudRegion_ScriptTask">
+        <dc:Bounds height="80.0" width="100.0" x="960.0" y="269.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_52" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ScriptTask_250" targetElement="_BPMNShape_ScriptTask_66">
+        <di:waypoint xsi:type="dc:Point" x="1010.0" y="349.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1010.0" y="417.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1007.0" y="366.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_41" bpmnElement="BoundaryEvent_1">
+        <dc:Bounds height="36.0" width="36.0" x="1328.0" y="833.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_41" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_BoundaryEvent_41" targetElement="_BPMNShape_EndEvent_124">
+        <di:waypoint xsi:type="dc:Point" x="1364.0" y="851.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1387.0" y="850.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1425.0" y="850.0"/>
+        <di:waypoint xsi:type="dc:Point" x="1425.0" y="996.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="6.0" width="6.0" x="1422.0" y="940.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_224" bpmnElement="isRelationshipExists_ExclusiveGateway" isMarkerVisible="true">
+        <dc:Bounds height="50.0" width="50.0" x="840.0" y="72.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="139.0" x="797.0" y="51.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_60" bpmnElement="isRelationshipExistNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_ExclusiveGateway_62">
+        <di:waypoint xsi:type="dc:Point" x="890.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="984.0" y="97.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="22.0" x="890.0" y="97.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_216" bpmnElement="relationshipError_EndEvent">
+        <dc:Bounds height="36.0" width="36.0" x="730.0" y="80.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="109.0" x="701.0" y="117.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_61" bpmnElement="isRelationshipExistYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_EndEvent_216">
+        <di:waypoint xsi:type="dc:Point" x="840.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="800.0" y="97.0"/>
+        <di:waypoint xsi:type="dc:Point" x="800.0" y="98.0"/>
+        <di:waypoint xsi:type="dc:Point" x="766.0" y="98.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="22.0" width="29.0" x="816.0" y="97.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_29" bpmnElement="SubProcess_1" isExpanded="true">
+        <dc:Bounds height="175.0" width="326.0" x="0.0" y="369.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_73" bpmnElement="StartEvent_1">
+        <dc:Bounds height="36.0" width="36.0" x="36.0" y="432.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="54.0" y="473.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_222" bpmnElement="EndEvent_4">
+        <dc:Bounds height="36.0" width="36.0" x="240.0" y="432.0"/>
+        <bpmndi:BPMNLabel>
+          <dc:Bounds height="0.0" width="0.0" x="258.0" y="473.0"/>
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_272" bpmnElement="unexpectedError_DeleteNetworkInfra_ScriptTask_1">
+        <dc:Bounds height="80.0" width="100.0" x="108.0" y="410.0"/>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_StartEvent_73" targetElement="_BPMNShape_ScriptTask_272">
+        <di:waypoint xsi:type="dc:Point" x="72.0" y="450.0"/>
+        <di:waypoint xsi:type="dc:Point" x="108.0" y="450.0"/>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_272" targetElement="_BPMNShape_EndEvent_222">
+        <di:waypoint xsi:type="dc:Point" x="208.0" y="450.0"/>
+        <di:waypoint xsi:type="dc:Point" x="240.0" y="450.0"/>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteServiceInstanceInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteServiceInstanceInfra.bpmn
new file mode 100644
index 0000000..7a5c30a
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteServiceInstanceInfra.bpmn
@@ -0,0 +1,554 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DeleteServiceInstanceInfra" name="DeleteServiceInstanceInfra" isExecutable="true">

+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">

+      <bpmn2:scriptTask id="prepareDBInfraErrorRequest_ScriptTask" name="Prepare DB Infra Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_47</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.prepareDBRequestError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="prepareDBInfraErrorRequest_ScriptTask" targetRef="callDBInfraErrorUpdate_ServiceTask_1"/>

+      <bpmn2:serviceTask id="callDBInfraErrorUpdate_ServiceTask_1" name="Call DB Infra Error Update">

+        <bpmn2:extensionElements>

+          <camunda:connector>

+            <camunda:connectorId>http-connector</camunda:connectorId>

+            <camunda:inputOutput>

+              <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+              <camunda:inputParameter name="payload">${DELSI_createDBInfraErrorRequest}</camunda:inputParameter>

+              <camunda:inputParameter name="headers">

+                <camunda:map>

+                  <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+                </camunda:map>

+              </camunda:inputParameter>

+              <camunda:inputParameter name="method">POST</camunda:inputParameter>

+              <camunda:outputParameter name="DELSI_errorDBInfraErrorResponse">${response}</camunda:outputParameter>

+              <camunda:outputParameter name="DELSI_errorDBInfraErrorErrorCode">${statusCode}</camunda:outputParameter>

+            </camunda:inputOutput>

+          </camunda:connector>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:serviceTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="callDBInfraErrorUpdate_ServiceTask_1" targetRef="prepareFalloutHandler_ScriptTask"/>

+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.buildErrorResponse(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="sendSyncError_ScriptTask"/>

+      <bpmn2:scriptTask id="sendSyncError_ScriptTask" name="Send Sync Ack Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.sendSyncError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="sendSyncError_ScriptTask" targetRef="faultHandler_CallActivity"/>

+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in variables="all"/>

+          <camunda:out variables="all"/>

+          <camunda:in source="DELSI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="requestId" target="requestId"/>

+          <camunda:in source="serviceInstanceId" target="serviceInstanceId"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">

+        <bpmn2:outgoing>SequenceFlow_47</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_47" name="" sourceRef="subProcessStart_StartEvent" targetRef="prepareDBInfraErrorRequest_ScriptTask"/>

+    </bpmn2:subProcess>

+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${DELSI_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="DELSI_dbResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="DELSI_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Post Process &amp; Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>

+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:in source="DELSI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="requestId" target="requestId"/>

+        <camunda:in source="serviceInstanceId" target="serviceInstanceId"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>

+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="callGetServiceInstance"/>

+    <bpmn2:subProcess id="UnexpectedError_SubProcess_1" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_1">

+        <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_92" errorRef="Error_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>

+      <bpmn2:scriptTask id="ScriptTask_1" name="Log / Print Unexpected Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_1" targetRef="EndEvent_1"/>

+    </bpmn2:subProcess>

+    <bpmn2:exclusiveGateway id="isReturnCode404_ExclusiveGateway" name="SI found?" default="isReturnCode404_Yes_SequenceFlow">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>isReturnCode404_No_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>isReturnCode404_Yes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="isReturnCode404_No_SequenceFlow" name="YES" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="processResponse">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGSI_FoundIndicator" ) == true && execution.getVariable("GENGSI_SuccessIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="prepareDBInfraRequestSilentSucces_ScriptTask" name="Prepare DB Infra Request Silent Success" scriptFormat="groovy">

+      <bpmn2:incoming>isReturnCode404_Yes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.prepareDBRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:serviceTask id="silentSuccessCallDB_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${DELSI_createDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="DELSI_dbResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="DELSI_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:scriptTask id="prepareSilentCompletion_ScriptTask" name="Prepare Silent Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="silentAccess_CallActivity" name="Call CompleteMsoProcess (Silent Success)" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELSI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="prepareDBInfraRequestSilentSucces_ScriptTask" targetRef="silentSuccessCallDB_ServiceTask"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="silentSuccessCallDB_ServiceTask" targetRef="prepareSilentCompletion_ScriptTask"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="prepareSilentCompletion_ScriptTask" targetRef="silentAccess_CallActivity"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="silentAccess_CallActivity" targetRef="EndEvent_2"/>

+    <bpmn2:startEvent id="createNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="createNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="callGetServiceInstance" targetRef="isReturnCode404_ExclusiveGateway"/>

+    <bpmn2:callActivity id="callGetServiceInstance" name="Get&#xD;&#xA;Service&#xD;&#xA;Instance" calledElement="GenericGetService">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELSI_serviceInstanceId" target="GENGS_serviceInstanceId"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="GENGS_FoundIndicator" target="GENGSI_FoundIndicator"/>

+        <camunda:out source="GENGS_SuccessIndicator" target="GENGSI_SuccessIndicator"/>

+        <camunda:out source="GENGS_service" target="DELSI_serviceInstance"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="GENGS_siResourceLink" target="GENGSI_siResourceLink"/>

+        <camunda:in source="GENGS_type" target="GENGS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()
+DeleteServiceInstanceInfra.prepareDBRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>

+    <bpmn2:callActivity id="callDeleteSIsub_CallActivity" name="Call Delete SI subprocess" calledElement="GenericDeleteService">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELSI_globalSubscriberId" target="GENDS_globalCustomerId"/>

+        <camunda:in source="serviceInstanceId" target="GENDS_serviceInstanceId"/>

+        <camunda:in source="serviceType" target="GENDS_serviceType"/>

+        <camunda:in source="GENGS_type" target="GENDS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_46" name="" sourceRef="callDeleteSIsub_CallActivity" targetRef="prepareDBInfraRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="processResponse" name="Process Response" scriptFormat="groovy">

+      <bpmn2:incoming>isReturnCode404_No_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def DeleteServiceInstanceInfra = new DeleteServiceInstanceInfra()

+DeleteServiceInstanceInfra.processGetServiceInstanceResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="processResponse" targetRef="callDeleteSIsub_CallActivity"/>

+    <bpmn2:sequenceFlow id="isReturnCode404_Yes_SequenceFlow" name="NO" sourceRef="isReturnCode404_ExclusiveGateway" targetRef="prepareDBInfraRequestSilentSucces_ScriptTask"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="java.lang.Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteServiceInstanceInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="createNetwork_startEvent">

+        <dc:Bounds height="36.0" width="36.0" x="403.0" y="185.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="65.0" x="389.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="612.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">

+        <di:waypoint xsi:type="dc:Point" x="439.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="478.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_CallActivity_73" targetElement="_BPMNShape_ExclusiveGateway_64">

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1172.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1172.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1212.0" y="205.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1157.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_64" bpmnElement="isReturnCode404_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1212.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1197.0" y="157.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="isReturnCode404_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_ScriptTask_333">

+        <di:waypoint xsi:type="dc:Point" x="1237.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1237.0" y="283.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="33.0" x="1221.0" y="242.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="810.0" y="611.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1167.0" y="775.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">

+        <dc:Bounds height="301.0" width="751.0" x="346.0" y="427.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="408.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="67.0" x="393.0" y="674.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="678.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="775.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1188.0" y="614.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="614.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="712.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="803.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="743.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="803.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="778.0" y="517.0"/>

+        <di:waypoint xsi:type="dc:Point" x="810.0" y="517.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="803.0" y="517.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="694.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="775.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1391.0" y="727.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">

+        <di:waypoint xsi:type="dc:Point" x="1344.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1306.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1306.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1267.0" y="815.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1298.0" y="815.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_65" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_CallActivity_61" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="560.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="614.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1235.0" y="595.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_158" bpmnElement="sendSyncError_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="810.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_57" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ScriptTask_158" targetElement="_BPMNShape_CallActivity_3">

+        <di:waypoint xsi:type="dc:Point" x="860.0" y="557.0"/>

+        <di:waypoint xsi:type="dc:Point" x="860.0" y="611.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="857.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1083.0" y="797.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1101.0" y="838.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="984.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1002.0" y="674.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="910.0" y="651.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="651.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="909.0" y="651.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ServiceTask_97" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="634.0" y="517.0"/>

+        <di:waypoint xsi:type="dc:Point" x="678.0" y="517.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="644.0" y="517.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_97" bpmnElement="callDBInfraErrorUpdate_ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="534.0" y="477.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_218" bpmnElement="prepareDBInfraErrorRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="534.0" y="611.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_218" targetElement="_BPMNShape_ServiceTask_97">

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="611.0"/>

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="557.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="581.0" y="598.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_43" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_CallActivity_73">

+        <di:waypoint xsi:type="dc:Point" x="903.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1032.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="911.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_76" bpmnElement="SequenceFlow_47" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_218">

+        <di:waypoint xsi:type="dc:Point" x="444.0" y="651.0"/>

+        <di:waypoint xsi:type="dc:Point" x="534.0" y="651.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="451.0" y="651.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="1288.0" y="654.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1344.0" y="654.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1324.0" y="654.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_EndEvent_177">

+        <di:waypoint xsi:type="dc:Point" x="1167.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1119.0" y="815.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1140.0" y="815.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_27" bpmnElement="UnexpectedError_SubProcess_1" isExpanded="true">

+        <dc:Bounds height="232.0" width="409.0" x="349.0" y="837.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_70" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="417.0" y="942.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="435.0" y="983.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_269" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="492.0" y="920.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_219" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="647.0" y="939.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="665.0" y="980.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_StartEvent_70" targetElement="_BPMNShape_ScriptTask_269">

+        <di:waypoint xsi:type="dc:Point" x="453.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="492.0" y="960.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="478.0" y="960.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_269" targetElement="_BPMNShape_EndEvent_219">

+        <di:waypoint xsi:type="dc:Point" x="592.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="960.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="957.0"/>

+        <di:waypoint xsi:type="dc:Point" x="647.0" y="957.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="614.0" y="960.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_285" bpmnElement="prepareDBInfraRequestSilentSucces_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1344.0" y="168.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_104" bpmnElement="silentSuccessCallDB_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1500.0" y="166.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_286" bpmnElement="prepareSilentCompletion_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1488.0" y="312.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_220" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1512.0" y="521.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1530.0" y="562.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_60" bpmnElement="silentAccess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1480.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_285" targetElement="_BPMNShape_ServiceTask_104">

+        <di:waypoint xsi:type="dc:Point" x="1444.0" y="208.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1472.0" y="208.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1472.0" y="206.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1500.0" y="206.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ServiceTask_104" targetElement="_BPMNShape_ScriptTask_286">

+        <di:waypoint xsi:type="dc:Point" x="1550.0" y="246.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1550.0" y="279.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1538.0" y="279.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1538.0" y="312.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_286" targetElement="_BPMNShape_CallActivity_60">

+        <di:waypoint xsi:type="dc:Point" x="1538.0" y="392.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1538.0" y="406.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1530.0" y="406.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1530.0" y="420.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_CallActivity_60" targetElement="_BPMNShape_EndEvent_220">

+        <di:waypoint xsi:type="dc:Point" x="1530.0" y="500.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1530.0" y="521.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_61" bpmnElement="callDeleteSIsub_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1188.0" y="480.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_73" bpmnElement="callGetServiceInstance">

+        <dc:Bounds height="80.0" width="100.0" x="1032.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_333" bpmnElement="processResponse">

+        <dc:Bounds height="80.0" width="100.0" x="1187.0" y="283.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_333" targetElement="_BPMNShape_CallActivity_61">

+        <di:waypoint xsi:type="dc:Point" x="1237.0" y="363.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1237.0" y="421.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="421.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="480.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="isReturnCode404_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_64" targetElement="_BPMNShape_ScriptTask_285">

+        <di:waypoint xsi:type="dc:Point" x="1262.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1303.0" y="205.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1303.0" y="208.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1344.0" y="208.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleInfra.bpmn
new file mode 100644
index 0000000..d30042c
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleInfra.bpmn
@@ -0,0 +1,324 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_F0omAMXGEeW834CKd-K10Q" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DeleteVfModuleInfra" name="DeleteVfModuleInfra" isExecutable="true">

+    <bpmn2:scriptTask id="ScriptTask_1" name="Send Synch Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.sendSynchResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ScriptTask_1" targetRef="ScriptTask_7"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.preProcessRequest(execution)

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_2" targetRef="ScriptTask_1"/>

+    <bpmn2:scriptTask id="ScriptTask_7" name="DoDeleteVfModule (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.prepDoDeleteVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="ScriptTask_6" name="DoDeleteVfModule" calledElement="DoDeleteVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DeleteVfModuleRequest" target="DoDeleteVfModuleRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="isVidRequest" target="isVidRequest"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_7" targetRef="ScriptTask_6"/>

+    <bpmn2:callActivity id="CallActivity_1" name="Completion Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELVfModI_CompletionHandlerRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="CallActivity_1" targetRef="ScriptTask_4"/>

+    <bpmn2:endEvent id="EndEvent_1" name="TheEnd">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_5"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_4" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[// The following variable is checked by the unit test

+execution.setVariable("DeleteVfModuleInfraSuccessIndicator", true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_4" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="ScriptTask_10" name="Completion Handler (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.completionHandlerPrep(execution, 'DELVfModI_CompletionHandlerRequest')

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_10" targetRef="CallActivity_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ScriptTask_6" targetRef="ScriptTask_5"/>

+    <bpmn2:serviceTask id="ScriptTask_8" name="UpdateInfraRequest">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">${DELVfModI_updateInfraRequest}</camunda:inputParameter>

+            <camunda:outputParameter name="DELVfModI_updateInfraRequestResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="DELVfModI_updateInfraRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ScriptTask_8" targetRef="ScriptTask_10"/>

+    <bpmn2:scriptTask id="ScriptTask_5" name="Update Infra Request (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.prepUpdateInfraRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_5" targetRef="ScriptTask_8"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Error Handler" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_3" name="Catch All Errors">

+        <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_3" targetRef="ScriptTask_3"/>

+      <bpmn2:scriptTask id="ScriptTask_3" name="Fallout Handler (prep)" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def dvfm = new DeleteVfModuleInfra()

+dvfm.falloutHandlerPrep(execution, 'DELVfModI_FalloutHandlerRequest')

+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_7" sourceRef="ScriptTask_3" targetRef="CallActivity_2"/>

+      <bpmn2:callActivity id="CallActivity_2" name="Fallout Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="DELVfModI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="CallActivity_2" targetRef="EndEvent_2"/>

+    </bpmn2:subProcess>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="TerminateEventDefinition_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="SubProcess_1">

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_3"/>

+    <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true" name="Start">

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_2"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteVfModuleInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="144.0" y="72.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="145.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_125" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="605.0" y="370.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="598.0" y="411.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="90.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="230.0" y="90.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="50.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ScriptTask_125">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="449.0" y="90.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="433.0" y="90.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_125" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="449.0" y="50.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_125" targetElement="_BPMNShape_ScriptTask_130">

+        <di:waypoint xsi:type="dc:Point" x="498.0" y="130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="498.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="190.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="717.0" y="169.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="449.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_EndEvent_125">

+        <di:waypoint xsi:type="dc:Point" x="549.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="605.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="723.0" y="186.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_130" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="80.0" width="100.0" x="149.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="ScriptTask_10">

+        <dc:Bounds height="80.0" width="100.0" x="149.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_27" bpmnElement="CallActivity_1">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_CallActivity_27">

+        <di:waypoint xsi:type="dc:Point" x="249.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="271.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_17" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="241.0" width="565.0" x="65.0" y="536.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_52" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="129.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="98.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_136" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="209.0" y="608.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_52" targetElement="_BPMNShape_ScriptTask_136">

+        <di:waypoint xsi:type="dc:Point" x="165.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="209.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="209.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_136" targetElement="_BPMNShape_CallActivity_28">

+        <di:waypoint xsi:type="dc:Point" x="309.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="377.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="325.0" y="648.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_126" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="533.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="551.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_43" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="612.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="627.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_127" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="704.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="722.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_BoundaryEvent_43" targetElement="_BPMNShape_EndEvent_127">

+        <di:waypoint xsi:type="dc:Point" x="648.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="704.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="693.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_28" bpmnElement="CallActivity_2">

+        <dc:Bounds height="80.0" width="100.0" x="377.0" y="608.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_CallActivity_27" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="449.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="439.0" y="356.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_28" targetElement="_BPMNShape_EndEvent_126">

+        <di:waypoint xsi:type="dc:Point" x="477.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="533.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="373.0" y="456.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_181" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_130" targetElement="_BPMNShape_ScriptTask_181">

+        <di:waypoint xsi:type="dc:Point" x="249.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="230.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_182" bpmnElement="ScriptTask_5">

+        <dc:Bounds height="80.0" width="100.0" x="453.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_183" bpmnElement="ScriptTask_8">

+        <dc:Bounds height="80.0" width="100.0" x="598.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_181" targetElement="_BPMNShape_ScriptTask_182">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="453.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="613.0" y="314.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_182" targetElement="_BPMNShape_ScriptTask_183">

+        <di:waypoint xsi:type="dc:Point" x="553.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="598.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="575.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_183" targetElement="_BPMNShape_ScriptTask_133">

+        <di:waypoint xsi:type="dc:Point" x="647.0" y="270.0"/>

+        <di:waypoint xsi:type="dc:Point" x="647.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="348.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="345.0" y="280.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleVolumeInfraV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleVolumeInfraV1.bpmn
new file mode 100644
index 0000000..4939255
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVfModuleVolumeInfraV1.bpmn
@@ -0,0 +1,567 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DeleteVfModuleVolumeInfraV1" name="DeleteVfModuleVolumeInfraV1" isExecutable="true">

+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('preProcessRequest', execution, isDebugLogEnabled)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>

+    <bpmn2:startEvent id="deleteNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="deleteNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('sendSyncResponse', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="ScriptTask_callRestCloudRegion"/>

+    <bpmn2:scriptTask id="ScriptTask_callRestCloudRegion" name="Call REST Query Cloud Region " scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def delVfModuleVol = new DeleteVfModuleVolumeInfraV1()
+delVfModuleVol.executeMethod('callRESTQueryAAICloudRegion', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="prepareVnfAdapterDelete_ScriptTask_1" name="Prepare Vnf Adapter Delete" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('prepareVnfAdapterDeleteRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="prepareVnfAdapterDelete_ScriptTask_1" targetRef="callVnfAdapterDeleteSubflow_CallActivity"/>

+    <bpmn2:endEvent id="EndEvent_5">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_2" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" name="TenantId Match?" default="SequenceFlow_21">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ExclusiveGateway_3" targetRef="prepareVnfAdapterDelete_ScriptTask_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELVfModVol_tenantId") == execution.getVariable("DELVfModVol_volumeGroupTenantId")}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_2"/>

+    <bpmn2:callActivity id="callVnfAdapterDeleteSubflow_CallActivity" name="Call Vnf Adapter Delete subflow" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELVfModVol_deleteVnfARequest" target="vnfAdapterRestV1Request"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DELVfModVol_deleteVnfAResponse"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in variables="all"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="VNFREST_SuccessIndicator" target="VNFREST_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="callVnfAdapterDeleteSubflow_CallActivity" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:scriptTask id="callAAIQuery_scriptTask" name="Query AAI for Volume Group Info" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('queryAAIForVolumeGroup', execution, isDebugLogEnabled)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="callAAIQuery_scriptTask" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Handle TenantId Mismatch" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('handleTenantIdMismatch', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ScriptTask_2" targetRef="EndEvent_5"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_callRestCloudRegion" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="is Cloud Region Ok?" default="SequenceFlow_4">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ExclusiveGateway_1" targetRef="callAAIQuery_scriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELVfModVol_isCloudRegionGood") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">

+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">

+        <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="subProcessStart_StartEvent" targetRef="ExclusiveGateway_synResponseSent"/>

+      <bpmn2:exclusiveGateway id="ExclusiveGateway_synResponseSent" name="Sync response sent?" default="SequenceFlow_responseNotSent">

+        <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_responseNotSent</bpmn2:outgoing>

+        <bpmn2:outgoing>SequenceFlow_responseSent</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:scriptTask id="ScriptTask_4" name="Send Sync Ack Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_responseNotSent</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new  DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('sendSyncError', execution, isDebugLogEnabled)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_responseNotSent" name="No" sourceRef="ExclusiveGateway_synResponseSent" targetRef="ScriptTask_4"/>

+      <bpmn2:sequenceFlow id="SequenceFlow_responseSent" name="Yes" sourceRef="ExclusiveGateway_synResponseSent" targetRef="prepareFalloutHandler_ScriptTask">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{DELVfModVol_syncResponseSent == true}</bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_responseSent</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('prepareFalloutHandler', execution, isDebugLogEnabled)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="faultHandler_CallActivity"/>

+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in variables="all"/>

+          <camunda:out variables="all"/>

+          <camunda:in source="DELVfModVol_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_1"/>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_4" targetRef="prepareFalloutHandler_ScriptTask"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('prepareDBRequest', execution, isDebugLogEnabled)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>

+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Prepare Completion Handler Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('prepareCompletionHandlerRequest', execution, isDebugLogEnabled)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Set Success" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[// The following variable is checked by the unit test
+execution.setVariable("DELVfModVol_TransactionSuccessIndicator", true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ScriptTask_3" targetRef="EndEvent_2"/>

+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:in source="DELVfModVol_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="ScriptTask_3"/>

+    <bpmn2:endEvent id="EndEvent_2" name="End">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="TerminateEventDefinition_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${DELVfModVol_updateInfraRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="DELVfModVol_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="DELVfModVol_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTDeleteVolGrpId_ScriptTask" name="Call REST Delete AAI Vol Grp Id" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_vnfAdapterCallOK</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def deleteVfMod = new DeleteVfModuleVolumeInfraV1()
+deleteVfMod.executeMethod('deleteVolGrpId', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="callRESTDeleteVolGrpId_ScriptTask" targetRef="prepareDBInfraRequest_ScriptTask"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="Is call to VNF Adapter OK?" default="SequenceFlow_vnfAdapterCallNotOK">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_vnfAdapterCallOK</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_vnfAdapterCallNotOK</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_vnfAdapterCallOK" name="" sourceRef="ExclusiveGateway_2" targetRef="callRESTDeleteVolGrpId_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{VNFREST_SuccessIndicator == true}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_6">

+      <bpmn2:incoming>SequenceFlow_vnfAdapterCallNotOK</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_5" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_vnfAdapterCallNotOK" name="" sourceRef="ExclusiveGateway_2" targetRef="EndEvent_6"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_2" errorCode="java.lang.Exception" name="java.lang.Exception"/>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteVfModuleVolumeInfraV1">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="deleteNetwork_startEvent">

+        <dc:Bounds height="36.0" width="36.0" x="103.0" y="94.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="65.0" x="89.0" y="135.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="355.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">

+        <di:waypoint xsi:type="dc:Point" x="139.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="355.0" y="112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="116.0" y="12.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_62" bpmnElement="callAAIQuery_scriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="864.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="438.0" y="360.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="985.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">

+        <dc:Bounds height="337.0" width="660.0" x="37.0" y="288.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="60.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="67.0" x="45.0" y="424.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="288.0" y="360.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="877.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="660.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="769.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="455.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="496.0" y="112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="486.0" y="112.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="496.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ExclusiveGateway_255">

+        <di:waypoint xsi:type="dc:Point" x="96.0" y="401.0"/>

+        <di:waypoint xsi:type="dc:Point" x="118.0" y="401.0"/>

+        <di:waypoint xsi:type="dc:Point" x="118.0" y="400.0"/>

+        <di:waypoint xsi:type="dc:Point" x="144.0" y="400.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="99.0" y="401.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_CallActivity_3">

+        <di:waypoint xsi:type="dc:Point" x="388.0" y="400.0"/>

+        <di:waypoint xsi:type="dc:Point" x="438.0" y="400.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="413.0" y="400.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="849.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="877.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1258.0" y="857.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="957.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="985.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1289.0" y="898.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_134" bpmnElement="callRESTDeleteVolGrpId_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="528.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_134" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="608.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="660.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1291.0" y="557.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_58" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="740.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="769.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1258.0" y="751.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_22" bpmnElement="callVnfAdapterDeleteSubflow_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="300.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="prepareVnfAdapterDelete_ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="180.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_CallActivity_22">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="260.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="300.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1112.0" y="280.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_CallActivity_22" targetElement="_BPMNShape_ExclusiveGateway_252">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="380.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="401.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1042.0" y="401.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1042.0" y="422.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1039.0" y="415.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_163" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="588.0" y="382.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="606.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_163">

+        <di:waypoint xsi:type="dc:Point" x="538.0" y="400.0"/>

+        <di:waypoint xsi:type="dc:Point" x="588.0" y="400.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="558.0" y="400.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_167" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1025.0" y="1201.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1029.0" y="1242.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_ScriptTask_241">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="1065.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="1093.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1258.0" y="1083.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_234" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="120.0" y="492.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_ScriptTask_251">

+        <di:waypoint xsi:type="dc:Point" x="596.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="623.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="623.0" y="115.0"/>

+        <di:waypoint xsi:type="dc:Point" x="636.0" y="115.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="613.0" y="112.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_62" targetElement="_BPMNShape_ExclusiveGateway_203">

+        <di:waypoint xsi:type="dc:Point" x="964.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1017.0" y="111.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1067.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_203" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1017.0" y="86.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="102.0" x="984.0" y="60.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_240" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_203" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="1042.0" y="136.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="180.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1040.0" y="122.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ExclusiveGateway_203" targetElement="_BPMNShape_ScriptTask_240">

+        <di:waypoint xsi:type="dc:Point" x="1067.0" y="111.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1085.0" y="111.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1085.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1104.0" y="112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1216.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="1242.0" y="95.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1260.0" y="136.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_240" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="1204.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1222.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1222.0" y="113.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1242.0" y="113.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1220.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_241" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="993.0" y="1093.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_241" targetElement="_BPMNShape_EndEvent_167">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="1173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="1201.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1040.0" y="1320.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_251" bpmnElement="ScriptTask_callRestCloudRegion">

+        <dc:Bounds height="80.0" width="100.0" x="636.0" y="75.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_223" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="774.0" y="89.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="125.0" x="735.0" y="40.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_215" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="781.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="799.0" y="211.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_EndEvent_215">

+        <di:waypoint xsi:type="dc:Point" x="798.0" y="139.0"/>

+        <di:waypoint xsi:type="dc:Point" x="798.0" y="153.0"/>

+        <di:waypoint xsi:type="dc:Point" x="799.0" y="153.0"/>

+        <di:waypoint xsi:type="dc:Point" x="799.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="796.0" y="166.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_251" targetElement="_BPMNShape_ExclusiveGateway_223">

+        <di:waypoint xsi:type="dc:Point" x="736.0" y="115.0"/>

+        <di:waypoint xsi:type="dc:Point" x="754.0" y="115.0"/>

+        <di:waypoint xsi:type="dc:Point" x="754.0" y="114.0"/>

+        <di:waypoint xsi:type="dc:Point" x="774.0" y="114.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="752.0" y="114.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ScriptTask_62">

+        <di:waypoint xsi:type="dc:Point" x="824.0" y="114.0"/>

+        <di:waypoint xsi:type="dc:Point" x="844.0" y="114.0"/>

+        <di:waypoint xsi:type="dc:Point" x="844.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="864.0" y="112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="841.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_252" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1017.0" y="422.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="164.0" x="960.0" y="477.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_vnfAdapterCallOK" sourceElement="_BPMNShape_ExclusiveGateway_252" targetElement="_BPMNShape_ScriptTask_134">

+        <di:waypoint xsi:type="dc:Point" x="1042.0" y="472.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1040.0" y="500.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_236" bpmnElement="EndEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1168.0" y="430.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1186.0" y="471.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_vnfAdapterCallNotOK" sourceElement="_BPMNShape_ExclusiveGateway_252" targetElement="_BPMNShape_EndEvent_236">

+        <di:waypoint xsi:type="dc:Point" x="1067.0" y="447.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1117.0" y="447.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1117.0" y="448.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1168.0" y="448.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_255" bpmnElement="ExclusiveGateway_synResponseSent" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="144.0" y="375.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="129.0" x="106.0" y="439.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_responseNotSent" sourceElement="_BPMNShape_ExclusiveGateway_255" targetElement="_BPMNShape_ScriptTask_234">

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="425.0"/>

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="458.0"/>

+        <di:waypoint xsi:type="dc:Point" x="170.0" y="458.0"/>

+        <di:waypoint xsi:type="dc:Point" x="170.0" y="492.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="159.0" y="458.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_responseSent" sourceElement="_BPMNShape_ExclusiveGateway_255" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="400.0"/>

+        <di:waypoint xsi:type="dc:Point" x="288.0" y="400.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="204.0" y="400.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_234" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="220.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="254.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="508.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="482.0"/>

+        <di:waypoint xsi:type="dc:Point" x="337.0" y="440.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="317.0" y="532.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVnfInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVnfInfra.bpmn
new file mode 100644
index 0000000..28d005c
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/DeleteVnfInfra.bpmn
@@ -0,0 +1,458 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_9MhrcHqVEea26OhQB97uCQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DeleteVnfInfra" name="DeleteVnfInfra" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="intialization"/>

+    <bpmn2:scriptTask id="sendSyncResponse" name="Send Sync Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+DeleteVnfInfra deleteVnf = new DeleteVnfInfra()
+deleteVnf.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="intialization" name="Intialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+DeleteVnfInfra deleteVnf = new DeleteVnfInfra()
+deleteVnf.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="intialization" targetRef="sendSyncResponse"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="sendSyncResponse" targetRef="callGetVnf"/>

+    <bpmn2:callActivity id="callGetVnf" name="Get&#xD;&#xA;Generic Vnf" calledElement="GenericGetVnf">

+      <bpmn2:extensionElements>

+        <camunda:out source="GENGV_vnf" target="DELVI_genericVnf"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="GENGV_SuccessIndicator" target="GENGV_SuccessIndicator"/>

+        <camunda:out source="GENGV_FoundIndicator" target="GENGV_FoundIndicator"/>

+        <camunda:in source="DELVI_type" target="GENGV_type"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="DELVI_vnfId" target="GENGV_vnfId"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="callGetVnf" targetRef="vnfFoundCheck"/>

+    <bpmn2:exclusiveGateway id="vnfFoundCheck" name="Vnf Found?" default="notFound">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>vnfFound</bpmn2:outgoing>

+      <bpmn2:outgoing>notFound</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="vnfFound" name="Yes" sourceRef="vnfFoundCheck" targetRef="processResponse">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGV_FoundIndicator") == true && execution.getVariable("GENGV_SuccessIndicator") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="notFound" name="No" sourceRef="vnfFoundCheck" targetRef="IntermediateThrowEvent_1"/>

+    <bpmn2:scriptTask id="processResponse" name="Process Response" scriptFormat="groovy">

+      <bpmn2:incoming>vnfFound</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+DeleteVnfInfra deleteVnf = new DeleteVnfInfra()
+deleteVnf.processGetVnfResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="processResponse" targetRef="vnfInUseCheck"/>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="Skip Delete">

+      <bpmn2:incoming>notFound</bpmn2:incoming>

+      <bpmn2:linkEventDefinition id="LinkEventDefinition_1" name="Skip Delete"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:exclusiveGateway id="vnfInUseCheck" name="Vnf In Use?" default="notInUse">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>inUse</bpmn2:outgoing>

+      <bpmn2:outgoing>notInUse</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="inUse" name="Yes" sourceRef="vnfInUseCheck" targetRef="createWorkflowExceptionInUse">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DELVI_vnfInUse") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="notInUse" name="No" sourceRef="vnfInUseCheck" targetRef="callDeleteVnf"/>

+    <bpmn2:scriptTask id="createWorkflowExceptionInUse" name="Create Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>inUse</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildAndThrowWorkflowException(execution, 5000, "Can't Delete Generic Vnf. Generic Vnf is still in use.")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="createWorkflowExceptionInUse" targetRef="EndEvent_1"/>

+    <bpmn2:callActivity id="callDeleteVnf" name="Delete&#xD;&#xA;Generic Vnf" calledElement="GenericDeleteVnf">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELVI_vnfId" target="GENDV_vnfId"/>

+        <camunda:in source="DELVI_type" target="GENDV_type"/>

+        <camunda:out source="GENDV_SuccessIndicator" target="GENDV_SuccessIndicator"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="DELVI_resourceVersion" target="GENDV_resourceVersion"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>notInUse</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_93" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="callDeleteVnf" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:subProcess id="bpmnErrorHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="prepareFalloutHandlerRequest" name="Prepare Fallout Request" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+

+String requestInfo = execution.getVariable("DELVI_requestInfo")

+ExceptionUtil ex = new ExceptionUtil()

+String falloutHandlerRequest = ex.processMainflowsBPMNException(execution, requestInfo)

+

+execution.setVariable("DELVI_falloutHandlerRequest", falloutHandlerRequest )]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="prepareFalloutHandlerRequest" targetRef="callFalloutHandler"/>

+      <bpmn2:callActivity id="callFalloutHandler" name="Fallout&#xD;&#xA;Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="DELVI_falloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="DELVI_requestId" target="requestId"/>

+          <camunda:in source="DELVI_serviceInstanceId" target="serviceInstanceId"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="callFalloutHandler" targetRef="EndEvent_3"/>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_37"/>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_94"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="StartEvent_2" targetRef="sendErrorResponse"/>

+      <bpmn2:scriptTask id="sendErrorResponse" name="Send Error Response" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+DeleteVnfInfra deleteVnf = new DeleteVnfInfra()
+deleteVnf.sendErrorResponse(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="sendErrorResponse" targetRef="prepareFalloutHandlerRequest"/>

+    </bpmn2:subProcess>

+    <bpmn2:subProcess id="javaErrorHandlingSubProcess" name="Java Exception Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_3">

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_95" errorRef="Error_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="StartEvent_3" targetRef="processJavaException"/>

+      <bpmn2:scriptTask id="processJavaException" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="processJavaException" targetRef="EndEvent_4"/>

+    </bpmn2:subProcess>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ExclusiveGateway_2" targetRef="postProcess"/>

+    <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="Skip Delete">

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:linkEventDefinition id="LinkEventDefinition_2" name="Skip Delete"/>

+    </bpmn2:intermediateCatchEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="IntermediateCatchEvent_1" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:scriptTask id="postProcess" name="Prepare Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+DeleteVnfInfra deleteVnf = new DeleteVnfInfra()
+deleteVnf.prepareCompletionHandlerRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="postProcess" targetRef="callCompletionHandler"/>

+    <bpmn2:callActivity id="callCompletionHandler" name="Completion&#xD;&#xA;Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="DELVI_completionHandlerRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="DELVI_requestId" target="att-mso-request-id"/>

+        <camunda:in source="DELVI_serviceInstanceId" target="att-mso-service-instance-id"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="callCompletionHandler" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_36"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:error id="Error_2" errorCode="java.lang.Exception" name="Java Lang Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteVnfInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_79" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="90.0" y="210.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="108.0" y="251.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_311" bpmnElement="intialization">

+        <dc:Bounds height="80.0" width="100.0" x="216.0" y="188.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_79" targetElement="_BPMNShape_ScriptTask_311">

+        <di:waypoint xsi:type="dc:Point" x="126.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="228.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="164.0" y="228.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_313" bpmnElement="sendSyncResponse">

+        <dc:Bounds height="80.0" width="100.0" x="364.0" y="188.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_311" targetElement="_BPMNShape_ScriptTask_313">

+        <di:waypoint xsi:type="dc:Point" x="316.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="364.0" y="228.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="341.0" y="228.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_314" bpmnElement="processResponse">

+        <dc:Bounds height="80.0" width="100.0" x="704.0" y="291.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_313" targetElement="_BPMNShape_CallActivity_63">

+        <di:waypoint xsi:type="dc:Point" x="464.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="504.0" y="228.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="487.0" y="228.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_63" bpmnElement="callGetVnf">

+        <dc:Bounds height="80.0" width="100.0" x="504.0" y="188.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_236" bpmnElement="vnfInUseCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="840.0" y="305.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="73.0" x="890.0" y="335.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_314" targetElement="_BPMNShape_ExclusiveGateway_236">

+        <di:waypoint xsi:type="dc:Point" x="804.0" y="331.0"/>

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="330.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="799.0" y="325.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_CallActivity_63" targetElement="_BPMNShape_ExclusiveGateway_237">

+        <di:waypoint xsi:type="dc:Point" x="604.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="634.0" y="227.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="630.0" y="227.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_315" bpmnElement="createWorkflowExceptionInUse">

+        <dc:Bounds height="80.0" width="100.0" x="912.0" y="196.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_64" bpmnElement="callDeleteVnf">

+        <dc:Bounds height="80.0" width="100.0" x="912.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="inUse" sourceElement="_BPMNShape_ExclusiveGateway_236" targetElement="_BPMNShape_ScriptTask_315">

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="305.0"/>

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="236.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="236.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="867.0" y="258.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="notInUse" sourceElement="_BPMNShape_ExclusiveGateway_236" targetElement="_BPMNShape_CallActivity_64">

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="355.0"/>

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="424.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="424.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="870.0" y="384.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_236" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1100.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1118.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_315" targetElement="_BPMNShape_EndEvent_236">

+        <di:waypoint xsi:type="dc:Point" x="1012.0" y="236.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1100.0" y="236.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1062.0" y="236.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_237" bpmnElement="vnfFoundCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="634.0" y="202.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="72.0" x="672.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="vnfFound" sourceElement="_BPMNShape_ExclusiveGateway_237" targetElement="_BPMNShape_ScriptTask_314">

+        <di:waypoint xsi:type="dc:Point" x="659.0" y="252.0"/>

+        <di:waypoint xsi:type="dc:Point" x="659.0" y="331.0"/>

+        <di:waypoint xsi:type="dc:Point" x="704.0" y="331.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="659.0" y="288.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_2" bpmnElement="IntermediateThrowEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="740.0" y="102.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="73.0" x="722.0" y="143.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="notFound" sourceElement="_BPMNShape_ExclusiveGateway_237" targetElement="_BPMNShape_IntermediateThrowEvent_2">

+        <di:waypoint xsi:type="dc:Point" x="659.0" y="202.0"/>

+        <di:waypoint xsi:type="dc:Point" x="659.0" y="120.0"/>

+        <di:waypoint xsi:type="dc:Point" x="740.0" y="120.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="662.0" y="144.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_237" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1524.0" y="406.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1542.0" y="447.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_238" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1062.0" y="398.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1087.0" y="453.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_CallActivity_64" targetElement="_BPMNShape_ExclusiveGateway_238">

+        <di:waypoint xsi:type="dc:Point" x="1012.0" y="424.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1062.0" y="423.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1036.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ExclusiveGateway_238" targetElement="_BPMNShape_ScriptTask_326">

+        <di:waypoint xsi:type="dc:Point" x="1112.0" y="423.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="424.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1128.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_2" bpmnElement="IntermediateCatchEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1069.0" y="492.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="73.0" x="1051.0" y="533.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_IntermediateCatchEvent_2" targetElement="_BPMNShape_ExclusiveGateway_238">

+        <di:waypoint xsi:type="dc:Point" x="1087.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1087.0" y="448.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1084.0" y="462.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_34" bpmnElement="bpmnErrorHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="207.0" width="589.0" x="132.0" y="442.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_80" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="144.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="162.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_238" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="672.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="690.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_66" bpmnElement="callFalloutHandler">

+        <dc:Bounds height="80.0" width="100.0" x="516.0" y="506.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_317" bpmnElement="sendErrorResponse">

+        <dc:Bounds height="80.0" width="100.0" x="240.0" y="506.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_318" bpmnElement="prepareFalloutHandlerRequest">

+        <dc:Bounds height="80.0" width="100.0" x="377.0" y="506.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_StartEvent_80" targetElement="_BPMNShape_ScriptTask_317">

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="546.0"/>

+        <di:waypoint xsi:type="dc:Point" x="240.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="201.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_317" targetElement="_BPMNShape_ScriptTask_318">

+        <di:waypoint xsi:type="dc:Point" x="340.0" y="546.0"/>

+        <di:waypoint xsi:type="dc:Point" x="377.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="353.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_318" targetElement="_BPMNShape_CallActivity_66">

+        <di:waypoint xsi:type="dc:Point" x="477.0" y="546.0"/>

+        <di:waypoint xsi:type="dc:Point" x="516.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="491.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_CallActivity_66" targetElement="_BPMNShape_EndEvent_238">

+        <di:waypoint xsi:type="dc:Point" x="616.0" y="546.0"/>

+        <di:waypoint xsi:type="dc:Point" x="672.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="635.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_35" bpmnElement="javaErrorHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="157.0" width="312.0" x="271.0" y="696.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_81" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="300.0" y="757.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="318.0" y="798.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_239" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="516.0" y="757.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="534.0" y="798.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_319" bpmnElement="processJavaException">

+        <dc:Bounds height="80.0" width="100.0" x="378.0" y="735.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_StartEvent_81" targetElement="_BPMNShape_ScriptTask_319">

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="775.0"/>

+        <di:waypoint xsi:type="dc:Point" x="378.0" y="775.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="354.0" y="775.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ScriptTask_319" targetElement="_BPMNShape_EndEvent_239">

+        <di:waypoint xsi:type="dc:Point" x="478.0" y="775.0"/>

+        <di:waypoint xsi:type="dc:Point" x="516.0" y="775.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="494.0" y="775.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_326" bpmnElement="postProcess">

+        <dc:Bounds height="80.0" width="100.0" x="1152.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_326" targetElement="_BPMNShape_CallActivity_71">

+        <di:waypoint xsi:type="dc:Point" x="1252.0" y="424.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1296.0" y="424.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1271.0" y="424.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_71" bpmnElement="callCompletionHandler">

+        <dc:Bounds height="80.0" width="100.0" x="1296.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_CallActivity_71" targetElement="_BPMNShape_EndEvent_237">

+        <di:waypoint xsi:type="dc:Point" x="1396.0" y="424.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1524.0" y="424.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1411.0" y="424.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateNetworkInstanceInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateNetworkInstanceInfra.bpmn
new file mode 100644
index 0000000..8a203d1
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateNetworkInstanceInfra.bpmn
@@ -0,0 +1,1014 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_MagIIMOUEeW8asg-vCEgWQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="UpdateNetworkInstanceInfra" name="UpdateNetworkInstanceInfra" isExecutable="true">

+    <bpmn2:startEvent id="updateNetwork_startEvent" camunda:asyncAfter="true" name="Start Flow">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="updateNetwork_startEvent" targetRef="preProcessRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareSDNCTopoRequest_ScriptTask" name="Prepare SDNC Topology Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.prepareSDNCRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="prepareSDNCTopoRequest_ScriptTask" targetRef="callAssignSDNCAdapter_CallActivity"/>

+    <bpmn2:scriptTask id="validateSDNCResponse_ScriptTask" name="Validate SDNC Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.validateSDNCResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="isSdncTopoOk_ExclusiveGateway" name="Is SDNC Ok?" default="sdncTopoNo_SequenceFlow">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>sdncTopoNo_SequenceFlow</bpmn2:outgoing>

+      <bpmn2:outgoing>sdncTopoYes_SequenceFlow</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="sdncTopoNo_SequenceFlow" name="No" sourceRef="isSdncTopoOk_ExclusiveGateway" targetRef="sndcError_EndEvent"/>

+    <bpmn2:sequenceFlow id="sdncTopoYes_SequenceFlow" name="Yes" sourceRef="isSdncTopoOk_ExclusiveGateway" targetRef="callRESTReQuery1NetworkID_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("UPDNETI_sdncResponseSuccess" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="validateSDNCResponse_ScriptTask" targetRef="isSdncTopoOk_ExclusiveGateway"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_4" name="" attachedToRef="validateSDNCResponse_ScriptTask">

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_84" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="BoundaryEvent_4" targetRef="sndcError_EndEvent"/>

+    <bpmn2:endEvent id="sndcError_EndEvent" name="SNDC Error">

+      <bpmn2:incoming>sdncTopoNo_SequenceFlow</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_57" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="callRollbackSDNCAdapter_CallActivity" name="Call Rollback SDNC Adapter" isForCompensation="true" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDNETI_rollbackSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="SDNCA_ResponseCode" target="UPDNETI_rollbackSDNCReturnCode"/>

+        <camunda:out source="sdncAdapterResponse" target="UPDNETI_rollbackSDNCResponse"/>

+      </bpmn2:extensionElements>

+    </bpmn2:callActivity>

+    <bpmn2:boundaryEvent id="sndcCompensation_BoundaryEvent" attachedToRef="callAssignSDNCAdapter_CallActivity">

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_1" waitForCompletion="true"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:callActivity id="callAssignSDNCAdapter_CallActivity" name="Call SDNC Assign Adapter V1 Sub-process" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDNETI_changeAssignSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:out source="sdncAdapterResponse" target="UPDNETI_changeAssignSDNCResponse"/>

+        <camunda:out source="SDNCA_ResponseCode" target="UPDNETI_sdncReturnCode"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="WorkflowException" target="UPDNETI_WorkflowException"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+        <camunda:in variables="all"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="callAssignSDNCAdapter_CallActivity" targetRef="validateSDNCResponse_ScriptTask"/>

+    <bpmn2:scriptTask id="postProcessAndCompletionRequest_ScriptTask" name="Post Process &amp; Completion Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="postProcessAndCompletionRequest_ScriptTask" targetRef="callCompleteMsoProcess_CallActivity"/>

+    <bpmn2:subProcess id="subProcessException_SubProcess" name="Subprocess For Exception / FalloutHandler " triggeredByEvent="true">

+      <bpmn2:exclusiveGateway id="isRollbackOn_Network_ExclusiveGateway" name="Is Rollback On?" default="isRollbackOn_NoNetwork_SequenceFlow">

+        <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+        <bpmn2:outgoing>isRollbackOn_YesNetwork_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isRollbackOn_NoNetwork_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isRollbackOn_YesNetwork_SequenceFlow" name="Yes" sourceRef="isRollbackOn_Network_ExclusiveGateway" targetRef="isPONR_ExclusiveGateway">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("UPDNETI_rollbackEnabled") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="isRollbackOn_NoNetwork_SequenceFlow" name="No" sourceRef="isRollbackOn_Network_ExclusiveGateway" targetRef="InclusiveGateway_6"/>

+      <bpmn2:startEvent id="subProcessStart_StartEvent" name="Fault Start">

+        <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="subProcessStart_StartEvent" targetRef="isRollbackOn_Network_ExclusiveGateway"/>

+      <bpmn2:exclusiveGateway id="isPONR_ExclusiveGateway" name="isPONR?" default="isPONR_No_SequenceFlow">

+        <bpmn2:incoming>isRollbackOn_YesNetwork_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>isPONR_Yes_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isPONR_No_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isPONR_Yes_SequenceFlow" name="Yes" sourceRef="isPONR_ExclusiveGateway" targetRef="InclusiveGateway_6">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("UPDNETI_isPONR") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="isPONR_No_SequenceFlow" name="No" sourceRef="isPONR_ExclusiveGateway" targetRef="isNetworkOk_ExclusiveGateway"/>

+      <bpmn2:exclusiveGateway id="isNetworkOk_ExclusiveGateway" name="is Network Ok?" default="isNetworkOk_No_SequenceFlow">

+        <bpmn2:incoming>isPONR_No_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>isNetworkOk_No_SequenceFlow</bpmn2:outgoing>

+        <bpmn2:outgoing>isNetworkOk_Yes_SequenceFlow</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="isNetworkOk_No_SequenceFlow" name="No" sourceRef="isNetworkOk_ExclusiveGateway" targetRef="sdncOk_ExclusiveGateway"/>

+      <bpmn2:sequenceFlow id="isNetworkOk_Yes_SequenceFlow" name="Yes" sourceRef="isNetworkOk_ExclusiveGateway" targetRef="sdncOk_ExclusiveGateway">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("UPDNETI_isNetworkRollbackNeeded") == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:exclusiveGateway id="sdncOk_ExclusiveGateway" name="is Sdnc Ok?" default="sdncOk_No_ExclusiveGateway">

+        <bpmn2:incoming>isNetworkOk_No_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>isNetworkOk_Yes_SequenceFlow</bpmn2:incoming>

+        <bpmn2:outgoing>sdncOk_Yeso_ExclusiveGateway</bpmn2:outgoing>

+        <bpmn2:outgoing>sdncOk_No_ExclusiveGateway</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="sdncOk_Yeso_ExclusiveGateway" name="Yes" sourceRef="sdncOk_ExclusiveGateway" targetRef="prepareSDNCRollbackRequest_ScriptTask">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("UPDNETI_isSdncRollbackNeeded" ) == true}]]></bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="sdncOk_No_ExclusiveGateway" name="No" sourceRef="sdncOk_ExclusiveGateway" targetRef="validateRollbacksResponse_ScriptTask_2"/>

+      <bpmn2:scriptTask id="prepareSDNCRollbackRequest_ScriptTask" name="Prepare SDNCRollback Request" scriptFormat="groovy">

+        <bpmn2:incoming>sdncOk_Yeso_ExclusiveGateway</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_53</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.prepareSDNCRollbackRequest(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_53" name="" sourceRef="prepareSDNCRollbackRequest_ScriptTask" targetRef="sdncTopoRollback_IntermediateThrowEvent"/>

+      <bpmn2:intermediateThrowEvent id="sdncTopoRollback_IntermediateThrowEvent" name="SDNC Rollback">

+        <bpmn2:incoming>SequenceFlow_53</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_55</bpmn2:outgoing>

+        <bpmn2:compensateEventDefinition id="sndc_CompensateEventDefinition" activityRef="callRollbackSDNCAdapter_CallActivity" waitForCompletion="true"/>

+      </bpmn2:intermediateThrowEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_55" name="" sourceRef="sdncTopoRollback_IntermediateThrowEvent" targetRef="validateRollbacksResponse_ScriptTask_2"/>

+      <bpmn2:scriptTask id="prepareDBInfraErrorRequest_ScriptTask" name="Prepare DB Infra Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_47</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.prepareDBRequestError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="prepareDBInfraErrorRequest_ScriptTask" targetRef="callDBInfraErrorUpdate_ServiceTask_1"/>

+      <bpmn2:serviceTask id="callDBInfraErrorUpdate_ServiceTask_1" name="Call DB Infra Error Update">

+        <bpmn2:extensionElements>

+          <camunda:connector>

+            <camunda:connectorId>http-connector</camunda:connectorId>

+            <camunda:inputOutput>

+              <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+              <camunda:inputParameter name="payload">${UPDNETI_updateDBRequest}</camunda:inputParameter>

+              <camunda:inputParameter name="headers">

+                <camunda:map>

+                  <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+                </camunda:map>

+              </camunda:inputParameter>

+              <camunda:inputParameter name="method">POST</camunda:inputParameter>

+              <camunda:outputParameter name="UPDNETI_updateDBResponse">${response}</camunda:outputParameter>

+              <camunda:outputParameter name="UPDNETI_dbReturnCode">${statusCode}</camunda:outputParameter>

+            </camunda:inputOutput>

+          </camunda:connector>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:serviceTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="callDBInfraErrorUpdate_ServiceTask_1" targetRef="prepareFalloutHandler_ScriptTask"/>

+      <bpmn2:callActivity id="faultHandler_CallActivity" name="Call FalloutHandlerV1" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in variables="all"/>

+          <camunda:out variables="all"/>

+          <camunda:in source="UPDNETI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:out source="FH_ResponseCode" target="FH_ResponseCode"/>

+          <camunda:out source="FalloutHandlerResponse" target="FalloutHandlerResponse"/>

+          <camunda:out source="FH_ErrorResponse" target="FH_ErrorResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="faultHandler_CallActivity" targetRef="EndEvent_4"/>

+      <bpmn2:endEvent id="EndEvent_4">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="validateRollbacksResponse_ScriptTask_2" name="Validate Rollback Responses" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_55</bpmn2:incoming>

+        <bpmn2:incoming>sdncOk_No_ExclusiveGateway</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.validateRollbackResponses(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="validateRollbacksResponse_ScriptTask_2" targetRef="InclusiveGateway_6"/>

+      <bpmn2:inclusiveGateway id="InclusiveGateway_6">

+        <bpmn2:incoming>isRollbackOn_NoNetwork_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>isPONR_Yes_SequenceFlow</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_47</bpmn2:outgoing>

+      </bpmn2:inclusiveGateway>

+      <bpmn2:sequenceFlow id="SequenceFlow_47" name="" sourceRef="InclusiveGateway_6" targetRef="prepareDBInfraErrorRequest_ScriptTask"/>

+      <bpmn2:scriptTask id="prepareFalloutHandler_ScriptTask" name="Prepare FalloutHandler" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def buildErrorResponse = new UpdateNetworkInstanceInfra()
+buildErrorResponse.buildErrorResponse(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="prepareFalloutHandler_ScriptTask" targetRef="faultHandler_CallActivity"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="callRESTReQuery2NetworkID_ScriptTask" name="Call REST ReQuery2 Network Id in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTReQueryAAINetworkId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="callRESTReQuery2NetworkID_ScriptTask" targetRef="callRESTUpdateContrailNetwork_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTUpdateContrailNetwork_ScriptTask" name="Call REST Update Contrail Network in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTUpdateContrailAAINetwork(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_46" name="PONR" sourceRef="callRESTUpdateContrailNetwork_ScriptTask" targetRef="prepareDBInfraRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareDBInfraRequest_ScriptTask" name="Prepare DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.prepareDBRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="prepareDBInfraRequest_ScriptTask" targetRef="callDBInfra_ServiceTask"/>

+    <bpmn2:serviceTask id="callDBInfra_ServiceTask" name="Call DB Infra Update">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${UPDNETI_updateDBRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="UPDNETI_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="UPDNETI_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="callDBInfra_ServiceTask" targetRef="postProcessAndCompletionRequest_ScriptTask"/>

+    <bpmn2:callActivity id="callCompleteMsoProcess_CallActivity" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in variables="all"/>

+        <camunda:out variables="all"/>

+        <camunda:in source="UPDNETI_CompleteMsoProcessRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="CMSO_ResponseCode"/>

+        <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>

+        <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="callCompleteMsoProcess_CallActivity" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:subProcess id="unexpectedErrors_SubProcess" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_1" name="Log / Print Unexpected Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.processJavaException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_1" targetRef="EndEvent_1"/>

+      <bpmn2:startEvent id="StartEvent_1">

+        <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_2" errorRef="Error_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="sendSyncAckResponse_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryCloudRegion_ScriptTask" name="Call REST Query Cloud Region " scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTQueryAAICloudRegion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="callRESTQueryCloudRegion_ScriptTask" targetRef="prepareSDNCTopoRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryNetworkId_ScriptTask" name="Call REST Query Network Id In AAI" scriptFormat="groovy">

+      <bpmn2:incoming>siFoundYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTQueryAAINetworkId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="callRESTQueryNetworkId_ScriptTask" targetRef="callRESTQueryCloudRegion_ScriptTask"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_97" errorRef="Error_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="workflowExceptionSINotFound" name="Create Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>siFoundNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 404, "Service Instance Not Found")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="" sourceRef="workflowExceptionSINotFound" targetRef="EndEvent_2"/>

+    <bpmn2:exclusiveGateway id="siFoundCheck" name="is SI Found?" default="siFoundNo">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>siFoundYes</bpmn2:outgoing>

+      <bpmn2:outgoing>siFoundNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="siFoundYes" name="Yes" sourceRef="siFoundCheck" targetRef="callRESTQueryNetworkId_ScriptTask">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGSI_FoundIndicator" ) == true && execution.getVariable("GENGSI_SuccessIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="siFoundNo" name="No" sourceRef="siFoundCheck" targetRef="workflowExceptionSINotFound"/>

+    <bpmn2:callActivity id="callGetServiceInstance" name="Get&#xD;&#xA;Service&#xD;&#xA;Instance" calledElement="GenericGetService">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDNETI_serviceInstanceId" target="GENGS_serviceInstanceId"/>

+        <camunda:out source="GENGS_serviceInstance" target="UPDNETI_serviceInstanceId"/>

+        <camunda:out source="GENGS_FoundIndicator" target="GENGSI_FoundIndicator"/>

+        <camunda:out source="GENGS_SuccessIndicator" target="GENGSI_SuccessIndicator"/>

+        <camunda:out source="GENGS_siResourceLink" target="GENGSI_siResourceLink"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="GENGS_type" target="GENGS_type"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="callGetServiceInstance" targetRef="siFoundCheck"/>

+    <bpmn2:scriptTask id="sendSyncAckResponse_ScriptTask" name="Send Sync Ack Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new  UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.sendSyncResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="sendSyncAckResponse_ScriptTask" targetRef="callGetServiceInstance"/>

+    <bpmn2:scriptTask id="validateUpdatePONetwork_ScriptTask" name="Validate Update PO Network" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_59</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.validateUpdateNetworkResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="validateUpdatePONetwork_ScriptTask" targetRef="callRESTReQuery2NetworkID_ScriptTask"/>

+    <bpmn2:serviceTask id="callUpdateNetwork_ServiceTask" name="Call Update Network">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="payload">${UPDNETI_updateNetworkRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="url">${URN_mso_adapters_network_rest_endpoint}/${UPDNETI_networkId}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Authorization">#{BasicAuthHeaderValuePO}</camunda:entry>

+                <camunda:entry key="content-type">application/xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">PUT</camunda:inputParameter>

+            <camunda:outputParameter name="UPDNETI_networkReturnCode">${statusCode}</camunda:outputParameter>

+            <camunda:outputParameter name="UPDNETI_updateNetworkResponse">${response}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_61</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_59</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_59" name="" sourceRef="callUpdateNetwork_ServiceTask" targetRef="validateUpdatePONetwork_ScriptTask"/>

+    <bpmn2:scriptTask id="prepareNetworkRequest_ScriptTask" name="Prepare Create Network Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_61</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.prepareUpdateNetworkRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_61" name="" sourceRef="prepareNetworkRequest_ScriptTask" targetRef="callUpdateNetwork_ServiceTask"/>

+    <bpmn2:scriptTask id="callRESTQueryNetworkTableRef_ScriptTask" name="Call REST Query Network TableRef in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTQueryAAINetworkTableRef(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="callRESTQueryNetworkTableRef_ScriptTask" targetRef="prepareNetworkRequest_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTReQuery1NetworkID_ScriptTask" name="Call REST ReQuery1 Network Id in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>sdncTopoYes_SequenceFlow</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()

+UpdateNetworkInstanceInfra.callRESTReQueryAAINetworkId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="callRESTReQuery1NetworkID_ScriptTask" targetRef="callRESTQueryVpnBinding_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryVpnBinding_ScriptTask" name="Call REST Query Vpn Binding in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTQueryAAINetworkVpnBinding(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="callRESTQueryVpnBinding_ScriptTask" targetRef="callRESTQueryNetworkPolicy_ScriptTask"/>

+    <bpmn2:scriptTask id="callRESTQueryNetworkPolicy_ScriptTask" name="Call REST Query Network Policy in AAI" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def UpdateNetworkInstanceInfra = new UpdateNetworkInstanceInfra()
+UpdateNetworkInstanceInfra.callRESTQueryAAINetworkPolicy(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="callRESTQueryNetworkPolicy_ScriptTask" targetRef="callRESTQueryNetworkTableRef_ScriptTask"/>

+    <bpmn2:association id="Association_1" sourceRef="sndcCompensation_BoundaryEvent" targetRef="callRollbackSDNCAdapter_CallActivity"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="java.lang.Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateNetworkInstanceInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="updateNetwork_startEvent">

+        <dc:Bounds height="36.0" width="36.0" x="192.0" y="185.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="193.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="350.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="249.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_63" bpmnElement="validateUpdatePONetwork_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="1311.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_3" bpmnElement="faultHandler_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_83" bpmnElement="callUpdateNetwork_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="1342.0" y="1176.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_67" bpmnElement="prepareSDNCTopoRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="276.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_4" bpmnElement="callCompleteMsoProcess_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="137.0" y="1395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_16" bpmnElement="subProcessException_SubProcess" isExpanded="true">

+        <dc:Bounds height="567.0" width="1122.0" x="17.0" y="585.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="subProcessStart_StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="48.0" y="1040.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="67.0" x="33.0" y="1081.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="prepareFalloutHandler_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="756.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_67" bpmnElement="isSdncTopoOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1523.0" y="520.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="125.0" x="1487.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="sdncTopoNo_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_EndEvent_124">

+        <di:waypoint xsi:type="dc:Point" x="1573.0" y="545.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1682.0" y="546.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1577.0" y="546.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="sdncTopoYes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_67" targetElement="_BPMNShape_ScriptTask_336">

+        <di:waypoint xsi:type="dc:Point" x="1523.0" y="545.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="545.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="576.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1500.0" y="545.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_80" bpmnElement="postProcessAndCompletionRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="347.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="prepareDBInfraRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="792.0" y="1390.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="callDBInfra_ServiceTask">

+        <dc:Bounds height="80.0" width="100.0" x="564.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_124" bpmnElement="sndcError_EndEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1682.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="74.0" x="1663.0" y="569.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_19" bpmnElement="callAssignSDNCAdapter_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_29" bpmnElement="sndcCompensation_BoundaryEvent">

+        <dc:Bounds height="36.0" width="36.0" x="1323.0" y="434.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1280.0" y="474.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_67" targetElement="_BPMNShape_CallActivity_19">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="356.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="374.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="374.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="395.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1389.0" y="374.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_CallActivity_19" targetElement="_BPMNShape_ScriptTask_131">

+        <di:waypoint xsi:type="dc:Point" x="1441.0" y="435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1499.0" y="435.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1473.0" y="435.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_1" bpmnElement="Association_1" sourceElement="_BPMNShape_BoundaryEvent_29" targetElement="_BPMNShape_CallActivity_21">

+        <di:waypoint xsi:type="dc:Point" x="1323.0" y="447.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1290.0" y="438.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_61" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="450.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="516.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="481.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="sendSyncAckResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="516.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ExclusiveGateway_90">

+        <di:waypoint xsi:type="dc:Point" x="84.0" y="1058.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="1058.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="161.0" y="1057.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="96.0" y="1058.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_24" bpmnElement="sdncTopoRollback_IntermediateThrowEvent">

+        <dc:Bounds height="36.0" width="36.0" x="470.0" y="867.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="96.0" x="440.0" y="906.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_CallActivity_3">

+        <di:waypoint xsi:type="dc:Point" x="856.0" y="846.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="881.0" y="846.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_131" bpmnElement="validateSDNCResponse_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1499.0" y="395.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_131" targetElement="_BPMNShape_ExclusiveGateway_67">

+        <di:waypoint xsi:type="dc:Point" x="1549.0" y="475.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1549.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1548.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1548.0" y="520.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1545.0" y="503.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_80">

+        <di:waypoint xsi:type="dc:Point" x="564.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="506.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="506.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="447.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="528.0" y="1432.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_80" targetElement="_BPMNShape_CallActivity_4">

+        <di:waypoint xsi:type="dc:Point" x="347.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="1435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="237.0" y="1435.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="290.0" y="1512.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_21" bpmnElement="callRollbackSDNCAdapter_CallActivity">

+        <dc:Bounds height="80.0" width="100.0" x="1190.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="callRESTQueryNetworkId_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="100.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_134" bpmnElement="callRESTReQuery2NetworkID_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1176.0" y="1390.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_135" bpmnElement="callRESTUpdateContrailNetwork_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="1392.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_134" targetElement="_BPMNShape_ScriptTask_135">

+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1084.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1143.0" y="1657.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_58" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="792.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="664.0" y="1432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="773.0" y="1430.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_65" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_ScriptTask_135" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="1432.0"/>

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="892.0" y="1430.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="947.0" y="1432.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_156" bpmnElement="callRESTQueryVpnBinding_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="688.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_156" targetElement="_BPMNShape_ScriptTask_215">

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="768.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="810.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1388.0" y="781.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_87" bpmnElement="SequenceFlow_59" sourceElement="_BPMNShape_ServiceTask_83" targetElement="_BPMNShape_ScriptTask_63">

+        <di:waypoint xsi:type="dc:Point" x="1392.0" y="1256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1311.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1390.0" y="1284.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_157" bpmnElement="prepareNetworkRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1342.0" y="1052.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_89" bpmnElement="SequenceFlow_61" sourceElement="_BPMNShape_ScriptTask_157" targetElement="_BPMNShape_ServiceTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1392.0" y="1132.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1392.0" y="1176.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1389.0" y="1159.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_90" bpmnElement="isRollbackOn_Network_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="1032.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="138.0" y="1092.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="isRollbackOn_YesNetwork_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_ExclusiveGateway_215">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="1032.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="1004.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="186.0" y="1020.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="isRollbackOn_NoNetwork_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="1057.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="1004.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="211.0" y="1062.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_215" bpmnElement="callRESTQueryNetworkPolicy_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="810.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_60" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_215" targetElement="_BPMNShape_ScriptTask_335">

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="890.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="926.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1388.0" y="900.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_24" bpmnElement="InclusiveGateway_6">

+        <dc:Bounds height="50.0" width="50.0" x="336.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="361.0" y="1009.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_215" bpmnElement="isPONR_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="60.0" x="88.0" y="969.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_77" bpmnElement="isPONR_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="979.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="204.0" y="983.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_85" bpmnElement="isPONR_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_ExclusiveGateway_216">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="954.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="884.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="191.0" y="933.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_216" bpmnElement="isNetworkOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="161.0" y="834.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="95.0" x="68.0" y="849.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_86" bpmnElement="isNetworkOk_No_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_216" targetElement="_BPMNShape_ExclusiveGateway_217">

+        <di:waypoint xsi:type="dc:Point" x="211.0" y="859.0"/>

+        <di:waypoint xsi:type="dc:Point" x="273.0" y="859.0"/>

+        <di:waypoint xsi:type="dc:Point" x="273.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="211.0" y="863.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_90" bpmnElement="isNetworkOk_Yes_SequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_216" targetElement="_BPMNShape_ExclusiveGateway_217">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="834.0"/>

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="273.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="192.0" y="814.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_217" bpmnElement="sdncOk_ExclusiveGateway" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="336.0" y="756.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="78.0" x="323.0" y="722.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_92" bpmnElement="sdncOk_Yeso_ExclusiveGateway" sourceElement="_BPMNShape_ExclusiveGateway_217" targetElement="_BPMNShape_ScriptTask_261">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="781.0"/>

+        <di:waypoint xsi:type="dc:Point" x="438.0" y="781.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="386.0" y="779.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_93" bpmnElement="sdncOk_No_ExclusiveGateway" sourceElement="_BPMNShape_ExclusiveGateway_217" targetElement="_BPMNShape_ScriptTask_262">

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="806.0"/>

+        <di:waypoint xsi:type="dc:Point" x="362.0" y="845.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="366.0" y="806.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="169.0" y="1536.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="187.0" y="1577.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_CallActivity_4" targetElement="_BPMNShape_EndEvent_177">

+        <di:waypoint xsi:type="dc:Point" x="187.0" y="1475.0"/>

+        <di:waypoint xsi:type="dc:Point" x="187.0" y="1536.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="184.0" y="1475.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1028.0" y="924.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1046.0" y="965.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_CallActivity_3" targetElement="_BPMNShape_EndEvent_178">

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="886.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="924.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1043.0" y="888.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ServiceTask_97" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="676.0" y="846.0"/>

+        <di:waypoint xsi:type="dc:Point" x="756.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="686.0" y="846.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_97" bpmnElement="callDBInfraErrorUpdate_ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="806.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_218" bpmnElement="prepareDBInfraErrorRequest_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="940.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_218" targetElement="_BPMNShape_ServiceTask_97">

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="940.0"/>

+        <di:waypoint xsi:type="dc:Point" x="626.0" y="886.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="623.0" y="927.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_245" bpmnElement="callRESTQueryCloudRegion_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1200.0" y="100.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_53" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ScriptTask_245" targetElement="_BPMNShape_ScriptTask_67">

+        <di:waypoint xsi:type="dc:Point" x="1300.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="276.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1314.0" y="140.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_38" bpmnElement="BoundaryEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1581.0" y="377.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_69" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_BoundaryEvent_38" targetElement="_BPMNShape_EndEvent_124">

+        <di:waypoint xsi:type="dc:Point" x="1617.0" y="395.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1700.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1700.0" y="528.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1697.0" y="467.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_261" bpmnElement="prepareSDNCRollbackRequest_ScriptTask">

+        <dc:Bounds height="79.0" width="100.0" x="438.0" y="742.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_262" bpmnElement="validateRollbacksResponse_ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="312.0" y="845.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_76" bpmnElement="SequenceFlow_47" sourceElement="_BPMNShape_InclusiveGateway_24" targetElement="_BPMNShape_ScriptTask_218">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="548.0" y="979.0"/>

+        <di:waypoint xsi:type="dc:Point" x="548.0" y="980.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="980.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="393.0" y="979.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_84" bpmnElement="SequenceFlow_53" sourceElement="_BPMNShape_ScriptTask_261" targetElement="_BPMNShape_IntermediateThrowEvent_24">

+        <di:waypoint xsi:type="dc:Point" x="488.0" y="820.0"/>

+        <di:waypoint xsi:type="dc:Point" x="488.0" y="867.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="485.0" y="847.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_88" bpmnElement="SequenceFlow_55" sourceElement="_BPMNShape_IntermediateThrowEvent_24" targetElement="_BPMNShape_ScriptTask_262">

+        <di:waypoint xsi:type="dc:Point" x="470.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="441.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="441.0" y="885.0"/>

+        <di:waypoint xsi:type="dc:Point" x="412.0" y="885.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="448.0" y="885.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_262" targetElement="_BPMNShape_InclusiveGateway_24">

+        <di:waypoint xsi:type="dc:Point" x="362.0" y="925.0"/>

+        <di:waypoint xsi:type="dc:Point" x="361.0" y="954.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="358.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_63" targetElement="_BPMNShape_ScriptTask_134">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1391.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1310.0" y="1430.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1276.0" y="1430.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1390.0" y="1425.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_28" bpmnElement="unexpectedErrors_SubProcess" isExpanded="true">

+        <dc:Bounds height="188.0" width="394.0" x="21.0" y="381.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_71" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="54.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="72.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_270" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="169.0" y="436.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_220" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="330.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="348.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_StartEvent_71" targetElement="_BPMNShape_ScriptTask_270">

+        <di:waypoint xsi:type="dc:Point" x="90.0" y="476.0"/>

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="476.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="129.0" y="476.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_270" targetElement="_BPMNShape_EndEvent_220">

+        <di:waypoint xsi:type="dc:Point" x="269.0" y="476.0"/>

+        <di:waypoint xsi:type="dc:Point" x="330.0" y="476.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="301.0" y="476.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_72" bpmnElement="callGetServiceInstance">

+        <dc:Bounds height="80.0" width="100.0" x="686.0" y="163.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_244" bpmnElement="siFoundCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="836.0" y="177.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="79.0" x="891.0" y="195.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_CallActivity_72" targetElement="_BPMNShape_ExclusiveGateway_244">

+        <di:waypoint xsi:type="dc:Point" x="786.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="805.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="805.0" y="202.0"/>

+        <di:waypoint xsi:type="dc:Point" x="836.0" y="202.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="799.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="siFoundYes" sourceElement="_BPMNShape_ExclusiveGateway_244" targetElement="_BPMNShape_ScriptTask_133">

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="177.0"/>

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="910.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="868.0" y="157.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_247" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1155.0" y="278.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1173.0" y="319.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_331" bpmnElement="workflowExceptionSINotFound">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="256.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="siFoundNo" sourceElement="_BPMNShape_ExclusiveGateway_244" targetElement="_BPMNShape_ScriptTask_331">

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="296.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="296.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="871.0" y="233.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ScriptTask_331" targetElement="_BPMNShape_EndEvent_247">

+        <di:waypoint xsi:type="dc:Point" x="1084.0" y="296.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1155.0" y="296.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1103.0" y="296.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_ScriptTask_245">

+        <di:waypoint xsi:type="dc:Point" x="1084.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1200.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1127.0" y="140.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_CallActivity_72">

+        <di:waypoint xsi:type="dc:Point" x="616.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="686.0" y="203.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="632.0" y="203.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_335" bpmnElement="callRESTQueryNetworkTableRef_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1341.0" y="926.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_335" targetElement="_BPMNShape_ScriptTask_157">

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="1006.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1392.0" y="1052.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1388.0" y="1028.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_336" bpmnElement="callRESTReQuery1NetworkID_ScriptTask">

+        <dc:Bounds height="80.0" width="100.0" x="1343.0" y="576.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_336" targetElement="_BPMNShape_ScriptTask_156">

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="656.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1393.0" y="672.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="672.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1391.0" y="688.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1390.0" y="666.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleInfra.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleInfra.bpmn
new file mode 100644
index 0000000..fdd2b65
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleInfra.bpmn
@@ -0,0 +1,275 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_F0omAMXGEeW834CKd-K10Q" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="UpdateVfModuleInfra" name="UpdateVfModuleInfra" isExecutable="true">

+    <bpmn2:scriptTask id="ScriptTask_1" name="Send Synch Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvfm = new UpdateVfModuleInfra()
+uvfm.sendSynchResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ScriptTask_1" targetRef="ScriptTask_7"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvfm = new UpdateVfModuleInfra()
+uvfm.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_2" targetRef="ScriptTask_1"/>

+    <bpmn2:scriptTask id="ScriptTask_7" name="DoUpdateVfModule (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvfm = new UpdateVfModuleInfra()
+uvfm.prepDoUpdateVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="ScriptTask_6" name="DoUpdateVfModule" calledElement="DoUpdateVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDVfModI_Request" target="DoUpdateVfModuleRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_7" targetRef="ScriptTask_6"/>

+    <bpmn2:callActivity id="CallActivity_1" name="Completion Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDVfModI_CompletionHandlerRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="CallActivity_1" targetRef="ScriptTask_4"/>

+    <bpmn2:endEvent id="EndEvent_1" name="TheEnd">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_5"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_4" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[// The following variable is checked by the unit test
+execution.setVariable("UpdateVfModuleInfraSuccessIndicator", true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_4" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="ScriptTask_10" name="Completion Handler (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvfm = new UpdateVfModuleInfra()
+uvfm.completionHandlerPrep(execution, 'UPDVfModI_CompletionHandlerRequest')
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_10" targetRef="CallActivity_1"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Error Handler" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_3" name="Catch All Errors">

+        <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_3" targetRef="ScriptTask_3"/>

+      <bpmn2:scriptTask id="ScriptTask_3" name="Fallout Handler (prep)" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvfm = new UpdateVfModuleInfra()
+uvfm.falloutHandlerPrep(execution, 'UPDVfModI_FalloutHandlerRequest')
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_7" sourceRef="ScriptTask_3" targetRef="CallActivity_2"/>

+      <bpmn2:callActivity id="CallActivity_2" name="Fallout Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="UPDVfModI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="CallActivity_2" targetRef="EndEvent_2"/>

+    </bpmn2:subProcess>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="TerminateEventDefinition_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="SubProcess_1">

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_3"/>

+    <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true" name="Start">

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_6" targetRef="ScriptTask_10"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateVfModuleInfra">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="149.0" y="72.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="150.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_125" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="605.0" y="370.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="598.0" y="411.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">

+        <di:waypoint xsi:type="dc:Point" x="185.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="90.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="235.0" y="90.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="50.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ScriptTask_125">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="449.0" y="90.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="433.0" y="90.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_125" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="449.0" y="50.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_125" targetElement="_BPMNShape_ScriptTask_130">

+        <di:waypoint xsi:type="dc:Point" x="498.0" y="130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="498.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="199.0" y="190.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="717.0" y="169.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="449.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_EndEvent_125">

+        <di:waypoint xsi:type="dc:Point" x="549.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="605.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="723.0" y="186.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_130" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="80.0" width="100.0" x="149.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="ScriptTask_10">

+        <dc:Bounds height="80.0" width="100.0" x="149.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_27" bpmnElement="CallActivity_1">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_CallActivity_27">

+        <di:waypoint xsi:type="dc:Point" x="249.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="271.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_17" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="241.0" width="565.0" x="65.0" y="536.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_52" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="129.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="98.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_136" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="209.0" y="608.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_52" targetElement="_BPMNShape_ScriptTask_136">

+        <di:waypoint xsi:type="dc:Point" x="165.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="209.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="209.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_136" targetElement="_BPMNShape_CallActivity_28">

+        <di:waypoint xsi:type="dc:Point" x="309.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="377.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="325.0" y="648.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_126" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="533.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="551.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_43" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="612.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="627.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_127" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="704.0" y="630.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="722.0" y="671.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_BoundaryEvent_43" targetElement="_BPMNShape_EndEvent_127">

+        <di:waypoint xsi:type="dc:Point" x="648.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="704.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="693.0" y="948.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_28" bpmnElement="CallActivity_2">

+        <dc:Bounds height="80.0" width="100.0" x="377.0" y="608.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_CallActivity_27" targetElement="_BPMNShape_ScriptTask_127">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="449.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="439.0" y="356.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_28" targetElement="_BPMNShape_EndEvent_126">

+        <di:waypoint xsi:type="dc:Point" x="477.0" y="648.0"/>

+        <di:waypoint xsi:type="dc:Point" x="533.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="373.0" y="456.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_181" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="299.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_130" targetElement="_BPMNShape_ScriptTask_181">

+        <di:waypoint xsi:type="dc:Point" x="249.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="299.0" y="230.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_181" targetElement="_BPMNShape_ScriptTask_133">

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="233.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="294.0"/>

+        <di:waypoint xsi:type="dc:Point" x="99.0" y="294.0"/>

+        <di:waypoint xsi:type="dc:Point" x="99.0" y="388.0"/>

+        <di:waypoint xsi:type="dc:Point" x="149.0" y="388.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="500.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleVolumeInfraV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleVolumeInfraV1.bpmn
new file mode 100644
index 0000000..b98a4de
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/process/Infrastructure/UpdateVfModuleVolumeInfraV1.bpmn
@@ -0,0 +1,516 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_ZBLUcCkQEeaY6ZhIaNLwzg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="UpdateVfModuleVolumeInfraV1" name="UpdateVfModuleVolumeInfraV1" isExecutable="true">

+    <bpmn2:endEvent id="EndEvent_4" name="TheEnd">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="CallActivity_completionHandler" name="Completion Handler" calledElement="CompleteMsoProcess">

+      <bpmn2:extensionElements>

+        <camunda:in source="UPDVfModVol_CompletionHandlerRequest" target="CompleteMsoProcessRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="CMSO_ResponseCode" target="UPDVfModVol_CMSO_ResponseCode"/>

+        <camunda:out source="CMSO_ErrorResponse" target="UPDVfModVol_CMSO_ErrorResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="CallActivity_completionHandler" targetRef="ScriptTask_postProcessTemp"/>

+    <bpmn2:serviceTask id="ServiceTask_callUpdateInfraDb" name="Call Update Infra DB">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">${UPDVfModVol_updateInfraRequest}</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">aapplication/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="UPDVfModVol_createDBResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="UPDVfModVol_dbReturnCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ServiceTask_callUpdateInfraDb" targetRef="ScriptTask_prepCompletionHandlerRequest"/>

+    <bpmn2:scriptTask id="ScriptTask_prepVnfRest" name="Prepare VNF Adapter Rest Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('prepVnfAdapterRest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ScriptTask_prepVnfRest" targetRef="CallActivity_callVNFAdapterRest"/>

+    <bpmn2:scriptTask id="ScriptTask_prepCompletionHandlerRequest" name="Prep Completion Handler Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('prepCompletionHandlerRequest', execution, UPDVfModVol_requestId, 'UPDATE', UPDVfModVol_source, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ScriptTask_prepCompletionHandlerRequest" targetRef="CallActivity_completionHandler"/>

+    <bpmn2:callActivity id="CallActivity_callVNFAdapterRest" name="VNFAdapterRest" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="UPDVfModVol_vnfAdapterRestResponse"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="UPDVfModVol_vnfAdapterRestRequest" target="vnfAdapterRestV1Request"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="CallActivity_callVNFAdapterRest" targetRef="ScriptTask_prepDbInfraRequest"/>

+    <bpmn2:scriptTask id="ScriptTask_prepDbInfraRequest" name="Prep DB Infra Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('prepDbInfraDbRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="ScriptTask_prepDbInfraRequest" targetRef="ServiceTask_callUpdateInfraDb"/>

+    <bpmn2:scriptTask id="ScriptTask_postProcessTemp" name="Set Success" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[// The following variable is checked by the unit test
+execution.setVariable("UpdateVfModuleVolumeSuccessIndicator", true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="ScriptTask_postProcessTemp" targetRef="EndEvent_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>SequenceFlow_noVfModuleRelation</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_personaModelIdMatchYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:subProcess id="SubProcess_errorHandler" name="Error Handler" triggeredByEvent="true">

+      <bpmn2:startEvent id="StartEvent_catchAllErrors" name="Catch All Errors">

+        <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_77"/>

+      </bpmn2:startEvent>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_11"/>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="StartEvent_catchAllErrors" targetRef="ScriptTask_preFalloutHandler"/>

+      <bpmn2:scriptTask id="ScriptTask_preFalloutHandler" name="Fallout Handler (prep)" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('prepFalloutHandler', execution, isDebugLogEnabled)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ScriptTask_preFalloutHandler" targetRef="CallActivity_falloutHandler"/>

+      <bpmn2:callActivity id="CallActivity_falloutHandler" name="Fallout Handler" calledElement="FalloutHandler">

+        <bpmn2:extensionElements>

+          <camunda:in source="UPDVfModVol_FalloutHandlerRequest" target="FalloutHandlerRequest"/>

+          <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+          <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+          <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+          <camunda:out source="FH_ResponseCode" target="UPDVfModVol_FH_ResponseCode"/>

+          <camunda:out source="FH_ErrorResponse" target="UPDVfModVol_FH_ErrorResponse"/>

+          <camunda:out source="FalloutHandlerResponse" target="UPDVfModVol_FalloutHandlerResponse"/>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      </bpmn2:callActivity>

+      <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="CallActivity_falloutHandler" targetRef="EndEvent_3"/>

+    </bpmn2:subProcess>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_prepVnfRest"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_personaModelIdMatch" name="Persona Model ID match?">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_personaModelIdMatchYes</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_personaModelidMatchNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_personaModelIdMatchYes" name="Yes" sourceRef="ExclusiveGateway_personaModelIdMatch" targetRef="ExclusiveGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{UPDVfModVol_modelInvariantId == UPDVfModVol_personaModelId}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_personaModelidMatchNo" name="No" sourceRef="ExclusiveGateway_personaModelIdMatch" targetRef="ScriptTask_handlePersonaModelIdMismatch"/>

+    <bpmn2:scriptTask id="ScriptTask_queryAaiForVfModule" name="Query AAI for VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_YesVfModuleRelation</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('queryAAIForVfModule', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ScriptTask_queryAaiForVfModule" targetRef="ExclusiveGateway_personaModelIdMatch"/>

+    <bpmn2:scriptTask id="ScriptTask_handlePersonaModelIdMismatch" name="Handle Persona Model ID Mismatch" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_personaModelidMatchNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('handlePersonaModelIdMismatch', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="ScriptTask_handlePersonaModelIdMismatch" targetRef="EndEvent_personaModelIdMismatch"/>

+    <bpmn2:endEvent id="EndEvent_personaModelIdMismatch">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_preProcessRequest" name="Pre-process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('preProcessRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ScriptTask_preProcessRequest" targetRef="ScriptTask_sendSynchResponse"/>

+    <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true" name="Start">

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_preProcessRequest"/>

+    <bpmn2:scriptTask id="ScriptTask_sendSynchResponse" name="Send Synch Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('sendSynchResponse', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="ScriptTask_sendSynchResponse" targetRef="ScriptTask_queryAaiGenricVnf"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="VF-MODULE relation?" default="SequenceFlow_noVfModuleRelation">

+      <bpmn2:incoming>SequenceFlow_tenantIsMatch</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_YesVfModuleRelation</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_noVfModuleRelation</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_YesVfModuleRelation" name="Yes" sourceRef="ExclusiveGateway_1" targetRef="ScriptTask_queryAaiForVfModule">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{UPDVfModVol_relatedVfModuleLink != ''}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_noVfModuleRelation" name="No" sourceRef="ExclusiveGateway_1" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_isTenantMatch" name="TenantId Match?" default="SequenceFlow_NoTenantMatch">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_NoTenantMatch</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_tenantIsMatch</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_NoTenantMatch" name="No" sourceRef="ExclusiveGateway_isTenantMatch" targetRef="ScriptTask_tenantIdMismatch"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_tenantIsMatch" name="Yes" sourceRef="ExclusiveGateway_isTenantMatch" targetRef="ExclusiveGateway_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{UPDVfModVol_tenantId == UPDVfModVol_volumeGroupTenantId}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_tenantIdMismatch" name="Handle TenantId Mismatch" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_NoTenantMatch</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('handleTenantIdMismatch', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_tenantIdMismatch" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_76" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_queryAAI" name="Query AAI for Volume Group Info" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvmv = new UpdateVfModuleVolumeInfraV1()
+uvmv.executeMethod('queryAAIForVolumeGroup', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ScriptTask_queryAAI" targetRef="ExclusiveGateway_isTenantMatch"/>

+    <bpmn2:scriptTask id="ScriptTask_queryAaiGenricVnf" name="Query AAI for Generic VNF" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def uvmv = new UpdateVfModuleVolumeInfraV1()

+uvmv.executeMethod('queryAAIForGenericVnf', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_queryAaiGenricVnf" targetRef="ScriptTask_queryAAI"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateVfModuleVolumeInfraV1">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_62" bpmnElement="StartEvent_1">

+        <dc:Bounds height="37.0" width="37.0" x="191.0" y="131.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="192.0" y="173.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_StartEvent_62" targetElement="_BPMNShape_ScriptTask_231">

+        <di:waypoint xsi:type="dc:Point" x="227.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="268.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="268.0" y="150.0"/>

+        <di:waypoint xsi:type="dc:Point" x="295.0" y="150.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="248.0" y="149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_42" bpmnElement="CallActivity_callVNFAdapterRest">

+        <dc:Bounds height="80.0" width="100.0" x="591.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_230" bpmnElement="ScriptTask_postProcessTemp">

+        <dc:Bounds height="80.0" width="109.0" x="1318.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_231" bpmnElement="ScriptTask_preProcessRequest">

+        <dc:Bounds height="78.0" width="109.0" x="295.0" y="111.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_232" bpmnElement="ScriptTask_sendSynchResponse">

+        <dc:Bounds height="76.0" width="109.0" x="454.0" y="112.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_231" targetElement="_BPMNShape_ScriptTask_232">

+        <di:waypoint xsi:type="dc:Point" x="403.0" y="150.0"/>

+        <di:waypoint xsi:type="dc:Point" x="454.0" y="150.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="418.0" y="150.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_233" bpmnElement="ScriptTask_prepDbInfraRequest">

+        <dc:Bounds height="80.0" width="109.0" x="730.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_101" bpmnElement="ServiceTask_callUpdateInfraDb">

+        <dc:Bounds height="80.0" width="109.0" x="868.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_233" targetElement="_BPMNShape_ServiceTask_101">

+        <di:waypoint xsi:type="dc:Point" x="838.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="868.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="853.0" y="491.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ServiceTask_101" targetElement="_BPMNShape_ScriptTask_234">

+        <di:waypoint xsi:type="dc:Point" x="976.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1014.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="959.0" y="497.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_234" bpmnElement="ScriptTask_prepCompletionHandlerRequest">

+        <dc:Bounds height="80.0" width="109.0" x="1014.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_43" bpmnElement="CallActivity_completionHandler">

+        <dc:Bounds height="61.0" width="109.0" x="1162.0" y="429.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_234" targetElement="_BPMNShape_CallActivity_43">

+        <di:waypoint xsi:type="dc:Point" x="1122.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1162.0" y="459.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1134.0" y="477.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_CallActivity_43" targetElement="_BPMNShape_ScriptTask_230">

+        <di:waypoint xsi:type="dc:Point" x="1270.0" y="459.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1318.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1216.0" y="521.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_235" bpmnElement="ScriptTask_queryAAI">

+        <dc:Bounds height="73.0" width="109.0" x="742.0" y="113.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_126" bpmnElement="ExclusiveGateway_isTenantMatch" isMarkerVisible="true">

+        <dc:Bounds height="34.0" width="34.0" x="931.0" y="132.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="102.0" x="898.0" y="113.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_236" bpmnElement="ScriptTask_tenantIdMismatch">

+        <dc:Bounds height="75.0" width="97.0" x="1064.0" y="112.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_235" targetElement="_BPMNShape_ExclusiveGateway_126">

+        <di:waypoint xsi:type="dc:Point" x="850.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="931.0" y="149.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="877.0" y="149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_NoTenantMatch" sourceElement="_BPMNShape_ExclusiveGateway_126" targetElement="_BPMNShape_ScriptTask_236">

+        <di:waypoint xsi:type="dc:Point" x="965.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1064.0" y="149.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="986.0" y="149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_169" bpmnElement="EndEvent_2">

+        <dc:Bounds height="49.0" width="49.0" x="1225.0" y="125.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1249.0" y="179.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_236" targetElement="_BPMNShape_EndEvent_169">

+        <di:waypoint xsi:type="dc:Point" x="1160.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1225.0" y="149.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1179.0" y="149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_tenantIsMatch" sourceElement="_BPMNShape_ExclusiveGateway_126" targetElement="_BPMNShape_ExclusiveGateway_254">

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="166.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="244.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="915.0" y="173.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_42" targetElement="_BPMNShape_ScriptTask_233">

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="730.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="712.0" y="531.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_232" targetElement="_BPMNShape_ScriptTask_318">

+        <di:waypoint xsi:type="dc:Point" x="562.0" y="150.0"/>

+        <di:waypoint xsi:type="dc:Point" x="581.0" y="150.0"/>

+        <di:waypoint xsi:type="dc:Point" x="581.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="149.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="578.0" y="150.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_237" bpmnElement="ScriptTask_prepVnfRest">

+        <dc:Bounds height="80.0" width="109.0" x="454.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ScriptTask_237" targetElement="_BPMNShape_CallActivity_42">

+        <di:waypoint xsi:type="dc:Point" x="562.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="591.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="446.0" y="460.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_18" bpmnElement="SubProcess_errorHandler" isExpanded="true">

+        <dc:Bounds height="187.0" width="781.0" x="250.0" y="786.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_63" bpmnElement="StartEvent_catchAllErrors">

+        <dc:Bounds height="37.0" width="37.0" x="301.0" y="844.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="98.0" x="270.0" y="886.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_238" bpmnElement="ScriptTask_preFalloutHandler">

+        <dc:Bounds height="61.0" width="109.0" x="445.0" y="832.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_44" bpmnElement="CallActivity_falloutHandler">

+        <dc:Bounds height="61.0" width="109.0" x="639.0" y="832.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_238" targetElement="_BPMNShape_CallActivity_44">

+        <di:waypoint xsi:type="dc:Point" x="553.0" y="862.0"/>

+        <di:waypoint xsi:type="dc:Point" x="639.0" y="862.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="573.0" y="946.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_170" bpmnElement="EndEvent_3">

+        <dc:Bounds height="37.0" width="37.0" x="862.0" y="844.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="880.0" y="886.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_CallActivity_44" targetElement="_BPMNShape_EndEvent_170">

+        <di:waypoint xsi:type="dc:Point" x="747.0" y="862.0"/>

+        <di:waypoint xsi:type="dc:Point" x="862.0" y="862.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="765.0" y="1030.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_171" bpmnElement="EndEvent_4">

+        <dc:Bounds height="43.0" width="43.0" x="1461.0" y="438.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="1457.0" y="486.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_ScriptTask_230" targetElement="_BPMNShape_EndEvent_171">

+        <di:waypoint xsi:type="dc:Point" x="1426.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1461.0" y="459.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1442.0" y="467.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_StartEvent_63" targetElement="_BPMNShape_ScriptTask_238">

+        <di:waypoint xsi:type="dc:Point" x="337.0" y="862.0"/>

+        <di:waypoint xsi:type="dc:Point" x="445.0" y="862.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="385.0" y="1030.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_254" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="34.0" width="34.0" x="931.0" y="244.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="135.0" x="881.0" y="283.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_YesVfModuleRelation" sourceElement="_BPMNShape_ExclusiveGateway_254" targetElement="_BPMNShape_ScriptTask_313">

+        <di:waypoint xsi:type="dc:Point" x="931.0" y="261.0"/>

+        <di:waypoint xsi:type="dc:Point" x="634.0" y="261.0"/>

+        <di:waypoint xsi:type="dc:Point" x="634.0" y="262.0"/>

+        <di:waypoint xsi:type="dc:Point" x="405.0" y="262.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="729.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_313" bpmnElement="ScriptTask_queryAaiForVfModule">

+        <dc:Bounds height="80.0" width="109.0" x="297.0" y="222.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_255" bpmnElement="ExclusiveGateway_personaModelIdMatch" isMarkerVisible="true">

+        <dc:Bounds height="34.0" width="34.0" x="333.0" y="346.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="156.0" x="272.0" y="385.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_313" targetElement="_BPMNShape_ExclusiveGateway_255">

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="329.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="346.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="347.0" y="318.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_personaModelIdMatchYes" sourceElement="_BPMNShape_ExclusiveGateway_255" targetElement="_BPMNShape_ExclusiveGateway_256">

+        <di:waypoint xsi:type="dc:Point" x="367.0" y="363.0"/>

+        <di:waypoint xsi:type="dc:Point" x="491.0" y="363.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="398.0" y="363.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_256" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="34.0" width="34.0" x="491.0" y="346.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="508.0" y="385.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_noVfModuleRelation" sourceElement="_BPMNShape_ExclusiveGateway_254" targetElement="_BPMNShape_ExclusiveGateway_256">

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="278.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="363.0"/>

+        <di:waypoint xsi:type="dc:Point" x="701.0" y="363.0"/>

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="363.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="795.0" y="363.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_personaModelidMatchNo" sourceElement="_BPMNShape_ExclusiveGateway_255" targetElement="_BPMNShape_ScriptTask_315">

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="380.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="401.0"/>

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="350.0" y="409.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_315" bpmnElement="ScriptTask_handlePersonaModelIdMismatch">

+        <dc:Bounds height="80.0" width="109.0" x="297.0" y="460.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_172" bpmnElement="EndEvent_personaModelIdMismatch">

+        <dc:Bounds height="43.0" width="43.0" x="330.0" y="600.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="351.0" y="648.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_315" targetElement="_BPMNShape_EndEvent_172">

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="540.0"/>

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="600.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="348.0" y="560.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_256" targetElement="_BPMNShape_ScriptTask_237">

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="380.0"/>

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="420.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_318" bpmnElement="ScriptTask_queryAaiGenricVnf">

+        <dc:Bounds height="75.0" width="97.0" x="612.0" y="112.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_318" targetElement="_BPMNShape_ScriptTask_235">

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="149.0"/>

+        <di:waypoint xsi:type="dc:Point" x="742.0" y="149.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/CompleteMsoProcess.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/CompleteMsoProcess.bpmn
new file mode 100644
index 0000000..158c4b7
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/CompleteMsoProcess.bpmn
@@ -0,0 +1,1024 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_EsMs0HcuEeW2U_kkOHX1ZQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CompleteMsoProcess" name="CompleteMsoProcess" isExecutable="true">

+    <bpmn2:scriptTask id="preProcessRequest" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def preProcessRequestData = new CompleteMsoProcess()
+preProcessRequestData.preProcessRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="preProcessRequest" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:startEvent id="StartEvent_1" name="Start With Message ">

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:messageEventDefinition id="MessageEventDefinition_1" messageRef="Message_2"/>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="StartEvent_1" targetRef="preProcessRequest"/>

+    <bpmn2:parallelGateway id="ExclusiveGateway_5">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_45</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_45" name="" sourceRef="ExclusiveGateway_5" targetRef="ParallelGateway_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_46" name="" sourceRef="ExclusiveGateway_5" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:exclusiveGateway id="ParallelGateway_3" name="Notification Url Present?" default="SequenceFlow_40">

+      <bpmn2:incoming>SequenceFlow_45</bpmn2:incoming>

+      <bpmn2:outgoing>if_notifcationURLExists</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="if_notifcationURLExists" name="Yes" sourceRef="ParallelGateway_3" targetRef="ExclusiveGateway_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_notification-url-Ok") ==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_40" name="No" sourceRef="ParallelGateway_3" targetRef="ParallelGateway_5"/>

+    <bpmn2:parallelGateway id="ExclusiveGateway_1">

+      <bpmn2:incoming>if_notifcationURLExists</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_87</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_73</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_87" name="" sourceRef="ExclusiveGateway_1" targetRef="UpdateFinalNotifyAckStatus"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_73" name="" sourceRef="ExclusiveGateway_1" targetRef="ExclusiveGateway_11"/>

+    <bpmn2:subProcess id="subProcessExceptionCompleteMSO" name="Sub Process Exception Complete MSO" triggeredByEvent="true">

+      <bpmn2:endEvent id="endEventExceptionCompleteMSO">

+        <bpmn2:extensionElements>

+          <camunda:connector>

+            <camunda:inputOutput>

+              <camunda:outputParameter name="DB_ADAPTER_ERROR">${CMSO_updateRequestResponse}</camunda:outputParameter>

+            </camunda:inputOutput>

+          </camunda:connector>

+        </bpmn2:extensionElements>

+        <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="MessageEventDefinition_3"/>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="startEventExceptionCompleteMSO">

+        <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_4"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="startEventExceptionCompleteMSO" targetRef="endEventExceptionCompleteMSO"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="ScriptTask_6" name="Build Error Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_58</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_59</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
+import com.att.bpm.scripts.*
+def buildDataErrorMessage = new CompleteMsoProcess()
+buildDataErrorMessage.buildDataError(execution, "Complete --updateFinal NotifyAck Status Success-- Failed")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_59" name="" sourceRef="ScriptTask_6" targetRef="EndEvent_10"/>

+    <bpmn2:serviceTask id="updateFinalNotifyAckStatus" name="updateFinal NotifyAck Status">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("CMSO_updateFinalNotifyAckStatusSuccessPayload")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_53</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_53" name="" sourceRef="updateFinalNotifyAckStatus" targetRef="ExclusiveGateway_15"/>

+    <bpmn2:endEvent id="EndEvent_14">

+      <bpmn2:incoming>SequenceFlow_44</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_15" default="SequenceFlow_58">

+      <bpmn2:incoming>SequenceFlow_53</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_54</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_58</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_54" name="" sourceRef="ExclusiveGateway_15" targetRef="ParallelGateway_5">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_58" name="" sourceRef="ExclusiveGateway_15" targetRef="ScriptTask_6"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="updateFinalNotifyAckStatus">

+      <bpmn2:outgoing>SequenceFlow_44</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_85" errorRef="Error_1"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_44" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_14"/>

+    <bpmn2:parallelGateway id="ParallelGateway_9">

+      <bpmn2:incoming>SequenceFlow_63</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_70</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_70" name="" sourceRef="ParallelGateway_9" targetRef="prepareUpdateFinalAckStatus"/>

+    <bpmn2:scriptTask id="prepareUpdateFinalAckStatus" name="Prepare DB Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_70</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def updateFinal= new CompleteMsoProcess()

+updateFinal.updateFinalNotifyAckStatusSuccessPayload(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="prepareUpdateFinalAckStatus" targetRef="updateFinalNotifyAckStatus"/>

+    <bpmn2:endEvent id="EndEvent_10">

+      <bpmn2:incoming>SequenceFlow_59</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_10" errorRef="Error_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_16" default="SequenceFlow_61">

+      <bpmn2:incoming>SequenceFlow_60</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_61</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_63</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_61" name="" sourceRef="ExclusiveGateway_16" targetRef="ScriptTask_7"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_63" name="" sourceRef="ExclusiveGateway_16" targetRef="ParallelGateway_9">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_7" name="Build Error Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_61</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_62</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
+import com.att.bpm.scripts.*
+def buildDataErrorMessage = new CompleteMsoProcess()
+buildDataErrorMessage.buildDataError(execution, "Complete -- Update Final Notify Ack Status -- Failed")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_62" name="" sourceRef="ScriptTask_7" targetRef="EndEvent_11"/>

+    <bpmn2:endEvent id="EndEvent_11">

+      <bpmn2:incoming>SequenceFlow_62</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_11" errorRef="Error_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_17">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_92</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ExclusiveGateway_17" targetRef="ParallelGateway_9"/>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Set Delivery Status Variable" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[if(execution.getVariable("CCDStatusCode")==204){

+	execution.setVariable("CMSO_deliveryStatus", true)

+}

+

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="ScriptTask_1" targetRef="ExclusiveGateway_17"/>

+    <bpmn2:serviceTask id="ServiceTask_1" name="Notify CCD Success">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url"><![CDATA[${execution.getVariable("CMSO_notification-url")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Content-Type">text/xml</camunda:entry>

+                <camunda:entry key="Authorization"/>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> NOTIFY CCD Payload @@@@"
+import com.att.bpm.scripts.*
+def notifyCCDSuccess = new CompleteMsoProcess()
+return notifyCCDSuccess.notifyCCDSuccessPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CCDResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CCDStatusCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="ServiceTask_1" targetRef="ScriptTask_1"/>

+    <bpmn2:serviceTask id="NotifyOMXSuccessFailureViaCSI" name="Notify OMX Success Failure Via CSI">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_csi_networkstatus_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[import com.att.bpm.scripts.*
+def notifyOMXSuccessFailureViaCSI = new CompleteMsoProcess()
+return notifyOMXSuccessFailureViaCSI.notifyOMXSuccessFailureViaCSIPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="CMSO_notifyOMXSuccessFailureViaCSIResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="CMSO_notifyOMXSuccessFailureViaCSIResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+        <camunda:properties>

+          <camunda:property/>

+        </camunda:properties>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_65</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_65" name="" sourceRef="NotifyOMXSuccessFailureViaCSI" targetRef="setdeliverysuccessstatustofalse"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_11" name="OMX Source?" default="SequenceFlow_16">

+      <bpmn2:incoming>SequenceFlow_73</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="Yes" sourceRef="ExclusiveGateway_11" targetRef="NotifyOMXSuccessFailureViaCSI">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_source").equals("OMX")}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="No" sourceRef="ExclusiveGateway_11" targetRef="ServiceTask_1"/>

+    <bpmn2:scriptTask id="setdeliverysuccessstatustofalse" name="Set Delivery Status Variable" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_65</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_92</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[if(execution.getVariable("CMSO_notifyOMXSuccessFailureViaCSIResponseCode")==200){

+	execution.setVariable("CMSO_deliveryStatus", true)

+}

+

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_92" name="" sourceRef="setdeliverysuccessstatustofalse" targetRef="ExclusiveGateway_17"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_3" name="" attachedToRef="UpdateFinalNotifyAckStatus">

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_80" errorRef="Error_1"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="BoundaryEvent_3" targetRef="EndEvent_2"/>

+    <bpmn2:serviceTask id="UpdateFinalNotifyAckStatus" name="Update Final Notify Ack Status">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> UpdateFinalNotifyAckStatus"
+import com.att.bpm.scripts.*
+def updateFinalNotifyAckStatus= new CompleteMsoProcess()
+return updateFinalNotifyAckStatus.updateFinalNotifyAckStatusPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_87</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_60</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_60" name="" sourceRef="UpdateFinalNotifyAckStatus" targetRef="ExclusiveGateway_16"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_13">

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ParallelGateway_7">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="ParallelGateway_7" targetRef="ParallelGateway_6"/>

+    <bpmn2:endEvent id="EndEvent_4">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_5" errorRef="Error_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Prepare&#xD;&#xA;Update DB Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_72</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def completeMsoProcess = new CompleteMsoProcess()

+completeMsoProcess.setUpdateDBstatustoSuccessPayload(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_3" targetRef="updateInfraRequest"/>

+    <bpmn2:endEvent id="EndEvent_5">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" name="Active Request?" default="SequenceFlow_72">

+      <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_72</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_81</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_72" name="No" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_81" name="Yes" sourceRef="ExclusiveGateway_3" targetRef="prepareUpdateRequest">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_request_id-Ok") ==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="BuildErrorMessage1" name="Build Error Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
+import com.att.bpm.scripts.*
+def buildDataErrorMessage = new CompleteMsoProcess()
+buildDataErrorMessage.buildDataError(execution, "Complete --Update DB status to SUCCESS-- Failed")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="BuildErrorMessage1" targetRef="EndEvent_5"/>

+    <bpmn2:scriptTask id="prepareUpdateRequest" name="Prepare&#xD;&#xA;Update DB Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_81</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_49</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def completeMsoProcess = new CompleteMsoProcess()

+completeMsoProcess.updateDBStatusToSuccessPayload(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_49" name="" sourceRef="prepareUpdateRequest" targetRef="updateDBStatus"/>

+    <bpmn2:serviceTask id="updateInfraRequest" name="Update DB status to SUCCESS">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("CMSO_setUpdateDBstatustoSuccessPayload")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="updateInfraRequest" targetRef="ExclusiveGateway_7"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_6" name="" attachedToRef="updateDBStatus">

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_83" errorRef="Error_1"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="BoundaryEvent_6" targetRef="EndEvent_12"/>

+    <bpmn2:scriptTask id="BuildErrorMessage" name="Build Error Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
+//println "CMSO_updateRequestResponse IS --> " + execution.getVariable("CMSO_updateRequestResponse")
+import com.att.bpm.scripts.*
+def buildDataErrorMessage = new CompleteMsoProcess()
+buildDataErrorMessage.buildDataError(execution, "Complete MSO  -- Update DB status to SUCCESS -- Failed")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="BuildErrorMessage" targetRef="EndEvent_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_10" default="SequenceFlow_25">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ExclusiveGateway_10" targetRef="ParallelGateway_7">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="ExclusiveGateway_10" targetRef="BuildErrorMessage1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_7" default="SequenceFlow_1">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" sourceRef="ExclusiveGateway_7" targetRef="ParallelGateway_7">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="ExclusiveGateway_7" targetRef="BuildErrorMessage"/>

+    <bpmn2:serviceTask id="updateDBStatus" name="Update DB status to SUCCESS">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("CMSO_updateDBStatusToSuccessPayload")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_49</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="updateDBStatus" targetRef="ExclusiveGateway_10"/>

+    <bpmn2:endEvent id="EndEvent_12">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_7" name="" attachedToRef="updateInfraRequest">

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_84" errorRef="Error_1"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="BoundaryEvent_7" targetRef="EndEvent_13"/>

+    <bpmn2:exclusiveGateway id="ParallelGateway_5">

+      <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_54</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="ParallelGateway_5" targetRef="ParallelGateway_6"/>

+    <bpmn2:parallelGateway id="ParallelGateway_6">

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="ParallelGateway_6" targetRef="Done"/>

+    <bpmn2:scriptTask id="Done" name="Prepare Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[println "INSIDE --> Complete MSO Process Done SUCCESSFULLY"
+import com.att.bpm.scripts.*
+def postProcessResponseData = new CompleteMsoProcess()
+postProcessResponseData.postProcessResponse(execution)
+println "CompleteMsoProcess Response -->" + "\n" + execution.getVariable("CompletionHandlerResponse")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="Done" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmn2:message id="Message_2" name="CompleteMsoProcessRequest"/>

+  <bpmn2:error id="Error_3" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_1" errorCode="java.lang.Exception" name="Java Lang Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CompleteMsoProcess">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_41" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="156.0" y="827.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="126.0" x="144.0" y="868.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_55" bpmnElement="ExclusiveGateway_1">

+        <dc:Bounds height="50.0" width="50.0" x="662.0" y="506.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="687.0" y="561.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_81" bpmnElement="NotifyOMXSuccessFailureViaCSI">

+        <dc:Bounds height="80.0" width="100.0" x="820.0" y="253.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_82" bpmnElement="UpdateFinalNotifyAckStatus">

+        <dc:Bounds height="80.0" width="100.0" x="820.0" y="577.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_4" bpmnElement="ParallelGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="576.0" y="643.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="146.0" x="616.0" y="676.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="if_notifcationURLExists" sourceElement="_BPMNShape_ParallelGateway_4" targetElement="_BPMNShape_ExclusiveGateway_55">

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="643.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="531.0"/>

+        <di:waypoint xsi:type="dc:Point" x="662.0" y="531.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="601.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="updateFinalNotifyAckStatus">

+        <dc:Bounds height="80.0" width="100.0" x="1425.0" y="492.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_6" bpmnElement="ParallelGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1656.0" y="643.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1681.0" y="698.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_59" bpmnElement="ExclusiveGateway_5">

+        <dc:Bounds height="50.0" width="50.0" x="470.0" y="819.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="495.0" y="874.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_7" bpmnElement="ParallelGateway_6">

+        <dc:Bounds height="50.0" width="50.0" x="1769.0" y="819.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1794.0" y="874.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ParallelGateway_6" targetElement="_BPMNShape_ParallelGateway_7">

+        <di:waypoint xsi:type="dc:Point" x="1706.0" y="668.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1794.0" y="668.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1794.0" y="819.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1791.0" y="617.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_34" bpmnElement="preProcessRequest">

+        <dc:Bounds height="80.0" width="100.0" x="324.0" y="805.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_34" targetElement="_BPMNShape_ExclusiveGateway_59">

+        <di:waypoint xsi:type="dc:Point" x="424.0" y="845.0"/>

+        <di:waypoint xsi:type="dc:Point" x="470.0" y="844.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="433.0" y="845.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_StartEvent_41" targetElement="_BPMNShape_ScriptTask_34">

+        <di:waypoint xsi:type="dc:Point" x="192.0" y="845.0"/>

+        <di:waypoint xsi:type="dc:Point" x="324.0" y="845.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="221.0" y="845.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_60" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="734.0" y="1068.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="100.0" x="782.0" y="1083.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_9" bpmnElement="ParallelGateway_7" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1214.0" y="1068.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1239.0" y="1123.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_41" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ParallelGateway_9" targetElement="_BPMNShape_ParallelGateway_7">

+        <di:waypoint xsi:type="dc:Point" x="1264.0" y="1093.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1794.0" y="1093.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1794.0" y="869.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1688.0" y="1149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ParallelGateway_4" targetElement="_BPMNShape_ParallelGateway_6">

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="693.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="813.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1187.0" y="813.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="813.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="693.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="604.0" y="737.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_51" bpmnElement="updateInfraRequest">

+        <dc:Bounds height="80.0" width="100.0" x="973.0" y="1144.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_52" bpmnElement="updateDBStatus">

+        <dc:Bounds height="80.0" width="100.0" x="970.0" y="963.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_47" bpmnElement="SequenceFlow_45" sourceElement="_BPMNShape_ExclusiveGateway_59" targetElement="_BPMNShape_ParallelGateway_4">

+        <di:waypoint xsi:type="dc:Point" x="495.0" y="819.0"/>

+        <di:waypoint xsi:type="dc:Point" x="495.0" y="668.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="668.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="492.0" y="973.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_64" bpmnElement="prepareUpdateRequest">

+        <dc:Bounds height="80.0" width="100.0" x="822.0" y="963.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_48" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_ExclusiveGateway_59" targetElement="_BPMNShape_ExclusiveGateway_60">

+        <di:waypoint xsi:type="dc:Point" x="495.0" y="869.0"/>

+        <di:waypoint xsi:type="dc:Point" x="495.0" y="1093.0"/>

+        <di:waypoint xsi:type="dc:Point" x="734.0" y="1093.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="492.0" y="990.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_50" bpmnElement="SequenceFlow_49" sourceElement="_BPMNShape_ScriptTask_64" targetElement="_BPMNShape_ScriptTask_52">

+        <di:waypoint xsi:type="dc:Point" x="922.0" y="1003.0"/>

+        <di:waypoint xsi:type="dc:Point" x="970.0" y="1003.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="937.0" y="1003.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_73" bpmnElement="setdeliverysuccessstatustofalse">

+        <dc:Bounds height="80.0" width="100.0" x="959.0" y="253.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_11" bpmnElement="ParallelGateway_9">

+        <dc:Bounds height="50.0" width="50.0" x="1200.0" y="506.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1225.0" y="561.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_71" bpmnElement="SequenceFlow_70" sourceElement="_BPMNShape_ParallelGateway_11" targetElement="_BPMNShape_ScriptTask_326">

+        <di:waypoint xsi:type="dc:Point" x="1250.0" y="531.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1284.0" y="532.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1109.0" y="531.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_73" bpmnElement="SequenceFlow_72" sourceElement="_BPMNShape_ExclusiveGateway_60" targetElement="_BPMNShape_ScriptTask_88">

+        <di:waypoint xsi:type="dc:Point" x="759.0" y="1118.0"/>

+        <di:waypoint xsi:type="dc:Point" x="759.0" y="1184.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="1184.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="761.0" y="1141.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_82" bpmnElement="SequenceFlow_81" sourceElement="_BPMNShape_ExclusiveGateway_60" targetElement="_BPMNShape_ScriptTask_64">

+        <di:waypoint xsi:type="dc:Point" x="759.0" y="1068.0"/>

+        <di:waypoint xsi:type="dc:Point" x="759.0" y="1003.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="1003.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="758.0" y="1022.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_88" bpmnElement="SequenceFlow_87" sourceElement="_BPMNShape_ExclusiveGateway_55" targetElement="_BPMNShape_ServiceTask_82">

+        <di:waypoint xsi:type="dc:Point" x="687.0" y="556.0"/>

+        <di:waypoint xsi:type="dc:Point" x="687.0" y="617.0"/>

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="617.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="686.0" y="573.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_13" bpmnElement="subProcessExceptionCompleteMSO" isExpanded="true">

+        <dc:Bounds height="169.0" width="427.0" x="264.0" y="1388.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_110" bpmnElement="endEventExceptionCompleteMSO">

+        <dc:Bounds height="36.0" width="36.0" x="564.0" y="1455.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="582.0" y="1496.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_51" bpmnElement="startEventExceptionCompleteMSO">

+        <dc:Bounds height="36.0" width="36.0" x="360.0" y="1455.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="378.0" y="1496.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_63" bpmnElement="ExclusiveGateway_7" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1132.0" y="1158.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1157.0" y="1213.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_51" targetElement="_BPMNShape_ExclusiveGateway_63">

+        <di:waypoint xsi:type="dc:Point" x="1073.0" y="1184.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="1183.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1255.0" y="1227.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_63" targetElement="_BPMNShape_ParallelGateway_9">

+        <di:waypoint xsi:type="dc:Point" x="1182.0" y="1183.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1239.0" y="1183.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1239.0" y="1118.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1158.0" y="1141.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_111" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1269.0" y="1271.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1287.0" y="1312.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_76" bpmnElement="BuildErrorMessage">

+        <dc:Bounds height="80.0" width="100.0" x="1108.0" y="1249.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_ExclusiveGateway_63" targetElement="_BPMNShape_ScriptTask_76">

+        <di:waypoint xsi:type="dc:Point" x="1157.0" y="1208.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1158.0" y="1249.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1199.0" y="1035.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_76" targetElement="_BPMNShape_EndEvent_111">

+        <di:waypoint xsi:type="dc:Point" x="1208.0" y="1289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1269.0" y="1289.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1236.0" y="1289.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_77" bpmnElement="Done">

+        <dc:Bounds height="80.0" width="100.0" x="1860.0" y="805.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_66" bpmnElement="ExclusiveGateway_10" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1132.0" y="977.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1157.0" y="1032.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ScriptTask_52" targetElement="_BPMNShape_ExclusiveGateway_66">

+        <di:waypoint xsi:type="dc:Point" x="1070.0" y="1003.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="1002.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1261.0" y="1003.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ExclusiveGateway_66" targetElement="_BPMNShape_ParallelGateway_9">

+        <di:waypoint xsi:type="dc:Point" x="1182.0" y="1002.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1239.0" y="1002.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1239.0" y="1068.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1348.0" y="1003.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="BuildErrorMessage1">

+        <dc:Bounds height="80.0" width="100.0" x="1108.0" y="856.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ExclusiveGateway_66" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="1157.0" y="977.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1158.0" y="936.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1242.0" y="957.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_113" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="1269.0" y="878.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1287.0" y="919.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ParallelGateway_7" targetElement="_BPMNShape_ScriptTask_77">

+        <di:waypoint xsi:type="dc:Point" x="1819.0" y="844.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1860.0" y="845.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1806.0" y="845.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_71" bpmnElement="ExclusiveGateway_15" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1571.0" y="506.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1596.0" y="561.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_53" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ExclusiveGateway_71">

+        <di:waypoint xsi:type="dc:Point" x="1525.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1571.0" y="531.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1544.0" y="532.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_55" bpmnElement="SequenceFlow_54" sourceElement="_BPMNShape_ExclusiveGateway_71" targetElement="_BPMNShape_ParallelGateway_6">

+        <di:waypoint xsi:type="dc:Point" x="1621.0" y="531.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="531.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="643.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1463.0" y="531.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_83" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="1546.0" y="381.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_59" bpmnElement="SequenceFlow_58" sourceElement="_BPMNShape_ExclusiveGateway_71" targetElement="_BPMNShape_ScriptTask_83">

+        <di:waypoint xsi:type="dc:Point" x="1596.0" y="506.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1596.0" y="461.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1574.0" y="484.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_118" bpmnElement="EndEvent_10">

+        <dc:Bounds height="36.0" width="36.0" x="1684.0" y="403.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1702.0" y="444.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_60" bpmnElement="SequenceFlow_59" sourceElement="_BPMNShape_ScriptTask_83" targetElement="_BPMNShape_EndEvent_118">

+        <di:waypoint xsi:type="dc:Point" x="1646.0" y="421.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1684.0" y="421.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1476.0" y="421.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_72" bpmnElement="ExclusiveGateway_16" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="967.0" y="591.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="992.0" y="646.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_61" bpmnElement="SequenceFlow_60" sourceElement="_BPMNShape_ServiceTask_82" targetElement="_BPMNShape_ExclusiveGateway_72">

+        <di:waypoint xsi:type="dc:Point" x="920.0" y="617.0"/>

+        <di:waypoint xsi:type="dc:Point" x="967.0" y="616.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="937.0" y="617.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_84" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="80.0" width="100.0" x="943.0" y="681.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_62" bpmnElement="SequenceFlow_61" sourceElement="_BPMNShape_ExclusiveGateway_72" targetElement="_BPMNShape_ScriptTask_84">

+        <di:waypoint xsi:type="dc:Point" x="992.0" y="641.0"/>

+        <di:waypoint xsi:type="dc:Point" x="992.0" y="666.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="666.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="681.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1006.0" y="638.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_119" bpmnElement="EndEvent_11">

+        <dc:Bounds height="36.0" width="36.0" x="1081.0" y="703.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1099.0" y="744.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_63" bpmnElement="SequenceFlow_62" sourceElement="_BPMNShape_ScriptTask_84" targetElement="_BPMNShape_EndEvent_119">

+        <di:waypoint xsi:type="dc:Point" x="1043.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1081.0" y="721.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="990.0" y="704.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_64" bpmnElement="SequenceFlow_63" sourceElement="_BPMNShape_ExclusiveGateway_72" targetElement="_BPMNShape_ParallelGateway_11">

+        <di:waypoint xsi:type="dc:Point" x="1017.0" y="616.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1225.0" y="616.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1225.0" y="556.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="963.0" y="617.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_66" bpmnElement="SequenceFlow_65" sourceElement="_BPMNShape_ServiceTask_81" targetElement="_BPMNShape_ScriptTask_73">

+        <di:waypoint xsi:type="dc:Point" x="920.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="959.0" y="293.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="941.0" y="343.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_74" bpmnElement="SequenceFlow_73" sourceElement="_BPMNShape_ExclusiveGateway_55" targetElement="_BPMNShape_ExclusiveGateway_85">

+        <di:waypoint xsi:type="dc:Point" x="687.0" y="506.0"/>

+        <di:waypoint xsi:type="dc:Point" x="687.0" y="397.0"/>

+        <di:waypoint xsi:type="dc:Point" x="742.0" y="397.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="765.0" y="515.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_93" bpmnElement="SequenceFlow_92" sourceElement="_BPMNShape_ScriptTask_73" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="1059.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="372.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1137.0" y="346.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_EndEvent_113">

+        <di:waypoint xsi:type="dc:Point" x="1208.0" y="896.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1269.0" y="896.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1225.0" y="896.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_85" bpmnElement="ExclusiveGateway_11" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="742.0" y="372.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="86.0" x="789.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ExclusiveGateway_85" targetElement="_BPMNShape_ServiceTask_81">

+        <di:waypoint xsi:type="dc:Point" x="767.0" y="372.0"/>

+        <di:waypoint xsi:type="dc:Point" x="768.0" y="293.0"/>

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="293.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="771.0" y="335.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_17" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1107.0" y="372.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1132.0" y="427.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ParallelGateway_11">

+        <di:waypoint xsi:type="dc:Point" x="1157.0" y="397.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1225.0" y="397.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1225.0" y="506.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1210.0" y="475.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ExclusiveGateway_85" targetElement="_BPMNShape_ServiceTask_94">

+        <di:waypoint xsi:type="dc:Point" x="767.0" y="422.0"/>

+        <di:waypoint xsi:type="dc:Point" x="768.0" y="487.0"/>

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="487.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="774.0" y="443.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_94" bpmnElement="ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="820.0" y="447.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ServiceTask_94" targetElement="_BPMNShape_ScriptTask_86">

+        <di:waypoint xsi:type="dc:Point" x="920.0" y="487.0"/>

+        <di:waypoint xsi:type="dc:Point" x="959.0" y="487.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="933.0" y="487.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_86" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="959.0" y="447.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_86" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="1059.0" y="487.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="487.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1132.0" y="422.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1072.0" y="507.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_128" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="2077.0" y="827.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="2095.0" y="868.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_77" targetElement="_BPMNShape_EndEvent_128">

+        <di:waypoint xsi:type="dc:Point" x="1960.0" y="845.0"/>

+        <di:waypoint xsi:type="dc:Point" x="2077.0" y="845.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1982.0" y="845.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_23" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1458.0" y="474.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1473.0" y="515.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_25" bpmnElement="BoundaryEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="851.0" y="639.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="866.0" y="680.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_28" bpmnElement="BoundaryEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1001.0" y="945.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1016.0" y="986.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_29" bpmnElement="BoundaryEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="1002.0" y="1206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1292.0" y="1088.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_215" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="851.0" y="708.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="869.0" y="749.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_BoundaryEvent_25" targetElement="_BPMNShape_EndEvent_215">

+        <di:waypoint xsi:type="dc:Point" x="869.0" y="675.0"/>

+        <di:waypoint xsi:type="dc:Point" x="869.0" y="708.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="866.0" y="684.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_218" bpmnElement="EndEvent_12">

+        <dc:Bounds height="36.0" width="36.0" x="1001.0" y="864.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1019.0" y="905.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_BoundaryEvent_28" targetElement="_BPMNShape_EndEvent_218">

+        <di:waypoint xsi:type="dc:Point" x="1019.0" y="945.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1019.0" y="900.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1180.0" y="927.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_219" bpmnElement="EndEvent_13">

+        <dc:Bounds height="36.0" width="36.0" x="1002.0" y="1292.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1020.0" y="1333.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_BoundaryEvent_29" targetElement="_BPMNShape_EndEvent_219">

+        <di:waypoint xsi:type="dc:Point" x="1020.0" y="1242.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1020.0" y="1292.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="847.0" y="747.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_220" bpmnElement="EndEvent_14">

+        <dc:Bounds height="36.0" width="36.0" x="1458.0" y="395.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1476.0" y="436.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_46" bpmnElement="SequenceFlow_44" sourceElement="_BPMNShape_BoundaryEvent_23" targetElement="_BPMNShape_EndEvent_220">

+        <di:waypoint xsi:type="dc:Point" x="1476.0" y="474.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1476.0" y="431.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1369.0" y="474.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_88" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="822.0" y="1144.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_88" targetElement="_BPMNShape_ScriptTask_51">

+        <di:waypoint xsi:type="dc:Point" x="922.0" y="1184.0"/>

+        <di:waypoint xsi:type="dc:Point" x="973.0" y="1184.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="939.0" y="1208.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_326" bpmnElement="prepareUpdateFinalAckStatus">

+        <dc:Bounds height="80.0" width="100.0" x="1284.0" y="492.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_326" targetElement="_BPMNShape_ServiceTask_86">

+        <di:waypoint xsi:type="dc:Point" x="1384.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1425.0" y="532.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1366.0" y="532.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_StartEvent_51" targetElement="_BPMNShape_EndEvent_110">

+        <di:waypoint xsi:type="dc:Point" x="396.0" y="1473.0"/>

+        <di:waypoint xsi:type="dc:Point" x="564.0" y="1473.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="519.0" y="1473.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModule.bpmn
new file mode 100644
index 0000000..46b4e1f
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModule.bpmn
@@ -0,0 +1,830 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_pNTO8MRhEeWv36YLr7PC3Q" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DoCreateVfModule" name="DoCreateVfModule" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="PreProcessRequest"/>

+    <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="DoCreateVfModule">

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_26" name="DoCreateVfModule"/>

+    </bpmn2:intermediateCatchEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="IntermediateCatchEvent_1" targetRef="IsVolumeGroupIdSpecified"/>

+    <bpmn2:exclusiveGateway id="IsVolumeGroupIdSpecified" name="Is volume_group_id specified?" default="SequenceFlow_11">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="no" sourceRef="IsVolumeGroupIdSpecified" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:callActivity id="ConfirmVolumeGroupTenant" name="Confirm Volume Group Tenant" calledElement="ConfirmVolumeGroupTenant">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_volumeGroupId" target="volumeGroupId"/>

+        <camunda:in source="DCVFM_tenantId" target="tenantId"/>

+        <camunda:in source="DCVFM_cloudRegionForVolume" target="aicCloudRegion"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="ConfirmVolumeGroupTenantResponse" target="DCVFM_volumeGroupStackId"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_43</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ConfirmVolumeGroupTenant" targetRef="IsVolumeGroupNameSpecified"/>

+    <bpmn2:exclusiveGateway id="IsVolumeGroupNameSpecified" name="Is volume_group_name specified?" default="SequenceFlow_21">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="yes" sourceRef="IsVolumeGroupNameSpecified" targetRef="ConfirmVolumeName">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+return doCreateVfModule.isVolumeGroupNamePresent(execution)]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="no" sourceRef="IsVolumeGroupNameSpecified" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:callActivity id="ConfirmVolumeName" name="Confirm Volume Group Name" calledElement="ConfirmVolumeGroupName">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_volumeGroupId" target="ConfirmVolumeGroupName_volumeGroupId"/>

+        <camunda:in source="DCVFM_volumeGroupName" target="ConfirmVolumeGroupName_volumeGroupName"/>

+        <camunda:in source="DCVFM_cloudRegionForVolume" target="ConfirmVolumeGroupName_aicCloudRegion"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="WorkflowResponse" target="DCVM_confirmResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ConfirmVolumeName" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_4">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_4" targetRef="CreateAAIVfModule"/>

+    <bpmn2:callActivity id="CallSDNCAdapterVDModuleTopologyAssign" name="Call SDNC Adapter: VF Module Topology Assign" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_assignSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="sdncAdapterResponse" target="DCVFM_assignSDNCAdapterResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="PostProcessSDNCAssignRequest" name="PostProcess SDNC Assign  Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+String response = execution.getVariable("DCVFM_assignSDNCAdapterResponse")
+
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.validateSDNCResponse(execution, response, "assign")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="PreProcessSDNCAssignRequest" name="PreProcess SDNC Assign Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessSDNCAssignRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="PreProcessSDNCAssignRequest" targetRef="CallSDNCAdapterVDModuleTopologyAssign"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="CallSDNCAdapterVDModuleTopologyAssign" targetRef="PostProcessSDNCAssignRequest"/>

+    <bpmn2:scriptTask id="PreProcessSDNCGetRequest" name="PreProcess SDNC GET Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessSDNCGetRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="CallSDNCAdapterVFModuleTopologyGET" name="Call SDNC Adapter: VF Module Topology GET" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_getSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="sdncAdapterResponse" target="DCVFM_getSDNCAdapterResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="PostProcessSDNCAssignRequest" targetRef="PreProcessSDNCGetRequest"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="PreProcessSDNCGetRequest" targetRef="CallSDNCAdapterVFModuleTopologyGET"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="CallSDNCAdapterVFModuleTopologyGET" targetRef="PostProcessSDNCGetRequest"/>

+    <bpmn2:scriptTask id="PostProcessSDNCGetRequest" name="PostProcess SDNC GET Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+String response = execution.getVariable("DCVFM_getSDNCAdapterResponse")
+
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.validateSDNCResponse(execution, response, "get")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="UpdateAAIVfModule_1" name="UpdateAAIVfModule" calledElement="UpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_updateAAIVfModuleRequest" target="UpdateAAIVfModuleRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="WorkflowResponse" target="DCVM_updateAAIVfModuleResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="PreProcessUpdateAAIVfModule_1" name="PreProcess Update AAIVfModule" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessUpdateAAIVfModuleRequestOrch(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="PreProcessSDNCActivateRequest" name="PreProcess SDNC Activate Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessSDNCActivateRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="CallSDNCAdapterVFModuleTopologyActivate" name="Call SDNC Adapter: VF Module Topology Activate" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_activateSDNCRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="sdncAdapterResponse" target="DCVFM_activateSDNCAdapterResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="PostProcessSDNCActivateRequest" name="PostProcess SDNC Activate Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+      
+      String response = execution.getVariable("DCVFM_activateSDNCAdapterResponse")
+      
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.validateSDNCResponse(execution, response, "activate")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_5" name="Is volume_group_id specified?" default="SequenceFlow_30">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="yes" sourceRef="ExclusiveGateway_5" targetRef="PrepareCreateAAIVfModuleVolumeGroupRequest">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+return doCreateVfModule.isVolumeGroupIdPresent(execution)]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="no" sourceRef="ExclusiveGateway_5" targetRef="ExclusiveGateway_6"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="PreProcessUpdateAAIVfModule_1" targetRef="UpdateAAIVfModule_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="UpdateAAIVfModule_1" targetRef="PreProcessSDNCActivateRequest"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="PreProcessSDNCActivateRequest" targetRef="CallSDNCAdapterVFModuleTopologyActivate"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="CallSDNCAdapterVFModuleTopologyActivate" targetRef="PostProcessSDNCActivateRequest"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="PostProcessSDNCActivateRequest" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_3" name="UpdateAndActivate">

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_30" name="UpdateAndActivate"/>

+    </bpmn2:intermediateCatchEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="IntermediateCatchEvent_3" targetRef="PreProcessUpdateAAIVfModule_1"/>

+    <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_2" name="Provision">

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_29" name="Provision"/>

+    </bpmn2:intermediateCatchEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="IntermediateCatchEvent_2" targetRef="PreProcessSDNCAssignRequest"/>

+    <bpmn2:scriptTask id="PrepareCreateAAIVfModuleVolumeGroupRequest" name="Prepare CreateAAIVfModuleVolumeGroup Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def doCreateVfModule = new DoCreateVfModule()

+doCreateVfModule.prepareCreateAAIVfModuleVolumeGroupRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="CreateAAIVfModuleVolumeGroup" name="CreateAAIVfModuleVolumeGroup" calledElement="CreateAAIVfModuleVolumeGroup">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_createAAIVfModuleVolumeGroupRequest" target="CreateAAIVfModuleVolumeGroupRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="WorkflowResponse" target="DCVM_updateAAIVfModuleResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="CreateAAIVfModuleVolumeGroup" targetRef="ExclusiveGateway_6"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="PrepareCreateAAIVfModuleVolumeGroupRequest" targetRef="CreateAAIVfModuleVolumeGroup"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_6">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="ExclusiveGateway_6" targetRef="ScriptTask_setSuccess"/>

+    <bpmn2:scriptTask id="PreProcessVNFAdapterRequest" name="PreProcess VNF Adapter Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessVNFAdapterRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="CallVNFAdapterVFModuleCreate" name="Call VNF Adapter to create VF Module" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFM_createVnfARequest" target="vnfAdapterRestV1Request"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DCVFM_createVnfAResponse"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in variables="all"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="PostProcessVNFAdapterRequest" name="PostProcess VNF Adapter Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.postProcessVNFAdapterRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_2" name="To UpdateAndActivate">

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_31" name="UpdateAndActivate"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="PostProcessSDNCGetRequest" targetRef="PreProcessVNFAdapterRequest"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="PreProcessVNFAdapterRequest" targetRef="CallVNFAdapterVFModuleCreate"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="CallVNFAdapterVFModuleCreate" targetRef="PostProcessVNFAdapterRequest"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="PostProcessVNFAdapterRequest" targetRef="IntermediateThrowEvent_2"/>

+    <bpmn2:callActivity id="CreateAAIVfModule" name="CreateAAIVfModule" calledElement="CreateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="CreateAAIVfModuleRequest" target="CreateAAIVfModuleRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:in source="isVidRequest" target="isVidRequest"/>

+        <camunda:in source="newVfModuleId" target="newVfModuleId"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="CreateAAIVfModuleResponse" target="DCVFM_createVfModuleResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_3" name="To Provision">

+      <bpmn2:incoming>SequenceFlow_41</bpmn2:incoming>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_28" name="Provision"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_41</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:scriptTask id="PostProcessCreateAAIVfModule" name="PostProcess CreateAAIVfModule" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.postProcessCreateAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="CreateAAIVfModule" targetRef="PostProcessCreateAAIVfModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="PostProcessCreateAAIVfModule" targetRef="IsBaseVfModule"/>

+    <bpmn2:exclusiveGateway id="IsBaseVfModule" name="Is Base VF Module?" default="SequenceFlow_36">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_36</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_36" name="no" sourceRef="IsBaseVfModule" targetRef="QueryAAIVfModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="yes" sourceRef="IsBaseVfModule" targetRef="ExclusiveGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[execution.getVariable("DCVFM_isBaseVfModule") == "true"]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="QueryAAIVfModule" name="Query AAI Vf Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_36</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.queryAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="QueryAAIVfModule" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_41" name="" sourceRef="ExclusiveGateway_2" targetRef="IntermediateThrowEvent_3"/>

+    <bpmn2:scriptTask id="ScriptTask_setSuccess" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.setSuccessIndicator(execution, true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ScriptTask_setSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_8"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="QueryCloudRegion" name="Query Cloud Region" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_43</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+return doCreateVfModule.queryCloudRegion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_40" name="yes" sourceRef="IsVolumeGroupIdSpecified" targetRef="QueryCloudRegion">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+return doCreateVfModule.isVolumeGroupIdPresent(execution)]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_43" name="" sourceRef="QueryCloudRegion" targetRef="ConfirmVolumeGroupTenant"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_1" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.processBPMNException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ScriptTask_1" targetRef="EndEvent_2"/>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="StartEvent_2" targetRef="ScriptTask_1"/>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="PreProcessRequest" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModule = new DoCreateVfModule()
+doCreateVfModule.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="PreProcessRequest" targetRef="IntermediateThrowEvent_1"/>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="To DoCreateVfModule">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:linkEventDefinition id="_LinkEventDefinition_25" name="DoCreateVfModule"/>

+    </bpmn2:intermediateThrowEvent>

+  </bpmn2:process>

+  <bpmn2:message id="Message_1" name="DoCreateVfModuleRequest"/>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="41.0" y="231.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">

+        <di:waypoint xsi:type="dc:Point" x="77.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="150.0" y="249.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="99.0" y="249.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="PreProcessRequest">

+        <dc:Bounds height="80.0" width="100.0" x="150.0" y="209.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_156" bpmnElement="CreateAAIVfModule">

+        <dc:Bounds height="92.0" width="121.0" x="696.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_24" bpmnElement="IntermediateCatchEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="36.0" y="376.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="114.0" x="0.0" y="417.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_22" bpmnElement="IntermediateThrowEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="338.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="132.0" x="290.0" y="272.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_157" bpmnElement="CallSDNCAdapterVDModuleTopologyAssign">

+        <dc:Bounds height="94.0" width="121.0" x="266.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_158" bpmnElement="CallSDNCAdapterVFModuleTopologyGET">

+        <dc:Bounds height="97.0" width="133.0" x="744.0" y="670.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_90" bpmnElement="IsVolumeGroupIdSpecified" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="144.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="178.0" x="89.0" y="347.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_172" bpmnElement="ConfirmVolumeGroupTenant">

+        <dc:Bounds height="89.0" width="118.0" x="209.0" y="528.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_91" bpmnElement="ExclusiveGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="559.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="584.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_ExclusiveGateway_91">

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="559.0" y="393.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="209.0" y="393.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_173" bpmnElement="CallVNFAdapterVFModuleCreate">

+        <dc:Bounds height="97.0" width="121.0" x="1236.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_174" bpmnElement="UpdateAAIVfModule_1">

+        <dc:Bounds height="97.0" width="117.0" x="268.0" y="816.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_175" bpmnElement="CallSDNCAdapterVFModuleTopologyActivate">

+        <dc:Bounds height="99.0" width="119.0" x="590.0" y="814.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_92" bpmnElement="ExclusiveGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="935.0" y="839.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="178.0" x="886.0" y="811.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_176" bpmnElement="CreateAAIVfModuleVolumeGroup">

+        <dc:Bounds height="112.0" width="121.0" x="1193.0" y="972.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ExclusiveGateway_92" targetElement="_BPMNShape_Task_7">

+        <di:waypoint xsi:type="dc:Point" x="960.0" y="889.0"/>

+        <di:waypoint xsi:type="dc:Point" x="960.0" y="1028.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1020.0" y="1028.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="947.0" y="914.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_93" bpmnElement="ExclusiveGateway_6" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1318.0" y="840.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1343.0" y="895.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_176" targetElement="_BPMNShape_ExclusiveGateway_93">

+        <di:waypoint xsi:type="dc:Point" x="1313.0" y="1028.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1343.0" y="1028.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1343.0" y="930.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1343.0" y="890.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1336.0" y="1028.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ExclusiveGateway_92" targetElement="_BPMNShape_ExclusiveGateway_93">

+        <di:waypoint xsi:type="dc:Point" x="985.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1151.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1151.0" y="865.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1318.0" y="865.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="1015.0" y="864.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_IntermediateCatchEvent_24" targetElement="_BPMNShape_ExclusiveGateway_90">

+        <di:waypoint xsi:type="dc:Point" x="72.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="144.0" y="393.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="117.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_101" bpmnElement="IsVolumeGroupNameSpecified" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="360.0" y="547.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="200.0" x="309.0" y="496.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_172" targetElement="_BPMNShape_ExclusiveGateway_101">

+        <di:waypoint xsi:type="dc:Point" x="327.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="360.0" y="572.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="338.0" y="572.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_3" bpmnElement="ConfirmVolumeName">

+        <dc:Bounds height="89.0" width="109.0" x="453.0" y="528.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ExclusiveGateway_101" targetElement="_BPMNShape_Task_3">

+        <di:waypoint xsi:type="dc:Point" x="410.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="453.0" y="572.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="410.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ExclusiveGateway_101" targetElement="_BPMNShape_ExclusiveGateway_91">

+        <di:waypoint xsi:type="dc:Point" x="385.0" y="547.0"/>

+        <di:waypoint xsi:type="dc:Point" x="385.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="559.0" y="393.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="392.0" y="450.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_Task_3" targetElement="_BPMNShape_ExclusiveGateway_91">

+        <di:waypoint xsi:type="dc:Point" x="561.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="572.0"/>

+        <di:waypoint xsi:type="dc:Point" x="584.0" y="418.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="581.0" y="492.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_IntermediateThrowEvent_22">

+        <di:waypoint xsi:type="dc:Point" x="250.0" y="249.0"/>

+        <di:waypoint xsi:type="dc:Point" x="338.0" y="249.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="287.0" y="249.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_91" targetElement="_BPMNShape_ScriptTask_156">

+        <di:waypoint xsi:type="dc:Point" x="609.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="628.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="628.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="696.0" y="394.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="633.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_178" bpmnElement="PreProcessSDNCAssignRequest">

+        <dc:Bounds height="94.0" width="121.0" x="109.0" y="674.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_179" bpmnElement="PostProcessSDNCAssignRequest">

+        <dc:Bounds height="94.0" width="121.0" x="435.0" y="674.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_44" bpmnElement="IntermediateThrowEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1537.0" y="374.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="76.0" x="1517.0" y="415.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_29" bpmnElement="IntermediateCatchEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="24.0" y="706.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="58.0" x="13.0" y="747.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_IntermediateCatchEvent_29" targetElement="_BPMNShape_ScriptTask_178">

+        <di:waypoint xsi:type="dc:Point" x="60.0" y="724.0"/>

+        <di:waypoint xsi:type="dc:Point" x="81.0" y="724.0"/>

+        <di:waypoint xsi:type="dc:Point" x="81.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="109.0" y="721.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="78.0" y="722.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_178" targetElement="_BPMNShape_ScriptTask_157">

+        <di:waypoint xsi:type="dc:Point" x="229.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="248.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="248.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="266.0" y="719.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_157" targetElement="_BPMNShape_ScriptTask_179">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="411.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="411.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="435.0" y="721.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_213" bpmnElement="PreProcessSDNCGetRequest">

+        <dc:Bounds height="94.0" width="121.0" x="588.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_214" bpmnElement="PostProcessSDNCGetRequest">

+        <dc:Bounds height="94.0" width="121.0" x="924.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_179" targetElement="_BPMNShape_ScriptTask_213">

+        <di:waypoint xsi:type="dc:Point" x="555.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="572.0" y="721.0"/>

+        <di:waypoint xsi:type="dc:Point" x="572.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="588.0" y="719.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ScriptTask_213" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="726.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="726.0" y="718.0"/>

+        <di:waypoint xsi:type="dc:Point" x="744.0" y="718.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_158" targetElement="_BPMNShape_ScriptTask_214">

+        <di:waypoint xsi:type="dc:Point" x="876.0" y="718.0"/>

+        <di:waypoint xsi:type="dc:Point" x="899.0" y="718.0"/>

+        <di:waypoint xsi:type="dc:Point" x="899.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="924.0" y="719.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="897.0" y="719.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="PreProcessUpdateAAIVfModule_1">

+        <dc:Bounds height="97.0" width="118.0" x="109.0" y="816.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_33" bpmnElement="PreProcessSDNCActivateRequest">

+        <dc:Bounds height="98.0" width="118.0" x="435.0" y="815.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_4" bpmnElement="PostProcessSDNCActivateRequest">

+        <dc:Bounds height="95.0" width="121.0" x="752.0" y="816.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ScriptTask_174">

+        <di:waypoint xsi:type="dc:Point" x="227.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="268.0" y="864.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_174" targetElement="_BPMNShape_Task_33">

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="435.0" y="864.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_Task_33" targetElement="_BPMNShape_ScriptTask_175">

+        <di:waypoint xsi:type="dc:Point" x="553.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="571.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="571.0" y="863.0"/>

+        <di:waypoint xsi:type="dc:Point" x="590.0" y="863.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_175" targetElement="_BPMNShape_Task_4">

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="863.0"/>

+        <di:waypoint xsi:type="dc:Point" x="752.0" y="863.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_Task_4" targetElement="_BPMNShape_ExclusiveGateway_92">

+        <di:waypoint xsi:type="dc:Point" x="872.0" y="863.0"/>

+        <di:waypoint xsi:type="dc:Point" x="904.0" y="863.0"/>

+        <di:waypoint xsi:type="dc:Point" x="904.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="935.0" y="864.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_175" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1620.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1638.0" y="887.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ExclusiveGateway_93" targetElement="_BPMNShape_ScriptTask_218">

+        <di:waypoint xsi:type="dc:Point" x="1368.0" y="865.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="865.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="863.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1433.0" y="863.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1378.0" y="865.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_45" bpmnElement="IntermediateThrowEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1596.0" y="702.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="134.0" x="1547.0" y="743.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_30" bpmnElement="IntermediateCatchEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="24.0" y="846.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="116.0" x="0.0" y="887.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_IntermediateCatchEvent_30" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="60.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="109.0" y="864.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="86.0" y="864.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_7" bpmnElement="PrepareCreateAAIVfModuleVolumeGroupRequest">

+        <dc:Bounds height="112.0" width="121.0" x="1020.0" y="972.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_Task_7" targetElement="_BPMNShape_ScriptTask_176">

+        <di:waypoint xsi:type="dc:Point" x="1140.0" y="1028.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1193.0" y="1028.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_25" bpmnElement="PreProcessVNFAdapterRequest">

+        <dc:Bounds height="96.0" width="121.0" x="1073.0" y="672.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_35" bpmnElement="PostProcessVNFAdapterRequest">

+        <dc:Bounds height="92.0" width="116.0" x="1397.0" y="674.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ScriptTask_214" targetElement="_BPMNShape_Task_25">

+        <di:waypoint xsi:type="dc:Point" x="1044.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1059.0" y="719.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1059.0" y="720.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1073.0" y="720.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_Task_25" targetElement="_BPMNShape_ScriptTask_173">

+        <di:waypoint xsi:type="dc:Point" x="1193.0" y="720.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1236.0" y="720.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ScriptTask_173" targetElement="_BPMNShape_Task_35">

+        <di:waypoint xsi:type="dc:Point" x="1356.0" y="720.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1397.0" y="720.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_Task_35" targetElement="_BPMNShape_IntermediateThrowEvent_45">

+        <di:waypoint xsi:type="dc:Point" x="1513.0" y="720.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1596.0" y="720.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_215" bpmnElement="QueryAAIVfModule">

+        <dc:Bounds height="92.0" width="125.0" x="1224.0" y="516.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_211" bpmnElement="IsBaseVfModule" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1128.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="124.0" x="1092.0" y="336.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_212" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1408.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1433.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_36" sourceElement="_BPMNShape_ExclusiveGateway_211" targetElement="_BPMNShape_ScriptTask_215">

+        <di:waypoint xsi:type="dc:Point" x="1153.0" y="418.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1153.0" y="562.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1224.0" y="562.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="1122.0" y="450.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ExclusiveGateway_211" targetElement="_BPMNShape_ExclusiveGateway_212">

+        <di:waypoint xsi:type="dc:Point" x="1178.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1408.0" y="393.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="1285.0" y="393.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_216" bpmnElement="PostProcessCreateAAIVfModule">

+        <dc:Bounds height="92.0" width="125.0" x="897.0" y="348.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_156" targetElement="_BPMNShape_ScriptTask_216">

+        <di:waypoint xsi:type="dc:Point" x="816.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="897.0" y="394.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ScriptTask_216" targetElement="_BPMNShape_ExclusiveGateway_211">

+        <di:waypoint xsi:type="dc:Point" x="1021.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1075.0" y="394.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1075.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1128.0" y="393.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1072.0" y="394.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ScriptTask_215" targetElement="_BPMNShape_ExclusiveGateway_212">

+        <di:waypoint xsi:type="dc:Point" x="1348.0" y="562.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1378.0" y="562.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1378.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1408.0" y="393.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_41" bpmnElement="SequenceFlow_41" sourceElement="_BPMNShape_ExclusiveGateway_212" targetElement="_BPMNShape_IntermediateThrowEvent_44">

+        <di:waypoint xsi:type="dc:Point" x="1458.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="392.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1537.0" y="392.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_218" bpmnElement="ScriptTask_setSuccess">

+        <dc:Bounds height="95.0" width="128.0" x="1433.0" y="817.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_218" targetElement="_BPMNShape_EndEvent_175">

+        <di:waypoint xsi:type="dc:Point" x="1561.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1596.0" y="864.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1596.0" y="865.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1620.0" y="864.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1593.0" y="865.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_254" bpmnElement="QueryCloudRegion">

+        <dc:Bounds height="81.0" width="134.0" x="101.0" y="440.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ExclusiveGateway_90" targetElement="_BPMNShape_ScriptTask_254">

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="418.0"/>

+        <di:waypoint xsi:type="dc:Point" x="169.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="440.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="180.0" y="417.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_43" bpmnElement="SequenceFlow_43" sourceElement="_BPMNShape_ScriptTask_254" targetElement="_BPMNShape_ScriptTask_172">

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="520.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="524.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="581.0"/>

+        <di:waypoint xsi:type="dc:Point" x="208.0" y="581.0"/>

+        <di:waypoint xsi:type="dc:Point" x="209.0" y="581.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="165.0" y="574.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_21" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="203.0" width="405.0" x="103.0" y="1020.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_55" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="132.0" y="1104.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="150.0" y="1145.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_181" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="444.0" y="1104.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="462.0" y="1145.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_284" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="81.0" width="134.0" x="239.0" y="1081.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_StartEvent_55" targetElement="_BPMNShape_ScriptTask_284">

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="1122.0"/>

+        <di:waypoint xsi:type="dc:Point" x="239.0" y="1121.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="189.0" y="1122.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_284" targetElement="_BPMNShape_EndEvent_181">

+        <di:waypoint xsi:type="dc:Point" x="373.0" y="1121.0"/>

+        <di:waypoint xsi:type="dc:Point" x="444.0" y="1122.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="400.0" y="1121.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleRollback.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleRollback.bpmn
new file mode 100644
index 0000000..49e612f
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleRollback.bpmn
@@ -0,0 +1,520 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DoCreateVfModuleRollback" name="DoCreateVfModuleRollback" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="InitializeVariables"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Rollback PrepareUpdateAAIVfModule?" default="SequenceFlow_9">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:scriptTask id="PrepareUpdateAAIVfModulePrep" name="PrepareUpdateAAIVfModule Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="InvokePrepareUpdateAAIVfModule" name="Invoke&#xD;&#xA;PrepareUpdateAAIVfModule" calledElement="PrepareUpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="PrepareUpdateAAIVfModuleRequest" target="PrepareUpdateAAIVfModuleRequest"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="PUAAIVfMod_heatStackId" target="DCVFMR_heatStackId"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="yes" sourceRef="ExclusiveGateway_1" targetRef="PrepareUpdateAAIVfModulePrep">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DCVFMR_rollbackPrepareUpdateVfModule") == "true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="PrepareUpdateAAIVfModulePrep" targetRef="InvokePrepareUpdateAAIVfModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="InvokePrepareUpdateAAIVfModule" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="no" sourceRef="ExclusiveGateway_1" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="Rollback VNF Adapter Create?" default="SequenceFlow_15">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:scriptTask id="VNFAdapterPrep" name="VNFAdapter&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.prepVNFAdapterRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="VNFAdapterPrep" targetRef="InvokeVNFAdapterRestV1"/>

+    <bpmn2:callActivity id="InvokeVNFAdapterRestV1" name="Invoke&#xD;&#xA;VNFAdapterRestV1" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="vnfAdapterRestV1Request" target="vnfAdapterRestV1Request"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DoDVfMod_DoCreateVfModuleRollbackResponse"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="yes" sourceRef="ExclusiveGateway_2" targetRef="VNFAdapterPrep">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DCVFMR_rollbackVnfAdapterCreate") == "true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="InvokeVNFAdapterRestV1" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="no" sourceRef="ExclusiveGateway_2" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:scriptTask id="UpdateAAIVfModulePrep" name="UpdateAAIVfModule&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.prepUpdateAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="UpdateAAIVfModulePrep" targetRef="InvokeUpdateAAIVfModule"/>

+    <bpmn2:callActivity id="InvokeUpdateAAIVfModule" name="Invoke&#xD;&#xA;UpdateAAIVfModule" calledElement="UpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="UpdateAAIVfModuleRequest" target="UpdateAAIVfModuleRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="InvokeUpdateAAIVfModule" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" name="Rollback Update AAI Vf Module?" default="SequenceFlow_17">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="yes" sourceRef="ExclusiveGateway_3" targetRef="UpdateAAIVfModulePrep">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DCVFMR_rollbackUpdateAAIVfModule") == "true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="no" sourceRef="ExclusiveGateway_3" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_4" name="Rollback SDNC Request?" default="SequenceFlow_20">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="yes" sourceRef="ExclusiveGateway_4" targetRef="SDNCAdapterPrep2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DCVFMR_rollbackSDNCRequestAssign") == "true" || execution.getVariable("DCVFMR_rollbackSDNCRequestActivate") == "true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="no" sourceRef="ExclusiveGateway_4" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:scriptTask id="SDNCAdapterPrep2" name="SDNCAdapter&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.prepSDNCAdapterRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="SDNCAdapterPrep2" targetRef="InvokeSDNCAdapterV1_2"/>

+    <bpmn2:callActivity id="InvokeSDNCAdapterV1_2" name="Invoke&#xD;&#xA;SDNCAdapterV1" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="sdncAdapterWorkflowRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="sdncAdapterResponse" target="DCVFMR_DoCreateVfModuleRollbackResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_5" name="Delete AAI VF Modlue?" default="SequenceFlow_21">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="no" sourceRef="ExclusiveGateway_5" targetRef="EndEvent_9"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="yes" sourceRef="ExclusiveGateway_5" targetRef="DeleteAAIVfModulePrep">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DCVFMR_rollbackCreateAAIVfModule") == "true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:callActivity id="InvokeDeleteAAIVfModule" name="Invoke&#xD;&#xA;DeleteAAIVfModule" calledElement="DeleteAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DeleteAAIVfModuleRequest" target="DeleteAAIVfModuleRequest"/>

+        <camunda:in source="isVidRequest" target="isVidRequest"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="InvokeDeleteAAIVfModule" targetRef="EndEvent_9"/>

+    <bpmn2:endEvent id="EndEvent_9">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="DeleteAAIVfModulePrep" name="DeleteAAIVfModule&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.prepDeleteAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="DeleteAAIVfModulePrep" targetRef="InvokeDeleteAAIVfModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="InvokeSDNCAdapterV1_2" targetRef="ScriptTask_1"/>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Validate SDNC Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.sdncValidateResponse(execution, DCVFMR_DoCreateVfModuleRollbackResponse)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ScriptTask_1" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Rollback Error Handling" triggeredByEvent="true">

+      <bpmn2:startEvent id="CatchExceptions" name="Catch Exceptions">

+        <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="CatchExceptions" targetRef="LogSaveWorkflowException"/>

+      <bpmn2:scriptTask id="LogSaveWorkflowException" name="Log and Save Workflow Exception" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.logWorkflowException(execution, 'DoCreateVfModuleRollback caught an event')
+dcvfmr.saveWorkflowException(execution, 'DCVFMR_CaughtWorkflowException1')]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="LogSaveWorkflowException" targetRef="EndEvent_1"/>

+    </bpmn2:subProcess>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="SubProcess_1">

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_86"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_2"/>

+    <bpmn2:scriptTask id="InitializeVariables" name="Initialize Variables" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dcvfmr = new DoCreateVfModuleRollback()
+dcvfmr.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="InitializeVariables" targetRef="ExclusiveGateway_1"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:message id="Message_1" name="DoCreateVfModuleRollbackRequest"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVfModuleRollback">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="13.0" y="100.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="31.0" y="141.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="InitializeVariables">

+        <dc:Bounds height="80.0" width="100.0" x="203.0" y="78.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="49.0" y="118.0"/>

+        <di:waypoint xsi:type="dc:Point" x="203.0" y="118.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="74.0" y="118.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="InvokePrepareUpdateAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="725.0" y="23.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_168" bpmnElement="PrepareUpdateAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="552.0" y="23.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_170" bpmnElement="VNFAdapterPrep">

+        <dc:Bounds height="80.0" width="100.0" x="104.0" y="269.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_13" bpmnElement="InvokeVNFAdapterRestV1">

+        <dc:Bounds height="80.0" width="100.0" x="262.0" y="269.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_170" targetElement="_BPMNShape_CallActivity_13">

+        <di:waypoint xsi:type="dc:Point" x="204.0" y="309.0"/>

+        <di:waypoint xsi:type="dc:Point" x="262.0" y="309.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="221.0" y="309.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_171" bpmnElement="UpdateAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="552.0" y="264.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_14" bpmnElement="InvokeUpdateAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="732.0" y="264.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_172" bpmnElement="SDNCAdapterPrep2">

+        <dc:Bounds height="80.0" width="100.0" x="74.0" y="504.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_15" bpmnElement="InvokeSDNCAdapterV1_2">

+        <dc:Bounds height="80.0" width="100.0" x="214.0" y="504.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_173" bpmnElement="DeleteAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="591.0" y="507.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_16" bpmnElement="InvokeDeleteAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="747.0" y="507.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ScriptTask_172" targetElement="_BPMNShape_CallActivity_15">

+        <di:waypoint xsi:type="dc:Point" x="174.0" y="544.0"/>

+        <di:waypoint xsi:type="dc:Point" x="214.0" y="544.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="191.0" y="544.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_ScriptTask_173" targetElement="_BPMNShape_CallActivity_16">

+        <di:waypoint xsi:type="dc:Point" x="691.0" y="547.0"/>

+        <di:waypoint xsi:type="dc:Point" x="747.0" y="547.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="704.0" y="547.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_169" bpmnElement="EndEvent_9">

+        <dc:Bounds height="36.0" width="36.0" x="929.0" y="615.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="947.0" y="656.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_CallActivity_16" targetElement="_BPMNShape_EndEvent_169">

+        <di:waypoint xsi:type="dc:Point" x="847.0" y="547.0"/>

+        <di:waypoint xsi:type="dc:Point" x="947.0" y="547.0"/>

+        <di:waypoint xsi:type="dc:Point" x="947.0" y="615.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="872.0" y="547.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_223" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="404.0" y="92.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="228.0" x="326.0" y="167.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ExclusiveGateway_223">

+        <di:waypoint xsi:type="dc:Point" x="303.0" y="118.0"/>

+        <di:waypoint xsi:type="dc:Point" x="383.0" y="118.0"/>

+        <di:waypoint xsi:type="dc:Point" x="383.0" y="117.0"/>

+        <di:waypoint xsi:type="dc:Point" x="404.0" y="117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="323.0" y="118.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_224" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="912.0" y="92.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="184.0" x="846.0" y="167.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ScriptTask_168">

+        <di:waypoint xsi:type="dc:Point" x="429.0" y="92.0"/>

+        <di:waypoint xsi:type="dc:Point" x="429.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="503.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="552.0" y="63.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="473.0" y="63.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_168" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="652.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="725.0" y="63.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_224">

+        <di:waypoint xsi:type="dc:Point" x="825.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="862.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="92.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="888.0" y="63.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ExclusiveGateway_224">

+        <di:waypoint xsi:type="dc:Point" x="454.0" y="117.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="676.0" y="117.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_ScriptTask_170">

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="142.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="29.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="29.0" y="308.0"/>

+        <di:waypoint xsi:type="dc:Point" x="104.0" y="309.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="571.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_225" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="414.0" y="343.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="195.0" x="342.0" y="398.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_CallActivity_13" targetElement="_BPMNShape_ExclusiveGateway_225">

+        <di:waypoint xsi:type="dc:Point" x="362.0" y="309.0"/>

+        <di:waypoint xsi:type="dc:Point" x="383.0" y="309.0"/>

+        <di:waypoint xsi:type="dc:Point" x="439.0" y="309.0"/>

+        <di:waypoint xsi:type="dc:Point" x="439.0" y="343.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="421.0" y="309.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_225" targetElement="_BPMNShape_ScriptTask_171">

+        <di:waypoint xsi:type="dc:Point" x="464.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="552.0" y="304.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="502.0" y="309.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_171" targetElement="_BPMNShape_CallActivity_14">

+        <di:waypoint xsi:type="dc:Point" x="652.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="732.0" y="304.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="660.0" y="304.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_226" bpmnElement="ExclusiveGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="912.0" y="343.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="155.0" x="860.0" y="398.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_ExclusiveGateway_225">

+        <di:waypoint xsi:type="dc:Point" x="962.0" y="117.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1025.0" y="117.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1025.0" y="212.0"/>

+        <di:waypoint xsi:type="dc:Point" x="19.0" y="212.0"/>

+        <di:waypoint xsi:type="dc:Point" x="19.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="414.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="792.0" y="187.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ExclusiveGateway_225" targetElement="_BPMNShape_ExclusiveGateway_226">

+        <di:waypoint xsi:type="dc:Point" x="464.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="678.0" y="368.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_CallActivity_14" targetElement="_BPMNShape_ExclusiveGateway_226">

+        <di:waypoint xsi:type="dc:Point" x="832.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="304.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="343.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="907.0" y="304.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_ScriptTask_172">

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="393.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="464.0"/>

+        <di:waypoint xsi:type="dc:Point" x="483.0" y="464.0"/>

+        <di:waypoint xsi:type="dc:Point" x="34.0" y="464.0"/>

+        <di:waypoint xsi:type="dc:Point" x="34.0" y="544.0"/>

+        <di:waypoint xsi:type="dc:Point" x="74.0" y="544.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="576.0" y="464.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_227" bpmnElement="ExclusiveGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="476.0" y="607.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="142.0" x="430.0" y="662.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_ExclusiveGateway_227">

+        <di:waypoint xsi:type="dc:Point" x="962.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1029.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1029.0" y="448.0"/>

+        <di:waypoint xsi:type="dc:Point" x="25.0" y="448.0"/>

+        <di:waypoint xsi:type="dc:Point" x="25.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="476.0" y="632.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="792.0" y="418.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ExclusiveGateway_227" targetElement="_BPMNShape_EndEvent_169">

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="781.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="781.0" y="633.0"/>

+        <di:waypoint xsi:type="dc:Point" x="929.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="762.0" y="632.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ExclusiveGateway_227" targetElement="_BPMNShape_ScriptTask_173">

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="551.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="551.0" y="576.0"/>

+        <di:waypoint xsi:type="dc:Point" x="551.0" y="547.0"/>

+        <di:waypoint xsi:type="dc:Point" x="591.0" y="547.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="561.0" y="553.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_255" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="348.0" y="504.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_CallActivity_15" targetElement="_BPMNShape_ScriptTask_255">

+        <di:waypoint xsi:type="dc:Point" x="314.0" y="544.0"/>

+        <di:waypoint xsi:type="dc:Point" x="348.0" y="544.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="330.0" y="544.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_255" targetElement="_BPMNShape_ExclusiveGateway_227">

+        <di:waypoint xsi:type="dc:Point" x="448.0" y="544.0"/>

+        <di:waypoint xsi:type="dc:Point" x="501.0" y="544.0"/>

+        <di:waypoint xsi:type="dc:Point" x="501.0" y="607.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="498.0" y="549.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_22" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="150.0" width="469.0" x="48.0" y="708.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_59" bpmnElement="CatchExceptions">

+        <dc:Bounds height="36.0" width="36.0" x="66.0" y="759.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="60.0" y="804.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_281" bpmnElement="LogSaveWorkflowException">

+        <dc:Bounds height="80.0" width="100.0" x="204.0" y="737.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_188" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="379.0" y="758.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_55" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="499.0" y="754.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_189" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="623.0" y="754.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="641.0" y="795.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_StartEvent_59" targetElement="_BPMNShape_ScriptTask_281">

+        <di:waypoint xsi:type="dc:Point" x="102.0" y="777.0"/>

+        <di:waypoint xsi:type="dc:Point" x="204.0" y="777.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="147.0" y="777.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_281" targetElement="_BPMNShape_EndEvent_188">

+        <di:waypoint xsi:type="dc:Point" x="304.0" y="777.0"/>

+        <di:waypoint xsi:type="dc:Point" x="341.0" y="777.0"/>

+        <di:waypoint xsi:type="dc:Point" x="341.0" y="776.0"/>

+        <di:waypoint xsi:type="dc:Point" x="379.0" y="776.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_BoundaryEvent_55" targetElement="_BPMNShape_EndEvent_189">

+        <di:waypoint xsi:type="dc:Point" x="535.0" y="772.0"/>

+        <di:waypoint xsi:type="dc:Point" x="623.0" y="772.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleVolumeV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleVolumeV1.bpmn
new file mode 100644
index 0000000..9477aac
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/DoCreateVfModuleVolumeV1.bpmn
@@ -0,0 +1,675 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_FhrCQG2BEeaNdqnn65BT4A" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DoCreateVfModuleVolumeV1" name="DoCreateVfModuleVolumeV1" isExecutable="true">

+    <bpmn2:scriptTask id="ScriptTask_preProcessRequest" name="Preprocess Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('preProcessRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ScriptTask_preProcessRequest" targetRef="ScriptTask_callRestAaiCloudRegion"/>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiCloudRegion" name="Call REST AAI Cloud Region" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTQueryAAICloudRegion', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="ScriptTask_callRestAaiCloudRegion" targetRef="ScriptTask_callRestAaiQueryGenericVnf"/>

+    <bpmn2:scriptTask id="ScriptTask_createVolGrpExistsException" name="Build Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_volGrpName404No</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('buildWorkflowException', execution, 2500, "Volume group $DCVFMODVOLV1_volumeGroupName already exists in the system.", isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ScriptTask_createVolGrpExistsException" targetRef="EndEvent_6"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_aaiReturnCode404" name="AAI Return Code is 404?" default="SequenceFlow_volGrpName404No">

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_volGrpName404Yes</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_volGrpName404No</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_volGrpName404Yes" name="Yes" sourceRef="ExclusiveGateway_aaiReturnCode404" targetRef="ScriptTask_callRestAaiCreateVolumeGrp">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{DCVFMODVOLV1_AaiReturnCode == '404'}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_volGrpName404No" name="No" sourceRef="ExclusiveGateway_aaiReturnCode404" targetRef="ScriptTask_createVolGrpExistsException"/>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiQueryGenericVnf" name="Call REST AAI Query Generic VNF" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTQueryAAIGenericVnf', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_callRestAaiQueryGenericVnf" targetRef="ScriptTask_callRestAaiQueryVolGrpName"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_catchAaiError" name="" attachedToRef="ScriptTask_callRestAaiQueryVolGrpName">

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_1"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="BoundaryEvent_catchAaiError" targetRef="ExclusiveGateway_aaiReturnCode404"/>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiQueryVolGrpName" name="Call REST AAI Query Volume Grp Name" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTQueryAAIVolGrpName', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_callRestAaiQueryVolGrpName" targetRef="ExclusiveGateway_aaiReturnCode404"/>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiCreateVolumeGrp" name="Call REST AAI Create Volume Group" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_volGrpName404Yes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTCreateAAIVolGrpName', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_callRestAaiCreateVolumeGrp" targetRef="ScriptTask_prepareVnfAdapterCreate"/>

+    <bpmn2:callActivity id="CallActivity_callVnfAdapterCreate" name="Call VNF Adapter Create" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFMODVOLV1_createVnfARequest" target="vnfAdapterRestV1Request"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DCVFMODVOLV1_createVnfAResponse"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="VNFREST_vnfAdapterStatusCode" target="DCVFMODVOLV1_createVnfAReturnCode"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="VNFREST_SuccessIndicator" target="VNFREST_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="CallActivity_callVnfAdapterCreate" targetRef="ExclusiveGateway_isVnfAdaptyerCallSuccess"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_5" name="" attachedToRef="ScriptTask_callRestAaiVolumeGrp">

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_5"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="BoundaryEvent_5" targetRef="ExclusiveGateway_isRollbakcEnabled1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_isVnfAdaptyerCallSuccess" name="Is VNF Adapter call success?" default="SequenceFlow_vnfAdapterFail">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_vnfAdapterFail</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_vnfAdapterSuccess</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_vnfAdapterFail" name="No" sourceRef="ExclusiveGateway_isVnfAdaptyerCallSuccess" targetRef="ExclusiveGateway_isRollbackEnabled2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_vnfAdapterSuccess" name="Yes" sourceRef="ExclusiveGateway_isVnfAdaptyerCallSuccess" targetRef="ScriptTask_callRestAaiRequeryVolGrpNm">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{VNFREST_SuccessIndicator == true}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiRequeryVolGrpNm" name="Call REST AAI Requery Volume Group Name" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_vnfAdapterSuccess</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTQueryAAIVolGrpName', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="ScriptTask_callRestAaiRequeryVolGrpNm" targetRef="ScriptTask_callRestAaiVolumeGrp"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_compensateCreateVolGrp" name="" attachedToRef="ScriptTask_callRestAaiCreateVolumeGrp">

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_2" waitForCompletion="true"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:scriptTask id="ScriptTask_prepareDbInfraRequest" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('setSuccessIndicator', execution, true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ScriptTask_prepareDbInfraRequest" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="ScriptTask_deleteVolumeGroup" name="Delete Volume Group" isForCompensation="true" scriptFormat="groovy">

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTDeleteAAIVolumeGroup', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="ScriptTask_callRestAaiVolumeGrp" name="Call REST AAI Update Volume Group" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('callRESTUpdateCreatedVolGrpName', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_callRestAaiVolumeGrp" targetRef="ScriptTask_prepareDbInfraRequest"/>

+    <bpmn2:endEvent id="EndEvent_1" name="End">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_prepareVnfAdapterCreate" name="Prepare VNF Adapter Create Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def doCreateVfModuleVolumeV1 = new DoCreateVfModuleVolumeV1()
+doCreateVfModuleVolumeV1.executeMethod('prepareVnfAdapterCreateRequest', execution, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_prepareVnfAdapterCreate" targetRef="CallActivity_callVnfAdapterCreate"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_compensateVnfAdapterCreate" name="" attachedToRef="CallActivity_callVnfAdapterCreate">

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_1" waitForCompletion="true"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_rollbackAaiCreateVolumeGroup" name="Rollback AAI Create Volume Group">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_rollbackAaiCreateVolumeGroup" activityRef="ScriptTask_callRestAaiCreateVolumeGrp" waitForCompletion="true"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="IntermediateThrowEvent_rollbackAaiCreateVolumeGroup" targetRef="EndEvent_4"/>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_rollbackVnfAdapterCreate" name="Rollback VNF Adapter Create">

+      <bpmn2:incoming>SequenceFlow_rollbackIsEnabled1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_3" activityRef="CallActivity_callVnfAdapterCreate" waitForCompletion="true"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="IntermediateThrowEvent_rollbackVnfAdapterCreate" targetRef="IntermediateThrowEvent_rollbackAaiCreateVolumeGroup"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_isRollbakcEnabled1" name="Is rollback enabled?" default="SequenceFlow_rollbackIsNotEnabled1">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_rollbackIsEnabled1</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_rollbackIsNotEnabled1</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_rollbackIsEnabled1" name="Yes" sourceRef="ExclusiveGateway_isRollbakcEnabled1" targetRef="IntermediateThrowEvent_rollbackVnfAdapterCreate">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{DCVFMODVOLV1_rollbackEnabled == true}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_rollbackIsNotEnabled1" name="No" sourceRef="ExclusiveGateway_isRollbakcEnabled1" targetRef="EndEvent_4"/>

+    <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_rollbackCreateVolGrpFromCallVnf" name="Rollback AAI Create Volume Group">

+      <bpmn2:incoming>SequenceFlow_rollbackIsEnabled2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:compensateEventDefinition id="CompensateEventDefinition_rollbackCreateVolGrpName1" activityRef="ScriptTask_callRestAaiCreateVolumeGrp" waitForCompletion="true"/>

+    </bpmn2:intermediateThrowEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="IntermediateThrowEvent_rollbackCreateVolGrpFromCallVnf" targetRef="EndEvent_5"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_isRollbackEnabled2" name="Is rollback enabled?" default="SequenceFlow_rollbackIsNotEnabled2">

+      <bpmn2:incoming>SequenceFlow_vnfAdapterFail</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_rollbackIsEnabled2</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_rollbackIsNotEnabled2</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_rollbackIsEnabled2" name="Yes" sourceRef="ExclusiveGateway_isRollbackEnabled2" targetRef="IntermediateThrowEvent_rollbackCreateVolGrpFromCallVnf">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{DCVFMODVOLV1_rollbackEnabled == true}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_rollbackIsNotEnabled2" name="No" sourceRef="ExclusiveGateway_isRollbackEnabled2" targetRef="EndEvent_5"/>

+    <bpmn2:startEvent id="StartEvent_doCreateVfModuleVolume" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_doCreateVfModuleVolume" targetRef="ScriptTask_preProcessRequest"/>

+    <bpmn2:callActivity id="CallActivity_callVnfAdapterCallback" name="Call VNF Adapter Rollback" isForCompensation="true" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="DCVFMODVOLV1_rollbackVnfARequest" target="vnfAdapterRestV1Request"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="CCINVOL_rollbackVnfAResponse"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+    </bpmn2:callActivity>

+    <bpmn2:subProcess id="SubProcess_catchTriggeredException" name="Catch Triggered MsoException" triggeredByEvent="true">

+      <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_rollbackAaiCreateVolume21" name="Rollback Create AAi Volume Group">

+        <bpmn2:incoming>SequenceFlow_rollbackEnabledYes91</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+        <bpmn2:compensateEventDefinition id="CompensateEventDefinition_rollbackdreateVolume21" activityRef="ScriptTask_callRestAaiCreateVolumeGrp" waitForCompletion="true"/>

+      </bpmn2:intermediateThrowEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="IntermediateThrowEvent_rollbackAaiCreateVolume21" targetRef="EndEvent_3"/>

+      <bpmn2:exclusiveGateway id="ExclusiveGateway_isRolbackEnabled90" name="Is Rollback Enabled?" default="SequenceFlow_rollbackNotEnabled92">

+        <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_rollbackEnabledYes91</bpmn2:outgoing>

+        <bpmn2:outgoing>SequenceFlow_rollbackNotEnabled92</bpmn2:outgoing>

+      </bpmn2:exclusiveGateway>

+      <bpmn2:sequenceFlow id="SequenceFlow_rollbackEnabledYes91" name="Yes" sourceRef="ExclusiveGateway_isRolbackEnabled90" targetRef="IntermediateThrowEvent_rollbackAaiCreateVolume21">

+        <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{DCVFMODVOLV1_rollbackEnabled == true}</bpmn2:conditionExpression>

+      </bpmn2:sequenceFlow>

+      <bpmn2:sequenceFlow id="SequenceFlow_rollbackNotEnabled92" name="No" sourceRef="ExclusiveGateway_isRolbackEnabled90" targetRef="EndEvent_3"/>

+      <bpmn2:startEvent id="StartEvent_catchAllErrors" name="Catch MsoException">

+        <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_4" errorRef="Error_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="StartEvent_catchAllErrors" targetRef="ExclusiveGateway_isRolbackEnabled90"/>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+        <bpmn2:incoming>SequenceFlow_rollbackNotEnabled92</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:boundaryEvent id="BoundaryEvent_catchError2" name="" attachedToRef="ScriptTask_callRestAaiRequeryVolGrpNm">

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_9"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="BoundaryEvent_catchError2" targetRef="ExclusiveGateway_isRollbakcEnabled1"/>

+    <bpmn2:endEvent id="EndEvent_4" name="End">

+      <bpmn2:incoming>SequenceFlow_rollbackIsNotEnabled1</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_5" name="End">

+      <bpmn2:incoming>SequenceFlow_rollbackIsNotEnabled2</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_6" name="End">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:textAnnotation id="TextAnnotation_2">

+      <bpmn2:text>WorkflowException should already have been created in VNF create subflow</bpmn2:text>

+    </bpmn2:textAnnotation>

+    <bpmn2:association id="Association_2" sourceRef="TextAnnotation_2" targetRef="EndEvent_5"/>

+    <bpmn2:association id="Association_3" sourceRef="BoundaryEvent_compensateCreateVolGrp" targetRef="ScriptTask_deleteVolumeGroup"/>

+    <bpmn2:association id="Association_1" sourceRef="BoundaryEvent_compensateVnfAdapterCreate" targetRef="CallActivity_callVnfAdapterCallback"/>

+    <bpmn2:textAnnotation id="TextAnnotation_1">

+      <bpmn2:text>Catch MsoException triggered  by Plugin. The vnfAdapterRest subflow is currently not directly throwing the BPMNError(MSOException.</bpmn2:text>

+    </bpmn2:textAnnotation>

+    <bpmn2:association id="Association_4" sourceRef="TextAnnotation_1" targetRef="SubProcess_catchTriggeredException"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_2" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVfModuleVolumeV1">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_65" bpmnElement="StartEvent_doCreateVfModuleVolume">

+        <dc:Bounds height="36.0" width="36.0" x="252.0" y="129.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="253.0" y="170.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_285" bpmnElement="ScriptTask_preProcessRequest">

+        <dc:Bounds height="80.0" width="100.0" x="420.0" y="107.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_287" bpmnElement="ScriptTask_callRestAaiCloudRegion">

+        <dc:Bounds height="80.0" width="100.0" x="588.0" y="106.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_288" bpmnElement="ScriptTask_callRestAaiQueryVolGrpName">

+        <dc:Bounds height="80.0" width="100.0" x="937.0" y="107.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_247" bpmnElement="ExclusiveGateway_aaiReturnCode404" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1118.0" y="121.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="128.0" x="1079.0" y="176.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_289" bpmnElement="ScriptTask_callRestAaiCreateVolumeGrp">

+        <dc:Bounds height="80.0" width="100.0" x="252.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_290" bpmnElement="ScriptTask_prepareVnfAdapterCreate">

+        <dc:Bounds height="80.0" width="100.0" x="420.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_32" bpmnElement="CallActivity_callVnfAdapterCreate">

+        <dc:Bounds height="80.0" width="100.0" x="576.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_292" bpmnElement="ScriptTask_callRestAaiRequeryVolGrpNm">

+        <dc:Bounds height="80.0" width="100.0" x="923.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_293" bpmnElement="ScriptTask_callRestAaiVolumeGrp">

+        <dc:Bounds height="80.0" width="100.0" x="1068.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_294" bpmnElement="ScriptTask_prepareDbInfraRequest">

+        <dc:Bounds height="80.0" width="100.0" x="1068.0" y="648.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_226" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1100.0" y="782.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1104.0" y="823.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_65" targetElement="_BPMNShape_ScriptTask_285">

+        <di:waypoint xsi:type="dc:Point" x="288.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="420.0" y="147.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="315.0" y="147.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_volGrpName404Yes" sourceElement="_BPMNShape_ExclusiveGateway_247" targetElement="_BPMNShape_ScriptTask_289">

+        <di:waypoint xsi:type="dc:Point" x="1143.0" y="171.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1144.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="811.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="301.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="302.0" y="396.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="573.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_289" targetElement="_BPMNShape_ScriptTask_290">

+        <di:waypoint xsi:type="dc:Point" x="352.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="420.0" y="436.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="383.0" y="544.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_290" targetElement="_BPMNShape_CallActivity_32">

+        <di:waypoint xsi:type="dc:Point" x="520.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="436.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="545.0" y="544.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_285" targetElement="_BPMNShape_ScriptTask_287">

+        <di:waypoint xsi:type="dc:Point" x="520.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="560.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="560.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="588.0" y="146.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="557.0" y="147.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ScriptTask_287" targetElement="_BPMNShape_ScriptTask_311">

+        <di:waypoint xsi:type="dc:Point" x="688.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="750.0" y="147.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="713.0" y="146.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_248" bpmnElement="ExclusiveGateway_isVnfAdaptyerCallSuccess" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="768.0" y="410.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="179.0" x="704.0" y="465.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_CallActivity_32" targetElement="_BPMNShape_ExclusiveGateway_248">

+        <di:waypoint xsi:type="dc:Point" x="676.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="715.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="715.0" y="435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="768.0" y="435.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="712.0" y="435.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_296" bpmnElement="ScriptTask_createVolGrpExistsException">

+        <dc:Bounds height="80.0" width="100.0" x="1248.0" y="106.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_296" targetElement="_BPMNShape_EndEvent_241">

+        <di:waypoint xsi:type="dc:Point" x="1348.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1414.0" y="146.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1373.0" y="146.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_BoundaryEvent_62" targetElement="_BPMNShape_ExclusiveGateway_247">

+        <di:waypoint xsi:type="dc:Point" x="1037.0" y="89.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1037.0" y="59.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1143.0" y="59.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1143.0" y="121.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1050.0" y="59.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_volGrpName404No" sourceElement="_BPMNShape_ExclusiveGateway_247" targetElement="_BPMNShape_ScriptTask_296">

+        <di:waypoint xsi:type="dc:Point" x="1168.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1248.0" y="146.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1196.0" y="146.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_vnfAdapterFail" sourceElement="_BPMNShape_ExclusiveGateway_248" targetElement="_BPMNShape_ExclusiveGateway_253">

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="538.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="786.0" y="495.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_vnfAdapterSuccess" sourceElement="_BPMNShape_ExclusiveGateway_248" targetElement="_BPMNShape_ScriptTask_292">

+        <di:waypoint xsi:type="dc:Point" x="818.0" y="435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="870.0" y="435.0"/>

+        <di:waypoint xsi:type="dc:Point" x="870.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="923.0" y="436.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="856.0" y="436.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ScriptTask_292" targetElement="_BPMNShape_ScriptTask_293">

+        <di:waypoint xsi:type="dc:Point" x="1023.0" y="436.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1068.0" y="436.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1043.0" y="436.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_TextAnnotation_3" bpmnElement="TextAnnotation_2">

+        <dc:Bounds height="73.0" width="152.0" x="573.0" y="759.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_2" bpmnElement="Association_2" sourceElement="_BPMNShape_TextAnnotation_3" targetElement="_BPMNShape_EndEvent_240">

+        <di:waypoint xsi:type="dc:Point" x="725.0" y="806.0"/>

+        <di:waypoint xsi:type="dc:Point" x="775.0" y="813.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_299" bpmnElement="ScriptTask_deleteVolumeGroup">

+        <dc:Bounds height="80.0" width="100.0" x="372.0" y="518.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_57" bpmnElement="BoundaryEvent_compensateCreateVolGrp">

+        <dc:Bounds height="36.0" width="36.0" x="334.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="349.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_3" bpmnElement="Association_3" sourceElement="_BPMNShape_BoundaryEvent_57" targetElement="_BPMNShape_ScriptTask_299">

+        <di:waypoint xsi:type="dc:Point" x="367.0" y="494.0"/>

+        <di:waypoint xsi:type="dc:Point" x="388.0" y="518.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_3" bpmnElement="IntermediateThrowEvent_rollbackAaiCreateVolumeGroup">

+        <dc:Bounds height="36.0" width="36.0" x="1370.0" y="555.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="210.0" x="1283.0" y="596.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_60" bpmnElement="BoundaryEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="1150.0" y="378.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1165.0" y="419.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_BoundaryEvent_60" targetElement="_BPMNShape_ExclusiveGateway_252">

+        <di:waypoint xsi:type="dc:Point" x="1168.0" y="378.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1168.0" y="347.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1364.0" y="347.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1193.0" y="387.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_IntermediateThrowEvent_3" targetElement="_BPMNShape_EndEvent_239">

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="591.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="717.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1383.0" y="715.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_35" bpmnElement="CallActivity_callVnfAdapterCallback">

+        <dc:Bounds height="80.0" width="100.0" x="537.0" y="518.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_61" bpmnElement="BoundaryEvent_compensateVnfAdapterCreate">

+        <dc:Bounds height="36.0" width="36.0" x="583.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="598.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_1" bpmnElement="Association_1" sourceElement="_BPMNShape_BoundaryEvent_61" targetElement="_BPMNShape_CallActivity_35">

+        <di:waypoint xsi:type="dc:Point" x="598.0" y="494.0"/>

+        <di:waypoint xsi:type="dc:Point" x="594.0" y="518.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_4" bpmnElement="IntermediateThrowEvent_rollbackVnfAdapterCreate">

+        <dc:Bounds height="36.0" width="36.0" x="1370.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="177.0" x="1300.0" y="499.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_IntermediateThrowEvent_4" targetElement="_BPMNShape_IntermediateThrowEvent_3">

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="494.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="555.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1385.0" y="534.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_293" targetElement="_BPMNShape_ScriptTask_294">

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="476.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1115.0" y="670.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_294" targetElement="_BPMNShape_EndEvent_226">

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="728.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="782.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1115.0" y="863.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_311" bpmnElement="ScriptTask_callRestAaiQueryGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="750.0" y="106.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_311" targetElement="_BPMNShape_ScriptTask_288">

+        <di:waypoint xsi:type="dc:Point" x="850.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="147.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="883.0" y="147.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_62" bpmnElement="BoundaryEvent_catchAaiError">

+        <dc:Bounds height="36.0" width="36.0" x="1019.0" y="89.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1034.0" y="130.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_288" targetElement="_BPMNShape_ExclusiveGateway_247">

+        <di:waypoint xsi:type="dc:Point" x="1037.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1077.0" y="147.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1077.0" y="146.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="146.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_5" bpmnElement="IntermediateThrowEvent_rollbackCreateVolGrpFromCallVnf">

+        <dc:Bounds height="36.0" width="36.0" x="775.0" y="648.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="210.0" x="818.0" y="656.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_IntermediateThrowEvent_5" targetElement="_BPMNShape_EndEvent_240">

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="684.0"/>

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="798.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="790.0" y="732.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_252" bpmnElement="ExclusiveGateway_isRollbakcEnabled1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1364.0" y="322.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="121.0" x="1329.0" y="377.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_rollbackIsEnabled1" sourceElement="_BPMNShape_ExclusiveGateway_252" targetElement="_BPMNShape_IntermediateThrowEvent_4">

+        <di:waypoint xsi:type="dc:Point" x="1389.0" y="372.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1389.0" y="412.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="412.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1388.0" y="458.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1385.0" y="433.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_rollbackIsNotEnabled1" sourceElement="_BPMNShape_ExclusiveGateway_252" targetElement="_BPMNShape_EndEvent_239">

+        <di:waypoint xsi:type="dc:Point" x="1414.0" y="347.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1524.0" y="347.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1524.0" y="550.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1524.0" y="735.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1406.0" y="735.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1513.0" y="392.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_253" bpmnElement="ExclusiveGateway_isRollbackEnabled2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="768.0" y="538.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="793.0" y="593.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_rollbackIsEnabled2" sourceElement="_BPMNShape_ExclusiveGateway_253" targetElement="_BPMNShape_IntermediateThrowEvent_5">

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="588.0"/>

+        <di:waypoint xsi:type="dc:Point" x="793.0" y="648.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_rollbackIsNotEnabled2" sourceElement="_BPMNShape_ExclusiveGateway_253" targetElement="_BPMNShape_EndEvent_240">

+        <di:waypoint xsi:type="dc:Point" x="818.0" y="563.0"/>

+        <di:waypoint xsi:type="dc:Point" x="906.0" y="563.0"/>

+        <di:waypoint xsi:type="dc:Point" x="906.0" y="815.0"/>

+        <di:waypoint xsi:type="dc:Point" x="811.0" y="816.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="768.0" y="695.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_2" bpmnElement="SubProcess_catchTriggeredException" isExpanded="true">

+        <dc:Bounds height="337.0" width="608.0" x="287.0" y="936.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_66" bpmnElement="StartEvent_catchAllErrors">

+        <dc:Bounds height="36.0" width="36.0" x="348.0" y="1112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="127.0" x="303.0" y="1153.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_6" bpmnElement="IntermediateThrowEvent_rollbackAaiCreateVolume21">

+        <dc:Bounds height="36.0" width="36.0" x="540.0" y="1008.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="210.0" x="453.0" y="1049.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_StartEvent_66" targetElement="_BPMNShape_ExclusiveGateway_256">

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="1130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="454.0" y="1130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="454.0" y="1129.0"/>

+        <di:waypoint xsi:type="dc:Point" x="532.0" y="1129.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="409.0" y="1130.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_IntermediateThrowEvent_6" targetElement="_BPMNShape_EndEvent_238">

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="1026.0"/>

+        <di:waypoint xsi:type="dc:Point" x="804.0" y="1026.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="729.0" y="1026.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_TextAnnotation_4" bpmnElement="TextAnnotation_1">

+        <dc:Bounds height="97.0" width="229.0" x="123.0" y="792.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_Association_4" bpmnElement="Association_4" sourceElement="_BPMNShape_TextAnnotation_4" targetElement="_BPMNShape_SubProcess_2">

+        <di:waypoint xsi:type="dc:Point" x="301.0" y="888.0"/>

+        <di:waypoint xsi:type="dc:Point" x="366.0" y="936.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_64" bpmnElement="BoundaryEvent_catchError2">

+        <dc:Bounds height="36.0" width="36.0" x="1005.0" y="378.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_BoundaryEvent_64" targetElement="_BPMNShape_ExclusiveGateway_252">

+        <di:waypoint xsi:type="dc:Point" x="1023.0" y="378.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1023.0" y="290.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1389.0" y="294.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1389.0" y="322.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1118.0" y="291.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_256" bpmnElement="ExclusiveGateway_isRolbackEnabled90" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="532.0" y="1104.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="128.0" x="493.0" y="1159.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_rollbackEnabledYes91" sourceElement="_BPMNShape_ExclusiveGateway_256" targetElement="_BPMNShape_IntermediateThrowEvent_6">

+        <di:waypoint xsi:type="dc:Point" x="557.0" y="1104.0"/>

+        <di:waypoint xsi:type="dc:Point" x="557.0" y="1074.0"/>

+        <di:waypoint xsi:type="dc:Point" x="558.0" y="1074.0"/>

+        <di:waypoint xsi:type="dc:Point" x="558.0" y="1044.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="564.0" y="1084.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_rollbackNotEnabled92" sourceElement="_BPMNShape_ExclusiveGateway_256" targetElement="_BPMNShape_EndEvent_238">

+        <di:waypoint xsi:type="dc:Point" x="582.0" y="1129.0"/>

+        <di:waypoint xsi:type="dc:Point" x="657.0" y="1129.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="1129.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="1044.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="636.0" y="1134.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_238" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="804.0" y="1008.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="822.0" y="1049.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_239" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1370.0" y="717.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1374.0" y="758.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_240" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="775.0" y="798.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="793.0" y="839.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_241" bpmnElement="EndEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1414.0" y="128.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1418.0" y="169.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/FalloutHandler.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/FalloutHandler.bpmn
new file mode 100644
index 0000000..e5856bb
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/FalloutHandler.bpmn
@@ -0,0 +1,1102 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_3SPHsLr9EeWak-hhutJWuQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="FalloutHandler" name="Fallout Handler" isExecutable="true">

+    <bpmn2:parallelGateway id="ParallelGateway_1">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ParallelGateway_1" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ParallelGateway_1" targetRef="ExclusiveGateway_6"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_16" name="source == OMX?" default="SequenceFlow_56">

+      <bpmn2:incoming>SequenceFlow_54</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_55</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_56</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_55" name="yes" sourceRef="ExclusiveGateway_16" targetRef="ServiceTask_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_source").equals("OMX")}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_56" name="no" sourceRef="ExclusiveGateway_16" targetRef="ServiceTask_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_9" name="CSI Notify Success?" default="SequenceFlow_42">

+      <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_41</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_42</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_41" name="" sourceRef="ExclusiveGateway_9" targetRef="ParallelGateway_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_notifyCSIResponseCode")==200}
+
+]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_42" name="" sourceRef="ExclusiveGateway_9" targetRef="ScriptTask_5"/>

+    <bpmn2:serviceTask id="ServiceTask_4" name="Notify CSI">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_csi_networkstatus_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[import com.att.bpm.scripts.*
+def notifyCSI = new FalloutHandler()
+return notifyCSI.notifyCSIPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_notifyCSIResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="FH_notifyCSIResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_55</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_40" name="" sourceRef="ServiceTask_4" targetRef="ExclusiveGateway_9"/>

+    <bpmn2:parallelGateway id="ParallelGateway_2">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_54</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ParallelGateway_2" targetRef="ScriptTask_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_54" name="" sourceRef="ParallelGateway_2" targetRef="ExclusiveGateway_16"/>

+    <bpmn2:exclusiveGateway id="ParallelGateway_3">

+      <bpmn2:incoming>SequenceFlow_41</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_45</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_62</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_62" name="" sourceRef="ParallelGateway_3" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_4">

+      <bpmn2:incoming>SequenceFlow_62</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_63</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_63" name="" sourceRef="ExclusiveGateway_4" targetRef="ParallelGateway_7"/>

+    <bpmn2:scriptTask id="ScriptTask_5" name="Handle CSI Notification Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_42</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_50</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_45</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[execution.setVariable("FH_success", false)
+execution.setVariable("FH_NOTIFY_STATUS", "FAILED")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_45" name="" sourceRef="ScriptTask_5" targetRef="ParallelGateway_3"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_5" name="Connect Fault" attachedToRef="ServiceTask_4">

+      <bpmn2:outgoing>SequenceFlow_50</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_91" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_50" name="" sourceRef="BoundaryEvent_5" targetRef="ScriptTask_5"/>

+    <bpmn2:serviceTask id="ServiceTask_1" name="Notify CCD">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url"><![CDATA[${execution.getVariable("FH_notification-url")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Content-Type">text/xml</camunda:entry>

+                <camunda:entry key="Authorization"/>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> NOTIFY CCD"
+import com.att.bpm.scripts.*
+def notifyCCD = new FalloutHandler()
+return notifyCCD.notifyCCDFailurePayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_notifyCCDResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="FH_notifyCCDStatusCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_56</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_52</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_52" name="" sourceRef="ServiceTask_1" targetRef="ExclusiveGateway_15"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_19">

+      <bpmn2:incoming>SequenceFlow_75</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_48</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="ExclusiveGateway_19" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_15" name="CCD Notify Success?" default="SequenceFlow_47">

+      <bpmn2:incoming>SequenceFlow_52</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_75</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_47</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_75" name="" sourceRef="ExclusiveGateway_15" targetRef="ExclusiveGateway_19">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_notifyCCDStatusCode")==204}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_47" name="" sourceRef="ExclusiveGateway_15" targetRef="ScriptTask_3"/>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Handle CCD Notification Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_47</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_51</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_48</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[execution.setVariable("FH_success", false)
+execution.setVariable("FH_NOTIFY_STATUS", "FAILED")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_48" name="" sourceRef="ScriptTask_3" targetRef="ExclusiveGateway_19"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_6" name="Connect Fault" attachedToRef="ServiceTask_1">

+      <bpmn2:outgoing>SequenceFlow_51</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_92" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_51" sourceRef="BoundaryEvent_6" targetRef="ScriptTask_3"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Notification URL exists?" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="yes" sourceRef="ExclusiveGateway_1" targetRef="ParallelGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_notification-url-Ok") ==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="no" sourceRef="ExclusiveGateway_1" targetRef="ParallelGateway_4"/>

+    <bpmn2:scriptTask id="ScriptTask_8" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def preProcessRequestData = new FalloutHandler()
+preProcessRequestData.preProcessRequest(execution)
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ScriptTask_8" targetRef="ParallelGateway_1"/>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_8"/>

+    <bpmn2:parallelGateway id="ParallelGateway_7">

+      <bpmn2:incoming>SequenceFlow_63</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="ParallelGateway_7" targetRef="ServiceTask_5"/>

+    <bpmn2:serviceTask id="ServiceTask_5" name="Update Request Status">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Request"
+import com.att.bpm.scripts.*
+def updateRequest= new FalloutHandler()
+return updateRequest.updateRequestPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="FH_updateRequestResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="ServiceTask_5" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_4" name="Connect Fault" attachedToRef="ServiceTask_5">

+      <bpmn2:outgoing>SequenceFlow_74</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_88" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:parallelGateway id="ParallelGateway_6">

+      <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ParallelGateway_6" targetRef="ScriptTask_2"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Post Process Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def falloutHandler = new FalloutHandler()
+falloutHandler.postProcessResponse(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_2" targetRef="EndEvent_6"/>

+    <bpmn2:exclusiveGateway id="ParallelGateway_4">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ParallelGateway_4" targetRef="ParallelGateway_6"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_6" default="SequenceFlow_26">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="ExclusiveGateway_6" targetRef="ServiceTask_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_request_id-Ok") ==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="ExclusiveGateway_6" targetRef="ServiceTask_2"/>

+    <bpmn2:serviceTask id="ServiceTask_3" name="Update Request Gamma">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Request Gamma"
+import com.att.bpm.scripts.*
+def updateRequestGamma= new FalloutHandler()
+return updateRequestGamma.updateRequestGammaPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_updateRequestGammaResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="FH_updateRequestGammaResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="ServiceTask_3" targetRef="ExclusiveGateway_7"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_2" name="Connect Fault" attachedToRef="ServiceTask_3">

+      <bpmn2:outgoing>SequenceFlow_72</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_89" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:exclusiveGateway id="ParallelGateway_5">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_36</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="ParallelGateway_5" targetRef="ParallelGateway_6"/>

+    <bpmn2:endEvent id="EndEvent_6" name="Normal End">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="Connect Fault" attachedToRef="ScriptTask_1">

+      <bpmn2:outgoing>SequenceFlow_71</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_87" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_71" name="" sourceRef="BoundaryEvent_1" targetRef="ScriptTask_9"/>

+    <bpmn2:serviceTask id="ScriptTask_1" name="Update Response Status to SENDING">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Response Status to pending ..."
+import com.att.bpm.scripts.*
+def updateResponseStatus= new FalloutHandler()
+return updateResponseStatus.updateResponseStatusPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_updateResponseStatusResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="FH_updateResponseStatusResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_43</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_43" name="" sourceRef="ScriptTask_1" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_72" name="" sourceRef="BoundaryEvent_2" targetRef="ScriptTask_6"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_74" name="" sourceRef="BoundaryEvent_4" targetRef="ScriptTask_10"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_5" name="Update Success?" default="SequenceFlow_68">

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_68</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_5" targetRef="ParallelGateway_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_68" name="" sourceRef="ExclusiveGateway_5" targetRef="ScriptTask_10"/>

+    <bpmn2:scriptTask id="ScriptTask_10" name="Build Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_68</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_74</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_77</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def falloutHandler = new FalloutHandler()
+falloutHandler.buildDBWorkflowException(execution, "FH_updateRequestResponseCode")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_77" name="" sourceRef="ScriptTask_10" targetRef="EndEvent_10"/>

+    <bpmn2:endEvent id="EndEvent_10">

+      <bpmn2:incoming>SequenceFlow_77</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_TerminateEventDefinition_10" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_12">

+      <bpmn2:incoming>SequenceFlow_78</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_TerminateEventDefinition_14" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_9" name="Build Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_71</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_78</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def falloutHandler = new FalloutHandler()
+falloutHandler.buildDBWorkflowException(execution, "FH_updateResponseStatusResponseCode")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="Update Success?" default="SequenceFlow_6">

+      <bpmn2:incoming>SequenceFlow_43</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_9"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ExclusiveGateway_2" targetRef="ParallelGateway_7">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateResponseStatusResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_78" name="" sourceRef="ScriptTask_9" targetRef="EndEvent_12"/>

+    <bpmn2:scriptTask id="ScriptTask_6" name="Build Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_72</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_79</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def falloutHandler = new FalloutHandler()
+falloutHandler.buildDBWorkflowException(execution, "FH_updateRequestGammaResponseCode")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_79" name="" sourceRef="ScriptTask_6" targetRef="EndEvent_13"/>

+    <bpmn2:endEvent id="EndEvent_13">

+      <bpmn2:incoming>SequenceFlow_79</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_TerminateEventDefinition_15" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_7" name="Update Success?" default="SequenceFlow_31">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="ExclusiveGateway_7" targetRef="ScriptTask_6"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ExclusiveGateway_7" targetRef="ParallelGateway_5">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateRequestGammaResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_7" name="Build Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_80</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_73</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def falloutHandler = new FalloutHandler()
+falloutHandler.buildDBWorkflowException(execution, "FH_updateRequestInfraResponseCode")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_73" name="" sourceRef="ScriptTask_7" targetRef="EndEvent_14"/>

+    <bpmn2:serviceTask id="ServiceTask_2" name="Update Request Infra">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">

+              <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Request Infra"
+import com.att.bpm.scripts.*
+def updateRequestInfra= new FalloutHandler()
+return updateRequestInfra.updateRequestInfraPayload(execution)]]></camunda:script>

+            </camunda:inputParameter>

+            <camunda:outputParameter name="FH_updateRequestInfraResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="FH_updateRequestInfraResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="" sourceRef="ServiceTask_2" targetRef="ExclusiveGateway_8"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_8" name="Update Success?" default="SequenceFlow_32">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_36</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="ExclusiveGateway_8" targetRef="ScriptTask_7"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_36" name="" sourceRef="ExclusiveGateway_8" targetRef="ParallelGateway_5">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateRequestInfraResponseCode")==200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:boundaryEvent id="BoundaryEvent_3" name="Connect Fault" attachedToRef="ServiceTask_2">

+      <bpmn2:outgoing>SequenceFlow_80</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_90" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_80" name="" sourceRef="BoundaryEvent_3" targetRef="ScriptTask_7"/>

+    <bpmn2:endEvent id="EndEvent_14">

+      <bpmn2:incoming>SequenceFlow_73</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_TerminateEventDefinition_16" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:subProcess id="SubProcess_1" name="Event Handler" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_4" name="Handle Event" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+execution.setVariable("FH_success", false)

+def falloutHandler = new FalloutHandler()

+

+// This does not (and cannot) throw exceptions

+falloutHandler.postProcessResponse(execution)

+

+// Clear any WorkflowException object that might be in the execution, but keep a copy in FH_WorkflowException

+def wfe = execution.getVariable("WorkflowException")

+execution.setVariable("WorkflowException", null)

+execution.setVariable("FH_WorkflowException", wfe)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_4" targetRef="EndEvent_2"/>

+      <bpmn2:endEvent id="EndEvent_2" name="Error End">

+        <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_8"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="StartEvent_2" targetRef="ScriptTask_4"/>

+    </bpmn2:subProcess>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>

+  <bpmn2:error id="Error_2" errorCode="java.lang.Exception" name="Java Lang Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="FalloutHandler">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_52" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="108.0" y="900.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="109.0" y="937.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_12" bpmnElement="ParallelGateway_1">

+        <dc:Bounds height="50.0" width="50.0" x="311.0" y="892.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="336.0" y="947.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_74" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="384.0" y="744.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="145.0" x="252.0" y="726.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ExclusiveGateway_74">

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="892.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="769.0"/>

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="769.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="404.0" y="849.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_13" bpmnElement="ParallelGateway_2">

+        <dc:Bounds height="50.0" width="50.0" x="482.0" y="438.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="507.0" y="493.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ExclusiveGateway_74" targetElement="_BPMNShape_ParallelGateway_13">

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="744.0"/>

+        <di:waypoint xsi:type="dc:Point" x="410.0" y="463.0"/>

+        <di:waypoint xsi:type="dc:Point" x="482.0" y="463.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="422.0" y="468.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_85" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="552.0" y="594.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ParallelGateway_13" targetElement="_BPMNShape_ScriptTask_85">

+        <di:waypoint xsi:type="dc:Point" x="507.0" y="488.0"/>

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="634.0"/>

+        <di:waypoint xsi:type="dc:Point" x="552.0" y="634.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="504.0" y="545.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_75" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="729.0" y="608.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="701.0" y="658.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_75" targetElement="_BPMNShape_ScriptTask_254">

+        <di:waypoint xsi:type="dc:Point" x="754.0" y="608.0"/>

+        <di:waypoint xsi:type="dc:Point" x="754.0" y="548.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="765.0" y="637.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_14" bpmnElement="ParallelGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1022.0" y="102.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1047.0" y="157.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_88" bpmnElement="ServiceTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="677.0" y="103.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_89" bpmnElement="ScriptTask_5">

+        <dc:Bounds height="80.0" width="100.0" x="898.0" y="30.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_89" bpmnElement="ServiceTask_5">

+        <dc:Bounds height="80.0" width="100.0" x="1216.0" y="424.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_78" bpmnElement="ExclusiveGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1397.0" y="438.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="1373.0" y="488.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ServiceTask_89" targetElement="_BPMNShape_ExclusiveGateway_78">

+        <di:waypoint xsi:type="dc:Point" x="1316.0" y="464.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1397.0" y="463.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1361.0" y="464.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_15" bpmnElement="ParallelGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1472.0" y="744.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1497.0" y="799.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_78" targetElement="_BPMNShape_ParallelGateway_15">

+        <di:waypoint xsi:type="dc:Point" x="1447.0" y="463.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="463.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="744.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1502.0" y="478.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_74" targetElement="_BPMNShape_ParallelGateway_15">

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="794.0"/>

+        <di:waypoint xsi:type="dc:Point" x="410.0" y="835.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="835.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1497.0" y="794.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="425.0" y="810.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_79" bpmnElement="ExclusiveGateway_6" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="381.0" y="1105.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="406.0" y="1160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ExclusiveGateway_79">

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="942.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="1130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="381.0" y="1130.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="381.0" y="1082.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ExclusiveGateway_79" targetElement="_BPMNShape_ServiceTask_90">

+        <di:waypoint xsi:type="dc:Point" x="406.0" y="1105.0"/>

+        <di:waypoint xsi:type="dc:Point" x="406.0" y="1039.0"/>

+        <di:waypoint xsi:type="dc:Point" x="461.0" y="1039.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="403.0" y="1081.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ExclusiveGateway_79" targetElement="_BPMNShape_ServiceTask_91">

+        <di:waypoint xsi:type="dc:Point" x="406.0" y="1155.0"/>

+        <di:waypoint xsi:type="dc:Point" x="406.0" y="1287.0"/>

+        <di:waypoint xsi:type="dc:Point" x="457.0" y="1287.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="403.0" y="1233.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_90" bpmnElement="ServiceTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="461.0" y="999.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_91" bpmnElement="ServiceTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="457.0" y="1247.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_80" bpmnElement="ExclusiveGateway_7" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="644.0" y="1013.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="615.0" y="1068.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ServiceTask_90" targetElement="_BPMNShape_ExclusiveGateway_80">

+        <di:waypoint xsi:type="dc:Point" x="561.0" y="1039.0"/>

+        <di:waypoint xsi:type="dc:Point" x="644.0" y="1038.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="598.0" y="1041.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_81" bpmnElement="ExclusiveGateway_8" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="643.0" y="1262.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="109.0" x="614.0" y="1317.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ServiceTask_91" targetElement="_BPMNShape_ExclusiveGateway_81">

+        <di:waypoint xsi:type="dc:Point" x="557.0" y="1287.0"/>

+        <di:waypoint xsi:type="dc:Point" x="595.0" y="1287.0"/>

+        <di:waypoint xsi:type="dc:Point" x="595.0" y="1286.0"/>

+        <di:waypoint xsi:type="dc:Point" x="643.0" y="1287.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="602.0" y="1288.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ExclusiveGateway_80" targetElement="_BPMNShape_ScriptTask_252">

+        <di:waypoint xsi:type="dc:Point" x="669.0" y="1013.0"/>

+        <di:waypoint xsi:type="dc:Point" x="670.0" y="961.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="673.0" y="988.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ExclusiveGateway_81" targetElement="_BPMNShape_ScriptTask_253">

+        <di:waypoint xsi:type="dc:Point" x="668.0" y="1262.0"/>

+        <di:waypoint xsi:type="dc:Point" x="668.0" y="1245.0"/>

+        <di:waypoint xsi:type="dc:Point" x="668.0" y="1214.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="675.0" y="1294.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_16" bpmnElement="ParallelGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="822.0" y="1105.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="847.0" y="1160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ExclusiveGateway_80" targetElement="_BPMNShape_ParallelGateway_16">

+        <di:waypoint xsi:type="dc:Point" x="694.0" y="1038.0"/>

+        <di:waypoint xsi:type="dc:Point" x="847.0" y="1038.0"/>

+        <di:waypoint xsi:type="dc:Point" x="847.0" y="1105.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="728.0" y="1029.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_36" sourceElement="_BPMNShape_ExclusiveGateway_81" targetElement="_BPMNShape_ParallelGateway_16">

+        <di:waypoint xsi:type="dc:Point" x="693.0" y="1287.0"/>

+        <di:waypoint xsi:type="dc:Point" x="847.0" y="1287.0"/>

+        <di:waypoint xsi:type="dc:Point" x="847.0" y="1155.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="844.0" y="1211.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_17" bpmnElement="ParallelGateway_6">

+        <dc:Bounds height="50.0" width="50.0" x="1535.0" y="878.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1560.0" y="933.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ParallelGateway_16" targetElement="_BPMNShape_ParallelGateway_17">

+        <di:waypoint xsi:type="dc:Point" x="872.0" y="1130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1560.0" y="1130.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1560.0" y="928.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="764.0" y="1134.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ParallelGateway_15" targetElement="_BPMNShape_ParallelGateway_17">

+        <di:waypoint xsi:type="dc:Point" x="1522.0" y="769.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1560.0" y="769.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1560.0" y="878.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1663.0" y="830.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_82" bpmnElement="ExclusiveGateway_9" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="827.0" y="117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="126.0" x="872.0" y="154.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ScriptTask_88" targetElement="_BPMNShape_ExclusiveGateway_82">

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="143.0"/>

+        <di:waypoint xsi:type="dc:Point" x="827.0" y="142.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="799.0" y="147.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_41" bpmnElement="SequenceFlow_41" sourceElement="_BPMNShape_ExclusiveGateway_82" targetElement="_BPMNShape_ParallelGateway_14">

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="167.0"/>

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="199.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="199.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="152.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="849.0" y="168.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_42" sourceElement="_BPMNShape_ExclusiveGateway_82" targetElement="_BPMNShape_ScriptTask_89">

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="117.0"/>

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="69.0"/>

+        <di:waypoint xsi:type="dc:Point" x="898.0" y="69.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="831.0" y="150.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_StartEvent_52" targetElement="_BPMNShape_ScriptTask_99">

+        <di:waypoint xsi:type="dc:Point" x="144.0" y="918.0"/>

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="918.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="159.0" y="918.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_99" bpmnElement="ScriptTask_8">

+        <dc:Bounds height="80.0" width="100.0" x="180.0" y="878.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_14" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="167.0" width="329.0" x="115.0" y="1396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_100" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="228.0" y="1440.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_127" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="372.0" y="1462.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="392.0" y="1506.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_100" targetElement="_BPMNShape_EndEvent_127">

+        <di:waypoint xsi:type="dc:Point" x="328.0" y="1480.0"/>

+        <di:waypoint xsi:type="dc:Point" x="372.0" y="1480.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="256.0" y="1491.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="144.0" y="1462.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="162.0" y="1506.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_StartEvent_54" targetElement="_BPMNShape_ScriptTask_100">

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="1480.0"/>

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="1480.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="201.0" y="1480.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_84" bpmnElement="ParallelGateway_7">

+        <dc:Bounds height="50.0" width="50.0" x="1129.0" y="438.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1154.0" y="493.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_75" targetElement="_BPMNShape_ExclusiveGateway_84">

+        <di:waypoint xsi:type="dc:Point" x="779.0" y="633.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="633.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="488.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1103.0" y="600.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ExclusiveGateway_84" targetElement="_BPMNShape_ServiceTask_89">

+        <di:waypoint xsi:type="dc:Point" x="1179.0" y="463.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1216.0" y="464.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1036.0" y="301.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_101" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="1632.0" y="864.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ParallelGateway_17" targetElement="_BPMNShape_ScriptTask_101">

+        <di:waypoint xsi:type="dc:Point" x="1585.0" y="903.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1632.0" y="904.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1752.0" y="904.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_99" targetElement="_BPMNShape_ParallelGateway_12">

+        <di:waypoint xsi:type="dc:Point" x="280.0" y="918.0"/>

+        <di:waypoint xsi:type="dc:Point" x="311.0" y="917.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="293.0" y="918.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_95" bpmnElement="ServiceTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="677.0" y="342.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_94" bpmnElement="ExclusiveGateway_15" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="827.0" y="356.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="132.0" x="859.0" y="403.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_52" bpmnElement="SequenceFlow_52" sourceElement="_BPMNShape_ServiceTask_95" targetElement="_BPMNShape_ExclusiveGateway_94">

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="382.0"/>

+        <di:waypoint xsi:type="dc:Point" x="827.0" y="381.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="800.0" y="401.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_95" bpmnElement="ExclusiveGateway_16" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="576.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="104.0" x="482.0" y="209.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_54" bpmnElement="SequenceFlow_54" sourceElement="_BPMNShape_ParallelGateway_13" targetElement="_BPMNShape_ExclusiveGateway_95">

+        <di:waypoint xsi:type="dc:Point" x="507.0" y="438.0"/>

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="243.0"/>

+        <di:waypoint xsi:type="dc:Point" x="576.0" y="243.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="503.0" y="390.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_55" bpmnElement="SequenceFlow_55" sourceElement="_BPMNShape_ExclusiveGateway_95" targetElement="_BPMNShape_ScriptTask_88">

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="143.0"/>

+        <di:waypoint xsi:type="dc:Point" x="677.0" y="143.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="629.0" y="117.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_56" bpmnElement="SequenceFlow_56" sourceElement="_BPMNShape_ExclusiveGateway_95" targetElement="_BPMNShape_ServiceTask_95">

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="268.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="327.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="677.0" y="382.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="626.0" y="356.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_102" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="898.0" y="282.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_98" bpmnElement="ExclusiveGateway_19" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1022.0" y="349.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1047.0" y="404.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_62" bpmnElement="SequenceFlow_62" sourceElement="_BPMNShape_ParallelGateway_14" targetElement="_BPMNShape_ExclusiveGateway_106">

+        <di:waypoint xsi:type="dc:Point" x="1072.0" y="127.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1106.0" y="127.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1106.0" y="211.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1084.0" y="168.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_63" bpmnElement="SequenceFlow_63" sourceElement="_BPMNShape_ExclusiveGateway_106" targetElement="_BPMNShape_ExclusiveGateway_84">

+        <di:waypoint xsi:type="dc:Point" x="1131.0" y="236.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="236.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1154.0" y="438.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1134.0" y="255.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_75" bpmnElement="SequenceFlow_75" sourceElement="_BPMNShape_ExclusiveGateway_94" targetElement="_BPMNShape_ExclusiveGateway_98">

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="406.0"/>

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="446.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="446.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="399.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="976.0" y="446.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_129" bpmnElement="EndEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1766.0" y="886.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1784.0" y="927.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_101" targetElement="_BPMNShape_EndEvent_129">

+        <di:waypoint xsi:type="dc:Point" x="1732.0" y="904.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1766.0" y="904.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1746.0" y="904.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_30" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="585.0" y="576.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="607.0" y="521.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_31" bpmnElement="BoundaryEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="494.0" y="981.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="522.0" y="937.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_32" bpmnElement="BoundaryEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="490.0" y="1229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="522.0" y="1191.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_33" bpmnElement="BoundaryEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1249.0" y="406.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="1272.0" y="353.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_106" bpmnElement="ExclusiveGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1081.0" y="211.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1106.0" y="266.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ExclusiveGateway_98" targetElement="_BPMNShape_ExclusiveGateway_106">

+        <di:waypoint xsi:type="dc:Point" x="1072.0" y="374.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1106.0" y="373.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1106.0" y="319.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1106.0" y="261.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1103.0" y="361.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_43" bpmnElement="SequenceFlow_43" sourceElement="_BPMNShape_ScriptTask_85" targetElement="_BPMNShape_ExclusiveGateway_75">

+        <di:waypoint xsi:type="dc:Point" x="652.0" y="634.0"/>

+        <di:waypoint xsi:type="dc:Point" x="683.0" y="634.0"/>

+        <di:waypoint xsi:type="dc:Point" x="683.0" y="633.0"/>

+        <di:waypoint xsi:type="dc:Point" x="729.0" y="633.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="694.0" y="682.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_45" bpmnElement="SequenceFlow_45" sourceElement="_BPMNShape_ScriptTask_89" targetElement="_BPMNShape_ParallelGateway_14">

+        <di:waypoint xsi:type="dc:Point" x="998.0" y="69.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="69.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="102.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1042.0" y="150.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_47" bpmnElement="SequenceFlow_47" sourceElement="_BPMNShape_ExclusiveGateway_94" targetElement="_BPMNShape_ScriptTask_102">

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="356.0"/>

+        <di:waypoint xsi:type="dc:Point" x="852.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="898.0" y="322.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="855.0" y="377.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_48" bpmnElement="SequenceFlow_48" sourceElement="_BPMNShape_ScriptTask_102" targetElement="_BPMNShape_ExclusiveGateway_98">

+        <di:waypoint xsi:type="dc:Point" x="998.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1047.0" y="349.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1033.0" y="377.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_48" bpmnElement="BoundaryEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="759.0" y="85.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="785.0" y="4.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_50" bpmnElement="SequenceFlow_50" sourceElement="_BPMNShape_BoundaryEvent_48" targetElement="_BPMNShape_ScriptTask_89">

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="85.0"/>

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="0.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="0.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="30.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_49" bpmnElement="BoundaryEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="759.0" y="324.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="785.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_51" bpmnElement="SequenceFlow_51" sourceElement="_BPMNShape_BoundaryEvent_49" targetElement="_BPMNShape_ScriptTask_102">

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="324.0"/>

+        <di:waypoint xsi:type="dc:Point" x="777.0" y="252.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="252.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="282.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="87.0" x="785.0" y="256.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_226" bpmnElement="EndEvent_10">

+        <dc:Bounds height="36.0" width="36.0" x="1506.0" y="324.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1577.0" y="373.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_68" bpmnElement="SequenceFlow_68" sourceElement="_BPMNShape_ExclusiveGateway_78" targetElement="_BPMNShape_ScriptTask_255">

+        <di:waypoint xsi:type="dc:Point" x="1422.0" y="438.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1423.0" y="382.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1428.0" y="401.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_228" bpmnElement="EndEvent_12">

+        <dc:Bounds height="36.0" width="36.0" x="835.0" y="490.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="853.0" y="531.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_71" bpmnElement="SequenceFlow_71" sourceElement="_BPMNShape_BoundaryEvent_30" targetElement="_BPMNShape_ScriptTask_254">

+        <di:waypoint xsi:type="dc:Point" x="603.0" y="576.0"/>

+        <di:waypoint xsi:type="dc:Point" x="603.0" y="508.0"/>

+        <di:waypoint xsi:type="dc:Point" x="704.0" y="508.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="600.0" y="604.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_229" bpmnElement="EndEvent_13">

+        <dc:Bounds height="36.0" width="36.0" x="762.0" y="903.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="780.0" y="944.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_72" bpmnElement="SequenceFlow_72" sourceElement="_BPMNShape_BoundaryEvent_31" targetElement="_BPMNShape_ScriptTask_252">

+        <di:waypoint xsi:type="dc:Point" x="512.0" y="981.0"/>

+        <di:waypoint xsi:type="dc:Point" x="512.0" y="921.0"/>

+        <di:waypoint xsi:type="dc:Point" x="620.0" y="921.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="509.0" y="963.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_230" bpmnElement="EndEvent_14">

+        <dc:Bounds height="36.0" width="36.0" x="759.0" y="1156.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="777.0" y="1197.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_73" bpmnElement="SequenceFlow_73" sourceElement="_BPMNShape_ScriptTask_253" targetElement="_BPMNShape_EndEvent_230">

+        <di:waypoint xsi:type="dc:Point" x="719.0" y="1174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="759.0" y="1174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="732.0" y="1184.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_252" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="620.0" y="881.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_253" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="80.0" width="100.0" x="619.0" y="1134.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_254" bpmnElement="ScriptTask_9">

+        <dc:Bounds height="80.0" width="100.0" x="704.0" y="468.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_255" bpmnElement="ScriptTask_10">

+        <dc:Bounds height="80.0" width="100.0" x="1373.0" y="302.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_74" bpmnElement="SequenceFlow_74" sourceElement="_BPMNShape_BoundaryEvent_33" targetElement="_BPMNShape_ScriptTask_255">

+        <di:waypoint xsi:type="dc:Point" x="1267.0" y="406.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1267.0" y="342.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1373.0" y="342.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1278.0" y="342.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_77" bpmnElement="SequenceFlow_77" sourceElement="_BPMNShape_ScriptTask_255" targetElement="_BPMNShape_EndEvent_226">

+        <di:waypoint xsi:type="dc:Point" x="1473.0" y="342.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1506.0" y="342.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1482.0" y="342.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_78" bpmnElement="SequenceFlow_78" sourceElement="_BPMNShape_ScriptTask_254" targetElement="_BPMNShape_EndEvent_228">

+        <di:waypoint xsi:type="dc:Point" x="804.0" y="508.0"/>

+        <di:waypoint xsi:type="dc:Point" x="835.0" y="508.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_79" bpmnElement="SequenceFlow_79" sourceElement="_BPMNShape_ScriptTask_252" targetElement="_BPMNShape_EndEvent_229">

+        <di:waypoint xsi:type="dc:Point" x="720.0" y="921.0"/>

+        <di:waypoint xsi:type="dc:Point" x="762.0" y="921.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="738.0" y="921.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_80" bpmnElement="SequenceFlow_80" sourceElement="_BPMNShape_BoundaryEvent_32" targetElement="_BPMNShape_ScriptTask_253">

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="1229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="1174.0"/>

+        <di:waypoint xsi:type="dc:Point" x="619.0" y="1174.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="533.0" y="1174.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteService.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteService.bpmn
new file mode 100644
index 0000000..52364a0
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteService.bpmn
@@ -0,0 +1,303 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_wAtdAGrUEeaJwpcpVN5gXw" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="GenericDeleteService" name="GenericDeleteService" isExecutable="true">

+    <bpmn2:subProcess id="bpmnExceptionHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="processError" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+ExceptionUtil ex = new ExceptionUtil()
+ex.processSubflowsBPMNException(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="processError" targetRef="EndEvent_3"/>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="StartEvent_2" targetRef="processError"/>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_25"/>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:subProcess id="javaExceptionSubProcess" name="Java Exception Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="processJavaError" name="Process Error">

+        <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+ExceptionUtil ex = new ExceptionUtil()
+ex.processSubflowsJavaException(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:startEvent id="StartEvent_3">

+        <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="StartEvent_3" targetRef="processJavaError"/>

+      <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="processJavaError" targetRef="EndEvent_2"/>

+    </bpmn2:subProcess>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="initialization"/>

+    <bpmn2:scriptTask id="initialization" name="Initialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericDeleteService deleteService  = new GenericDeleteService()

+deleteService.preProcessRequest(execution)

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="initialization" targetRef="resourceVersionCheck"/>

+    <bpmn2:exclusiveGateway id="resourceVersionCheck" name="Resource Version Provided?" default="yes">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>no</bpmn2:outgoing>

+      <bpmn2:outgoing>yes</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="no" name="No" sourceRef="resourceVersionCheck" targetRef="queryForResourceVersion">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENDS_resourceVersionProvidedFlag" ) == false}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="yes" name="Yes" sourceRef="resourceVersionCheck" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericDeleteService deleteService  = new GenericDeleteService()

+deleteService.setSuccessIndicator(execution, true)

+

+execution.setVariable("WorkflowResponse", " ")  //for junits

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="toggleSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>yes</bpmn2:incoming>

+      <bpmn2:incoming>siExistYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_2" targetRef="deleteServiceInstance"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_24"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="deleteServiceInstance" name="DELETE&#xD;&#xA;Service Instance" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericDeleteService deleteService  = new GenericDeleteService()

+deleteService.deleteServiceObject(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="deleteServiceInstance" targetRef="toggleSuccess"/>

+    <bpmn2:scriptTask id="queryForResourceVersion" name="Query SI Resource Version" scriptFormat="groovy">

+      <bpmn2:incoming>no</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericDeleteService deleteService  = new GenericDeleteService()

+deleteService.getServiceResourceVersion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="queryForResourceVersion" targetRef="siExistCheck"/>

+    <bpmn2:exclusiveGateway id="siExistCheck" name="Service Exist?">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>siExistYes</bpmn2:outgoing>

+      <bpmn2:outgoing>siExistNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="siExistYes" name="Yes" sourceRef="siExistCheck" targetRef="ExclusiveGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENDS_FoundIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="siExistNo" name="No" sourceRef="siExistCheck" targetRef="EndEvent_4"/>

+    <bpmn2:endEvent id="EndEvent_4">

+      <bpmn2:incoming>siExistNo</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_38"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericDeleteService">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_63" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="84.0" y="221.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="102.0" y="262.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_267" bpmnElement="initialization">

+        <dc:Bounds height="80.0" width="100.0" x="216.0" y="199.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_224" bpmnElement="resourceVersionCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="365.0" y="213.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="169.0" x="401.0" y="243.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_268" bpmnElement="queryForResourceVersion">

+        <dc:Bounds height="80.0" width="100.0" x="457.0" y="100.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_225" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="600.0" y="213.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="625.0" y="268.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_269" bpmnElement="deleteServiceInstance">

+        <dc:Bounds height="80.0" width="100.0" x="684.0" y="199.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_213" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1006.0" y="221.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1024.0" y="262.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_20" bpmnElement="bpmnExceptionHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="169.0" width="321.0" x="155.0" y="384.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_63" targetElement="_BPMNShape_ScriptTask_267">

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="239.0"/>

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="239.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="147.0" y="239.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_267" targetElement="_BPMNShape_ExclusiveGateway_224">

+        <di:waypoint xsi:type="dc:Point" x="316.0" y="239.0"/>

+        <di:waypoint xsi:type="dc:Point" x="365.0" y="238.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="217.0" y="238.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="no" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_ScriptTask_268">

+        <di:waypoint xsi:type="dc:Point" x="390.0" y="213.0"/>

+        <di:waypoint xsi:type="dc:Point" x="390.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="457.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="392.0" y="179.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_268" targetElement="_BPMNShape_ExclusiveGateway_241">

+        <di:waypoint xsi:type="dc:Point" x="557.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="600.0" y="139.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="492.0" y="140.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_225" targetElement="_BPMNShape_ScriptTask_269">

+        <di:waypoint xsi:type="dc:Point" x="650.0" y="238.0"/>

+        <di:waypoint xsi:type="dc:Point" x="684.0" y="239.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="556.0" y="239.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_269" targetElement="_BPMNShape_ScriptTask_272">

+        <di:waypoint xsi:type="dc:Point" x="784.0" y="239.0"/>

+        <di:waypoint xsi:type="dc:Point" x="826.0" y="239.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="778.0" y="239.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="yes" sourceElement="_BPMNShape_ExclusiveGateway_224" targetElement="_BPMNShape_ExclusiveGateway_225">

+        <di:waypoint xsi:type="dc:Point" x="390.0" y="263.0"/>

+        <di:waypoint xsi:type="dc:Point" x="390.0" y="310.0"/>

+        <di:waypoint xsi:type="dc:Point" x="517.0" y="310.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="310.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="263.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="389.0" y="278.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_23" bpmnElement="javaExceptionSubProcess" isExpanded="true">

+        <dc:Bounds height="157.0" width="306.0" x="163.0" y="576.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_65" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="180.0" y="451.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="198.0" y="492.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_66" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="192.0" y="637.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="210.0" y="678.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_216" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="408.0" y="637.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="426.0" y="678.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_217" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="420.0" y="451.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="438.0" y="492.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_270" bpmnElement="processError">

+        <dc:Bounds height="80.0" width="100.0" x="266.0" y="429.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_271" bpmnElement="processJavaError">

+        <dc:Bounds height="80.0" width="100.0" x="267.0" y="615.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_StartEvent_65" targetElement="_BPMNShape_ScriptTask_270">

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="469.0"/>

+        <di:waypoint xsi:type="dc:Point" x="266.0" y="469.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="232.0" y="469.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_270" targetElement="_BPMNShape_EndEvent_217">

+        <di:waypoint xsi:type="dc:Point" x="366.0" y="469.0"/>

+        <di:waypoint xsi:type="dc:Point" x="420.0" y="469.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="384.0" y="469.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_StartEvent_66" targetElement="_BPMNShape_ScriptTask_271">

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="655.0"/>

+        <di:waypoint xsi:type="dc:Point" x="267.0" y="655.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_271" targetElement="_BPMNShape_EndEvent_216">

+        <di:waypoint xsi:type="dc:Point" x="367.0" y="655.0"/>

+        <di:waypoint xsi:type="dc:Point" x="408.0" y="655.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_272" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="826.0" y="199.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_272" targetElement="_BPMNShape_EndEvent_213">

+        <di:waypoint xsi:type="dc:Point" x="926.0" y="239.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1006.0" y="239.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="828.0" y="239.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_241" bpmnElement="siExistCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="600.0" y="114.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="59.0" x="596.0" y="94.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="siExistYes" sourceElement="_BPMNShape_ExclusiveGateway_241" targetElement="_BPMNShape_ExclusiveGateway_225">

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="164.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="213.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="624.0" y="168.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="siExistNo" sourceElement="_BPMNShape_ExclusiveGateway_241" targetElement="_BPMNShape_EndEvent_241">

+        <di:waypoint xsi:type="dc:Point" x="650.0" y="139.0"/>

+        <di:waypoint xsi:type="dc:Point" x="733.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="664.0" y="140.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_241" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="733.0" y="122.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="751.0" y="163.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteVnf.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteVnf.bpmn
new file mode 100644
index 0000000..b20a26a
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericDeleteVnf.bpmn
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="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" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_oBLSkHqWEea26OhQB97uCQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="GenericDeleteVnf" name="GenericDeleteVnf" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:scriptTask id="initialization" name="Initialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericDeleteVnf deleteVnf= new GenericDeleteVnf()
+deleteVnf.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="initialization"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="initialization" targetRef="resourceVersionCheck"/>

+    <bpmn2:exclusiveGateway id="resourceVersionCheck" name="Resource Version Provided?" default="resourceVersionProvided">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>resourceVariableNotProvided</bpmn2:outgoing>

+      <bpmn2:outgoing>resourceVersionProvided</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="resourceVariableNotProvided" name="No" sourceRef="resourceVersionCheck" targetRef="queryForResourceVersion">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENDV_resourceVersionProvided") == false}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="resourceVersionProvided" name="Yes" sourceRef="resourceVersionCheck" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:subProcess id="bpmnExceptionHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="processBPMNError" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+ExceptionUtil ex = new ExceptionUtil()
+ex.processSubflowsBPMNException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="processBPMNError" targetRef="EndEvent_2"/>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="StartEvent_2" targetRef="processBPMNError"/>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_40"/>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="queryForResourceVersion" name="Query SI Resource Version" scriptFormat="groovy">

+      <bpmn2:incoming>resourceVariableNotProvided</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericDeleteVnf deleteVnf= new GenericDeleteVnf()

+deleteVnf.getVnfResourceVersion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="queryForResourceVersion" targetRef="vnfFoundCheck"/>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericDeleteVnf deleteVnf= new GenericDeleteVnf()
+deleteVnf.setSuccessIndicator(execution, true)
+
+execution.setVariable("WorkflowResponse", " ")  //for junits]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="toggleSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="deleteVnf" name="DELETE&#xD;&#xA;Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericDeleteVnf deleteVnf= new GenericDeleteVnf()
+deleteVnf.deleteVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="deleteVnf" targetRef="toggleSuccess"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>vnfFoundNo</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_41"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="vnfFoundCheck" name="Vnf Found?" default="vnfFoundNo">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>vnfFoundYes</bpmn2:outgoing>

+      <bpmn2:outgoing>vnfFoundNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="vnfFoundYes" name="Yes" sourceRef="vnfFoundCheck" targetRef="ExclusiveGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENDV_FoundIndicator") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="vnfFoundNo" name="No" sourceRef="vnfFoundCheck" targetRef="EndEvent_3"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>resourceVersionProvided</bpmn2:incoming>

+      <bpmn2:incoming>vnfFoundYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_2" targetRef="deleteVnf"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_39"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericDeleteVnf">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_78" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="74.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="92.0" y="257.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_310" bpmnElement="initialization">

+        <dc:Bounds height="80.0" width="100.0" x="192.0" y="194.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_78" targetElement="_BPMNShape_ScriptTask_310">

+        <di:waypoint xsi:type="dc:Point" x="110.0" y="234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="192.0" y="234.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_239" bpmnElement="resourceVersionCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="326.0" y="208.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="169.0" x="360.0" y="238.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_310" targetElement="_BPMNShape_ExclusiveGateway_239">

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="466.0"/>

+        <di:waypoint xsi:type="dc:Point" x="220.0" y="466.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="191.0" y="466.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_320" bpmnElement="queryForResourceVersion">

+        <dc:Bounds height="80.0" width="100.0" x="408.0" y="96.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_321" bpmnElement="deleteVnf">

+        <dc:Bounds height="80.0" width="100.0" x="658.0" y="194.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_240" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="562.0" y="208.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="587.0" y="263.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_322" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="802.0" y="194.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_240" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1001.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1019.0" y="257.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="resourceVariableNotProvided" sourceElement="_BPMNShape_ExclusiveGateway_239" targetElement="_BPMNShape_ScriptTask_320">

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="208.0"/>

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="136.0"/>

+        <di:waypoint xsi:type="dc:Point" x="408.0" y="136.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="354.0" y="165.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="resourceVersionProvided" sourceElement="_BPMNShape_ExclusiveGateway_239" targetElement="_BPMNShape_ExclusiveGateway_240">

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="258.0"/>

+        <di:waypoint xsi:type="dc:Point" x="351.0" y="312.0"/>

+        <di:waypoint xsi:type="dc:Point" x="459.0" y="312.0"/>

+        <di:waypoint xsi:type="dc:Point" x="587.0" y="312.0"/>

+        <di:waypoint xsi:type="dc:Point" x="587.0" y="258.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="351.0" y="276.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_320" targetElement="_BPMNShape_ExclusiveGateway_242">

+        <di:waypoint xsi:type="dc:Point" x="508.0" y="136.0"/>

+        <di:waypoint xsi:type="dc:Point" x="562.0" y="135.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="558.0" y="135.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_240" targetElement="_BPMNShape_ScriptTask_321">

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="233.0"/>

+        <di:waypoint xsi:type="dc:Point" x="658.0" y="234.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="633.0" y="234.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_321" targetElement="_BPMNShape_ScriptTask_322">

+        <di:waypoint xsi:type="dc:Point" x="758.0" y="234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="802.0" y="234.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="777.0" y="234.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_322" targetElement="_BPMNShape_EndEvent_240">

+        <di:waypoint xsi:type="dc:Point" x="902.0" y="234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1001.0" y="234.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="949.0" y="234.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_310" targetElement="_BPMNShape_ExclusiveGateway_239">

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="234.0"/>

+        <di:waypoint xsi:type="dc:Point" x="326.0" y="233.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="311.0" y="233.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_36" bpmnElement="bpmnExceptionHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="157.0" width="304.0" x="117.0" y="387.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_82" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="132.0" y="448.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="150.0" y="489.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_242" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="372.0" y="448.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="390.0" y="489.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_323" bpmnElement="processBPMNError">

+        <dc:Bounds height="80.0" width="100.0" x="220.0" y="426.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_323" targetElement="_BPMNShape_EndEvent_242">

+        <di:waypoint xsi:type="dc:Point" x="320.0" y="466.0"/>

+        <di:waypoint xsi:type="dc:Point" x="372.0" y="466.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="343.0" y="466.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_242" bpmnElement="vnfFoundCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="562.0" y="110.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="72.0" x="552.0" y="90.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_243" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="708.0" y="118.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="726.0" y="159.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="vnfFoundYes" sourceElement="_BPMNShape_ExclusiveGateway_242" targetElement="_BPMNShape_ExclusiveGateway_240">

+        <di:waypoint xsi:type="dc:Point" x="587.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="587.0" y="208.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="587.0" y="165.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="vnfFoundNo" sourceElement="_BPMNShape_ExclusiveGateway_242" targetElement="_BPMNShape_EndEvent_243">

+        <di:waypoint xsi:type="dc:Point" x="612.0" y="135.0"/>

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="136.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="637.0" y="135.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetService.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetService.bpmn
new file mode 100644
index 0000000..cbaec1a
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetService.bpmn
@@ -0,0 +1,321 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="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" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_D5VzAHElEeaJwpcpVN5gXw" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="GenericGetService" name="GenericGetService" isExecutable="true">

+    <bpmn2:scriptTask id="intialization" name="Initialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericGetService getService = new GenericGetService()

+getService.preProcessRequest(execution)

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="intialization" targetRef="getUrl"/>

+    <bpmn2:exclusiveGateway id="getUrl" name="Get Url?" default="getUrlNo">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>getUrlYes</bpmn2:outgoing>

+      <bpmn2:outgoing>getUrlNo</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="getUrlYes" name="Yes" sourceRef="getUrl" targetRef="obtain">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGS_obtainServiceInstanceUrl" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="getUrlNo" name="No" sourceRef="getUrl" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:subProcess id="bpmnExceptionHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="processBPMNException" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+ExceptionUtil ex = new ExceptionUtil()
+ex.processSubflowsBPMNException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="processBPMNException" targetRef="EndEvent_2"/>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="StartEvent_2" targetRef="processBPMNException"/>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericGetService getService = new GenericGetService()

+getService.setSuccessIndicator(execution, true)

+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="toggleSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="getServiceInstance" name="GET&#xD;&#xA;Service Instance" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericGetService getService = new GenericGetService()

+getService.getServiceObject(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="getServiceInstance" targetRef="toggleSuccess"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>getUrlNo</bpmn2:incoming>

+      <bpmn2:incoming>foundYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ExclusiveGateway_2" targetRef="getServiceInstance"/>

+    <bpmn2:scriptTask id="obtainServiceUrlById" name="Obtain Service URL Using&#xD;&#xA;Id" scriptFormat="groovy">

+      <bpmn2:incoming>obtainById</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericGetService getService = new GenericGetService()

+getService.obtainServiceInstanceUrlById(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="obtainServiceUrlById" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:scriptTask id="obtainServiceUrlByName" name="Obtain Service Url Using&#xD;&#xA;Name" scriptFormat="groovy">

+      <bpmn2:incoming>obtainByName</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+GenericGetService getService = new GenericGetService()

+getService.obtainServiceInstanceUrlByName(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="obtainServiceUrlByName" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:exclusiveGateway id="obtain" name="Obtain By?" default="obtainById">

+      <bpmn2:incoming>getUrlYes</bpmn2:incoming>

+      <bpmn2:outgoing>obtainById</bpmn2:outgoing>

+      <bpmn2:outgoing>obtainByName</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="obtainById" name="Id" sourceRef="obtain" targetRef="obtainServiceUrlById"/>

+    <bpmn2:sequenceFlow id="obtainByName" name="Name" sourceRef="obtain" targetRef="obtainServiceUrlByName">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGS_obtainServiceInstanceUrlByName" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="serviceFoundCheck" name="Service Exist?" default="notFound">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>foundYes</bpmn2:outgoing>

+      <bpmn2:outgoing>notFound</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="foundYes" name="Yes" sourceRef="serviceFoundCheck" targetRef="ExclusiveGateway_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGS_FoundIndicator" ) == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="notFound" name="No" sourceRef="serviceFoundCheck" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>notFound</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_29"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ExclusiveGateway_3" targetRef="serviceFoundCheck"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_26"/>

+    </bpmn2:endEvent>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="intialization"/>

+  </bpmn2:process>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericGetService">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_69" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="108.0" y="264.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="126.0" y="305.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_288" bpmnElement="intialization">

+        <dc:Bounds height="80.0" width="100.0" x="228.0" y="242.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_69" targetElement="_BPMNShape_ScriptTask_288">

+        <di:waypoint xsi:type="dc:Point" x="144.0" y="282.0"/>

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="282.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="177.0" y="282.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_227" bpmnElement="getUrl" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="372.0" y="256.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="70.0" x="408.0" y="286.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_288" targetElement="_BPMNShape_ExclusiveGateway_227">

+        <di:waypoint xsi:type="dc:Point" x="328.0" y="282.0"/>

+        <di:waypoint xsi:type="dc:Point" x="372.0" y="281.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="350.0" y="281.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_289" bpmnElement="obtainServiceUrlById">

+        <dc:Bounds height="80.0" width="100.0" x="528.0" y="197.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_228" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="738.0" y="256.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="763.0" y="311.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_290" bpmnElement="getServiceInstance">

+        <dc:Bounds height="80.0" width="100.0" x="820.0" y="242.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="getUrlYes" sourceElement="_BPMNShape_ExclusiveGateway_227" targetElement="_BPMNShape_ExclusiveGateway_233">

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="170.0"/>

+        <di:waypoint xsi:type="dc:Point" x="446.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="397.0" y="213.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_289" targetElement="_BPMNShape_ExclusiveGateway_234">

+        <di:waypoint xsi:type="dc:Point" x="628.0" y="237.0"/>

+        <di:waypoint xsi:type="dc:Point" x="671.0" y="237.0"/>

+        <di:waypoint xsi:type="dc:Point" x="671.0" y="195.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="668.0" y="221.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ExclusiveGateway_228" targetElement="_BPMNShape_ScriptTask_290">

+        <di:waypoint xsi:type="dc:Point" x="788.0" y="281.0"/>

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="282.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="798.0" y="281.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="getUrlNo" sourceElement="_BPMNShape_ExclusiveGateway_227" targetElement="_BPMNShape_ExclusiveGateway_228">

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="306.0"/>

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="370.0"/>

+        <di:waypoint xsi:type="dc:Point" x="763.0" y="370.0"/>

+        <di:waypoint xsi:type="dc:Point" x="763.0" y="306.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="400.0" y="324.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_291" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="960.0" y="242.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_290" targetElement="_BPMNShape_ScriptTask_291">

+        <di:waypoint xsi:type="dc:Point" x="920.0" y="282.0"/>

+        <di:waypoint xsi:type="dc:Point" x="960.0" y="282.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="937.0" y="282.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_223" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1133.0" y="264.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1151.0" y="305.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_291" targetElement="_BPMNShape_EndEvent_223">

+        <di:waypoint xsi:type="dc:Point" x="1060.0" y="282.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1133.0" y="282.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1100.0" y="282.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_25" bpmnElement="bpmnExceptionHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="169.0" width="325.0" x="152.0" y="468.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_70" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="176.0" y="535.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="194.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_224" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="416.0" y="535.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="434.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_292" bpmnElement="processBPMNException">

+        <dc:Bounds height="80.0" width="100.0" x="265.0" y="513.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_StartEvent_70" targetElement="_BPMNShape_ScriptTask_292">

+        <di:waypoint xsi:type="dc:Point" x="212.0" y="553.0"/>

+        <di:waypoint xsi:type="dc:Point" x="265.0" y="553.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="233.0" y="553.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_292" targetElement="_BPMNShape_EndEvent_224">

+        <di:waypoint xsi:type="dc:Point" x="365.0" y="553.0"/>

+        <di:waypoint xsi:type="dc:Point" x="416.0" y="553.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="385.0" y="553.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_301" bpmnElement="obtainServiceUrlByName">

+        <dc:Bounds height="80.0" width="100.0" x="528.0" y="59.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_233" bpmnElement="obtain" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="446.0" y="145.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="71.0" x="496.0" y="162.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_234" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="646.0" y="145.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="671.0" y="200.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="obtainById" sourceElement="_BPMNShape_ExclusiveGateway_233" targetElement="_BPMNShape_ScriptTask_289">

+        <di:waypoint xsi:type="dc:Point" x="471.0" y="195.0"/>

+        <di:waypoint xsi:type="dc:Point" x="471.0" y="236.0"/>

+        <di:waypoint xsi:type="dc:Point" x="528.0" y="237.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="16.0" x="476.0" y="207.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="obtainByName" sourceElement="_BPMNShape_ExclusiveGateway_233" targetElement="_BPMNShape_ScriptTask_301">

+        <di:waypoint xsi:type="dc:Point" x="471.0" y="145.0"/>

+        <di:waypoint xsi:type="dc:Point" x="471.0" y="99.0"/>

+        <di:waypoint xsi:type="dc:Point" x="528.0" y="99.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="40.0" x="471.0" y="115.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_301" targetElement="_BPMNShape_ExclusiveGateway_234">

+        <di:waypoint xsi:type="dc:Point" x="628.0" y="99.0"/>

+        <di:waypoint xsi:type="dc:Point" x="671.0" y="99.0"/>

+        <di:waypoint xsi:type="dc:Point" x="671.0" y="145.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="665.0" y="99.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_235" bpmnElement="serviceFoundCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="738.0" y="145.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="59.0" x="735.0" y="125.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ExclusiveGateway_234" targetElement="_BPMNShape_ExclusiveGateway_235">

+        <di:waypoint xsi:type="dc:Point" x="696.0" y="170.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="704.0" y="170.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="foundYes" sourceElement="_BPMNShape_ExclusiveGateway_235" targetElement="_BPMNShape_ExclusiveGateway_228">

+        <di:waypoint xsi:type="dc:Point" x="763.0" y="195.0"/>

+        <di:waypoint xsi:type="dc:Point" x="763.0" y="256.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="762.0" y="205.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="notFound" sourceElement="_BPMNShape_ExclusiveGateway_235" targetElement="_BPMNShape_EndEvent_229">

+        <di:waypoint xsi:type="dc:Point" x="788.0" y="170.0"/>

+        <di:waypoint xsi:type="dc:Point" x="877.0" y="171.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="798.0" y="170.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_229" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="877.0" y="153.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="895.0" y="194.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetVnf.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetVnf.bpmn
new file mode 100644
index 0000000..4fe0321
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericGetVnf.bpmn
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="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" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_eb5eEHR6EeaJwpcpVN5gXw" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="GenericGetVnf" name="GenericGetVnf" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:scriptTask id="intialization" name="Intialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericGetVnf genericGetVnf = new GenericGetVnf ()
+genericGetVnf.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="intialization"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="intialization" targetRef="vnfIdProvided"/>

+    <bpmn2:exclusiveGateway id="vnfIdProvided" name="Vnf Id Provided?" default="noVnfId">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>noVnfId</bpmn2:outgoing>

+      <bpmn2:outgoing>haveVnfId</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="noVnfId" name="No" sourceRef="vnfIdProvided" targetRef="getVnfByName"/>

+    <bpmn2:sequenceFlow id="haveVnfId" name="Yes" sourceRef="vnfIdProvided" targetRef="getGenericVnf">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("GENGV_getVnfByName") == false}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="getVnfByName" name="GET Vnf By Name" scriptFormat="groovy">

+      <bpmn2:incoming>noVnfId</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericGetVnf genericGetVnf = new GenericGetVnf()
+genericGetVnf.getVnfByName(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="getVnfByName" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ExclusiveGateway_2" targetRef="toggleSuccess"/>

+    <bpmn2:scriptTask id="getGenericVnf" name="GET Vnf By&#xD;&#xA;Id" scriptFormat="groovy">

+      <bpmn2:incoming>haveVnfId</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericGetVnf genericGetVnf = new GenericGetVnf()
+genericGetVnf.getVnfById(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="getGenericVnf" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:subProcess id="bpmnExceptionHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_31"/>

+      </bpmn2:endEvent>

+      <bpmn2:scriptTask id="proccessBPMNError" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+ExceptionUtil ex = new ExceptionUtil()
+ex.processSubflowsBPMNException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="proccessBPMNError" targetRef="EndEvent_3"/>

+      <bpmn2:startEvent id="catchMSOWorkflowException">

+        <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="catchMSOWorkflowException" targetRef="proccessBPMNError"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericGetVnf genericGetVnf = new GenericGetVnf()
+genericGetVnf.setSuccessIndicator(execution, true)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="toggleSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_28"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericGetVnf">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_71" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="110.0" y="271.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="128.0" y="312.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_295" bpmnElement="intialization">

+        <dc:Bounds height="80.0" width="100.0" x="228.0" y="249.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_230" bpmnElement="vnfIdProvided" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="372.0" y="263.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="99.0" x="419.0" y="292.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_71" targetElement="_BPMNShape_ScriptTask_295">

+        <di:waypoint xsi:type="dc:Point" x="146.0" y="289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="228.0" y="289.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_295" targetElement="_BPMNShape_ExclusiveGateway_230">

+        <di:waypoint xsi:type="dc:Point" x="328.0" y="289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="372.0" y="288.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="347.0" y="288.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_296" bpmnElement="getVnfByName">

+        <dc:Bounds height="80.0" width="100.0" x="456.0" y="156.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_231" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="600.0" y="263.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="625.0" y="318.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="noVnfId" sourceElement="_BPMNShape_ExclusiveGateway_230" targetElement="_BPMNShape_ScriptTask_296">

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="263.0"/>

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="196.0"/>

+        <di:waypoint xsi:type="dc:Point" x="456.0" y="196.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="399.0" y="219.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="haveVnfId" sourceElement="_BPMNShape_ExclusiveGateway_230" targetElement="_BPMNShape_ScriptTask_297">

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="313.0"/>

+        <di:waypoint xsi:type="dc:Point" x="397.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="456.0" y="368.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="396.0" y="328.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_297" bpmnElement="getGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="456.0" y="328.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_298" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="696.0" y="249.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_226" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="888.0" y="271.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="906.0" y="312.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_231" targetElement="_BPMNShape_ScriptTask_298">

+        <di:waypoint xsi:type="dc:Point" x="650.0" y="288.0"/>

+        <di:waypoint xsi:type="dc:Point" x="696.0" y="289.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="673.0" y="289.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_298" targetElement="_BPMNShape_EndEvent_226">

+        <di:waypoint xsi:type="dc:Point" x="796.0" y="289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="888.0" y="289.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="829.0" y="289.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_296" targetElement="_BPMNShape_ExclusiveGateway_231">

+        <di:waypoint xsi:type="dc:Point" x="556.0" y="196.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="196.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="263.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="622.0" y="205.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_297" targetElement="_BPMNShape_ExclusiveGateway_231">

+        <di:waypoint xsi:type="dc:Point" x="556.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="368.0"/>

+        <di:waypoint xsi:type="dc:Point" x="625.0" y="313.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="621.0" y="368.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_30" bpmnElement="bpmnExceptionHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="169.0" width="313.0" x="168.0" y="468.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_74" bpmnElement="catchMSOWorkflowException">

+        <dc:Bounds height="36.0" width="36.0" x="180.0" y="535.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="198.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_302" bpmnElement="proccessBPMNError">

+        <dc:Bounds height="80.0" width="100.0" x="275.0" y="513.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_231" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="432.0" y="535.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="450.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_StartEvent_74" targetElement="_BPMNShape_ScriptTask_302">

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="553.0"/>

+        <di:waypoint xsi:type="dc:Point" x="275.0" y="553.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="238.0" y="553.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_302" targetElement="_BPMNShape_EndEvent_231">

+        <di:waypoint xsi:type="dc:Point" x="375.0" y="553.0"/>

+        <di:waypoint xsi:type="dc:Point" x="432.0" y="553.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="402.0" y="553.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericPutVnf.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericPutVnf.bpmn
new file mode 100644
index 0000000..bcda933
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/GenericPutVnf.bpmn
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="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" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_ZkRI4HntEea26OhQB97uCQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="GenericPutVnf" name="GenericPutVnf" isExecutable="true">

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:scriptTask id="intialization" name="Intialization" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericPutVnf genericPutVnf = new GenericPutVnf()
+genericPutVnf.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="intialization"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="intialization" targetRef="putVnf"/>

+    <bpmn2:subProcess id="processBPMNExceptionSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_43"/>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_96"/>

+      </bpmn2:startEvent>

+      <bpmn2:scriptTask id="processBPMNException" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+

+ExceptionUtil ex = new ExceptionUtil()

+ex.processSubflowsBPMNException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="StartEvent_2" targetRef="processBPMNException"/>

+      <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="processBPMNException" targetRef="EndEvent_2"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="putVnf" name="PUT Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericPutVnf genericPutVnf = new GenericPutVnf()
+genericPutVnf.putVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="putVnf" targetRef="toggleSuccess"/>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+GenericPutVnf genericPutVnf = new GenericPutVnf()
+genericPutVnf.setSuccessIndicator(execution, true)
+
+execution.setVariable("WorkflowResponse", " ")  //for junits]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="toggleSuccess" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_42"/>

+    </bpmn2:endEvent>

+  </bpmn2:process>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericPutVnf">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_75" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="116.0" y="233.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="134.0" y="274.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_305" bpmnElement="intialization">

+        <dc:Bounds height="80.0" width="100.0" x="240.0" y="211.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_306" bpmnElement="putVnf">

+        <dc:Bounds height="80.0" width="100.0" x="384.0" y="211.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_307" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="528.0" y="211.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_233" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="732.0" y="233.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="750.0" y="274.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_75" targetElement="_BPMNShape_ScriptTask_305">

+        <di:waypoint xsi:type="dc:Point" x="152.0" y="251.0"/>

+        <di:waypoint xsi:type="dc:Point" x="240.0" y="251.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_305" targetElement="_BPMNShape_ScriptTask_306">

+        <di:waypoint xsi:type="dc:Point" x="340.0" y="251.0"/>

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="251.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="365.0" y="251.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_306" targetElement="_BPMNShape_ScriptTask_307">

+        <di:waypoint xsi:type="dc:Point" x="484.0" y="251.0"/>

+        <di:waypoint xsi:type="dc:Point" x="528.0" y="251.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="513.0" y="251.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_307" targetElement="_BPMNShape_EndEvent_233">

+        <di:waypoint xsi:type="dc:Point" x="628.0" y="251.0"/>

+        <di:waypoint xsi:type="dc:Point" x="732.0" y="251.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="678.0" y="251.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_31" bpmnElement="processBPMNExceptionSubProcess" isExpanded="true">

+        <dc:Bounds height="169.0" width="322.0" x="174.0" y="396.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_83" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="204.0" y="463.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="222.0" y="504.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_244" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="432.0" y="463.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="450.0" y="504.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_324" bpmnElement="processBPMNException">

+        <dc:Bounds height="80.0" width="100.0" x="286.0" y="441.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_StartEvent_83" targetElement="_BPMNShape_ScriptTask_324">

+        <di:waypoint xsi:type="dc:Point" x="240.0" y="481.0"/>

+        <di:waypoint xsi:type="dc:Point" x="286.0" y="481.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_324" targetElement="_BPMNShape_EndEvent_244">

+        <di:waypoint xsi:type="dc:Point" x="386.0" y="481.0"/>

+        <di:waypoint xsi:type="dc:Point" x="432.0" y="481.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/SDNCAdapterV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/SDNCAdapterV1.bpmn
new file mode 100644
index 0000000..fc9f0a1
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/SDNCAdapterV1.bpmn
@@ -0,0 +1,810 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_l2hJ8CccEeW3d--PaFJMbg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="sdncAdapter" name="SDNC Adapter" isExecutable="true">

+    <bpmn2:exclusiveGateway id="isResponseOK" name="is Response Ok?" default="badSynchronousResponse">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>badSynchronousResponse</bpmn2:outgoing>

+      <bpmn2:outgoing>goodSynchronousResponse</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="badSynchronousResponse" name="Bad synchronous response" sourceRef="isResponseOK" targetRef="setBadResponse"/>

+    <bpmn2:sequenceFlow id="goodSynchronousResponse" name="Good synchronous response" sourceRef="isResponseOK" targetRef="resetCallbackRequest">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("SDNCA_ResponseCode")=='200'}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="setBadResponse" name="Set Bad Response&#xD;&#xA;Exception" scriptFormat="groovy">

+      <bpmn2:incoming>badSynchronousResponse</bpmn2:incoming>

+      <bpmn2:outgoing>Exception</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+int responseCode = execution.getVariable("SDNCA_ResponseCode")
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 7000, "Could not communicate with the SDNC Adapter" )]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="Exception" name="Exception" sourceRef="setBadResponse" targetRef="badResponseEndFlow"/>

+    <bpmn2:serviceTask id="invokeSDNCAdapter" camunda:class="" name="Invoke SDNC Adapter">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_sdnc_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+                <camunda:entry key="Authorization">#{BasicAuthHeaderValue}</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">${sdncAdapterRequest}</camunda:inputParameter>

+            <camunda:outputParameter name="sdncAdapterWorkflowResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="SDNCA_ResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" sourceRef="invokeSDNCAdapter" targetRef="isResponseOK"/>

+    <bpmn2:endEvent id="badResponseEndFlow" name="Bad Response End Flow">

+      <bpmn2:incoming>Exception</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_77" errorRef="Error_3"/>

+    </bpmn2:endEvent>

+    <bpmn2:startEvent id="SDNCAdapter_Start" name="Incoming Message">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:messageEventDefinition id="_MessageEventDefinition_3" messageRef="Message_1"/>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" sourceRef="SDNCAdapter_Start" targetRef="processMessage"/>

+    <bpmn2:scriptTask id="processMessage" name="Process message" scriptFormat="groovy">

+      <bpmn2:extensionElements>

+        <camunda:inputOutput>

+          <camunda:inputParameter name="ScriptObject">

+            <camunda:map>

+              <camunda:entry key="MethodName">massageSDNCRequestScript</camunda:entry>

+              <camunda:entry key="Params"/>

+            </camunda:map>

+          </camunda:inputParameter>

+        </camunda:inputOutput>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" sourceRef="processMessage" targetRef="invokeSDNCAdapter"/>

+    <bpmn2:exclusiveGateway id="timeOutCheck">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:incoming>timeOut</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:scriptTask id="returnWorkflowResult" name="Return workflow result" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.postProcessResponse(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" sourceRef="returnWorkflowResult" targetRef="timeoutError"/>

+    <bpmn2:exclusiveGateway id="timeoutError" name="Did Timeout occur?" default="noTimeoutError">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>noTimeoutError</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="noTimeoutError" name="No Timeout" sourceRef="timeoutError" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="Timeout" sourceRef="timeoutError" targetRef="setTimeoutEx">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("asynchronousResponseTimeout")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:subProcess id="SubProcess" name="Wait for asynchronous message">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:endEvent id="eEndEventSubprocess" name="End Event Subprocess">

+        <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2"/>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent" name="Start Event">

+        <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_18" sourceRef="StartEvent" targetRef="IntermediateCatchEvent"/>

+      <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent" name="Catch Event">

+        <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+        <bpmn2:messageEventDefinition id="MessageEventDefinition_2" messageRef="Message_2"/>

+      </bpmn2:intermediateCatchEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_16" sourceRef="IntermediateCatchEvent" targetRef="eEndEventSubprocess"/>

+    </bpmn2:subProcess>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" sourceRef="SubProcess" targetRef="timeOutCheck"/>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="Boundary Event" attachedToRef="SubProcess">

+      <bpmn2:outgoing>timeOut</bpmn2:outgoing>

+      <bpmn2:timerEventDefinition id="TimerEventDefinition_1">

+        <bpmn2:timeDuration xsi:type="bpmn2:tFormalExpression">${sdncTimeoutValue}</bpmn2:timeDuration>

+      </bpmn2:timerEventDefinition>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="timeOut" name="Timed out" sourceRef="BoundaryEvent_1" targetRef="timeOutCheck"/>

+    <bpmn2:scriptTask id="setTimeoutEx" name="Set Timeout&#xD;&#xA;Exception" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>Error</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildWorkflowException(execution, 500, "SDNC Callback Timeout Error" )
+
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="Error" name="Error" sourceRef="setTimeoutEx" targetRef="endEventException"/>

+    <bpmn2:endEvent id="endEventException" name="Timeout Exception">

+      <bpmn2:incoming>Error</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="timeOutCheck" targetRef="returnWorkflowResult"/>

+    <bpmn2:scriptTask id="resetCallbackRequest" name="Reset callback request and set timer value" scriptFormat="groovy">

+      <bpmn2:incoming>goodSynchronousResponse</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.resetCallbackRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="resetCallbackRequest" targetRef="SubProcess"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Check final indicator" default="Done">

+      <bpmn2:incoming>noTimeoutError</bpmn2:incoming>

+      <bpmn2:outgoing>Done</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="Done" name="Done" sourceRef="ExclusiveGateway_1" targetRef="toggleSuccessIndicator"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="Not Done" sourceRef="ExclusiveGateway_1" targetRef="ParallelGateway_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("continueListening")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="toggleSuccessIndicator" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>Done</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.toggleSuccessIndicator(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="toggleSuccessIndicator" targetRef="endEventFlow"/>

+    <bpmn2:endEvent id="endEventFlow" name="End Event Flow">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="sdncAdapterResponse">${sdncAdapterWorkflowResponse}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:messageEventDefinition id="_MessageEventDefinition_6"/>

+    </bpmn2:endEvent>

+    <bpmn2:parallelGateway id="ParallelGateway_3">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ParallelGateway_3" targetRef="toggleSuccess"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="Continue listening for asynchronous message" sourceRef="ParallelGateway_3" targetRef="resetCallbackRequest"/>

+    <bpmn2:subProcess id="errorHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:startEvent id="catchErrors" name="Catch">

+        <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_78" errorRef="Error_3"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="catchErrors" targetRef="assignError"/>

+      <bpmn2:scriptTask id="assignError" name="Assign Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.assignError(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="assignError" targetRef="EndEvent_5"/>

+      <bpmn2:endEvent id="EndEvent_5">

+        <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_5">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('source').equals('CCD')}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Prepare CCD Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.prepareCCDMessage(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_3" targetRef="notifyCCD"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Prepare CSI Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.prepareCSIMessage(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_2" targetRef="notifyCSI"/>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Prepare DB Message" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.prepareDBMessage(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="ScriptTask_1" targetRef="notifyDB"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_4">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:serviceTask id="notifyDB" camunda:class="" name="Notify DB">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">${dbUpdateInterimStageCompletion}</camunda:inputParameter>

+            <camunda:outputParameter name="dbUpdateInterimStageCompletionResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="dbUpdateInterimStageCompletionResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:serviceTask id="notifyCCD" name="Notify CCD">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url"><![CDATA[${execution.getVariable("ccd-notification-url")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="Content-Type">text/xml</camunda:entry>

+                <camunda:entry key="Authorization"/>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("ccd-notification-payload")}]]></camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:outputParameter name="CCDResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>

+            <camunda:outputParameter name="CCDResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="notifyCCD" targetRef="EndEvent_4"/>

+    <bpmn2:serviceTask id="notifyCSI" camunda:class="" name="Notify CSI">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:connectorId>soap-http-connector</camunda:connectorId>

+          <camunda:inputOutput>

+            <camunda:inputParameter name="url">${URN_csi_networkstatus_endpoint}</camunda:inputParameter>

+            <camunda:inputParameter name="method">POST</camunda:inputParameter>

+            <camunda:inputParameter name="headers">

+              <camunda:map>

+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>

+              </camunda:map>

+            </camunda:inputParameter>

+            <camunda:inputParameter name="payload">${csiSendManagedNetworkNotificationRequest}</camunda:inputParameter>

+            <camunda:outputParameter name="csiSendManagedNetworkStatusNotificationResponse">${response}</camunda:outputParameter>

+            <camunda:outputParameter name="csiSendManagedNetworkStatusNotificationResponseCode">${statusCode}</camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:serviceTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="notifyCSI" targetRef="EndEvent_3"/>

+    <bpmn2:parallelGateway id="ParallelGateway_1">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+    </bpmn2:parallelGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="ParallelGateway_1" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ParallelGateway_1" targetRef="ScriptTask_1"/>

+    <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def sdnc= new SDNCAdapter()
+sdnc.toggleSuccessIndicator(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="toggleSuccess" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="Service Config Activate?" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="Yes" sourceRef="ExclusiveGateway_2" targetRef="ParallelGateway_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("serviceConfigActivate")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="No" sourceRef="ExclusiveGateway_2" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_2" name="" attachedToRef="notifyDB">

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_79" errorRef="Error_2"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:endEvent id="EndEvent_6">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="BoundaryEvent_2" targetRef="EndEvent_6"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="notifyDB" targetRef="EndEvent_2"/>

+  </bpmn2:process>

+  <bpmn2:message id="Message_1" name="sdncAdapterWorkflowRequest"/>

+  <bpmn2:message id="Message_2" name="sdncAdapterCallbackRequest"/>

+  <bpmn2:error id="Error_3" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:signal id="Signal_1" name="InterimStatus"/>

+  <bpmn2:error id="Error_2" errorCode="java.lang.Exception" name="Java Lang Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="sdncAdapter">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_33" bpmnElement="SDNCAdapter_Start">

+        <dc:Bounds height="36.0" width="36.0" x="111.0" y="161.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="115.0" x="72.0" y="202.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_62" bpmnElement="invokeSDNCAdapter">

+        <dc:Bounds height="80.0" width="100.0" x="342.0" y="139.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_29" bpmnElement="isResponseOK" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="519.0" y="153.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="106.0" x="569.0" y="182.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_64" bpmnElement="endEventFlow">

+        <dc:Bounds height="36.0" width="36.0" x="1560.0" y="366.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="96.0" x="1595.0" y="373.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_65" bpmnElement="badResponseEndFlow">

+        <dc:Bounds height="36.0" width="36.0" x="762.0" y="104.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="149.0" x="804.0" y="111.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="badSynchronousResponse" sourceElement="_BPMNShape_ExclusiveGateway_29" targetElement="_BPMNShape_ScriptTask_24">

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="153.0"/>

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="122.0"/>

+        <di:waypoint xsi:type="dc:Point" x="600.0" y="122.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="164.0" x="441.0" y="99.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_33" targetElement="_BPMNShape_ScriptTask_3">

+        <di:waypoint xsi:type="dc:Point" x="147.0" y="179.0"/>

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="179.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="171.0" y="179.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="goodSynchronousResponse" sourceElement="_BPMNShape_ExclusiveGateway_29" targetElement="_BPMNShape_ScriptTask_27">

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="203.0"/>

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="246.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="172.0" x="459.0" y="208.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_68" bpmnElement="returnWorkflowResult">

+        <dc:Bounds height="80.0" width="100.0" x="1104.0" y="237.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_3" bpmnElement="processMessage">

+        <dc:Bounds height="80.0" width="100.0" x="194.0" y="139.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_3" targetElement="_BPMNShape_ServiceTask_62">

+        <di:waypoint xsi:type="dc:Point" x="294.0" y="179.0"/>

+        <di:waypoint xsi:type="dc:Point" x="342.0" y="179.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="30.0" x="300.0" y="153.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ServiceTask_68" targetElement="_BPMNShape_ExclusiveGateway_53">

+        <di:waypoint xsi:type="dc:Point" x="1204.0" y="277.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1248.0" y="276.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="37.0" x="1211.0" y="251.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ServiceTask_62" targetElement="_BPMNShape_ExclusiveGateway_29">

+        <di:waypoint xsi:type="dc:Point" x="442.0" y="179.0"/>

+        <di:waypoint xsi:type="dc:Point" x="480.0" y="179.0"/>

+        <di:waypoint xsi:type="dc:Point" x="480.0" y="178.0"/>

+        <di:waypoint xsi:type="dc:Point" x="519.0" y="178.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="37.0" x="468.0" y="153.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_16" bpmnElement="IntermediateCatchEvent">

+        <dc:Bounds height="36.0" width="36.0" x="764.0" y="259.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="76.0" x="714.0" y="294.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_11" bpmnElement="SubProcess" isExpanded="true">

+        <dc:Bounds height="97.0" width="314.0" x="624.0" y="228.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_38" bpmnElement="StartEvent">

+        <dc:Bounds height="36.0" width="36.0" x="660.0" y="259.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="70.0" x="627.0" y="294.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_90" bpmnElement="eEndEventSubprocess">

+        <dc:Bounds height="36.0" width="36.0" x="865.0" y="259.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="138.0" x="805.0" y="294.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_SubProcess_11" targetElement="_BPMNShape_ExclusiveGateway_51">

+        <di:waypoint xsi:type="dc:Point" x="938.0" y="276.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="276.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="967.0" y="254.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_21" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="781.0" y="307.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="97.0" x="704.0" y="340.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_91" bpmnElement="endEventException">

+        <dc:Bounds height="36.0" width="36.0" x="1488.0" y="74.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="114.0" x="1523.0" y="81.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="timeOut" sourceElement="_BPMNShape_BoundaryEvent_21" targetElement="_BPMNShape_ExclusiveGateway_51">

+        <di:waypoint xsi:type="dc:Point" x="799.0" y="343.0"/>

+        <di:waypoint xsi:type="dc:Point" x="799.0" y="365.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1021.0" y="365.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1021.0" y="301.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="63.0" x="874.0" y="340.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_24" bpmnElement="setBadResponse">

+        <dc:Bounds height="80.0" width="100.0" x="600.0" y="82.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="Exception" sourceElement="_BPMNShape_ScriptTask_24" targetElement="_BPMNShape_EndEvent_65">

+        <di:waypoint xsi:type="dc:Point" x="700.0" y="122.0"/>

+        <di:waypoint xsi:type="dc:Point" x="762.0" y="122.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="64.0" x="699.0" y="99.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_25" bpmnElement="setTimeoutEx">

+        <dc:Bounds height="80.0" width="100.0" x="1299.0" y="52.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="Error" sourceElement="_BPMNShape_ScriptTask_25" targetElement="_BPMNShape_EndEvent_91">

+        <di:waypoint xsi:type="dc:Point" x="1399.0" y="92.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1488.0" y="92.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="1416.0" y="70.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_IntermediateCatchEvent_16" targetElement="_BPMNShape_EndEvent_90">

+        <di:waypoint xsi:type="dc:Point" x="800.0" y="277.0"/>

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="277.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="822.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_StartEvent_38" targetElement="_BPMNShape_IntermediateCatchEvent_16">

+        <di:waypoint xsi:type="dc:Point" x="696.0" y="277.0"/>

+        <di:waypoint xsi:type="dc:Point" x="764.0" y="277.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="718.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_51" bpmnElement="timeOutCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="996.0" y="251.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="81.0" x="982.0" y="228.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_53" bpmnElement="timeoutError" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1248.0" y="251.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="118.0" x="1300.0" y="266.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="noTimeoutError" sourceElement="_BPMNShape_ExclusiveGateway_53" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="301.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="359.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="72.0" x="1280.0" y="324.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ExclusiveGateway_53" targetElement="_BPMNShape_ScriptTask_25">

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="251.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="92.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1299.0" y="92.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="82.0" x="1280.0" y="168.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1248.0" y="359.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="123.0" x="1127.0" y="373.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="Done" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_247">

+        <di:waypoint xsi:type="dc:Point" x="1298.0" y="384.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1383.0" y="384.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="36.0" x="1316.0" y="384.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_27" bpmnElement="resetCallbackRequest">

+        <dc:Bounds height="80.0" width="100.0" x="494.0" y="246.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_27" targetElement="_BPMNShape_SubProcess_11">

+        <di:waypoint xsi:type="dc:Point" x="594.0" y="286.0"/>

+        <di:waypoint xsi:type="dc:Point" x="609.0" y="286.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="285.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="607.0" y="286.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ExclusiveGateway_51" targetElement="_BPMNShape_ServiceTask_68">

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="276.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1075.0" y="276.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1075.0" y="277.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1104.0" y="277.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ParallelGateway_14">

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="409.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="467.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="60.0" x="1273.0" y="423.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_55" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1248.0" y="663.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="145.0" x="1105.0" y="678.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_28" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="1173.0" y="858.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_55" targetElement="_BPMNShape_ParallelGateway_12">

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="713.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="770.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1273.0" y="720.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_89" bpmnElement="notifyCSI">

+        <dc:Bounds height="80.0" width="100.0" x="1173.0" y="984.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_28" targetElement="_BPMNShape_ServiceTask_89">

+        <di:waypoint xsi:type="dc:Point" x="1223.0" y="938.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1223.0" y="984.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1220.0" y="976.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_75" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="1345.0" y="858.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_12" bpmnElement="ParallelGateway_1">

+        <dc:Bounds height="50.0" width="50.0" x="1248.0" y="770.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1273.0" y="825.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ExclusiveGateway_100">

+        <di:waypoint xsi:type="dc:Point" x="1248.0" y="795.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1105.0" y="795.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1105.0" y="872.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1136.0" y="807.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ScriptTask_75">

+        <di:waypoint xsi:type="dc:Point" x="1298.0" y="795.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1394.0" y="795.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1395.0" y="858.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1376.0" y="807.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_90" bpmnElement="notifyDB">

+        <dc:Bounds height="80.0" width="100.0" x="1345.0" y="984.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_75" targetElement="_BPMNShape_ServiceTask_90">

+        <di:waypoint xsi:type="dc:Point" x="1395.0" y="938.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1395.0" y="984.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1392.0" y="967.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_14" bpmnElement="ParallelGateway_3">

+        <dc:Bounds height="50.0" width="50.0" x="1248.0" y="467.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1273.0" y="522.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ParallelGateway_14" targetElement="_BPMNShape_ScriptTask_255">

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="517.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1274.0" y="552.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1270.0" y="533.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_96" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1444.0" y="671.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1462.0" y="712.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_55" targetElement="_BPMNShape_EndEvent_96">

+        <di:waypoint xsi:type="dc:Point" x="1298.0" y="688.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1444.0" y="689.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1320.0" y="688.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_97" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1377.0" y="1117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1395.0" y="1158.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_98" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1205.0" y="1117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1223.0" y="1158.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ServiceTask_89" targetElement="_BPMNShape_EndEvent_98">

+        <di:waypoint xsi:type="dc:Point" x="1223.0" y="1064.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1223.0" y="1117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1220.0" y="1187.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ParallelGateway_14" targetElement="_BPMNShape_ScriptTask_27">

+        <di:waypoint xsi:type="dc:Point" x="1248.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="492.0"/>

+        <di:waypoint xsi:type="dc:Point" x="544.0" y="326.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="269.0" x="684.0" y="467.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_100" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1080.0" y="872.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1105.0" y="927.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ExclusiveGateway_100" targetElement="_BPMNShape_ScriptTask_28">

+        <di:waypoint xsi:type="dc:Point" x="1130.0" y="897.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1173.0" y="898.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1148.0" y="897.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_167" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="941.0" y="858.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_100" targetElement="_BPMNShape_ScriptTask_167">

+        <di:waypoint xsi:type="dc:Point" x="1080.0" y="897.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1041.0" y="898.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1042.0" y="898.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_96" bpmnElement="notifyCCD">

+        <dc:Bounds height="80.0" width="100.0" x="942.0" y="984.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_167" targetElement="_BPMNShape_ServiceTask_96">

+        <di:waypoint xsi:type="dc:Point" x="991.0" y="938.0"/>

+        <di:waypoint xsi:type="dc:Point" x="992.0" y="984.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="987.0" y="974.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_150" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="974.0" y="1117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="992.0" y="1158.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ServiceTask_96" targetElement="_BPMNShape_EndEvent_150">

+        <di:waypoint xsi:type="dc:Point" x="991.0" y="1064.0"/>

+        <di:waypoint xsi:type="dc:Point" x="991.0" y="1090.0"/>

+        <di:waypoint xsi:type="dc:Point" x="992.0" y="1117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="990.0" y="1103.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_247" bpmnElement="toggleSuccessIndicator">

+        <dc:Bounds height="80.0" width="100.0" x="1383.0" y="344.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_247" targetElement="_BPMNShape_EndEvent_64">

+        <di:waypoint xsi:type="dc:Point" x="1483.0" y="384.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1560.0" y="384.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1499.0" y="384.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_19" bpmnElement="errorHandlingSubProcess" isExpanded="true">

+        <dc:Bounds height="193.0" width="353.0" x="248.0" y="866.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_63" bpmnElement="catchErrors">

+        <dc:Bounds height="36.0" width="36.0" x="283.0" y="945.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="40.0" x="281.0" y="986.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_213" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="523.0" y="945.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="541.0" y="986.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_249" bpmnElement="assignError">

+        <dc:Bounds height="80.0" width="100.0" x="367.0" y="923.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_StartEvent_63" targetElement="_BPMNShape_ScriptTask_249">

+        <di:waypoint xsi:type="dc:Point" x="319.0" y="963.0"/>

+        <di:waypoint xsi:type="dc:Point" x="367.0" y="963.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="346.0" y="963.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ScriptTask_249" targetElement="_BPMNShape_EndEvent_213">

+        <di:waypoint xsi:type="dc:Point" x="467.0" y="963.0"/>

+        <di:waypoint xsi:type="dc:Point" x="523.0" y="963.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="492.0" y="963.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_255" bpmnElement="toggleSuccess">

+        <dc:Bounds height="80.0" width="100.0" x="1224.0" y="552.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ScriptTask_255" targetElement="_BPMNShape_ExclusiveGateway_55">

+        <di:waypoint xsi:type="dc:Point" x="1274.0" y="632.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1274.0" y="646.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="646.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1273.0" y="663.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1271.0" y="646.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_22" bpmnElement="BoundaryEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1427.0" y="1005.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_214" bpmnElement="EndEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1488.0" y="1005.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1506.0" y="1046.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_BoundaryEvent_22" targetElement="_BPMNShape_EndEvent_214">

+        <di:waypoint xsi:type="dc:Point" x="1463.0" y="1023.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1488.0" y="1023.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_40" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ServiceTask_90" targetElement="_BPMNShape_EndEvent_97">

+        <di:waypoint xsi:type="dc:Point" x="1395.0" y="1064.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1395.0" y="1117.0"/>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupName.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupName.bpmn
new file mode 100644
index 0000000..74e962f
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupName.bpmn
@@ -0,0 +1,229 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="ConfirmVolumeGroupName" name="ConfirmVolumeGroupName" isExecutable="true">

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_2">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVGN_queryVolumeGroupResponseCode") != 200 && execution.getVariable("CVGN_queryVolumeGroupResponseCode") != 404}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvgn= new ConfirmVolumeGroupName()
+cvgn.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="QueryAAIForVolumeGroupId" name="Query AAI for&#xD;&#xA;Volume Group Id" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvgn= new ConfirmVolumeGroupName()
+cvgn.queryAAIForVolumeGroupId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForVolumeGroupId" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:scriptTask id="InitializeVariables" name="Initialize Variables" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvgn= new ConfirmVolumeGroupName()
+cvgn.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="InitializeVariables" targetRef="QueryAAIForVolumeGroupId"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ExclusiveGateway_3" targetRef="CheckAAIQueryResult"/>

+    <bpmn2:scriptTask id="CheckAAIQueryResult" name="Check AAI Query Result" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvgn= new ConfirmVolumeGroupName()
+cvgn.checkAAIQueryResult(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="CheckAAIQueryResult" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:scriptTask id="VolumeGroupNotInName" name="Volume Group Not In Name" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvgn= new ConfirmVolumeGroupName()
+cvgn.handleVolumeGroupNameNoMatch(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_7">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVGN_volumeGroupNameMatches")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ExclusiveGateway_1" targetRef="VolumeGroupNotInName"/>

+    <bpmn2:endEvent id="EndEvent_4">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="WorkflowResponse"><![CDATA[<aetgt:CreateVfModuleResponse xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"                   xmlns:ns="http://ecomp.att.com/mso/workflow/schema/v1">
+ <ns:response>SUCCESS</ns:response>
+   </aetgt:CreateVfModuleResponse>]]></camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="VolumeGroupNotInName" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_70" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="InitializeVariables"/>

+  </bpmn2:process>

+  <bpmn2:message id="Message_1" name="ConfirmVolumeGroupNameRequest"/>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateAAIVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="43.0" y="199.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="61.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="InitializeVariables">

+        <dc:Bounds height="80.0" width="100.0" x="204.0" y="178.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="79.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="204.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="101.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_92" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="912.0" y="199.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="930.0" y="240.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="468.0" y="191.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="493.0" y="246.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="518.0" y="297.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="241.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="297.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="547.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="550.0" y="416.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="568.0" y="457.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="377.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="416.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="388.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForVolumeGroupId">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="178.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="304.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="324.0" y="218.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="468.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_162" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="720.0" y="415.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="738.0" y="456.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_177" bpmnElement="CheckAAIQueryResult">

+        <dc:Bounds height="80.0" width="100.0" x="624.0" y="177.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_177">

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="551.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="551.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="217.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="548.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_103" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="801.0" y="191.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="826.0" y="246.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_177" targetElement="_BPMNShape_ExclusiveGateway_103">

+        <di:waypoint xsi:type="dc:Point" x="724.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="762.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="762.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="801.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="735.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ExclusiveGateway_103" targetElement="_BPMNShape_EndEvent_92">

+        <di:waypoint xsi:type="dc:Point" x="851.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="869.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="869.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="912.0" y="217.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="855.0" y="216.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_179" bpmnElement="VolumeGroupNotInName">

+        <dc:Bounds height="80.0" width="100.0" x="688.0" y="297.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_103" targetElement="_BPMNShape_ScriptTask_179">

+        <di:waypoint xsi:type="dc:Point" x="826.0" y="241.0"/>

+        <di:waypoint xsi:type="dc:Point" x="826.0" y="269.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="269.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="297.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="822.0" y="269.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_179" targetElement="_BPMNShape_EndEvent_162">

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="377.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="415.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="735.0" y="391.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupTenant.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupTenant.bpmn
new file mode 100644
index 0000000..7da59a3
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/ConfirmVolumeGroupTenant.bpmn
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_jPy0EB7JEeaR94RQz1cKqQ" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="ConfirmVolumeGroupTenant" name="ConfirmVolumeGroupTenant" isExecutable="true">

+    <bpmn2:scriptTask id="queryAAIForVolumeGroup" name="Query AAI Volume Group" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ConfirmVolumeGroupTenant volume = new ConfirmVolumeGroupTenant()
+volume.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:exclusiveGateway id="tenantIdMatchCheck" name="Tenant Ids&#xD;&#xA;Match?" default="idsMatchNo">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>idsMatchNo</bpmn2:outgoing>

+      <bpmn2:outgoing>idsMatchYes</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="queryAAIForVolumeGroup" targetRef="tenantIdMatchCheck"/>

+    <bpmn2:sequenceFlow id="idsMatchNo" name="No" sourceRef="tenantIdMatchCheck" targetRef="assignError"/>

+    <bpmn2:sequenceFlow id="idsMatchYes" name="Yes" sourceRef="tenantIdMatchCheck" targetRef="tenantNamesMatchCheck">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("tenantIdsMatch")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="assignError" name="Assign Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>idsMatchNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ConfirmVolumeGroupTenant volume = new ConfirmVolumeGroupTenant()
+volume.assignWorkflowException(execution, "does not belong to your tenant")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="assignError" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_75" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="assignVolumeHeatId" name="Assign Volume Heat Id" scriptFormat="groovy">

+      <bpmn2:incoming>groupNamesMatchYes</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ConfirmVolumeGroupTenant volume = new ConfirmVolumeGroupTenant()
+volume.assignVolumeHeatId(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="assignVolumeHeatId" targetRef="EndEvent_1"/>

+    <bpmn2:scriptTask id="assignErrorNames" name="Assign Workflow Exception" scriptFormat="groovy">

+      <bpmn2:incoming>groupNamesMatchNo</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+ConfirmVolumeGroupTenant volume = new ConfirmVolumeGroupTenant()
+volume.assignWorkflowException(execution, "name does not match")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="assignErrorNames" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_74" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="tenantNamesMatchCheck" name="Volume Group&#xD;&#xA;Names Match?" default="groupNamesMatchNo">

+      <bpmn2:incoming>idsMatchYes</bpmn2:incoming>

+      <bpmn2:outgoing>groupNamesMatchNo</bpmn2:outgoing>

+      <bpmn2:outgoing>groupNamesMatchYes</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="groupNamesMatchNo" name="No" sourceRef="tenantNamesMatchCheck" targetRef="assignErrorNames"/>

+    <bpmn2:sequenceFlow id="groupNamesMatchYes" name="Yes" sourceRef="tenantNamesMatchCheck" targetRef="assignVolumeHeatId">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("groupNamesMatch")==true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="queryAAIForVolumeGroup"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="ConfirmVolumeGroupTenant">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_61" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="129.0" y="324.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="147.0" y="365.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_237" bpmnElement="queryAAIForVolumeGroup">

+        <dc:Bounds height="80.0" width="100.0" x="252.0" y="302.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_61" targetElement="_BPMNShape_ScriptTask_237">

+        <di:waypoint xsi:type="dc:Point" x="165.0" y="342.0"/>

+        <di:waypoint xsi:type="dc:Point" x="252.0" y="342.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="179.0" y="342.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_209" bpmnElement="tenantIdMatchCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="384.0" y="316.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="76.0" x="414.0" y="347.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_237" targetElement="_BPMNShape_ExclusiveGateway_209">

+        <di:waypoint xsi:type="dc:Point" x="352.0" y="342.0"/>

+        <di:waypoint xsi:type="dc:Point" x="368.0" y="342.0"/>

+        <di:waypoint xsi:type="dc:Point" x="368.0" y="341.0"/>

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="341.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_210" bpmnElement="tenantNamesMatchCheck" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="460.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="99.0" x="494.0" y="246.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_238" bpmnElement="assignError">

+        <dc:Bounds height="80.0" width="100.0" x="456.0" y="400.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="idsMatchNo" sourceElement="_BPMNShape_ExclusiveGateway_209" targetElement="_BPMNShape_ScriptTask_238">

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="366.0"/>

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="440.0"/>

+        <di:waypoint xsi:type="dc:Point" x="456.0" y="440.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="414.0" y="400.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="idsMatchYes" sourceElement="_BPMNShape_ExclusiveGateway_209" targetElement="_BPMNShape_ExclusiveGateway_210">

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="316.0"/>

+        <di:waypoint xsi:type="dc:Point" x="409.0" y="241.0"/>

+        <di:waypoint xsi:type="dc:Point" x="460.0" y="241.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="411.0" y="266.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_239" bpmnElement="assignErrorNames">

+        <dc:Bounds height="80.0" width="100.0" x="555.0" y="296.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="groupNamesMatchNo" sourceElement="_BPMNShape_ExclusiveGateway_210" targetElement="_BPMNShape_ScriptTask_239">

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="266.0"/>

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="336.0"/>

+        <di:waypoint xsi:type="dc:Point" x="555.0" y="336.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="491.0" y="296.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_240" bpmnElement="assignVolumeHeatId">

+        <dc:Bounds height="80.0" width="100.0" x="555.0" y="120.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="groupNamesMatchYes" sourceElement="_BPMNShape_ExclusiveGateway_210" targetElement="_BPMNShape_ScriptTask_240">

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="485.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="555.0" y="160.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="487.0" y="173.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_200" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="738.0" y="142.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="756.0" y="183.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_240" targetElement="_BPMNShape_EndEvent_200">

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="160.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="160.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="692.0" y="160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_210" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="709.0" y="318.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="727.0" y="359.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_211" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="605.0" y="422.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="623.0" y="463.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_238" targetElement="_BPMNShape_EndEvent_211">

+        <di:waypoint xsi:type="dc:Point" x="556.0" y="440.0"/>

+        <di:waypoint xsi:type="dc:Point" x="605.0" y="440.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="591.0" y="440.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_239" targetElement="_BPMNShape_EndEvent_210">

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="336.0"/>

+        <di:waypoint xsi:type="dc:Point" x="709.0" y="336.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="680.0" y="336.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModule.bpmn
new file mode 100644
index 0000000..8970324
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModule.bpmn
@@ -0,0 +1,519 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateAAIVfModule" name="CreateAAIVfModule" isExecutable="true">

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_5" default="SequenceFlow_7">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_5" targetRef="ExclusiveGateway_6">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{(execution.getVariable("CAAIVfMod_newGenericVnf") == true && execution.getVariable("CAAIVfMod_queryGenericVnfResponseCode") == 404) || execution.getVariable("CAAIVfMod_isBaseVfModule") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ExclusiveGateway_5" targetRef="ScriptTask_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_22">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="ProcessAAISearch"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CAAIVfMod_queryGenericVnfResponseCode") != 200 && execution.getVariable("CAAIVfMod_queryGenericVnfResponseCode") != 404}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ProcessAAISearch" name="Process AAI Generic Vnf Query" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.processAAIGenericVnfQuery(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ProcessAAISearch" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_5">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_7">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="Generic Vnf does not exist&#xD;&#xA; and Vnf Id != null or&#xD;&#xA;Generic Vnf does exist&#xD;&#xA;and Vnf Id == null" sourceRef="ExclusiveGateway_5" targetRef="CreateGenericVnfFailure">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{(execution.getVariable("CAAIVfMod_newGenericVnf") == false && execution.getVariable("CAAIVfMod_queryGenericVnfResponseCode") == 404) || (execution.getVariable("CAAIVfMod_newGenericVnf") == true && execution.getVariable("CAAIVfMod_queryGenericVnfResponseCode") == 200)}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="CreateGenericVnfFailure" name="Create Generic Vnf Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.handleCreateVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:endEvent id="EndEvent_8">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_69" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="CreateGenericVnfFailure" targetRef="EndEvent_8"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Parse For Add-on Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.parseForAddOnModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="ScriptTask_2" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:scriptTask id="ScriptTask_8" name="Create Add-on Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.createVfModule(execution, false)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ScriptTask_8" targetRef="ExclusiveGateway_7"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_4" default="SequenceFlow_33">

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="Vnf Module Exists&#xD;&#xA;" sourceRef="ExclusiveGateway_4" targetRef="CreateGenericVnfFailure"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="ExclusiveGateway_4" targetRef="ScriptTask_8">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CAAIVfMod_moduleExists") != true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="QueryAAIForGenericVnf" name="Query AAI for&#xD;&#xA;Generic Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.queryAAIForGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForGenericVnf" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:scriptTask id="InitializeVariables" name="Initialize Variables" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="InitializeVariables" targetRef="QueryAAIForGenericVnf"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="CreateVfModuleFailure" name="Create Vf Module Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.handleCreateVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="CreateVfModuleFailure" targetRef="EndEvent_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ExclusiveGateway_1" targetRef="CreateVfModuleFailure"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ExclusiveGateway_7" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CAAIVfMod_createVfModuleResponseCode") == 200 || execution.getVariable("CAAIVfMod_createVfModuleResponseCode") == 201}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" default="SequenceFlow_26">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="Create Generic Vnf&#xD;&#xA;Failure" sourceRef="ExclusiveGateway_2" targetRef="CreateGenericVnfFailure"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CAAIVfMod_createGenericVnfResponseCode") == 200 || execution.getVariable("CAAIVfMod_createGenericVnfResponseCode") == 201}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_6" name="Is VID Request?" default="SequenceFlow_9">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="No" sourceRef="ExclusiveGateway_6" targetRef="ScriptTask_3"/>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Create Generic Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.createGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="ScriptTask_3" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="Yes" sourceRef="ExclusiveGateway_6" targetRef="ScriptTask_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("isVidRequest") =="true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_4" name="Create Base Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.createVfModule(execution, true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ScriptTask_4" targetRef="ExclusiveGateway_7"/>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:messageEventDefinition id="_MessageEventDefinition_6" messageRef="Message_1"/>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="InitializeVariables"/>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Parse for Base Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def cvm = new CreateAAIVfModule()

+cvm.parseForBaseModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_1" targetRef="ExclusiveGateway_8"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_8" default="SequenceFlow_13">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ExclusiveGateway_8" targetRef="ScriptTask_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{(execution.getVariable("CAAIVfMod_baseModuleConflict") != true) && (execution.getVariable("CAAIVfMod_moduleExists") != true)}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="Base Module Conflict" sourceRef="ExclusiveGateway_8" targetRef="ExclusiveGateway_2"/>

+  </bpmn2:process>

+  <bpmn2:message id="Message_1" name="CreateAAIVfModuleRequest"/>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateAAIVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="65.0" y="240.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="83.0" y="281.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="InitializeVariables">

+        <dc:Bounds height="80.0" width="100.0" x="204.0" y="216.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="101.0" y="258.0"/>

+        <di:waypoint xsi:type="dc:Point" x="160.0" y="258.0"/>

+        <di:waypoint xsi:type="dc:Point" x="160.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="204.0" y="256.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="123.0" y="258.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="ProcessAAISearch">

+        <dc:Bounds height="80.0" width="100.0" x="518.0" y="117.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_50" bpmnElement="ExclusiveGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="630.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="655.0" y="285.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_52" bpmnElement="ExclusiveGateway_7" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1120.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1145.0" y="285.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_47" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="718.0" y="93.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_50" targetElement="_BPMNShape_ExclusiveGateway_225">

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="88.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="601.0" y="133.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_48" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="695.0" y="391.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_50" targetElement="_BPMNShape_ScriptTask_48">

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="280.0"/>

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="431.0"/>

+        <di:waypoint xsi:type="dc:Point" x="695.0" y="431.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="574.0" y="256.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1216.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1241.0" y="285.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1224.0" y="454.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1242.0" y="495.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_115" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="24.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_115" targetElement="_BPMNShape_ExclusiveGateway_52">

+        <di:waypoint xsi:type="dc:Point" x="1096.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1145.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1145.0" y="177.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1145.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1282.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="468.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="493.0" y="284.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="158.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="158.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="490.0" y="192.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="518.0" y="335.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="279.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="297.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="297.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="335.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="547.0" y="297.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_50">

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="197.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="630.0" y="255.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="250.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="550.0" y="454.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="568.0" y="495.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="415.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="454.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="426.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_158" bpmnElement="CreateGenericVnfFailure">

+        <dc:Bounds height="80.0" width="100.0" x="837.0" y="213.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_99" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="861.0" y="107.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="886.0" y="162.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_47" targetElement="_BPMNShape_ExclusiveGateway_99">

+        <di:waypoint xsi:type="dc:Point" x="818.0" y="133.0"/>

+        <di:waypoint xsi:type="dc:Point" x="839.0" y="133.0"/>

+        <di:waypoint xsi:type="dc:Point" x="839.0" y="132.0"/>

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="132.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="839.0" y="132.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ExclusiveGateway_99" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="157.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="213.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="126.0" x="899.0" y="162.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ExclusiveGateway_99" targetElement="_BPMNShape_ScriptTask_115">

+        <di:waypoint xsi:type="dc:Point" x="911.0" y="132.0"/>

+        <di:waypoint xsi:type="dc:Point" x="953.0" y="132.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1045.0" y="132.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1045.0" y="104.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="959.0" y="132.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ExclusiveGateway_50" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="680.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="758.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="758.0" y="253.0"/>

+        <di:waypoint xsi:type="dc:Point" x="837.0" y="253.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="170.0" x="669.0" y="260.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_161" bpmnElement="EndEvent_8">

+        <dc:Bounds height="36.0" width="36.0" x="987.0" y="235.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_158" targetElement="_BPMNShape_EndEvent_161">

+        <di:waypoint xsi:type="dc:Point" x="937.0" y="253.0"/>

+        <di:waypoint xsi:type="dc:Point" x="987.0" y="253.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_100" bpmnElement="ExclusiveGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="863.0" y="403.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="888.0" y="458.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ScriptTask_48" targetElement="_BPMNShape_ExclusiveGateway_100">

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="431.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="431.0"/>

+        <di:waypoint xsi:type="dc:Point" x="822.0" y="428.0"/>

+        <di:waypoint xsi:type="dc:Point" x="863.0" y="428.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="817.0" y="431.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ExclusiveGateway_100" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="888.0" y="403.0"/>

+        <di:waypoint xsi:type="dc:Point" x="888.0" y="348.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="348.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="293.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="122.0" x="889.0" y="344.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_159" bpmnElement="ScriptTask_8">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="389.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_ExclusiveGateway_100" targetElement="_BPMNShape_ScriptTask_159">

+        <di:waypoint xsi:type="dc:Point" x="913.0" y="428.0"/>

+        <di:waypoint xsi:type="dc:Point" x="954.0" y="428.0"/>

+        <di:waypoint xsi:type="dc:Point" x="954.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="429.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="955.0" y="429.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_159" targetElement="_BPMNShape_ExclusiveGateway_52">

+        <di:waypoint xsi:type="dc:Point" x="1096.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1108.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1145.0" y="429.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1145.0" y="280.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1142.0" y="379.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="216.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="304.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="256.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="324.0" y="256.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="254.0"/>

+        <di:waypoint xsi:type="dc:Point" x="468.0" y="254.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="255.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="CreateVfModuleFailure">

+        <dc:Bounds height="80.0" width="100.0" x="1192.0" y="324.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="1242.0" y="404.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1242.0" y="454.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="1241.0" y="280.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1241.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1242.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1242.0" y="324.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ExclusiveGateway_52" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="1170.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1216.0" y="255.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_164" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1316.0" y="237.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_164">

+        <di:waypoint xsi:type="dc:Point" x="1266.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1316.0" y="255.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_225" bpmnElement="ExclusiveGateway_6" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="630.0" y="38.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="100.0" x="617.0" y="18.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ExclusiveGateway_225" targetElement="_BPMNShape_ScriptTask_47">

+        <di:waypoint xsi:type="dc:Point" x="680.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="699.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="699.0" y="133.0"/>

+        <di:waypoint xsi:type="dc:Point" x="718.0" y="133.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="669.0" y="93.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ExclusiveGateway_225" targetElement="_BPMNShape_ScriptTask_162">

+        <di:waypoint xsi:type="dc:Point" x="680.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="702.0" y="63.0"/>

+        <di:waypoint xsi:type="dc:Point" x="702.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="724.0" y="40.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="688.0" y="54.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_226" bpmnElement="ExclusiveGateway_8" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="863.0" y="14.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="888.0" y="69.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_162" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="724.0" y="0.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_162" targetElement="_BPMNShape_ExclusiveGateway_226">

+        <di:waypoint xsi:type="dc:Point" x="824.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="843.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="843.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="863.0" y="39.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="840.0" y="39.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_ScriptTask_115">

+        <di:waypoint xsi:type="dc:Point" x="913.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="954.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="954.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="64.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="951.0" y="52.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_ExclusiveGateway_99">

+        <di:waypoint xsi:type="dc:Point" x="888.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="888.0" y="85.0"/>

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="85.0"/>

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="107.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="884.0" y="85.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModuleVolumeGroup.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModuleVolumeGroup.bpmn
new file mode 100644
index 0000000..bbdd21a
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/CreateAAIVfModuleVolumeGroup.bpmn
@@ -0,0 +1,224 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="CreateAAIVfModuleVolumeGroup" name="CreateAAIVfModuleVolumeGroup" isExecutable="true">

+    <bpmn2:documentation>This flow expects its incoming request to be in the variable 'CreateAAIVfModuleVolumeGroupRequest'.  This flow produces no output.</bpmn2:documentation>

+    <bpmn2:scriptTask id="QueryAAIForVfModule" name="Query AAI for VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfvg = new CreateAAIVfModuleVolumeGroup()
+cvfvg.getVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForVfModule" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="Handle AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfvg = new CreateAAIVfModuleVolumeGroup()
+cvfvg.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_4" name="TheEnd">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="CreateCustomerV1Response"><![CDATA[<aetgt:CreateCustomerResponse xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"                   xmlns:ns="http://ecomp.att.com/mso/workflow/schema/v1">
+ <ns:GlobalCustomerId>${CCV1_subscriberglobalid}</ns:GlobalCustomerId>
+   </aetgt:CreateCustomerResponse>]]></camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="UpdateVfModule">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('CAAIVfModVG_getVfModuleResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="AAI Query failure or&#xD;&#xA;VF Module not  found" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure"/>

+    <bpmn2:scriptTask id="HandleUpdateVfModuleFailure" name="Handle Update VF Module Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfvg = new CreateAAIVfModuleVolumeGroup()
+cvfvg.handleUpdateVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="HandleUpdateVfModuleFailure" targetRef="EndEvent_2"/>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="StartEvent_1" targetRef="ProcessReceivedRequest"/>

+    <bpmn2:scriptTask id="ProcessReceivedRequest" name="Process Received Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfvg = new CreateAAIVfModuleVolumeGroup()
+cvfvg.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ProcessReceivedRequest" targetRef="QueryAAIForVfModule"/>

+    <bpmn2:scriptTask id="UpdateVfModule" name="Update VF Module with Volume Group" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def cvfvg = new CreateAAIVfModuleVolumeGroup()
+cvfvg.updateVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="UpdateVfModule" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_4">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('CAAIVfModVG_updateVfModuleResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="Update VF Module Failure" sourceRef="ExclusiveGateway_1" targetRef="HandleUpdateVfModuleFailure"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateAAIVfModuleVolumeGroup">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="60.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="61.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="ProcessReceivedRequest">

+        <dc:Bounds height="80.0" width="100.0" x="168.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="UpdateVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="672.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_92" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1016.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="1009.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="841.0" y="204.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="866.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_92">

+        <di:waypoint xsi:type="dc:Point" x="891.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1016.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="929.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="848.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="866.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="493.0" y="204.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="518.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="543.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="607.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="607.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="672.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="558.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="468.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="204.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="130.0" x="528.0" y="152.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="500.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="518.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="515.0" y="49.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="268.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="288.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="HandleUpdateVfModuleFailure">

+        <dc:Bounds height="80.0" width="100.0" x="816.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="863.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="772.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="797.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="797.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="841.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="801.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="204.0"/>

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="172.0"/>

+        <di:waypoint xsi:type="dc:Point" x="867.0" y="172.0"/>

+        <di:waypoint xsi:type="dc:Point" x="867.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="157.0" x="883.0" y="158.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="96.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="148.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DeleteAAIVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DeleteAAIVfModule.bpmn
new file mode 100644
index 0000000..d043619
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DeleteAAIVfModule.bpmn
@@ -0,0 +1,482 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DeleteAAIVfModule" name="DeleteAAIVfModule" isExecutable="true">

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_5" default="SequenceFlow_8">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ExclusiveGateway_5" targetRef="DeleteVfModule">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DAAIVfMod_moduleExists") == true &&  (execution.getVariable("DAAIVfMod_isBaseModule") == false || (execution.getVariable("DAAIVfMod_isBaseModule") == true && execution.getVariable("DAAIVfMod_isLastModule") == true ))}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_22">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="ParseForAddonModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DAAIVfMod_queryGenericVnfResponseCode") != 200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ParseForAddonModule" name="Parse For Vf Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.parseForVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ParseForAddonModule" targetRef="ExclusiveGateway_5"/>

+    <bpmn2:scriptTask id="DeleteVfModule" name="Delete Vf Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_20</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.deleteVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_20" name="" sourceRef="DeleteVfModule" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" default="SequenceFlow_26">

+      <bpmn2:incoming>SequenceFlow_20</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="Delete Vf Module&#xD;&#xA;Failure" sourceRef="ExclusiveGateway_2" targetRef="DeleteVfModuleFailure"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="ExclusiveGateway_2" targetRef="ExclusiveGateway_6">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{(execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 200 || execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 204) && execution.getVariable("DAAIVfMod_isLastModule") == true}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="DeleteVfModuleFailure" name="Delete Vf Module Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.handleDeleteVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="DeleteVfModuleFailure" targetRef="EndEvent_8"/>

+    <bpmn2:scriptTask id="QueryAAIForGenericVnf" name="Query AAI for&#xD;&#xA;Generic Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.queryAAIForGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForGenericVnf" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="Vf Module&#xD;&#xA;Does Not Exist or&#xD;&#xA;Base Module is Not&#xD;&#xA;the Last Vf Module" sourceRef="ExclusiveGateway_5" targetRef="DeleteVfModuleFailure"/>

+    <bpmn2:endEvent id="EndEvent_8">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_69" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="ExclusiveGateway_2" targetRef="ExclusiveGateway_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{(execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 200 || execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 204) && execution.getVariable("DAAIVfMod_isLastModule") == false} ]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="QueryAAIForGenericVnf1" name="Query AAI for Generif VNF 1" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.queryAAIForGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="QueryAAIForGenericVnf1" targetRef="ExclusiveGateway_4"/>

+    <bpmn2:scriptTask id="DeleteGenericVnfFailure" name="Delete Generic Vnf Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.handleDeleteGenericVnfFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="DeleteGenericVnfFailure" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_5">

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ExclusiveGateway_1" targetRef="DeleteGenericVnfFailure"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{((execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 200 || execution.getVariable("DAAIVfMod_deleteVfModuleResponseCode") == 204) && execution.getVariable("DAAIVfMod_isLastModule") == false) || (execution.getVariable("DAAIVfMod_deleteGenericVnfResponseCode") == 200 || execution.getVariable("DAAIVfMod_deleteGenericVnfResponseCode") == 204)}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="AAIQueryFailure1" name="AAI Query Failure 1" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="AAIQueryFailure1" targetRef="EndEvent_3"/>

+    <bpmn2:endEvent id="EndEvent_3">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_70" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="DeleteGenericVnf" name="Delete Generic Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.deleteGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="DeleteGenericVnf" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:scriptTask id="ParseForGenericVNFResourceVersion" name="Parse for Generic VNF Resource Version" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.parseForResourceVersion(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ParseForGenericVNFResourceVersion" targetRef="DeleteGenericVnf"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_4" default="SequenceFlow_13">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ExclusiveGateway_4" targetRef="AAIQueryFailure1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("DAAIVfMod_queryGenericVnfResponseCode") != 200}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ExclusiveGateway_4" targetRef="ParseForGenericVNFResourceVersion"/>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:messageEventDefinition id="_MessageEventDefinition_6" messageRef="Message_1"/>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="InitializeVariables"/>

+    <bpmn2:scriptTask id="InitializeVariables" name="Initialize Variables" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DeleteAAIVfModule()
+dvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="InitializeVariables" targetRef="QueryAAIForGenericVnf"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_6" name="Is VID Request?" default="SequenceFlow_3">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="no" sourceRef="ExclusiveGateway_6" targetRef="QueryAAIForGenericVnf1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="yes" sourceRef="ExclusiveGateway_6" targetRef="EndEvent_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("isVidRequest") =="true"}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:message id="Message_1" name="DeleteAAIVfModuleRequest"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteAAIVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="59.0" y="200.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="77.0" y="241.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="InitializeVariables">

+        <dc:Bounds height="80.0" width="100.0" x="192.0" y="178.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="95.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="192.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="117.0" y="218.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="ParseForAddonModule">

+        <dc:Bounds height="80.0" width="100.0" x="518.0" y="79.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_50" bpmnElement="ExclusiveGateway_5" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="630.0" y="192.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="655.0" y="247.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_47" bpmnElement="DeleteVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="695.0" y="0.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ExclusiveGateway_50" targetElement="_BPMNShape_ScriptTask_47">

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="192.0"/>

+        <di:waypoint xsi:type="dc:Point" x="655.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="695.0" y="40.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="579.0" y="73.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1681.0" y="297.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1706.0" y="352.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="1689.0" y="564.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1707.0" y="605.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_115" bpmnElement="DeleteGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="1582.0" y="0.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="468.0" y="191.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="493.0" y="246.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="191.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="120.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="120.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="490.0" y="154.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="518.0" y="297.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="241.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="259.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="297.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="547.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_50">

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="159.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="630.0" y="217.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="212.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="550.0" y="416.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="568.0" y="457.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="377.0"/>

+        <di:waypoint xsi:type="dc:Point" x="568.0" y="416.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="388.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_158" bpmnElement="DeleteVfModuleFailure">

+        <dc:Bounds height="80.0" width="100.0" x="837.0" y="175.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_99" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="861.0" y="14.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="886.0" y="69.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_20" sourceElement="_BPMNShape_ScriptTask_47" targetElement="_BPMNShape_ExclusiveGateway_99">

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="861.0" y="39.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="817.0" y="40.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ExclusiveGateway_99" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="886.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="98.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="175.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="126.0" x="887.0" y="100.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ExclusiveGateway_99" targetElement="_BPMNShape_ExclusiveGateway_226">

+        <di:waypoint xsi:type="dc:Point" x="911.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1068.0" y="39.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="959.0" y="39.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_161" bpmnElement="EndEvent_8">

+        <dc:Bounds height="36.0" width="36.0" x="869.0" y="299.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="887.0" y="340.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ScriptTask_158" targetElement="_BPMNShape_EndEvent_161">

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="255.0"/>

+        <di:waypoint xsi:type="dc:Point" x="887.0" y="299.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="884.0" y="280.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="178.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="292.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="218.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="299.0" y="218.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="218.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="216.0"/>

+        <di:waypoint xsi:type="dc:Point" x="468.0" y="216.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="DeleteGenericVnfFailure">

+        <dc:Bounds height="80.0" width="100.0" x="1656.0" y="432.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="1706.0" y="512.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1707.0" y="564.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1703.0" y="515.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="1706.0" y="347.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1706.0" y="432.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1703.0" y="390.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ExclusiveGateway_50" targetElement="_BPMNShape_ScriptTask_158">

+        <di:waypoint xsi:type="dc:Point" x="680.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="758.0" y="217.0"/>

+        <di:waypoint xsi:type="dc:Point" x="758.0" y="215.0"/>

+        <di:waypoint xsi:type="dc:Point" x="837.0" y="215.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="94.0" x="708.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ExclusiveGateway_99" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="911.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1008.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1008.0" y="140.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1008.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="322.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1005.0" y="197.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_115" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="1632.0" y="80.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1632.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1681.0" y="322.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1629.0" y="187.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_162" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1806.0" y="305.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1824.0" y="346.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_162">

+        <di:waypoint xsi:type="dc:Point" x="1731.0" y="322.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1806.0" y="323.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1753.0" y="322.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_242" bpmnElement="QueryAAIForGenericVnf1">

+        <dc:Bounds height="80.0" width="100.0" x="1166.0" y="0.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_213" bpmnElement="ExclusiveGateway_4" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1325.0" y="15.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1350.0" y="70.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_242" targetElement="_BPMNShape_ExclusiveGateway_213">

+        <di:waypoint xsi:type="dc:Point" x="1266.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1325.0" y="40.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1292.0" y="40.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_243" bpmnElement="AAIQueryFailure1">

+        <dc:Bounds height="80.0" width="100.0" x="1300.0" y="117.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_244" bpmnElement="ParseForGenericVNFResourceVersion">

+        <dc:Bounds height="80.0" width="100.0" x="1440.0" y="0.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_181" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="1332.0" y="244.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1350.0" y="285.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ExclusiveGateway_213" targetElement="_BPMNShape_ScriptTask_243">

+        <di:waypoint xsi:type="dc:Point" x="1350.0" y="65.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1349.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1350.0" y="90.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1350.0" y="117.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1347.0" y="95.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_243" targetElement="_BPMNShape_EndEvent_181">

+        <di:waypoint xsi:type="dc:Point" x="1350.0" y="197.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1350.0" y="244.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1347.0" y="226.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_213" targetElement="_BPMNShape_ScriptTask_244">

+        <di:waypoint xsi:type="dc:Point" x="1375.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1440.0" y="40.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1394.0" y="40.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_244" targetElement="_BPMNShape_ScriptTask_115">

+        <di:waypoint xsi:type="dc:Point" x="1540.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1582.0" y="40.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1565.0" y="40.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_226" bpmnElement="ExclusiveGateway_6" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1068.0" y="14.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="100.0" x="1044.0" y="-6.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_ScriptTask_242">

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1142.0" y="39.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1142.0" y="40.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1166.0" y="40.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_226" targetElement="_BPMNShape_EndEvent_162">

+        <di:waypoint xsi:type="dc:Point" x="1093.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1093.0" y="289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1823.0" y="289.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1823.0" y="305.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="1104.0" y="146.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoDeleteVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoDeleteVfModule.bpmn
new file mode 100644
index 0000000..06aeafb
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoDeleteVfModule.bpmn
@@ -0,0 +1,287 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DoDeleteVfModule" name="DoDeleteVfModule" isExecutable="true">

+    <bpmn2:scriptTask id="UpdateAAIVfModulePrep" name="UpdateAAIVfModule&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.prepUpdateAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="UpdateAAIVfModulePrep" targetRef="InvokeUpdateAAIVfModule"/>

+    <bpmn2:callActivity id="InvokeUpdateAAIVfModule" name="Invoke&#xD;&#xA;UpdateAAIVfModule" calledElement="UpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="UpdateAAIVfModuleRequest" target="UpdateAAIVfModuleRequest"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="InvokeUpdateAAIVfModule" targetRef="SDNCAdapterPrep2"/>

+    <bpmn2:callActivity id="InvokePrepareUpdateAAIVfModule" name="Invoke&#xD;&#xA;PrepareUpdateAAIVfModule" calledElement="PrepareUpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="PrepareUpdateAAIVfModuleRequest" target="PrepareUpdateAAIVfModuleRequest"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="PUAAIVfMod_heatStackId" target="DoDVfMod_heatStackId"/>

+        <camunda:out source="PUAAIVfMod_outVfModule" target="DoDVfMod_vfModuleFromAAI"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_42</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="InvokePrepareUpdateAAIVfModule" targetRef="VNFAdapterPrep"/>

+    <bpmn2:callActivity id="InvokeSDNCAdapterV1_2" name="Invoke&#xD;&#xA;SDNCAdapterV1" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="sdncAdapterWorkflowRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="sdncAdapterResponse" target="DoDVfMod_doDeleteVfModuleResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="InvokeSDNCAdapterV1_2" targetRef="validateSDNCResponse"/>

+    <bpmn2:scriptTask id="VNFAdapterPrep" name="VNFAdapter&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.prepVNFAdapterRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="VNFAdapterPrep" targetRef="InvokeVNFAdapterRestV1"/>

+    <bpmn2:scriptTask id="SDNCAdapterPrep2" name="SDNCAdapter&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.prepSDNCAdapterRequest(execution, "delete")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="SDNCAdapterPrep2" targetRef="InvokeSDNCAdapterV1_2"/>

+    <bpmn2:callActivity id="InvokeVNFAdapterRestV1" name="Invoke&#xD;&#xA;VNFAdapterRestV1" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="vnfAdapterRestV1Request" target="vnfAdapterRestV1Request"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DoDVfMod_doDeleteVfModuleResponse"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="InvokeVNFAdapterRestV1" targetRef="UpdateAAIVfModulePrep"/>

+    <bpmn2:endEvent id="EndEvent_9">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:callActivity id="InvokeDeleteAAIVfModule" name="Invoke&#xD;&#xA;DeleteAAIVfModule" calledElement="DeleteAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DeleteAAIVfModuleRequest" target="DeleteAAIVfModuleRequest"/>

+        <camunda:in source="isVidRequest" target="isVidRequest"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="InvokeDeleteAAIVfModule" targetRef="EndEvent_9"/>

+    <bpmn2:scriptTask id="DeleteAAIVfModulePrep" name="DeleteAAIVfModule&#xD;&#xA;Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.prepDeleteAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="DeleteAAIVfModulePrep" targetRef="InvokeDeleteAAIVfModule"/>

+    <bpmn2:scriptTask id="validateSDNCResponse" name="Validate SDNC Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.sdncValidateResponse(execution, DoDVfMod_doDeleteVfModuleResponse)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="validateSDNCResponse" targetRef="DeleteAAIVfModulePrep"/>

+    <bpmn2:scriptTask id="InitializeVariables" name="Initialize Variables" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="InitializeVariables" targetRef="PrepareUpdateAAIVfModulePrep"/>

+    <bpmn2:scriptTask id="PrepareUpdateAAIVfModulePrep" name="PrepareUpdateAAIVfModule Prep" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_42</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def dvm = new DoDeleteVfModule()
+dvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_42" name="" sourceRef="PrepareUpdateAAIVfModulePrep" targetRef="InvokePrepareUpdateAAIVfModule"/>

+    <bpmn2:startEvent id="StartEvent_1">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:messageEventDefinition id="_MessageEventDefinition_6" messageRef="Message_1"/>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="InitializeVariables"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:message id="Message_1" name="DoDeleteVfModuleRequest"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoDeleteVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="34.0" y="57.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="52.0" y="98.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="InitializeVariables">

+        <dc:Bounds height="80.0" width="100.0" x="144.0" y="36.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="70.0" y="75.0"/>

+        <di:waypoint xsi:type="dc:Point" x="144.0" y="76.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="104.0" y="0.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="InvokePrepareUpdateAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="480.0" y="36.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_168" bpmnElement="PrepareUpdateAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="315.0" y="36.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_168">

+        <di:waypoint xsi:type="dc:Point" x="244.0" y="76.0"/>

+        <di:waypoint xsi:type="dc:Point" x="315.0" y="76.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="269.0" y="0.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_170" bpmnElement="VNFAdapterPrep">

+        <dc:Bounds height="80.0" width="100.0" x="83.0" y="187.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_13" bpmnElement="InvokeVNFAdapterRestV1">

+        <dc:Bounds height="80.0" width="100.0" x="216.0" y="188.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_170" targetElement="_BPMNShape_CallActivity_13">

+        <di:waypoint xsi:type="dc:Point" x="183.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="228.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="24.0" y="81.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_171" bpmnElement="UpdateAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="347.0" y="187.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_CallActivity_13" targetElement="_BPMNShape_ScriptTask_171">

+        <di:waypoint xsi:type="dc:Point" x="316.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="331.0" y="228.0"/>

+        <di:waypoint xsi:type="dc:Point" x="331.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="347.0" y="227.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="44.0" y="79.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_14" bpmnElement="InvokeUpdateAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="479.0" y="187.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ScriptTask_171" targetElement="_BPMNShape_CallActivity_14">

+        <di:waypoint xsi:type="dc:Point" x="447.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="479.0" y="227.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="76.0" y="79.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_172" bpmnElement="SDNCAdapterPrep2">

+        <dc:Bounds height="80.0" width="100.0" x="84.0" y="343.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_15" bpmnElement="InvokeSDNCAdapterV1_2">

+        <dc:Bounds height="80.0" width="100.0" x="216.0" y="343.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_173" bpmnElement="DeleteAAIVfModulePrep">

+        <dc:Bounds height="80.0" width="100.0" x="480.0" y="343.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_16" bpmnElement="InvokeDeleteAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="605.0" y="343.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_CallActivity_14" targetElement="_BPMNShape_ScriptTask_172">

+        <di:waypoint xsi:type="dc:Point" x="579.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="623.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="623.0" y="308.0"/>

+        <di:waypoint xsi:type="dc:Point" x="53.0" y="308.0"/>

+        <di:waypoint xsi:type="dc:Point" x="53.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="84.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="596.0" y="139.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ScriptTask_172" targetElement="_BPMNShape_CallActivity_15">

+        <di:waypoint xsi:type="dc:Point" x="184.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="200.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="200.0" y="384.0"/>

+        <di:waypoint xsi:type="dc:Point" x="216.0" y="384.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="209.0" y="236.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_CallActivity_15" targetElement="_BPMNShape_ScriptTask_251">

+        <di:waypoint xsi:type="dc:Point" x="316.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="348.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="329.0" y="383.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_ScriptTask_173" targetElement="_BPMNShape_CallActivity_16">

+        <di:waypoint xsi:type="dc:Point" x="580.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="605.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="593.0" y="383.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_169" bpmnElement="EndEvent_9">

+        <dc:Bounds height="36.0" width="36.0" x="738.0" y="365.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="756.0" y="406.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_CallActivity_16" targetElement="_BPMNShape_EndEvent_169">

+        <di:waypoint xsi:type="dc:Point" x="705.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="738.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="730.0" y="383.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_42" sourceElement="_BPMNShape_ScriptTask_168" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="415.0" y="76.0"/>

+        <di:waypoint xsi:type="dc:Point" x="480.0" y="76.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="440.0" y="0.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ScriptTask_170">

+        <di:waypoint xsi:type="dc:Point" x="580.0" y="76.0"/>

+        <di:waypoint xsi:type="dc:Point" x="620.0" y="76.0"/>

+        <di:waypoint xsi:type="dc:Point" x="620.0" y="156.0"/>

+        <di:waypoint xsi:type="dc:Point" x="48.0" y="156.0"/>

+        <di:waypoint xsi:type="dc:Point" x="48.0" y="199.0"/>

+        <di:waypoint xsi:type="dc:Point" x="48.0" y="227.0"/>

+        <di:waypoint xsi:type="dc:Point" x="83.0" y="227.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="596.0" y="0.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_251" bpmnElement="validateSDNCResponse">

+        <dc:Bounds height="80.0" width="100.0" x="348.0" y="343.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_251" targetElement="_BPMNShape_ScriptTask_173">

+        <di:waypoint xsi:type="dc:Point" x="448.0" y="383.0"/>

+        <di:waypoint xsi:type="dc:Point" x="480.0" y="383.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="453.0" y="383.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoUpdateVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoUpdateVfModule.bpmn
new file mode 100644
index 0000000..2e96035
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/DoUpdateVfModule.bpmn
@@ -0,0 +1,650 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="DoUpdateVfModule" name="DoUpdateVfModule" isExecutable="true">

+    <bpmn2:documentation>This flow expects its incoming request to be in the variable 'DoUpdateVfModuleRequest'.  This flow produces no output.</bpmn2:documentation>

+    <bpmn2:scriptTask id="PrepareUpdateAAIVfModule_prep" name="Prepare Update AAI Vf Module (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepPrepareUpdateAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="PrepareUpdateAAIVfModule_prep" targetRef="ScriptTask_1"/>

+    <bpmn2:callActivity id="ScriptTask_1" name="Prepare Update AAI Vf Module" calledElement="PrepareUpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_prepareUpdateAAIVfModuleRequest" target="PrepareUpdateAAIVfModuleRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="PUAAIVfMod_outVfModule" target="DOUPVfMod_vfModule"/>

+        <camunda:out source="PUAAIVfMod_vnfName" target="DOUPVfMod_vnfNameFromAAI"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="ProcessReceivedRequest" name="Process Received Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ProcessReceivedRequest" targetRef="PrepareUpdateAAIVfModule_prep"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Catch Exception" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_16" name="Handle Exception" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.handleWorkflowException(execution)]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:endEvent id="EndEvent_3">

+        <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+        <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_11"/>

+      </bpmn2:endEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ScriptTask_16" targetRef="EndEvent_3"/>

+      <bpmn2:startEvent id="StartEvent_3">

+        <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="ErrorEventDefinition_2"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="StartEvent_3" targetRef="ScriptTask_16"/>

+    </bpmn2:subProcess>

+    <bpmn2:endEvent id="EndEvent_5">

+      <bpmn2:incoming>SequenceFlow_36</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_12"/>

+    </bpmn2:endEvent>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="SubProcess_1">

+      <bpmn2:outgoing>SequenceFlow_36</bpmn2:outgoing>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_70"/>

+    </bpmn2:boundaryEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_36" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_5"/>

+    <bpmn2:scriptTask id="ScriptTask_10" name="Update AAI Vf Module (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepUpdateAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="ScriptTask_10" targetRef="ScriptTask_11"/>

+    <bpmn2:callActivity id="ScriptTask_11" name="UpdateAAIVfModule" calledElement="UpdateAAIVfModule">

+      <bpmn2:extensionElements>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:in source="DOUPVfMod_updateAAIVfModuleRequest" target="UpdateAAIVfModuleRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="ScriptTask_11" targetRef="ScriptTask_12"/>

+    <bpmn2:scriptTask id="ScriptTask_12" name="SDNC Topology Activate (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepSDNCTopologyAct(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="ScriptTask_12" targetRef="ScriptTask_13"/>

+    <bpmn2:callActivity id="ScriptTask_13" name="SDNCAdapter Topology Activate" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_sdncTopologyRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ScriptTask_13" targetRef="ScriptTask_17"/>

+    <bpmn2:scriptTask id="ScriptTask_17" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[// This variable is checked by the unit test
+execution.setVariable('DoUpdateVfModuleSuccessIndicator', true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="ScriptTask_17" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1" name="TheEnd">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_10"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_14" name="Update AAI Generic Vnf (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepUpdateAAIGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="ScriptTask_14" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:callActivity id="CallActivity_1" name="UpdateAAIGenericVnf" calledElement="UpdateAAIGenericVnf">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_updateAAIGenericVnfRequest" target="UpdateAAIGenericVnfRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="CallActivity_1" targetRef="ScriptTask_10"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Skip Update&#xD;&#xA;Generic Vnf?" default="SequenceFlow_14">

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="Do the update" sourceRef="ExclusiveGateway_1" targetRef="CallActivity_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="Skip the update" sourceRef="ExclusiveGateway_1" targetRef="ScriptTask_10">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy">${execution.getVariable('DOUPVfMod_skipUpdateGenericVnf')} == true</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ProcessReceivedRequest"/>

+    <bpmn2:scriptTask id="ScriptTask_4" name="SDNC Topology Change/Assign (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepSDNCTopologyChg(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ScriptTask_4" targetRef="ScriptTask_5"/>

+    <bpmn2:callActivity id="ScriptTask_5" name="SDNC Adapter Topology Change/Assign" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_sdncTopologyRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="sdncAdapterResponse" target="DOUPVfMod_sdncChangeAssignResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:callActivity id="ScriptTask_9" name="VnfAdapterRest" calledElement="vnfAdapterRestV1">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_vnfAdapterRestRequest" target="vnfAdapterRestV1Request"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="vnfAdapterRestV1Response" target="DOUPVfMod_vnfAdapterRestResponse"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ScriptTask_9" targetRef="ScriptTask_14"/>

+    <bpmn2:scriptTask id="ScriptTask_8" name="VNF Adapter (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepVnfAdapterRest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ScriptTask_8" targetRef="ScriptTask_9"/>

+    <bpmn2:scriptTask id="ScriptTask_15" name="Validate SDNC Query Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+String response = execution.getVariable("DOUPVfMod_sdncTopologyResponse")
+def duvm = new DoUpdateVfModule()
+duvm.validateSDNCResponse(execution, response, "query")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:callActivity id="ScriptTask_7" name="SDNCAdapter Topology Query" calledElement="sdncAdapter">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_sdncTopologyRequest" target="sdncAdapterWorkflowRequest"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+        <camunda:out source="sdncAdapterResponse" target="DOUPVfMod_sdncTopologyResponse"/>

+        <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:scriptTask id="ScriptTask_18" name="Validate SDNC Change/Assign Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+String response = execution.getVariable("DOUPVfMod_sdncChangeAssignResponse")
+def duvm = new DoUpdateVfModule()
+duvm.validateSDNCResponse(execution, response, "changeassign")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_5" targetRef="ScriptTask_18"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_18" targetRef="ScriptTask_6"/>

+    <bpmn2:scriptTask id="ScriptTask_6" name="SDNC Topology Query (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepSDNCTopologyQuery(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="ScriptTask_6" targetRef="ScriptTask_7"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ScriptTask_7" targetRef="ScriptTask_15"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="ScriptTask_15" targetRef="ScriptTask_8"/>

+    <bpmn2:exclusiveGateway id="IsBaseVfModule" name="Is Base VF Module?" default="SequenceFlow_30">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ScriptTask_1" targetRef="IsBaseVfModule"/>

+    <bpmn2:callActivity id="ScriptTask_3" name="Confirm VolumeGroup Tenant" calledElement="ConfirmVolumeGroupTenant">

+      <bpmn2:extensionElements>

+        <camunda:in source="DOUPVfMod_volumeGroupId" target="volumeGroupId"/>

+        <camunda:in source="DOUPVfMod_tenantId" target="tenantId"/>

+        <camunda:in source="DOUPVfMod_aicCloudRegion" target="aicCloudRegion"/>

+        <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>

+        <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>

+        <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>

+        <camunda:out source="WorkflowException" target="WorkflowException"/>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+    </bpmn2:callActivity>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_3" targetRef="ScriptTask_4"/>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Confirm VolumeGroup Tenant (prep)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def duvm = new DoUpdateVfModule()
+duvm.prepConfirmVolumeGroupTenant(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="ScriptTask_2" targetRef="ScriptTask_3"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="VolumeGroupId &#xD;&#xA;present?" default="SequenceFlow_16">

+      <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="Yes" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_2">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy">${execution.getVariable('DOUPVfMod_volumeGroupId').isEmpty()} == false</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="No" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_4"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="yes" sourceRef="IsBaseVfModule" targetRef="ExclusiveGateway_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[execution.getVariable("DOUPVfMod_isBaseVfModule") == "true"]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="QueryAAIVfModule" name="Query AAI Vf Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*

+def doUpdateVfModule = new DoUpdateVfModule()

+doUpdateVfModule.queryAAIVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_30" name="no" sourceRef="IsBaseVfModule" targetRef="QueryAAIVfModule"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="QueryAAIVfModule" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="ExclusiveGateway_3" targetRef="ExclusiveGateway_2"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoUpdateVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="150.0" y="214.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="151.0" y="255.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="ProcessReceivedRequest">

+        <dc:Bounds height="80.0" width="100.0" x="300.0" y="192.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="186.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="300.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="208.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="PrepareUpdateAAIVfModule_prep">

+        <dc:Bounds height="80.0" width="100.0" x="456.0" y="192.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="400.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="456.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="492.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_164" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="624.0" y="192.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ScriptTask_164">

+        <di:waypoint xsi:type="dc:Point" x="556.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="575.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_88" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1039.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="109.0" x="1011.0" y="172.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_165" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="1152.0" y="192.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ExclusiveGateway_88" targetElement="_BPMNShape_ScriptTask_165">

+        <di:waypoint xsi:type="dc:Point" x="1089.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1118.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1152.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="29.0" x="1099.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_166" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="100.0" x="1308.0" y="192.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_165" targetElement="_BPMNShape_ScriptTask_166">

+        <di:waypoint xsi:type="dc:Point" x="1252.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1308.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1271.0" y="232.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_167" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="100.0" x="72.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_168" bpmnElement="ScriptTask_5">

+        <dc:Bounds height="80.0" width="100.0" x="239.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_169" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="535.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_167" targetElement="_BPMNShape_ScriptTask_168">

+        <di:waypoint xsi:type="dc:Point" x="172.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="239.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="197.0" y="460.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ExclusiveGateway_88" targetElement="_BPMNShape_ScriptTask_167">

+        <di:waypoint xsi:type="dc:Point" x="1064.0" y="256.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1064.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="122.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="122.0" y="420.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="22.0" x="1073.0" y="271.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_166" targetElement="_BPMNShape_ScriptTask_167">

+        <di:waypoint xsi:type="dc:Point" x="1358.0" y="272.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1358.0" y="352.0"/>

+        <di:waypoint xsi:type="dc:Point" x="639.0" y="352.0"/>

+        <di:waypoint xsi:type="dc:Point" x="122.0" y="352.0"/>

+        <di:waypoint xsi:type="dc:Point" x="122.0" y="420.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="927.0" y="352.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_170" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="80.0" width="100.0" x="684.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ScriptTask_169" targetElement="_BPMNShape_ScriptTask_170">

+        <di:waypoint xsi:type="dc:Point" x="635.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="684.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="648.0" y="460.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_171" bpmnElement="ScriptTask_8">

+        <dc:Bounds height="80.0" width="100.0" x="996.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_172" bpmnElement="ScriptTask_9">

+        <dc:Bounds height="80.0" width="100.0" x="1176.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ScriptTask_171" targetElement="_BPMNShape_ScriptTask_172">

+        <di:waypoint xsi:type="dc:Point" x="1096.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1176.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1133.0" y="460.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_173" bpmnElement="ScriptTask_10">

+        <dc:Bounds height="80.0" width="100.0" x="466.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_174" bpmnElement="ScriptTask_11">

+        <dc:Bounds height="80.0" width="100.0" x="624.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ScriptTask_172" targetElement="_BPMNShape_ScriptTask_219">

+        <di:waypoint xsi:type="dc:Point" x="1226.0" y="500.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1226.0" y="576.0"/>

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="576.0"/>

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="636.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="821.0" y="576.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ScriptTask_173" targetElement="_BPMNShape_ScriptTask_174">

+        <di:waypoint xsi:type="dc:Point" x="566.0" y="676.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="676.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="591.0" y="676.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_175" bpmnElement="ScriptTask_12">

+        <dc:Bounds height="80.0" width="100.0" x="804.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_176" bpmnElement="ScriptTask_13">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ScriptTask_174" targetElement="_BPMNShape_ScriptTask_175">

+        <di:waypoint xsi:type="dc:Point" x="724.0" y="676.0"/>

+        <di:waypoint xsi:type="dc:Point" x="804.0" y="676.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="695.0" y="674.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ScriptTask_175" targetElement="_BPMNShape_ScriptTask_176">

+        <di:waypoint xsi:type="dc:Point" x="904.0" y="676.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="676.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="902.0" y="676.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_162" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="1016.0" y="876.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="1009.0" y="917.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_21" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="198.0" width="475.0" x="239.0" y="924.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_179" bpmnElement="ScriptTask_16">

+        <dc:Bounds height="80.0" width="100.0" x="399.0" y="984.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_163" bpmnElement="EndEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="617.0" y="1006.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="635.0" y="1047.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_179" targetElement="_BPMNShape_EndEvent_163">

+        <di:waypoint xsi:type="dc:Point" x="499.0" y="1024.0"/>

+        <di:waypoint xsi:type="dc:Point" x="617.0" y="1024.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="555.0" y="1024.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_46" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="696.0" y="1005.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="711.0" y="1046.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_164" bpmnElement="EndEvent_5">

+        <dc:Bounds height="36.0" width="36.0" x="814.0" y="1005.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="832.0" y="1046.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_36" sourceElement="_BPMNShape_BoundaryEvent_46" targetElement="_BPMNShape_EndEvent_164">

+        <di:waypoint xsi:type="dc:Point" x="732.0" y="1023.0"/>

+        <di:waypoint xsi:type="dc:Point" x="814.0" y="1023.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="770.0" y="1023.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_56" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="305.0" y="1006.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="323.0" y="1047.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_StartEvent_56" targetElement="_BPMNShape_ScriptTask_179">

+        <di:waypoint xsi:type="dc:Point" x="341.0" y="1024.0"/>

+        <di:waypoint xsi:type="dc:Point" x="399.0" y="1024.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="302.0" y="1084.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_180" bpmnElement="ScriptTask_17">

+        <dc:Bounds height="80.0" width="100.0" x="984.0" y="768.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_180" targetElement="_BPMNShape_EndEvent_162">

+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="848.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="876.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1031.0" y="868.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_176" targetElement="_BPMNShape_ScriptTask_180">

+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="716.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1034.0" y="768.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1031.0" y="741.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_219" bpmnElement="ScriptTask_14">

+        <dc:Bounds height="80.0" width="100.0" x="144.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_CallActivity_2" bpmnElement="CallActivity_1">

+        <dc:Bounds height="80.0" width="100.0" x="300.0" y="636.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_CallActivity_2" targetElement="_BPMNShape_ScriptTask_173">

+        <di:waypoint xsi:type="dc:Point" x="400.0" y="676.0"/>

+        <di:waypoint xsi:type="dc:Point" x="466.0" y="676.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="431.0" y="676.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_219" targetElement="_BPMNShape_ExclusiveGateway_213">

+        <di:waypoint xsi:type="dc:Point" x="194.0" y="716.0"/>

+        <di:waypoint xsi:type="dc:Point" x="195.0" y="793.0"/>

+        <di:waypoint xsi:type="dc:Point" x="284.0" y="793.0"/>

+        <di:waypoint xsi:type="dc:Point" x="324.0" y="793.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="191.0" y="746.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_213" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="324.0" y="768.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="349.0" y="823.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ExclusiveGateway_213" targetElement="_BPMNShape_CallActivity_2">

+        <di:waypoint xsi:type="dc:Point" x="349.0" y="768.0"/>

+        <di:waypoint xsi:type="dc:Point" x="350.0" y="716.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="80.0" x="357.0" y="733.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ExclusiveGateway_213" targetElement="_BPMNShape_ScriptTask_173">

+        <di:waypoint xsi:type="dc:Point" x="374.0" y="793.0"/>

+        <di:waypoint xsi:type="dc:Point" x="515.0" y="793.0"/>

+        <di:waypoint xsi:type="dc:Point" x="516.0" y="716.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="97.0" x="380.0" y="768.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_220" bpmnElement="ScriptTask_15">

+        <dc:Bounds height="80.0" width="100.0" x="840.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_221" bpmnElement="ScriptTask_18">

+        <dc:Bounds height="80.0" width="100.0" x="384.0" y="420.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_168" targetElement="_BPMNShape_ScriptTask_221">

+        <di:waypoint xsi:type="dc:Point" x="339.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="384.0" y="460.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_221" targetElement="_BPMNShape_ScriptTask_169">

+        <di:waypoint xsi:type="dc:Point" x="484.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="535.0" y="460.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="511.0" y="460.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ScriptTask_170" targetElement="_BPMNShape_ScriptTask_220">

+        <di:waypoint xsi:type="dc:Point" x="784.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="460.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ScriptTask_220" targetElement="_BPMNShape_ScriptTask_171">

+        <di:waypoint xsi:type="dc:Point" x="940.0" y="460.0"/>

+        <di:waypoint xsi:type="dc:Point" x="996.0" y="460.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_214" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="965.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="990.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_215" bpmnElement="IsBaseVfModule" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="770.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="795.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_285" bpmnElement="QueryAAIVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="849.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_164" targetElement="_BPMNShape_ExclusiveGateway_215">

+        <di:waypoint xsi:type="dc:Point" x="724.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="747.0" y="232.0"/>

+        <di:waypoint xsi:type="dc:Point" x="747.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="770.0" y="231.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_ExclusiveGateway_214">

+        <di:waypoint xsi:type="dc:Point" x="820.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="965.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="888.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ExclusiveGateway_214" targetElement="_BPMNShape_ExclusiveGateway_88">

+        <di:waypoint xsi:type="dc:Point" x="1015.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1039.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1015.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ExclusiveGateway_215" targetElement="_BPMNShape_ScriptTask_285">

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="206.0"/>

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="849.0" y="112.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="770.0" y="151.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_ScriptTask_285" targetElement="_BPMNShape_ExclusiveGateway_214">

+        <di:waypoint xsi:type="dc:Point" x="949.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="966.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="990.0" y="112.0"/>

+        <di:waypoint xsi:type="dc:Point" x="990.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="987.0" y="136.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/PrepareUpdateAAIVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/PrepareUpdateAAIVfModule.bpmn
new file mode 100644
index 0000000..bd16398
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/PrepareUpdateAAIVfModule.bpmn
@@ -0,0 +1,308 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="PrepareUpdateAAIVfModule" name="PrepareUpdateAAIVfModule" isExecutable="true">

+    <bpmn2:documentation><![CDATA[This flow expects its incoming request to be in the variable 'PrepareUpdateAAIVfModuleRequest'.  This flow has 2 outputs: The heat stack ID is placed in the variable 'PUAAIVfMod_heatStackId'.
+and the updated VF Module (type=VfModule) is placed in the variable 'PUAAIVfMod_outVfModule'.]]></bpmn2:documentation>

+    <bpmn2:scriptTask id="QueryAAIForGenericVnf" name="Query AAI for Generic Vnf" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm = new PrepareUpdateAAIVfModule()
+puvm.getGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForGenericVnf" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_1">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('PUAAIVfMod_getVnfResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="AAI Query failure or&#xD;&#xA;Generic Vnf not  found" sourceRef="ExclusiveGateway_3" targetRef="VnfNotFound"/>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Validate VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.validateVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="VnfNotFound" name="Handle Generic Vnf Not found" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.handleVnfNotFound(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="VnfNotFound" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_1" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" default="SequenceFlow_12">

+      <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:scriptTask id="ScriptTask_2" name="Handle VF Module Validation Error" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.handleVfModuleValidationError(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_12" name="VF Module invalid or&#xD;&#xA;not found" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ScriptTask_2" targetRef="EndEvent_1"/>

+    <bpmn2:endEvent id="EndEvent_1">

+      <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_69" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_4">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('PUAAIVfMod_updateVfModuleResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="Update VF Module Failure" sourceRef="ExclusiveGateway_1" targetRef="HandleUpdateVfModuleFailure"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_4" name="TheEnd">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="CreateCustomerV1Response"><![CDATA[<aetgt:CreateCustomerResponse xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"                   xmlns:ns="http://ecomp.att.com/mso/workflow/schema/v1">
+ <ns:GlobalCustomerId>${CCV1_subscriberglobalid}</ns:GlobalCustomerId>
+   </aetgt:CreateCustomerResponse>]]></camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="HandleUpdateVfModuleFailure" name="Handle Update VF Module Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.handleUpdateVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="HandleUpdateVfModuleFailure" targetRef="EndEvent_2"/>

+    <bpmn2:scriptTask id="UpdateVfModule" name="Update VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.updateVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="UpdateVfModule" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="ExclusiveGateway_2" targetRef="UpdateVfModule">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('PUAAIVfMod_vfModuleOK')}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ProcessReceivedRequest"/>

+    <bpmn2:scriptTask id="ProcessReceivedRequest" name="Process Received Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def puvm= new PrepareUpdateAAIVfModule()
+puvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ProcessReceivedRequest" targetRef="QueryAAIForGenericVnf"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="PrepareUpdateAAIVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="37.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="38.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="ProcessReceivedRequest">

+        <dc:Bounds height="80.0" width="100.0" x="181.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="73.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="181.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="95.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="UpdateVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="81.0" y="540.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_92" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="425.0" y="560.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="418.0" y="601.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="250.0" y="554.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="275.0" y="609.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_92">

+        <di:waypoint xsi:type="dc:Point" x="300.0" y="579.0"/>

+        <di:waypoint xsi:type="dc:Point" x="402.0" y="579.0"/>

+        <di:waypoint xsi:type="dc:Point" x="402.0" y="578.0"/>

+        <di:waypoint xsi:type="dc:Point" x="425.0" y="578.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="338.0" y="579.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="257.0" y="348.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="275.0" y="389.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="499.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="524.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_162">

+        <di:waypoint xsi:type="dc:Point" x="549.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="601.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="661.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="564.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="VnfNotFound">

+        <dc:Bounds height="80.0" width="100.0" x="475.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="524.0" y="206.0"/>

+        <di:waypoint xsi:type="dc:Point" x="524.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="173.0"/>

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="152.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="135.0" x="526.0" y="160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="507.0" y="5.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="525.0" y="46.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="72.0"/>

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="41.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="522.0" y="61.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForGenericVnf">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="281.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="301.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="499.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="HandleUpdateVfModuleFailure">

+        <dc:Bounds height="80.0" width="100.0" x="225.0" y="408.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="275.0" y="408.0"/>

+        <di:waypoint xsi:type="dc:Point" x="275.0" y="384.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="300.0" y="740.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="181.0" y="580.0"/>

+        <di:waypoint xsi:type="dc:Point" x="206.0" y="580.0"/>

+        <di:waypoint xsi:type="dc:Point" x="206.0" y="579.0"/>

+        <di:waypoint xsi:type="dc:Point" x="250.0" y="579.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="174.0" y="711.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="275.0" y="554.0"/>

+        <di:waypoint xsi:type="dc:Point" x="275.0" y="520.0"/>

+        <di:waypoint xsi:type="dc:Point" x="276.0" y="520.0"/>

+        <di:waypoint xsi:type="dc:Point" x="276.0" y="488.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="157.0" x="280.0" y="504.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_162" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="661.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_87" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="829.0" y="204.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="854.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_162" targetElement="_BPMNShape_ExclusiveGateway_87">

+        <di:waypoint xsi:type="dc:Point" x="761.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="795.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="829.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="792.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_163" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="805.0" y="72.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_161" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="837.0" y="5.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="855.0" y="46.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ExclusiveGateway_87" targetElement="_BPMNShape_ScriptTask_163">

+        <di:waypoint xsi:type="dc:Point" x="854.0" y="204.0"/>

+        <di:waypoint xsi:type="dc:Point" x="854.0" y="178.0"/>

+        <di:waypoint xsi:type="dc:Point" x="855.0" y="178.0"/>

+        <di:waypoint xsi:type="dc:Point" x="855.0" y="152.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="133.0" x="864.0" y="160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ScriptTask_163" targetElement="_BPMNShape_EndEvent_161">

+        <di:waypoint xsi:type="dc:Point" x="855.0" y="72.0"/>

+        <di:waypoint xsi:type="dc:Point" x="855.0" y="41.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="852.0" y="54.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ExclusiveGateway_87" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="854.0" y="254.0"/>

+        <di:waypoint xsi:type="dc:Point" x="854.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="302.0"/>

+        <di:waypoint xsi:type="dc:Point" x="131.0" y="540.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="399.0" y="302.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIGenericVnf.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIGenericVnf.bpmn
new file mode 100644
index 0000000..32206bd
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIGenericVnf.bpmn
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="UpdateAAIGenericVnf" name="UpdateAAIGenericVnf" isExecutable="true">

+    <bpmn2:documentation>This flow expects its incoming request to be in the variable 'UpdateAAIGenericVnfRequest'.  This flow produces no output.</bpmn2:documentation>

+    <bpmn2:scriptTask id="QueryAAIForGenericVNF" name="Query AAI for Generic VNF" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def ugv = new UpdateAAIGenericVnf()
+ugv.getGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForGenericVNF" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_4">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('UAAIGenVnf_updateGenericVnfResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="Update Generic VNF Failure" sourceRef="ExclusiveGateway_1" targetRef="HandleUpdateGenericVNFFailure"/>

+    <bpmn2:scriptTask id="HandleUpdateGenericVNFFailure" name="Handle Update Generic VNF Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def ugv = new UpdateAAIGenericVnf()
+ugv.handleUpdateGenericVnfFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="HandleUpdateGenericVNFFailure" targetRef="EndEvent_2"/>

+    <bpmn2:endEvent id="EndEvent_4" name="TheEnd">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="CreateCustomerV1Response"><![CDATA[<aetgt:CreateCustomerResponse xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"                   xmlns:ns="http://ecomp.att.com/mso/workflow/schema/v1">
+ <ns:GlobalCustomerId>${CCV1_subscriberglobalid}</ns:GlobalCustomerId>
+   </aetgt:CreateCustomerResponse>]]></camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="UpdateGenericVNF" name="Update Generic VNF" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def ugv = new UpdateAAIGenericVnf()
+ugv.updateGenericVnf(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="UpdateGenericVNF" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="UpdateGenericVNF">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('UAAIGenVnf_getGenericVnfResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="AAI Query failure or&#xD;&#xA;Generic VNF not  found" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure"/>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="Handle AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def ugv = new UpdateAAIGenericVnf()
+ugv.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ProcessReceivedRequest"/>

+    <bpmn2:scriptTask id="ProcessReceivedRequest" name="Process Received Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def ugv = new UpdateAAIGenericVnf()
+ugv.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ProcessReceivedRequest" targetRef="QueryAAIForGenericVNF"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateAAIGenericVnf">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="43.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="44.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="ProcessReceivedRequest">

+        <dc:Bounds height="80.0" width="100.0" x="168.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="79.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="168.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="101.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="UpdateGenericVNF">

+        <dc:Bounds height="80.0" width="100.0" x="683.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_92" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="984.0" y="214.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="977.0" y="255.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="840.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="865.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_92">

+        <di:waypoint xsi:type="dc:Point" x="890.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="984.0" y="232.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="904.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="848.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="866.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="500.0" y="204.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="525.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="550.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="683.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="565.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="476.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="204.0"/>

+        <di:waypoint xsi:type="dc:Point" x="525.0" y="190.0"/>

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="190.0"/>

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="142.0" x="543.0" y="149.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="508.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="526.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="526.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="523.0" y="49.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForGenericVNF">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="268.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="288.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="500.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="450.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="HandleUpdateGenericVNFFailure">

+        <dc:Bounds height="80.0" width="100.0" x="816.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="863.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="783.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="813.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="206.0"/>

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="169.0" x="867.0" y="157.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIVfModule.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIVfModule.bpmn
new file mode 100644
index 0000000..fabd9c2
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VfModularity/UpdateAAIVfModule.bpmn
@@ -0,0 +1,224 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_Wblj8GyfEeWUWLTvug7ZOg" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="UpdateAAIVfModule" name="UpdateAAIVfModule" isExecutable="true">

+    <bpmn2:documentation>This flow expects its incoming request to be in the variable 'UpdateAAIVfModuleRequest'.  This flow produces no output.</bpmn2:documentation>

+    <bpmn2:scriptTask id="QueryAAIForVfModule" name="Query AAI for VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvm = new UpdateAAIVfModule()
+uvm.getVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="QueryAAIForVfModule" targetRef="ExclusiveGateway_3"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_68" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="AAIQueryFailure" name="Handle AAI Query Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvm= new UpdateAAIVfModule()
+uvm.handleAAIQueryFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="AAIQueryFailure" targetRef="EndEvent_7"/>

+    <bpmn2:endEvent id="EndEvent_2">

+      <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_50" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_4" name="TheEnd">

+      <bpmn2:extensionElements>

+        <camunda:connector>

+          <camunda:inputOutput>

+            <camunda:outputParameter name="CreateCustomerV1Response"><![CDATA[<aetgt:CreateCustomerResponse xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"                   xmlns:ns="http://ecomp.att.com/mso/workflow/schema/v1">
+ <ns:GlobalCustomerId>${CCV1_subscriberglobalid}</ns:GlobalCustomerId>
+   </aetgt:CreateCustomerResponse>]]></camunda:outputParameter>

+          </camunda:inputOutput>

+        </camunda:connector>

+      </bpmn2:extensionElements>

+      <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_3" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="ExclusiveGateway_3" targetRef="UpdateVfModule">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('UAAIVfMod_getVfModuleResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="AAI Query failure or&#xD;&#xA;VF Module not  found" sourceRef="ExclusiveGateway_3" targetRef="AAIQueryFailure"/>

+    <bpmn2:scriptTask id="HandleUpdateVfModuleFailure" name="Handle Update VF Module Failure" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvm= new UpdateAAIVfModule()
+uvm.handleUpdateVfModuleFailure(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="HandleUpdateVfModuleFailure" targetRef="EndEvent_2"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_4">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_13" sourceRef="ExclusiveGateway_1" targetRef="EndEvent_4">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression">#{execution.getVariable('UAAIVfMod_updateVfModuleResponseCode') == 200}</bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_4" name="Update VF Module Failure" sourceRef="ExclusiveGateway_1" targetRef="HandleUpdateVfModuleFailure"/>

+    <bpmn2:scriptTask id="UpdateVfModule" name="Update VF Module" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvm= new UpdateAAIVfModule()
+uvm.updateVfModule(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="UpdateVfModule" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ProcessReceivedRequest"/>

+    <bpmn2:scriptTask id="ProcessReceivedRequest" name="Process Received Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def uvm= new UpdateAAIVfModule()
+uvm.preProcessRequest(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ProcessReceivedRequest" targetRef="QueryAAIForVfModule"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateAAIVfModule">

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_37" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="69.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="70.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_22" bpmnElement="ProcessReceivedRequest">

+        <dc:Bounds height="80.0" width="100.0" x="180.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_37" targetElement="_BPMNShape_ScriptTask_22">

+        <di:waypoint xsi:type="dc:Point" x="105.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="180.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="127.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_Task_2" bpmnElement="UpdateVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="672.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_92" bpmnElement="EndEvent_4">

+        <dc:Bounds height="36.0" width="36.0" x="1016.0" y="212.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="50.0" x="1009.0" y="253.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="840.0" y="206.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="865.0" y="261.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_EndEvent_92">

+        <di:waypoint xsi:type="dc:Point" x="890.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="993.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1016.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="928.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_120" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="848.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="866.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_86" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="493.0" y="204.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="518.0" y="259.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_Task_2">

+        <di:waypoint xsi:type="dc:Point" x="543.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="607.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="607.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="672.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="558.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_155" bpmnElement="AAIQueryFailure">

+        <dc:Bounds height="80.0" width="100.0" x="468.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_86" targetElement="_BPMNShape_ScriptTask_155">

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="204.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="130.0" x="528.0" y="152.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="500.0" y="0.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="518.0" y="41.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_ScriptTask_155" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="518.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="515.0" y="49.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_160" bpmnElement="QueryAAIForVfModule">

+        <dc:Bounds height="80.0" width="100.0" x="336.0" y="190.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ScriptTask_22" targetElement="_BPMNShape_ScriptTask_160">

+        <di:waypoint xsi:type="dc:Point" x="280.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="336.0" y="230.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="300.0" y="230.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_39" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ScriptTask_160" targetElement="_BPMNShape_ExclusiveGateway_86">

+        <di:waypoint xsi:type="dc:Point" x="436.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="452.0" y="229.0"/>

+        <di:waypoint xsi:type="dc:Point" x="493.0" y="229.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="449.0" y="229.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_161" bpmnElement="HandleUpdateVfModuleFailure">

+        <dc:Bounds height="80.0" width="100.0" x="816.0" y="60.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_161" targetElement="_BPMNShape_EndEvent_120">

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="60.0"/>

+        <di:waypoint xsi:type="dc:Point" x="866.0" y="36.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="863.0" y="51.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_Task_2" targetElement="_BPMNShape_ExclusiveGateway_54">

+        <di:waypoint xsi:type="dc:Point" x="772.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="797.0" y="230.0"/>

+        <di:waypoint xsi:type="dc:Point" x="797.0" y="231.0"/>

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="231.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="801.0" y="231.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_161">

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="206.0"/>

+        <di:waypoint xsi:type="dc:Point" x="865.0" y="172.0"/>

+        <di:waypoint xsi:type="dc:Point" x="867.0" y="172.0"/>

+        <di:waypoint xsi:type="dc:Point" x="867.0" y="140.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="157.0" x="883.0" y="160.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VnfAdapterRestV1.bpmn b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VnfAdapterRestV1.bpmn
new file mode 100644
index 0000000..04f9d02
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/subprocess/VnfAdapterRestV1.bpmn
@@ -0,0 +1,442 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_GraPIIyxEeWmdMDkx6Uftw" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">

+  <bpmn2:process id="vnfAdapterRestV1" name="vnfAdapterRestV1" isExecutable="true">

+    <bpmn2:scriptTask id="ScriptTask_2" name="Log Response" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+def statusCode = execution.getVariable('VNFREST_vnfAdapterStatusCode')
+String response = String.valueOf(execution.getVariable('VNFREST_vnfAdapterResponse'))
+def isDebugLogEnabled = execution.getVariable('isDebugLogEnabled')
+def processKey = vnfAdapterRestV1.getProcessKey(execution)
+vnfAdapterRestV1.logDebug(processKey + " received response from VnfAdapter: statusCode=" + statusCode +
+	" response=" + (response.isEmpty() ? "" : "\n") + response, isDebugLogEnabled)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="ScriptTask_3" name="Workflow Exception (no connection)">

+      <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildAndThrowWorkflowException(execution, 7000, "Failed to communicate with VnfAdapter")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:scriptTask id="ScriptTask_4" name="Workflow Exception (bad response)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_36</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+
+String res = execution.getVariable(VNFREST_vnfAdapterResponse)
+
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+vnfAdapterRestV1.vnfAdapterWorkflowException(execution, res)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="ScriptTask_2" targetRef="ExclusiveGateway_1"/>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_1" default="SequenceFlow_23">

+      <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_17" name="404" sourceRef="ExclusiveGateway_1" targetRef="ScriptTask_3">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("VNFREST_vnfAdapterStatusCode") == '404'}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:sequenceFlow id="SequenceFlow_23" name="other" sourceRef="ExclusiveGateway_1" targetRef="ScriptTask_4"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_24" name="2xx" sourceRef="ExclusiveGateway_1" targetRef="waitForAsyncMessage">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("VNFREST_vnfAdapterStatusCode") == '200' || execution.getVariable("VNFREST_vnfAdapterStatusCode") == '202'}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:boundaryEvent id="BoundaryEvent_1" name="Timeout" attachedToRef="waitForAsyncMessage">

+      <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>

+      <bpmn2:timerEventDefinition id="TimerEventDefinition_1">

+        <bpmn2:timeDuration xsi:type="bpmn2:tFormalExpression">${URN_mso_po_timeout}</bpmn2:timeDuration>

+      </bpmn2:timerEventDefinition>

+    </bpmn2:boundaryEvent>

+    <bpmn2:subProcess id="waitForAsyncMessage" name="Wait for Callback">

+      <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>

+      <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="Catch Event">

+        <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>

+        <bpmn2:messageEventDefinition id="MessageEventDefinition_1" messageRef="Message_1"/>

+      </bpmn2:intermediateCatchEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="IntermediateCatchEvent_1" targetRef="EndEvent_2"/>

+      <bpmn2:startEvent id="StartEvent_3">

+        <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="StartEvent_3" targetRef="IntermediateCatchEvent_1"/>

+      <bpmn2:endEvent id="EndEvent_2">

+        <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>

+      </bpmn2:endEvent>

+    </bpmn2:subProcess>

+    <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="BoundaryEvent_1" targetRef="ScriptTask_5"/>

+    <bpmn2:scriptTask id="ScriptTask_5" name="Workflow Exception (timeout)" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_34</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def exceptionUtil = new ExceptionUtil()
+exceptionUtil.buildAndThrowWorkflowException(execution, 7010, "VnfAdapter Callback Timeout Error")]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="waitForAsyncMessage" targetRef="ScriptTask_6"/>

+    <bpmn2:scriptTask id="ScriptTask_6" name="Process Callback" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+vnfAdapterRestV1.processCallback(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="ScriptTask_6" targetRef="ExclusiveGateway_2"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_34" name="" sourceRef="ScriptTask_5" targetRef="EndEvent_8"/>

+    <bpmn2:endEvent id="EndEvent_8">

+      <bpmn2:incoming>SequenceFlow_34</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_21" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ScriptTask_3" targetRef="EndEvent_9"/>

+    <bpmn2:endEvent id="EndEvent_9">

+      <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_22" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:endEvent id="EndEvent_10">

+      <bpmn2:incoming>SequenceFlow_36</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_23" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_36" name="" sourceRef="ScriptTask_4" targetRef="EndEvent_10"/>

+    <bpmn2:endEvent id="EndEvent_7">

+      <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>

+      <bpmn2:errorEventDefinition id="_ErrorEventDefinition_20" errorRef="Error_1"/>

+    </bpmn2:endEvent>

+    <bpmn2:exclusiveGateway id="ExclusiveGateway_2" name="Callback&#xD;&#xA;Exception?" default="SequenceFlow_31">

+      <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>

+      <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>

+    </bpmn2:exclusiveGateway>

+    <bpmn2:sequenceFlow id="SequenceFlow_31" name="no" sourceRef="ExclusiveGateway_2" targetRef="ScriptTask_setSuccess"/>

+    <bpmn2:sequenceFlow id="SequenceFlow_32" name="yes" sourceRef="ExclusiveGateway_2" targetRef="EndEvent_7">

+      <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("WorkflowException") != null}]]></bpmn2:conditionExpression>

+    </bpmn2:sequenceFlow>

+    <bpmn2:scriptTask id="ScriptTask_setSuccess" name="Set Success Indicator" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+vnfAdapterRestV1.setSuccessIndicator(execution, true)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="ScriptTask_setSuccess" targetRef="EndEvent_6"/>

+    <bpmn2:endEvent id="EndEvent_6" name="End Flow">

+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>

+    </bpmn2:endEvent>

+    <bpmn2:scriptTask id="ScriptTask_7" name="Send Request to Vnf Adapter" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+vnfAdapterRestV1.sendRequestToVnfAdapter(execution)]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_7" targetRef="ScriptTask_2"/>

+    <bpmn2:subProcess id="SubProcess_1" name="Error Handling Sub Process" triggeredByEvent="true">

+      <bpmn2:scriptTask id="ScriptTask_8" name="Process Error" scriptFormat="groovy">

+        <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>

+        <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>

+        <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def exUtil = new ExceptionUtil()
+exUtil.processSubflowsBPMNException(execution)
+]]></bpmn2:script>

+      </bpmn2:scriptTask>

+      <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_8" targetRef="EndEvent_1"/>

+      <bpmn2:endEvent id="EndEvent_1">

+        <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>

+      </bpmn2:endEvent>

+      <bpmn2:startEvent id="StartEvent_2">

+        <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>

+        <bpmn2:errorEventDefinition id="_ErrorEventDefinition_89"/>

+      </bpmn2:startEvent>

+      <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="StartEvent_2" targetRef="ScriptTask_8"/>

+    </bpmn2:subProcess>

+    <bpmn2:scriptTask id="ScriptTask_1" name="Pre-Process Request" scriptFormat="groovy">

+      <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>

+      <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>

+      <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
+def vnfAdapterRestV1 = new VnfAdapterRestV1()
+vnfAdapterRestV1.preProcessRequest(execution)
+]]></bpmn2:script>

+    </bpmn2:scriptTask>

+    <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ScriptTask_1" targetRef="ScriptTask_7"/>

+    <bpmn2:startEvent id="StartEvent_1" name="Start">

+      <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>

+    </bpmn2:startEvent>

+    <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>

+  </bpmn2:process>

+  <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSO Workflow Exception"/>

+  <bpmn2:message id="Message_1" name="vnfAdapterRestCallbackMessage"/>

+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">

+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="vnfAdapterRestV1">

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_56" bpmnElement="ScriptTask_1">

+        <dc:Bounds height="80.0" width="100.0" x="204.0" y="148.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_14" bpmnElement="waitForAsyncMessage" isExpanded="true">

+        <dc:Bounds height="154.0" width="265.0" x="744.0" y="275.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_58" bpmnElement="ScriptTask_6">

+        <dc:Bounds height="80.0" width="100.0" x="1046.0" y="311.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_59" bpmnElement="ScriptTask_5">

+        <dc:Bounds height="80.0" width="100.0" x="827.0" y="492.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_24" bpmnElement="BoundaryEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="859.0" y="411.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="52.0" x="894.0" y="441.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_20" bpmnElement="IntermediateCatchEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="863.0" y="330.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="76.0" x="843.0" y="371.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_78" bpmnElement="ScriptTask_4">

+        <dc:Bounds height="80.0" width="97.0" x="744.0" y="148.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="ScriptTask_2">

+        <dc:Bounds height="80.0" width="100.0" x="492.0" y="148.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="84.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="34.0" x="85.0" y="211.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_168" bpmnElement="ScriptTask_3">

+        <dc:Bounds height="80.0" width="97.0" x="744.0" y="24.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_StartEvent_54" targetElement="_BPMNShape_ScriptTask_56">

+        <di:waypoint xsi:type="dc:Point" x="120.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="204.0" y="188.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="130.0" y="188.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_105" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="624.0" y="162.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="649.0" y="217.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_ExclusiveGateway_105">

+        <di:waypoint xsi:type="dc:Point" x="592.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="624.0" y="187.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="611.0" y="187.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ExclusiveGateway_105" targetElement="_BPMNShape_ScriptTask_168">

+        <di:waypoint xsi:type="dc:Point" x="649.0" y="162.0"/>

+        <di:waypoint xsi:type="dc:Point" x="649.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="744.0" y="64.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="688.0" y="64.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_105" targetElement="_BPMNShape_ScriptTask_78">

+        <di:waypoint xsi:type="dc:Point" x="674.0" y="187.0"/>

+        <di:waypoint xsi:type="dc:Point" x="709.0" y="187.0"/>

+        <di:waypoint xsi:type="dc:Point" x="709.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="744.0" y="188.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="35.0" x="684.0" y="188.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ExclusiveGateway_105" targetElement="_BPMNShape_SubProcess_14">

+        <di:waypoint xsi:type="dc:Point" x="649.0" y="212.0"/>

+        <di:waypoint xsi:type="dc:Point" x="649.0" y="353.0"/>

+        <di:waypoint xsi:type="dc:Point" x="708.0" y="353.0"/>

+        <di:waypoint xsi:type="dc:Point" x="744.0" y="353.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="688.0" y="328.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_55" bpmnElement="StartEvent_3">

+        <dc:Bounds height="36.0" width="36.0" x="768.0" y="330.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="786.0" y="371.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_StartEvent_55" targetElement="_BPMNShape_IntermediateCatchEvent_20">

+        <di:waypoint xsi:type="dc:Point" x="804.0" y="348.0"/>

+        <di:waypoint xsi:type="dc:Point" x="863.0" y="348.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="833.0" y="348.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_156" bpmnElement="EndEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="948.0" y="330.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="966.0" y="371.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_IntermediateCatchEvent_20" targetElement="_BPMNShape_EndEvent_156">

+        <di:waypoint xsi:type="dc:Point" x="899.0" y="348.0"/>

+        <di:waypoint xsi:type="dc:Point" x="929.0" y="348.0"/>

+        <di:waypoint xsi:type="dc:Point" x="929.0" y="347.0"/>

+        <di:waypoint xsi:type="dc:Point" x="948.0" y="348.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="926.0" y="348.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_BoundaryEvent_24" targetElement="_BPMNShape_ScriptTask_59">

+        <di:waypoint xsi:type="dc:Point" x="877.0" y="447.0"/>

+        <di:waypoint xsi:type="dc:Point" x="877.0" y="492.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="874.0" y="472.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_28" sourceElement="_BPMNShape_SubProcess_14" targetElement="_BPMNShape_ScriptTask_58">

+        <di:waypoint xsi:type="dc:Point" x="1008.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1046.0" y="351.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1023.0" y="351.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_106" bpmnElement="ExclusiveGateway_2" isMarkerVisible="true">

+        <dc:Bounds height="50.0" width="50.0" x="1188.0" y="325.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="38.0" width="71.0" x="1179.0" y="288.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_158" bpmnElement="EndEvent_6">

+        <dc:Bounds height="36.0" width="36.0" x="1463.0" y="333.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="60.0" x="1451.0" y="374.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ExclusiveGateway_106" targetElement="_BPMNShape_ScriptTask_236">

+        <di:waypoint xsi:type="dc:Point" x="1238.0" y="350.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1308.0" y="350.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="20.0" x="1248.0" y="350.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_159" bpmnElement="EndEvent_7">

+        <dc:Bounds height="36.0" width="36.0" x="1196.0" y="426.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="1214.0" y="467.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ExclusiveGateway_106" targetElement="_BPMNShape_EndEvent_159">

+        <di:waypoint xsi:type="dc:Point" x="1213.0" y="375.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1213.0" y="392.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1214.0" y="392.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1214.0" y="426.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="22.0" width="27.0" x="1223.0" y="390.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ScriptTask_58" targetElement="_BPMNShape_ExclusiveGateway_106">

+        <di:waypoint xsi:type="dc:Point" x="1146.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1173.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1173.0" y="350.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1188.0" y="350.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1170.0" y="350.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_160" bpmnElement="EndEvent_8">

+        <dc:Bounds height="36.0" width="36.0" x="974.0" y="514.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="992.0" y="555.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_34" sourceElement="_BPMNShape_ScriptTask_59" targetElement="_BPMNShape_EndEvent_160">

+        <di:waypoint xsi:type="dc:Point" x="927.0" y="532.0"/>

+        <di:waypoint xsi:type="dc:Point" x="974.0" y="532.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="951.0" y="532.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_161" bpmnElement="EndEvent_9">

+        <dc:Bounds height="36.0" width="36.0" x="891.0" y="46.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="909.0" y="87.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ScriptTask_168" targetElement="_BPMNShape_EndEvent_161">

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="64.0"/>

+        <di:waypoint xsi:type="dc:Point" x="891.0" y="64.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="865.0" y="64.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_162" bpmnElement="EndEvent_10">

+        <dc:Bounds height="36.0" width="36.0" x="892.0" y="170.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="910.0" y="211.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_36" sourceElement="_BPMNShape_ScriptTask_78" targetElement="_BPMNShape_EndEvent_162">

+        <di:waypoint xsi:type="dc:Point" x="840.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="892.0" y="188.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_236" bpmnElement="ScriptTask_setSuccess">

+        <dc:Bounds height="83.0" width="97.0" x="1308.0" y="309.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_ScriptTask_236" targetElement="_BPMNShape_EndEvent_158">

+        <di:waypoint xsi:type="dc:Point" x="1404.0" y="350.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1422.0" y="350.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1422.0" y="351.0"/>

+        <di:waypoint xsi:type="dc:Point" x="1463.0" y="351.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="1419.0" y="351.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_237" bpmnElement="ScriptTask_7">

+        <dc:Bounds height="83.0" width="97.0" x="360.0" y="146.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_56" targetElement="_BPMNShape_ScriptTask_237">

+        <di:waypoint xsi:type="dc:Point" x="304.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="344.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="344.0" y="187.0"/>

+        <di:waypoint xsi:type="dc:Point" x="360.0" y="187.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="317.0" y="188.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_237" targetElement="_BPMNShape_ScriptTask_79">

+        <di:waypoint xsi:type="dc:Point" x="456.0" y="187.0"/>

+        <di:waypoint xsi:type="dc:Point" x="474.0" y="187.0"/>

+        <di:waypoint xsi:type="dc:Point" x="474.0" y="188.0"/>

+        <di:waypoint xsi:type="dc:Point" x="492.0" y="188.0"/>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNShape id="_BPMNShape_SubProcess_24" bpmnElement="SubProcess_1" isExpanded="true">

+        <dc:Bounds height="181.0" width="382.0" x="180.0" y="532.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_66" bpmnElement="StartEvent_2">

+        <dc:Bounds height="36.0" width="36.0" x="225.0" y="605.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="243.0" y="646.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_207" bpmnElement="EndEvent_1">

+        <dc:Bounds height="36.0" width="36.0" x="477.0" y="605.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="0.0" width="0.0" x="495.0" y="646.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_266" bpmnElement="ScriptTask_8">

+        <dc:Bounds height="83.0" width="97.0" x="323.0" y="581.0"/>

+      </bpmndi:BPMNShape>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_StartEvent_66" targetElement="_BPMNShape_ScriptTask_266">

+        <di:waypoint xsi:type="dc:Point" x="261.0" y="623.0"/>

+        <di:waypoint xsi:type="dc:Point" x="323.0" y="622.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="273.0" y="623.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_266" targetElement="_BPMNShape_EndEvent_207">

+        <di:waypoint xsi:type="dc:Point" x="419.0" y="622.0"/>

+        <di:waypoint xsi:type="dc:Point" x="477.0" y="623.0"/>

+        <bpmndi:BPMNLabel>

+          <dc:Bounds height="6.0" width="6.0" x="445.0" y="623.0"/>

+        </bpmndi:BPMNLabel>

+      </bpmndi:BPMNEdge>

+    </bpmndi:BPMNPlane>

+  </bpmndi:BPMNDiagram>

+</bpmn2:definitions>
\ No newline at end of file
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/urn.properties b/bpmn/MSOGammaBPMN/src/main/resources/urn.properties
new file mode 100644
index 0000000..44967b7
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/urn.properties
@@ -0,0 +1,30 @@
+###
+# ============LICENSE_START=======================================================
+# ECOMP MSO
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+# URN mappings for this project.
+
+# TODO: Remove all the non-URN stuff that's in here.
+# TODO: Implement a real URN mapping capability.
+
+#AAIEndPoint= http://localhost:8080/SoapUIMocks
+#AAIEndPoint= http://calypso-36.cif.att.com:8080/SoapUIMocks
+AAIEndPoint= http://localhost:8090/
+SDNCEndPoint=http://localhost:8090/SDNCAdapter/
+msoRollback = true
diff --git a/bpmn/MSOGammaBPMN/src/main/resources/wsdl/VnfAdapterNotify.wsdl b/bpmn/MSOGammaBPMN/src/main/resources/wsdl/VnfAdapterNotify.wsdl
new file mode 100644
index 0000000..471745c
--- /dev/null
+++ b/bpmn/MSOGammaBPMN/src/main/resources/wsdl/VnfAdapterNotify.wsdl
@@ -0,0 +1,233 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+             xmlns:wsp="http://www.w3.org/ns/ws-policy"
+             xmlns:tns="http://com.att.mso/vnfNotify"
+             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+             xmlns:wsp1_2="http://schemas.xmlsoap.org/ws/2004/09/policy"
+             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+             xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
+             xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"
+             name="vnfAdapterNotify"
+             targetNamespace="http://com.att.mso/vnfNotify">
+  <types>
+      <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+                 targetNamespace="http://com.att.mso/vnfNotify"
+                 version="1.0">
+
+         <xs:element name="createVnfNotification" type="tns:createVnfNotification"/>
+      
+         <xs:element name="updateVnfNotification" type="tns:updateVnfNotification"/>
+
+         <xs:element name="deleteVnfNotification" type="tns:deleteVnfNotification"/>
+
+         <xs:element name="queryVnfNotification" type="tns:queryVnfNotification"/>
+
+         <xs:element name="rollbackVnfNotification" type="tns:rollbackVnfNotification"/>
+
+         <xs:complexType name="queryVnfNotification">
+            <xs:sequence>
+               <xs:element name="messageId" type="xs:string"/>
+               <xs:element name="completed" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="exception" type="tns:msoExceptionCategory"/>
+               <xs:element minOccurs="0" name="errorMessage" type="xs:string"/>
+               <xs:element minOccurs="0" name="vnfExists" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="vnfId" type="xs:string"/>
+               <xs:element minOccurs="0" name="status" type="tns:vnfStatus"/>
+               <xs:element minOccurs="0" name="outputs">
+                  <xs:complexType>
+                     <xs:sequence>
+                        <xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
+                           <xs:complexType>
+                              <xs:sequence>
+                                 <xs:element minOccurs="0" name="key" type="xs:string"/>
+                                 <xs:element minOccurs="0" name="value" type="xs:string"/>
+                              </xs:sequence>
+                           </xs:complexType>
+                        </xs:element>
+                     </xs:sequence>
+                  </xs:complexType>
+               </xs:element>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:complexType name="deleteVnfNotification">
+            <xs:sequence>
+               <xs:element name="messageId" type="xs:string"/>
+               <xs:element name="completed" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="exception" type="tns:msoExceptionCategory"/>
+               <xs:element minOccurs="0" name="errorMessage" type="xs:string"/>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:complexType name="rollbackVnfNotification">
+            <xs:sequence>
+               <xs:element name="messageId" type="xs:string"/>
+               <xs:element name="completed" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="exception" type="tns:msoExceptionCategory"/>
+               <xs:element minOccurs="0" name="errorMessage" type="xs:string"/>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:complexType name="createVnfNotification">
+            <xs:sequence>
+               <xs:element name="messageId" type="xs:string"/>
+               <xs:element name="completed" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="exception" type="tns:msoExceptionCategory"/>
+               <xs:element minOccurs="0" name="errorMessage" type="xs:string"/>
+               <xs:element minOccurs="0" name="vnfId" type="xs:string"/>
+               <xs:element minOccurs="0" name="outputs">
+                  <xs:complexType>
+                     <xs:sequence>
+                        <xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
+                           <xs:complexType>
+                              <xs:sequence>
+                                 <xs:element minOccurs="0" name="key" type="xs:string"/>
+                                 <xs:element minOccurs="0" name="value" type="xs:string"/>
+                              </xs:sequence>
+                           </xs:complexType>
+                        </xs:element>
+                     </xs:sequence>
+                  </xs:complexType>
+               </xs:element>
+               <xs:element minOccurs="0" name="rollback" type="tns:vnfRollback"/>
+            </xs:sequence>
+         </xs:complexType>
+      
+         <xs:complexType name="updateVnfNotification">
+            <xs:sequence>
+               <xs:element name="messageId" type="xs:string"/>
+               <xs:element name="completed" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="exception" type="tns:msoExceptionCategory"/>
+               <xs:element minOccurs="0" name="errorMessage" type="xs:string"/>
+               <xs:element minOccurs="0" name="outputs">
+                  <xs:complexType>
+                     <xs:sequence>
+                        <xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
+                           <xs:complexType>
+                              <xs:sequence>
+                                 <xs:element minOccurs="0" name="key" type="xs:string"/>
+                                 <xs:element minOccurs="0" name="value" type="xs:string"/>
+                              </xs:sequence>
+                           </xs:complexType>
+                        </xs:element>
+                     </xs:sequence>
+                  </xs:complexType>
+               </xs:element>
+               <xs:element minOccurs="0" name="rollback" type="tns:vnfRollback"/>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:complexType name="vnfRollback">
+            <xs:sequence>
+               <xs:element minOccurs="0" name="cloudSiteId" type="xs:string"/>
+               <xs:element minOccurs="0" name="msoRequest" type="tns:msoRequest"/>
+               <xs:element name="tenantCreated" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="tenantId" type="xs:string"/>
+               <xs:element name="vnfCreated" type="xs:boolean"/>
+               <xs:element minOccurs="0" name="vnfId" type="xs:string"/>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:complexType name="msoRequest">
+            <xs:sequence>
+               <xs:element minOccurs="0" name="requestId" type="xs:string"/>
+               <xs:element minOccurs="0" name="serviceInstanceId" type="xs:string"/>
+            </xs:sequence>
+         </xs:complexType>
+
+         <xs:simpleType name="msoExceptionCategory">
+            <xs:restriction base="xs:string">
+               <xs:enumeration value="OPENSTACK"/>
+               <xs:enumeration value="IO"/>
+               <xs:enumeration value="INTERNAL"/>
+               <xs:enumeration value="USERDATA"/>
+            </xs:restriction>
+         </xs:simpleType>
+
+         <xs:simpleType name="vnfStatus">
+            <xs:restriction base="xs:string">
+               <xs:enumeration value="ACTIVE"/>
+               <xs:enumeration value="FAILED"/>
+               <xs:enumeration value="NOTFOUND"/>
+               <xs:enumeration value="UNKNOWN"/>
+            </xs:restriction>
+         </xs:simpleType>
+      </xs:schema>
+  </types>
+  <message name="rollbackVnfNotification">
+      <part element="tns:rollbackVnfNotification" name="parameters"/>
+  </message>
+  <message name="queryVnfNotification">
+      <part element="tns:queryVnfNotification" name="parameters"/>
+  </message>
+  <message name="createVnfNotification">
+      <part element="tns:createVnfNotification" name="parameters"/>
+  </message>
+  <message name="updateVnfNotification">
+      <part element="tns:updateVnfNotification" name="parameters"/>
+  </message>
+  <message name="deleteVnfNotification">
+      <part element="tns:deleteVnfNotification" name="parameters"/>
+  </message>
+  <portType name="vnfAdapterNotify">
+      <operation name="rollbackVnfNotification">
+         <input message="tns:rollbackVnfNotification"
+                wsam:Action="http://com.att.mso/notify/adapterNotify/rollbackVnfNotificationRequest"/>
+      </operation>
+      <operation name="queryVnfNotification">
+         <input message="tns:queryVnfNotification"
+                wsam:Action="http://com.att.mso/notify/adapterNotify/queryVnfNotificationRequest"/>
+      </operation>
+      <operation name="createVnfNotification">
+         <input message="tns:createVnfNotification"
+                wsam:Action="http://com.att.mso/notify/adapterNotify/createVnfNotificationRequest"/>
+      </operation>
+      <operation name="updateVnfNotification">
+         <input message="tns:updateVnfNotification"
+                wsam:Action="http://com.att.mso/notify/adapterNotify/updateVnfNotificationRequest"/>
+      </operation>
+      <operation name="deleteVnfNotification">
+         <input message="tns:deleteVnfNotification"
+                wsam:Action="http://com.att.mso/notify/adapterNotify/deleteVnfNotificationRequest"/>
+      </operation>
+  </portType>
+  <binding name="MsoVnfAdapterAsyncImplPortBinding" type="tns:vnfAdapterNotify">
+      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+      <operation name="rollbackVnfNotification">
+         <soap:operation soapAction=""/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+      </operation>
+      <operation name="queryVnfNotification">
+         <soap:operation soapAction=""/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+      </operation>
+      <operation name="createVnfNotification">
+         <soap:operation soapAction=""/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+      </operation>
+      <operation name="updateVnfNotification">
+         <soap:operation soapAction=""/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+      </operation>
+      <operation name="deleteVnfNotification">
+         <soap:operation soapAction=""/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+      </operation>
+  </binding>
+  <service name="vnfAdapterNotify">
+      <port binding="tns:MsoVnfAdapterAsyncImplPortBinding"
+            name="MsoVnfAdapterAsyncImplPort">
+         <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
+      </port>
+  </service>
+</definitions>
\ No newline at end of file