diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/Create3rdONAPE2EServiceInstance.groovy b/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/Create3rdONAPE2EServiceInstance.groovy
new file mode 100644
index 0000000..a2f4e35
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/Create3rdONAPE2EServiceInstance.groovy
@@ -0,0 +1,591 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * OPENECOMP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Technologies Co., Ltd. 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=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.scripts;
+
+import org.json.JSONObject
+import org.json.XML;
+
+import static org.apache.commons.lang3.StringUtils.*;
+import groovy.xml.XmlUtil
+import groovy.json.*
+import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
+import org.onap.so.bpmn.common.scripts.ExceptionUtil
+import org.onap.so.bpmn.common.scripts.ExternalAPIUtil
+import org.onap.so.bpmn.common.scripts.AaiUtil
+import org.onap.so.bpmn.common.scripts.MsoUtils
+import org.onap.so.bpmn.common.recipe.ResourceInput;
+import org.onap.so.bpmn.common.resource.ResourceRequestBuilder
+import org.onap.so.bpmn.core.WorkflowException
+import org.onap.so.bpmn.core.json.JsonUtils
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.AbstractBuilder
+import org.onap.so.rest.APIResponse
+import org.onap.so.bpmn.common.scripts.SDNCAdapterUtils
+import org.onap.so.bpmn.infrastructure.workflow.service.ServicePluginFactory
+import java.util.UUID;
+
+import org.camunda.bpm.engine.runtime.Execution
+import org.camunda.bpm.engine.delegate.BpmnError
+import org.camunda.bpm.engine.delegate.DelegateExecution
+import org.apache.commons.lang3.*
+import org.apache.commons.codec.binary.Base64;
+import org.springframework.web.util.UriUtils
+import org.onap.so.rest.RESTClient
+import org.onap.so.rest.RESTConfig
+
+/**
+ * This groovy class supports the <class>Create3rdONAPE2EServiceInstance.bpmn</class> process.
+ * flow for Create E2EServiceInstance in 3rdONAP 
+ */
+public class Create3rdONAPE2EServiceInstance extends AbstractServiceTaskProcessor {
+
+	String Prefix="CRE3rdONAPESI_"
+
+	ExceptionUtil exceptionUtil = new ExceptionUtil()
+
+	JsonUtils jsonUtil = new JsonUtils()
+
+	public void checkSPPartnerInfo (DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started checkSPPartnerInfo *****",  isDebugEnabled)
+		try {
+			//get bpmn inputs from resource request.
+			String requestId = execution.getVariable("mso-request-id")
+			String requestAction = execution.getVariable("requestAction")
+			utils.log("INFO","The requestAction is: " + requestAction,  isDebugEnabled)
+			String recipeParamsFromRequest = execution.getVariable("recipeParams")
+			utils.log("INFO","The recipeParams is: " + recipeParamsFromRequest,  isDebugEnabled)
+			String resourceInput = execution.getVariable("resourceInput")
+			utils.log("INFO","The resourceInput is: " + resourceInput,  isDebugEnabled)
+			//Get ResourceInput Object
+			ResourceInput resourceInputObj = ResourceRequestBuilder.getJsonObject(resourceInput, ResourceInput.class)			
+			String resourceInputPrameters = resourceInputObj.getResourceParameters()
+			String inputParametersJson = jsonUtil.getJsonValue(resourceInputPrameters, "requestInputs")
+			JSONObject inputParameters = new JSONObject(customizeResourceParam(inputParametersJson))
+			
+			// set local resourceInput
+			execution.setVariable(Prefix + "resourceInput", resourceInputObj)
+			
+			boolean is3rdONAPExist = false
+
+			if(inputParameters.has("id"))
+			{
+				String sppartnerId = inputParameters.get("id")
+			}
+			if(inputParameters.has("url"))
+			{
+				String sppartnerUrl = inputParameters.get("url")
+				if(!isBlank(sppartnerUrl)) {
+					execution.setVariable(Prefix + "sppartnerUrl", sppartnerUrl)
+					is3rdONAPExist = true
+				}
+				else {
+					is3rdONAPExist = false
+					String msg = "sppartner Url is blank."
+					utils.log("DEBUG", msg, isDebugEnabled)
+				}
+			}
+			if(inputParameters.has("providingServiceInvarianteUuid"))
+			{
+				String sppartnerInvarianteUUID = inputParameters.get("providingServiceInvarianteUuid")
+				execution.setVariable(Prefix + "sppartnerInvarianteUUID", sppartnerInvarianteUUID)
+				is3rdONAPExist = true
+			}
+			else {
+				is3rdONAPExist = false
+				String msg = "sppartner providingServiceInvarianteUuid is blank."
+				utils.log("DEBUG", msg, isDebugEnabled)
+			}
+			if(inputParameters.has("providingServiceUuid"))
+			{
+				String sppartnerUUID = inputParameters.get("providingServiceUuid")
+				execution.setVariable(Prefix + "sppartnerUUID", sppartnerUUID)
+				is3rdONAPExist = true
+			}
+			else {
+				is3rdONAPExist = false
+				String msg = "sppartner providingServiceUuid is blank."
+				utils.log("DEBUG", msg, isDebugEnabled)
+			}
+			
+			if(inputParameters.has("handoverMode"))
+			{
+				String handoverMode = inputParameters.get("handoverMode")
+				execution.setVariable(Prefix + "handoverMode", handoverMode)
+			    is3rdONAPExist = true
+			}
+			else {
+				is3rdONAPExist = false
+				String msg = "sppartner handoverMode is blank."
+				utils.log("DEBUG", msg, isDebugEnabled)
+			}
+			
+			execution.setVariable("Is3rdONAPExist", is3rdONAPExist)
+			execution.setVariable(Prefix + "serviceInstanceId", resourceInputObj.getServiceInstanceId())
+			execution.setVariable("mso-request-id", requestId)
+			execution.setVariable("mso-service-instance-id", resourceInputObj.getServiceInstanceId())
+
+		} catch (BpmnError e) {
+			throw e;
+		} catch (Exception ex){
+			String msg = "Exception in checkSPPartnerInfo " + ex.getMessage()
+			utils.log("DEBUG", msg, isDebugEnabled)
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+		}
+	}
+
+	public void checkLocallCall (DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started checkLocallCall *****",  isDebugEnabled)
+		try {
+					
+			//Get ResourceInput Object
+			ResourceInput resourceInputObj = execution.getVariable(Prefix + "resourceInput")			
+
+			//uuiRequest
+			String incomingRequest = resourceInputObj.getRequestsInputs()
+			String serviceParameters = jsonUtil.getJsonValue(incomingRequest, "service.parameters")
+			JSONObject inputParameters = new JSONObject(customizeResourceParam(serviceParameters))
+			execution.setVariable(Prefix + "serviceParameters", inputParameters)
+			
+			// CallSource is added only when ONAP SO calling 3rdONAP SO(Remote call)
+			boolean isLocalCall = true
+			if(inputParameters.has("CallSource"))
+			{
+				String callSource = inputParameters.get("CallSource")
+				if("3rdONAP".equalsIgnoreCase(callSource)) {
+					isLocalCall = false
+				}
+				execution.setVariable(Prefix + "CallSource", callSource)
+				utils.log("DEBUG", "callSource is: " + callSource , isDebugEnabled)
+				isLocalCall = true
+			}
+			
+			execution.setVariable("IsLocalCall", isLocalCall)
+
+		} catch (BpmnError e) {
+			throw e;
+		} catch (Exception ex){
+			String msg = "Exception in checkLocallCall " + ex.getMessage()
+			utils.log("DEBUG", msg, isDebugEnabled)
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+		}
+	}
+
+	public void preProcessRequest(DelegateExecution execution){
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started preProcessRequest *****",  isDebugEnabled)
+		try {
+			ResourceInput resourceInputObj = execution.getVariable(Prefix + "resourceInput")
+			String msg = ""
+
+			String globalSubscriberId = resourceInputObj.getGlobalSubscriberId()
+			if (isBlank(globalSubscriberId)) {
+				msg = "Input globalSubscriberId is null"
+				utils.log("INFO", msg, isDebugEnabled)
+				exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+			}
+			//set local variable
+			execution.setVariable("globalSubscriberId", globalSubscriberId);
+			utils.log("INFO", "globalSubscriberId:" + globalSubscriberId, isDebugEnabled)
+
+			String serviceType = resourceInputObj.getServiceType()
+			if (isBlank(serviceType)) {
+				msg = "Input serviceType is null"
+				utils.log("INFO", msg, isDebugEnabled)
+				exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+			}
+			execution.setVariable("serviceType", serviceType)
+			utils.log("INFO", "serviceType:" + serviceType, isDebugEnabled)
+			
+			String resourceName = resourceInputObj.getResourceInstanceName();
+			if (isBlank(resourceName)) {
+				msg = "Input resourceName is null"
+				utils.log("INFO", msg, isDebugEnabled)
+				exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+			}
+			execution.setVariable("resourceName", resourceName)
+			utils.log("INFO", "resourceName:" + resourceName, isDebugEnabled)
+			
+			int beginIndex = resourceName.indexOf("_") + 1
+			String serviceInstanceName = resourceName.substring(beginIndex)
+			execution.setVariable("serviceInstanceName", serviceInstanceName)
+			
+			String serviceInstanceId = resourceInputObj.getServiceInstanceId();
+			if (isBlank(serviceInstanceId)) {
+				msg = "Input serviceInstanceId is null"
+				utils.log("INFO", msg, isDebugEnabled)
+				exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+			}
+			execution.setVariable("serviceInstanceId", serviceInstanceId)
+			utils.log("INFO", "serviceInstanceId:" + serviceInstanceId, isDebugEnabled)
+
+		} catch (BpmnError e) {
+			throw e;
+		} catch (Exception ex){
+			String msg = "Exception in preProcessRequest " + ex.getMessage()
+			utils.log("DEBUG", msg, isDebugEnabled)
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+		}
+	}
+
+	public void prepareUpdateProgress(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started prepareUpdateProgress *****",  isDebugEnabled)
+		ResourceInput resourceInputObj = execution.getVariable(Prefix + "resourceInput")
+		String operType = resourceInputObj.getOperationType()
+		String resourceCustomizationUuid = resourceInputObj.getResourceModelInfo().getModelCustomizationUuid()
+		String ServiceInstanceId = resourceInputObj.getServiceInstanceId()
+		String modelName = resourceInputObj.getResourceModelInfo().getModelName()
+		String operationId = resourceInputObj.getOperationId()
+		String progress = execution.getVariable("progress")
+		String status = execution.getVariable("status")
+		String statusDescription = execution.getVariable("statusDescription")
+
+		String body = """
+                <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+                        xmlns:ns="http://org.openecomp.mso/requestsdb">
+                        <soapenv:Header/>
+                <soapenv:Body>
+                    <ns:updateResourceOperationStatus>
+                               <operType>${operType}</operType>
+                               <operationId>${operationId}</operationId>
+                               <progress>${progress}</progress>
+                               <resourceTemplateUUID>${resourceCustomizationUuid}</resourceTemplateUUID>
+                               <serviceId>${ServiceInstanceId}</serviceId>
+                               <status>${status}</status>
+                               <statusDescription>${statusDescription}</statusDescription>
+                    </ns:updateResourceOperationStatus>
+                </soapenv:Body>
+                </soapenv:Envelope>""";
+
+		setProgressUpdateVariables(execution, body)
+		utils.log("INFO"," ***** End prepareUpdateProgress *****",  isDebugEnabled)
+	}
+
+	public void allocateCrossONAPResource(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started allocateCrossONAPResource *****",  isDebugEnabled)
+		
+		//get TP links from AAI for SOTN handoverMode only
+		String handoverMode = execution.getVariable(Prefix + "handoverMode")
+		if("SOTN".equalsIgnoreCase(handoverMode)) {
+			//to do get tp link in AAI
+			
+			
+			// Put TP Link info into serviceParameters
+			String accessProviderId = ""
+			String accessClientId = ""
+			String accessTopologyId = ""
+			String accessNodeId = ""
+			String accessLtpId = ""
+			JSONObject inputParameters = execution.getVariable(Prefix + "serviceParameters")			
+			inputParameters.put("access-provider-id", accessProviderId)
+			inputParameters.put("access-client-id", accessClientId)
+			inputParameters.put("access-topology-id", accessTopologyId)
+			inputParameters.put("access-node-id", accessNodeId)
+			inputParameters.put("access-ltp-id", accessLtpId)
+			execution.setVariable(Prefix + "serviceParameters", inputParameters)
+		}
+		
+		utils.log("INFO", "Exited " + allocateCrossONAPResource, isDebugEnabled)
+	}
+
+	public void prepare3rdONAPRequest(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started prepare3rdONAPRequest *****",  isDebugEnabled)
+		
+		String sppartnerUrl = execution.getVariable(Prefix + "sppartnerUrl")
+		String extAPIPath = sppartnerUrl + 'serviceOrder'
+		execution.setVariable("ExternalAPIURL", extAPIPath)
+		
+		// ExternalAPI message format
+		String externalId = execution.getVariable("resourceName")
+		String category = "Network Service"
+		String description = "Service Order from SPPartner"
+		String requestedStartDate = utils.generateCurrentTimeInUtc()
+		String requestedCompletionDate = utils.generateCurrentTimeInUtc()
+		String priority = "1" // 0-4 0:highest
+		String subscriberId = execution.getVariable("globalSubscriberId")
+		String customerRole = ""
+		String subscriberName = ""
+		String referredType = execution.getVariable("serviceType")
+		String orderItemId = "1"
+		String action = "add" //for create
+		String serviceState = "active"
+		String serviceName = execution.getVariable("serviceInstanceName")
+		String serviceId = execution.getVariable("serviceInstanceId")
+		
+		Map<String, String> valueMap = new HashMap<>()
+		valueMap.put("externalId", '"' + externalId + '"')
+		valueMap.put("category", '"' + category + '"')
+		valueMap.put("description", '"' + description + '"')
+		valueMap.put("requestedStartDate", '"' + requestedStartDate + '"')
+		valueMap.put("requestedCompletionDate", '"' + requestedCompletionDate + '"')
+		valueMap.put("priority", '"'+ priority + '"')
+		valueMap.put("subscriberId", '"' + subscriberId + '"')
+		valueMap.put("customerRole", '"' + customerRole + '"')
+		valueMap.put("subscriberName", '"' + subscriberName + '"')
+		valueMap.put("referredType", '"' + referredType + '"')
+		valueMap.put("orderItemId", '"' + orderItemId + '"')
+		valueMap.put("action", '"' + action + '"')
+		valueMap.put("serviceState", '"' + serviceState + '"')
+		valueMap.put("serviceName", '"' + serviceName + '"')
+		valueMap.put("serviceId", '"' + serviceId + '"')
+		
+		ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(this)
+		
+		// insert CallSource='3rdONAP' to uuiRequest		
+		Map<String, String> callSourceMap = new HashMap<>()
+		callSourceMap.put("inputName", "CallSource")
+		callSourceMap.put("inputValue", "3rdONAP")
+		String _requestInputs_ = externalAPIUtil.setTemplate(ExternalAPIUtil.RequestInputsTemplate, callSourceMap)
+		
+		// Transfer all uuiRequest incomeParameters to ExternalAPI format
+		JSONObject inputParameters = execution.getVariable(Prefix + "serviceParameters")
+		for(String key : inputParameters.keySet()) {			
+			String inputName = key;
+			String inputValue = inputParameters.opt(key);
+			Map<String, String> requestInputsMap = new HashMap<>()
+			requestInputsMap.put("inputName", '"' + inputName+ '"')
+			requestInputsMap.put("inputValue", '"' + inputValue + '"')
+			_requestInputs_ += ",\n" + externalAPIUtil.setTemplate(ExternalAPIUtil.RequestInputsTemplate, requestInputsMap)
+		}		 
+		valueMap.put("_requestInputs_",  _requestInputs_)
+		
+		String payload = externalAPIUtil.setTemplate(ExternalAPIUtil.PostServiceOrderRequestsTemplate, valueMap)
+		execution.setVariable(Prefix + "payload", payload)
+		utils.log("INFO", "Exited " + prepare3rdONAPRequest, isDebugEnabled)
+	}
+
+	public void doCreateE2ESIin3rdONAP(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started doCreateE2ESIin3rdONAP *****",  isDebugEnabled)
+		
+		String extAPIPath = execution.getVariable("ExternalAPIURL")
+		String payload = execution.getVariable(Prefix + "payload")
+		
+		ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(this)
+
+		APIResponse response = externalAPIUtil.executeExternalAPIPostCall(execution, extAPIPath, payload)
+
+		int responseCode = response.getStatusCode()
+		execution.setVariable(Prefix + "postServiceOrderResponseCode", responseCode)
+		utils.log("DEBUG", "Post ServiceOrder response code is: " + responseCode, isDebugEnabled)
+
+		String extApiResponse = response.getResponseBodyAsString()
+		JSONObject responseObj = new JSONObject(extApiResponse)
+		execution.setVariable(Prefix + "postServiceOrderResponse", extApiResponse)
+		//Process Response
+		if(responseCode == 200 || responseCode == 201 || responseCode == 202 )
+			//200 OK 201 CREATED 202 ACCEPTED
+		{
+			utils.log("DEBUG", "Post ServiceOrder Received a Good Response", isDebugEnabled)
+			String serviceOrderId = responseObj.get("ServiceOrderId")
+			execution.setVariable(Prefix + "SuccessIndicator", true)
+			execution.setVariable("serviceOrderId", serviceOrderId)
+		}
+		else{
+			utils.log("DEBUG", "Post ServiceOrder Received a Bad Response Code. Response Code is: " + responseCode, isDebugEnabled)
+			exceptionUtil.buildAndThrowWorkflowException(execution, 500, "Post ServiceOrder Received a bad response from 3rdONAP External API")
+		}
+		
+		utils.log("INFO", "Exited " + doCreateE2ESIin3rdONAP, isDebugEnabled)
+	}
+	
+
+	public void getE2ESIProgressin3rdONAP(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started getE2ESIProgressin3rdONAP *****",  isDebugEnabled)
+		
+		String extAPIPath = execution.getVariable("ExternalAPIURL")
+		extAPIPath += "/" + execution.getVariable("ServiceOrderId")
+		
+		ExternalAPIUtil externalAPIUtil = new ExternalAPIUtil(this)
+
+		APIResponse response = externalAPIUtil.executeExternalAPIGetCall(execution, extAPIPath)
+
+		int responseCode = response.getStatusCode()
+		execution.setVariable(Prefix + "getServiceOrderResponseCode", responseCode)
+		utils.log("DEBUG", "Get ServiceOrder response code is: " + responseCode, isDebugEnabled)
+
+		String extApiResponse = response.getResponseBodyAsString()
+		JSONObject responseObj = new JSONObject(extApiResponse)
+		execution.setVariable(Prefix + "getServiceOrderResponse", extApiResponse)
+		
+		//Process Response //200 OK 201 CREATED 202 ACCEPTED
+		if(responseCode == 200 || responseCode == 201 || responseCode == 202 )			
+		{
+			utils.log("DEBUG", "Get ServiceOrder Received a Good Response", isDebugEnabled)
+			String serviceOrderState = responseObj.get("State")
+			execution.setVariable(Prefix + "SuccessIndicator", true)
+			execution.setVariable("serviceOrderState", serviceOrderState)			
+			
+			// Get serviceOrder State and process progress
+			if("ACKNOWLEDGED".equalsIgnoreCase(serviceOrderState)) {
+				execution.setVariable("progress", 15)
+				execution.setVariable("status", "processing")				
+			}
+			if("INPROGRESS".equalsIgnoreCase(serviceOrderState)) {
+				execution.setVariable("progress", 40)
+				execution.setVariable("status", "processing")
+			}
+			if("COMPLETED".equalsIgnoreCase(serviceOrderState)) {
+				execution.setVariable("progress", 100)
+				execution.setVariable("status", "finished")
+			}
+			if("FAILED".equalsIgnoreCase(serviceOrderState)) {
+				execution.setVariable("progress", 100)
+				execution.setVariable("status", "error")
+			}
+			else {
+				execution.setVariable("progress", 100)
+				execution.setVariable("status", "error")
+				execution.setVariable("statusDescription", "Create Service Order Status is unknown")
+			}
+			execution.setVariable("statusDescription", "Create Service Order Status is " + serviceOrderState)
+		}
+		else{			
+			utils.log("DEBUG", "Get ServiceOrder Received a Bad Response Code. Response Code is: " + responseCode, isDebugEnabled)
+			execution.setVariable("progress", 100)
+			execution.setVariable("status", "error")
+			execution.setVariable("statusDescription", "Get ServiceOrder Received a bad response")
+			exceptionUtil.buildAndThrowWorkflowException(execution, 500, "Get ServiceOrder Received a bad response from 3rdONAP External API")
+		}		
+		
+		utils.log("INFO", "Exited " + getE2ESIProgressin3rdONAP, isDebugEnabled)
+	}
+	
+	/**
+	 * delay 5 sec
+	 */
+	public void timeDelay(DelegateExecution execution) {
+		def isDebugEnabled= execution.getVariable("isDebugLogEnabled")
+		try {
+			Thread.sleep(5000);
+		} catch(InterruptedException e) {
+			utils.log("ERROR", "Time Delay exception" + e , isDebugEnabled)
+		}
+	}
+
+	public void saveSPPartnerInAAI(DelegateExecution execution) {
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started postCreateE2ESIin3rdONAP *****",  isDebugEnabled)	
+		
+		String sppartnerId = UUID.randomUUID().toString()
+		String sppartnerUrl = execution.getVariable(Prefix + "sppartnerUrl")
+		String serviceInstanceId = execution.getVariable("serviceInstanceId")
+		
+		AaiUtil aaiUriUtil = new AaiUtil(this)
+		String aai_uri = aaiUriUtil.getBusinessSPPartnerUri(execution)
+		String namespace = aaiUriUtil.getNamespaceFromUri(aai_uri)
+		
+		String payload =
+				"""<sp-partner xmlns=\"${namespace}\">
+			        <id>${sppartnerId}</id>
+			        <url>${sppartnerUrl}</url>
+					<service-instance>					
+					    <service-instance-id>${serviceInstanceId}</service-instance-id>				    
+				    </service-instance>
+					</sp-partner>""".trim()
+		utils.logAudit(payload)
+		
+		String aai_endpoint = execution.getVariable("URN_aai_endpoint")
+		String serviceAaiPath = "${aai_endpoint}${aai_uri}/" + UriUtils.encode(sppartnerId,"UTF-8")
+		
+		APIResponse response = aaiUriUtil.executeAAIPutCall(execution, serviceAaiPath, payload)
+		int responseCode = response.getStatusCode()
+		execution.setVariable(Prefix + "putSppartnerResponseCode", responseCode)
+		utils.log("DEBUG", "  Put sppartner response code is: " + responseCode, isDebugEnabled)
+
+		String aaiResponse = response.getResponseBodyAsString()
+		aaiResponse = StringEscapeUtils.unescapeXml(aaiResponse)
+		execution.setVariable(Prefix + "putSppartnerResponse", aaiResponse)
+
+		//Process Response
+		if(responseCode == 200 || responseCode == 201 || responseCode == 202 )
+			//200 OK 201 CREATED 202 ACCEPTED
+		{
+			utils.log("DEBUG", "PUT sppartner Received a Good Response", isDebugEnabled)
+			execution.setVariable(Prefix + "SuccessIndicator", true)
+		}
+		else
+		{
+			utils.log("DEBUG", "Put sppartner Received a Bad Response Code. Response Code is: " + responseCode, isDebugEnabled)
+			exceptionUtil.MapAAIExceptionToWorkflowExceptionGeneric(execution, aaiResponse, responseCode)
+			throw new BpmnError("MSOWorkflowException")
+		}
+		
+		utils.log("INFO", "Exited " + saveSPPartnerInAAI, isDebugEnabled)
+	}
+
+	private void setProgressUpdateVariables(DelegateExecution execution, String body) {
+		def dbAdapterEndpoint = execution.getVariable("URN_mso_adapters_openecomp_db_endpoint")
+		execution.setVariable("CVFMI_dbAdapterEndpoint", dbAdapterEndpoint)
+		execution.setVariable("CVFMI_updateResOperStatusRequest", body)
+	}	
+
+	public void postProcess(DelegateExecution execution){
+		def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+		utils.log("INFO"," ***** Started postProcess *****",  isDebugEnabled)
+		String responseCode = execution.getVariable(Prefix + "putSppartnerResponseCode")
+		String responseObj = execution.getVariable(Prefix + "putSppartnerResponse")
+
+		utils.log("INFO","response from AAI for put sppartner, response code :" + responseCode + "  response object :" + responseObj,  isDebugEnabled)
+		utils.log("INFO"," ***** Exit postProcess *****",  isDebugEnabled)
+	}
+
+	public void sendSyncResponse (DelegateExecution execution) {
+		def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+		utils.log("DEBUG", " *** sendSyncResponse *** ", isDebugEnabled)
+
+		try {
+			String operationStatus = "finished"
+			// RESTResponse for main flow
+			String resourceOperationResp = """{"operationStatus":"${operationStatus}"}""".trim()
+			utils.log("DEBUG", " sendSyncResponse to APIH:" + "\n" + resourceOperationResp, isDebugEnabled)
+			sendWorkflowResponse(execution, 202, resourceOperationResp)
+			execution.setVariable("sentSyncResponse", true)
+
+		} catch (Exception ex) {
+			String msg = "Exceptuion in sendSyncResponse:" + ex.getMessage()
+			utils.log("DEBUG", msg, isDebugEnabled)
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+		}
+		utils.log("DEBUG"," ***** Exit sendSyncResopnse *****",  isDebugEnabled)
+	}
+	
+	String customizeResourceParam(String inputParametersJson) {
+		List<Map<String, Object>> paramList = new ArrayList();
+		JSONObject jsonObject = new JSONObject(inputParametersJson);
+		Iterator iterator = jsonObject.keys();
+		while (iterator.hasNext()) {
+			String key = iterator.next();
+			HashMap<String, String> hashMap = new HashMap();
+			hashMap.put("name", key);
+			hashMap.put("value", jsonObject.get(key))
+			paramList.add(hashMap)
+		}
+		Map<String, List<Map<String, Object>>> paramMap = new HashMap();
+		paramMap.put("param", paramList);
+
+		return  new JSONObject(paramMap).toString();
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoCreateResources.groovy b/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoCreateResources.groovy
index f7c5c1b..9da8a90 100644
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoCreateResources.groovy
+++ b/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoCreateResources.groovy
@@ -233,6 +233,7 @@
 		 String serviceParameters = jsonUtil.getJsonValue(incomingRequest, "service.parameters")
 		 String resourceParameters = ResourceRequestBuilder.buildResourceRequestParameters(execution, serviceModelUuid, resourceCustomizationUuid, serviceParameters)
 		 resourceInput.setResourceParameters(resourceParameters)
+		 resourceInput.setRequestsInputs(incomingRequest)
 		 execution.setVariable("resourceInput", resourceInput)
 		 msoLogger.trace("COMPLETED prepareResourceRecipeRequest Process ")
 	 }
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteResources.groovy b/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteResources.groovy
deleted file mode 100644
index f6dd0ca..0000000
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteResources.groovy
+++ /dev/null
@@ -1,317 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP - SO
- * ================================================================================
- * Copyright (C) 2018 Huawei Technologies Co., Ltd. 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=========================================================
- */
-package org.onap.so.bpmn.infrastructure.scripts
-
-import org.json.JSONArray;
-
-import static org.apache.commons.lang3.StringUtils.*;
-import groovy.xml.XmlUtil
-import groovy.json.*
-
-import org.onap.so.bpmn.core.domain.ModelInfo
-import org.onap.so.bpmn.core.domain.Resource
-import org.onap.so.bpmn.core.domain.ServiceInstance
-import org.onap.so.bpmn.core.json.JsonUtils
-import org.onap.so.bpmn.common.scripts.AbstractServiceTaskProcessor
-import org.onap.so.bpmn.common.scripts.ExceptionUtil
-import org.onap.so.bpmn.common.scripts.SDNCAdapterUtils
-import org.onap.so.bpmn.core.WorkflowException
-import org.onap.so.rest.APIResponse;
-import org.onap.so.rest.RESTClient
-import org.onap.so.rest.RESTConfig
-
-import java.util.List;
-import java.util.UUID;
-import javax.xml.parsers.DocumentBuilder
-import javax.xml.parsers.DocumentBuilderFactory
-
-import org.camunda.bpm.engine.delegate.BpmnError
-import org.camunda.bpm.engine.delegate.DelegateExecution
-import org.camunda.bpm.engine.runtime.Execution
-import org.json.JSONObject;
-import org.apache.commons.lang3.*
-import org.apache.commons.codec.binary.Base64;
-import org.springframework.web.util.UriUtils;
-import org.w3c.dom.Document
-import org.w3c.dom.Element
-import org.w3c.dom.Node
-import org.w3c.dom.NodeList
-import org.xml.sax.InputSource
-
-import com.fasterxml.jackson.jaxrs.json.annotation.JSONP.Def;
-import org.onap.so.logger.MessageEnum
-import org.onap.so.logger.MsoLogger
-
-/**
- * This groovy class supports the <class>DoDeleteResources.bpmn</class> process.
- * 
- * Inputs:
- * @param - msoRequestId
- * @param - globalSubscriberId - O
- * @param - subscriptionServiceType - O
- * @param - serviceInstanceId
- * @param - serviceInstanceName - O
- * @param - serviceInputParams (should contain aic_zone for serviceTypes TRANSPORT,ATM)
- * @param - sdncVersion 
- * @param - failNotFound - TODO
- * @param - serviceInputParams - TODO 
- *
- * @param - delResourceList
- * @param - serviceRelationShip
- *
- * Outputs:
- * @param - WorkflowException
- * 
- * Rollback - Deferred
- */
-public class DoDeleteResources extends AbstractServiceTaskProcessor {
-	private static final MsoLogger msoLogger = MsoLogger.getMsoLogger(MsoLogger.Catalog.BPEL, DoDeleteResources.class);
-
-	String Prefix="DDELR_"
-	ExceptionUtil exceptionUtil = new ExceptionUtil()
-	JsonUtils jsonUtil = new JsonUtils()
-
-	public void preProcessRequest (DelegateExecution execution) {
-		msoLogger.trace("preProcessRequest ")
-		String msg = ""
-		
-		List<ServiceInstance> realNSRessources = new ArrayList<ServiceInstance>() 
-        
-        // related ns from AAI
-        String serviceRelationShip = execution.getVariable("serviceRelationShip")
-        def jsonSlurper = new JsonSlurper()
-        def jsonOutput = new JsonOutput()        
-        List<String> nsSequence = new ArrayList<String>() 
-        List relationShipList =  jsonSlurper.parseText(serviceRelationShip)
-        if (relationShipList != null) {
-           relationShipList.each {
-               String resourceType = it.resourceType
-               nsSequence.add(resourceType)
-           }
-        }       
-     
-        execution.setVariable("currentNSIndex", 0)
-        execution.setVariable("nsSequence", nsSequence)
-        execution.setVariable("realNSRessources", realNSRessources)
-        msoLogger.info("nsSequence: " + nsSequence) 
-
-		msoLogger.trace("Exit preProcessRequest ")
-    }
-
-   public void getCurrentNS(execution){
-       msoLogger.trace("Start getCurrentNS Process ")    
-       
-       def currentIndex = execution.getVariable("currentNSIndex")
-       List<String> nsSequence = execution.getVariable("nsSequence") 
-       String nsResourceType =  nsSequence.get(currentIndex)
-       
-       // GET AAI by Name, not ID, for process convenient
-       execution.setVariable("GENGS_type", "service-instance")
-       execution.setVariable("GENGS_serviceInstanceId", "") 
-       execution.setVariable("GENGS_serviceInstanceName", nsResourceType)       
-
-       msoLogger.trace("COMPLETED getCurrentNS Process ")  
-   }	
-	
-	public void postProcessAAIGET(DelegateExecution execution) {
-		msoLogger.trace("postProcessAAIGET2 ")
-		String msg = ""
-
-		try {
-			String nsResourceName = execution.getVariable("GENGS_serviceInstanceName")
-			boolean succInAAI = execution.getVariable("GENGS_SuccessIndicator")
-			if(!succInAAI){
-				msoLogger.info("Error getting Service-instance from AAI in postProcessAAIGET", + nsResourceName)
-				WorkflowException workflowException = execution.getVariable("WorkflowException")
-				msoLogger.debug("workflowException: " + workflowException)
-				if(workflowException != null){
-					exceptionUtil.buildAndThrowWorkflowException(execution, workflowException.getErrorCode(), workflowException.getErrorMessage())
-				}
-				else
-				{
-					msg = "Failure in postProcessAAIGET GENGS_SuccessIndicator:" + succInAAI
-					msoLogger.info(msg)
-					exceptionUtil.buildAndThrowWorkflowException(execution, 2500, msg)
-				}
-			}
-			else
-			{
-				boolean foundInAAI = execution.getVariable("GENGS_FoundIndicator")
-				if(foundInAAI){
-					String aaiService = execution.getVariable("GENGS_service")
-					if (!isBlank(aaiService)) {
-					    String svcId = utils.getNodeText(aaiService, "service-instance-id")
-						//String mn = utils.getNodeText(aaiService, "model-name")						
-						String mIuuid = utils.getNodeText(aaiService, "model-invariant-id")
-						String muuid = utils.getNodeText(aaiService, "model-version-id")
-						String mCuuid = utils.getNodeText(aaiService, "model-customization-uuid")
-						ServiceInstance rc = new ServiceInstance()
-						ModelInfo modelInfo = new ModelInfo()
-						//modelInfo.setModelName(mn)
-						modelInfo.setModelUuid(muuid)						
-						modelInfo.setModelInvariantUuid(mIuuid)
-						modelInfo.getModelCustomizationUuid(mCuuid)
-						rc.setModelInfo(modelInfo)
-						rc.setInstanceId(svcId)
-						rc.setInstanceName(nsResourceName)
-
-						List<ServiceInstance> realNSRessources = execution.getVariable("realNSRessources")
-						realNSRessources.add(rc)
-						execution.setVariable("realNSRessources", realNSRessources)
-						
-						msoLogger.info("Found Service-instance in AAI.serviceInstanceName:" + execution.getVariable("serviceInstanceName"))
-					}
-				}
-			}
-		} catch (BpmnError e) {
-			throw e;
-		} catch (Exception ex) {
-			msg = "Exception in DoDeleteResources.postProcessAAIGET " + ex.getMessage()
-			msoLogger.info(msg)
-			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
-		}
-		msoLogger.trace("Exit postProcessAAIGET ")
-	}
-	
-    public void parseNextNS(execution){
-       msoLogger.trace("Start parseNextNS Process ")    
-       def currentIndex = execution.getVariable("currentNSIndex")
-       def nextIndex =  currentIndex + 1
-       execution.setVariable("currentNSIndex", nextIndex)
-       List<String> nsSequence = execution.getVariable("nsSequence")    
-       if(nextIndex >= nsSequence.size()){
-           execution.setVariable("allNsFinished", "true")
-       }else{
-           execution.setVariable("allNsFinished", "false")
-       }
-       msoLogger.trace("COMPLETED parseNextNS Process ")            
-   }   
-
-   
-   public void sequenceResource(execution){
-       msoLogger.trace("STARTED sequenceResource Process ")
-       List<String> nsResources = new ArrayList<String>()
-       List<String> wanResources = new ArrayList<String>()
-       List<String> resourceSequence = new  ArrayList<String>()
-       
-       // get delete resource list and order list
-       List<Resource> delResourceList = execution.getVariable("delResourceList")
-       // existing resource list
-       List<ServiceInstance> existResourceList = execution.getVariable("realNSRessources")
-       
-       for(ServiceInstance rc_e : existResourceList){
-       
-           String muuid = rc_e.getModelInfo().getModelUuid()
-           String mIuuid = rc_e.getModelInfo().getModelInvariantUuid()
-           String mCuuid = rc_e.getModelInfo().getModelCustomizationUuid()
-           rcType = rc_e.getInstanceName()
-           
-           for(Resource rc_d : delResourceList){                 
-           
-                if(rc_d.getModelInfo().getModelUuid() == muuid 
-                && rc_d.getModelInfo().getModelInvariantUuid() == mIuuid 
-                && rc_d.getModelInfo().getModelCustomizationUuid() == mCuuid) {
-                
-                   if(StringUtils.containsIgnoreCase(rcType, "overlay") 
-                   || StringUtils.containsIgnoreCase(rcType, "underlay")){                   
-                       wanResources.add(rcType)
-                   }else{
-                       nsResources.add(rcType)
-                   }
-                   
-               }
-           }
-           
-       }
-  
-       resourceSequence.addAll(wanResources)
-       resourceSequence.addAll(nsResources)
-       String isContainsWanResource = wanResources.isEmpty() ? "false" : "true"
-       execution.setVariable("isContainsWanResource", isContainsWanResource)
-       execution.setVariable("currentResourceIndex", 0)
-       execution.setVariable("resourceSequence", resourceSequence)
-       msoLogger.info("resourceSequence: " + resourceSequence)  
-       execution.setVariable("wanResources", wanResources)
-       msoLogger.trace("END sequenceResource Process ")
-   }
-   
-   public void getCurrentResource(execution){
-       msoLogger.trace("Start getCurrentResoure Process ")    
-       def currentIndex = execution.getVariable("currentResourceIndex")
-       List<String> resourceSequence = execution.getVariable("resourceSequence")  
-       List<String> wanResources = execution.getVariable("wanResources")  
-       String resourceName =  resourceSequence.get(currentIndex)
-       execution.setVariable("resourceType",resourceName)
-       if(wanResources.contains(resourceName)){
-           execution.setVariable("controllerInfo", "SDN-C")
-       }else{
-           execution.setVariable("controllerInfo", "VF-C")
-       }
-       msoLogger.trace("COMPLETED getCurrentResoure Process ")  
-   }
-   
-   /**
-    * prepare delete parameters
-    */
-   public void preResourceDelete(execution, resourceName){
-
-       msoLogger.trace("STARTED preResourceDelete Process ")
-       
-       List<ServiceInstance> existResourceList = execution.getVariable("realNSRessources")
-           
-       for(ServiceInstance rc_e : existResourceList){
-           
-            if(StringUtils.containsIgnoreCase(rc_e.getInstanceName(), resourceName)) {
-                
-				   String resourceInstanceUUID = rc_e.getInstanceId()
-				   String resourceTemplateUUID = rc_e.getModelInfo().getModelUuid()
-				   execution.setVariable("resourceInstanceId", resourceInstanceUUID)
-				   execution.setVariable("resourceTemplateId", resourceTemplateUUID)				   
-				   execution.setVariable("resourceType", resourceName)
-			       msoLogger.info("Delete Resource Info resourceTemplate Id :" + resourceTemplateUUID + "  resourceInstanceId: " + resourceInstanceUUID + " resourceType: " + resourceName)
-           }
-       }       
-    
-       msoLogger.trace("END preResourceDelete Process ")
-   }
-   
-   public void parseNextResource(execution){
-       msoLogger.trace("Start parseNextResource Process ")    
-       def currentIndex = execution.getVariable("currentResourceIndex")
-       def nextIndex =  currentIndex + 1
-       execution.setVariable("currentResourceIndex", nextIndex)
-       List<String> resourceSequence = execution.getVariable("resourceSequence")    
-       if(nextIndex >= resourceSequence.size()){
-           execution.setVariable("allResourceFinished", "true")
-       }else{
-           execution.setVariable("allResourceFinished", "false")
-       }
-       msoLogger.trace("COMPLETED parseNextResource Process ")            
-   }
-   
-     /**
-      * post config request.
-      */
-     public void postConfigRequest(execution){
-         //to do
-     } 
-   
-}
- 
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Create3rdONAPE2EServiceInstance.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Create3rdONAPE2EServiceInstance.bpmn
new file mode 100644
index 0000000..51e12d2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Create3rdONAPE2EServiceInstance.bpmn
@@ -0,0 +1,740 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.3">
+  <bpmn:process id="Delete3rdONAPE2EServiceInstance" name="Delete3rdONAPE2EServiceInstance" isExecutable="true">
+    <bpmn:startEvent id="StartEvent_0hj12gh" name="Delete3rdONAPRES_Start">
+      <bpmn:outgoing>SequenceFlow_190fewc</bpmn:outgoing>
+    </bpmn:startEvent>
+    <bpmn:scriptTask id="ScriptTask_0rs5t7w" name="prepare 3rdONAP Delete Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0mmu3kz</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_15mvx68</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepare3rdONAPRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:endEvent id="EndEvent_013449q" name="Delete3rdONAPRES_End">
+      <bpmn:incoming>SequenceFlow_0a8k9xi</bpmn:incoming>
+    </bpmn:endEvent>
+    <bpmn:scriptTask id="ScriptTask_1b88nnk" name="Save SPPartner In AAI">
+      <bpmn:incoming>SequenceFlow_0y2g8mr</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0znwu8z</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.saveSPPartnerInAAI(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_16rcjl3" name="Pre Process Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1ttrqml</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0brxjic</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.preProcessRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_10n1tb6" name="Init Delete resource progress" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0brxjic</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0ezt5f0</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "5")
+execution.setVariable("status", "processing")
+execution.setVariable("statusDescription", "Start Creating")
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareUpdateProgress(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_039ju3f" name="resource progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_0ezt5f0</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1suwdgi</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_1aj6okk" name="Post process" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0znwu8z</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_04hwfll</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.postProcess(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0r2cxvb" name="Delete E2ESI in 3rdONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_15mvx68</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0wp73cw</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.doDeleteE2ESIin3rdONAP(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_0p5029r" name="resource progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_0fkfn70</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1luhljs</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_03xvdc8" name="Allocate connection resources for cross ONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1suwdgi</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0mmu3kz</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.allocateCrossONAPResource(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_190fewc" sourceRef="StartEvent_0hj12gh" targetRef="ScriptTask_160sboy" />
+    <bpmn:sequenceFlow id="SequenceFlow_0brxjic" sourceRef="ScriptTask_16rcjl3" targetRef="ScriptTask_10n1tb6" />
+    <bpmn:sequenceFlow id="SequenceFlow_0znwu8z" sourceRef="ScriptTask_1b88nnk" targetRef="ScriptTask_1aj6okk" />
+    <bpmn:sequenceFlow id="SequenceFlow_0ezt5f0" sourceRef="ScriptTask_10n1tb6" targetRef="ServiceTask_039ju3f" />
+    <bpmn:scriptTask id="ScriptTask_160sboy" name="Check SPPartner Info" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_190fewc</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1f71u71</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.checkSPPartnerInfo(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_01c0nhq" name="Is 3rdONAP SPPartner Existing" default="SequenceFlow_0h1rnsw">
+      <bpmn:incoming>SequenceFlow_1f71u71</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0h1rnsw</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_1msw3xo</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_0h1rnsw" name="no" sourceRef="ExclusiveGateway_01c0nhq" targetRef="IntermediateThrowEvent_1y4vypx" />
+    <bpmn:sequenceFlow id="SequenceFlow_1msw3xo" name="yes" sourceRef="ExclusiveGateway_01c0nhq" targetRef="ScriptTask_1y8kdt3">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("Is3rdONAPExist" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_0cql41g" name="Start3rdONAPDeleteE2ESI">
+      <bpmn:outgoing>SequenceFlow_1ttrqml</bpmn:outgoing>
+      <bpmn:linkEventDefinition name="Start3rdONAPDeleteE2ESI" />
+    </bpmn:intermediateCatchEvent>
+    <bpmn:sequenceFlow id="SequenceFlow_1f71u71" sourceRef="ScriptTask_160sboy" targetRef="ExclusiveGateway_01c0nhq" />
+    <bpmn:sequenceFlow id="SequenceFlow_1ttrqml" sourceRef="IntermediateCatchEvent_0cql41g" targetRef="ScriptTask_16rcjl3" />
+    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_0wbo4nq" name="GoTo Start3rdONAPDeleteE2ESI">
+      <bpmn:incoming>SequenceFlow_0o376do</bpmn:incoming>
+      <bpmn:linkEventDefinition name="Start3rdONAPDeleteE2ESI" />
+    </bpmn:intermediateThrowEvent>
+    <bpmn:scriptTask id="ScriptTask_0yz8d8c" name="Query E2ESI progress in 3rdONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_13s0mg5</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_0kkou66</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0fkfn70</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.getE2ESIProgressin3rdONAP(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_04hwfll" sourceRef="ScriptTask_1aj6okk" targetRef="ScriptTask_18auy29" />
+    <bpmn:scriptTask id="ScriptTask_1y8kdt3" name="Check Locall Call" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1msw3xo</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1kcu53z</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.checkLocallCall(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_1kcu53z" sourceRef="ScriptTask_1y8kdt3" targetRef="ExclusiveGateway_0pj14lp" />
+    <bpmn:exclusiveGateway id="ExclusiveGateway_0pj14lp" name="Is Called from Local">
+      <bpmn:incoming>SequenceFlow_1kcu53z</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0o376do</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_1y8xkzy</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_0o376do" name="yes" sourceRef="ExclusiveGateway_0pj14lp" targetRef="IntermediateThrowEvent_0wbo4nq">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("IsLocalCall" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_1y8xkzy" name="no" sourceRef="ExclusiveGateway_0pj14lp" targetRef="IntermediateThrowEvent_1y4vypx" />
+    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_1y4vypx" name="GoTo  StartLocalONAPDeleteE2ESI">
+      <bpmn:incoming>SequenceFlow_1y8xkzy</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_0h1rnsw</bpmn:incoming>
+      <bpmn:linkEventDefinition name=" StartLocalONAPDeleteE2ESI" />
+    </bpmn:intermediateThrowEvent>
+    <bpmn:endEvent id="EndEvent_0o0n3fa" name="Delete3rdONAPRES_End">
+      <bpmn:incoming>SequenceFlow_131f1jj</bpmn:incoming>
+    </bpmn:endEvent>
+    <bpmn:scriptTask id="ScriptTask_1lazb8l" name="Save SPPartner In AAI">
+      <bpmn:incoming>SequenceFlow_1wq9f5k</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_18gb81f</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.saveSPPartnerInAAI(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0buj724" name="Pre Process Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0wnyy50</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0z9axn6</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.preProcessRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0rixvgj" name="Prepare Delete resource progress" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0z9axn6</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_04l4to1</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "100")
+execution.setVariable("status", "finished")
+execution.setVariable("statusDescription", "Local Creation Only")
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareUpdateProgress(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_1kgvq5e" name="update progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_18gb81f</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_1swgag2</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0dkbe3r</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_17s3yrn" name="Post process" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0dkbe3r</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1wn6y9u</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.postProcess(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_18h4prx" name="StartLocalONAPDeleteE2ESI">
+      <bpmn:outgoing>SequenceFlow_0wnyy50</bpmn:outgoing>
+      <bpmn:linkEventDefinition name="StartLocalONAPDeleteE2ESI" />
+    </bpmn:intermediateCatchEvent>
+    <bpmn:scriptTask id="ScriptTask_03gddkg" name="Send Sync Ack Response" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1wn6y9u</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_131f1jj</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.sendSyncResponse(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_0z9axn6" sourceRef="ScriptTask_0buj724" targetRef="ScriptTask_0rixvgj" />
+    <bpmn:sequenceFlow id="SequenceFlow_131f1jj" sourceRef="ScriptTask_03gddkg" targetRef="EndEvent_0o0n3fa" />
+    <bpmn:sequenceFlow id="SequenceFlow_18gb81f" sourceRef="ScriptTask_1lazb8l" targetRef="ServiceTask_1kgvq5e" />
+    <bpmn:sequenceFlow id="SequenceFlow_0wnyy50" sourceRef="IntermediateCatchEvent_18h4prx" targetRef="ScriptTask_0buj724" />
+    <bpmn:sequenceFlow id="SequenceFlow_04l4to1" sourceRef="ScriptTask_0rixvgj" targetRef="ExclusiveGateway_1cz6dwq" />
+    <bpmn:sequenceFlow id="SequenceFlow_1wn6y9u" sourceRef="ScriptTask_17s3yrn" targetRef="ScriptTask_03gddkg" />
+    <bpmn:exclusiveGateway id="ExclusiveGateway_1cz6dwq" name="Is 3rdONAP SPPartner Existing" default="SequenceFlow_1swgag2">
+      <bpmn:incoming>SequenceFlow_04l4to1</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1wq9f5k</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_1swgag2</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_0dkbe3r" sourceRef="ServiceTask_1kgvq5e" targetRef="ScriptTask_17s3yrn" />
+    <bpmn:sequenceFlow id="SequenceFlow_1wq9f5k" name="yes" sourceRef="ExclusiveGateway_1cz6dwq" targetRef="ScriptTask_1lazb8l">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("Is3rdONAPExist" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_1swgag2" name="No" sourceRef="ExclusiveGateway_1cz6dwq" targetRef="ServiceTask_1kgvq5e" />
+    <bpmn:scriptTask id="ScriptTask_1pdhttw" name="timeDelay" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1udji9x</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0kkou66</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.timeDelay(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_1662gjm" name="Delete SI in 3rdONAP Success?" default="SequenceFlow_12seu6n">
+      <bpmn:incoming>SequenceFlow_0wp73cw</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_13s0mg5</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_12seu6n</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_1we7izu" name="Delete  SI in 3rdONAP Finished?">
+      <bpmn:incoming>SequenceFlow_1luhljs</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1udji9x</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_0y2g8mr</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:scriptTask id="ScriptTask_18auy29" name="Send Sync Ack Response" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_04hwfll</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0a8k9xi</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.sendSyncResponse(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_0a8k9xi" sourceRef="ScriptTask_18auy29" targetRef="EndEvent_013449q" />
+    <bpmn:sequenceFlow id="SequenceFlow_15mvx68" sourceRef="ScriptTask_0rs5t7w" targetRef="ScriptTask_0r2cxvb" />
+    <bpmn:sequenceFlow id="SequenceFlow_0wp73cw" sourceRef="ScriptTask_0r2cxvb" targetRef="ExclusiveGateway_1662gjm" />
+    <bpmn:sequenceFlow id="SequenceFlow_13s0mg5" name="yes" sourceRef="ExclusiveGateway_1662gjm" targetRef="ScriptTask_0yz8d8c">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("serviceOrderId" )  != null && execution.getVariable("serviceOrderId" )  != "" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_0fkfn70" sourceRef="ScriptTask_0yz8d8c" targetRef="ServiceTask_0p5029r" />
+    <bpmn:sequenceFlow id="SequenceFlow_1suwdgi" sourceRef="ServiceTask_039ju3f" targetRef="ScriptTask_03xvdc8" />
+    <bpmn:sequenceFlow id="SequenceFlow_0kkou66" sourceRef="ScriptTask_1pdhttw" targetRef="ScriptTask_0yz8d8c" />
+    <bpmn:sequenceFlow id="SequenceFlow_1luhljs" sourceRef="ServiceTask_0p5029r" targetRef="ExclusiveGateway_1we7izu" />
+    <bpmn:sequenceFlow id="SequenceFlow_1udji9x" name="no" sourceRef="ExclusiveGateway_1we7izu" targetRef="ScriptTask_1pdhttw">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[ #{(execution.getVariable("status" ) == "processing" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:endEvent id="EndEvent_19joonf">
+      <bpmn:incoming>SequenceFlow_1mei7hu</bpmn:incoming>
+    </bpmn:endEvent>
+    <bpmn:sequenceFlow id="SequenceFlow_12seu6n" name="no" sourceRef="ExclusiveGateway_1662gjm" targetRef="ScriptTask_07cq0pw" />
+    <bpmn:sequenceFlow id="SequenceFlow_0y2g8mr" name="yes" sourceRef="ExclusiveGateway_1we7izu" targetRef="ScriptTask_1b88nnk">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[ #{(execution.getVariable("status" )  != "processing" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_0mmu3kz" sourceRef="ScriptTask_03xvdc8" targetRef="ScriptTask_0rs5t7w" />
+    <bpmn:scriptTask id="ScriptTask_07cq0pw" name="update resource progress failed" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_12seu6n</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0i9iiuo</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "100")
+execution.setVariable("status", "error")
+execution.setVariable("statusDescription", "Delete Service Order failed ")
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareUpdateProgress(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_1ixmamy" name="resource progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_0i9iiuo</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1mei7hu</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:sequenceFlow id="SequenceFlow_0i9iiuo" sourceRef="ScriptTask_07cq0pw" targetRef="ServiceTask_1ixmamy" />
+    <bpmn:sequenceFlow id="SequenceFlow_1mei7hu" sourceRef="ServiceTask_1ixmamy" targetRef="EndEvent_19joonf" />
+  </bpmn:process>
+  <bpmn:error id="Error_0nbdy47" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Delete3rdONAPE2EServiceInstance">
+      <bpmndi:BPMNShape id="StartEvent_0hj12gh_di" bpmnElement="StartEvent_0hj12gh">
+        <dc:Bounds x="-9" y="-418" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-30" y="-382" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0rs5t7w_di" bpmnElement="ScriptTask_0rs5t7w">
+        <dc:Bounds x="-41" y="12" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_013449q_di" bpmnElement="EndEvent_013449q">
+        <dc:Bounds x="799" y="393" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="763" y="435" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1b88nnk_di" bpmnElement="ScriptTask_1b88nnk">
+        <dc:Bounds x="-41" y="371" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_16rcjl3_di" bpmnElement="ScriptTask_16rcjl3">
+        <dc:Bounds x="163" y="-153" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_10n1tb6_di" bpmnElement="ScriptTask_10n1tb6">
+        <dc:Bounds x="366" y="-153" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_039ju3f_di" bpmnElement="ServiceTask_039ju3f">
+        <dc:Bounds x="573" y="-153" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1aj6okk_di" bpmnElement="ScriptTask_1aj6okk">
+        <dc:Bounds x="231" y="371" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0r2cxvb_di" bpmnElement="ScriptTask_0r2cxvb">
+        <dc:Bounds x="163" y="12" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_0p5029r_di" bpmnElement="ServiceTask_0p5029r">
+        <dc:Bounds x="798" y="12" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_03xvdc8_di" bpmnElement="ScriptTask_03xvdc8">
+        <dc:Bounds x="798" y="-153" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_190fewc_di" bpmnElement="SequenceFlow_190fewc">
+        <di:waypoint xsi:type="dc:Point" x="27" y="-400" />
+        <di:waypoint xsi:type="dc:Point" x="163" y="-400" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="95" y="-422" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0brxjic_di" bpmnElement="SequenceFlow_0brxjic">
+        <di:waypoint xsi:type="dc:Point" x="263" y="-113" />
+        <di:waypoint xsi:type="dc:Point" x="366" y="-113" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="269.5" y="-135" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0znwu8z_di" bpmnElement="SequenceFlow_0znwu8z">
+        <di:waypoint xsi:type="dc:Point" x="59" y="411" />
+        <di:waypoint xsi:type="dc:Point" x="231" y="411" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="100" y="389" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0ezt5f0_di" bpmnElement="SequenceFlow_0ezt5f0">
+        <di:waypoint xsi:type="dc:Point" x="466" y="-113" />
+        <di:waypoint xsi:type="dc:Point" x="573" y="-113" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="474.5" y="-135" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_160sboy_di" bpmnElement="ScriptTask_160sboy">
+        <dc:Bounds x="163" y="-440" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_01c0nhq_di" bpmnElement="ExclusiveGateway_01c0nhq" isMarkerVisible="true">
+        <dc:Bounds x="380" y="-426" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="378" y="-458" width="56" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0h1rnsw_di" bpmnElement="SequenceFlow_0h1rnsw">
+        <di:waypoint xsi:type="dc:Point" x="405" y="-376" />
+        <di:waypoint xsi:type="dc:Point" x="405" y="-282" />
+        <di:waypoint xsi:type="dc:Point" x="525" y="-282" />
+        <di:waypoint xsi:type="dc:Point" x="525" y="-282" />
+        <di:waypoint xsi:type="dc:Point" x="799" y="-282" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="389" y="-368.53991291727147" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1msw3xo_di" bpmnElement="SequenceFlow_1msw3xo">
+        <di:waypoint xsi:type="dc:Point" x="430" y="-401" />
+        <di:waypoint xsi:type="dc:Point" x="563" y="-400" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="499.95320010152244" y="-422.3646305622811" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="IntermediateCatchEvent_0cql41g_di" bpmnElement="IntermediateCatchEvent_0cql41g">
+        <dc:Bounds x="-9" y="-131" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-29" y="-95" width="85" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1f71u71_di" bpmnElement="SequenceFlow_1f71u71">
+        <di:waypoint xsi:type="dc:Point" x="263" y="-400" />
+        <di:waypoint xsi:type="dc:Point" x="380" y="-401" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="321.5" y="-422.5" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1ttrqml_di" bpmnElement="SequenceFlow_1ttrqml">
+        <di:waypoint xsi:type="dc:Point" x="27" y="-113" />
+        <di:waypoint xsi:type="dc:Point" x="163" y="-113" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="50" y="-135" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="IntermediateThrowEvent_0wbo4nq_di" bpmnElement="IntermediateThrowEvent_0wbo4nq">
+        <dc:Bounds x="1026" y="-418" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1004" y="-377" width="85" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0yz8d8c_di" bpmnElement="ScriptTask_0yz8d8c">
+        <dc:Bounds x="573" y="12" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_04hwfll_di" bpmnElement="SequenceFlow_04hwfll">
+        <di:waypoint xsi:type="dc:Point" x="331" y="411" />
+        <di:waypoint xsi:type="dc:Point" x="509" y="411" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="375" y="389" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_1y8kdt3_di" bpmnElement="ScriptTask_1y8kdt3">
+        <dc:Bounds x="563" y="-440" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1kcu53z_di" bpmnElement="SequenceFlow_1kcu53z">
+        <di:waypoint xsi:type="dc:Point" x="663" y="-400" />
+        <di:waypoint xsi:type="dc:Point" x="792" y="-401" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="727.5" y="-422.5" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ExclusiveGateway_0pj14lp_di" bpmnElement="ExclusiveGateway_0pj14lp" isMarkerVisible="true">
+        <dc:Bounds x="792" y="-426" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="776" y="-458" width="83" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0o376do_di" bpmnElement="SequenceFlow_0o376do">
+        <di:waypoint xsi:type="dc:Point" x="842" y="-401" />
+        <di:waypoint xsi:type="dc:Point" x="1026" y="-400" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="924.8735220112762" y="-422.0003436810377" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1y8xkzy_di" bpmnElement="SequenceFlow_1y8xkzy">
+        <di:waypoint xsi:type="dc:Point" x="817" y="-376" />
+        <di:waypoint xsi:type="dc:Point" x="817" y="-300" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="827" y="-357" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="IntermediateThrowEvent_1y4vypx_di" bpmnElement="IntermediateThrowEvent_1y4vypx">
+        <dc:Bounds x="799" y="-300" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="777" y="-259" width="85" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_0o0n3fa_di" bpmnElement="EndEvent_0o0n3fa">
+        <dc:Bounds x="794" y="733" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="758" y="775" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1lazb8l_di" bpmnElement="ScriptTask_1lazb8l">
+        <dc:Bounds x="762" y="512" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0buj724_di" bpmnElement="ScriptTask_0buj724">
+        <dc:Bounds x="139" y="512" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0rixvgj_di" bpmnElement="ScriptTask_0rixvgj">
+        <dc:Bounds x="342" y="512" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_1kgvq5e_di" bpmnElement="ServiceTask_1kgvq5e">
+        <dc:Bounds x="-41" y="711" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_17s3yrn_di" bpmnElement="ScriptTask_17s3yrn">
+        <dc:Bounds x="231" y="711" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="IntermediateCatchEvent_18h4prx_di" bpmnElement="IntermediateCatchEvent_18h4prx">
+        <dc:Bounds x="-9" y="534" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-29" y="570" width="85" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_03gddkg_di" bpmnElement="ScriptTask_03gddkg">
+        <dc:Bounds x="496" y="711" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0z9axn6_di" bpmnElement="SequenceFlow_0z9axn6">
+        <di:waypoint xsi:type="dc:Point" x="239" y="552" />
+        <di:waypoint xsi:type="dc:Point" x="342" y="552" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="246" y="530" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_131f1jj_di" bpmnElement="SequenceFlow_131f1jj">
+        <di:waypoint xsi:type="dc:Point" x="596" y="751" />
+        <di:waypoint xsi:type="dc:Point" x="794" y="751" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="650" y="729" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_18gb81f_di" bpmnElement="SequenceFlow_18gb81f">
+        <di:waypoint xsi:type="dc:Point" x="812" y="592" />
+        <di:waypoint xsi:type="dc:Point" x="812" y="641" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="641" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="711" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="365.5" y="619" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0wnyy50_di" bpmnElement="SequenceFlow_0wnyy50">
+        <di:waypoint xsi:type="dc:Point" x="27" y="552" />
+        <di:waypoint xsi:type="dc:Point" x="139" y="552" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="38" y="530" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_04l4to1_di" bpmnElement="SequenceFlow_04l4to1">
+        <di:waypoint xsi:type="dc:Point" x="442" y="552" />
+        <di:waypoint xsi:type="dc:Point" x="564" y="552" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="458" y="530" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1wn6y9u_di" bpmnElement="SequenceFlow_1wn6y9u">
+        <di:waypoint xsi:type="dc:Point" x="331" y="751" />
+        <di:waypoint xsi:type="dc:Point" x="496" y="751" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="368.5" y="729" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ExclusiveGateway_1cz6dwq_di" bpmnElement="ExclusiveGateway_1cz6dwq" isMarkerVisible="true">
+        <dc:Bounds x="564" y="527" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="558" y="495" width="56" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0dkbe3r_di" bpmnElement="SequenceFlow_0dkbe3r">
+        <di:waypoint xsi:type="dc:Point" x="59" y="751" />
+        <di:waypoint xsi:type="dc:Point" x="231" y="751" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="100" y="729" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1wq9f5k_di" bpmnElement="SequenceFlow_1wq9f5k">
+        <di:waypoint xsi:type="dc:Point" x="614" y="552" />
+        <di:waypoint xsi:type="dc:Point" x="762" y="552" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="679" y="530" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1swgag2_di" bpmnElement="SequenceFlow_1swgag2">
+        <di:waypoint xsi:type="dc:Point" x="589" y="577" />
+        <di:waypoint xsi:type="dc:Point" x="589" y="641" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="641" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="711" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="293.22499999999997" y="619" width="13" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_1pdhttw_di" bpmnElement="ScriptTask_1pdhttw">
+        <dc:Bounds x="573" y="187" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_1662gjm_di" bpmnElement="ExclusiveGateway_1662gjm" isMarkerVisible="true">
+        <dc:Bounds x="386" y="27" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="384" y="-25" width="55" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_1we7izu_di" bpmnElement="ExclusiveGateway_1we7izu" isMarkerVisible="true">
+        <dc:Bounds x="823" y="202" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="880" y="206" width="68" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_18auy29_di" bpmnElement="ScriptTask_18auy29">
+        <dc:Bounds x="509" y="371" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0a8k9xi_di" bpmnElement="SequenceFlow_0a8k9xi">
+        <di:waypoint xsi:type="dc:Point" x="609" y="411" />
+        <di:waypoint xsi:type="dc:Point" x="704" y="411" />
+        <di:waypoint xsi:type="dc:Point" x="704" y="411" />
+        <di:waypoint xsi:type="dc:Point" x="799" y="411" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="674" y="404" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_15mvx68_di" bpmnElement="SequenceFlow_15mvx68">
+        <di:waypoint xsi:type="dc:Point" x="59" y="52" />
+        <di:waypoint xsi:type="dc:Point" x="163" y="52" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="66" y="30" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0wp73cw_di" bpmnElement="SequenceFlow_0wp73cw">
+        <di:waypoint xsi:type="dc:Point" x="263" y="52" />
+        <di:waypoint xsi:type="dc:Point" x="386" y="52" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="279.5" y="30" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_13s0mg5_di" bpmnElement="SequenceFlow_13s0mg5">
+        <di:waypoint xsi:type="dc:Point" x="436" y="52" />
+        <di:waypoint xsi:type="dc:Point" x="573" y="52" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="496" y="30" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0fkfn70_di" bpmnElement="SequenceFlow_0fkfn70">
+        <di:waypoint xsi:type="dc:Point" x="673" y="52" />
+        <di:waypoint xsi:type="dc:Point" x="798" y="52" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="690.5" y="30" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1suwdgi_di" bpmnElement="SequenceFlow_1suwdgi">
+        <di:waypoint xsi:type="dc:Point" x="673" y="-113" />
+        <di:waypoint xsi:type="dc:Point" x="798" y="-113" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="690.5" y="-135" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0kkou66_di" bpmnElement="SequenceFlow_0kkou66">
+        <di:waypoint xsi:type="dc:Point" x="623" y="187" />
+        <di:waypoint xsi:type="dc:Point" x="623" y="92" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="593" y="132.5" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1luhljs_di" bpmnElement="SequenceFlow_1luhljs">
+        <di:waypoint xsi:type="dc:Point" x="848" y="92" />
+        <di:waypoint xsi:type="dc:Point" x="848" y="202" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="818" y="140" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1udji9x_di" bpmnElement="SequenceFlow_1udji9x">
+        <di:waypoint xsi:type="dc:Point" x="823" y="227" />
+        <di:waypoint xsi:type="dc:Point" x="673" y="227" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="746" y="208" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="EndEvent_19joonf_di" bpmnElement="EndEvent_19joonf">
+        <dc:Bounds x="387" y="197" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="360" y="236" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_12seu6n_di" bpmnElement="SequenceFlow_12seu6n">
+        <di:waypoint xsi:type="dc:Point" x="411" y="77" />
+        <di:waypoint xsi:type="dc:Point" x="411" y="137" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="137" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="175" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="183.26272082138004" y="113.00000000000001" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0y2g8mr_di" bpmnElement="SequenceFlow_0y2g8mr">
+        <di:waypoint xsi:type="dc:Point" x="848" y="252" />
+        <di:waypoint xsi:type="dc:Point" x="848" y="324" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="324" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="371" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="419.8991436726927" y="302" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0mmu3kz_di" bpmnElement="SequenceFlow_0mmu3kz">
+        <di:waypoint xsi:type="dc:Point" x="848" y="-73" />
+        <di:waypoint xsi:type="dc:Point" x="848" y="-39" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="-39" />
+        <di:waypoint xsi:type="dc:Point" x="9" y="12" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="383.5" y="-61" width="90" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_07cq0pw_di" bpmnElement="ScriptTask_07cq0pw">
+        <dc:Bounds x="-41" y="175" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_1ixmamy_di" bpmnElement="ServiceTask_1ixmamy">
+        <dc:Bounds x="166" y="175" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0i9iiuo_di" bpmnElement="SequenceFlow_0i9iiuo">
+        <di:waypoint xsi:type="dc:Point" x="59" y="215" />
+        <di:waypoint xsi:type="dc:Point" x="166" y="215" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="68.5" y="193" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1mei7hu_di" bpmnElement="SequenceFlow_1mei7hu">
+        <di:waypoint xsi:type="dc:Point" x="266" y="215" />
+        <di:waypoint xsi:type="dc:Point" x="387" y="215" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="326.5" y="193" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/CreateCustom3rdONAPServiceInstance.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/CreateCustom3rdONAPServiceInstance.bpmn
deleted file mode 100644
index a8bd33c..0000000
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/CreateCustom3rdONAPServiceInstance.bpmn
+++ /dev/null
@@ -1,389 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.3">
-  <bpmn:process id="CreateCustom3rdONAPServiceInstance" name="CreateCustom3rdONAPServiceInstance" isExecutable="true">
-    <bpmn:startEvent id="StartEvent_00qj6ro" name="Create SI Start Flow">
-      <bpmn:outgoing>SequenceFlow_0s2spoq</bpmn:outgoing>
-    </bpmn:startEvent>
-    <bpmn:subProcess id="SubProcess_0ka59nc" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">
-      <bpmn:scriptTask id="ScriptTask_0u3lw39" name="Handle Unexpected Error" scriptFormat="groovy">
-        <bpmn:incoming>SequenceFlow_1dsbjjb</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_1yay321</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.common.scripts.* ExceptionUtil ex = new ExceptionUtil() ex.processJavaException(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:startEvent id="StartEvent_0v1ffn4">
-        <bpmn:outgoing>SequenceFlow_1dsbjjb</bpmn:outgoing>
-        <bpmn:errorEventDefinition />
-      </bpmn:startEvent>
-      <bpmn:endEvent id="EndEvent_0eznq6x">
-        <bpmn:incoming>SequenceFlow_1yay321</bpmn:incoming>
-      </bpmn:endEvent>
-      <bpmn:sequenceFlow id="SequenceFlow_1dsbjjb" name="" sourceRef="StartEvent_0v1ffn4" targetRef="ScriptTask_0u3lw39" />
-      <bpmn:sequenceFlow id="SequenceFlow_1yay321" name="" sourceRef="ScriptTask_0u3lw39" targetRef="EndEvent_0eznq6x" />
-    </bpmn:subProcess>
-    <bpmn:callActivity id="DoCreateE2EServiceInstance" name="Call DoCreateE2EServiceInstance&#10;" calledElement="DoCreateE2EServiceInstanceV3">
-      <bpmn:extensionElements>
-        <camunda:out source="WorkflowException" target="WorkflowException" />
-        <camunda:in source="msoRequestId" target="msoRequestId" />
-        <camunda:out source="rollbackData" target="rollbackData" />
-        <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
-        <camunda:in source="serviceInstanceName" target="serviceInstanceName" />
-        <camunda:in source="serviceModelInfo" target="serviceModelInfo" />
-        <camunda:in source="productFamilyId" target="productFamilyId" />
-        <camunda:in source="disableRollback" target="disableRollback" />
-        <camunda:in source="serviceInputParams" target="serviceInputParams" />
-        <camunda:out source="rolledBack" target="rolledBack" />
-        <camunda:out source="serviceInstanceName" target="serviceInstanceName" />
-        <camunda:in source="failIfExists" target="failIfExists" />
-        <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
-        <camunda:in source="subscriptionServiceType" target="subscriptionServiceType" />
-        <camunda:in sourceExpression="1610" target="sdncVersion" />
-        <camunda:in source="initialStatus" target="initialStatus" />
-        <camunda:in source="serviceType" target="serviceType" />
-        <camunda:in source="uuiRequest" target="uuiRequest" />
-        <camunda:in source="requestAction" target="operationType" />
-        <camunda:in source="operationId" target="operationId" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_19eilro</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0klbpxx</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:endEvent id="EndEvent_0bpd6c0" name="End">
-      <bpmn:incoming>SequenceFlow_0yayvrf</bpmn:incoming>
-    </bpmn:endEvent>
-    <bpmn:scriptTask id="ScriptTask_1s09c7d" name="Pre Process Incoming Request" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0s2spoq</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0z4faf9</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi= new CreateCustomE2EServiceInstance()
-csi.preProcessRequest(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="ScriptTask_0ttvn8r" name="Prepare Completion Request" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_14zu6wr</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0je30si</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new CreateCustomE2EServiceInstance()
-csi.prepareCompletionRequest(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:callActivity id="CallActivity_02fyxz0" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">
-      <bpmn:extensionElements>
-        <camunda:in source="completionRequest" target="CompleteMsoProcessRequest" />
-        <camunda:in source="mso-request-id" target="mso-request-id" />
-        <camunda:in source="mso-service-instance-id" target="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" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_0je30si</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0yayvrf</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:subProcess id="SubProcess_0vaws86" name="Sub-process for FalloutHandler and Rollback" triggeredByEvent="true">
-      <bpmn:startEvent id="StartEvent_0dug28e">
-        <bpmn:outgoing>SequenceFlow_0e1r62n</bpmn:outgoing>
-        <bpmn:errorEventDefinition />
-      </bpmn:startEvent>
-      <bpmn:endEvent id="EndEvent_03wysuk">
-        <bpmn:incoming>SequenceFlow_1ysapam</bpmn:incoming>
-      </bpmn:endEvent>
-      <bpmn:scriptTask id="ScriptTask_0u8o9p2" name="Prepare Fallout Request" scriptFormat="groovy">
-        <bpmn:incoming>SequenceFlow_0n9pexp</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_01umodj</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new CreateCustomE2EServiceInstance()
-csi.prepareFalloutRequest(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:callActivity id="CallActivity_1ang7q8" name="Call FalloutHandler" calledElement="FalloutHandler">
-        <bpmn:extensionElements>
-          <camunda:in source="falloutRequest" target="FalloutHandlerRequest" />
-          <camunda:in source="mso-request-id" target="mso-request-id" />
-          <camunda:in source="mso-service-instance-id" target="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" />
-        </bpmn:extensionElements>
-        <bpmn:incoming>SequenceFlow_01umodj</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_1ysapam</bpmn:outgoing>
-      </bpmn:callActivity>
-      <bpmn:scriptTask id="ScriptTask_1rn6nqi" name="Send Error Response">
-        <bpmn:incoming>SequenceFlow_0e1r62n</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_0n9pexp</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new  CreateCustomE2EServiceInstance()
-csi.sendSyncError(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:sequenceFlow id="SequenceFlow_0e1r62n" sourceRef="StartEvent_0dug28e" targetRef="ScriptTask_1rn6nqi" />
-      <bpmn:sequenceFlow id="SequenceFlow_1ysapam" sourceRef="CallActivity_1ang7q8" targetRef="EndEvent_03wysuk" />
-      <bpmn:sequenceFlow id="SequenceFlow_0n9pexp" sourceRef="ScriptTask_1rn6nqi" targetRef="ScriptTask_0u8o9p2" />
-      <bpmn:sequenceFlow id="SequenceFlow_01umodj" sourceRef="ScriptTask_0u8o9p2" targetRef="CallActivity_1ang7q8" />
-    </bpmn:subProcess>
-    <bpmn:scriptTask id="ScriptTask_0xupxj9" name="Send Sync Ack Response" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_081z8l2</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_19eilro</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new  CreateCustomE2EServiceInstance()
-csi.sendSyncResponse(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_0aqn64l" name="Success?">
-      <bpmn:incoming>SequenceFlow_0klbpxx</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_14zu6wr</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_1fueo69</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:endEvent id="EndEvent_07uk5iy">
-      <bpmn:incoming>SequenceFlow_1fueo69</bpmn:incoming>
-      <bpmn:errorEventDefinition errorRef="Error_0nbdy47" />
-    </bpmn:endEvent>
-    <bpmn:sequenceFlow id="SequenceFlow_0s2spoq" sourceRef="StartEvent_00qj6ro" targetRef="ScriptTask_1s09c7d" />
-    <bpmn:sequenceFlow id="SequenceFlow_19eilro" sourceRef="ScriptTask_0xupxj9" targetRef="DoCreateE2EServiceInstance" />
-    <bpmn:sequenceFlow id="SequenceFlow_0klbpxx" sourceRef="DoCreateE2EServiceInstance" targetRef="ExclusiveGateway_0aqn64l" />
-    <bpmn:sequenceFlow id="SequenceFlow_0yayvrf" sourceRef="CallActivity_02fyxz0" targetRef="EndEvent_0bpd6c0" />
-    <bpmn:sequenceFlow id="SequenceFlow_0z4faf9" sourceRef="ScriptTask_1s09c7d" targetRef="Task_1tqjch6" />
-    <bpmn:sequenceFlow id="SequenceFlow_14zu6wr" name="yes" sourceRef="ExclusiveGateway_0aqn64l" targetRef="ScriptTask_0ttvn8r">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">#{execution.getVariable("WorkflowException") == null}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_0je30si" sourceRef="ScriptTask_0ttvn8r" targetRef="CallActivity_02fyxz0" />
-    <bpmn:sequenceFlow id="SequenceFlow_1fueo69" name="no" sourceRef="ExclusiveGateway_0aqn64l" targetRef="EndEvent_07uk5iy">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">#{execution.getVariable("WorkflowException") != null}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_1euqjsp" sourceRef="Task_1tqjch6" targetRef="Task_19mxcw3" />
-    <bpmn:scriptTask id="Task_1tqjch6" name="Init Service Operation Status" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0z4faf9</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1euqjsp</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi= new CreateCustomE2EServiceInstance()
-csi.prepareInitServiceOperationStatus(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:serviceTask id="Task_19mxcw3" name="Update Service Operation Status">
-      <bpmn:extensionElements>
-        <camunda:connector>
-          <camunda:inputOutput>
-            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
-            <camunda:inputParameter name="headers">
-              <camunda:map>
-                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
-                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
-              </camunda:map>
-            </camunda:inputParameter>
-            <camunda:inputParameter name="payload">${CVFMI_updateServiceOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
-        </camunda:connector>
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_1euqjsp</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_081z8l2</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:sequenceFlow id="SequenceFlow_081z8l2" sourceRef="Task_19mxcw3" targetRef="ScriptTask_0xupxj9" />
-  </bpmn:process>
-  <bpmn:error id="Error_0nbdy47" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
-  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
-    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateCustom3rdONAPServiceInstance">
-      <bpmndi:BPMNShape id="StartEvent_00qj6ro_di" bpmnElement="StartEvent_00qj6ro">
-        <dc:Bounds x="-6" y="180" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-24" y="221" width="73" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="SubProcess_0ka59nc_di" bpmnElement="SubProcess_0ka59nc" isExpanded="true">
-        <dc:Bounds x="463" y="632" width="394" height="188" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_0rhljy8_di" bpmnElement="DoCreateE2EServiceInstance">
-        <dc:Bounds x="751" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_0bpd6c0_di" bpmnElement="EndEvent_0bpd6c0">
-        <dc:Bounds x="1258" y="286" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1268" y="322" width="22" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1s09c7d_di" bpmnElement="ScriptTask_1s09c7d">
-        <dc:Bounds x="115" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0ttvn8r_di" bpmnElement="ScriptTask_0ttvn8r">
-        <dc:Bounds x="1038" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_02fyxz0_di" bpmnElement="CallActivity_02fyxz0">
-        <dc:Bounds x="1226" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="SubProcess_0vaws86_di" bpmnElement="SubProcess_0vaws86" isExpanded="true">
-        <dc:Bounds x="348" y="370" width="679" height="194" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0xupxj9_di" bpmnElement="ScriptTask_0xupxj9">
-        <dc:Bounds x="610" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_0aqn64l_di" bpmnElement="ExclusiveGateway_0aqn64l" isMarkerVisible="true">
-        <dc:Bounds x="903" y="173" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="903" y="145" width="50" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_07uk5iy_di" bpmnElement="EndEvent_07uk5iy">
-        <dc:Bounds x="910" y="286" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="883" y="322" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0s2spoq_di" bpmnElement="SequenceFlow_0s2spoq">
-        <di:waypoint x="30" y="198" />
-        <di:waypoint x="115" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="27.5" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_19eilro_di" bpmnElement="SequenceFlow_19eilro">
-        <di:waypoint x="710" y="198" />
-        <di:waypoint x="751" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="685.5" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0klbpxx_di" bpmnElement="SequenceFlow_0klbpxx">
-        <di:waypoint x="851" y="198" />
-        <di:waypoint x="903" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="832" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0yayvrf_di" bpmnElement="SequenceFlow_0yayvrf">
-        <di:waypoint x="1276" y="238" />
-        <di:waypoint x="1276" y="286" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1246" y="262" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0z4faf9_di" bpmnElement="SequenceFlow_0z4faf9">
-        <di:waypoint x="215" y="198" />
-        <di:waypoint x="273" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="199" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_14zu6wr_di" bpmnElement="SequenceFlow_14zu6wr">
-        <di:waypoint x="953" y="198" />
-        <di:waypoint x="990" y="198" />
-        <di:waypoint x="990" y="198" />
-        <di:waypoint x="1038" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="987" y="195" width="20" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0je30si_di" bpmnElement="SequenceFlow_0je30si">
-        <di:waypoint x="1138" y="198" />
-        <di:waypoint x="1226" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1137" y="183" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1fueo69_di" bpmnElement="SequenceFlow_1fueo69">
-        <di:waypoint x="928" y="223" />
-        <di:waypoint x="928" y="250" />
-        <di:waypoint x="928" y="250" />
-        <di:waypoint x="928" y="286" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="901" y="228" width="15" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_0u3lw39_di" bpmnElement="ScriptTask_0u3lw39">
-        <dc:Bounds x="611" y="687" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="StartEvent_0v1ffn4_di" bpmnElement="StartEvent_0v1ffn4">
-        <dc:Bounds x="496" y="709" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="469" y="750" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_0eznq6x_di" bpmnElement="EndEvent_0eznq6x">
-        <dc:Bounds x="772" y="709" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="745" y="750" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="StartEvent_0dug28e_di" bpmnElement="StartEvent_0dug28e">
-        <dc:Bounds x="363" y="456" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="336" y="497" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_03wysuk_di" bpmnElement="EndEvent_03wysuk">
-        <dc:Bounds x="942" y="456" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="915" y="497" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0u8o9p2_di" bpmnElement="ScriptTask_0u8o9p2">
-        <dc:Bounds x="621" y="434" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_1ang7q8_di" bpmnElement="CallActivity_1ang7q8">
-        <dc:Bounds x="798" y="434" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1rn6nqi_di" bpmnElement="ScriptTask_1rn6nqi">
-        <dc:Bounds x="443" y="434" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1dsbjjb_di" bpmnElement="SequenceFlow_1dsbjjb">
-        <di:waypoint x="532" y="727" />
-        <di:waypoint x="611" y="727" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="529.5" y="727" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1yay321_di" bpmnElement="SequenceFlow_1yay321">
-        <di:waypoint x="711" y="727" />
-        <di:waypoint x="772" y="727" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="701.5" y="727" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0e1r62n_di" bpmnElement="SequenceFlow_0e1r62n">
-        <di:waypoint x="399" y="474" />
-        <di:waypoint x="421" y="474" />
-        <di:waypoint x="421" y="474" />
-        <di:waypoint x="442" y="474" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="391" y="474" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1ysapam_di" bpmnElement="SequenceFlow_1ysapam">
-        <di:waypoint x="898" y="474" />
-        <di:waypoint x="942" y="474" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="875" y="459" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0n9pexp_di" bpmnElement="SequenceFlow_0n9pexp">
-        <di:waypoint x="543" y="474" />
-        <di:waypoint x="570" y="474" />
-        <di:waypoint x="570" y="474" />
-        <di:waypoint x="621" y="474" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="540" y="474" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_01umodj_di" bpmnElement="SequenceFlow_01umodj">
-        <di:waypoint x="721" y="474" />
-        <di:waypoint x="798" y="474" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="715.5" y="459" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1euqjsp_di" bpmnElement="SequenceFlow_1euqjsp">
-        <di:waypoint x="373" y="198" />
-        <di:waypoint x="446" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="364.5" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_1a3vwas_di" bpmnElement="Task_1tqjch6">
-        <dc:Bounds x="273" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ServiceTask_1afiuuq_di" bpmnElement="Task_19mxcw3">
-        <dc:Bounds x="446" y="158" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_081z8l2_di" bpmnElement="SequenceFlow_081z8l2">
-        <di:waypoint x="546" y="198" />
-        <di:waypoint x="610" y="198" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="533" y="177" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-    </bpmndi:BPMNPlane>
-  </bpmndi:BPMNDiagram>
-</bpmn:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Delete3rdONAPE2EServiceInstance.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Delete3rdONAPE2EServiceInstance.bpmn
new file mode 100644
index 0000000..770df07
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/Delete3rdONAPE2EServiceInstance.bpmn
@@ -0,0 +1,613 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.3">
+  <bpmn:process id="Delete3rdONAPE2EServiceInstance" name="Delete3rdONAPE2EServiceInstance" isExecutable="true">
+    <bpmn:startEvent id="StartEvent_01a6g9a" name="Delete3rdONAPRES_Start">
+      <bpmn:outgoing>SequenceFlow_0ecyqjf</bpmn:outgoing>
+    </bpmn:startEvent>
+    <bpmn:scriptTask id="ScriptTask_0viqs1u" name="prepare 3rdONAP Delete Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1sql6c3</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1soxbjk</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareSDNCRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:endEvent id="EndEvent_1993lyd" name="Delete3rdONAPRES_End">
+      <bpmn:incoming>SequenceFlow_170nvzi</bpmn:incoming>
+    </bpmn:endEvent>
+    <bpmn:scriptTask id="ScriptTask_093lzuq" name="Save SPPartner In AAI">
+      <bpmn:incoming>SequenceFlow_1tlym3z</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0z0u7x1</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.saveSPPartnerInAAI(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_02oc89f" name="Pre Process Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_114wjuf</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1sql6c3</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.preProcessRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_1e4pgbj" name="Delete progress update parameters before delete" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1soxbjk</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_000q9m3</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareUpdateBeforeDeleteSDNCResource(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_0r6g690" name="update progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_000q9m3</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1lhdwv6</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_1e5o8dz" name="Post process" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0z0u7x1</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1bo3fu4</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.postProcess(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0ombt1l" name="Delete E2ESI in 3rdONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0t0jlzs</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_06fak6j</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.doDeleteE2ESIin3rdONAP(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_0lgqtdm" name="update progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_0lpbqkc</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1tlym3z</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_0blh9n0" name="Allocate connection resources for cross ONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1lhdwv6</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0t0jlzs</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.postActivateSDNC(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_1vlm2lw" name="Check SPPartner Info" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0ecyqjf</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1jgurvk</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.checkSPPartnerand LocallCall(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_0d7a4pw" name="Is 3rdONAP Existing" default="SequenceFlow_0u3tca8">
+      <bpmn:incoming>SequenceFlow_1jgurvk</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0u3tca8</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_11pvz8i</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_14mk5it" name="Start3rdONAPDeleteE2ESI">
+      <bpmn:outgoing>SequenceFlow_114wjuf</bpmn:outgoing>
+      <bpmn:linkEventDefinition name="Start3rdONAPDeleteE2ESI" />
+    </bpmn:intermediateCatchEvent>
+    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_0bqnalt" name="GoTo Start3rdONAPDeleteE2ESI">
+      <bpmn:incoming>SequenceFlow_06avdut</bpmn:incoming>
+      <bpmn:linkEventDefinition name="Start3rdONAPDeleteE2ESI" />
+    </bpmn:intermediateThrowEvent>
+    <bpmn:scriptTask id="ScriptTask_1trt7oc" name="post Delete E2ESI in 3rdONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_06fak6j</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0cuvrsr</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.doDeleteE2ESIin3rdONAP(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_01s6c7j" name="Query E2ESI progress in 3rdONAP" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_0cuvrsr</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0lpbqkc</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.getE2ESIProgressin3rdONAP(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_1ri59nm" name="Send Sync Ack Response" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1bo3fu4</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_170nvzi</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.sendSyncResponse(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0d7cawc" name="Check Locall Call" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_11pvz8i</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1lqmzex</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.checkSPPartnerand LocallCall(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_0j2ccax" name="Is Called from Local">
+      <bpmn:incoming>SequenceFlow_1lqmzex</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_06avdut</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_1pwflny</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_0bmqdpg" name="GoTo  StartLocalONAPDeleteE2ESI">
+      <bpmn:incoming>SequenceFlow_0u3tca8</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_1pwflny</bpmn:incoming>
+      <bpmn:linkEventDefinition name=" StartLocalONAPDeleteE2ESI" />
+    </bpmn:intermediateThrowEvent>
+    <bpmn:endEvent id="EndEvent_1itzq8n" name="Delete3rdONAPRES_End">
+      <bpmn:incoming>SequenceFlow_0vhbw8y</bpmn:incoming>
+    </bpmn:endEvent>
+    <bpmn:scriptTask id="ScriptTask_1aigzk8" name="Delete SPPartner In AAI">
+      <bpmn:incoming>SequenceFlow_03mc2qq</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_03ngo7h</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.deleteSPPartnerInAAI(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_0cpsjwl" name="Pre Process Request" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1x1sk3t</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_02l74nc</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.preProcessRequest(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:scriptTask id="ScriptTask_01cer09" name="Delete progress update parameters before delete" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_02l74nc</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0ff0jf2</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def dcsi = new Delete3rdONAPE2EServiceInstance()
+dcsi.prepareUpdate(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:serviceTask id="ServiceTask_1go9g1i" name="update progress update">
+      <bpmn:extensionElements>
+        <camunda:connector>
+          <camunda:inputOutput>
+            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+            <camunda:inputParameter name="headers">
+              <camunda:map>
+                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+              </camunda:map>
+            </camunda:inputParameter>
+            <camunda:inputParameter name="payload">${CVFMI_updateResOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
+        </camunda:connector>
+      </bpmn:extensionElements>
+      <bpmn:incoming>SequenceFlow_03ngo7h</bpmn:incoming>
+      <bpmn:incoming>SequenceFlow_177yb27</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1784pcx</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:scriptTask id="ScriptTask_0ywn2ec" name="Post process" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1784pcx</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1xhcwoo</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.postProcess(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_0ui7e2m" name="StartLocalONAPDeleteE2ESI">
+      <bpmn:outgoing>SequenceFlow_1x1sk3t</bpmn:outgoing>
+      <bpmn:linkEventDefinition name="StartLocalONAPDeleteE2ESI" />
+    </bpmn:intermediateCatchEvent>
+    <bpmn:scriptTask id="ScriptTask_0y6ox5c" name="Send Sync Ack Response" scriptFormat="groovy">
+      <bpmn:incoming>SequenceFlow_1xhcwoo</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0vhbw8y</bpmn:outgoing>
+      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
+def csi = new  Delete3rdONAPE2EServiceInstance()
+csi.sendSyncResponse(execution)]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:exclusiveGateway id="ExclusiveGateway_02l57i8" name="Is 3rdONAP Existing" default="SequenceFlow_177yb27">
+      <bpmn:incoming>SequenceFlow_0ff0jf2</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_03mc2qq</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_177yb27</bpmn:outgoing>
+    </bpmn:exclusiveGateway>
+    <bpmn:sequenceFlow id="SequenceFlow_0ecyqjf" sourceRef="StartEvent_01a6g9a" targetRef="ScriptTask_1vlm2lw" />
+    <bpmn:sequenceFlow id="SequenceFlow_1sql6c3" sourceRef="ScriptTask_02oc89f" targetRef="ScriptTask_0viqs1u" />
+    <bpmn:sequenceFlow id="SequenceFlow_1soxbjk" sourceRef="ScriptTask_0viqs1u" targetRef="ScriptTask_1e4pgbj" />
+    <bpmn:sequenceFlow id="SequenceFlow_170nvzi" sourceRef="ScriptTask_1ri59nm" targetRef="EndEvent_1993lyd" />
+    <bpmn:sequenceFlow id="SequenceFlow_1tlym3z" sourceRef="ServiceTask_0lgqtdm" targetRef="ScriptTask_093lzuq" />
+    <bpmn:sequenceFlow id="SequenceFlow_0z0u7x1" sourceRef="ScriptTask_093lzuq" targetRef="ScriptTask_1e5o8dz" />
+    <bpmn:sequenceFlow id="SequenceFlow_114wjuf" sourceRef="IntermediateCatchEvent_14mk5it" targetRef="ScriptTask_02oc89f" />
+    <bpmn:sequenceFlow id="SequenceFlow_000q9m3" sourceRef="ScriptTask_1e4pgbj" targetRef="ServiceTask_0r6g690" />
+    <bpmn:sequenceFlow id="SequenceFlow_1lhdwv6" sourceRef="ServiceTask_0r6g690" targetRef="ScriptTask_0blh9n0" />
+    <bpmn:sequenceFlow id="SequenceFlow_1bo3fu4" sourceRef="ScriptTask_1e5o8dz" targetRef="ScriptTask_1ri59nm" />
+    <bpmn:sequenceFlow id="SequenceFlow_0t0jlzs" sourceRef="ScriptTask_0blh9n0" targetRef="ScriptTask_0ombt1l" />
+    <bpmn:sequenceFlow id="SequenceFlow_06fak6j" sourceRef="ScriptTask_0ombt1l" targetRef="ScriptTask_1trt7oc" />
+    <bpmn:sequenceFlow id="SequenceFlow_0lpbqkc" sourceRef="ScriptTask_01s6c7j" targetRef="ServiceTask_0lgqtdm" />
+    <bpmn:sequenceFlow id="SequenceFlow_1jgurvk" sourceRef="ScriptTask_1vlm2lw" targetRef="ExclusiveGateway_0d7a4pw" />
+    <bpmn:sequenceFlow id="SequenceFlow_0u3tca8" name="no" sourceRef="ExclusiveGateway_0d7a4pw" targetRef="IntermediateThrowEvent_0bmqdpg" />
+    <bpmn:sequenceFlow id="SequenceFlow_11pvz8i" name="yes" sourceRef="ExclusiveGateway_0d7a4pw" targetRef="ScriptTask_0d7cawc">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("Is3rdONAPExist" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_06avdut" name="yes" sourceRef="ExclusiveGateway_0j2ccax" targetRef="IntermediateThrowEvent_0bqnalt">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("IsLocalCall" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_0cuvrsr" sourceRef="ScriptTask_1trt7oc" targetRef="ScriptTask_01s6c7j" />
+    <bpmn:sequenceFlow id="SequenceFlow_1lqmzex" sourceRef="ScriptTask_0d7cawc" targetRef="ExclusiveGateway_0j2ccax" />
+    <bpmn:sequenceFlow id="SequenceFlow_1pwflny" name="no" sourceRef="ExclusiveGateway_0j2ccax" targetRef="IntermediateThrowEvent_0bmqdpg" />
+    <bpmn:sequenceFlow id="SequenceFlow_0vhbw8y" sourceRef="ScriptTask_0y6ox5c" targetRef="EndEvent_1itzq8n" />
+    <bpmn:sequenceFlow id="SequenceFlow_03mc2qq" name="yes" sourceRef="ExclusiveGateway_02l57i8" targetRef="ScriptTask_1aigzk8">
+      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("Is3rdONAPExist" )  == "true" )}]]></bpmn:conditionExpression>
+    </bpmn:sequenceFlow>
+    <bpmn:sequenceFlow id="SequenceFlow_03ngo7h" sourceRef="ScriptTask_1aigzk8" targetRef="ServiceTask_1go9g1i" />
+    <bpmn:sequenceFlow id="SequenceFlow_1x1sk3t" sourceRef="IntermediateCatchEvent_0ui7e2m" targetRef="ScriptTask_0cpsjwl" />
+    <bpmn:sequenceFlow id="SequenceFlow_02l74nc" sourceRef="ScriptTask_0cpsjwl" targetRef="ScriptTask_01cer09" />
+    <bpmn:sequenceFlow id="SequenceFlow_0ff0jf2" sourceRef="ScriptTask_01cer09" targetRef="ExclusiveGateway_02l57i8" />
+    <bpmn:sequenceFlow id="SequenceFlow_177yb27" name="No" sourceRef="ExclusiveGateway_02l57i8" targetRef="ServiceTask_1go9g1i" />
+    <bpmn:sequenceFlow id="SequenceFlow_1784pcx" sourceRef="ServiceTask_1go9g1i" targetRef="ScriptTask_0ywn2ec" />
+    <bpmn:sequenceFlow id="SequenceFlow_1xhcwoo" sourceRef="ScriptTask_0ywn2ec" targetRef="ScriptTask_0y6ox5c" />
+  </bpmn:process>
+  <bpmn:error id="Error_0nbdy47" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Delete3rdONAPE2EServiceInstance">
+      <bpmndi:BPMNShape id="StartEvent_01a6g9a_di" bpmnElement="StartEvent_01a6g9a">
+        <dc:Bounds x="870" y="-707" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="849" y="-671" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0viqs1u_di" bpmnElement="ScriptTask_0viqs1u">
+        <dc:Bounds x="1245" y="-442" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_1993lyd_di" bpmnElement="EndEvent_1993lyd">
+        <dc:Bounds x="1848" y="-46" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1812" y="-4" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_093lzuq_di" bpmnElement="ScriptTask_093lzuq">
+        <dc:Bounds x="1245" y="-68" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_02oc89f_di" bpmnElement="ScriptTask_02oc89f">
+        <dc:Bounds x="1042" y="-442" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1e4pgbj_di" bpmnElement="ScriptTask_1e4pgbj">
+        <dc:Bounds x="1442" y="-442" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_0r6g690_di" bpmnElement="ServiceTask_0r6g690">
+        <dc:Bounds x="1678" y="-442" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1e5o8dz_di" bpmnElement="ScriptTask_1e5o8dz">
+        <dc:Bounds x="1442" y="-68" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0ombt1l_di" bpmnElement="ScriptTask_0ombt1l">
+        <dc:Bounds x="1245" y="-271" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_0lgqtdm_di" bpmnElement="ServiceTask_0lgqtdm">
+        <dc:Bounds x="1042" y="-68" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0blh9n0_di" bpmnElement="ScriptTask_0blh9n0">
+        <dc:Bounds x="1042" y="-271" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1vlm2lw_di" bpmnElement="ScriptTask_1vlm2lw">
+        <dc:Bounds x="1042" y="-729" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_0d7a4pw_di" bpmnElement="ExclusiveGateway_0d7a4pw" isMarkerVisible="true">
+        <dc:Bounds x="1259" y="-715" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1243" y="-747" width="56" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="IntermediateCatchEvent_14mk5it_di" bpmnElement="IntermediateCatchEvent_14mk5it">
+        <dc:Bounds x="870" y="-420" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="850" y="-384" width="85" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="IntermediateThrowEvent_0bqnalt_di" bpmnElement="IntermediateThrowEvent_0bqnalt">
+        <dc:Bounds x="1835" y="-707" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1813" y="-666" width="85" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1trt7oc_di" bpmnElement="ScriptTask_1trt7oc">
+        <dc:Bounds x="1442" y="-271" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_01s6c7j_di" bpmnElement="ScriptTask_01s6c7j">
+        <dc:Bounds x="1678" y="-271" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1ri59nm_di" bpmnElement="ScriptTask_1ri59nm">
+        <dc:Bounds x="1678" y="-68" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0d7cawc_di" bpmnElement="ScriptTask_0d7cawc">
+        <dc:Bounds x="1442" y="-729" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_0j2ccax_di" bpmnElement="ExclusiveGateway_0j2ccax" isMarkerVisible="true">
+        <dc:Bounds x="1671" y="-715" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1655" y="-747" width="65" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="IntermediateThrowEvent_0bmqdpg_di" bpmnElement="IntermediateThrowEvent_0bmqdpg">
+        <dc:Bounds x="1678" y="-589" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1656" y="-548" width="85" height="42" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_1itzq8n_di" bpmnElement="EndEvent_1itzq8n">
+        <dc:Bounds x="1848" y="288" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1812" y="330" width="84" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_1aigzk8_di" bpmnElement="ScriptTask_1aigzk8">
+        <dc:Bounds x="1665" y="67" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0cpsjwl_di" bpmnElement="ScriptTask_0cpsjwl">
+        <dc:Bounds x="1042" y="67" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_01cer09_di" bpmnElement="ScriptTask_01cer09">
+        <dc:Bounds x="1245" y="67" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ServiceTask_1go9g1i_di" bpmnElement="ServiceTask_1go9g1i">
+        <dc:Bounds x="1042" y="266" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0ywn2ec_di" bpmnElement="ScriptTask_0ywn2ec">
+        <dc:Bounds x="1245" y="266" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="IntermediateCatchEvent_0ui7e2m_di" bpmnElement="IntermediateCatchEvent_0ui7e2m">
+        <dc:Bounds x="870" y="89" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="850" y="125" width="85" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_0y6ox5c_di" bpmnElement="ScriptTask_0y6ox5c">
+        <dc:Bounds x="1442" y="266" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ExclusiveGateway_02l57i8_di" bpmnElement="ExclusiveGateway_02l57i8" isMarkerVisible="true">
+        <dc:Bounds x="1467" y="82" width="50" height="50" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1461" y="50" width="56" height="28" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0ecyqjf_di" bpmnElement="SequenceFlow_0ecyqjf">
+        <di:waypoint xsi:type="dc:Point" x="906" y="-689" />
+        <di:waypoint xsi:type="dc:Point" x="1042" y="-689" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="929" y="-711" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1sql6c3_di" bpmnElement="SequenceFlow_1sql6c3">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="-402" />
+        <di:waypoint xsi:type="dc:Point" x="1245" y="-402" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1149.5" y="-424" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1soxbjk_di" bpmnElement="SequenceFlow_1soxbjk">
+        <di:waypoint xsi:type="dc:Point" x="1345" y="-402" />
+        <di:waypoint xsi:type="dc:Point" x="1442" y="-402" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1349.5" y="-424" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_170nvzi_di" bpmnElement="SequenceFlow_170nvzi">
+        <di:waypoint xsi:type="dc:Point" x="1778" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1848" y="-28" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1768" y="-50" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1tlym3z_di" bpmnElement="SequenceFlow_1tlym3z">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1194" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1194" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1245" y="-28" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1164" y="-35" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0z0u7x1_di" bpmnElement="SequenceFlow_0z0u7x1">
+        <di:waypoint xsi:type="dc:Point" x="1345" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1394" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1394" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1442" y="-28" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1364" y="-35" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_114wjuf_di" bpmnElement="SequenceFlow_114wjuf">
+        <di:waypoint xsi:type="dc:Point" x="906" y="-402" />
+        <di:waypoint xsi:type="dc:Point" x="1042" y="-402" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="929" y="-424" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_000q9m3_di" bpmnElement="SequenceFlow_000q9m3">
+        <di:waypoint xsi:type="dc:Point" x="1545" y="-402" />
+        <di:waypoint xsi:type="dc:Point" x="1678" y="-402" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1567.5" y="-424" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1lhdwv6_di" bpmnElement="SequenceFlow_1lhdwv6">
+        <di:waypoint xsi:type="dc:Point" x="1728" y="-362" />
+        <di:waypoint xsi:type="dc:Point" x="1728" y="-316" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="-316" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="-271" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1365" y="-338" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1bo3fu4_di" bpmnElement="SequenceFlow_1bo3fu4">
+        <di:waypoint xsi:type="dc:Point" x="1542" y="-28" />
+        <di:waypoint xsi:type="dc:Point" x="1678" y="-28" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1565" y="-50" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0t0jlzs_di" bpmnElement="SequenceFlow_0t0jlzs">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="-231" />
+        <di:waypoint xsi:type="dc:Point" x="1245" y="-231" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1148.5" y="-253" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_06fak6j_di" bpmnElement="SequenceFlow_06fak6j">
+        <di:waypoint xsi:type="dc:Point" x="1345" y="-231" />
+        <di:waypoint xsi:type="dc:Point" x="1442" y="-231" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1348.5" y="-253" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0lpbqkc_di" bpmnElement="SequenceFlow_0lpbqkc">
+        <di:waypoint xsi:type="dc:Point" x="1728" y="-191" />
+        <di:waypoint xsi:type="dc:Point" x="1728" y="-137" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="-137" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="-68" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1365" y="-159" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1jgurvk_di" bpmnElement="SequenceFlow_1jgurvk">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="-689" />
+        <di:waypoint xsi:type="dc:Point" x="1259" y="-690" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1156.5" y="-710.5" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0u3tca8_di" bpmnElement="SequenceFlow_0u3tca8">
+        <di:waypoint xsi:type="dc:Point" x="1284" y="-665" />
+        <di:waypoint xsi:type="dc:Point" x="1284" y="-571" />
+        <di:waypoint xsi:type="dc:Point" x="1404" y="-571" />
+        <di:waypoint xsi:type="dc:Point" x="1404" y="-571" />
+        <di:waypoint xsi:type="dc:Point" x="1678" y="-571" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1268" y="-658" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_11pvz8i_di" bpmnElement="SequenceFlow_11pvz8i">
+        <di:waypoint xsi:type="dc:Point" x="1309" y="-690" />
+        <di:waypoint xsi:type="dc:Point" x="1442" y="-689" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1378.5" y="-711.5" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_06avdut_di" bpmnElement="SequenceFlow_06avdut">
+        <di:waypoint xsi:type="dc:Point" x="1721" y="-690" />
+        <di:waypoint xsi:type="dc:Point" x="1835" y="-689" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1769" y="-710.5" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0cuvrsr_di" bpmnElement="SequenceFlow_0cuvrsr">
+        <di:waypoint xsi:type="dc:Point" x="1542" y="-231" />
+        <di:waypoint xsi:type="dc:Point" x="1678" y="-231" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1565" y="-253" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1lqmzex_di" bpmnElement="SequenceFlow_1lqmzex">
+        <di:waypoint xsi:type="dc:Point" x="1542" y="-689" />
+        <di:waypoint xsi:type="dc:Point" x="1671" y="-690" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1606.5" y="-711.5" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1pwflny_di" bpmnElement="SequenceFlow_1pwflny">
+        <di:waypoint xsi:type="dc:Point" x="1696" y="-665" />
+        <di:waypoint xsi:type="dc:Point" x="1696" y="-589" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1706" y="-646" width="12" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0vhbw8y_di" bpmnElement="SequenceFlow_0vhbw8y">
+        <di:waypoint xsi:type="dc:Point" x="1542" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1848" y="306" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1695" y="284" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_03mc2qq_di" bpmnElement="SequenceFlow_03mc2qq">
+        <di:waypoint xsi:type="dc:Point" x="1517" y="107" />
+        <di:waypoint xsi:type="dc:Point" x="1665" y="107" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1582" y="85" width="18" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_03ngo7h_di" bpmnElement="SequenceFlow_03ngo7h">
+        <di:waypoint xsi:type="dc:Point" x="1715" y="147" />
+        <di:waypoint xsi:type="dc:Point" x="1715" y="196" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="196" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="266" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1403.5" y="174" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1x1sk3t_di" bpmnElement="SequenceFlow_1x1sk3t">
+        <di:waypoint xsi:type="dc:Point" x="906" y="107" />
+        <di:waypoint xsi:type="dc:Point" x="1042" y="107" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="929" y="85" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_02l74nc_di" bpmnElement="SequenceFlow_02l74nc">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="107" />
+        <di:waypoint xsi:type="dc:Point" x="1245" y="107" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1193.5" y="85" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0ff0jf2_di" bpmnElement="SequenceFlow_0ff0jf2">
+        <di:waypoint xsi:type="dc:Point" x="1345" y="107" />
+        <di:waypoint xsi:type="dc:Point" x="1467" y="107" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1406" y="85" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_177yb27_di" bpmnElement="SequenceFlow_177yb27">
+        <di:waypoint xsi:type="dc:Point" x="1492" y="132" />
+        <di:waypoint xsi:type="dc:Point" x="1492" y="196" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="196" />
+        <di:waypoint xsi:type="dc:Point" x="1092" y="266" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1286" y="174" width="13" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1784pcx_di" bpmnElement="SequenceFlow_1784pcx">
+        <di:waypoint xsi:type="dc:Point" x="1142" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1176" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1241" y="306" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1159" y="284" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1xhcwoo_di" bpmnElement="SequenceFlow_1xhcwoo">
+        <di:waypoint xsi:type="dc:Point" x="1345" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1400" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1400" y="306" />
+        <di:waypoint xsi:type="dc:Point" x="1442" y="306" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="1415" y="299" width="0" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/DeleteCustom3rdONAPServiceInstance.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/DeleteCustom3rdONAPServiceInstance.bpmn
deleted file mode 100644
index 9ca0b06..0000000
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/DeleteCustom3rdONAPServiceInstance.bpmn
+++ /dev/null
@@ -1,381 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.16.2">
-  <bpmn:process id="DeleteCustom3rdONAPServiceInstance" name="DeleteCustom3rdONAPServiceInstance" isExecutable="true">
-    <bpmn:startEvent id="StartEvent_00m8zen" name="Delete SI Start Flow">
-      <bpmn:outgoing>SequenceFlow_1wxumid</bpmn:outgoing>
-    </bpmn:startEvent>
-    <bpmn:subProcess id="SubProcess_0amn8vu" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">
-      <bpmn:scriptTask id="ScriptTask_1c6ogpt" name="Handle Unexpected Error" scriptFormat="groovy">
-        <bpmn:incoming>SequenceFlow_0guajy5</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_0dbt753</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.common.scripts.*
-ExceptionUtil ex = new ExceptionUtil()
-ex.processJavaException(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:startEvent id="StartEvent_121296y">
-        <bpmn:outgoing>SequenceFlow_0guajy5</bpmn:outgoing>
-        <bpmn:errorEventDefinition />
-      </bpmn:startEvent>
-      <bpmn:endEvent id="EndEvent_1dw3dwx">
-        <bpmn:incoming>SequenceFlow_0dbt753</bpmn:incoming>
-      </bpmn:endEvent>
-      <bpmn:sequenceFlow id="SequenceFlow_0guajy5" name="" sourceRef="StartEvent_121296y" targetRef="ScriptTask_1c6ogpt" />
-      <bpmn:sequenceFlow id="SequenceFlow_0dbt753" name="" sourceRef="ScriptTask_1c6ogpt" targetRef="EndEvent_1dw3dwx" />
-    </bpmn:subProcess>
-    <bpmn:callActivity id="CallActivity_1vyx9hu" name="Call DoCustomDeleteE2EServiceInstance&#10;" calledElement="DoDeleteE2EServiceInstance">
-      <bpmn:extensionElements>
-        <camunda:out source="WorkflowException" target="WorkflowException" />
-        <camunda:in source="msoRequestId" target="msoRequestId" />
-        <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
-        <camunda:in source="serviceInstanceName" target="serviceInstanceName" />
-        <camunda:in source="serviceModelInfo" target="serviceModelInfo" />
-        <camunda:in source="productFamilyId" target="productFamilyId" />
-        <camunda:in source="disableRollback" target="disableRollback" />
-        <camunda:in source="serviceInputParams" target="serviceInputParams" />
-        <camunda:in source="failIfExists" target="failIfExists" />
-        <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
-        <camunda:in source="serviceType" target="serviceType" />
-        <camunda:in sourceExpression="1610" target="sdncVersion" />
-        <camunda:in source="operationId" target="operationId" />
-        <camunda:in source="operationType" target="operationType" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_0zf2qyk</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_07hrbs0</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:endEvent id="EndEvent_0db8bs6" name="End">
-      <bpmn:incoming>SequenceFlow_1ab5l2q</bpmn:incoming>
-    </bpmn:endEvent>
-    <bpmn:scriptTask id="ScriptTask_0a63hms" name="Pre Process Incoming Request" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1wxumid</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0yowshs</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi= new DeleteCustomE2EServiceInstance()
-csi.preProcessRequest(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:scriptTask id="ScriptTask_1fzpbop" name="Prepare Completion Request" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_04urx2e</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1ii935p</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new DeleteCustomE2EServiceInstance()
-csi.prepareCompletionRequest(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:callActivity id="CallActivity_1wx4ihe" name="Call CompleteMsoProcess" calledElement="CompleteMsoProcess">
-      <bpmn:extensionElements>
-        <camunda:in source="completionRequest" target="CompleteMsoProcessRequest" />
-        <camunda:in source="mso-request-id" target="mso-request-id" />
-        <camunda:in source="mso-service-instance-id" target="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" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_1ii935p</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1ab5l2q</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:subProcess id="SubProcess_1vbcima" name="Sub-process for FalloutHandler " triggeredByEvent="true">
-      <bpmn:startEvent id="StartEvent_0jybicw">
-        <bpmn:outgoing>SequenceFlow_0for83z</bpmn:outgoing>
-        <bpmn:errorEventDefinition />
-      </bpmn:startEvent>
-      <bpmn:endEvent id="EndEvent_1jegbhy">
-        <bpmn:incoming>SequenceFlow_0hrazlh</bpmn:incoming>
-      </bpmn:endEvent>
-      <bpmn:scriptTask id="ScriptTask_0so3xj0" name="Prepare Fallout Request" scriptFormat="groovy">
-        <bpmn:incoming>SequenceFlow_1s1cbgf</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_1py6yqz</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new DeleteCustomE2EServiceInstance()
-csi.prepareFalloutRequest(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:callActivity id="CallActivity_1qhekgt" name="Call FalloutHandler" calledElement="FalloutHandler">
-        <bpmn:extensionElements>
-          <camunda:in source="falloutRequest" target="FalloutHandlerRequest" />
-          <camunda:in source="mso-request-id" target="mso-request-id" />
-          <camunda:in source="mso-service-instance-id" target="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" />
-        </bpmn:extensionElements>
-        <bpmn:incoming>SequenceFlow_1py6yqz</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_0hrazlh</bpmn:outgoing>
-      </bpmn:callActivity>
-      <bpmn:scriptTask id="ScriptTask_006nty7" name="Send Error Response">
-        <bpmn:incoming>SequenceFlow_0for83z</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_1s1cbgf</bpmn:outgoing>
-        <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new  DeleteCustomE2EServiceInstance()
-csi.sendSyncError(execution)</bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:sequenceFlow id="SequenceFlow_0for83z" sourceRef="StartEvent_0jybicw" targetRef="ScriptTask_006nty7" />
-      <bpmn:sequenceFlow id="SequenceFlow_0hrazlh" sourceRef="CallActivity_1qhekgt" targetRef="EndEvent_1jegbhy" />
-      <bpmn:sequenceFlow id="SequenceFlow_1s1cbgf" sourceRef="ScriptTask_006nty7" targetRef="ScriptTask_0so3xj0" />
-      <bpmn:sequenceFlow id="SequenceFlow_1py6yqz" sourceRef="ScriptTask_0so3xj0" targetRef="CallActivity_1qhekgt" />
-    </bpmn:subProcess>
-    <bpmn:scriptTask id="ScriptTask_1mao77y" name="Send Sync Ack Response" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1dkcu9o</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0zf2qyk</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new  DeleteCustomE2EServiceInstance()
-csi.sendSyncResponse(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_0vu8gx6" name="Success?" default="SequenceFlow_1t6ekab">
-      <bpmn:incoming>SequenceFlow_07hrbs0</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_04urx2e</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_1t6ekab</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:endEvent id="EndEvent_1i1g9s6">
-      <bpmn:incoming>SequenceFlow_1t6ekab</bpmn:incoming>
-      <bpmn:errorEventDefinition errorRef="Error_1erlsmy" />
-    </bpmn:endEvent>
-    <bpmn:sequenceFlow id="SequenceFlow_1wxumid" sourceRef="StartEvent_00m8zen" targetRef="ScriptTask_0a63hms" />
-    <bpmn:sequenceFlow id="SequenceFlow_0zf2qyk" sourceRef="ScriptTask_1mao77y" targetRef="CallActivity_1vyx9hu" />
-    <bpmn:sequenceFlow id="SequenceFlow_07hrbs0" sourceRef="CallActivity_1vyx9hu" targetRef="ExclusiveGateway_0vu8gx6" />
-    <bpmn:sequenceFlow id="SequenceFlow_1ab5l2q" sourceRef="CallActivity_1wx4ihe" targetRef="EndEvent_0db8bs6" />
-    <bpmn:sequenceFlow id="SequenceFlow_0yowshs" sourceRef="ScriptTask_0a63hms" targetRef="Task_1jksf62" />
-    <bpmn:sequenceFlow id="SequenceFlow_04urx2e" name="yes" sourceRef="ExclusiveGateway_0vu8gx6" targetRef="ScriptTask_1fzpbop">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">#{execution.getVariable("WorkflowException") == null}</bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_1ii935p" sourceRef="ScriptTask_1fzpbop" targetRef="CallActivity_1wx4ihe" />
-    <bpmn:sequenceFlow id="SequenceFlow_1t6ekab" name="no" sourceRef="ExclusiveGateway_0vu8gx6" targetRef="EndEvent_1i1g9s6" />
-    <bpmn:sequenceFlow id="SequenceFlow_0c4t26p" sourceRef="Task_1jksf62" targetRef="ServiceTask_0j9q5xe" />
-    <bpmn:scriptTask id="Task_1jksf62" name="prepare init operation status" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0yowshs</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0c4t26p</bpmn:outgoing>
-      <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
-def csi= new DeleteCustomE2EServiceInstance()
-csi.prepareInitServiceOperationStatus(execution)</bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:serviceTask id="ServiceTask_0j9q5xe" name="Update Service Operation Status">
-      <bpmn:extensionElements>
-        <camunda:connector>
-          <camunda:inputOutput>
-            <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
-            <camunda:inputParameter name="headers">
-              <camunda:map>
-                <camunda:entry key="content-type">application/soap+xml</camunda:entry>
-                <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
-              </camunda:map>
-            </camunda:inputParameter>
-            <camunda:inputParameter name="payload">${CVFMI_updateServiceOperStatusRequest}</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:connectorId>http-connector</camunda:connectorId>
-        </camunda:connector>
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_0c4t26p</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1dkcu9o</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1dkcu9o" sourceRef="ServiceTask_0j9q5xe" targetRef="ScriptTask_1mao77y" />
-  </bpmn:process>
-  <bpmn:error id="Error_1erlsmy" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
-  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
-    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DeleteCustom3rdONAPServiceInstance">
-      <bpmndi:BPMNShape id="StartEvent_00m8zen_di" bpmnElement="StartEvent_00m8zen">
-        <dc:Bounds x="490" y="209" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="471" y="250" width="74" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="SubProcess_0amn8vu_di" bpmnElement="SubProcess_0amn8vu" isExpanded="true">
-        <dc:Bounds x="834" y="660" width="394" height="188" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_1vyx9hu_di" bpmnElement="CallActivity_1vyx9hu">
-        <dc:Bounds x="1121" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_0db8bs6_di" bpmnElement="EndEvent_0db8bs6">
-        <dc:Bounds x="1646" y="304" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1657" y="340" width="19" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0a63hms_di" bpmnElement="ScriptTask_0a63hms">
-        <dc:Bounds x="562" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1fzpbop_di" bpmnElement="ScriptTask_1fzpbop">
-        <dc:Bounds x="1453" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_1wx4ihe_di" bpmnElement="CallActivity_1wx4ihe">
-        <dc:Bounds x="1614" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="SubProcess_1vbcima_di" bpmnElement="SubProcess_1vbcima" isExpanded="true">
-        <dc:Bounds x="736" y="374" width="679" height="194" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1mao77y_di" bpmnElement="ScriptTask_1mao77y">
-        <dc:Bounds x="970" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_0vu8gx6_di" bpmnElement="ExclusiveGateway_0vu8gx6" isMarkerVisible="true">
-        <dc:Bounds x="1318" y="202" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1318" y="174" width="49" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_1i1g9s6_di" bpmnElement="EndEvent_1i1g9s6">
-        <dc:Bounds x="1325" y="304" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1298" y="340" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1wxumid_di" bpmnElement="SequenceFlow_1wxumid">
-        <di:waypoint x="526" y="227" />
-        <di:waypoint x="562" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="499" y="206" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0zf2qyk_di" bpmnElement="SequenceFlow_0zf2qyk">
-        <di:waypoint x="1070" y="227" />
-        <di:waypoint x="1121" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1050.5" y="206" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_07hrbs0_di" bpmnElement="SequenceFlow_07hrbs0">
-        <di:waypoint x="1221" y="227" />
-        <di:waypoint x="1318" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1225.5" y="212" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1ab5l2q_di" bpmnElement="SequenceFlow_1ab5l2q">
-        <di:waypoint x="1664" y="267" />
-        <di:waypoint x="1664" y="304" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1634" y="279.5" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0yowshs_di" bpmnElement="SequenceFlow_0yowshs">
-        <di:waypoint x="662" y="227" />
-        <di:waypoint x="707" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="639.5" y="206" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_04urx2e_di" bpmnElement="SequenceFlow_04urx2e">
-        <di:waypoint x="1368" y="227" />
-        <di:waypoint x="1453" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1370.25" y="203" width="18" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1ii935p_di" bpmnElement="SequenceFlow_1ii935p">
-        <di:waypoint x="1553" y="227" />
-        <di:waypoint x="1614" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1495" y="212" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1t6ekab_di" bpmnElement="SequenceFlow_1t6ekab">
-        <di:waypoint x="1343" y="252" />
-        <di:waypoint x="1343" y="277" />
-        <di:waypoint x="1343" y="277" />
-        <di:waypoint x="1343" y="304" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1352" y="277" width="12" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_1c6ogpt_di" bpmnElement="ScriptTask_1c6ogpt">
-        <dc:Bounds x="982" y="715" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="StartEvent_121296y_di" bpmnElement="StartEvent_121296y">
-        <dc:Bounds x="867" y="737" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="795" y="778" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_1dw3dwx_di" bpmnElement="EndEvent_1dw3dwx">
-        <dc:Bounds x="1143" y="737" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1071" y="778" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="StartEvent_0jybicw_di" bpmnElement="StartEvent_0jybicw">
-        <dc:Bounds x="752" y="460" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="680" y="501" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_1jegbhy_di" bpmnElement="EndEvent_1jegbhy">
-        <dc:Bounds x="1331" y="460" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1259" y="501" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0so3xj0_di" bpmnElement="ScriptTask_0so3xj0">
-        <dc:Bounds x="1010" y="438" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_1qhekgt_di" bpmnElement="CallActivity_1qhekgt">
-        <dc:Bounds x="1187" y="438" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_006nty7_di" bpmnElement="ScriptTask_006nty7">
-        <dc:Bounds x="832" y="438" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0guajy5_di" bpmnElement="SequenceFlow_0guajy5">
-        <di:waypoint x="903" y="755" />
-        <di:waypoint x="982" y="755" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="856" y="755" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0dbt753_di" bpmnElement="SequenceFlow_0dbt753">
-        <di:waypoint x="1082" y="755" />
-        <di:waypoint x="1143" y="755" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1028" y="755" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0for83z_di" bpmnElement="SequenceFlow_0for83z">
-        <di:waypoint x="788" y="478" />
-        <di:waypoint x="810" y="478" />
-        <di:waypoint x="810" y="478" />
-        <di:waypoint x="831" y="478" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="735" y="478" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0hrazlh_di" bpmnElement="SequenceFlow_0hrazlh">
-        <di:waypoint x="1287" y="478" />
-        <di:waypoint x="1331" y="478" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1219" y="463" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1s1cbgf_di" bpmnElement="SequenceFlow_1s1cbgf">
-        <di:waypoint x="932" y="478" />
-        <di:waypoint x="959" y="478" />
-        <di:waypoint x="959" y="478" />
-        <di:waypoint x="1010" y="478" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="884" y="478" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1py6yqz_di" bpmnElement="SequenceFlow_1py6yqz">
-        <di:waypoint x="1110" y="478" />
-        <di:waypoint x="1187" y="478" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1060" y="463" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0c4t26p_di" bpmnElement="SequenceFlow_0c4t26p">
-        <di:waypoint x="807" y="227" />
-        <di:waypoint x="833" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="820" y="206" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_1joo7s7_di" bpmnElement="Task_1jksf62">
-        <dc:Bounds x="707" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ServiceTask_0j9q5xe_di" bpmnElement="ServiceTask_0j9q5xe">
-        <dc:Bounds x="833" y="187" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1dkcu9o_di" bpmnElement="SequenceFlow_1dkcu9o">
-        <di:waypoint x="933" y="227" />
-        <di:waypoint x="970" y="227" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="951.5" y="206" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-    </bpmndi:BPMNPlane>
-  </bpmndi:BPMNDiagram>
-</bpmn:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteResources.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteResources.bpmn
deleted file mode 100644
index 7fbfe46c..0000000
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteResources.bpmn
+++ /dev/null
@@ -1,486 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0">
-  <bpmn:process id="DoDeleteResources" name="All Resources Deleted" isExecutable="true">
-    <bpmn:startEvent id="StartEvent_0212h2r" name="Start Flow">
-      <bpmn:outgoing>SequenceFlow_0vz7cd9</bpmn:outgoing>
-    </bpmn:startEvent>
-    <bpmn:endEvent id="EndEvent_1uqzt26">
-      <bpmn:incoming>SequenceFlow_1r5306k</bpmn:incoming>
-    </bpmn:endEvent>
-    <bpmn:subProcess id="SubProcess_1u8zt9i" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">
-      <bpmn:startEvent id="StartEvent_0sf5lpt">
-        <bpmn:outgoing>SequenceFlow_1921mo3</bpmn:outgoing>
-        <bpmn:errorEventDefinition />
-      </bpmn:startEvent>
-      <bpmn:endEvent id="EndEvent_06utmg4">
-        <bpmn:incoming>SequenceFlow_18vlzfo</bpmn:incoming>
-      </bpmn:endEvent>
-      <bpmn:scriptTask id="ScriptTask_0nha3pr" name="Log / Print Unexpected Error" scriptFormat="groovy">
-        <bpmn:incoming>SequenceFlow_1921mo3</bpmn:incoming>
-        <bpmn:outgoing>SequenceFlow_18vlzfo</bpmn:outgoing>
-        <bpmn:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
-ExceptionUtil ex = new ExceptionUtil()
-ex.processJavaException(execution)]]></bpmn:script>
-      </bpmn:scriptTask>
-      <bpmn:sequenceFlow id="SequenceFlow_1921mo3" name="" sourceRef="StartEvent_0sf5lpt" targetRef="ScriptTask_0nha3pr" />
-      <bpmn:sequenceFlow id="SequenceFlow_18vlzfo" name="" sourceRef="ScriptTask_0nha3pr" targetRef="EndEvent_06utmg4" />
-    </bpmn:subProcess>
-    <bpmn:sequenceFlow id="SequenceFlow_0vz7cd9" sourceRef="StartEvent_0212h2r" targetRef="ScriptTask_14bl5a0" />
-    <bpmn:scriptTask id="ScriptTask_0z30dax" name="Prepare Resource Delele For WAN" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1ubor5z</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1dza4q4</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-String resourceName = execution.getVariable("resourceType")
-def ddsi = new DoDeleteResources()
-ddsi.preResourceDelete(execution, resourceName )]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1dza4q4" sourceRef="ScriptTask_0z30dax" targetRef="CallActivity_Del_SDNC_cust" />
-    <bpmn:sequenceFlow id="SequenceFlow_1wnkgpx" sourceRef="Task_0z1x3sg" targetRef="Task_0963dho" />
-    <bpmn:scriptTask id="Task_0z1x3sg" name="Prepare Resource Delele For NS" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1x3lehs</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1wnkgpx</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-String resourceName = execution.getVariable("resourceType")
-def ddsi = new DoDeleteResources()
-ddsi.preResourceDelete(execution, resourceName )]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:callActivity id="Task_0963dho" name="Call Network Service Delete for NS" calledElement="DoDeleteVFCNetworkServiceInstance">
-      <bpmn:extensionElements>
-        <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
-        <camunda:in source="serviceType" target="serviceType" />
-        <camunda:in source="serviceInstanceId" target="serviceId" />
-        <camunda:in source="operationId" target="operationId" />
-        <camunda:in source="resourceTemplateId" target="resourceTemplateId" />
-        <camunda:in source="resourceInstanceId" target="resourceInstanceId" />
-        <camunda:in source="resourceType" target="resourceType" />
-        <camunda:in source="operationType" target="operationType" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_1wnkgpx</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0phwem2</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:serviceTask id="CallActivity_Del_SDNC_cust" name="Call Custom Delete SDNC Overlay" camunda:class="org.onap.so.bpmn.infrastructure.workflow.serviceTask.SdncNetworkTopologyOperationTask">
-      <bpmn:incoming>SequenceFlow_1dza4q4</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1lxqjmp</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:serviceTask id="Task_0edkv0m" name="Call Delete SDNC Service Topology" camunda:class="org.onap.so.bpmn.infrastructure.workflow.serviceTask.SdncServiceTopologyOperationTask">
-      <bpmn:incoming>SequenceFlow_1icwpye</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1yujjwx</bpmn:outgoing>
-    </bpmn:serviceTask>
-    <bpmn:scriptTask id="ScriptTask_0o5bglz" name="Sequense Resources" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0xqdf1z</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_03c0zlq</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.sequenceResource(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:exclusiveGateway id="ExclusiveGateway_07toixi" name="Check Current Resource" default="SequenceFlow_1x3lehs">
-      <bpmn:incoming>SequenceFlow_1htjmkv</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1ubor5z</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_1x3lehs</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:scriptTask id="ScriptTask_12q6a51" name="Get Current Resource" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_03c0zlq</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_0s1lswk</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1htjmkv</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.getCurrentResource(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_03c0zlq" sourceRef="ScriptTask_0o5bglz" targetRef="ScriptTask_12q6a51" />
-    <bpmn:sequenceFlow id="SequenceFlow_1htjmkv" sourceRef="ScriptTask_12q6a51" targetRef="ExclusiveGateway_07toixi" />
-    <bpmn:sequenceFlow id="SequenceFlow_1ubor5z" name="SDN-C" sourceRef="ExclusiveGateway_07toixi" targetRef="ScriptTask_0z30dax">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("controllerInfo" )  == "SDN-C" )}]]></bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_1x3lehs" name="VF-C" sourceRef="ExclusiveGateway_07toixi" targetRef="Task_0z1x3sg" />
-    <bpmn:scriptTask id="ScriptTask_0w46sge" name="Parse Next Resource" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1lxqjmp</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_0phwem2</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0l5r96s</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.parseNextResource(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1lxqjmp" sourceRef="CallActivity_Del_SDNC_cust" targetRef="ScriptTask_0w46sge" />
-    <bpmn:sequenceFlow id="SequenceFlow_0phwem2" sourceRef="Task_0963dho" targetRef="ScriptTask_0w46sge" />
-    <bpmn:exclusiveGateway id="ExclusiveGateway_1hgjg3u" name="Is All Resource Deleted" default="SequenceFlow_0s1lswk">
-      <bpmn:incoming>SequenceFlow_0l5r96s</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0talboa</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_0s1lswk</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:sequenceFlow id="SequenceFlow_0l5r96s" sourceRef="ScriptTask_0w46sge" targetRef="ExclusiveGateway_1hgjg3u" />
-    <bpmn:exclusiveGateway id="ExclusiveGateway_16046vb" name="Is SDNC Service Contained" default="SequenceFlow_12avhgx">
-      <bpmn:incoming>SequenceFlow_0talboa</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1icwpye</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_12avhgx</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:sequenceFlow id="SequenceFlow_1icwpye" name="yes" sourceRef="ExclusiveGateway_16046vb" targetRef="Task_0edkv0m">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("isContainsWanResource" )  == "true" )}]]></bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_0talboa" name="yes" sourceRef="ExclusiveGateway_1hgjg3u" targetRef="ExclusiveGateway_16046vb">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("allResourceFinished" )  == "true" )}]]></bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_0s1lswk" name="no" sourceRef="ExclusiveGateway_1hgjg3u" targetRef="ScriptTask_12q6a51" />
-    <bpmn:sequenceFlow id="SequenceFlow_1yujjwx" sourceRef="Task_0edkv0m" targetRef="ScriptTask_14pmqni" />
-    <bpmn:scriptTask id="ScriptTask_14pmqni" name="Post Config Service Instance Creation" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_1yujjwx</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_12avhgx</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1r5306k</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def csi = new  DoCreateResources()
-csi.postConfigRequest(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1r5306k" sourceRef="ScriptTask_14pmqni" targetRef="EndEvent_1uqzt26" />
-    <bpmn:scriptTask id="ScriptTask_0ib77as" name="GET Current NS " scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_042d7oc</bpmn:incoming>
-      <bpmn:incoming>SequenceFlow_1t2hfv0</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1t8hf8m</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.getCurrentNS(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:callActivity id="CallActivity_0kf50as" name="GET NS Info from AAI" calledElement="GenericGetService">
-      <bpmn:extensionElements>
-        <camunda:in source="serviceInstanceId" target="GENGS_serviceInstanceId" />
-        <camunda:in sourceExpression="service-instance" target="GENGS_type" />
-        <camunda:out source="GENGS_FoundIndicator" target="GENGS_FoundIndicator" />
-        <camunda:out source="GENGS_SuccessIndicator" target="GENGS_SuccessIndicator" />
-        <camunda:out source="WorkflowException" target="WorkflowException" />
-        <camunda:out source="GENGS_siResourceLink" target="GENGS_siResourceLink" />
-        <camunda:out source="GENGS_service" target="GENGS_service" />
-        <camunda:in source="globalSubscriberId" target="GENGS_globalCustomerId" />
-        <camunda:in source="serviceType" target="GENGS_serviceType" />
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_1t8hf8m</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0p5gr4z</bpmn:outgoing>
-    </bpmn:callActivity>
-    <bpmn:scriptTask id="ScriptTask_1lqjyj9" name="Post Process GET NS Info from AAI" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0p5gr4z</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_131imj8</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.postProcessAAIGET(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1t8hf8m" sourceRef="ScriptTask_0ib77as" targetRef="CallActivity_0kf50as" />
-    <bpmn:sequenceFlow id="SequenceFlow_0p5gr4z" sourceRef="CallActivity_0kf50as" targetRef="ScriptTask_1lqjyj9" />
-    <bpmn:sequenceFlow id="SequenceFlow_1n85wxv" sourceRef="ScriptTask_197fr01" targetRef="ExclusiveGateway_1lt9ijz" />
-    <bpmn:exclusiveGateway id="ExclusiveGateway_1lt9ijz" name="Is All Resource Info OK" default="SequenceFlow_042d7oc">
-      <bpmn:extensionElements>
-        <camunda:properties>
-          <camunda:property />
-        </camunda:properties>
-      </bpmn:extensionElements>
-      <bpmn:incoming>SequenceFlow_1n85wxv</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0xqdf1z</bpmn:outgoing>
-      <bpmn:outgoing>SequenceFlow_042d7oc</bpmn:outgoing>
-    </bpmn:exclusiveGateway>
-    <bpmn:sequenceFlow id="SequenceFlow_0xqdf1z" sourceRef="ExclusiveGateway_1lt9ijz" targetRef="ScriptTask_0o5bglz">
-      <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{(execution.getVariable("allNsFinished" )  == "true" )}]]></bpmn:conditionExpression>
-    </bpmn:sequenceFlow>
-    <bpmn:sequenceFlow id="SequenceFlow_042d7oc" sourceRef="ExclusiveGateway_1lt9ijz" targetRef="ScriptTask_0ib77as" />
-    <bpmn:scriptTask id="ScriptTask_14bl5a0" name="PreProcess Incoming Request" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_0vz7cd9</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1t2hfv0</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.preProcessRequest(execution)
-]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_1t2hfv0" sourceRef="ScriptTask_14bl5a0" targetRef="ScriptTask_0ib77as" />
-    <bpmn:scriptTask id="ScriptTask_197fr01" name="Parse Next NS" scriptFormat="groovy">
-      <bpmn:incoming>SequenceFlow_131imj8</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_1n85wxv</bpmn:outgoing>
-      <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
-def ddsi = new DoDeleteResources()
-ddsi.parseNextNS(execution)]]></bpmn:script>
-    </bpmn:scriptTask>
-    <bpmn:sequenceFlow id="SequenceFlow_131imj8" sourceRef="ScriptTask_1lqjyj9" targetRef="ScriptTask_197fr01" />
-    <bpmn:sequenceFlow id="SequenceFlow_12avhgx" name="no" sourceRef="ExclusiveGateway_16046vb" targetRef="ScriptTask_14pmqni" />
-  </bpmn:process>
-  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
-    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoDeleteResources">
-      <bpmndi:BPMNShape id="StartEvent_0212h2r_di" bpmnElement="StartEvent_0212h2r">
-        <dc:Bounds x="-214" y="-319" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-220" y="-278" width="50" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_1uqzt26_di" bpmnElement="EndEvent_1uqzt26">
-        <dc:Bounds x="1388" y="725" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1316" y="766" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="SubProcess_1u8zt9i_di" bpmnElement="SubProcess_1u8zt9i" isExpanded="true">
-        <dc:Bounds x="292" y="675" width="467" height="193" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0vz7cd9_di" bpmnElement="SequenceFlow_0vz7cd9">
-        <di:waypoint xsi:type="dc:Point" x="-196" y="-283" />
-        <di:waypoint xsi:type="dc:Point" x="-196" y="-220" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-226" y="-257.5" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="StartEvent_0sf5lpt_di" bpmnElement="StartEvent_0sf5lpt">
-        <dc:Bounds x="360" y="742" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="288" y="783" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="EndEvent_06utmg4_di" bpmnElement="EndEvent_06utmg4">
-        <dc:Bounds x="653" y="742" width="36" height="36" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="581" y="783" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0nha3pr_di" bpmnElement="ScriptTask_0nha3pr">
-        <dc:Bounds x="464" y="720" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1921mo3_di" bpmnElement="SequenceFlow_1921mo3">
-        <di:waypoint xsi:type="dc:Point" x="396" y="760" />
-        <di:waypoint xsi:type="dc:Point" x="464" y="760" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="340" y="745" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_18vlzfo_di" bpmnElement="SequenceFlow_18vlzfo">
-        <di:waypoint xsi:type="dc:Point" x="564" y="760" />
-        <di:waypoint xsi:type="dc:Point" x="653" y="760" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="520" y="745" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_0z30dax_di" bpmnElement="ScriptTask_0z30dax">
-        <dc:Bounds x="470" y="111" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1dza4q4_di" bpmnElement="SequenceFlow_1dza4q4">
-        <di:waypoint xsi:type="dc:Point" x="570" y="151" />
-        <di:waypoint xsi:type="dc:Point" x="688" y="152" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="584" y="130.5" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1wnkgpx_di" bpmnElement="SequenceFlow_1wnkgpx">
-        <di:waypoint xsi:type="dc:Point" x="576" y="378" />
-        <di:waypoint xsi:type="dc:Point" x="688" y="378" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="587" y="357" width="90" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_00301ai_di" bpmnElement="Task_0z1x3sg">
-        <dc:Bounds x="476" y="338" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_1mwacgl_di" bpmnElement="Task_0963dho">
-        <dc:Bounds x="688" y="338" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ServiceTask_0v9q75y_di" bpmnElement="CallActivity_Del_SDNC_cust">
-        <dc:Bounds x="688" y="112" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ServiceTask_0p4b7e1_di" bpmnElement="Task_0edkv0m">
-        <dc:Bounds x="1356" y="233" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_0o5bglz_di" bpmnElement="ScriptTask_0o5bglz">
-        <dc:Bounds x="-26" y="233" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ExclusiveGateway_07toixi_di" bpmnElement="ExclusiveGateway_07toixi" isMarkerVisible="true">
-        <dc:Bounds x="342.56962025316454" y="248" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="404" y="261" width="73" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_12q6a51_di" bpmnElement="ScriptTask_12q6a51">
-        <dc:Bounds x="159" y="450" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_03c0zlq_di" bpmnElement="SequenceFlow_03c0zlq">
-        <di:waypoint xsi:type="dc:Point" x="24" y="313" />
-        <di:waypoint xsi:type="dc:Point" x="24" y="494" />
-        <di:waypoint xsi:type="dc:Point" x="159" y="490" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="39" y="397.5" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1htjmkv_di" bpmnElement="SequenceFlow_1htjmkv">
-        <di:waypoint xsi:type="dc:Point" x="209" y="450" />
-        <di:waypoint xsi:type="dc:Point" x="209" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="343" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="224" y="355.5" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1ubor5z_di" bpmnElement="SequenceFlow_1ubor5z">
-        <di:waypoint xsi:type="dc:Point" x="368" y="248" />
-        <di:waypoint xsi:type="dc:Point" x="368" y="151" />
-        <di:waypoint xsi:type="dc:Point" x="470" y="151" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="381" y="161" width="37" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1x3lehs_di" bpmnElement="SequenceFlow_1x3lehs">
-        <di:waypoint xsi:type="dc:Point" x="368" y="298" />
-        <di:waypoint xsi:type="dc:Point" x="368" y="378" />
-        <di:waypoint xsi:type="dc:Point" x="476" y="378" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="379" y="353" width="28" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_0w46sge_di" bpmnElement="ScriptTask_0w46sge">
-        <dc:Bounds x="865" y="233" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1lxqjmp_di" bpmnElement="SequenceFlow_1lxqjmp">
-        <di:waypoint xsi:type="dc:Point" x="788" y="152" />
-        <di:waypoint xsi:type="dc:Point" x="827" y="152" />
-        <di:waypoint xsi:type="dc:Point" x="827" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="865" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="842" y="206.5" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0phwem2_di" bpmnElement="SequenceFlow_0phwem2">
-        <di:waypoint xsi:type="dc:Point" x="788" y="378" />
-        <di:waypoint xsi:type="dc:Point" x="827" y="378" />
-        <di:waypoint xsi:type="dc:Point" x="827" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="865" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="842" y="319.5" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ExclusiveGateway_1hgjg3u_di" bpmnElement="ExclusiveGateway_1hgjg3u" isMarkerVisible="true">
-        <dc:Bounds x="1040.9252217997464" y="248" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1028" y="215" width="75" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0l5r96s_di" bpmnElement="SequenceFlow_0l5r96s">
-        <di:waypoint xsi:type="dc:Point" x="965" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="1041" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1003" y="252" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ExclusiveGateway_16046vb_di" bpmnElement="ExclusiveGateway_16046vb" isMarkerVisible="true">
-        <dc:Bounds x="1203.8174904942966" y="248.28010139416983" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1187" y="214" width="84" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1icwpye_di" bpmnElement="SequenceFlow_1icwpye">
-        <di:waypoint xsi:type="dc:Point" x="1254" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="1356" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1297" y="252" width="19" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0talboa_di" bpmnElement="SequenceFlow_0talboa">
-        <di:waypoint xsi:type="dc:Point" x="1091" y="273" />
-        <di:waypoint xsi:type="dc:Point" x="1204" y="273" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1138" y="252" width="19" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0s1lswk_di" bpmnElement="SequenceFlow_0s1lswk">
-        <di:waypoint xsi:type="dc:Point" x="1066" y="298" />
-        <di:waypoint xsi:type="dc:Point" x="1066" y="490" />
-        <di:waypoint xsi:type="dc:Point" x="259" y="490" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1074" y="388" width="15" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1yujjwx_di" bpmnElement="SequenceFlow_1yujjwx">
-        <di:waypoint xsi:type="dc:Point" x="1406" y="313" />
-        <di:waypoint xsi:type="dc:Point" x="1406" y="523" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1421" y="412" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_14pmqni_di" bpmnElement="ScriptTask_14pmqni">
-        <dc:Bounds x="1356" y="523" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1r5306k_di" bpmnElement="SequenceFlow_1r5306k">
-        <di:waypoint xsi:type="dc:Point" x="1406" y="603" />
-        <di:waypoint xsi:type="dc:Point" x="1406" y="725" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1421" y="658" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_0ib77as_di" bpmnElement="ScriptTask_0ib77as">
-        <dc:Bounds x="-246" y="-84" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="CallActivity_0kf50as_di" bpmnElement="CallActivity_0kf50as">
-        <dc:Bounds x="-84" y="-84" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNShape id="ScriptTask_1lqjyj9_di" bpmnElement="ScriptTask_1lqjyj9">
-        <dc:Bounds x="80" y="-84" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1t8hf8m_di" bpmnElement="SequenceFlow_1t8hf8m">
-        <di:waypoint xsi:type="dc:Point" x="-146" y="-44" />
-        <di:waypoint xsi:type="dc:Point" x="-84" y="-44" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-160" y="-65" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_0p5gr4z_di" bpmnElement="SequenceFlow_0p5gr4z">
-        <di:waypoint xsi:type="dc:Point" x="16" y="-44" />
-        <di:waypoint xsi:type="dc:Point" x="80" y="-44" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="3" y="-65" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_1n85wxv_di" bpmnElement="SequenceFlow_1n85wxv">
-        <di:waypoint xsi:type="dc:Point" x="290" y="-4" />
-        <di:waypoint xsi:type="dc:Point" x="290" y="106" />
-        <di:waypoint xsi:type="dc:Point" x="49" y="106" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="305" y="45" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ExclusiveGateway_1lt9ijz_di" bpmnElement="ExclusiveGateway_1lt9ijz" isMarkerVisible="true">
-        <dc:Bounds x="-1" y="81" width="50" height="50" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-13" y="135" width="75" height="24" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0xqdf1z_di" bpmnElement="SequenceFlow_0xqdf1z">
-        <di:waypoint xsi:type="dc:Point" x="24" y="131" />
-        <di:waypoint xsi:type="dc:Point" x="24" y="233" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="39" y="176" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_042d7oc_di" bpmnElement="SequenceFlow_042d7oc">
-        <di:waypoint xsi:type="dc:Point" x="-1" y="106" />
-        <di:waypoint xsi:type="dc:Point" x="-196" y="106" />
-        <di:waypoint xsi:type="dc:Point" x="-196" y="-4" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-98.5" y="85" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_14bl5a0_di" bpmnElement="ScriptTask_14bl5a0">
-        <dc:Bounds x="-246" y="-220" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_1t2hfv0_di" bpmnElement="SequenceFlow_1t2hfv0">
-        <di:waypoint xsi:type="dc:Point" x="-196" y="-140" />
-        <di:waypoint xsi:type="dc:Point" x="-196" y="-84" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="-181" y="-118" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNShape id="ScriptTask_197fr01_di" bpmnElement="ScriptTask_197fr01">
-        <dc:Bounds x="240" y="-84" width="100" height="80" />
-      </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_131imj8_di" bpmnElement="SequenceFlow_131imj8">
-        <di:waypoint xsi:type="dc:Point" x="180" y="-44" />
-        <di:waypoint xsi:type="dc:Point" x="240" y="-44" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="210" y="-65" width="0" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-      <bpmndi:BPMNEdge id="SequenceFlow_12avhgx_di" bpmnElement="SequenceFlow_12avhgx">
-        <di:waypoint xsi:type="dc:Point" x="1229" y="298" />
-        <di:waypoint xsi:type="dc:Point" x="1229" y="563" />
-        <di:waypoint xsi:type="dc:Point" x="1356" y="563" />
-        <bpmndi:BPMNLabel>
-          <dc:Bounds x="1237" y="425" width="15" height="12" />
-        </bpmndi:BPMNLabel>
-      </bpmndi:BPMNEdge>
-    </bpmndi:BPMNPlane>
-  </bpmndi:BPMNDiagram>
-</bpmn:definitions>
