added updated dockerfiles and ric workflow
[it/otf.git] / oran-ric-test-head / workflows / Deploy_xAPP_Test.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_0cpfikh" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.1">\r
3   <bpmn:process id="Deploy_xAPP_Test" name="Deploy xAPP Test" isExecutable="true">\r
4     <bpmn:startEvent id="StartEvent_1" camunda:asyncBefore="true">\r
5       <bpmn:outgoing>SequenceFlow_0st7o3p</bpmn:outgoing>\r
6     </bpmn:startEvent>\r
7     <bpmn:sequenceFlow id="SequenceFlow_0st7o3p" sourceRef="StartEvent_1" targetRef="ScriptTask_08k2jy1" />\r
8     <bpmn:sequenceFlow id="SequenceFlow_0j9397y" sourceRef="ready" targetRef="verify_ready" />\r
9     <bpmn:sequenceFlow id="SequenceFlow_0e1kt1e" sourceRef="verify_ready" targetRef="ExclusiveGateway_1u1b164" />\r
10     <bpmn:sequenceFlow id="SequenceFlow_0zxo4fr" name="Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="first_list">\r
11       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${ready}</bpmn:conditionExpression>\r
12     </bpmn:sequenceFlow>\r
13     <bpmn:sequenceFlow id="SequenceFlow_1chkfad" name="Not Ready" sourceRef="ExclusiveGateway_1u1b164" targetRef="mark_failure" />\r
14     <bpmn:sequenceFlow id="SequenceFlow_0s6ntyv" sourceRef="first_list" targetRef="alreadyDeployed" />\r
15     <bpmn:sequenceFlow id="SequenceFlow_1oze54u" sourceRef="deploy" targetRef="IntermediateThrowEvent_0aoxbne" />\r
16     <bpmn:sequenceFlow id="SequenceFlow_07jnolr" sourceRef="second_list" targetRef="verify_deploy" />\r
17     <bpmn:sequenceFlow id="SequenceFlow_08wazou" sourceRef="verify_deploy" targetRef="ExclusiveGateway_05eh6vk" />\r
18     <bpmn:sequenceFlow id="SequenceFlow_0nfij3v" name="xAPP deploy failed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_failure" />\r
19     <bpmn:sequenceFlow id="SequenceFlow_18bpwal" sourceRef="mark_success" targetRef="log_test_result" />\r
20     <bpmn:sequenceFlow id="SequenceFlow_07rma3l" sourceRef="IntermediateThrowEvent_0aoxbne" targetRef="second_list" />\r
21     <bpmn:sequenceFlow id="SequenceFlow_01cc25d" sourceRef="log_test_result" targetRef="EndEvent_0lg4zm4" />\r
22     <bpmn:sequenceFlow id="SequenceFlow_1u9jrl1" sourceRef="mark_failure" targetRef="log_test_result" />\r
23     <bpmn:sequenceFlow id="SequenceFlow_08hkwrc" name="xAPP deployed" sourceRef="ExclusiveGateway_05eh6vk" targetRef="mark_success">\r
24       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${deployed}</bpmn:conditionExpression>\r
25     </bpmn:sequenceFlow>\r
26     <bpmn:sequenceFlow id="SequenceFlow_18luk66" sourceRef="ScriptTask_08k2jy1" targetRef="ExclusiveGateway_10o6bsf" />\r
27     <bpmn:sequenceFlow id="SequenceFlow_1y69zdb" sourceRef="ExclusiveGateway_10o6bsf" targetRef="ready">\r
28       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${validInput}</bpmn:conditionExpression>\r
29     </bpmn:sequenceFlow>\r
30     <bpmn:sequenceFlow id="SequenceFlow_0g7zkcv" name="Bad Input" sourceRef="ExclusiveGateway_10o6bsf" targetRef="mark_failure" />\r
31     <bpmn:sequenceFlow id="SequenceFlow_08v4jva" name="Not Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="deploy">\r
32       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${!alreadyDeployed}</bpmn:conditionExpression>\r
33     </bpmn:sequenceFlow>\r
34     <bpmn:sequenceFlow id="SequenceFlow_0dscvt7" name="Already Deployed" sourceRef="ExclusiveGateway_0ridg34" targetRef="mark_failure" />\r
35     <bpmn:sequenceFlow id="SequenceFlow_0i3et2n" sourceRef="alreadyDeployed" targetRef="ExclusiveGateway_0ridg34" />\r
36     <bpmn:scriptTask id="verify_ready" name="Verify xAPP Manager is Ready" scriptFormat="JavaScript">\r
37       <bpmn:incoming>SequenceFlow_0j9397y</bpmn:incoming>\r
38       <bpmn:outgoing>SequenceFlow_0e1kt1e</bpmn:outgoing>\r
39       <bpmn:script>var System = java.lang.System \r
40 \r
41 var readyVthId = 'ready'\r
42 var testData = execution.getVariable("testData")\r
43 var vthInput = execution.getVariable("vthInput")\r
44 var ready = false;\r
45 var testResultMessage = "RIC VTH reported that xAppManager is not ready."\r
46 \r
47 \r
48 \r
49 try {\r
50   //get output from ready call\r
51   var testExecution = execution.getVariable('otf-execution-testExecution');\r
52   var data = null;\r
53   testExecution.testHeadResults.forEach(function(item, index, array) {\r
54     if(item.bpmnVthTaskId == readyVthId ){\r
55       data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];\r
56     }\r
57   })\r
58   \r
59   if(data === 200){\r
60     ready = true\r
61     testResultMessage = "RIC VTH reported that xAppManager is ready."\r
62   }\r
63   \r
64 }\r
65 catch(err) {\r
66   ready = false\r
67 }\r
68 \r
69 execution.setVariable("ready", ready);\r
70 execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
71     </bpmn:scriptTask>\r
72     <bpmn:scriptTask id="mark_failure" name="Mark Test Failure" scriptFormat="JavaScript">\r
73       <bpmn:incoming>SequenceFlow_1chkfad</bpmn:incoming>\r
74       <bpmn:incoming>SequenceFlow_0nfij3v</bpmn:incoming>\r
75       <bpmn:incoming>SequenceFlow_0g7zkcv</bpmn:incoming>\r
76       <bpmn:incoming>SequenceFlow_0dscvt7</bpmn:incoming>\r
77       <bpmn:outgoing>SequenceFlow_1u9jrl1</bpmn:outgoing>\r
78       <bpmn:script>execution.setVariable("testResult", "FAILED")</bpmn:script>\r
79     </bpmn:scriptTask>\r
80     <bpmn:scriptTask id="mark_success" name="Mark Test Success" scriptFormat="JavaScript">\r
81       <bpmn:incoming>SequenceFlow_08hkwrc</bpmn:incoming>\r
82       <bpmn:outgoing>SequenceFlow_18bpwal</bpmn:outgoing>\r
83       <bpmn:script>execution.setVariable("testResult", "SUCCESS")</bpmn:script>\r
84     </bpmn:scriptTask>\r
85     <bpmn:scriptTask id="verify_deploy" name="Compare xAPP list and validate test" scriptFormat="JavaScript">\r
86       <bpmn:incoming>SequenceFlow_07jnolr</bpmn:incoming>\r
87       <bpmn:outgoing>SequenceFlow_08wazou</bpmn:outgoing>\r
88       <bpmn:script>var System = java.lang.System \r
89 \r
90 var deploy = 'deploy'\r
91 var secondList = 'second_list'\r
92 var testData = execution.getVariable("testData")\r
93 var vthInput = execution.getVariable("vthInput")\r
94 var deployed = false;\r
95 var testResultMessage = "RIC VTH reported that xApp is not deployed."\r
96 var appName = testData['appName']\r
97 \r
98 \r
99 \r
100 try {\r
101   //get output from deploy call\r
102   var testExecution = execution.getVariable('otf-execution-testExecution');\r
103   data = null;\r
104   testExecution.testHeadResults.forEach(function(item, index, array) {\r
105     if(item.bpmnVthTaskId == deploy ){\r
106       data = item['testHeadResponse']['vthResponse']['resultData']['statusCode'];\r
107     }\r
108   })\r
109 \r
110   if(data === 201){\r
111     testResultMessage = "RIC VTH reported that xAppManager deployment call succeeded."\r
112 \r
113     //get output from secondList call\r
114     var testExecution = execution.getVariable('otf-execution-testExecution');\r
115     data = null;\r
116     testExecution.testHeadResults.forEach(function(item, index, array) {\r
117       if(item.bpmnVthTaskId == secondList ){\r
118         data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];\r
119       }\r
120     })\r
121 \r
122     instance = null\r
123     data.forEach(function(item, index, array) {\r
124       if(item.name === appName){\r
125         instance = item\r
126         testResultMessage = "RIC VTH reported that xApp is present."\r
127       }\r
128     })\r
129 \r
130     if(instance !== null &amp;&amp; instance.status === 'deployed'){\r
131       deployed = true\r
132       testResultMessage = "RIC VTH reported that xApp is deployed."\r
133       testDetails = execution.getVariable("testDetails")\r
134       testDetails.put("instance", instance);\r
135       execution.setVariable("testDetails", testDetails)\r
136     }  \r
137     else{\r
138       deployed = false\r
139       testResultMessage = "RIC VTH reported that xApp was deployed, but xApp instance was either null or not deployed. See vth results for further information."\r
140     }\r
141 \r
142   }\r
143   \r
144 }\r
145 catch(err) {\r
146   deployed = false\r
147   testResultMessage = "Couldn't verify is xApp was deployed. Check Test Results"  + err\r
148 }\r
149 \r
150 execution.setVariable("deployed", deployed);\r
151 execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
152     </bpmn:scriptTask>\r
153     <bpmn:scriptTask id="ScriptTask_08k2jy1" name="Verify Inputs" scriptFormat="JavaScript">\r
154       <bpmn:incoming>SequenceFlow_0st7o3p</bpmn:incoming>\r
155       <bpmn:outgoing>SequenceFlow_18luk66</bpmn:outgoing>\r
156       <bpmn:script>var System = java.lang.System \r
157 \r
158 var deployVthId = 'deploy'\r
159 var testData = execution.getVariable("testData")\r
160 var vthInput = execution.getVariable("vthInput")\r
161 var validInput = false;\r
162 var testResultMessage = "";\r
163 \r
164 try{\r
165 \r
166   var appName = testData['appName'];\r
167   var waitDurationSec = testData['waitDurationSec'];\r
168 \r
169   if(typeof appName  !== 'string' || appName.trim() === ''){\r
170     System.out.println("appName is not a string, or empty string")\r
171     throw Error("appName is not a string, or empty string")\r
172   }\r
173 \r
174   if(typeof waitDurationSec !== 'number' || waitDurationSec &lt; 0){\r
175     System.out.println("not a number")\r
176     throw Error("waitDurationSec is not a number greater than 0")\r
177   }\r
178 \r
179   validInput = true\r
180 \r
181   vthInput[deployVthId].name = appName\r
182   var timer = "PT" + waitDurationSec + "S"\r
183   System.out.println("timer " + timer)\r
184   execution.setVariable("timer", timer)\r
185 }\r
186 catch(err){\r
187   System.out.println(err)\r
188   validInput = false\r
189   testResultMessage = "Invalid input params. error: " + err;\r
190   execution.setVariable("testResult", "FAILED");\r
191 }\r
192 \r
193 execution.setVariable("validInput", validInput)\r
194 execution.setVariable("testResultMessage", testResultMessage)</bpmn:script>\r
195     </bpmn:scriptTask>\r
196     <bpmn:scriptTask id="alreadyDeployed" name="Check if xAPP is already deployed" scriptFormat="JavaScript">\r
197       <bpmn:incoming>SequenceFlow_0s6ntyv</bpmn:incoming>\r
198       <bpmn:outgoing>SequenceFlow_0i3et2n</bpmn:outgoing>\r
199       <bpmn:script>var System = java.lang.System \r
200 \r
201 var firstList = 'first_list'\r
202 var testData = execution.getVariable("testData")\r
203 var vthInput = execution.getVariable("vthInput")\r
204 var alreadyDeployed = true;\r
205 var testResultMessage = "RIC VTH reported that xApp is already deployed."\r
206 var appName = testData['appName']\r
207 \r
208 \r
209 \r
210 try {\r
211   //get output from firstList call\r
212   var testExecution = execution.getVariable('otf-execution-testExecution');\r
213   var data = null;\r
214   testExecution.testHeadResults.forEach(function(item, index, array) {\r
215     if(item.bpmnVthTaskId == firstList ){\r
216       data = item['testHeadResponse']['vthResponse']['resultData']['resultOutput'];\r
217     }\r
218   })\r
219 \r
220   var instance = null\r
221   data.forEach(function(item, index, array) {\r
222     if(item.name === appName){\r
223       instance = item\r
224       testResultMessage = "RIC VTH reported that xApp is already present."\r
225     }\r
226   })\r
227 \r
228   if(instance === null){\r
229     alreadyDeployed = false\r
230     testResultMessage = "RIC VTH reported that xApp is not present."\r
231   }  \r
232 \r
233   \r
234 }\r
235 catch(err) {\r
236   alreadyDeployed = true\r
237   testResultMessage = "Couldn't verify is xApp was already deployed."\r
238 }\r
239 \r
240 execution.setVariable("alreadyDeployed", alreadyDeployed);\r
241 execution.setVariable("testResultMessage", testResultMessage);</bpmn:script>\r
242     </bpmn:scriptTask>\r
243     <bpmn:exclusiveGateway id="ExclusiveGateway_1u1b164" default="SequenceFlow_1chkfad">\r
244       <bpmn:incoming>SequenceFlow_0e1kt1e</bpmn:incoming>\r
245       <bpmn:outgoing>SequenceFlow_0zxo4fr</bpmn:outgoing>\r
246       <bpmn:outgoing>SequenceFlow_1chkfad</bpmn:outgoing>\r
247     </bpmn:exclusiveGateway>\r
248     <bpmn:exclusiveGateway id="ExclusiveGateway_05eh6vk" default="SequenceFlow_0nfij3v">\r
249       <bpmn:incoming>SequenceFlow_08wazou</bpmn:incoming>\r
250       <bpmn:outgoing>SequenceFlow_0nfij3v</bpmn:outgoing>\r
251       <bpmn:outgoing>SequenceFlow_08hkwrc</bpmn:outgoing>\r
252     </bpmn:exclusiveGateway>\r
253     <bpmn:exclusiveGateway id="ExclusiveGateway_10o6bsf" default="SequenceFlow_0g7zkcv">\r
254       <bpmn:incoming>SequenceFlow_18luk66</bpmn:incoming>\r
255       <bpmn:outgoing>SequenceFlow_1y69zdb</bpmn:outgoing>\r
256       <bpmn:outgoing>SequenceFlow_0g7zkcv</bpmn:outgoing>\r
257     </bpmn:exclusiveGateway>\r
258     <bpmn:exclusiveGateway id="ExclusiveGateway_0ridg34" default="SequenceFlow_0dscvt7">\r
259       <bpmn:incoming>SequenceFlow_0i3et2n</bpmn:incoming>\r
260       <bpmn:outgoing>SequenceFlow_08v4jva</bpmn:outgoing>\r
261       <bpmn:outgoing>SequenceFlow_0dscvt7</bpmn:outgoing>\r
262     </bpmn:exclusiveGateway>\r
263     <bpmn:intermediateCatchEvent id="IntermediateThrowEvent_0aoxbne">\r
264       <bpmn:incoming>SequenceFlow_1oze54u</bpmn:incoming>\r
265       <bpmn:outgoing>SequenceFlow_07rma3l</bpmn:outgoing>\r
266       <bpmn:timerEventDefinition>\r
267         <bpmn:timeDuration xsi:type="bpmn:tFormalExpression">${timer}</bpmn:timeDuration>\r
268       </bpmn:timerEventDefinition>\r
269     </bpmn:intermediateCatchEvent>\r
270     <bpmn:endEvent id="EndEvent_0lg4zm4">\r
271       <bpmn:incoming>SequenceFlow_01cc25d</bpmn:incoming>\r
272       <bpmn:terminateEventDefinition />\r
273     </bpmn:endEvent>\r
274     <bpmn:serviceTask id="ready" name="LVTH:RIC:Ready" camunda:delegateExpression="${callTestHeadDelegate}">\r
275       <bpmn:incoming>SequenceFlow_1y69zdb</bpmn:incoming>\r
276       <bpmn:outgoing>SequenceFlow_0j9397y</bpmn:outgoing>\r
277     </bpmn:serviceTask>\r
278     <bpmn:serviceTask id="first_list" name="LVTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">\r
279       <bpmn:incoming>SequenceFlow_0zxo4fr</bpmn:incoming>\r
280       <bpmn:outgoing>SequenceFlow_0s6ntyv</bpmn:outgoing>\r
281     </bpmn:serviceTask>\r
282     <bpmn:serviceTask id="deploy" name="LVTH:RIC:Deploy" camunda:delegateExpression="${callTestHeadDelegate}">\r
283       <bpmn:incoming>SequenceFlow_08v4jva</bpmn:incoming>\r
284       <bpmn:outgoing>SequenceFlow_1oze54u</bpmn:outgoing>\r
285     </bpmn:serviceTask>\r
286     <bpmn:serviceTask id="second_list" name="LVTH:RIC:List" camunda:delegateExpression="${callTestHeadDelegate}">\r
287       <bpmn:incoming>SequenceFlow_07rma3l</bpmn:incoming>\r
288       <bpmn:outgoing>SequenceFlow_07jnolr</bpmn:outgoing>\r
289     </bpmn:serviceTask>\r
290     <bpmn:serviceTask id="log_test_result" name="UTIL:LogTestResult" camunda:delegateExpression="${logTestResultDelegate}">\r
291       <bpmn:incoming>SequenceFlow_18bpwal</bpmn:incoming>\r
292       <bpmn:incoming>SequenceFlow_1u9jrl1</bpmn:incoming>\r
293       <bpmn:outgoing>SequenceFlow_01cc25d</bpmn:outgoing>\r
294     </bpmn:serviceTask>\r
295   </bpmn:process>\r
296   <bpmndi:BPMNDiagram id="BPMNDiagram_1">\r
297     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Deploy_xAPP_Test">\r
298       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">\r
299         <dc:Bounds x="156" y="190" width="36" height="36" />\r
300       </bpmndi:BPMNShape>\r
301       <bpmndi:BPMNShape id="ScriptTask_01o5d6n_di" bpmnElement="verify_ready">\r
302         <dc:Bounds x="660" y="168" width="100" height="80" />\r
303       </bpmndi:BPMNShape>\r
304       <bpmndi:BPMNShape id="ExclusiveGateway_1u1b164_di" bpmnElement="ExclusiveGateway_1u1b164" isMarkerVisible="true">\r
305         <dc:Bounds x="804" y="183" width="50" height="50" />\r
306       </bpmndi:BPMNShape>\r
307       <bpmndi:BPMNShape id="IntermediateCatchEvent_0o4pf4x_di" bpmnElement="IntermediateThrowEvent_0aoxbne">\r
308         <dc:Bounds x="1455" y="190" width="36" height="36" />\r
309       </bpmndi:BPMNShape>\r
310       <bpmndi:BPMNShape id="ExclusiveGateway_05eh6vk_di" bpmnElement="ExclusiveGateway_05eh6vk" isMarkerVisible="true">\r
311         <dc:Bounds x="1884" y="183" width="50" height="50" />\r
312       </bpmndi:BPMNShape>\r
313       <bpmndi:BPMNShape id="ScriptTask_0iya1du_di" bpmnElement="mark_failure">\r
314         <dc:Bounds x="1859" y="423" width="100" height="80" />\r
315       </bpmndi:BPMNShape>\r
316       <bpmndi:BPMNShape id="ScriptTask_1dygfw7_di" bpmnElement="mark_success">\r
317         <dc:Bounds x="2069" y="168" width="100" height="80" />\r
318       </bpmndi:BPMNShape>\r
319       <bpmndi:BPMNShape id="EndEvent_15niqin_di" bpmnElement="EndEvent_0lg4zm4">\r
320         <dc:Bounds x="2407" y="190" width="36" height="36" />\r
321       </bpmndi:BPMNShape>\r
322       <bpmndi:BPMNShape id="ScriptTask_0qmq6pn_di" bpmnElement="verify_deploy">\r
323         <dc:Bounds x="1728" y="168" width="100" height="80" />\r
324       </bpmndi:BPMNShape>\r
325       <bpmndi:BPMNShape id="Task_0smfzp7_di" bpmnElement="ready">\r
326         <dc:Bounds x="508" y="168" width="100" height="80" />\r
327       </bpmndi:BPMNShape>\r
328       <bpmndi:BPMNShape id="Task_0p2tcjd_di" bpmnElement="first_list">\r
329         <dc:Bounds x="905" y="168" width="100" height="80" />\r
330       </bpmndi:BPMNShape>\r
331       <bpmndi:BPMNShape id="Task_14wupjq_di" bpmnElement="deploy">\r
332         <dc:Bounds x="1288" y="168" width="100" height="80" />\r
333       </bpmndi:BPMNShape>\r
334       <bpmndi:BPMNShape id="Task_1wygysw_di" bpmnElement="second_list">\r
335         <dc:Bounds x="1563" y="168" width="100" height="80" />\r
336       </bpmndi:BPMNShape>\r
337       <bpmndi:BPMNShape id="Task_0lcfr55_di" bpmnElement="log_test_result">\r
338         <dc:Bounds x="2253" y="168" width="100" height="80" />\r
339       </bpmndi:BPMNShape>\r
340       <bpmndi:BPMNShape id="ScriptTask_08k2jy1_di" bpmnElement="ScriptTask_08k2jy1">\r
341         <dc:Bounds x="240" y="168" width="100" height="80" />\r
342       </bpmndi:BPMNShape>\r
343       <bpmndi:BPMNShape id="ExclusiveGateway_10o6bsf_di" bpmnElement="ExclusiveGateway_10o6bsf" isMarkerVisible="true">\r
344         <dc:Bounds x="381" y="183" width="50" height="50" />\r
345       </bpmndi:BPMNShape>\r
346       <bpmndi:BPMNShape id="ExclusiveGateway_0ridg34_di" bpmnElement="ExclusiveGateway_0ridg34" isMarkerVisible="true">\r
347         <dc:Bounds x="1165" y="183" width="50" height="50" />\r
348       </bpmndi:BPMNShape>\r
349       <bpmndi:BPMNShape id="ScriptTask_0snkxz0_di" bpmnElement="alreadyDeployed">\r
350         <dc:Bounds x="1040" y="168" width="100" height="80" />\r
351       </bpmndi:BPMNShape>\r
352       <bpmndi:BPMNEdge id="SequenceFlow_0st7o3p_di" bpmnElement="SequenceFlow_0st7o3p">\r
353         <di:waypoint x="192" y="208" />\r
354         <di:waypoint x="240" y="208" />\r
355       </bpmndi:BPMNEdge>\r
356       <bpmndi:BPMNEdge id="SequenceFlow_0j9397y_di" bpmnElement="SequenceFlow_0j9397y">\r
357         <di:waypoint x="608" y="208" />\r
358         <di:waypoint x="660" y="208" />\r
359       </bpmndi:BPMNEdge>\r
360       <bpmndi:BPMNEdge id="SequenceFlow_0e1kt1e_di" bpmnElement="SequenceFlow_0e1kt1e">\r
361         <di:waypoint x="760" y="208" />\r
362         <di:waypoint x="804" y="208" />\r
363       </bpmndi:BPMNEdge>\r
364       <bpmndi:BPMNEdge id="SequenceFlow_0zxo4fr_di" bpmnElement="SequenceFlow_0zxo4fr">\r
365         <di:waypoint x="854" y="208" />\r
366         <di:waypoint x="905" y="208" />\r
367         <bpmndi:BPMNLabel>\r
368           <dc:Bounds x="854" y="189" width="33" height="14" />\r
369         </bpmndi:BPMNLabel>\r
370       </bpmndi:BPMNEdge>\r
371       <bpmndi:BPMNEdge id="SequenceFlow_1chkfad_di" bpmnElement="SequenceFlow_1chkfad">\r
372         <di:waypoint x="829" y="233" />\r
373         <di:waypoint x="829" y="463" />\r
374         <di:waypoint x="1859" y="463" />\r
375         <bpmndi:BPMNLabel>\r
376           <dc:Bounds x="839" y="347" width="53" height="14" />\r
377         </bpmndi:BPMNLabel>\r
378       </bpmndi:BPMNEdge>\r
379       <bpmndi:BPMNEdge id="SequenceFlow_0s6ntyv_di" bpmnElement="SequenceFlow_0s6ntyv">\r
380         <di:waypoint x="1005" y="208" />\r
381         <di:waypoint x="1040" y="208" />\r
382       </bpmndi:BPMNEdge>\r
383       <bpmndi:BPMNEdge id="SequenceFlow_1oze54u_di" bpmnElement="SequenceFlow_1oze54u">\r
384         <di:waypoint x="1388" y="208" />\r
385         <di:waypoint x="1455" y="208" />\r
386       </bpmndi:BPMNEdge>\r
387       <bpmndi:BPMNEdge id="SequenceFlow_07jnolr_di" bpmnElement="SequenceFlow_07jnolr">\r
388         <di:waypoint x="1663" y="208" />\r
389         <di:waypoint x="1728" y="208" />\r
390       </bpmndi:BPMNEdge>\r
391       <bpmndi:BPMNEdge id="SequenceFlow_08wazou_di" bpmnElement="SequenceFlow_08wazou">\r
392         <di:waypoint x="1828" y="208" />\r
393         <di:waypoint x="1884" y="208" />\r
394       </bpmndi:BPMNEdge>\r
395       <bpmndi:BPMNEdge id="SequenceFlow_0nfij3v_di" bpmnElement="SequenceFlow_0nfij3v">\r
396         <di:waypoint x="1909" y="233" />\r
397         <di:waypoint x="1909" y="423" />\r
398         <bpmndi:BPMNLabel>\r
399           <dc:Bounds x="1924" y="272" width="63" height="27" />\r
400         </bpmndi:BPMNLabel>\r
401       </bpmndi:BPMNEdge>\r
402       <bpmndi:BPMNEdge id="SequenceFlow_18bpwal_di" bpmnElement="SequenceFlow_18bpwal">\r
403         <di:waypoint x="2169" y="208" />\r
404         <di:waypoint x="2253" y="208" />\r
405       </bpmndi:BPMNEdge>\r
406       <bpmndi:BPMNEdge id="SequenceFlow_07rma3l_di" bpmnElement="SequenceFlow_07rma3l">\r
407         <di:waypoint x="1491" y="208" />\r
408         <di:waypoint x="1563" y="208" />\r
409       </bpmndi:BPMNEdge>\r
410       <bpmndi:BPMNEdge id="SequenceFlow_01cc25d_di" bpmnElement="SequenceFlow_01cc25d">\r
411         <di:waypoint x="2353" y="208" />\r
412         <di:waypoint x="2407" y="208" />\r
413       </bpmndi:BPMNEdge>\r
414       <bpmndi:BPMNEdge id="SequenceFlow_1u9jrl1_di" bpmnElement="SequenceFlow_1u9jrl1">\r
415         <di:waypoint x="1959" y="463" />\r
416         <di:waypoint x="2303" y="463" />\r
417         <di:waypoint x="2303" y="248" />\r
418       </bpmndi:BPMNEdge>\r
419       <bpmndi:BPMNEdge id="SequenceFlow_08hkwrc_di" bpmnElement="SequenceFlow_08hkwrc">\r
420         <di:waypoint x="1934" y="208" />\r
421         <di:waypoint x="2069" y="208" />\r
422         <bpmndi:BPMNLabel>\r
423           <dc:Bounds x="1964" y="190" width="75" height="14" />\r
424         </bpmndi:BPMNLabel>\r
425       </bpmndi:BPMNEdge>\r
426       <bpmndi:BPMNEdge id="SequenceFlow_18luk66_di" bpmnElement="SequenceFlow_18luk66">\r
427         <di:waypoint x="340" y="208" />\r
428         <di:waypoint x="381" y="208" />\r
429       </bpmndi:BPMNEdge>\r
430       <bpmndi:BPMNEdge id="SequenceFlow_1y69zdb_di" bpmnElement="SequenceFlow_1y69zdb">\r
431         <di:waypoint x="431" y="208" />\r
432         <di:waypoint x="508" y="208" />\r
433       </bpmndi:BPMNEdge>\r
434       <bpmndi:BPMNEdge id="SequenceFlow_0g7zkcv_di" bpmnElement="SequenceFlow_0g7zkcv">\r
435         <di:waypoint x="406" y="233" />\r
436         <di:waypoint x="406" y="463" />\r
437         <di:waypoint x="1859" y="463" />\r
438         <bpmndi:BPMNLabel>\r
439           <dc:Bounds x="416" y="360" width="49" height="14" />\r
440         </bpmndi:BPMNLabel>\r
441       </bpmndi:BPMNEdge>\r
442       <bpmndi:BPMNEdge id="SequenceFlow_08v4jva_di" bpmnElement="SequenceFlow_08v4jva">\r
443         <di:waypoint x="1215" y="208" />\r
444         <di:waypoint x="1288" y="208" />\r
445         <bpmndi:BPMNLabel>\r
446           <dc:Bounds x="1218" y="190" width="67" height="14" />\r
447         </bpmndi:BPMNLabel>\r
448       </bpmndi:BPMNEdge>\r
449       <bpmndi:BPMNEdge id="SequenceFlow_0dscvt7_di" bpmnElement="SequenceFlow_0dscvt7">\r
450         <di:waypoint x="1190" y="233" />\r
451         <di:waypoint x="1190" y="463" />\r
452         <di:waypoint x="1859" y="463" />\r
453         <bpmndi:BPMNLabel>\r
454           <dc:Bounds x="1205" y="357" width="86" height="14" />\r
455         </bpmndi:BPMNLabel>\r
456       </bpmndi:BPMNEdge>\r
457       <bpmndi:BPMNEdge id="SequenceFlow_0i3et2n_di" bpmnElement="SequenceFlow_0i3et2n">\r
458         <di:waypoint x="1140" y="208" />\r
459         <di:waypoint x="1165" y="208" />\r
460       </bpmndi:BPMNEdge>\r
461     </bpmndi:BPMNPlane>\r
462   </bpmndi:BPMNDiagram>\r
463 </bpmn:definitions>\r