forked from Impelon/PyGVisuals
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGUI-System.class.violet.html
More file actions
1535 lines (1535 loc) · 92.8 KB
/
GUI-System.class.violet.html
File metadata and controls
1535 lines (1535 loc) · 92.8 KB
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
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<HTML>
<HEAD>
<META name="description"
content="Violet UML Editor cross format document" />
<META name="keywords" content="Violet, UML" />
<META charset="UTF-8" />
<SCRIPT type="text/javascript">
function switchVisibility() {
var obj = document.getElementById("content");
obj.style.display = (obj.style.display == "block") ? "none" : "block";
}
</SCRIPT>
</HEAD>
<BODY>
This file was generated with Violet UML Editor 2.1.0.
( <A href=# onclick="switchVisibility()">View Source</A> / <A href="http://sourceforge.net/projects/violet/files/violetumleditor/" target="_blank">Download Violet</A> )
<BR />
<BR />
<SCRIPT id="content" type="text/xml"><![CDATA[<ClassDiagramGraph id="1">
<nodes id="2">
<ClassNode id="3">
<children id="4"/>
<location class="Point2D.Double" id="5" x="10.0" y="30.0"/>
<id id="6" value="d053b0e4-a99c-4f36-b5f3-bdd4d3afab0e"/>
<revision>1</revision>
<backgroundColor id="7">
<red>255</red>
<green>255</green>
<blue>255</blue>
<alpha>255</alpha>
</backgroundColor>
<borderColor id="8">
<red>0</red>
<green>0</green>
<blue>0</blue>
<alpha>255</alpha>
</borderColor>
<textColor reference="8"/>
<name id="9" justification="1" size="3" underlined="false">
<text>pygame.sprite.DirtySprite</text>
</name>
<attributes id="10" justification="0" size="4" underlined="false">
<text>image
rect
dirty
visible</text>
</attributes>
<methods id="11" justification="0" size="4" underlined="false">
<text>update(*args)</text>
</methods>
</ClassNode>
<ClassNode id="12">
<children id="13"/>
<location class="Point2D.Double" id="14" x="260.0" y="10.0"/>
<id id="15" value="d3296684-65fc-43c2-9c18-0157fe830039"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="16" justification="1" size="3" underlined="false">
<text>Widget</text>
</name>
<attributes id="17" justification="0" size="4" underlined="false">
<text>_bounds
_border
_focus
_active
_foreground
_background</text>
</attributes>
<methods id="18" justification="0" size="4" underlined="false">
<text>update(*args)
_getAppearance(*args)</text>
</methods>
</ClassNode>
<ClassNode id="19">
<children id="20"/>
<location class="Point2D.Double" id="21" x="600.0" y="110.0"/>
<id id="22" value="e1491593-4b0b-4c2d-b378-51436bdd3ce0"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="23" justification="1" size="3" underlined="false">
<text>TextWidget</text>
</name>
<attributes id="24" justification="0" size="4" underlined="false">
<text>_text
_font</text>
</attributes>
<methods id="25" justification="0" size="4" underlined="false">
<text></text>
</methods>
</ClassNode>
<ClassNode id="26">
<children id="27"/>
<location class="Point2D.Double" id="28" x="1110.0" y="520.0"/>
<id id="29" value="12b01e21-7883-4ef0-b456-0904711e8910"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="30" justification="1" size="3" underlined="false">
<text>Listbox</text>
</name>
<attributes id="31" justification="0" size="4" underlined="false">
<text>_list
_editable</text>
</attributes>
<methods id="32" justification="0" size="4" underlined="false">
<text>insert(index, obj)
delete(startindex, endindex)
update(*args)
_getAppearance(*args)
_indexToPos(index)
_posToIndex(y)
</text>
</methods>
</ClassNode>
<ClassNode id="33">
<children id="34"/>
<location class="Point2D.Double" id="35" x="1120.0" y="220.0"/>
<id id="36" value="78070b1f-071a-45cc-ad39-dcb90e28359f"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="37" justification="1" size="3" underlined="false">
<text>Label</text>
</name>
<attributes id="38" justification="0" size="4" underlined="false">
<text></text>
</attributes>
<methods id="39" justification="0" size="4" underlined="false">
<text>_getAppearance(*args)</text>
</methods>
</ClassNode>
<ClassNode id="40">
<children id="41"/>
<location class="Point2D.Double" id="42" x="1120.0" y="10.0"/>
<id id="43" value="fc1af630-bd7c-4a40-a1a8-c8d8a2ceb137"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="44" justification="1" size="3" underlined="false">
<text>Button</text>
</name>
<attributes id="45" justification="0" size="4" underlined="false">
<text>_callback
_state
_hoveredcolor
_pressedcolor</text>
</attributes>
<methods id="46" justification="0" size="4" underlined="false">
<text>update(*args)
_getApperance(*args)</text>
</methods>
</ClassNode>
<ClassNode id="47">
<children id="48"/>
<location class="Point2D.Double" id="49" x="760.0" y="20.0"/>
<id id="50" value="aab3ff91-2ee7-4b9f-a713-a68b014883b1"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="51" justification="1" size="3" underlined="false">
<text>IconWidget</text>
</name>
<attributes id="52" justification="0" size="4" underlined="false">
<text>_icon</text>
</attributes>
<methods id="53" justification="0" size="4" underlined="false">
<text></text>
</methods>
</ClassNode>
<ClassNode id="54">
<children id="55"/>
<location class="Point2D.Double" id="56" x="740.0" y="420.0"/>
<id id="57" value="d9b6f92a-47df-4a8b-af8b-1d522fd8adb8"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="58" justification="1" size="3" underlined="false">
<text>SelectionTextWidget</text>
</name>
<attributes id="59" justification="0" size="4" underlined="false">
<text>_cursor
_selection
_selectioncolor</text>
</attributes>
<methods id="60" justification="0" size="4" underlined="false">
<text>getSelection()
_indexToPos(index)
_posToIndex(x)</text>
</methods>
</ClassNode>
<ClassNode id="61">
<children id="62"/>
<location class="Point2D.Double" id="63" x="1110.0" y="330.0"/>
<id id="64" value="e0c82214-619e-41ab-a600-bdfd4d039bd4"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="65" justification="1" size="3" underlined="false">
<text>Entry</text>
</name>
<attributes id="66" justification="0" size="4" underlined="false">
<text>_validation</text>
</attributes>
<methods id="67" justification="0" size="4" underlined="false">
<text>insert(index, text)
delete(startindex, endindex)
update(*args)
_getAppearance(*args)</text>
</methods>
</ClassNode>
<ClassNode id="68">
<children id="69"/>
<location class="Point2D.Double" id="70" x="920.0" y="20.0"/>
<id id="71" value="0a0b60b0-9849-4d0c-97eb-edc8d5166574"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="72" justification="1" size="3" underlined="false">
<text>Imagebox</text>
</name>
<attributes id="73" justification="0" size="4" underlined="false">
<text>_smooth</text>
</attributes>
<methods id="74" justification="0" size="4" underlined="false">
<text>_getAppearance(*args)</text>
</methods>
</ClassNode>
<ClassNode id="75">
<children id="76"/>
<location class="Point2D.Double" id="77" x="250.0" y="450.0"/>
<id id="78" value="d55d4d0a-9c6b-4187-846c-ca0a42265449"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="79" justification="1" size="3" underlined="false">
<text>Border</text>
</name>
<attributes id="80" justification="0" size="4" underlined="false">
<text>left
width
top
height</text>
</attributes>
<methods id="81" justification="0" size="4" underlined="false">
<text>getBorderedImage(surface)
getBounds(rect)
isEmptyBorder()</text>
</methods>
</ClassNode>
<ClassNode id="82">
<children id="83"/>
<location class="Point2D.Double" id="84" x="250.0" y="730.0"/>
<id id="85" value="f32ee6b0-7915-4296-9859-df4173428bf7"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="86" justification="1" size="3" underlined="false">
<text>ColoredBorder</text>
</name>
<attributes id="87" justification="0" size="4" underlined="false">
<text>color</text>
</attributes>
<methods id="88" justification="0" size="4" underlined="false">
<text>getBorderedImage(surface)</text>
</methods>
</ClassNode>
<ClassNode id="89">
<children id="90"/>
<location class="Point2D.Double" id="91" x="30.0" y="500.0"/>
<id id="92" value="1d7e75e9-1b31-4eac-97c9-5ae915812873"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="93" justification="1" size="3" underlined="false">
<text>BevelBorder</text>
</name>
<attributes id="94" justification="0" size="4" underlined="false">
<text>upper
lower</text>
</attributes>
<methods id="95" justification="0" size="4" underlined="false">
<text>getBorderedImage(surface)</text>
</methods>
</ClassNode>
<ClassNode id="96">
<children id="97"/>
<location class="Point2D.Double" id="98" x="480.0" y="510.0"/>
<id id="99" value="4c9e51cb-8955-4995-a5eb-05b937a62d5d"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="100" justification="1" size="3" underlined="false">
<text>CompoundBorder</text>
</name>
<attributes id="101" justification="0" size="4" underlined="false">
<text></text>
</attributes>
<methods id="102" justification="0" size="4" underlined="false">
<text>getBorderedImage(surface)</text>
</methods>
</ClassNode>
<ClassNode id="103">
<children id="104"/>
<location class="Point2D.Double" id="105" x="470.0" y="720.0"/>
<id id="106" value="a98e0554-21ea-40e6-a988-0aad310d0277"/>
<revision>1</revision>
<backgroundColor reference="7"/>
<borderColor reference="8"/>
<textColor reference="8"/>
<name id="107" justification="1" size="3" underlined="false">
<text>RoundedBorder</text>
</name>
<attributes id="108" justification="0" size="4" underlined="false">
<text>radius</text>
</attributes>
<methods id="109" justification="0" size="4" underlined="false">
<text>getBorderedImage(surface)
_getRoundRect(rect, color)</text>
</methods>
</ClassNode>
<NoteNode id="110">
<children id="111"/>
<location class="Point2D.Double" id="112" x="460.0" y="100.0"/>
<id id="113" value="5a30347b-ad3f-4c34-82ef-71de5120ef4d"/>
<revision>1</revision>
<backgroundColor id="114">
<red>255</red>
<green>255</green>
<blue>255</blue>
<alpha>255</alpha>
</backgroundColor>
<borderColor id="115">
<red>0</red>
<green>0</green>
<blue>0</blue>
<alpha>255</alpha>
</borderColor>
<textColor reference="115"/>
<text id="116" justification="0" size="4" underlined="false">
<text>GUI-Classes</text>
</text>
<color id="117">
<red>0</red>
<green>191</green>
<blue>255</blue>
<alpha>255</alpha>
</color>
</NoteNode>
<NoteNode id="118">
<children id="119"/>
<location class="Point2D.Double" id="120" x="280.0" y="320.0"/>
<id id="121" value="53553f05-7ea2-4a03-a8cd-8dfdc8391483"/>
<revision>1</revision>
<backgroundColor id="122">
<red>255</red>
<green>255</green>
<blue>255</blue>
<alpha>255</alpha>
</backgroundColor>
<borderColor id="123">
<red>0</red>
<green>0</green>
<blue>0</blue>
<alpha>255</alpha>
</borderColor>
<textColor reference="123"/>
<text id="124" justification="0" size="4" underlined="false">
<text>Border-Classes</text>
</text>
<color reference="117"/>
</NoteNode>
</nodes>
<edges id="125">
<InheritanceEdge id="126">
<start class="ClassNode" reference="12"/>
<end class="ClassNode" reference="3"/>
<startLocation class="Point2D.Double" id="127" x="50.0" y="100.0"/>
<endLocation class="Point2D.Double" id="128" x="100.0" y="80.0"/>
<transitionPoints id="129"/>
<id id="130" value="a4655030-79ae-4631-8869-49c2a05b569c"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="131">
<start class="ClassNode" reference="19"/>
<end class="ClassNode" reference="12"/>
<startLocation class="Point2D.Double" id="132" x="80.0" y="60.0"/>
<endLocation class="Point2D.Double" id="133" x="120.0" y="130.0"/>
<transitionPoints id="134"/>
<id id="135" value="39f2fbe8-8f85-47ec-964c-ff65d4f5ad84"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="136">
<start class="ClassNode" reference="54"/>
<end class="ClassNode" reference="19"/>
<startLocation class="Point2D.Double" id="137" x="80.0" y="120.0"/>
<endLocation class="Point2D.Double" id="138" x="50.0" y="90.0"/>
<transitionPoints id="139"/>
<id id="140" value="4adbd103-fd78-4027-a643-f6c38c433587"/>
<revision>1</revision>
<bentStyle name="VH"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="141">
<start class="ClassNode" reference="33"/>
<end class="ClassNode" reference="19"/>
<startLocation class="Point2D.Double" id="142" x="80.0" y="40.0"/>
<endLocation class="Point2D.Double" id="143" x="50.0" y="80.0"/>
<transitionPoints id="144"/>
<id id="145" value="531e1747-c071-4962-ab21-0adb7fd97b26"/>
<revision>1</revision>
<bentStyle name="HV"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="146">
<start class="ClassNode" reference="26"/>
<end class="ClassNode" reference="54"/>
<startLocation class="Point2D.Double" id="147" x="60.0" y="50.0"/>
<endLocation class="Point2D.Double" id="148" x="90.0" y="110.0"/>
<transitionPoints id="149"/>
<id id="150" value="f5a00f95-c0fb-4e09-be70-7f84afa136de"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="151">
<start class="ClassNode" reference="68"/>
<end class="ClassNode" reference="47"/>
<startLocation class="Point2D.Double" id="152" x="50.0" y="70.0"/>
<endLocation class="Point2D.Double" id="153" x="30.0" y="60.0"/>
<transitionPoints id="154"/>
<id id="155" value="e742adc3-e811-44e8-b0b9-297f16968047"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="156">
<start class="ClassNode" reference="47"/>
<end class="ClassNode" reference="12"/>
<startLocation class="Point2D.Double" id="157" x="10.0" y="40.0"/>
<endLocation class="Point2D.Double" id="158" x="120.0" y="180.0"/>
<transitionPoints id="159"/>
<id id="160" value="7d1bba2a-c922-4f9c-a106-b6d3c076e393"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="161">
<start class="ClassNode" reference="61"/>
<end class="ClassNode" reference="54"/>
<startLocation class="Point2D.Double" id="162" x="50.0" y="60.0"/>
<endLocation class="Point2D.Double" id="163" x="110.0" y="150.0"/>
<transitionPoints id="164"/>
<id id="165" value="e7458aa5-5ee7-4028-8f2e-0b9121e6318d"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="166">
<start class="ClassNode" reference="40"/>
<end class="ClassNode" reference="19"/>
<startLocation class="Point2D.Double" id="167" x="70.0" y="100.0"/>
<endLocation class="Point2D.Double" id="168" x="70.0" y="60.0"/>
<transitionPoints id="169"/>
<id id="170" value="ba5603c3-daa2-4ee7-b6c8-b12d8e9a1ebc"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="171">
<start class="ClassNode" reference="89"/>
<end class="ClassNode" reference="75"/>
<startLocation class="Point2D.Double" id="172" x="60.0" y="120.0"/>
<endLocation class="Point2D.Double" id="173" x="100.0" y="130.0"/>
<transitionPoints id="174"/>
<id id="175" value="5c1bcf85-134c-437c-a7a7-c83b7cbdec7c"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="176">
<start class="ClassNode" reference="82"/>
<end class="ClassNode" reference="75"/>
<startLocation class="Point2D.Double" id="177" x="100.0" y="80.0"/>
<endLocation class="Point2D.Double" id="178" x="80.0" y="120.0"/>
<transitionPoints id="179"/>
<id id="180" value="54f82bdd-2d43-497a-9a5d-9a2465b1f8bd"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="181">
<start class="ClassNode" reference="96"/>
<end class="ClassNode" reference="75"/>
<startLocation class="Point2D.Double" id="182" x="70.0" y="80.0"/>
<endLocation class="Point2D.Double" id="183" x="110.0" y="130.0"/>
<transitionPoints id="184">
<Point2D.Double id="185" x="480.0" y="600.0"/>
</transitionPoints>
<id id="186" value="276860be-36ae-4285-aebc-351f8485504a"/>
<revision>1</revision>
<bentStyle name="FREE"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<InheritanceEdge id="187">
<start class="ClassNode" reference="103"/>
<end class="ClassNode" reference="82"/>
<startLocation class="Point2D.Double" id="188" x="100.0" y="80.0"/>
<endLocation class="Point2D.Double" id="189" x="120.0" y="40.0"/>
<transitionPoints id="190"/>
<id id="191" value="b97b94b9-cf64-4da6-bfba-b8d3fbf6a885"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<AggregationEdge id="192">
<start class="ClassNode" reference="75"/>
<end class="ClassNode" reference="12"/>
<startLocation class="Point2D.Double" id="193" x="120.0" y="90.0"/>
<endLocation class="Point2D.Double" id="194" x="90.0" y="160.0"/>
<transitionPoints id="195"/>
<id id="196" value="e48ae48e-7ea9-40f9-8ebe-83e01c9f3931"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel>1</startLabel>
<middleLabel></middleLabel>
<endLabel>0..*</endLabel>
</AggregationEdge>
<InheritanceEdge id="197">
<start class="ClassNode" reference="40"/>
<end class="ClassNode" reference="68"/>
<startLocation class="Point2D.Double" id="198" x="70.0" y="150.0"/>
<endLocation class="Point2D.Double" id="199" x="60.0" y="30.0"/>
<transitionPoints id="200"/>
<id id="201" value="5a6e7c5c-5e93-403f-917b-0f140d8f5198"/>
<revision>1</revision>
<bentStyle name="AUTO"/>
<startLabel></startLabel>
<middleLabel></middleLabel>
<endLabel></endLabel>
</InheritanceEdge>
<CompositionEdge id="202">
<start class="ClassNode" reference="75"/>
<end class="ClassNode" reference="96"/>
<startLocation class="Point2D.Double" id="203" x="130.0" y="150.0"/>
<endLocation class="Point2D.Double" id="204" x="30.0" y="100.0"/>
<transitionPoints id="205">
<Point2D.Double id="206" x="410.0" y="540.0"/>
<Point2D.Double id="207" x="440.0" y="540.0"/>
</transitionPoints>
<id id="208" value="448ab522-9f43-4c4b-b63e-1fe3f3054533"/>
<revision>1</revision>
<bentStyle name="FREE"/>
<startLabel>2</startLabel>
<middleLabel></middleLabel>
<endLabel>1</endLabel>
</CompositionEdge>
</edges>
</ClassDiagramGraph>]]></SCRIPT>
<BR />
<BR />
<IMG alt="embedded diagram image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABPEAAANXCAIAAADb3V2yAACAAElEQVR42uy9AUhc25bnLV1t16sn
RbXdNUWN5MsrnHhNjU98krQjQUJRT8aWtCQgAREJ4oTQTsgYSTvO5Avpy01aXiN3zMUvHWQytpME
se0x4oiTEZu03JdOFzcXJNcbgohEfJIEWwwiIUhR+C3duTsndU4djdHEqvr9CMV21z77nJy91trr
X+ecfTLWANKGDEgGMFQAAAAgJ4QPGFBsGtIqfnESGCMAAAAg3+AkpNIYMZyAbwBjBAAAAOQbgKYF
IH4BYwQAAADkG4CmBSB+pfMY/fATnA0AAAAgJyQnRNMCEL/QtAAAAADkhGhaAOIXoGkBAACAnBDQ
tADEL0DTAgAAADkhoGkBiF9oWgAAAAByQjQtAPEL0LQAAABATghoWgDiF6BpAeATxw3YOowvYFfk
hGhaADQtoGkBgNjOueKYAbsCNC0A8QvQtABAbOdcMb7YFccMaFoA4heaFgCI7YD2AMYIu0LTAhBz
AU0LAMR2YizjC9gVoGkBiF+ApgUAYjsxlvHFrrArQNMC7P34lZubKz3Pz89LORaLuVwu+VM+pSw1
c3Nz8mcgELBcGHAbqwU+fPgwFAoRvwAAyE3RHoBd7UG70stBOxwOp9NZVlY2NTW1lbwutXM8NC3A
no5fp06dkp77+vqk/O233+pA9uDBA6mReinX1dXZRL1tBEriFwAAmgftAdjVntW0qizZoJSLi4u3
0ji1czw0LcCejl937tyRnhsaGqT85ZdfSjkzM1M+v/rqK6k5ffq0lHt6enScWlhYOHLkSCAQ6Orq
MlaGQqF9+/Zdv35dV8Zisebm5qwNpBCNRp1OZ/K+Cw5NCwBoHmIs44tdpZWmVX+6XC5L+WrM68w5
3oULF9xutySBra2txq0GBwclk/T7/QMDA9gVmhbIe3aGmZkZ6TkYDEr56NGjUlZXbtXdI4WFhVJ+
+vSpDlL19fVK5YpM1ZVa+qptVeWlS5ekIJq5v79fCpcvX17jOi0AAJoH7QHYVZJo2rGxMSlfvHhx
LcEl2UTXab/66isp37hx4+bNm1K4evWqbiC9TUxMSGHfvn3YlfHUQSpDqP0E8cvn80nnCwsLDocj
MzPzzZs3mRssLS1JvdvtNsYp+VMK0WhUmulKj8cjhdXV1ZWVFV2Zk5OjKmOxmHooF00LAIDmQXsA
drX3Na2mtLR0enr6QzWt6FWVBApSkJxQN3j9+rUqS6qJXb07dbgiMz1n4yM5efKkemhWPo8dOyY1
8illdfW1urp60+AlYjhRpXGlATQtAAAzHdoDsKu9r2lVeWRkRMq5ubkfqmnVg2y6XsnXtHr4Fk0L
zASf+mzcuHFDPSyh7hKRmm+++UbK2dnZ8tnR0WEMPapS//CmKr1er6p8/fq1rvT7/VJQ6ydbBkrm
RQAAZjq0B2BXe1bTGhWpvoBhvCkvkUzVN+updNF8sx6aFk3LTM/Z2GHUUw2Kubk5qZmamtI1kUjE
GHrOnDmjnpJtbW3VlY2NjVK4deuWKqhK1aC7u3tyclIKR48eXfvp1uU3b94QvwAAmOnQHoBd7WVN
q96IceTIkbWf3v4oSaMxAzTmdcby5cuXpdzV1aWep21ra0PTommJMiiEXY9f6iJtQUGBrsnPz1er
2KkLrcYljktLSz0ejwpSqnJxcTEUCgUCgc7OTr0+XjQaVeseSyeVlZXPnz+XyoGBAflT6VssFgCA
TAbtAdjVHtS06qkxyegkZ5udnZX64eHhnJycvLw8fS0kLq8zliUJbGlpUS+/uHTpklnHomnRtEQZ
8p49h0jc9vZ2iV9zc3P6kiwWCwCA5kF7MHDYFXaFXaFpsQYUQhLEr+Hh4aKiIqfT6XK5QqGQWh8P
iwUA2KXYviOXONSdhPPz82sbbxRXN+zIp7o9R/1GGQgELPe1jQN4+PCheksc2uPTj/We2hFzN5oW
u0LTYg3kPYDFAgCadgdSIPVG8b6+vrWfnppTPHjwQGqkXi2Jv1MH8PHHjKZF0zJ3kxOiaYEog6YF
LBYAUkrTxmKxCxcueDwep9MZCoXUOn+CVLrd7qysrNbWVuMmg4ODR44c8fv9AwMDd+7ckZqGhgb5
9ssvv1Srm8rnV199JTXqdW49PT3G9RRk20Ag0NXVZayU/e7bt+/69evGo1LrKQhSiEajcngf/+b5
NNe0qnDr1q3S0lIZ3KtXr8o5z87OzsnJGR4elgazs7MyFi6XS8axqKhodHR06wOk+//mm2+ksezi
5cuXlrb05MkTh8NRXFys+pEdyZ9SydxNTghoWkAhEL+wWAAgtn+wzlELkIo6ffr0qRRKSkqkUkSp
ejebWsxPxI/e5OLFi2p9F9EtMzMzUggGg/Lt0aNHpayu3Ko7hAsLC6WsulX7qq+vVypXVJCu1NJX
basqL126pI6qv79fCpcvX17jOu0OaVoZcTVwgqhN9Z4CGU1pcOjQoaGhISmoBqJ1tzFAMrjqxw4Z
7kS2pDbv6ur6+uuvlVExd5MTApoWUAjELywWAIjt29E56iWQcW8CF4VjfDOk0jZqk9evX68ZXjjp
8/mkvLCw4HA4pObNmzeZGywtLUm92+027ku9qCMajUozXenxeNS+jK+s1K+mlAOzfDUl2mPbmla9
KEWV5Zyrsgyfavzdd9+1tLQUFxfryg8dIBlfZTZq9C1tScp5eXliPFlZWfn5+fInczc5IaBpAYVA
/MJiAYDYvn2dE/etuoVYt1Ty1fItGidPnlQPzcrnsWPHpEY+pawu7lVXVyfaly6LcEpUaXwjCJp2
pzRtXKWxrO4urqqq+v777z9ygLTZWNqS0NbWpq8bM3eTEwKaFlAIxC8sFgCI7dvUOfqCm/FbXamu
rZkvk+ryjRs31FrH6v5Sqfnmm2+knJ2dLZ8dHR3GxqpSd6sqvV6vqnz9+rWu9Pv95qvHaNrd1rTq
oeXYBtseID2+Ho8nkS0tLS35fD4pi0lkZWWp988zd5MTApoWUAjELywWAIjtH6xz1PO0PT09k5OT
+nnay5cvq8cd1TOQbW1tiVSQerZWodaXUs9nKiKRiLHxmTNn1EOYaqeqsrGxUS1cpArGo+ru7lZH
pV5arm5dVrfOoj12Q9Mq/fn48WPjIl5bHyD1bUtLS29vrxRkuBPZ0rlz56QszdRvIurJW+ZuckJA
0wIKgfiFxQIAsf2DdU40Gm1ubna5XE6ns6KiQulSqRRlola1vXTpko0KEtRF2oKCAt15fn6+1EiH
6jqecYnj0tJSj8ej5I2qXFxcDIVCgUCgs7NTXfLVRyV7l04qKyvVdbyBgQH5U8kntMduaNrBwUGv
1+t2u42LeG19gPTK2NJJSUmJDLelLT158kT/eiKoZ3cnJiaYu8kJAU0LKATiFxYLAMT25EMkbnt7
uygfkdP6ih8xdu+M76ccIOZu4gagaRP/Dzf+jw8fPlRr629xE/Ucf35+fm9vb1xXcdj3vLi4eObM
GbfbLb3JZ3V19dTU1O4dPAqB+MW8CADE9iRieHi4qKjI6XS6XC6Z66enp4mxe2p8P+UAMXcTNwBN
u1V9uPWW0WhUrV54//79bfdcVVWlbymRfqScl5e3ewePQiB+MS8CALEd0B6AXWFXaNq3Iqq/v9/j
8ZSWlr58+bKoqEhq1K9T6lXUUrOwsBAKhfbt26dWP1e9zc7OSqXL5crMzJQ2o6OjusNbt25Jb263
++rVq7JJdnZ2Tk7O8PCwNIjFYurJBEEKoieNx/Pdd98dOXJEOlQ/kqnHXcwHqSsrKioOHTqk/1QL
2ekjtN+XUUDKftWq7mum5zHULow9W54itYZ7e3v7pmd4Rw4ehUD8Yl4EAGI7oD0Au8Ku0LRv1dS5
c+dEhUqhoaHh4sWLelV6+ZTy5cuX1evXenp6Tp06pUWX6LGhoSGt64xvKm9tbVWVwoULF9TagCKJ
pcGlS5fUYoAi81TnxuMJBAJSubS0pBYYVA/Wmw9SV4pOXlxcXEuwMID9vowt1WLuce9MT7QLy1Mk
elUr3gcPHtic4R05eBQC8Yt5EQCI7YD2AOwKu0LTvhVRb968UW/TElE3Pj4uBfVUZzgclvLk5KTH
41Ev3VpZWYm7vNnS0qJWcjO+h1otQK/Ksokqqwb6/V1KRqr3d2nU+vUiC2/evKlXsTcfpK7UVy8t
ZaH9vuJu9DW/bD3RLixP0dzcXDAY1Bdajx8/brwku+MHj0LYxNxhz4PFAgC5KdqD8cWuyAlhxzRt
nKgT3SX6c35+Xj5zc3OlRgrmldDVfchVVVXff//91tdPV11plNDV9PX1Kf0seL3e/v7+RAdpVqTm
A7Df1xav01q2N58i1ck333yzf/9+1bKsrGz3Dh5Ny7zIvAgAxHZA0wJ2hV2lj11tommXl5fVVUSR
kVJZU1OjrjSqO4elRurVNcPXr19r3aWe/4xtsHVN6/f71VaJjjUajQ4NDdXX18eJzLiD3IostN+X
seXjx4+lXFlZuUVNaz5FxuNXbzYzytcdP3gUAvGLeREAiO2A9gDsCrtC074VUU1NTX19fVJobGyU
yt7eXn15MBKJSI3Uq5WfVEH1pm6OFTXY1dW1dU3b2toqhe7u7snJSf36L/2teir1+++/f/78uRTy
8/MTHWQiWajuXlb3Ldvvy7gaU11dnV73OJGmNfZsPkWFhYVSHhkZkfKDBw/UElA7fvAoBOIX8yIA
ENsB7QHYFXaFpo3XtJ2dnS6XKxwOqyWLlpaW1I2v+m00Uh8KhQKBgLoCKY2lcnBw0Ov1igxrbm7e
uqaNRqNqOV+n01lZWSna1fit/FldXa3WUi4rK3vy5Emig0wkCwcGBqRnpQDt92W8rTcYDIrmjOsq
bhfGns2naG5urqamRt2TLJ8NDQ0LCws7fvAoBOIX8yIAENsB7QHYFXaFpl0zqylNLBZbXl7Ozc2V
er1+r8fjaW9vF5Ulym3Ta4a78V/dUxZpeYo+78GjEIhfzIsAQGwHtAdgV9hVOmpa5wbGGpGvUpOf
n3/nzh1dOTw8XFRUJPXqtbHq1ayfDPNBfl4sT9HnPXgUAvGLeREAiO2A9gDsCrtKR00LRBnyHsBi
AYDYToxlfAG7AjQtEGWIX4DFAgCxnRjL+GJX2BWgaQGFQPzCYgEAiO1oD8CusCvsCk2LNZD3ABYL
ACkTN2DrJKP2AOyKnJCcEE2LNaAQiF9YLAAQ24HraYBdYVdoWiDKkPcAFgsAxHZiLOML2BWgaYEo
Q/wCLBYAiO3EWMYXu8KuAE0LKATiFxYLAMR2+KgY++LFC8YX0LSApgWiDPELsFgAILYnX4y9ffv2
Xj6HjC9zN3aFXaFpsQYUwlbj1277Ar6GxQIA0XVPxdjp6eny8vITJ06gaQFNC2haIMqgaYmeWCwA
kJsmU4y9cuXKgQMHBgcH9/g5ZHyZu7Er7ApNizWgED5A005PTxcVFYXD4YWFBVUphfLy8szMTKlc
XFw096PLUmhvbw8EAtL43r17enPZ0OVy3blzR7ccGRmRNg6Ho7CwcHx8nHHBYgGA3PSTnavJycm7
d+8WFBScP3/+1atXe/8cMr7M3dgVdoWmxRpQCB+gaRsbG2Ox2MOHD8+cOaMqpdDT0yOFW7dunT59
2l7Ttra2yuYiaEWyqkrpsLe3Vyqbmpp0S/lWepPC6Ohobm4u44LFAgC56aehrKysvr6+tLT00aNH
yXIOGV/mbuwKu9qSpoXUBoWwdU2rr8RmZ2frgihSKayurno8HntNG41G4yp9Pp/afHl5WVceO3as
trZWBK1uD2haACA33W2ePXsm5+qLL7548+ZNcqWDjB1zN3EDu9pc03LKsAbynrhv9YXWTSuNmtZc
qTcxVopyVvczu93uiYkJxgWLBQBy0092rsLhcElJyY8//pgs55DxZe7GrrArNC3WgEL4AE07OTkp
hVgs5vV6VaXH41EXWqPRqEjQuH5WV1ftNa3f71cXY1dWVuL2Lt12d3fn5OQwLlgsAJCbfsoYe+3a
tf3791+6dElfsEXTApr2YzqxzAYxdTQtoBA+j6YNh8NS+Pbbb5uamlRlQ0PD8PDw2vvP06pVoESU
Njc322ta6aerq0sKLS0tujIYDI6MjEjB+OQtYLEAQCL4yWJsJBI5f/78wYMHx8bG0LSApkXTommB
KJM6mnZ6erqgoKCysnJ5eVlVqoWLRXmWl5frp22VFnW73Tdv3rTXtEtLS9Kb3+/v6enRlZJJyF4c
Dod0osQtbGqxL1684OQAAIngzsbYR48eHT58uK6uDk0L6TZ329vVzMyMpGoej0e97Eolb8XFxZK5
+Xw+tdJnIk1rfomG5bbmXehO2tvbW1pasCs0LaBpmRdTymJv377N2AEAsX03Ymw0Gu3o6EDTJkI9
fwSpN3fbH9vJkyevX7/++PFj/X6KYDB4//59KQwMDJgXDTUWzC/RsNzWvAvVSWdnZ01NDUaFpgU0
7Sbxy2kFJ2dvWuz09HR5efmJEyeIVACwvdyU6LGVrCB5r6ftNkVFRRhSSs7d9sfmdrttXk5hc8ux
5Us0LLc170K+unHjhpgc78VA0wKadu/Oi/ChFnvlypUDBw6oe3IYOwAgtqdnVvB5x3dHnpNk7k46
uzJ/K0r16tWrNTU1wWDQXtPqTfSaKfbbGnd66tSpffv2PX/+HKNC0wKalrwnucdocnLy7t27BQUF
58+ff/XqFWMHADuSm5qfXltYWFBvVguHw/rSirRvb28PBAJqOUCygj0+viMjIzJSDoejsLBwfHxc
b3Ljxg0Z6+zsbBnusbEx0QnGAbUcenOl8QW58tnf3y8dpqRhpOHc/aHXaUtKStra2oaHh2dnZ+01
rfklGpbbWl6nlU8xXX3TMnaFpgU0LZo2KSkrK6uvry8tLX306BFjBwA7qGnNT69J4tjT07P2/sr2
0r61tVXy0ZRcmj71NK2MkVp0Z3R01Phc4rlz50QwiJqVCUXkRNyAWg59IntIB8NIw7nb/tiqq6vF
GJ48eaKNyuVyTU1Nra6uNjU12Wta80s0LLc170J/VVhYKPXYFZoW0LRo2qTk2bNnMkZffPGFfmXi
e6EKACABW4n85qsi2dnZagUgyTWNi77oZqk3a6Sepj127Fhtba0IWuPgyiYrKys2A2o59InsIR0M
Iz3nbpv/1MzMTH5+vtfr1dfkh4aGgsGgGEZnZ6e9pjW/RMNyW/Mu9Ffj4+OyOaaFpgU0LZo2icco
HA6XlJT8+OOPjB0AfHxst396TZf1lTfLF7ORFezZ8V1cXFQ3DLvd7omJCftBtH/o0b4ytQ0jDedu
BhFNC8xeKZ73EB8/u8Veu3Zt//79ly5d0j/6cm4B4CNju/k6rcfjUdflpF6+RdMmr/aQcezu7s7J
ydmiprUcent7QNOm2NzNuzDQtMDshaZF0+66xUYikfPnzx88eHBsbIxzCwAfH9vNT681NDQMDw+v
JXh+Ek2bFOMbDAZHRkakYHzMdVNNazn0lpXSp7qNGU2bYnM3g4imBWavlM17pqeni4qKwuHwwsKC
qrRZFVNlRdJAvnK5XHfu3NH9Ly0tVVZWylYVFRVSNm8FW7TYR48eHT58uK6ujkgFAB+pac1Pr6kA
LrFa4rwxwqNpk2h8RUQVFBQ4HA4ZRyVut6JpLYfesrK6ulpduEPTptjczSCiaYHZK2XznsbGxlgs
9vDhQ72KeqJVEHt7e9UdSrKJKhvXspPK+fn5tY1VAfSqd8atYOsWG41GOzo6iFQAQG6KpgXmbuyK
eIWmxRo4G5toWv27bHZ2ti5YroKopanP51Pl5eVl3b9+I5ng9/vNW8GHWuyLFy84OQBgE9t5Li61
NS3jy9yNpsWu0LRYA5p2S5pWl7e4CqKxcu39lSQ0DoeD6InFAgC5KTGW8cWuktqu7K9McN0CTQtE
mb2iaScnJ1VU0hdaN10V0+/3q4U0V1ZWjAsqMitjsQCA5iHGMr7YVcrYVVFR0ba/BTQtoBA+naYN
h8NS+Pbbb/VDsJuuiiktu7q6pNDS0mJ8nnZubk4KfX19paWlzMpYLACgeYixjC92ldR2tduvzwA0
LaAQdiYYTU9PFxQUVFZWLi8vq8pNV8VUSxz7/f6enh5dLy0rKipkq8LCwqdPnxLssFgAQPMQYxlf
7CpZ7GpkZESyOIfDIYnc+Pj4muGxsrWN1baLi4ulgc/nu3XrVty3li+/ADQtoBCYF7FYAABiO9oD
sKtPZFeiSJVYHR0d1W9h1JsEg8H79+9LYWBgwLiAqCpYvvwCPp2mJWRgDWmS97B2IhYLAGhaYizj
C9hVIo4dO1ZbWyuCVq2ZYrOJWUlZvvwCPp2mBayBvAewWAAgthNjGV9Ic7taXFwsLy/PzMx0u90T
ExNxm8i3V69erampCQaDZk1r+fIL+HSa1li4ceOGx+PJzs4eHBwcGxvbt2+fDOq9e/dUA/NN5Gp0
Q6GQ1+u9fv267oobyokyzIuAxQIAsZ0Yy/hiV0lnV7FYrLu7OycnJ26TkpKStra24eHh2dlZs5Ky
fPkFfB5Ne+7cuWg0Kmq2tLRUxkxGVAStfg+n5U3ksklHR4e0lAI3lBNlmBcBiwUAYjsxlvHFrpLR
rkTsjIyMSMGogKSwsrIiBZfLNTU1tbq6KupG96O/tXz5BXweTauGRJX1feT2N5H7/X4Z2rWNa7Pc
UE6UYV4ELBYAiO3EWMYXu0pGu4pEIgUFBQ6HQ5SqErdCdXW1WoFlaGhIRK/H4+ns7NT96G8tX34B
n0fTWo63/U3k+jeMNW4oJ8owLwIWCwDEdmIs44tdYVewZzWt5U3kPp9PXaddWVnhhnKiTDLGr5GR
EafTefbsWU4UFgsAaFpiLOMLKW9XvAsjrTWt5U3kUu7o6JBCc3OzviTLDeVEmSSaF40LoQEWC7gD
oHmIsYwvYFeQsprW8ibypaWlcDisKkX0qkpuKCfKJEv80jfJS3lhYUEt4C4mLTasGszMzBQUFIiF
Dw4O2njHyMiIbOhwOMTmx8fHOedpMi+mKpcvX8YmAR9MMYixgF2haVNZ0+4UfX19oVCIYUAhJF38
0t+eOXOmp6dHCrdu3Tp9+rSqPHny5PXr1x8/fpybm2ujaUXQqhdcjY6O6paQ+pr2H9dS8F9Gxs9+
5kLWArkpMZbxBewK0kXTNjY2ut1up9NZVlam7jcGokySatrs7OxYLCaF1dVV/Uy4mLdeA9xG0x47
dqy2tlYEbVxjQNMmo6YdGxtD1gK5KTGW8QXsCtJF0wJRJmU0rbGZXtDbvG2iVcHVfcuigScmJjjn
aNqk1rTyv0PWArkpMZbxBewK0LRAlEkyTevxeNR12mg0KtJUVdpcp11dXY3rWTbv7u7OycnhnKNp
k13TImuB3JQYy/hCutnVZ7S6D911CjsImhbQtB8VvxoaGoaHh9fef562urq6p6fnyZMn+ilZtU6y
yNfm5ma9bTAYVO/mlq+ML20GNG3yalpkLaB5iLGML6Bp0bRoWiDKJFP8WlhYCIfDokjLy8uN6x7n
5+d7vV79ghOlWt1u982bN/W2kUikoKDA4XDIV0rcApo2BTQtshbQPMRYxhfSStP29/dnZ2cbX/Ro
fi+GZIZqFaH5+fnCwsK1jRfBVFZWSpuKigop697a29vVRRHLBirzdLlcd+7c0QdmfuOG5Ys5jOmr
5bd612jahKj7M4Eow7wIaNqU17TIWiC2E2MZX0gfTdva2ipKx3jbnfm9GM3NzV1dXVLo7u6+ePHi
2saiuaJv1zZefdrU1KR76+3tVbrJsoFUqgZSow/M/MYNyxdz2L+2w7hrNG1CioqKcGOiTNLlPU4r
ODlYLJrWrGkToX+0BkDzEGMZX0hJTatXUbF5L8bY2FhNTY0U5DMSiUjB6/XqTvx+v+5Bq0rLBj6f
TzVYXl7WuzOv5GL5Yg7713YYd42mJcoQZch7AItNP02bWOu+fPkSWwViOzGW8YUU1rTmsvm9GCIX
lUbNy8t7lxL8hMPhsOzN3MC4Aovl7hIdwNqHv7Yj9TXtprd6x93VrccDTybKMC8CmjatNK2MTnLJ
2gz4EIjtxFjGF9C05rLlezFqamq+/vrrhoYG3ca+N8sGfr9fXZJdWVmxuU5reQD2h5emmtb+Vm/z
Xd1EGaIMeQ9gsempaZNL1uL7qX2uGF80LWBXn0DTWr4XQy0UqpdxEg2lVo3q6+srLS0192bZQNSW
ei63paVFNza/ccPyAOwPL001rf2t3jbv5wSiDPMioGnTTdOSExMnOWZiLOML6aNpLd+L8fLlS6nR
EknqKyoqpKawsPDp06fm3iwbqDtkRXOJiDWuexz3xg3LA7A/vDTVtO/V2t4LTpQhyqRtrsZy31gs
mpacmDjJMRNjGV/ArmCva1rLW725TptK1vDixQtyte2hl/vG/pkX0bTkLvgg48v4Mr6QvHbFuzBS
XNNa3uptvqs7MzNzZWWFM5501nD79u30nCF25H/N5Mq8iKYlJ8YHGV/GN+nGl9ussCviRtppWstb
vc13dYvK5ceM5LKG6enp8vLyEydOoGnNRCKR4uJiMXufz3fr1i1t9omW+1af4hTqB6D5+Xnxl7UE
y4ZDumja34xk/H7meo3TlfHf7r/3rlfz218TfaX+/U0k41eh9X6qmzL+13O7rtC05C7kpsD4boa+
zWpt45qNdNvf35/UoynHX1tbq8pZWVk73r90PjAwgF1BkmlaSHlruHLlyoEDB7Q2Q9PGEQwG79+/
LwWJ4Pr2e5vlvlWhublZLVXX3d198eLFtQTLhkNaaNq/vrcuQeVTylcGM37uzvj/Hm5T0/Y8yfDt
X+/qfixjcCHj31VmXOhC05K74IOML+O7I/3U1NTU1dXJZ/IOZTQazcvLW1xcrKyslGTD6/XKZ0VF
xQ7uQjqX1CjuwUPsCtC08HmsYXJy8u7duwUFBefPn3/16lU6e/LW/9c2LweL07RjY2NqUpTPSCSy
lmDZcEgLTfv7mevXabX2E1n7H7/epqYN12T85+53f/7dXEZlQ3z7v4lk5BWv7/QPfRn/9dZ7F4p/
z5GRW5hxbdyu8n8vrUtlqf+TivWyTUs0LT7I+DK+e3V8RXeFQiGZea9fv65bmm+YMt5mJdO6y+V6
/fp1VlaWnuLlq+HhYamR3hYWFmwqLe/GsrzVSzZvb29Xv4nbNAgEAlKv74KMu0Es0R67urouXLiw
tvFG07Nnz0q+0djYqFa73fRgLE/ayMiIbOJwOAoLC8fHx1Wl/uGeuAFoWviclJWV1dfXl5aWPnr0
CE/edF68evWqSNNgMGh5T76lpo3FYkrE5uXlvXMq07LhkBaa1uYK6odq2p+7M/7v6026+kXw7e3N
Xw1kZHne6Wqlb9tHM/51rl3l8caMv59fL/zV0PrtzTYt0bT4IOPL+O7V8T137lxHR4fMxVLQLS1v
mNLfSuXJkyelUFVVpXWjfHv69Gnpp6enRza3qbTs3PJWL9m8t7dXPcebqEFra6s0EEErelJVmm8Q
s9yjqFylPOfm5o4cOSKfkuzNzs5u5WAsT5ocgBLAo6Ojeteyi2PHjhE3AE0Ln5Nnz57J+H7xxRdv
3ryxGPi0xOZ0lZSUtLW1DQ8Py5Sw9eu0axtXaL/++uuGhgb1p+Wy4ZB2mlazPU0r2nLr8thYWXos
49e164r0H6LvvrWs9Hjflf/Ib9cSTYsP7n0fhC2TYv7r9/tXV1fXNi5m6paWN0zpb+vq6pR46+7u
lrL+9vnz51KQ3ow60Fy56d1YxjzBcmEqYwPjheJEiYflHrOystR/fItnz3gwlidNtGttba0IWuPe
pZkcD5p27x9eSk5zaFp4b4DD4bCotR9//JEMz/5/7XK5pqamJHw3NTXpljbLfes2N2/elLL+rddy
2XBIO00bV2PWqLpGtYnTwCI4/8/Ke+31n7rN0GLGf7i6fpfyL4LvVR4qX+/85+6M/z5hV2nk9xx2
LdG0+GDy8ANsmdTwX315M06/mW+Y0ndXiUjT34oyVErPuBfdZ6JKc+eb3uq1aQP7G8TMe7S5EWzT
fVmeNNmqvLxcvpLzMzExYdkYTYumRdPC57SGa9eu7d+//9KlS/qCLZrWzNDQkER/j8fT2dmpW9os
963bvHz5UiK+/l3TctlwSAtNK1JQLRCll4zSwvXflq4/E2t8PrbgiN11139/6r3naUVe7suLb3+w
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
i5r2+vXrUllVVfX999/rBsaWUsjMzJSCyF3j8ylG9YumRdMCJD1lZWVjY2P6z4mJiV/+8pd2i6Zu
9TotAKB5gPEFwEN3UdM6nU6pjG0Qp2lXN5CCx+ORSr/fr1pu2iealoALkHz88z//s/HNH+Xl5cPD
w7ZbbPl5WgBA8wDjC4CH7pqmVXcUP378uKurK07TtrS09Pb2SuHMmTNS2draKuXu7u7JyUkpHD16
FE2LpgVIKWpqav72b/9WCvfu3RNNu9mbLd8t/YSkBUDzAOMLgId+Mk1rZG3jITKv1+t2u5ubm+M0
rfqqpKRkYWFhbWMVFbXusdPprKysfP78OZoWTQuQUjx79iwQCPzLv/zLr371q4mJiS1sYXo/rVa3
yFwANA8wvgB4KKBpAeAT8xd/8RfZ2dl1dXWcCgAyKmB8AQAPRdMCQJLx6tUr8fbp6WlOBQAZFTC+
AICHomkBgIgMAPgvML4AeCigaQGAiAwA+C/jCwB4KKBpAYCIDID/AuMLAHgomhZNC0BEBgD8Fxhf
AMBD0bQAQEQGAPwXGF8APBTQtABARAbAf4HxBQA8FNC0AERkAMB/gfEFADwUTQsARGQAwH+B8QXA
QwFNCwBEZADAfxlfAMBDAU0LAERkAPwXGF8AwEPRtGhaACIyAOC/wPgCAB6KpgUAIjIA4L/A+ALg
oYCmBQAiMgD+C4wvAHwGD4W9D5oWgJwJAPBfYHwBAA9N1jFC0wIQkQEA/wXGFwDwUDQtABCRAQD/
BcYXAA8FNC0AEJEBAP9lfAEADwU0LQAQkQHwX2B8AQAPRdOiaQGIyACA/wLjC4CHApoWAIjIAID/
AuMLgIcCmhYAiMgA+C8wvgCAh6Jp0bQARGQAwH+B8QUAPBRNCwBEZADYDf8FAIDPBdMQmhYA0LQA
AEB8BsBDAU0LAERkAADiMwDgoYCmBSAiAwAA8RkA8FA0LQAQkQEAgPgMgIcCmhYAiMgAAMRnAMBD
AU0LAERkAADiMwDgoWhaNC0AERkAAIjPAHgooGkBgIgMAADEZwA8FNC0AEBEBgAgPgMAHgpoWgAi
MgAAEJ8BYHMPhb0PmhaAnAkAAIjPAICHJusYoWkBiMgAAEB8BgA8FE0LAERkAAAgPgPgoYCmBQAi
MgAA8RkA8FBA0wIAERkAgPgMAHgomhZNC0BEBgAA4jMAHgpoWgAgIgMAAPEZAA8FNC0AEJEBAIjP
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