-
Notifications
You must be signed in to change notification settings - Fork 0
/
finalEditClassDiagram.drawio
738 lines (738 loc) · 89.7 KB
/
finalEditClassDiagram.drawio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
<mxfile host="app.diagrams.net" modified="2023-05-06T19:02:11.272Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36" etag="tljgA9meBMe-lqJOCVNe" version="21.2.9" type="device">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="2800" dy="3633" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="LxXwSrXVg-sv-qg34Zbh-37" value="ReminderManager" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1080" y="-1828" width="250" height="150" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-38" value="-reminders:List&lt;Reminder&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-37" vertex="1">
<mxGeometry y="26" width="250" height="26" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-39" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-37" vertex="1">
<mxGeometry y="52" width="250" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-40" value="+ReminderManager()<br>+createReminder(reminder:Reminder):void<br>+deleteReminder(reminder:Reminder):void<br>+checkRemindersDue():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-37" vertex="1">
<mxGeometry y="60" width="250" height="90" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-41" value="Reminder" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="920" y="-1487" width="410" height="160" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-42" value="-id:int<br>-title:String<br>-message:string<br>-date:Date<br>-client:Client<br>-TypeOfreminder:enum" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-41" vertex="1">
<mxGeometry y="26" width="410" height="94" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-43" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-41" vertex="1">
<mxGeometry y="120" width="410" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-44" value="+Reminder(title:String,message:String,date:Date,client:Client,Type:enum)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-41" vertex="1">
<mxGeometry y="128" width="410" height="32" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-49" value="Client" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1660" y="-1496" width="460" height="480" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-50" value="-clientID:int<br>-firstName:String<br>-lastName:String<br>-email:String<br>-Phone:String<br>-accountFacade:accountFacade<br>-accounts:list&lt;Account&gt;<br>-credicards:list&lt;CreditCard&gt;<br>-requests:List&lt;Request&gt;<br>--loans:List&lt;loan&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-49" vertex="1">
<mxGeometry y="26" width="460" height="164" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-51" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-49" vertex="1">
<mxGeometry y="190" width="460" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-52" value="+Client(id: int, fname: String, lName: strign, email: String, phone: String, accounts: List, cards: List, requests: List)<br>+register(username:String,password:String):void<br>+login(username:String,password:String):void<br>+logout():void<br style="border-color: var(--border-color);">+closeAccount():void<br style="border-color: var(--border-color);">+createAccount(type:String):void<br>+requestforCreditCard(ClientID:int):void<br>+requestforLoan(clientId:int,loanType:enum):void<br>+fileComplain(clientId:int,description:String):void<br>+updateAnnouncments(notification Notification):void<br>+update(notification Notification):void<br>+setReminder(title:String,message:String,date:Date,client:Client,Type:String):void<br>+recieveReminder():Reminder<br>+reportIssue(): void<br>+viewAllTransactions():void<br>+viewCreditCardTransactions(): void<br>+veiwAccountTransactions(): void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-49" vertex="1">
<mxGeometry y="198" width="460" height="282" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-63" value="<font style="font-size: 19px;">*</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1211" y="-1527" width="30" height="40" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-64" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=1.008;exitY=0.34;exitDx=0;exitDy=0;exitPerimeter=0;entryX=-0.008;entryY=0.213;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-42" target="LxXwSrXVg-sv-qg34Zbh-50" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1390" y="-1440" as="sourcePoint" />
<mxPoint x="1610" y="-1435" as="targetPoint" />
<Array as="points">
<mxPoint x="1455" y="-1439" />
<mxPoint x="1455" y="-1434" />
<mxPoint x="1610" y="-1434" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-65" value="<font style="font-size: 16px;">0..*</font>" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" parent="LxXwSrXVg-sv-qg34Zbh-64" connectable="0" vertex="1">
<mxGeometry x="-1" relative="1" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-66" value="<font style="font-size: 14px;">1</font>" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" parent="LxXwSrXVg-sv-qg34Zbh-64" connectable="0" vertex="1">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-67" value="" style="endArrow=block;startArrow=block;endFill=1;startFill=1;html=1;rounded=0;exitX=1.03;exitY=0.384;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-40" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1410" y="-1570.59" as="sourcePoint" />
<mxPoint x="1720" y="-1500" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-68" value="<font style="font-size: 16px;">1</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1355" y="-1762" width="30" height="30" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-69" value="<font style="font-size: 17px;">0..*</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1705" y="-1542" width="50" height="30" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-70" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;exitX=0.822;exitY=-0.011;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-41" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1125" y="-1630" as="sourcePoint" />
<mxPoint x="1240" y="-1670" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-71" value="1" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1195" y="-1672" width="30" height="30" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-76" value="Banker" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2360" y="-1720" width="250" height="200" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-77" value="-name:String<br>-BankerId:String<br>-email:String<br>-phoneno:String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-76" vertex="1">
<mxGeometry y="26" width="250" height="74" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-78" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-76" vertex="1">
<mxGeometry y="100" width="250" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-79" value="+Banker(name: String, id: String, email: String, phone: String<br>+approveReq(request:Request):void<br>+RejectReq(request:Request):void<br>+solveIssue( issue:financial issue ): void&nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-76" vertex="1">
<mxGeometry y="108" width="250" height="92" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-84" value="Request" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2420" y="-1350" width="160" height="150" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-85" value="-status:enum<br>-type:String<br>-clientID:int" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-84" vertex="1">
<mxGeometry y="26" width="160" height="64" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-86" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-84" vertex="1">
<mxGeometry y="90" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-87" value="+Request(status: enum, type: String, id: int)<br>+submitReq():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-84" vertex="1">
<mxGeometry y="98" width="160" height="52" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-95" value="<font style="font-size: 14px;">0..*</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2370" y="-1302" width="40" height="30" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-96" value="<font style="font-size: 13px;">1</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2125" y="-1302" width="30" height="30" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-97" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;rounded=0;entryX=0.482;entryY=1.103;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.387;exitY=0;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-84" target="LxXwSrXVg-sv-qg34Zbh-79" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2390" y="-1400" as="sourcePoint" />
<mxPoint x="2550" y="-1400" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-98" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;rounded=0;exitX=0.007;exitY=0.01;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-85" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2320" y="-1293" as="sourcePoint" />
<mxPoint x="2130" y="-1320" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-99" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;entryX=0.007;entryY=0.91;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="LxXwSrXVg-sv-qg34Zbh-85" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2125" y="-1272" as="sourcePoint" />
<mxPoint x="2285" y="-1272" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-102" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.603;exitY=1.141;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-79" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2520" y="-1530" as="sourcePoint" />
<mxPoint x="2520" y="-1360" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-103" value="<font style="font-size: 14px;">1</font>" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" parent="LxXwSrXVg-sv-qg34Zbh-102" connectable="0" vertex="1">
<mxGeometry x="-1" relative="1" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-104" value="<font style="font-size: 16px;">0..*</font>" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" parent="LxXwSrXVg-sv-qg34Zbh-102" connectable="0" vertex="1">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-123" value="&lt;Interface&gt;<br>ObserverforAnnouncments" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1610" y="-1748" width="230" height="70" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-124" value="+updateAnnouncments(notification Notification):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-123" vertex="1">
<mxGeometry y="26" width="230" height="44" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-125" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;entryX=0.443;entryY=1.158;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="LxXwSrXVg-sv-qg34Zbh-124" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1820" y="-1500" as="sourcePoint" />
<mxPoint x="1820" y="-1630" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-130" value="bankAnnouncements" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2658" y="-1750" width="290" height="250" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-131" value="- description: String<br>-title:String<br>-highImportance: boolean<br>-clients: List&lt;ObserverforAnnouncments&gt;<br><br>" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-130" vertex="1">
<mxGeometry y="26" width="290" height="74" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-132" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-130" vertex="1">
<mxGeometry y="100" width="290" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-133" value="+bankAnnouncements(description: String, title: string, highImportance: boolean, clients: List)<br>+ setHighImportance():void<br>+ setDescription() : void<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-130" vertex="1">
<mxGeometry y="108" width="290" height="142" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-134" value="&lt;Interface&gt;<br>SubjectForAnnouncements" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2940" y="-1990" width="260" height="154" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-135" value="+attachObserver(observer:Observer):void<br>+deattach(observer:Observer):void<br>+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-134" vertex="1">
<mxGeometry y="26" width="260" height="64" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-136" value="+attachObserver(observer:Observer):void<br>+deattach(observer:Observer):void<br>+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-134" vertex="1">
<mxGeometry y="90" width="260" height="64" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-137" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.635;entryY=0.969;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-130" target="LxXwSrXVg-sv-qg34Zbh-136" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="3035" y="-1798" as="sourcePoint" />
<mxPoint x="3195" y="-1798" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-138" value="&lt;Interface&gt;<br>Observer" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1860" y="-1742" width="230" height="70" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-139" value="+update(notification Notification):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-138" vertex="1">
<mxGeometry y="26" width="230" height="44" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-140" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;entryX=0.436;entryY=1.118;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="LxXwSrXVg-sv-qg34Zbh-139" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1928" y="-1487" as="sourcePoint" />
<mxPoint x="1820" y="-1658" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-150" value="creditCard" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="773" y="-1210" width="320" height="380" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-151" value="-creditcardpayment:List&lt;CreditCardPayment&gt;<br>-ccv : int<br>-cardNumber: int<br>-client: Client<br>-limit: double<br>-balance: double<br>-status: string<br>-points: int<br>-password : string&nbsp;<br>-depositAndWithdrawList&lt;depositWithdrawTransactions&gt;<br>" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-150" vertex="1">
<mxGeometry y="26" width="320" height="164" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-152" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-150" vertex="1">
<mxGeometry y="190" width="320" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-153" value="+creditCard(list: List, ccv: int, client: Client, limint: double, balance: double, status: string: points: int, password: string, transactionsList: List)<br>+Suspend(): void<br>+Deactivate(): void<br>+updateInfo(); void<br>+addPoints(amount : int): void<br>+redeemPoints(amount: int): void<br>+viewPoints(): void<br>+viewDebtPayment(():void<br>+depositOrWithdraw(amount: int, type: string, date: Date)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-150" vertex="1">
<mxGeometry y="198" width="320" height="182" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-196" value="ThirdPartyPaymentStrategy" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2660" y="-830" width="290" height="170" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-197" value="-paymentToken:String<br>-paymentApiKey:String<br>-methodName: String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-196" vertex="1">
<mxGeometry y="26" width="290" height="64" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-198" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-196" vertex="1">
<mxGeometry y="90" width="290" height="10" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-199" value="+ThirdPartyPaymentStrategy(token: String, apiKey: String)<br>+makePayment(amount:double,recipient:String):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-196" vertex="1">
<mxGeometry y="100" width="290" height="70" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-200" value="bankPaymentStrategy" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2310" y="-800" width="300" height="132" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-201" value="-AccountNo:String<br>-RoutingNo.:String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-200" vertex="1">
<mxGeometry y="26" width="300" height="54" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-202" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-200" vertex="1">
<mxGeometry y="80" width="300" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-203" value="+bankPaymentStrategy(acc: String, rounting: String)<br>+makePayment(amount:double,recipient:String):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-200" vertex="1">
<mxGeometry y="88" width="300" height="44" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-204" value="&lt;Interface&gt;<br>PaymentyStrategy" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2650" y="-993" width="300" height="52" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-205" value="+makePayment(amount:double,recipient:String):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-204" vertex="1">
<mxGeometry y="26" width="300" height="26" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-206" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.558;exitY=0.002;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.205;entryY=0.978;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-200" target="LxXwSrXVg-sv-qg34Zbh-205" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2490" y="-920" as="sourcePoint" />
<mxPoint x="2580" y="-940" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-207" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;entryX=0.54;entryY=0.998;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.397;exitY=0.004;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-196" target="LxXwSrXVg-sv-qg34Zbh-205" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2800" y="-880" as="sourcePoint" />
<mxPoint x="2750" y="-890" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-208" value="PaymentContext" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1590" y="-993" width="470" height="130" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-209" value="-paymentStrategy:PaymentStrategy" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-208" vertex="1">
<mxGeometry y="26" width="470" height="34" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-210" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="LxXwSrXVg-sv-qg34Zbh-208" vertex="1">
<mxGeometry y="60" width="470" height="8" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-211" value="+PaymentContext(strategy: PaymentStrategy)<br>+setPaymentStrategy(amount:double,paymentStrategy:PaymentStrategy):void<br>+request(amount:double, paymentStrategy:PaymentStrategy):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="LxXwSrXVg-sv-qg34Zbh-208" vertex="1">
<mxGeometry y="68" width="470" height="62" as="geometry" />
</mxCell>
<mxCell id="LxXwSrXVg-sv-qg34Zbh-212" value="" style="endArrow=diamondThin;endFill=0;endSize=24;html=1;rounded=0;entryX=0.999;entryY=-0.011;entryDx=0;entryDy=0;entryPerimeter=0;exitX=-0.011;exitY=0.192;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-205" target="LxXwSrXVg-sv-qg34Zbh-211" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2640" y="-1033" as="sourcePoint" />
<mxPoint x="2640" y="-900" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-22" value="BillPayment" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1920" y="-536" width="230" height="350" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-23" value="-isPaid:bool<br>-id:int<br>-payeetNumber:int<br>-amount:double<br>-date:date<br>-observers:List&lt;Observer&gt;<br>-paymentStrategy:PaymentStrategy<br>--status:enum" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-22" vertex="1">
<mxGeometry y="26" width="230" height="114" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-24" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-22" vertex="1">
<mxGeometry y="140" width="230" height="20" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-25" value="+BillPayment(isPaid: boolean, id : int, payeeNumber: int, amount; double, date: Date, observers: LIst, strategy: PaymentStrategy)<br>+changeDueDate(date:Date):void<br>+changeAmount(amount:double ):void<br>+makepayment(amount :double)<br>+updateStatus():void<br>+cancelPyment():void<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void\" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-22" vertex="1">
<mxGeometry y="160" width="230" height="190" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-26" value="CreditCardPayment" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2465" y="-446" width="250" height="330" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-27" value="-debtamount:int<br>-isPaid:bool<br>-Id:int<br>-date:Date<br>-creditcard:CreditCard<br>-observers:List&lt;Observer&gt;<br>-paymentStrategy:PaymentStrategy<br>-creditcardtype:Enum<br>-status:enum" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-26" vertex="1">
<mxGeometry y="26" width="250" height="134" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-28" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-26" vertex="1">
<mxGeometry y="160" width="250" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-29" value="+CrditCardPayment(amount: int, isPaid: boolean, id: int, date: Date, card: CreditCard, observers: List, strategy: PaymentStrategy, cardType: enum)<br>+makepayment(amount :double):void<br>+updateStatus(status:enum):void<br>+increaseDebtAmount(amount:double):void<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-26" vertex="1">
<mxGeometry y="168" width="250" height="162" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-30" value="Loan" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2175" y="-428" width="260" height="320" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-31" value="-id:int<br>-amount:double<br>-interestrate:double<br>-LoanType:enum<br>-LoanStatus:enum<br>-duration:int<br>-startDate:Date<br>-endDate:Date<br>-observers:List&lt;Observer&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-30" vertex="1">
<mxGeometry y="26" width="260" height="134" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-32" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-30" vertex="1">
<mxGeometry y="160" width="260" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-33" value="+Loan(id: int, amount: double, rate: double, type: enum, status: enum, duration: int : start: Date, end: Date, observers: List)<br>+makePayment(amount:double):void<br>+calculateInterest():double<br>+ViewLoan_details():double<br>+calculate_total_payment():double<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-30" vertex="1">
<mxGeometry y="168" width="260" height="152" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-34" value="&lt;Interface&gt;<br>Subject" style="swimlane;fontStyle=0;childLayout=stackLayout;horizontal=1;startSize=26;fillColor=none;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2207" y="-645" width="260" height="90" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-35" value="+attachObserver(observer:Observer):void<br>+deattach(observer:Observer):void<br>+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-34" vertex="1">
<mxGeometry y="26" width="260" height="64" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-36" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0.221;entryY=1.005;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-22" edge="1" target="123oVY50qHvYcSflqY5E-35">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2027.12" y="-414.4000000000001" as="sourcePoint" />
<mxPoint x="2315" y="-535" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-37" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.561;exitY=-0.004;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.269;entryY=1.031;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-30" edge="1" target="123oVY50qHvYcSflqY5E-35">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2265" y="-476" as="sourcePoint" />
<mxPoint x="2325" y="-536" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-38" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;entryX=0.371;entryY=1.005;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" edge="1" target="123oVY50qHvYcSflqY5E-35">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2555" y="-446" as="sourcePoint" />
<mxPoint x="2345" y="-536" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-39" value="Transfer" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1647" y="-436" width="250" height="258" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-40" value="-id:int<br>-senderAccountNO:String<br>-status:enum<br>-observers:List&lt;Observer&gt;<br>-paymentStrategy:PaymentStrategy" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-39" vertex="1">
<mxGeometry y="26" width="250" height="84" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-41" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-39" vertex="1">
<mxGeometry y="110" width="250" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-42" value="+Transfer(id: int, sender: String, status: enum, observers: list, strategy: PaymentStrategy)<br>+updateStatus(status:enum);<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void<br>+makepayment(amount :double)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-39" vertex="1">
<mxGeometry y="118" width="250" height="140" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-43" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0.028;entryY=1.035;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="123oVY50qHvYcSflqY5E-35" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1757" y="-436" as="sourcePoint" />
<mxPoint x="1994" y="-533" as="targetPoint" />
<Array as="points">
<mxPoint x="1757" y="-580" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-44" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.527;exitY=1.006;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-211" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1908" y="-743.67" as="sourcePoint" />
<mxPoint x="1740" y="-440" as="targetPoint" />
<Array as="points">
<mxPoint x="1827" y="-857" />
<mxPoint x="1790" y="-857" />
<mxPoint x="1790" y="-663" />
<mxPoint x="1740" y="-663" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-47" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;entryX=0.412;entryY=0.007;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.783;exitY=1.094;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-211" target="123oVY50qHvYcSflqY5E-22" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1940" y="-850" as="sourcePoint" />
<mxPoint x="2065" y="-780" as="targetPoint" />
<Array as="points">
<mxPoint x="1942" y="-739" />
<mxPoint x="2000" y="-739" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-50" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.953;exitY=1.077;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-211" edge="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2060" y="-660" as="sourcePoint" />
<mxPoint x="2610" y="-450" as="targetPoint" />
<Array as="points">
<mxPoint x="2019" y="-660" />
<mxPoint x="2600" y="-660" />
<mxPoint x="2600" y="-619" />
<mxPoint x="2611" y="-619" />
<mxPoint x="2611" y="-450" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-54" value="AccountFacade" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=30;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1313" y="-390" width="240" height="210" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-55" value="-accounts:List&lt;Account&gt;<br>-creditcards:List&lt;creditcards&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-54" vertex="1">
<mxGeometry y="30" width="240" height="40" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-56" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-54" vertex="1">
<mxGeometry y="70" width="240" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-57" value="+AccountFacade(accounts: List, cards: list)<br>+viewAllTransactions():void<br>+viewCreditCardTransactions():void<br>+viewAccountTransactions(): void<br>+viewBills():void<br>+viewCreditCardPayment():void<br>+viewTransfers():void<br>+depositOrWithdraw():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-54" vertex="1">
<mxGeometry y="78" width="240" height="132" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-58" value="Account" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="773" y="-380" width="390" height="320" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-59" value="-AccountNumber:String<br>-AccountHolderName:String<br>-balance:double<br>-billList:List&lt;bill&gt;<br>.-transferList:List&lt;.Transfer&gt;<br>-accountType:String<br>-depositAndWithdrawList&lt;depositWithdrawTransactions&gt;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-58" vertex="1">
<mxGeometry y="26" width="390" height="114" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-60" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-58" vertex="1">
<mxGeometry y="140" width="390" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-61" value="+Account(num: String, name: String, balance: double, billList: List, type: String, transactions: List)<br>+addBill(bill:BillPayment):void<br>+addCreditCardPayment(creditcardpayment:CreditCardPayment):void<br>+addTransfer(transfer:Transfer):<br>+viewTransfers():void<br>+viewCreditCardPayment():void<br>+viewBillPayment():void<br>+viewBalance():void<br>+changeAccountType(String type):void<br>+depositOrWithdraw(amount: int, type: string, date: Date)" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-58" vertex="1">
<mxGeometry y="148" width="390" height="172" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-62" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-55" target="123oVY50qHvYcSflqY5E-59" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1153" y="-310" as="sourcePoint" />
<mxPoint x="1313" y="-310" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-63" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;entryX=1.014;entryY=0.93;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.572;exitY=1.001;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-42" target="123oVY50qHvYcSflqY5E-61" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1900" y="-140" as="sourcePoint" />
<mxPoint x="1355" y="-70" as="targetPoint" />
<Array as="points">
<mxPoint x="1170" y="-110" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-64" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;entryX=0.992;entryY=1.066;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.411;exitY=1.047;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-25" target="123oVY50qHvYcSflqY5E-61" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2032" y="-80" as="sourcePoint" />
<mxPoint x="1300" y="-31" as="targetPoint" />
<Array as="points">
<mxPoint x="1180" y="-80" />
<mxPoint x="1170" y="-90" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-65" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;exitX=0.401;exitY=1.044;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-29" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2010" y="-121" as="sourcePoint" />
<mxPoint x="1120" y="-70" as="targetPoint" />
<Array as="points">
<mxPoint x="1850" y="-70" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-66" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1433" y="-384" as="sourcePoint" />
<mxPoint x="1650" y="-1310" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-67" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;entryX=-0.01;entryY=0.654;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.862;exitY=0.018;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-58" target="LxXwSrXVg-sv-qg34Zbh-52" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1220" y="-830" as="sourcePoint" />
<mxPoint x="1380" y="-830" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-70" value="" style="endArrow=open;endFill=1;endSize=12;html=1;rounded=0;exitX=1.019;exitY=0.932;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="LxXwSrXVg-sv-qg34Zbh-133" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2102.74" y="-1109.7359999999999" as="sourcePoint" />
<mxPoint x="2700" y="-1480" as="targetPoint" />
<Array as="points">
<mxPoint x="2620" y="-1150" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-72" value="<font style="font-size: 17px;">observes</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2610" y="-1190" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-83" value="<font style="font-size: 15px;">notifies</font>" style="html=1;verticalAlign=bottom;endArrow=block;edgeStyle=elbowEdgeStyle;elbow=vertical;curved=0;rounded=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.652;entryY=-0.029;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-135" target="LxXwSrXVg-sv-qg34Zbh-123" edge="1">
<mxGeometry width="80" relative="1" as="geometry">
<mxPoint x="2270" y="-1760" as="sourcePoint" />
<mxPoint x="2460" y="-1800" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-93" value="" style="endArrow=classic;html=1;rounded=0;exitX=0;exitY=0;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-34" edge="1" target="LxXwSrXVg-sv-qg34Zbh-139">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="2140" y="-930" as="sourcePoint" />
<mxPoint x="2140" y="-1694" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-94" value="<font style="font-size: 14px;">notifies</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2120" y="-1560" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-97" value="Internally" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1590" y="-10" width="240" height="140" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-98" value="-RecieverAccountno:String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-97" vertex="1">
<mxGeometry y="26" width="240" height="34" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-99" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-97" vertex="1">
<mxGeometry y="60" width="240" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-100" value="+Internally(accNum: String)<br>+transferMoney(amount:double ,RecieverAccountno:int):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-97" vertex="1">
<mxGeometry y="68" width="240" height="72" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-101" value="&nbsp;Domestic" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="1860" y="-8" width="230" height="180" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-102" value="-RecieverAccountno:String<br>-Routingno:String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-101" vertex="1">
<mxGeometry y="26" width="230" height="54" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-103" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-101" vertex="1">
<mxGeometry y="80" width="230" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-104" value="+Domestic(accNum: String, routingNum: String)<br>+transferMoney(amount:double, ,RecieverAcountno:int,<br>Routingno:String):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-101" vertex="1">
<mxGeometry y="88" width="230" height="92" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-105" value="international" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2100" y="-8" width="230" height="220" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-106" value="-RecieverAccountno:String<br>-swiftcode:String<br>-CountryName:String<br>-currency:String<br>-Iban: String" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-105" vertex="1">
<mxGeometry y="26" width="230" height="84" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-107" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-105" vertex="1">
<mxGeometry y="110" width="230" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-108" value="+international(accNum: String, swiftCode: String, name: String, currency: String, iban: String)<br>+transferMoney(amount:double ,RecieverAcountno:int,swiftcode:String<br>):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-105" vertex="1">
<mxGeometry y="118" width="230" height="102" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-109" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="123oVY50qHvYcSflqY5E-42" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1730" y="-10" as="sourcePoint" />
<mxPoint x="1890" y="-10" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-110" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1940" y="-10" as="sourcePoint" />
<mxPoint x="1770" y="-168" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-111" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2180" y="-10" as="sourcePoint" />
<mxPoint x="1790" y="-170" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-113" value="depositWithdrawTransactions" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2770" y="-420" width="240" height="260" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-114" value="-transactionType: String<br>-transactionDate: Date<br>-transactionAmount: double<br>--status:enum" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-113" vertex="1">
<mxGeometry y="26" width="240" height="64" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-115" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-113" vertex="1">
<mxGeometry y="90" width="240" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-116" value="+depositWithdrawTransactions(type: String, date : Date, amount: double, status: enum)<br>+deposit(account: Account)<br>+withdraw(account: Account)<br>+deposit(creditCard: CreditCard)<br>+withdraw(creditCard: CreditCard)<br>+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-113" vertex="1">
<mxGeometry y="98" width="240" height="162" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-130" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.438;exitY=-0.018;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-113" edge="1" target="123oVY50qHvYcSflqY5E-35">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="2830" y="-440" as="sourcePoint" />
<mxPoint x="2460" y="-540" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-131" value="<p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b style="border-color: var(--border-color);">&lt;&lt;enumeration&gt;&gt;</b></p><p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b>ReminderTypes</b></p><hr style="border-color: var(--border-color);"><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Gas bill</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Electricity bill</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Telephone bill</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Loan installment</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Credit card bill</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Water bill</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="800" y="-1732" width="160" height="160" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-138" value="Notification" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2484" y="-2016" width="320" height="132" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-139" value="-notificationId:int<br>-message:String<br>-date:Date" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-138" vertex="1">
<mxGeometry y="26" width="320" height="64" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-140" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-138" vertex="1">
<mxGeometry y="90" width="320" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-141" value="+Notification(id: int, message: String, date: Date)<br>+setMessage(message:String):void" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-138" vertex="1">
<mxGeometry y="98" width="320" height="34" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-153" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>issues</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">- id : int&nbsp;</p><p style="margin:0px;margin-left:4px;">- reporter: string</p><p style="margin:0px;margin-left:4px;">- description - string&nbsp;</p><p style="margin:0px;margin-left:4px;">- isResolved - boolean</p><p style="margin:0px;margin-left:4px;">- date : Date</p><p style="margin:0px;margin-left:4px;">-clients: List&lt;ObserverforAnnouncments&gt;<br style="border-color: var(--border-color);"></p><hr size="1">+issues(id: int, reporter: string, isResolved: boolean, date: Date, clients: List)<p style="margin:0px;margin-left:4px;">+ getDetails(): String</p><p style="margin:0px;margin-left:4px;">+reportIssue(): void&nbsp;<br></p><p style="margin:0px;margin-left:4px;">+attachObserver(observer:Observer):void<br style="border-color: var(--border-color);">+deattach(observer:Observer):void<br style="border-color: var(--border-color);">+notify():void<br></p><p style="margin:0px;margin-left:4px;">&nbsp;</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2966" y="-1700" width="234" height="240" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-154" value="technicalIssues" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="2756" y="-1391" width="160" height="130" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-155" value="-browser - string<br><br>&nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-154" vertex="1">
<mxGeometry y="26" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-156" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-154" vertex="1">
<mxGeometry y="52" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-157" value="+technicalIssues(browser: String)<br>+submitIssue(): void<br><p style="border-color: var(--border-color); margin: 0px 0px 0px 4px;">+ getDetails(): String</p>&nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-154" vertex="1">
<mxGeometry y="60" width="160" height="70" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-158" value="financialIssues&nbsp;" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="3183" y="-1393" width="160" height="130" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-159" value="- account account&nbsp;" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-158" vertex="1">
<mxGeometry y="26" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-160" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;" parent="123oVY50qHvYcSflqY5E-158" vertex="1">
<mxGeometry y="52" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-161" value="+financialIssues(account: Account)<br>+submitIssue(): void<br><p style="border-color: var(--border-color); margin: 0px 0px 0px 4px;">+ getDetails(): String</p><div><br></div>" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;whiteSpace=wrap;html=1;" parent="123oVY50qHvYcSflqY5E-158" vertex="1">
<mxGeometry y="60" width="160" height="70" as="geometry" />
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-162" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=0;exitX=0.706;exitY=-0.035;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-154" target="123oVY50qHvYcSflqY5E-153" edge="1">
<mxGeometry x="0.125" y="10" width="160" relative="1" as="geometry">
<mxPoint x="3026" y="-1251" as="sourcePoint" />
<mxPoint x="3016" y="-1381" as="targetPoint" />
<Array as="points" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-163" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=0;exitX=0.706;exitY=-0.035;exitDx=0;exitDy=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" target="123oVY50qHvYcSflqY5E-153" edge="1">
<mxGeometry x="0.125" y="10" width="160" relative="1" as="geometry">
<mxPoint x="3186" y="-1391" as="sourcePoint" />
<mxPoint x="3291" y="-1488" as="targetPoint" />
<Array as="points" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-164" value="" style="endArrow=block;dashed=1;endFill=0;endSize=12;html=1;rounded=0;exitX=0.387;exitY=-0.018;exitDx=0;exitDy=0;entryX=0.656;entryY=0.977;entryDx=0;entryDy=0;entryPerimeter=0;exitPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-153" target="LxXwSrXVg-sv-qg34Zbh-136" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="3000" y="-1631" as="sourcePoint" />
<mxPoint x="3367" y="-1719" as="targetPoint" />
<Array as="points">
<mxPoint x="3080" y="-1720" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="123oVY50qHvYcSflqY5E-165" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;rounded=0;entryX=0.692;entryY=0.995;entryDx=0;entryDy=0;entryPerimeter=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-54" edge="1" target="LxXwSrXVg-sv-qg34Zbh-153">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1200" y="-820" as="sourcePoint" />
<mxPoint x="990" y="-860" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-2" value="<font style="font-size: 18px;">0:*</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="1125" y="-476" width="50" height="40" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-3" value="" style="endArrow=diamondThin;endFill=1;endSize=24;html=1;rounded=0;entryX=-0.009;entryY=0.426;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.997;exitY=0.817;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-151" target="LxXwSrXVg-sv-qg34Zbh-52">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="1110" y="-1060" as="sourcePoint" />
<mxPoint x="1665" y="-1104" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-4" value="<font style="font-size: 18px;">0:*</font>" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="1155" y="-1100" width="50" height="40" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-5" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;entryX=0.371;entryY=0.019;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="LxXwSrXVg-sv-qg34Zbh-41">
<mxGeometry relative="1" as="geometry">
<mxPoint x="960" y="-1590" as="sourcePoint" />
<mxPoint x="1120" y="-1590" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-6" value="1" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-5">
<mxGeometry x="-1" relative="1" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-7" value="1" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-5">
<mxGeometry x="1" relative="1" as="geometry">
<mxPoint y="-6" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-8" value="<p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b style="border-color: var(--border-color);">&lt;&lt;enumeration&gt;&gt;</b></p><p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b style="border-color: var(--border-color);">Status</b></p><hr style="border-color: var(--border-color);"><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Approved</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Pending</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Rejected</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="2780" y="-1170" width="160" height="110" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-9" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;entryX=0.381;entryY=0.025;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="A688QEJ1pjvRzlGdGkd3-8">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2580" y="-1220" as="sourcePoint" />
<mxPoint x="2740" y="-1220" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-10" value="1" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-9">
<mxGeometry x="-1" relative="1" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-11" value="1" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-9">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-12" value="<p style="margin:0px;margin-top:4px;text-align:center;text-decoration:underline;"><b>&lt;&lt;enumeration&gt;&gt;</b></p><p style="margin:0px;margin-top:4px;text-align:center;text-decoration:underline;"><b>LoanType</b></p><hr><p style="margin:0px;margin-left:8px;">Personal</p><p style="margin:0px;margin-left:8px;">Car</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="2540" y="30" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-13" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.663;exitY=1.019;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-33" target="A688QEJ1pjvRzlGdGkd3-12">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2370" y="14" as="sourcePoint" />
<mxPoint x="2610" y="14.469999999999999" as="targetPoint" />
<Array as="points">
<mxPoint x="2347" y="-10" />
<mxPoint x="2610" y="-10" />
<mxPoint x="2610" y="30" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-14" value="0..*" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-13">
<mxGeometry x="-1" relative="1" as="geometry">
<mxPoint y="25" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-15" value="1" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-13">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-16" value="<p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b style="border-color: var(--border-color);">&lt;&lt;enumeration&gt;&gt;</b></p><p style="border-color: var(--border-color); text-decoration-line: underline; margin: 4px 0px 0px; text-align: center;"><b>CCPaymentType</b></p><hr style="border-color: var(--border-color);"><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">Partially</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 8px;">fully</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="2780" y="-630" width="160" height="110" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-17" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-26" target="A688QEJ1pjvRzlGdGkd3-16">
<mxGeometry relative="1" as="geometry">
<mxPoint x="2620" y="-570" as="sourcePoint" />
<mxPoint x="2670" y="-570" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-18" value="1" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-17">
<mxGeometry x="-1" relative="1" as="geometry">
<mxPoint y="-14" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-19" value="1" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-17">
<mxGeometry x="1" relative="1" as="geometry">
<mxPoint x="-10" y="-5" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-20" value="1" style="endArrow=open;html=1;endSize=12;startArrow=diamondThin;startSize=14;startFill=1;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;rounded=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="LxXwSrXVg-sv-qg34Zbh-135" target="123oVY50qHvYcSflqY5E-139">
<mxGeometry x="-0.7862" y="-9" relative="1" as="geometry">
<mxPoint x="2809.76" y="-1961" as="sourcePoint" />
<mxPoint x="2790" y="-1942" as="targetPoint" />
<Array as="points">
<mxPoint x="2872" y="-1961" />
<mxPoint x="2872" y="-1942" />
</Array>
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-29" value="" style="endArrow=none;html=1;edgeStyle=orthogonalEdgeStyle;rounded=0;exitX=0.306;exitY=1.07;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="123oVY50qHvYcSflqY5E-61" target="123oVY50qHvYcSflqY5E-33">
<mxGeometry relative="1" as="geometry">
<mxPoint x="1680" y="383" as="sourcePoint" />
<mxPoint x="1840" y="383" as="targetPoint" />
<Array as="points">
<mxPoint x="1350" y="-48" />
<mxPoint x="1350" y="383" />
<mxPoint x="2410" y="383" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-30" value="1" style="edgeLabel;resizable=0;html=1;align=left;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-29">
<mxGeometry x="-1" relative="1" as="geometry" />
</mxCell>
<mxCell id="A688QEJ1pjvRzlGdGkd3-31" value="child" style="edgeLabel;resizable=0;html=1;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="A688QEJ1pjvRzlGdGkd3-29">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>