ii;WIkOGTD#lH_Y[3@NR)l+9FL=F/:nB1s;"jg6*BYGt']X;(\&Sf"u.m"bPlp7emXd"J/k:#D$C4
+Tc,Yu-Tj+:&@A;*Y$k=`@SBZNaHUs/JTUCp"G*aHkj9"-)d)P+)>cjckmTlXIAce.Fu;DH2?EC;7eqlV
+jddR4;mI]fb5-M><_RWmF*o69LocNZ)O#+bb]Ftc:6b"a:gagNYTsu8EJ?JC1WHBi(g.LmO@P`C_.&-@
+NaT?.h(KY;$AQ$Il)S7gEU5q(5=CT&M2LMM
+/cdb@:-l-R>FP"IphiL`7cZ`I7cB+'0M7]4:^)CGFgAJh"1a(XJ:%mME1h;712T@u%-_2+\jN'*QR,6a
+M.1Y@BPAamB>$ER-l5X%Z[mm233%>7&*-]FHCZ1$ggC4;eAr.Z$c4L48?4/m-B>K,@W6AVPf:8q$%aAS
+UJ1B];LRge;3UG"+E51A_FC;L1N>J3*`
+Y4`g=!J/^&rGDTqgSMjnAB4c)@bJh>&2VHh<\V^nGo6K>?ZlS\td:
+%]slc!T`sY)&j-S2V"E"1+mQb#ilWGL`$KR<+6B4G=VBCZITP,VH]ZOKb4UG>W9e["hE0a!!&6W)YU6O
+jG.XOr@n[l+C/aK5YfgeQ5cA.;U9nLhM9(?omg9nR4n^dA^6b3"Z]g">Zn\XibJ]3Spk4XBGba"350\B3HQNWs(jWlp06(\=b5_\GYbdt
+p(V%,>'L\YZU/W4:AT*kEZ*pX_=2-TL)EOcG&'?ll8-8Coe9,B?Z%hk_"%"qP;oI1\['<#2$>b-e_:X0
+daSr1kLs2f7h5)WZZg-2Ym\HXFEH
+ncl0n8FDA/9S6Ar52P4PP(ZV
+D))B>X'bg=7/q)?=A5ua:i3TK#@?=-U_1o%9$6JJ!lnj>;?9qi
+\pu@&!jO[_5aM9GVf_j:FrCK%Qk7W!JC'\u30F>U-GlU8S4RPt0no^fiH=&\\#Kl<5mjJ_'i[gT`H&Y!
+^PTYJr@r?qf/KL_P7;63)'(TK#su%;*X"q;'*e:JLMqR2j]gYkA=Ebei-N!0RC%"i0B\lbL:@c!VcfhuX5>3nO#*^nsUe:(@1GSOKirU')!R@#26*!)A%^amE$
+-AL.""G"PqfM5u6L=!$C\3<'W9D'`t/`K!?qnFUOhMcecf-)gn*SR:AM=ls15orh40E?ZTqjLdkEc8gO
+%7mO/GC\HgF^P;<;""mUlQ_EF\ebG[R,rgHgYj9/1_2Je9sWRUnoVm2%1$:N4$Xi^@0ApH+B?#Sj=],>
+%1'Uf]jqq0g`1B9/Rek2Y1Q2TIl+RJKY8ZSAIKY=+MDN#Rm9.hk5kYOp8Ra"/A=2:_42;\&3,X,`*3cC
+@54[8A'`_oo1-38$jnqi'4IC/!
+#!u/#/',h5'g0KaV-H!5ITXZP<\5AfK'<:4hH_q&9[t5,52!khWIn5Il5&?ZOKbZ9\^SnIbcE'1>1[S
+HNf=q'.VJH'#V3'aYrf&?+Ms[DGRblR"!7ER\Zpj5TWgNf1,/jqi'F@B+"3+i8[_\b$+Go6Ir+_n`=Z-
+R5Wa@WdF0.!OC-6dik"=`2TfbXY+'n!h7r!2mZ?C:
+\*D]pae:1Jr%ifUCr]u_Jb[onrqn)2BJof`Wrs>)*ms.FR`f>\%?%C^Zlu^t2gSJj\s07u<::88nY5N'
+(>\W'6aHaXcM%G`EH7?gJep
+pnh#aBhaClMNY@ZL*a+hO,)L7BaVr$gi:6"%`Na[m\eg)V)28?,Wr)$%3%5.ZF*\V(i9Q/";#\U;>LlY
+&!;+bMtRVPA]eVe34ceSl):E2+-)bm\d+`X`KX@ZuN\eV[0SIkli(RhiV7%-oAc,["MC
+&KFZ$#%^(Ke&_4ue(clOCtlY6]0:&ST7`%V5@,lV#
+&VcJUa9KB3W)a`LB$C&43Wr45E;G#j$UN!%\n$Xqp.bj<6470-JeQ(G366U3!]Y'71QW)\]O8d4PV%VD"+a6S_27T!OQZ6YQ68nr
+fFA.;Ip3">Jf.+7,Z_hl^EX"_leba)$?d7ZOBPuO>sLT'R;#%LoI@<\jM_1t+Dmk:Zh_juN(_q;,`tE>
+3;-i>_X.>K3Zi)P7^3%-8)["Q$'6.$L2RF$r1Y[^1+IH3(sj>((2b]p%2VqS3,5Q;jF"GJL1Z_',&;\[
+*Cuu'Q9JDDZecg>:UV\.*Md4cbDOO0!J.;f(\HWi5ctM495!W;YugCN^VsW`MpWKABnL8==!>P+GJnTh
+Y[NXVoPbbX+P!"/1<:\t]4BdI`:ZnS6XkBnPZ[O8r\f1ELJr4`N33[%aatO\?QIgHMn_>qUDJ0dq-o0*Q\(@1P!V[%DbneTaTX1gC>PKV\R8,f
+Xm$^ERVG;u`Ic<;d5bDXZqLJDJcfstJE$cK-OM);ULFaqH9nE/k"!Z>e/CfI;)FBei^<\ueoXDZ~>
+Q
+0 J
+1.45000 M
+newpath
+482.062 705.100 m
+482.062 681.975 l
+485.344 681.975 l
+485.344 691.725 l
+496.344 691.725 l
+496.344 681.975 l
+499.625 681.975 l
+499.625 705.100 l
+496.344 705.100 l
+496.344 694.178 l
+485.344 694.178 l
+485.344 705.100 l
+482.062 705.100 l
+h
+505.672 705.100 m
+505.672 688.131 l
+508.750 688.131 l
+508.750 705.100 l
+505.672 705.100 l
+h
+505.672 685.053 m
+505.672 681.975 l
+508.750 681.975 l
+508.750 685.053 l
+505.672 685.053 l
+h
+519.422 705.491 m
+518.016 705.491 516.307 705.163 514.297 704.506 c
+514.297 701.678 l
+516.307 702.678 518.057 703.178 519.547 703.178 c
+520.432 703.178 521.167 702.939 521.750 702.460 c
+522.333 701.980 522.625 701.381 522.625 700.663 c
+522.625 699.611 521.807 698.741 520.172 698.053 c
+518.375 697.288 l
+515.719 696.184 514.391 694.595 514.391 692.522 c
+514.391 691.043 514.914 689.879 515.961 689.030 c
+517.008 688.181 518.443 687.756 520.266 687.756 c
+521.214 687.756 522.385 687.887 523.781 688.147 c
+524.422 688.272 l
+524.422 690.835 l
+522.703 690.324 521.339 690.069 520.328 690.069 c
+518.349 690.069 517.359 690.788 517.359 692.225 c
+517.359 693.152 518.109 693.934 519.609 694.569 c
+521.094 695.194 l
+522.771 695.902 523.958 696.650 524.656 697.436 c
+525.354 698.223 525.703 699.204 525.703 700.381 c
+525.703 701.871 525.115 703.095 523.938 704.053 c
+522.760 705.012 521.255 705.491 519.422 705.491 c
+h
+536.328 705.491 m
+534.766 705.491 533.547 705.043 532.672 704.147 c
+531.797 703.251 531.359 702.006 531.359 700.413 c
+531.359 690.444 l
+529.234 690.444 l
+529.234 688.131 l
+531.359 688.131 l
+531.359 685.053 l
+534.438 684.756 l
+534.438 688.131 l
+538.875 688.131 l
+538.875 690.444 l
+534.438 690.444 l
+534.438 699.850 l
+534.438 702.069 535.396 703.178 537.312 703.178 c
+537.719 703.178 538.214 703.111 538.797 702.975 c
+538.797 705.100 l
+537.849 705.361 537.026 705.491 536.328 705.491 c
+h
+549.844 705.491 m
+547.417 705.491 545.479 704.686 544.031 703.077 c
+542.583 701.467 541.859 699.314 541.859 696.616 c
+541.859 693.887 542.586 691.728 544.039 690.139 c
+545.492 688.551 547.464 687.756 549.953 687.756 c
+552.443 687.756 554.414 688.551 555.867 690.139 c
+557.320 691.728 558.047 693.876 558.047 696.585 c
+558.047 699.355 557.318 701.533 555.859 703.116 c
+554.401 704.699 552.396 705.491 549.844 705.491 c
+h
+549.891 703.178 m
+553.151 703.178 554.781 700.980 554.781 696.585 c
+554.781 692.241 553.172 690.069 549.953 690.069 c
+546.745 690.069 545.141 692.251 545.141 696.616 c
+545.141 700.991 546.724 703.178 549.891 703.178 c
+h
+562.859 705.100 m
+562.859 688.131 l
+565.938 688.131 l
+565.938 691.319 l
+567.156 688.944 568.927 687.756 571.250 687.756 c
+571.562 687.756 571.891 687.783 572.234 687.835 c
+572.234 690.710 l
+571.703 690.533 571.234 690.444 570.828 690.444 c
+568.880 690.444 567.250 691.600 565.938 693.913 c
+565.938 705.100 l
+562.859 705.100 l
+h
+575.953 705.100 m
+575.953 688.131 l
+579.031 688.131 l
+579.031 705.100 l
+575.953 705.100 l
+h
+575.953 685.053 m
+575.953 681.975 l
+579.031 681.975 l
+579.031 685.053 l
+575.953 685.053 l
+h
+591.828 705.491 m
+589.536 705.491 587.635 704.642 586.125 702.944 c
+584.615 701.246 583.859 699.105 583.859 696.522 c
+583.859 693.762 584.607 691.611 586.102 690.069 c
+587.596 688.527 589.682 687.756 592.359 687.756 c
+593.682 687.756 595.161 687.939 596.797 688.303 c
+596.797 690.881 l
+595.057 690.371 593.641 690.116 592.547 690.116 c
+590.974 690.116 589.711 690.707 588.758 691.889 c
+587.805 693.072 587.328 694.647 587.328 696.616 c
+587.328 698.522 587.818 700.064 588.797 701.241 c
+589.776 702.418 591.057 703.006 592.641 703.006 c
+594.047 703.006 595.495 702.647 596.984 701.928 c
+596.984 704.585 l
+594.995 705.189 593.276 705.491 591.828 705.491 c
+h
+611.625 705.100 m
+611.625 681.975 l
+619.312 681.975 l
+621.604 681.975 623.456 682.230 624.867 682.741 c
+626.279 683.251 627.500 684.116 628.531 685.335 c
+630.167 687.272 630.984 689.824 630.984 692.991 c
+630.984 696.835 629.969 699.814 627.938 701.928 c
+625.906 704.043 623.047 705.100 619.359 705.100 c
+611.625 705.100 l
+h
+614.906 702.647 m
+619.109 702.647 l
+622.109 702.647 624.234 701.840 625.484 700.225 c
+626.828 698.506 627.500 696.199 627.500 693.303 c
+627.500 690.585 626.839 688.449 625.516 686.897 c
+624.714 685.949 623.755 685.301 622.641 684.952 c
+621.526 684.603 619.849 684.428 617.609 684.428 c
+614.906 684.428 l
+614.906 702.647 l
+h
+644.438 702.944 m
+642.594 704.642 640.818 705.491 639.109 705.491 c
+637.703 705.491 636.536 705.051 635.609 704.171 c
+634.682 703.290 634.219 702.178 634.219 700.835 c
+634.219 698.980 634.997 697.556 636.555 696.561 c
+638.112 695.566 640.344 695.069 643.250 695.069 c
+643.984 695.069 l
+643.984 693.022 l
+643.984 691.053 642.974 690.069 640.953 690.069 c
+639.328 690.069 637.573 690.569 635.688 691.569 c
+635.688 689.022 l
+637.760 688.178 639.703 687.756 641.516 687.756 c
+643.411 687.756 644.810 688.184 645.711 689.038 c
+646.612 689.892 647.062 691.220 647.062 693.022 c
+647.062 700.710 l
+647.062 702.470 647.604 703.350 648.688 703.350 c
+648.823 703.350 649.021 703.329 649.281 703.288 c
+649.500 704.991 l
+648.802 705.324 648.031 705.491 647.188 705.491 c
+645.750 705.491 644.833 704.642 644.438 702.944 c
+h
+643.984 701.272 m
+643.984 696.881 l
+642.953 696.850 l
+641.266 696.850 639.901 697.171 638.859 697.811 c
+637.818 698.452 637.297 699.293 637.297 700.335 c
+637.297 701.074 637.557 701.699 638.078 702.210 c
+638.599 702.720 639.234 702.975 639.984 702.975 c
+641.266 702.975 642.599 702.408 643.984 701.272 c
+h
+658.453 705.491 m
+656.891 705.491 655.672 705.043 654.797 704.147 c
+653.922 703.251 653.484 702.006 653.484 700.413 c
+653.484 690.444 l
+651.359 690.444 l
+651.359 688.131 l
+653.484 688.131 l
+653.484 685.053 l
+656.562 684.756 l
+656.562 688.131 l
+661.000 688.131 l
+661.000 690.444 l
+656.562 690.444 l
+656.562 699.850 l
+656.562 702.069 657.521 703.178 659.438 703.178 c
+659.844 703.178 660.339 703.111 660.922 702.975 c
+660.922 705.100 l
+659.974 705.361 659.151 705.491 658.453 705.491 c
+h
+674.078 702.944 m
+672.234 704.642 670.458 705.491 668.750 705.491 c
+667.344 705.491 666.177 705.051 665.250 704.171 c
+664.323 703.290 663.859 702.178 663.859 700.835 c
+663.859 698.980 664.638 697.556 666.195 696.561 c
+667.753 695.566 669.984 695.069 672.891 695.069 c
+673.625 695.069 l
+673.625 693.022 l
+673.625 691.053 672.615 690.069 670.594 690.069 c
+668.969 690.069 667.214 690.569 665.328 691.569 c
+665.328 689.022 l
+667.401 688.178 669.344 687.756 671.156 687.756 c
+673.052 687.756 674.451 688.184 675.352 689.038 c
+676.253 689.892 676.703 691.220 676.703 693.022 c
+676.703 700.710 l
+676.703 702.470 677.245 703.350 678.328 703.350 c
+678.464 703.350 678.661 703.329 678.922 703.288 c
+679.141 704.991 l
+678.443 705.324 677.672 705.491 676.828 705.491 c
+675.391 705.491 674.474 704.642 674.078 702.944 c
+h
+673.625 701.272 m
+673.625 696.881 l
+672.594 696.850 l
+670.906 696.850 669.542 697.171 668.500 697.811 c
+667.458 698.452 666.938 699.293 666.938 700.335 c
+666.938 701.074 667.198 701.699 667.719 702.210 c
+668.240 702.720 668.875 702.975 669.625 702.975 c
+670.906 702.975 672.240 702.408 673.625 701.272 c
+h
+f
+2 J
+10.0000 M
+1.00000 1.00000 0.00000 RG
+newpath
+792.000 194.000 m
+984.000 194.000 l
+984.000 305.000 l
+792.000 305.000 l
+792.000 194.000 l
+h
+f
+0.00000 0.00000 0.00000 RG
+0 J
+1.45000 M
+newpath
+798.102 242.672 m
+798.102 219.547 l
+803.648 219.547 l
+809.555 236.062 l
+815.648 219.547 l
+820.711 219.547 l
+820.711 242.672 l
+816.648 242.672 l
+816.648 225.859 l
+811.273 241.125 l
+807.102 241.125 l
+801.523 225.516 l
+801.914 242.672 l
+798.102 242.672 l
+h
+834.164 243.062 m
+831.737 243.062 829.799 242.258 828.352 240.648 c
+826.904 239.039 826.180 236.885 826.180 234.188 c
+826.180 231.458 826.906 229.299 828.359 227.711 c
+829.812 226.122 831.784 225.328 834.273 225.328 c
+837.430 225.328 839.734 226.122 841.188 227.711 c
+842.641 229.299 843.367 231.448 843.367 234.156 c
+843.367 236.927 842.638 239.104 841.180 240.688 c
+839.721 242.271 837.383 243.062 834.164 243.062 c
+h
+834.211 240.750 m
+837.471 240.750 839.102 238.552 839.102 234.156 c
+839.102 229.812 837.492 227.641 834.273 227.641 c
+831.732 227.641 830.461 229.823 830.461 234.188 c
+830.461 238.562 831.711 240.750 834.211 240.750 c
+h
+848.945 242.672 m
+848.945 225.703 l
+853.023 225.703 l
+853.023 227.438 l
+853.982 226.031 855.638 225.328 857.992 225.328 c
+860.128 225.328 861.633 225.794 862.508 226.727 c
+863.383 227.659 863.820 228.911 863.820 230.484 c
+863.820 242.672 l
+859.742 242.672 l
+859.742 231.484 l
+859.742 230.224 859.557 229.326 859.188 228.789 c
+858.818 228.253 858.206 227.984 857.352 227.984 c
+856.133 227.984 854.690 229.219 853.023 231.688 c
+853.023 242.672 l
+848.945 242.672 l
+h
+870.570 242.672 m
+870.570 225.703 l
+874.648 225.703 l
+874.648 242.672 l
+870.570 242.672 l
+h
+870.570 222.625 m
+870.570 219.547 l
+874.648 219.547 l
+874.648 222.625 l
+870.570 222.625 l
+h
+886.680 243.062 m
+885.117 243.062 883.898 242.615 883.023 241.719 c
+882.148 240.823 881.711 239.578 881.711 237.984 c
+881.711 228.016 l
+879.586 228.016 l
+879.586 225.703 l
+881.711 225.703 l
+881.711 222.625 l
+885.789 222.234 l
+885.789 225.703 l
+890.227 225.703 l
+890.227 228.016 l
+885.789 228.016 l
+885.789 237.422 l
+885.789 239.641 886.414 240.750 887.664 240.750 c
+888.070 240.750 888.898 240.609 890.148 240.328 c
+890.148 242.672 l
+889.201 242.932 888.044 243.062 886.680 243.062 c
+h
+901.961 243.062 m
+899.534 243.062 897.596 242.258 896.148 240.648 c
+894.701 239.039 893.977 236.885 893.977 234.188 c
+893.977 231.458 894.703 229.299 896.156 227.711 c
+897.609 226.122 899.581 225.328 902.070 225.328 c
+905.227 225.328 907.531 226.122 908.984 227.711 c
+910.438 229.299 911.164 231.448 911.164 234.156 c
+911.164 236.927 910.435 239.104 908.977 240.688 c
+907.518 242.271 905.180 243.062 901.961 243.062 c
+h
+902.008 240.750 m
+905.268 240.750 906.898 238.552 906.898 234.156 c
+906.898 229.812 905.289 227.641 902.070 227.641 c
+899.529 227.641 898.258 229.823 898.258 234.188 c
+898.258 238.562 899.508 240.750 902.008 240.750 c
+h
+916.742 242.672 m
+916.742 225.703 l
+920.727 225.703 l
+920.727 227.297 l
+921.341 225.984 922.810 225.328 925.133 225.328 c
+926.112 225.328 926.773 225.354 927.117 225.406 c
+927.117 228.625 l
+925.919 228.219 925.117 228.016 924.711 228.016 c
+923.430 228.016 922.133 229.172 920.820 231.484 c
+920.820 242.672 l
+916.742 242.672 l
+h
+931.602 242.672 m
+931.602 225.703 l
+935.680 225.703 l
+935.680 242.672 l
+931.602 242.672 l
+h
+931.602 222.625 m
+931.602 219.547 l
+935.680 219.547 l
+935.680 222.625 l
+931.602 222.625 l
+h
+942.617 242.672 m
+942.617 225.703 l
+946.695 225.703 l
+946.695 227.438 l
+947.654 226.031 949.310 225.328 951.664 225.328 c
+953.799 225.328 955.305 225.794 956.180 226.727 c
+957.055 227.659 957.492 228.911 957.492 230.484 c
+957.492 242.672 l
+953.414 242.672 l
+953.414 231.484 l
+953.414 230.224 953.229 229.326 952.859 228.789 c
+952.490 228.253 951.878 227.984 951.023 227.984 c
+949.805 227.984 948.362 229.219 946.695 231.688 c
+946.695 242.672 l
+942.617 242.672 l
+h
+964.305 248.312 m
+964.711 245.188 l
+967.128 246.333 968.867 246.906 969.930 246.906 c
+973.398 246.906 975.133 245.068 975.133 241.391 c
+975.133 240.719 l
+974.664 241.760 972.799 242.281 969.539 242.281 c
+967.508 242.281 965.893 241.542 964.695 240.062 c
+963.497 238.583 962.898 236.589 962.898 234.078 c
+962.898 231.495 963.581 229.391 964.945 227.766 c
+966.310 226.141 968.076 225.328 970.242 225.328 c
+972.805 225.328 974.435 225.724 975.133 226.516 c
+975.133 225.703 l
+979.227 225.703 l
+979.227 238.047 l
+979.227 240.703 979.089 242.669 978.812 243.945 c
+978.536 245.221 978.018 246.266 977.258 247.078 c
+975.914 248.505 973.492 249.219 969.992 249.219 c
+968.013 249.219 966.117 248.917 964.305 248.312 c
+h
+975.133 236.797 m
+975.133 229.750 l
+973.779 228.344 972.305 227.641 970.711 227.641 c
+969.961 227.641 969.185 228.208 968.383 229.344 c
+967.581 230.479 967.180 232.036 967.180 234.016 c
+967.180 237.734 968.154 239.594 970.102 239.594 c
+971.883 239.594 973.560 238.661 975.133 236.797 c
+h
+f
+newpath
+822.961 279.906 m
+822.961 256.781 l
+827.242 256.781 l
+827.242 277.453 l
+837.648 277.453 l
+837.648 279.906 l
+822.961 279.906 l
+h
+848.523 280.297 m
+846.096 280.297 844.159 279.492 842.711 277.883 c
+841.263 276.273 840.539 274.120 840.539 271.422 c
+840.539 268.693 841.266 266.534 842.719 264.945 c
+844.172 263.357 846.143 262.562 848.633 262.562 c
+851.789 262.562 854.094 263.357 855.547 264.945 c
+857.000 266.534 857.727 268.682 857.727 271.391 c
+857.727 274.161 856.997 276.339 855.539 277.922 c
+854.081 279.505 851.742 280.297 848.523 280.297 c
+h
+848.570 277.984 m
+851.831 277.984 853.461 275.786 853.461 271.391 c
+853.461 267.047 851.852 264.875 848.633 264.875 c
+846.091 264.875 844.820 267.057 844.820 271.422 c
+844.820 275.797 846.070 277.984 848.570 277.984 c
+h
+863.367 285.547 m
+863.773 282.422 l
+866.190 283.568 867.930 284.141 868.992 284.141 c
+872.461 284.141 874.195 282.302 874.195 278.625 c
+874.195 277.953 l
+873.727 278.995 871.862 279.516 868.602 279.516 c
+866.570 279.516 864.956 278.776 863.758 277.297 c
+862.560 275.818 861.961 273.823 861.961 271.312 c
+861.961 268.729 862.643 266.625 864.008 265.000 c
+865.372 263.375 867.138 262.562 869.305 262.562 c
+871.867 262.562 873.497 262.958 874.195 263.750 c
+874.195 262.938 l
+878.289 262.938 l
+878.289 275.281 l
+878.289 277.938 878.151 279.904 877.875 281.180 c
+877.599 282.456 877.081 283.500 876.320 284.312 c
+874.977 285.740 872.555 286.453 869.055 286.453 c
+867.076 286.453 865.180 286.151 863.367 285.547 c
+h
+874.195 274.031 m
+874.195 266.984 l
+872.841 265.578 871.367 264.875 869.773 264.875 c
+869.023 264.875 868.247 265.443 867.445 266.578 c
+866.643 267.714 866.242 269.271 866.242 271.250 c
+866.242 274.969 867.216 276.828 869.164 276.828 c
+870.945 276.828 872.622 275.896 874.195 274.031 c
+h
+885.086 285.547 m
+885.492 282.422 l
+887.909 283.568 889.648 284.141 890.711 284.141 c
+894.180 284.141 895.914 282.302 895.914 278.625 c
+895.914 277.953 l
+895.445 278.995 893.581 279.516 890.320 279.516 c
+888.289 279.516 886.674 278.776 885.477 277.297 c
+884.279 275.818 883.680 273.823 883.680 271.312 c
+883.680 268.729 884.362 266.625 885.727 265.000 c
+887.091 263.375 888.857 262.562 891.023 262.562 c
+893.586 262.562 895.216 262.958 895.914 263.750 c
+895.914 262.938 l
+900.008 262.938 l
+900.008 275.281 l
+900.008 277.938 899.870 279.904 899.594 281.180 c
+899.318 282.456 898.799 283.500 898.039 284.312 c
+896.695 285.740 894.273 286.453 890.773 286.453 c
+888.794 286.453 886.898 286.151 885.086 285.547 c
+h
+895.914 274.031 m
+895.914 266.984 l
+894.560 265.578 893.086 264.875 891.492 264.875 c
+890.742 264.875 889.966 265.443 889.164 266.578 c
+888.362 267.714 887.961 269.271 887.961 271.250 c
+887.961 274.969 888.935 276.828 890.883 276.828 c
+892.664 276.828 894.341 275.896 895.914 274.031 c
+h
+906.742 279.906 m
+906.742 262.938 l
+910.820 262.938 l
+910.820 279.906 l
+906.742 279.906 l
+h
+906.742 259.859 m
+906.742 256.781 l
+910.820 256.781 l
+910.820 259.859 l
+906.742 259.859 l
+h
+917.758 279.906 m
+917.758 262.938 l
+921.836 262.938 l
+921.836 264.672 l
+922.794 263.266 924.451 262.562 926.805 262.562 c
+928.940 262.562 930.445 263.029 931.320 263.961 c
+932.195 264.893 932.633 266.146 932.633 267.719 c
+932.633 279.906 l
+928.555 279.906 l
+928.555 268.719 l
+928.555 267.458 928.370 266.560 928.000 266.023 c
+927.630 265.487 927.018 265.219 926.164 265.219 c
+924.945 265.219 923.503 266.453 921.836 268.922 c
+921.836 279.906 l
+917.758 279.906 l
+h
+939.445 285.547 m
+939.852 282.422 l
+942.268 283.568 944.008 284.141 945.070 284.141 c
+948.539 284.141 950.273 282.302 950.273 278.625 c
+950.273 277.953 l
+949.805 278.995 947.940 279.516 944.680 279.516 c
+942.648 279.516 941.034 278.776 939.836 277.297 c
+938.638 275.818 938.039 273.823 938.039 271.312 c
+938.039 268.729 938.721 266.625 940.086 265.000 c
+941.451 263.375 943.216 262.562 945.383 262.562 c
+947.945 262.562 949.576 262.958 950.273 263.750 c
+950.273 262.938 l
+954.367 262.938 l
+954.367 275.281 l
+954.367 277.938 954.229 279.904 953.953 281.180 c
+953.677 282.456 953.159 283.500 952.398 284.312 c
+951.055 285.740 948.633 286.453 945.133 286.453 c
+943.154 286.453 941.258 286.151 939.445 285.547 c
+h
+950.273 274.031 m
+950.273 266.984 l
+948.919 265.578 947.445 264.875 945.852 264.875 c
+945.102 264.875 944.326 265.443 943.523 266.578 c
+942.721 267.714 942.320 269.271 942.320 271.250 c
+942.320 274.969 943.294 276.828 945.242 276.828 c
+947.023 276.828 948.701 275.896 950.273 274.031 c
+h
+f
+2 J
+10.0000 M
+1.00000 1.00000 0.00000 RG
+0 J
+1.45000 M
+0.00000 0.00000 0.00000 RG
+newpath
+792.000 194.000 m
+984.000 194.000 l
+984.000 305.000 l
+792.000 305.000 l
+792.000 194.000 l
+h
+S
+2 J
+10.0000 M
+q
+[ 66.0000 0.00000 0.00000 54.0000 1040.22 27.1272 ] concat
+<<
+/ImageType 1
+/Width 66 /Height 54
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [66 0 0 54 0 0]
+/DataSource currentfile /ASCII85Decode filter /DCTDecode filter
+>> image
+s4IA0!"_al8O`[\!WW3$!!*'"s4[N@!!ic5#6k>;#6tJ?#m^kH'FbHY$Odmc'+Yct)BU"@)B9_>,VCGe
++tOrY*%3`p/2/e81c-:%3B]>W4>&EH1B6)/6NIK"#n.1M(_$ok1*IV\1,:U?1,:U?1,:U?1,:U?1,:U?
+1,:U?1,:U?1,:U?1,:U?1,:U?1,:U?1,:U?1,AmF!"fJ:2?6&G!?qLF&HMtG!WU(<*rl9A"T\W)!10ZOeE%*6F"?
+A;UOtZ1LbBV#mqFa(`=5<-7:2j.Ps"@2`NfY6UX@47n?3D;cHat='/U/@q9._B4u!oF*)PJGBeCZK7nr
+5LPUeEP*;,qQC!u,R\HRQV5C/hWN*81['d?O\@K2f_o0O6a2lBFdaQ^rf%8R-g>V&OjQ5OekiqC&o(2M
+Hp@n@XqZ"J6*ru?D!%;)SAnPdkC3+K>G'A1VH@gd&KnbA=M2II[Pa.Q$R$jD;USO``Vl6SpZEppG[^WcW]#)A'`Q#s
+>ai`&\eCE.%f\,!5N>o@Q;C\/2g/r_:DD3AFCI;@+4dl+lRu7
+Sg(4&G(]K@s;hTE;SI28TF00b[[7(d2R!OjNt+,Y1U="6>md/+18_5l*Wk/Fr
+1Cskm)@5&]m(!A2P*j3QKC.4cO]l.G,*n9G6ggG1IrcJn>&WVO5_=RWi%0#lK80(`GbGcTB:d1b_Y3tA
+?b>rKhZ1&"q@]Qlmo`pnrBLi"Y:]1PsWs#Cpd?R=@e;pUmnqnj!!;D)UNDmW]:91>:HRtL\9.:%_:8(8
+!1P2Nr/#8J1JgQX]$ApT1m9J/t5L8Z
++n)Aie'fZ%A:CmI*cWU8Jn'uFPg4kf6.lc.a>bCiZ)jC+WoW%VKm`G0Alt>-fnO)gRgHf&%O0V>(emcO
+G0qPnql!;X5.pXD!Il/>FqOd[[E0=AgO*_h:9hb<_$UEMbHLCD_AdPPHO:gJVX)b-;=B_pnR;tMa4f%t
+1Z\N%qrr@aeUS%@0e:6rPJ+5BB\&41@hWcQ6fGPo%t,HpR9=0D[_BWeJNh3P2>?3:[FkV!'S*ehu:;':]^N
+ZJ*449#<4U\cJ>!7,T]GQ.ZH72,cI$\]1m9S$\M]Z6Q#A"'ATS`\/EH%AU.O;G[p72,dd*tKtN7(BI
+Fh\mnc4YUr:L,Lh1g(2dX-_>H=\lU;La#QNH~>
+Q
+0 J
+1.45000 M
+newpath
+956.596 93.6541 m
+960.878 93.6541 l
+960.878 108.248 l
+960.878 110.571 961.307 112.261 962.167 113.318 c
+963.026 114.375 964.060 114.904 965.268 114.904 c
+967.102 114.904 968.401 114.407 969.167 113.412 c
+969.932 112.417 970.315 110.732 970.315 108.357 c
+970.315 93.6541 l
+974.190 93.6541 l
+974.190 108.310 l
+974.190 111.467 973.542 113.763 972.245 115.201 c
+970.948 116.638 968.549 117.357 965.049 117.357 c
+962.164 117.357 960.034 116.612 958.659 115.123 c
+957.284 113.633 956.596 111.331 956.596 108.217 c
+956.596 93.6541 l
+h
+985.315 117.170 m
+983.909 117.170 982.201 116.842 980.190 116.185 c
+980.190 112.873 l
+982.867 114.196 984.617 114.857 985.440 114.857 c
+986.326 114.857 987.060 114.618 987.643 114.138 c
+988.227 113.659 988.518 113.060 988.518 112.342 c
+988.518 111.289 987.701 110.420 986.065 109.732 c
+984.268 108.967 l
+981.612 107.862 980.284 106.274 980.284 104.201 c
+980.284 102.722 980.807 101.558 981.854 100.709 c
+982.901 99.8598 984.336 99.4353 986.159 99.4353 c
+987.773 99.4353 989.279 99.5655 990.674 99.8259 c
+991.315 99.9509 l
+991.315 102.826 l
+988.930 102.107 987.232 101.748 986.221 101.748 c
+984.909 101.748 984.253 102.467 984.253 103.904 c
+984.253 104.831 985.003 105.612 986.503 106.248 c
+987.987 106.873 l
+989.664 107.581 990.852 108.329 991.549 109.115 c
+992.247 109.901 992.596 110.883 992.596 112.060 c
+992.596 113.550 992.008 114.774 990.831 115.732 c
+989.654 116.691 987.815 117.170 985.315 117.170 c
+h
+1012.33 116.232 m
+1010.27 116.857 1008.17 117.170 1006.03 117.170 c
+1003.53 117.170 1001.49 116.339 999.917 114.678 c
+998.339 113.016 997.549 110.862 997.549 108.217 c
+997.549 105.644 998.245 103.534 999.635 101.888 c
+1001.03 100.243 1002.80 99.4197 1004.97 99.4197 c
+1007.69 99.4197 1009.61 100.149 1010.73 101.607 c
+1011.85 103.066 1012.41 105.138 1012.41 107.826 c
+1012.39 108.779 l
+1001.69 108.779 l
+1002.14 112.810 1003.78 114.826 1006.61 114.826 c
+1007.89 114.826 1009.80 114.362 1012.33 113.435 c
+1012.33 116.232 l
+h
+1001.83 106.467 m
+1008.32 106.467 l
+1008.32 103.310 1007.14 101.732 1004.78 101.732 c
+1003.09 101.732 1002.10 103.310 1001.83 106.467 c
+h
+1018.49 116.779 m
+1018.49 99.8103 l
+1022.47 99.8103 l
+1022.47 101.404 l
+1023.09 100.092 1024.55 99.4353 1026.88 99.4353 c
+1027.86 99.4353 1028.52 99.4614 1028.86 99.5134 c
+1028.86 102.732 l
+1027.66 102.326 1026.86 102.123 1026.46 102.123 c
+1025.17 102.123 1023.88 103.279 1022.57 105.592 c
+1022.57 116.779 l
+1018.49 116.779 l
+h
+1045.13 116.779 m
+1045.13 93.6541 l
+1049.41 93.6541 l
+1049.41 116.779 l
+1045.13 116.779 l
+h
+1056.22 116.779 m
+1056.22 99.8103 l
+1060.30 99.8103 l
+1060.30 101.545 l
+1061.26 100.138 1062.91 99.4353 1065.27 99.4353 c
+1067.40 99.4353 1068.91 99.9015 1069.78 100.834 c
+1070.66 101.766 1071.10 103.019 1071.10 104.592 c
+1071.10 116.779 l
+1067.02 116.779 l
+1067.02 105.592 l
+1067.02 104.331 1066.83 103.433 1066.46 102.896 c
+1066.09 102.360 1065.48 102.092 1064.63 102.092 c
+1063.41 102.092 1061.97 103.326 1060.30 105.795 c
+1060.30 116.779 l
+1056.22 116.779 l
+h
+1082.94 117.170 m
+1081.38 117.170 1080.16 116.722 1079.28 115.826 c
+1078.41 114.930 1077.97 113.685 1077.97 112.092 c
+1077.97 102.123 l
+1075.85 102.123 l
+1075.85 99.8103 l
+1077.97 99.8103 l
+1077.97 96.7322 l
+1082.05 96.3416 l
+1082.05 99.8103 l
+1086.49 99.8103 l
+1086.49 102.123 l
+1082.05 102.123 l
+1082.05 111.529 l
+1082.05 113.748 1082.67 114.857 1083.92 114.857 c
+1084.33 114.857 1085.16 114.717 1086.41 114.435 c
+1086.41 116.779 l
+1085.46 117.039 1084.30 117.170 1082.94 117.170 c
+h
+1105.02 116.232 m
+1102.96 116.857 1100.86 117.170 1098.72 117.170 c
+1096.22 117.170 1094.18 116.339 1092.60 114.678 c
+1091.03 113.016 1090.24 110.862 1090.24 108.217 c
+1090.24 105.644 1090.93 103.534 1092.32 101.888 c
+1093.71 100.243 1095.49 99.4197 1097.66 99.4197 c
+1100.38 99.4197 1102.30 100.149 1103.42 101.607 c
+1104.54 103.066 1105.10 105.138 1105.10 107.826 c
+1105.08 108.779 l
+1094.38 108.779 l
+1094.83 112.810 1096.47 114.826 1099.30 114.826 c
+1100.58 114.826 1102.49 114.362 1105.02 113.435 c
+1105.02 116.232 l
+h
+1094.52 106.467 m
+1101.00 106.467 l
+1101.00 103.310 1099.83 101.732 1097.47 101.732 c
+1095.77 101.732 1094.79 103.310 1094.52 106.467 c
+h
+1111.17 116.779 m
+1111.17 99.8103 l
+1115.16 99.8103 l
+1115.16 101.404 l
+1115.77 100.092 1117.24 99.4353 1119.57 99.4353 c
+1120.54 99.4353 1121.21 99.4614 1121.55 99.5134 c
+1121.55 102.732 l
+1120.35 102.326 1119.55 102.123 1119.14 102.123 c
+1117.86 102.123 1116.57 103.279 1115.25 105.592 c
+1115.25 116.779 l
+1111.17 116.779 l
+h
+1130.71 102.123 m
+1130.71 116.779 l
+1126.61 116.779 l
+1126.61 102.123 l
+1124.21 102.123 l
+1124.21 99.8103 l
+1126.61 99.8103 l
+1126.61 97.7791 l
+1126.61 93.7374 1128.46 91.7166 1132.14 91.7166 c
+1133.84 91.7166 1135.35 91.8884 1136.66 92.2322 c
+1136.66 94.9822 l
+1134.61 94.3468 1133.16 94.0291 1132.33 94.0291 c
+1131.99 94.0291 1131.63 94.2713 1131.26 94.7556 c
+1130.89 95.2400 1130.71 96.1384 1130.71 97.4509 c
+1130.71 99.8103 l
+1134.94 99.8103 l
+1134.94 102.123 l
+1130.71 102.123 l
+h
+1148.49 115.388 m
+1147.20 116.576 1145.36 117.170 1142.99 117.170 c
+1141.58 117.170 1140.41 116.730 1139.49 115.849 c
+1138.56 114.969 1138.10 113.857 1138.10 112.513 c
+1138.10 110.659 1138.88 109.235 1140.43 108.240 c
+1141.99 107.245 1144.22 106.748 1147.13 106.748 c
+1147.86 106.748 l
+1147.86 104.701 l
+1147.86 102.732 1146.85 101.748 1144.83 101.748 c
+1143.87 101.748 1142.12 102.425 1139.57 103.779 c
+1139.57 100.701 l
+1141.64 99.8572 1143.58 99.4353 1145.39 99.4353 c
+1147.96 99.4353 1149.69 99.8624 1150.59 100.717 c
+1151.49 101.571 1151.94 102.899 1151.94 104.701 c
+1151.94 112.388 l
+1151.94 114.149 1152.15 115.029 1152.57 115.029 c
+1152.70 115.029 1153.22 114.956 1154.13 114.810 c
+1154.38 116.670 l
+1153.68 117.003 1152.58 117.170 1151.07 117.170 c
+1149.63 117.170 1148.77 116.576 1148.49 115.388 c
+h
+1147.86 112.951 m
+1147.86 108.560 l
+1146.83 108.529 l
+1145.81 108.529 1144.78 108.849 1143.74 109.490 c
+1142.70 110.131 1142.17 110.972 1142.17 112.013 c
+1142.17 112.753 1142.43 113.378 1142.96 113.888 c
+1143.48 114.399 1143.78 114.654 1143.86 114.654 c
+1145.14 114.654 1146.48 114.086 1147.86 112.951 c
+h
+1165.63 117.170 m
+1163.34 117.170 1161.43 116.321 1159.92 114.623 c
+1158.41 112.925 1157.66 110.784 1157.66 108.201 c
+1157.66 105.441 1158.41 103.289 1159.90 101.748 c
+1161.40 100.206 1163.48 99.4353 1166.16 99.4353 c
+1168.15 99.4353 1169.96 99.6176 1171.60 99.9822 c
+1171.60 102.857 l
+1169.19 102.149 1167.44 101.795 1166.35 101.795 c
+1165.44 101.795 1164.51 102.386 1163.56 103.568 c
+1162.60 104.750 1162.13 106.326 1162.13 108.295 c
+1162.13 110.201 1162.62 111.743 1163.60 112.920 c
+1164.58 114.097 1165.52 114.685 1166.44 114.685 c
+1167.85 114.685 1169.63 114.170 1171.78 113.138 c
+1171.78 116.263 l
+1169.79 116.868 1167.74 117.170 1165.63 117.170 c
+h
+1190.60 116.232 m
+1188.53 116.857 1186.43 117.170 1184.30 117.170 c
+1181.80 117.170 1179.76 116.339 1178.18 114.678 c
+1176.60 113.016 1175.82 110.862 1175.82 108.217 c
+1175.82 105.644 1176.51 103.534 1177.90 101.888 c
+1179.29 100.243 1181.07 99.4197 1183.24 99.4197 c
+1185.96 99.4197 1187.88 100.149 1188.99 101.607 c
+1190.11 103.066 1190.67 105.138 1190.67 107.826 c
+1190.66 108.779 l
+1179.96 108.779 l
+1180.40 112.810 1182.04 114.826 1184.88 114.826 c
+1186.16 114.826 1188.07 114.362 1190.60 113.435 c
+1190.60 116.232 l
+h
+1180.10 106.467 m
+1186.58 106.467 l
+1186.58 103.310 1185.40 101.732 1183.05 101.732 c
+1181.35 101.732 1180.37 103.310 1180.10 106.467 c
+h
+f
+2 J
+10.0000 M
+q
+[ 57.0000 0.00000 0.00000 67.0000 1135.25 21.9690 ] concat
+<<
+/ImageType 1
+/Width 57 /Height 67
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [57 0 0 67 0 0]
+/DataSource currentfile /ASCII85Decode filter /DCTDecode filter
+>> image
+s4IA0!"_al8O`[\!WW3$!!*'"s4[N@!!ic5#6k>;#6tJ?#m^kH'FbHY$Odmc'+Yct)BU"@)B9_>,VCGe
++tOrY*%3`p/2/e81c-:%3B]>W4>&EH1B6)/6NIK"#n.1M(_$ok1*IV\1,:U?1,:U?1,:U?1,:U?1,:U?
+1,:U?1,:U?1,:U?1,:U?1,:U?1,:U?1,:U?1,AmF!"fJ:6NB+K!?qLF&HMtG!WU(<*rl9A"T\W)!10ZOeE%*6F"?
+A;UOtZ1LbBV#mqFa(`=5<-7:2j.Ps"@2`NfY6UX@47n?3D;cHat='/U/@q9._B4u!oF*)PJGBeCZK7nr
+5LPUeEP*;,qQC!u,R\HRQV5C/hWN*81['d?O\@K2f_o0O6a2lBFdaQ^rf%8R-g>V&OjQ5OekiqC&o(2M
+Hp@n@XqZ"J6*ru?D!%;)SAnPdkC3+K>G'A1VH@gd&KnbA=M2II[Pa.Q$R$jD;USO``Vl6SpZEppG[^WcW]#)A'`Q#s
+>ai`&\eCE.%f\,!pc!8l3eA)]W
+YjX.:`Y%:&;2Rd_6YrEc.`0L2%58s:B$$`>n`S)MN(91i+>KaOcA!Vj8ePE.-61,$T=3NmEMp7,5g%/1
+K0^+!.cgisGHo^^!G^IGrgYWcMM-EW(fJ,V%J&.0&URt-YqC[XRTE;i4nJoenir+=-@a&sVKZWjX$4kN
+Lr%%%nq2<4X:T!pA?F5pbIC`"j]#oEJrrAbQn=Ts3r%+;E]oJnkW'8f4!,5=qetP>BJ)Sar(ktj\PZ(?Cs?Q!_L2214b(Q3rR*]h0t'7+/,g@o5_OglU<=+qKp'
+thu"a+'%8^=a.#19c2_5Y=64BbN#K.jc$fuD,PY&3Ko%P#WB/)d$urg"pX9fNf;2P?c5#N7'7:0HLnTl
+2dZ?AfCECKN+FU+LkAGW#3@ijI%pY/_W]H0DB;R*S7)-BCP_B>)J"RlY]d]c3Z4gq&Zf`tO:A391fZt8
+9:N(4qBVn+V\N@>,OnYnnXti&hf8:c9>LXqK,tBHB]1$TG9!$YbF?H26RcbVcD!ghl*n_XoRc)0DVb3e
+Sh!Dpf+]=l[fW1uCFY0t^=M[/>m&3r%TT$tQj/>h9/J!!S@B4XkG2',g"X1@q(@5CfRZM)*iHQ^"iL2HCr3]@CF(dY0AN
+g*5&Ju1&h4aC9Ifa?VMjERGVu
+AWiN#:+N'#dmJd023#PtEqKga\,6M(iRt%n;\UW$c*N*W9hk$J>^O#.'gK$?1;4>ZcaP.tP2!Fc#I>>;
+F2HBRfj;2c>)]6:*bt]TnO'haI;>X^,tV[WQ90mACsaq
+Y53&pA4V+g#S,O0\O8Se.J)CDQJLiPGR#"Fs6'e!&-Z:tN*
+0rr=]:pu;;RKbRU2"J$sLE7`O58.N>4TDM*V%pP+mEIYi_.rJA>`o@Q0H@!j9!03-0VB&"
+f]$(*RNfW\(MKT'XP3mUt=k_XOnB3S^Y=sOn)'%80rr?To^[r&ErrBearY/49<^"0=]T5hkQQp/Cf`~>
+Q
+q
+[ 36.0000 0.00000 0.00000 57.0000 561.952 435.984 ] concat
+<<
+/ImageType 1
+/Width 36 /Height 57
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [36 0 0 57 0 0]
+/DataSource currentfile /ASCII85Decode filter /FlateDecode filter
+>> image
+Gb"/gfh5jW&B=aCr"FWD9HGN?Y.3F+<7JGH9=3GZa6:%f/u.\'36"+iL`;6+R)ZN;6,XRfP9?e75))KGC\QV%7nK*D(n-n?c`-A4IAcA#li$eB\@]Ab\[f8`]KADC50NmSXge5!j;%![C*EQ\[f;_]"#7`[9A?@L]>k3BP7Y^
+bdCP(B!Zbj@%aEqVk^#^WMul%Z10c,L5#o(]MjoI4G!._i5"c2Dd7^=IGN`8`Poe6)&WWGRaIL;0`FsK
+S,:uGg\X55F86jVp("f\`ruk!^k*sb.k=7c9CqcHe'lc*s4r5j*"WIKo_8*lE-6?Cp:QISmYg@Y+7I(c
+(qb99J>M6tSFlOKo!Z6FSafDm1b(3XXTN]gFnPG#"U,'KV5L5hV5:#cVA9m]\Su\6FlBd2Xf]"=[CNgc
++sIakU$M(3Ch[Ttf&3)$:+&@U>bdp?RQgMoC4A*YHi9$6[mW'O!6Z%d4taMds8+\RL0*7pjDrZHM-QWn
+pl4Th`.c+:[C'!>W8cq#A_ISc\\('""J3q!Pod^2Z17;g(<)$e0TkCM]hP32P1&*C\Qul_F@R?fa
+T@68#.G_np2s;*$$7-uET"/gWqV)\i&8rBn$O\1(,8d@+Dj`q1A:.s"V&URgAS"kAP?9jNJj>]VZ>>ue.b=:lg(>YK<<4oNPQC!SXj?P
+iET>L-9RC9"pLU^iUX&df*j\$iVfX?*k`t.$;-@c9ZN4'HI7tU`.rZt#8XFJ3$][a]dR;MiE*/urK]ik
+8JAdVN^fW5iZo.$P#$o+lW'_<>C@57HrYL?`u`b=pnjB_$nr`CJVo\Te((R]KFQ^3P4>[;Tn8@SpnX-ZIDUkkOe
+EFt=K`oQ4ATU27[i52V2^OK'V&0K_kOCu]Z>[q8RrX,GO4?P_d3S=Wi&,T2HAQ.O,b:iT!_Sep7cg!qk
+aesrk;_OYrKS7:^`8HrDe-hCZO/:Yu_<8/ur,V'k8YR#CLrCpKoTC2OJ`kJ0;@Fnh)]9M2(Df"o50fB?
+lGYpq$O_$rj]i+9Ce,F8]-+&j`'gI1=&r@f:;-ErYW74^39Mh;*#Rp;fQ,>8osM38d`pur3&)6Yn7!%X
+%q1+n8UkZ`"fqdS-:,NRRTe;',jjd*$!1E)@l`K!s8W,!r/skT-'$K
+lD;a66pq.^6t?TK.Op<0jfM91p,UR-'n,,:$&"%f&tg9u\e*Hnd>NrLNCN:(8+g=#S:ICO6hDS!&7OnN
++iE518kL9CgnGVApsnXu'IbI[3+jF]i>`W:EqmLt&WZ3F+1MlNk;r:1qiN;+1P>Ot4$j1g6UY
+]a.$u66N$)MeD.A/Gue?q4o<1L:R1cqUO-HnaS?kc>6/+jmP"0&<>F[k*4qGjI4-B+no)F=fp8m_o(g+
+CNhuB"U*CeAc~>
+Q
+0 J
+1.45000 M
+newpath
+370.562 528.622 m
+370.562 505.497 l
+377.562 505.497 l
+380.448 505.497 382.482 505.987 383.664 506.966 c
+384.846 507.945 385.438 509.367 385.438 511.232 c
+385.438 514.315 383.880 516.502 380.766 517.794 c
+388.484 528.622 l
+383.453 528.622 l
+376.875 518.841 l
+374.812 518.841 l
+374.812 528.622 l
+370.562 528.622 l
+h
+374.812 516.388 m
+374.875 516.388 l
+379.000 516.388 381.062 514.768 381.062 511.529 c
+381.062 509.143 379.333 507.950 375.875 507.950 c
+374.812 507.950 l
+374.812 516.388 l
+h
+406.094 528.075 m
+404.031 528.700 401.932 529.013 399.797 529.013 c
+397.297 529.013 395.258 528.182 393.680 526.521 c
+392.102 524.859 391.312 522.706 391.312 520.060 c
+391.312 517.487 392.008 515.377 393.398 513.732 c
+394.789 512.086 396.568 511.263 398.734 511.263 c
+401.453 511.263 403.372 511.992 404.492 513.450 c
+405.612 514.909 406.172 516.982 406.172 519.669 c
+406.156 520.622 l
+395.453 520.622 l
+395.901 524.654 397.542 526.669 400.375 526.669 c
+401.656 526.669 403.562 526.206 406.094 525.279 c
+406.094 528.075 l
+h
+395.594 518.310 m
+402.078 518.310 l
+402.078 515.154 400.901 513.575 398.547 513.575 c
+396.849 513.575 395.865 515.154 395.594 518.310 c
+h
+412.250 528.622 m
+412.250 511.654 l
+416.312 511.654 l
+416.312 513.325 l
+417.156 511.961 418.755 511.279 421.109 511.279 c
+424.047 511.279 425.802 512.122 426.375 513.810 c
+427.417 512.112 429.104 511.263 431.438 511.263 c
+433.604 511.263 435.099 511.703 435.922 512.583 c
+436.745 513.463 437.156 514.695 437.156 516.279 c
+437.156 528.622 l
+433.062 528.622 l
+433.062 516.763 l
+433.062 514.825 432.297 513.857 430.766 513.857 c
+429.839 513.857 428.500 514.987 426.750 517.247 c
+426.750 528.622 l
+422.656 528.622 l
+422.656 516.763 l
+422.656 514.815 421.875 513.841 420.312 513.841 c
+419.427 513.841 418.099 514.976 416.328 517.247 c
+416.328 528.622 l
+412.250 528.622 l
+h
+450.531 529.013 m
+448.104 529.013 446.167 528.208 444.719 526.599 c
+443.271 524.989 442.547 522.836 442.547 520.138 c
+442.547 517.409 443.273 515.250 444.727 513.661 c
+446.180 512.073 448.151 511.279 450.641 511.279 c
+453.797 511.279 456.102 512.073 457.555 513.661 c
+459.008 515.250 459.734 517.398 459.734 520.107 c
+459.734 522.877 459.005 525.055 457.547 526.638 c
+456.089 528.221 453.750 529.013 450.531 529.013 c
+h
+450.578 526.700 m
+453.839 526.700 455.469 524.502 455.469 520.107 c
+455.469 515.763 453.859 513.591 450.641 513.591 c
+448.099 513.591 446.828 515.773 446.828 520.138 c
+446.828 524.513 448.078 526.700 450.578 526.700 c
+h
+470.406 529.013 m
+468.844 529.013 467.625 528.565 466.750 527.669 c
+465.875 526.773 465.438 525.529 465.438 523.935 c
+465.438 513.966 l
+463.312 513.966 l
+463.312 511.654 l
+465.438 511.654 l
+465.438 508.575 l
+469.516 508.185 l
+469.516 511.654 l
+473.953 511.654 l
+473.953 513.966 l
+469.516 513.966 l
+469.516 523.372 l
+469.516 525.591 470.141 526.700 471.391 526.700 c
+471.797 526.700 472.625 526.560 473.875 526.279 c
+473.875 528.622 l
+472.927 528.883 471.771 529.013 470.406 529.013 c
+h
+492.484 528.075 m
+490.422 528.700 488.323 529.013 486.188 529.013 c
+483.688 529.013 481.648 528.182 480.070 526.521 c
+478.492 524.859 477.703 522.706 477.703 520.060 c
+477.703 517.487 478.398 515.377 479.789 513.732 c
+481.180 512.086 482.958 511.263 485.125 511.263 c
+487.844 511.263 489.763 511.992 490.883 513.450 c
+492.003 514.909 492.562 516.982 492.562 519.669 c
+492.547 520.622 l
+481.844 520.622 l
+482.292 524.654 483.932 526.669 486.766 526.669 c
+488.047 526.669 489.953 526.206 492.484 525.279 c
+492.484 528.075 l
+h
+481.984 518.310 m
+488.469 518.310 l
+488.469 515.154 487.292 513.575 484.938 513.575 c
+483.240 513.575 482.255 515.154 481.984 518.310 c
+h
+510.438 528.622 m
+510.438 505.497 l
+524.359 505.497 l
+524.359 507.950 l
+514.719 507.950 l
+514.719 515.372 l
+522.797 515.372 l
+522.797 517.794 l
+514.719 517.794 l
+514.719 526.169 l
+525.031 526.169 l
+525.031 528.622 l
+510.438 528.622 l
+h
+527.938 528.622 m
+534.391 519.857 l
+528.125 511.654 l
+532.781 511.654 l
+537.203 517.497 l
+541.219 511.654 l
+545.219 511.654 l
+539.344 520.263 l
+545.734 528.622 l
+541.078 528.622 l
+536.469 522.575 l
+532.031 528.622 l
+527.938 528.622 l
+h
+564.469 528.075 m
+562.406 528.700 560.307 529.013 558.172 529.013 c
+555.672 529.013 553.633 528.182 552.055 526.521 c
+550.477 524.859 549.688 522.706 549.688 520.060 c
+549.688 517.487 550.383 515.377 551.773 513.732 c
+553.164 512.086 554.943 511.263 557.109 511.263 c
+559.828 511.263 561.747 511.992 562.867 513.450 c
+563.987 514.909 564.547 516.982 564.547 519.669 c
+564.531 520.622 l
+553.828 520.622 l
+554.276 524.654 555.917 526.669 558.750 526.669 c
+560.031 526.669 561.938 526.206 564.469 525.279 c
+564.469 528.075 l
+h
+553.969 518.310 m
+560.453 518.310 l
+560.453 515.154 559.276 513.575 556.922 513.575 c
+555.224 513.575 554.240 515.154 553.969 518.310 c
+h
+577.250 529.013 m
+574.958 529.013 573.057 528.164 571.547 526.466 c
+570.036 524.768 569.281 522.627 569.281 520.044 c
+569.281 517.284 570.029 515.133 571.523 513.591 c
+573.018 512.049 575.104 511.279 577.781 511.279 c
+579.771 511.279 581.583 511.461 583.219 511.825 c
+583.219 514.700 l
+580.812 513.992 579.062 513.638 577.969 513.638 c
+577.062 513.638 576.133 514.229 575.180 515.411 c
+574.227 516.594 573.750 518.169 573.750 520.138 c
+573.750 522.044 574.240 523.586 575.219 524.763 c
+576.198 525.940 577.146 526.529 578.062 526.529 c
+579.469 526.529 581.250 526.013 583.406 524.982 c
+583.406 528.107 l
+581.417 528.711 579.365 529.013 577.250 529.013 c
+h
+599.391 528.622 m
+599.391 526.904 l
+598.422 528.310 596.438 529.013 593.438 529.013 c
+591.958 529.013 590.781 528.547 589.906 527.614 c
+589.031 526.682 588.594 525.424 588.594 523.841 c
+588.594 511.654 l
+592.672 511.654 l
+592.672 522.841 l
+592.672 524.112 592.857 525.015 593.227 525.552 c
+593.596 526.088 593.880 526.357 594.078 526.357 c
+595.953 526.357 597.724 525.122 599.391 522.654 c
+599.391 511.654 l
+603.469 511.654 l
+603.469 528.622 l
+599.391 528.622 l
+h
+615.500 529.013 m
+613.938 529.013 612.719 528.565 611.844 527.669 c
+610.969 526.773 610.531 525.529 610.531 523.935 c
+610.531 513.966 l
+608.406 513.966 l
+608.406 511.654 l
+610.531 511.654 l
+610.531 508.575 l
+614.609 508.185 l
+614.609 511.654 l
+619.047 511.654 l
+619.047 513.966 l
+614.609 513.966 l
+614.609 523.372 l
+614.609 525.591 615.234 526.700 616.484 526.700 c
+616.891 526.700 617.719 526.560 618.969 526.279 c
+618.969 528.622 l
+618.021 528.883 616.865 529.013 615.500 529.013 c
+h
+624.141 528.622 m
+624.141 511.654 l
+628.219 511.654 l
+628.219 528.622 l
+624.141 528.622 l
+h
+624.141 508.575 m
+624.141 505.497 l
+628.219 505.497 l
+628.219 508.575 l
+624.141 508.575 l
+h
+641.797 529.013 m
+639.370 529.013 637.432 528.208 635.984 526.599 c
+634.536 524.989 633.812 522.836 633.812 520.138 c
+633.812 517.409 634.539 515.250 635.992 513.661 c
+637.445 512.073 639.417 511.279 641.906 511.279 c
+645.062 511.279 647.367 512.073 648.820 513.661 c
+650.273 515.250 651.000 517.398 651.000 520.107 c
+651.000 522.877 650.271 525.055 648.812 526.638 c
+647.354 528.221 645.016 529.013 641.797 529.013 c
+h
+641.844 526.700 m
+645.104 526.700 646.734 524.502 646.734 520.107 c
+646.734 515.763 645.125 513.591 641.906 513.591 c
+639.365 513.591 638.094 515.773 638.094 520.138 c
+638.094 524.513 639.344 526.700 641.844 526.700 c
+h
+656.578 528.622 m
+656.578 511.654 l
+660.656 511.654 l
+660.656 513.388 l
+661.615 511.982 663.271 511.279 665.625 511.279 c
+667.760 511.279 669.266 511.745 670.141 512.677 c
+671.016 513.609 671.453 514.862 671.453 516.435 c
+671.453 528.622 l
+667.375 528.622 l
+667.375 517.435 l
+667.375 516.174 667.190 515.276 666.820 514.739 c
+666.451 514.203 665.839 513.935 664.984 513.935 c
+663.766 513.935 662.323 515.169 660.656 517.638 c
+660.656 528.622 l
+656.578 528.622 l
+h
+690.000 528.622 m
+690.000 505.497 l
+694.219 505.497 l
+704.859 521.825 l
+704.859 505.497 l
+708.672 505.497 l
+708.672 528.622 l
+704.469 528.622 l
+693.797 512.279 l
+693.812 528.622 l
+690.000 528.622 l
+h
+722.141 529.013 m
+719.714 529.013 717.776 528.208 716.328 526.599 c
+714.880 524.989 714.156 522.836 714.156 520.138 c
+714.156 517.409 714.883 515.250 716.336 513.661 c
+717.789 512.073 719.760 511.279 722.250 511.279 c
+725.406 511.279 727.711 512.073 729.164 513.661 c
+730.617 515.250 731.344 517.398 731.344 520.107 c
+731.344 522.877 730.615 525.055 729.156 526.638 c
+727.698 528.221 725.359 529.013 722.141 529.013 c
+h
+722.188 526.700 m
+725.448 526.700 727.078 524.502 727.078 520.107 c
+727.078 515.763 725.469 513.591 722.250 513.591 c
+719.708 513.591 718.438 515.773 718.438 520.138 c
+718.438 524.513 719.688 526.700 722.188 526.700 c
+h
+747.812 528.622 m
+747.812 527.357 l
+747.229 528.461 745.344 529.013 742.156 529.013 c
+740.115 529.013 738.508 528.268 737.336 526.779 c
+736.164 525.289 735.578 523.252 735.578 520.669 c
+735.578 517.846 736.242 515.575 737.570 513.857 c
+738.898 512.138 740.646 511.279 742.812 511.279 c
+745.490 511.279 747.156 511.664 747.812 512.435 c
+747.812 503.950 l
+751.906 503.950 l
+751.906 528.622 l
+747.812 528.622 l
+h
+747.812 515.700 m
+746.219 514.294 744.708 513.591 743.281 513.591 c
+741.000 513.591 739.859 515.846 739.859 520.357 c
+739.859 524.325 740.839 526.310 742.797 526.310 c
+744.505 526.310 746.177 525.377 747.812 523.513 c
+747.812 515.700 l
+h
+772.266 528.075 m
+770.203 528.700 768.104 529.013 765.969 529.013 c
+763.469 529.013 761.430 528.182 759.852 526.521 c
+758.273 524.859 757.484 522.706 757.484 520.060 c
+757.484 517.487 758.180 515.377 759.570 513.732 c
+760.961 512.086 762.740 511.263 764.906 511.263 c
+767.625 511.263 769.544 511.992 770.664 513.450 c
+771.784 514.909 772.344 516.982 772.344 519.669 c
+772.328 520.622 l
+761.625 520.622 l
+762.073 524.654 763.714 526.669 766.547 526.669 c
+767.828 526.669 769.734 526.206 772.266 525.279 c
+772.266 528.075 l
+h
+761.766 518.310 m
+768.250 518.310 l
+768.250 515.154 767.073 513.575 764.719 513.575 c
+763.021 513.575 762.036 515.154 761.766 518.310 c
+h
+782.922 529.013 m
+781.516 529.013 779.807 528.685 777.797 528.029 c
+777.797 524.716 l
+780.474 526.039 782.224 526.700 783.047 526.700 c
+783.932 526.700 784.667 526.461 785.250 525.982 c
+785.833 525.502 786.125 524.904 786.125 524.185 c
+786.125 523.133 785.307 522.263 783.672 521.575 c
+781.875 520.810 l
+779.219 519.706 777.891 518.117 777.891 516.044 c
+777.891 514.565 778.414 513.401 779.461 512.552 c
+780.508 511.703 781.943 511.279 783.766 511.279 c
+785.380 511.279 786.885 511.409 788.281 511.669 c
+788.922 511.794 l
+788.922 514.669 l
+786.536 513.950 784.839 513.591 783.828 513.591 c
+782.516 513.591 781.859 514.310 781.859 515.747 c
+781.859 516.674 782.609 517.456 784.109 518.091 c
+785.594 518.716 l
+787.271 519.424 788.458 520.172 789.156 520.958 c
+789.854 521.745 790.203 522.726 790.203 523.904 c
+790.203 525.393 789.615 526.617 788.438 527.575 c
+787.260 528.534 785.422 529.013 782.922 529.013 c
+h
+f
+2 J
+10.0000 M
+q
+[ 36.0000 0.00000 0.00000 57.0000 627.048 435.984 ] concat
+<<
+/ImageType 1
+/Width 36 /Height 57
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [36 0 0 57 0 0]
+/DataSource currentfile /ASCII85Decode filter /FlateDecode filter
+>> image
+Gb"/gfh5jW&B=aCr"FWD9HGN?Y.3F+<7JGH9=3GZa6:%f/u.\'36"+iL`;6+R)ZN;6,XRfP9?e75))KGC\QV%7nK*D(n-n?c`-A4IAcA#li$eB\@]Ab\[f8`]KADC50NmSXge5!j;%![C*EQ\[f;_]"#7`[9A?@L]>k3BP7Y^
+bdCP(B!Zbj@%aEqVk^#^WMul%Z10c,L5#o(]MjoI4G!._i5"c2Dd7^=IGN`8`Poe6)&WWGRaIL;0`FsK
+S,:uGg\X55F86jVp("f\`ruk!^k*sb.k=7c9CqcHe'lc*s4r5j*"WIKo_8*lE-6?Cp:QISmYg@Y+7I(c
+(qb99J>M6tSFlOKo!Z6FSafDm1b(3XXTN]gFnPG#"U,'KV5L5hV5:#cVA9m]\Su\6FlBd2Xf]"=[CNgc
++sIakU$M(3Ch[Ttf&3)$:+&@U>bdp?RQgMoC4A*YHi9$6[mW'O!6Z%d4taMds8+\RL0*7pjDrZHM-QWn
+pl4Th`.c+:[C'!>W8cq#A_ISc\\('""J3q!Pod^2Z17;g(<)$e0TkCM]hP32P1&*C\Qul_F@R?fa
+T@68#.G_np2s;*$$7-uET"/gWqV)\i&8rBn$O\1(,8d@+Dj`q1A:.s"V&URgAS"kAP?9jNJj>]VZ>>ue.b=:lg(>YK<<4oNPQC!SXj?P
+iET>L-9RC9"pLU^iUX&df*j\$iVfX?*k`t.$;-@c9ZN4'HI7tU`.rZt#8XFJ3$][a]dR;MiE*/urK]ik
+8JAdVN^fW5iZo.$P#$o+lW'_<>C@57HrYL?`u`b=pnjB_$nr`CJVo\Te((R]KFQ^3P4>[;Tn8@SpnX-ZIDUkkOe
+EFt=K`oQ4ATU27[i52V2^OK'V&0K_kOCu]Z>[q8RrX,GO4?P_d3S=Wi&,T2HAQ.O,b:iT!_Sep7cg!qk
+aesrk;_OYrKS7:^`8HrDe-hCZO/:Yu_<8/ur,V'k8YR#CLrCpKoTC2OJ`kJ0;@Fnh)]9M2(Df"o50fB?
+lGYpq$O_$rj]i+9Ce,F8]-+&j`'gI1=&r@f:;-ErYW74^39Mh;*#Rp;fQ,>8osM38d`pur3&)6Yn7!%X
+%q1+n8UkZ`"fqdS-:,NRRTe;',jjd*$!1E)@l`K!s8W,!r/skT-'$K
+lD;a66pq.^6t?TK.Op<0jfM91p,UR-'n,,:$&"%f&tg9u\e*Hnd>NrLNCN:(8+g=#S:ICO6hDS!&7OnN
++iE518kL9CgnGVApsnXu'IbI[3+jF]i>`W:EqmLt&WZ3F+1MlNk;r:1qiN;+1P>Ot4$j1g6UY
+]a.$u66N$)MeD.A/Gue?q4o<1L:R1cqUO-HnaS?kc>6/+jmP"0&<>F[k*4qGjI4-B+no)F=fp8m_o(g+
+CNhuB"U*CeAc~>
+Q
+q
+[ 36.0000 0.00000 0.00000 57.0000 496.857 435.984 ] concat
+<<
+/ImageType 1
+/Width 36 /Height 57
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [36 0 0 57 0 0]
+/DataSource currentfile /ASCII85Decode filter /FlateDecode filter
+>> image
+Gb"/gfh5jW&B=aCr"FWD9HGN?Y.3F+<7JGH9=3GZa6:%f/u.\'36"+iL`;6+R)ZN;6,XRfP9?e75))KGC\QV%7nK*D(n-n?c`-A4IAcA#li$eB\@]Ab\[f8`]KADC50NmSXge5!j;%![C*EQ\[f;_]"#7`[9A?@L]>k3BP7Y^
+bdCP(B!Zbj@%aEqVk^#^WMul%Z10c,L5#o(]MjoI4G!._i5"c2Dd7^=IGN`8`Poe6)&WWGRaIL;0`FsK
+S,:uGg\X55F86jVp("f\`ruk!^k*sb.k=7c9CqcHe'lc*s4r5j*"WIKo_8*lE-6?Cp:QISmYg@Y+7I(c
+(qb99J>M6tSFlOKo!Z6FSafDm1b(3XXTN]gFnPG#"U,'KV5L5hV5:#cVA9m]\Su\6FlBd2Xf]"=[CNgc
++sIakU$M(3Ch[Ttf&3)$:+&@U>bdp?RQgMoC4A*YHi9$6[mW'O!6Z%d4taMds8+\RL0*7pjDrZHM-QWn
+pl4Th`.c+:[C'!>W8cq#A_ISc\\('""J3q!Pod^2Z17;g(<)$e0TkCM]hP32P1&*C\Qul_F@R?fa
+T@68#.G_np2s;*$$7-uET"/gWqV)\i&8rBn$O\1(,8d@+Dj`q1A:.s"V&URgAS"kAP?9jNJj>]VZ>>ue.b=:lg(>YK<<4oNPQC!SXj?P
+iET>L-9RC9"pLU^iUX&df*j\$iVfX?*k`t.$;-@c9ZN4'HI7tU`.rZt#8XFJ3$][a]dR;MiE*/urK]ik
+8JAdVN^fW5iZo.$P#$o+lW'_<>C@57HrYL?`u`b=pnjB_$nr`CJVo\Te((R]KFQ^3P4>[;Tn8@SpnX-ZIDUkkOe
+EFt=K`oQ4ATU27[i52V2^OK'V&0K_kOCu]Z>[q8RrX,GO4?P_d3S=Wi&,T2HAQ.O,b:iT!_Sep7cg!qk
+aesrk;_OYrKS7:^`8HrDe-hCZO/:Yu_<8/ur,V'k8YR#CLrCpKoTC2OJ`kJ0;@Fnh)]9M2(Df"o50fB?
+lGYpq$O_$rj]i+9Ce,F8]-+&j`'gI1=&r@f:;-ErYW74^39Mh;*#Rp;fQ,>8osM38d`pur3&)6Yn7!%X
+%q1+n8UkZ`"fqdS-:,NRRTe;',jjd*$!1E)@l`K!s8W,!r/skT-'$K
+lD;a66pq.^6t?TK.Op<0jfM91p,UR-'n,,:$&"%f&tg9u\e*Hnd>NrLNCN:(8+g=#S:ICO6hDS!&7OnN
++iE518kL9CgnGVApsnXu'IbI[3+jF]i>`W:EqmLt&WZ3F+1MlNk;r:1qiN;+1P>Ot4$j1g6UY
+]a.$u66N$)MeD.A/Gue?q4o<1L:R1cqUO-HnaS?kc>6/+jmP"0&<>F[k*4qGjI4-B+no)F=fp8m_o(g+
+CNhuB"U*CeAc~>
+Q
+q
+[ 36.0000 0.00000 0.00000 57.0000 431.762 435.984 ] concat
+<<
+/ImageType 1
+/Width 36 /Height 57
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [36 0 0 57 0 0]
+/DataSource currentfile /ASCII85Decode filter /FlateDecode filter
+>> image
+Gb"/gfh5jW&B=aCr"FWD9HGN?Y.3F+<7JGH9=3GZa6:%f/u.\'36"+iL`;6+R)ZN;6,XRfP9?e75))KGC\QV%7nK*D(n-n?c`-A4IAcA#li$eB\@]Ab\[f8`]KADC50NmSXge5!j;%![C*EQ\[f;_]"#7`[9A?@L]>k3BP7Y^
+bdCP(B!Zbj@%aEqVk^#^WMul%Z10c,L5#o(]MjoI4G!._i5"c2Dd7^=IGN`8`Poe6)&WWGRaIL;0`FsK
+S,:uGg\X55F86jVp("f\`ruk!^k*sb.k=7c9CqcHe'lc*s4r5j*"WIKo_8*lE-6?Cp:QISmYg@Y+7I(c
+(qb99J>M6tSFlOKo!Z6FSafDm1b(3XXTN]gFnPG#"U,'KV5L5hV5:#cVA9m]\Su\6FlBd2Xf]"=[CNgc
++sIakU$M(3Ch[Ttf&3)$:+&@U>bdp?RQgMoC4A*YHi9$6[mW'O!6Z%d4taMds8+\RL0*7pjDrZHM-QWn
+pl4Th`.c+:[C'!>W8cq#A_ISc\\('""J3q!Pod^2Z17;g(<)$e0TkCM]hP32P1&*C\Qul_F@R?fa
+T@68#.G_np2s;*$$7-uET"/gWqV)\i&8rBn$O\1(,8d@+Dj`q1A:.s"V&URgAS"kAP?9jNJj>]VZ>>ue.b=:lg(>YK<<4oNPQC!SXj?P
+iET>L-9RC9"pLU^iUX&df*j\$iVfX?*k`t.$;-@c9ZN4'HI7tU`.rZt#8XFJ3$][a]dR;MiE*/urK]ik
+8JAdVN^fW5iZo.$P#$o+lW'_<>C@57HrYL?`u`b=pnjB_$nr`CJVo\Te((R]KFQ^3P4>[;Tn8@SpnX-ZIDUkkOe
+EFt=K`oQ4ATU27[i52V2^OK'V&0K_kOCu]Z>[q8RrX,GO4?P_d3S=Wi&,T2HAQ.O,b:iT!_Sep7cg!qk
+aesrk;_OYrKS7:^`8HrDe-hCZO/:Yu_<8/ur,V'k8YR#CLrCpKoTC2OJ`kJ0;@Fnh)]9M2(Df"o50fB?
+lGYpq$O_$rj]i+9Ce,F8]-+&j`'gI1=&r@f:;-ErYW74^39Mh;*#Rp;fQ,>8osM38d`pur3&)6Yn7!%X
+%q1+n8UkZ`"fqdS-:,NRRTe;',jjd*$!1E)@l`K!s8W,!r/skT-'$K
+lD;a66pq.^6t?TK.Op<0jfM91p,UR-'n,,:$&"%f&tg9u\e*Hnd>NrLNCN:(8+g=#S:ICO6hDS!&7OnN
++iE518kL9CgnGVApsnXu'IbI[3+jF]i>`W:EqmLt&WZ3F+1MlNk;r:1qiN;+1P>Ot4$j1g6UY
+]a.$u66N$)MeD.A/Gue?q4o<1L:R1cqUO-HnaS?kc>6/+jmP"0&<>F[k*4qGjI4-B+no)F=fp8m_o(g+
+CNhuB"U*CeAc~>
+Q
+q
+[ 36.0000 0.00000 0.00000 57.0000 688.952 435.984 ] concat
+<<
+/ImageType 1
+/Width 36 /Height 57
+/BitsPerComponent 8
+/Decode [0 1 0 1 0 1]
+/ImageMatrix [36 0 0 57 0 0]
+/DataSource currentfile /ASCII85Decode filter /FlateDecode filter
+>> image
+Gb"/gfh5jW&B=aCr"FWD9HGN?Y.3F+<7JGH9=3GZa6:%f/u.\'36"+iL`;6+R)ZN;6,XRfP9?e75))KGC\QV%7nK*D(n-n?c`-A4IAcA#li$eB\@]Ab\[f8`]KADC50NmSXge5!j;%![C*EQ\[f;_]"#7`[9A?@L]>k3BP7Y^
+bdCP(B!Zbj@%aEqVk^#^WMul%Z10c,L5#o(]MjoI4G!._i5"c2Dd7^=IGN`8`Poe6)&WWGRaIL;0`FsK
+S,:uGg\X55F86jVp("f\`ruk!^k*sb.k=7c9CqcHe'lc*s4r5j*"WIKo_8*lE-6?Cp:QISmYg@Y+7I(c
+(qb99J>M6tSFlOKo!Z6FSafDm1b(3XXTN]gFnPG#"U,'KV5L5hV5:#cVA9m]\Su\6FlBd2Xf]"=[CNgc
++sIakU$M(3Ch[Ttf&3)$:+&@U>bdp?RQgMoC4A*YHi9$6[mW'O!6Z%d4taMds8+\RL0*7pjDrZHM-QWn
+pl4Th`.c+:[C'!>W8cq#A_ISc\\('""J3q!Pod^2Z17;g(<)$e0TkCM]hP32P1&*C\Qul_F@R?fa
+T@68#.G_np2s;*$$7-uET"/gWqV)\i&8rBn$O\1(,8d@+Dj`q1A:.s"V&URgAS"kAP?9jNJj>]VZ>>ue.b=:lg(>YK<<4oNPQC!SXj?P
+iET>L-9RC9"pLU^iUX&df*j\$iVfX?*k`t.$;-@c9ZN4'HI7tU`.rZt#8XFJ3$][a]dR;MiE*/urK]ik
+8JAdVN^fW5iZo.$P#$o+lW'_<>C@57HrYL?`u`b=pnjB_$nr`CJVo\Te((R]KFQ^3P4>[;Tn8@SpnX-ZIDUkkOe
+EFt=K`oQ4ATU27[i52V2^OK'V&0K_kOCu]Z>[q8RrX,GO4?P_d3S=Wi&,T2HAQ.O,b:iT!_Sep7cg!qk
+aesrk;_OYrKS7:^`8HrDe-hCZO/:Yu_<8/ur,V'k8YR#CLrCpKoTC2OJ`kJ0;@Fnh)]9M2(Df"o50fB?
+lGYpq$O_$rj]i+9Ce,F8]-+&j`'gI1=&r@f:;-ErYW74^39Mh;*#Rp;fQ,>8osM38d`pur3&)6Yn7!%X
+%q1+n8UkZ`"fqdS-:,NRRTe;',jjd*$!1E)@l`K!s8W,!r/skT-'$K
+lD;a66pq.^6t?TK.Op<0jfM91p,UR-'n,,:$&"%f&tg9u\e*Hnd>NrLNCN:(8+g=#S:ICO6hDS!&7OnN
++iE518kL9CgnGVApsnXu'IbI[3+jF]i>`W:EqmLt&WZ3F+1MlNk;r:1qiN;+1P>Ot4$j1g6UY
+]a.$u66N$)MeD.A/Gue?q4o<1L:R1cqUO-HnaS?kc>6/+jmP"0&<>F[k*4qGjI4-B+no)F=fp8m_o(g+
+CNhuB"U*CeAc~>
+Q
+5.00000 w
+0 J
+1.45000 M
+newpath
+490.000 154.997 m
+490.000 168.497 l
+S
+newpath
+490.000 184.997 m
+499.000 166.997 l
+481.000 166.997 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+5.00000 w
+0 J
+1.45000 M
+newpath
+664.000 184.995 m
+664.000 171.506 l
+S
+newpath
+664.000 155.006 m
+655.000 173.006 l
+673.000 173.006 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+5.00000 w
+0 J
+1.45000 M
+newpath
+492.000 235.995 m
+492.000 249.495 l
+S
+newpath
+492.000 265.995 m
+501.000 247.995 l
+483.000 247.995 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+5.00000 w
+0 J
+1.45000 M
+newpath
+665.000 266.022 m
+665.000 252.536 l
+S
+newpath
+665.000 236.036 m
+656.000 254.036 l
+674.000 254.036 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+421.967 291.500 m
+369.150 291.500 l
+S
+newpath
+354.025 291.500 m
+370.525 299.750 l
+370.525 283.250 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+354.023 210.500 m
+406.842 210.500 l
+S
+newpath
+421.967 210.500 m
+405.467 202.250 l
+405.467 218.750 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+258.000 320.125 m
+258.000 627.750 l
+534.250 627.750 l
+S
+newpath
+258.000 305.000 m
+249.750 321.500 l
+266.250 321.500 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+724.000 210.500 m
+776.848 210.500 l
+S
+newpath
+791.973 210.500 m
+775.473 202.250 l
+775.473 218.750 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+724.020 142.600 m
+823.330 142.600 l
+823.330 178.858 l
+S
+newpath
+823.330 193.983 m
+831.580 177.483 l
+815.080 177.483 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+776.861 291.500 m
+724.000 291.500 l
+S
+newpath
+791.986 291.500 m
+775.486 283.250 l
+775.486 299.750 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+888.000 305.000 m
+888.000 627.750 l
+639.853 627.750 l
+S
+newpath
+624.728 627.750 m
+641.228 636.000 l
+641.228 619.500 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+934.764 193.976 m
+934.764 69.1000 l
+1020.33 69.1000 l
+S
+newpath
+1035.45 69.1000 m
+1018.95 60.8500 l
+1018.95 77.3500 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+4.00000 w
+0 J
+1.45000 M
+newpath
+664.624 88.8720 m
+664.624 39.1000 l
+1048.39 39.1000 l
+S
+newpath
+664.624 103.997 m
+672.874 87.4970 l
+656.374 87.4970 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+3.00000 w
+0 J
+1.45000 M
+newpath
+593.589 424.024 m
+608.725 380.972 l
+S
+newpath
+589.029 436.995 m
+601.079 425.332 l
+586.928 420.357 l
+h
+f
+newpath
+613.285 368.000 m
+601.235 379.663 l
+615.386 384.638 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+3.00000 w
+0 J
+1.45000 M
+newpath
+636.944 422.462 m
+629.421 381.524 l
+S
+newpath
+639.429 435.986 m
+644.095 419.877 l
+629.342 422.588 l
+h
+f
+newpath
+626.936 368.000 m
+622.270 384.108 l
+637.023 381.397 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+3.00000 w
+0 J
+1.45000 M
+newpath
+505.635 422.532 m
+496.968 381.454 l
+S
+newpath
+508.473 435.986 m
+512.715 419.761 l
+498.038 422.857 l
+h
+f
+newpath
+494.130 368.000 m
+489.888 384.225 l
+504.565 381.129 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+3.00000 w
+0 J
+1.45000 M
+newpath
+462.670 422.907 m
+476.237 381.079 l
+S
+newpath
+458.428 435.986 m
+470.190 424.032 l
+455.922 419.404 l
+h
+f
+newpath
+480.479 368.000 m
+468.717 379.954 l
+482.985 384.582 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+3.00000 w
+0 J
+1.45000 M
+newpath
+706.500 422.236 m
+706.500 381.750 l
+S
+newpath
+706.500 435.986 m
+714.000 420.986 l
+699.000 420.986 l
+h
+f
+newpath
+706.500 368.000 m
+699.000 383.000 l
+714.000 383.000 l
+h
+f
+1.00000 w
+2 J
+10.0000 M
+Q
+[ 1.00000 0.00000 0.00000 1.00000 0.00000 0.00000 ] defaultmatrix matrix concatmatrix setmatrix
+cliprestore
+end end restore showpage
+
+%%Trailer
+%%EOF
diff --git a/background/figures/workflow-managementsystem.pdf b/background/figures/workflow-managementsystem.pdf
new file mode 100644
index 0000000..440ce4e
Binary files /dev/null and b/background/figures/workflow-managementsystem.pdf differ
diff --git a/background/figures/workflow-managementsystem01.graphml b/background/figures/workflow-managementsystem01.graphml
new file mode 100644
index 0000000..1b6ea85
--- /dev/null
+++ b/background/figures/workflow-managementsystem01.graphml
@@ -0,0 +1,1033 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Engine
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Scheduler
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Execution Layer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Sub-System 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ...
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Sub-System 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Prediction
+Service
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Historic Data
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Monitoring
+Logging
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ User Interface
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Remote Execution Nodes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <?xml version="1.0" encoding="utf-8"?>
+<svg version="1.1"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+ x="0px" y="0px" width="41px" height="48px" viewBox="-0.875 -0.887 41 48" enable-background="new -0.875 -0.887 41 48"
+ xml:space="preserve">
+<defs>
+</defs>
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-979.1445" x2="682.0508" y2="-979.1445" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#3C89C9"/>
+ <stop offset="0.1482" style="stop-color:#60A6DD"/>
+ <stop offset="0.3113" style="stop-color:#81C1F0"/>
+ <stop offset="0.4476" style="stop-color:#95D1FB"/>
+ <stop offset="0.5394" style="stop-color:#9CD7FF"/>
+ <stop offset="0.636" style="stop-color:#98D4FD"/>
+ <stop offset="0.7293" style="stop-color:#8DCAF6"/>
+ <stop offset="0.8214" style="stop-color:#79BBEB"/>
+ <stop offset="0.912" style="stop-color:#5EA5DC"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_1_)" d="M19.625,36.763C8.787,36.763,0,34.888,0,32.575v10c0,2.313,8.787,4.188,19.625,4.188
+ c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,34.888,30.464,36.763,19.625,36.763z"/>
+<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-973.1445" x2="682.0508" y2="-973.1445" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#9CD7FF"/>
+ <stop offset="0.0039" style="stop-color:#9DD7FF"/>
+ <stop offset="0.2273" style="stop-color:#BDE5FF"/>
+ <stop offset="0.4138" style="stop-color:#D1EEFF"/>
+ <stop offset="0.5394" style="stop-color:#D9F1FF"/>
+ <stop offset="0.6155" style="stop-color:#D5EFFE"/>
+ <stop offset="0.6891" style="stop-color:#C9E7FA"/>
+ <stop offset="0.7617" style="stop-color:#B6DAF3"/>
+ <stop offset="0.8337" style="stop-color:#9AC8EA"/>
+ <stop offset="0.9052" style="stop-color:#77B0DD"/>
+ <stop offset="0.9754" style="stop-color:#4D94CF"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_2_)" d="M19.625,36.763c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.927-18.396,3.927
+ c-9.481,0-17.396-1.959-18.396-3.927l-1.229,2C0,34.888,8.787,36.763,19.625,36.763z"/>
+<path fill="#3C89C9" d="M19.625,26.468c10.16,0,19.625,2.775,19.625,2.775c-0.375,2.721-5.367,5.438-19.554,5.438
+ c-12.125,0-18.467-2.484-19.541-4.918C-0.127,29.125,9.465,26.468,19.625,26.468z"/>
+<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-965.6948" x2="682.0508" y2="-965.6948" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#3C89C9"/>
+ <stop offset="0.1482" style="stop-color:#60A6DD"/>
+ <stop offset="0.3113" style="stop-color:#81C1F0"/>
+ <stop offset="0.4476" style="stop-color:#95D1FB"/>
+ <stop offset="0.5394" style="stop-color:#9CD7FF"/>
+ <stop offset="0.636" style="stop-color:#98D4FD"/>
+ <stop offset="0.7293" style="stop-color:#8DCAF6"/>
+ <stop offset="0.8214" style="stop-color:#79BBEB"/>
+ <stop offset="0.912" style="stop-color:#5EA5DC"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_3_)" d="M19.625,23.313C8.787,23.313,0,21.438,0,19.125v10c0,2.313,8.787,4.188,19.625,4.188
+ c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,21.438,30.464,23.313,19.625,23.313z"/>
+<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-959.6948" x2="682.0508" y2="-959.6948" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#9CD7FF"/>
+ <stop offset="0.0039" style="stop-color:#9DD7FF"/>
+ <stop offset="0.2273" style="stop-color:#BDE5FF"/>
+ <stop offset="0.4138" style="stop-color:#D1EEFF"/>
+ <stop offset="0.5394" style="stop-color:#D9F1FF"/>
+ <stop offset="0.6155" style="stop-color:#D5EFFE"/>
+ <stop offset="0.6891" style="stop-color:#C9E7FA"/>
+ <stop offset="0.7617" style="stop-color:#B6DAF3"/>
+ <stop offset="0.8337" style="stop-color:#9AC8EA"/>
+ <stop offset="0.9052" style="stop-color:#77B0DD"/>
+ <stop offset="0.9754" style="stop-color:#4D94CF"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_4_)" d="M19.625,23.313c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
+ c-9.481,0-17.396-1.959-18.396-3.926l-1.229,2C0,21.438,8.787,23.313,19.625,23.313z"/>
+<path fill="#3C89C9" d="M19.476,13.019c10.161,0,19.625,2.775,19.625,2.775c-0.375,2.721-5.367,5.438-19.555,5.438
+ c-12.125,0-18.467-2.485-19.541-4.918C-0.277,15.674,9.316,13.019,19.476,13.019z"/>
+<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-952.4946" x2="682.0508" y2="-952.4946" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#3C89C9"/>
+ <stop offset="0.1482" style="stop-color:#60A6DD"/>
+ <stop offset="0.3113" style="stop-color:#81C1F0"/>
+ <stop offset="0.4476" style="stop-color:#95D1FB"/>
+ <stop offset="0.5394" style="stop-color:#9CD7FF"/>
+ <stop offset="0.636" style="stop-color:#98D4FD"/>
+ <stop offset="0.7293" style="stop-color:#8DCAF6"/>
+ <stop offset="0.8214" style="stop-color:#79BBEB"/>
+ <stop offset="0.912" style="stop-color:#5EA5DC"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_5_)" d="M19.625,10.113C8.787,10.113,0,8.238,0,5.925v10c0,2.313,8.787,4.188,19.625,4.188
+ c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,8.238,30.464,10.113,19.625,10.113z"/>
+<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-946.4946" x2="682.0508" y2="-946.4946" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#9CD7FF"/>
+ <stop offset="0.0039" style="stop-color:#9DD7FF"/>
+ <stop offset="0.2273" style="stop-color:#BDE5FF"/>
+ <stop offset="0.4138" style="stop-color:#D1EEFF"/>
+ <stop offset="0.5394" style="stop-color:#D9F1FF"/>
+ <stop offset="0.6155" style="stop-color:#D5EFFE"/>
+ <stop offset="0.6891" style="stop-color:#C9E7FA"/>
+ <stop offset="0.7617" style="stop-color:#B6DAF3"/>
+ <stop offset="0.8337" style="stop-color:#9AC8EA"/>
+ <stop offset="0.9052" style="stop-color:#77B0DD"/>
+ <stop offset="0.9754" style="stop-color:#4D94CF"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<path fill="url(#SVGID_6_)" d="M19.625,10.113c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
+ c-9.481,0-17.396-1.959-18.396-3.926L0,5.925C0,8.238,8.787,10.113,19.625,10.113z"/>
+<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="644.0293" y1="-943.4014" x2="680.8223" y2="-943.4014" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
+ <stop offset="0" style="stop-color:#9CD7FF"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</linearGradient>
+<ellipse fill="url(#SVGID_7_)" cx="19.625" cy="3.926" rx="18.396" ry="3.926"/>
+<path opacity="0.24" fill="#FFFFFF" enable-background="new " d="M31.04,45.982c0,0-4.354,0.664-7.29,0.781
+ c-3.125,0.125-8.952,0-8.952,0l-2.384-10.292l0.044-2.108l-1.251-1.154L9.789,23.024l-0.082-0.119L9.5,20.529l-1.65-1.254
+ L5.329,8.793c0,0,4.213,0.903,7.234,1.07s8.375,0.25,8.375,0.25l3,9.875l-0.25,1.313l1.063,2.168l2.312,9.645l-0.521,1.416
+ l1.46,1.834L31.04,45.982z"/>
+</svg>
+
+ <?xml version="1.0" encoding="utf-8"?>
+<svg version="1.1"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+ x="0px" y="0px" width="65px" height="53px" viewBox="-0.811 -0.063 65 53" enable-background="new -0.811 -0.063 65 53"
+ xml:space="preserve">
+<defs>
+</defs>
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="220.9624" y1="824.415" x2="220.9624" y2="801.0922" gradientTransform="matrix(1 0 0 1 -195.2002 -770.8008)">
+ <stop offset="0.0319" style="stop-color:#808080"/>
+ <stop offset="0.1229" style="stop-color:#939393"/>
+ <stop offset="0.2702" style="stop-color:#ABABAB"/>
+ <stop offset="0.4266" style="stop-color:#BCBCBC"/>
+ <stop offset="0.5968" style="stop-color:#C6C6C6"/>
+ <stop offset="0.8061" style="stop-color:#C9C9C9"/>
+</linearGradient>
+<path fill="url(#SVGID_1_)" d="M51.333,51.918c0.195,0.459-0.053,0.836-0.553,0.836H0.58c-0.5,0-0.604-0.272-0.232-0.605
+ l8.023-7.191c0.373-0.334,1.086-0.605,1.586-0.605h37.255c0.498,0,1.065,0.377,1.265,0.836L51.333,51.918z"/>
+<path fill="none" stroke="#8D8D8D" stroke-width="0.25" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
+ M51.333,51.918c0.195,0.459-0.053,0.836-0.553,0.836H0.58c-0.5,0-0.604-0.272-0.232-0.605l8.023-7.191
+ c0.373-0.334,1.086-0.605,1.586-0.605h37.255c0.498,0,1.065,0.377,1.265,0.836L51.333,51.918z"/>
+<path fill="#717171" d="M32.117,50.571c0,0.25-0.205,0.454-0.455,0.454H4.024c-0.25,0-0.304-0.139-0.119-0.307l5.638-5.154
+ c0.184-0.17,0.539-0.309,0.789-0.309h21.332c0.25,0,0.454,0.205,0.454,0.455L32.117,50.571L32.117,50.571z"/>
+<path fill="#717171" d="M40.738,50.598c0.086,0.236,0.359,0.428,0.609,0.428h7.465c0.25,0,0.375-0.188,0.279-0.42l-2.049-4.93
+ c-0.098-0.229-0.379-0.42-0.629-0.42h-7.17c-0.25,0-0.386,0.191-0.301,0.428L40.738,50.598z"/>
+<path fill="#717171" d="M32.89,50.571c0,0.25,0.205,0.454,0.455,0.454h6.135c0.25,0,0.382-0.189,0.293-0.426l-0.156-0.409
+ c-0.089-0.233-0.365-0.421-0.615-0.416l-1.045,0.021c-0.25,0.004-0.509-0.189-0.574-0.432l-0.021-0.082
+ c-0.065-0.242-0.321-0.439-0.571-0.439h-1.316c-0.25,0-0.444,0.205-0.432,0.453l0.002,0.059c0.016,0.25-0.181,0.455-0.431,0.459
+ l-1.269,0.021c-0.25,0.006-0.454,0.211-0.454,0.461L32.89,50.571L32.89,50.571z"/>
+<path fill="#717171" d="M32.89,47.004c0,0.25,0.205,0.455,0.455,0.455h4.845c0.25,0,0.396-0.195,0.323-0.437l-0.402-1.333
+ c-0.07-0.238-0.335-0.438-0.585-0.438h-4.181c-0.25,0-0.455,0.205-0.455,0.455V47.004z"/>
+<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="535.2017" y1="-1418.6563" x2="511.4634" y2="-1418.6563" gradientTransform="matrix(1 0 0 -1 -488 -1376.627)">
+ <stop offset="0" style="stop-color:#4D4D4D"/>
+ <stop offset="1" style="stop-color:#999999"/>
+</linearGradient>
+<path fill="url(#SVGID_2_)" d="M47.048,40.514c0,0.965-6.758,1.404-12.371,1.404c-3.889,0-10.914-0.348-11.367-1.267
+ c0,0.446,0,1.502,0,1.661c0,0.725,4.803,1.234,11.357,1.234c6.554,0,12.381-0.643,12.381-1.361
+ C47.048,42.028,47.048,40.977,47.048,40.514z"/>
+<path fill="#808080" d="M35.179,39.307c6.556,0,11.869,0.584,11.869,1.307c0,0.721-5.313,1.42-11.869,1.42
+ c-6.701,0-11.869-0.697-11.869-1.42S28.625,39.307,35.179,39.307z"/>
+<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="525.7661" y1="-1412.6865" x2="520.77" y2="-1412.6865" gradientTransform="matrix(1 0 0 -1 -488 -1376.627)">
+ <stop offset="0" style="stop-color:#999999"/>
+ <stop offset="0.0417" style="stop-color:#8D8D8D"/>
+ <stop offset="0.1617" style="stop-color:#717171"/>
+ <stop offset="0.2821" style="stop-color:#5D5D5D"/>
+ <stop offset="0.4021" style="stop-color:#515151"/>
+ <stop offset="0.5212" style="stop-color:#4D4D4D"/>
+ <stop offset="0.6202" style="stop-color:#565656"/>
+ <stop offset="0.7817" style="stop-color:#6E6E6E"/>
+ <stop offset="0.9844" style="stop-color:#969696"/>
+ <stop offset="1" style="stop-color:#999999"/>
+</linearGradient>
+<path fill="url(#SVGID_3_)" d="M37.734,40.896c0,0-1.477,0.096-2.498,0.096s-2.499-0.096-2.499-0.096v-9.768h4.997V40.896z"/>
+<radialGradient id="SVGID_4_" cx="415.8687" cy="-1386.5146" r="24.0778" gradientTransform="matrix(1.15 0 0 -1 -453.4719 -1376.627)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#F2F2F2"/>
+ <stop offset="1" style="stop-color:#666666"/>
+</radialGradient>
+<path fill="url(#SVGID_4_)" d="M9.453,2.122c0-1.1,0.9-2,2-2h48.246c1.1,0,2,0.9,2,2v30.073c0,1.101-0.9,2-2,2H11.453
+ c-1.1,0-2-0.899-2-2V2.122z"/>
+<path fill="none" stroke="#666666" stroke-width="0.2436" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" d="
+ M9.453,2.122c0-1.1,0.9-2,2-2h48.246c1.1,0,2,0.9,2,2v30.073c0,1.101-0.9,2-2,2H11.453c-1.1,0-2-0.899-2-2V2.122z"/>
+<radialGradient id="SVGID_5_" cx="402.1509" cy="-1378.3662" r="53.3339" fx="444.1083" fy="-1385.5538" gradientTransform="matrix(1.1935 0 0 -1 -443.5655 -1376.627)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#4D4D4D"/>
+ <stop offset="1" style="stop-color:#999999"/>
+</radialGradient>
+<path fill="url(#SVGID_5_)" d="M10.475,3.143c0-1.1,0.9-2,2-2h46.429c1.1,0,2,0.9,2,2v27.805c0,1.1-0.9,2-2,2H12.475
+ c-1.1,0-2-0.9-2-2V3.143z"/>
+<radialGradient id="SVGID_6_" cx="402.939" cy="-1378.4502" r="34.1874" gradientTransform="matrix(1.1923 0 0 -1 -443.8286 -1376.627)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#9CD7FF"/>
+ <stop offset="1" style="stop-color:#3C89C9"/>
+</radialGradient>
+<path fill="url(#SVGID_6_)" d="M11.043,3.598c0-1.1,0.9-2,2-2h45.294c1.1,0,2,0.9,2,2v26.895c0,1.1-0.9,2-2,2H13.043
+ c-1.1,0-2-0.9-2-2V3.598z"/>
+<path opacity="0.24" fill="#F2F2F2" d="M11.043,24.936V3.598c0-1.1,0.9-2,2-2h45.294c1.1,0,2,0.9,2,2v13.539l-23.164,4.94
+ c-1.064,0.273-2.836,0.547-3.935,0.609L11.043,24.936z"/>
+<path fill="#C9C9C9" d="M58.777,46.596c-0.003-0.002-0.005-0.002-0.007,0c-0.188-0.061-0.429-0.254-0.702-0.482
+ C58.335,46.268,58.578,46.436,58.777,46.596z"/>
+<radialGradient id="SVGID_7_" cx="450.8638" cy="1259.1514" r="6.3766" gradientTransform="matrix(1 0 0 1 -390.4004 -1211.6016)" gradientUnits="userSpaceOnUse">
+ <stop offset="0.1939" style="stop-color:#C9C9C9"/>
+ <stop offset="0.3299" style="stop-color:#C6C6C6"/>
+ <stop offset="0.4405" style="stop-color:#BCBCBC"/>
+ <stop offset="0.5421" style="stop-color:#ABABAB"/>
+ <stop offset="0.6378" style="stop-color:#939393"/>
+ <stop offset="0.697" style="stop-color:#808080"/>
+</radialGradient>
+<path fill="url(#SVGID_7_)" d="M58.77,46.596c0.005,0.002,0.007,0.002,0.009,0.002c0.002,0.004,0.006,0.004,0.006,0.004
+ c0.084,0.023,0.153,0.021,0.213-0.021c0.017-0.008,0.026-0.021,0.037-0.041c0.604-0.119,1.329-0.154,2.197-0.086
+ c2.032,1.545,3.77,4.625,1.18,5.801c-2.048,0.929-3.543,0.783-4.722-0.485c-0.624-0.675-1.239-1.47-1.729-2.265
+ C56.226,48.369,56.855,47.061,58.77,46.596z"/>
+<radialGradient id="SVGID_8_" cx="603.5698" cy="1426.6348" r="3.8245" gradientTransform="matrix(0.9761 0.2173 -0.1478 0.6641 -320.0412 -1031.1759)" gradientUnits="userSpaceOnUse">
+ <stop offset="0.1939" style="stop-color:#C9C9C9"/>
+ <stop offset="0.3739" style="stop-color:#C6C6C6"/>
+ <stop offset="0.5203" style="stop-color:#BCBCBC"/>
+ <stop offset="0.6549" style="stop-color:#ABABAB"/>
+ <stop offset="0.7816" style="stop-color:#939494"/>
+ <stop offset="0.8364" style="stop-color:#868787"/>
+</radialGradient>
+<path fill="url(#SVGID_8_)" d="M55.96,49.504c-0.893-1.438-1.355-2.869-0.664-3.533c0.244-0.236,0.539-0.422,0.863-0.559
+ c0.6,0.051,1.307,0.346,1.9,0.691c0.002,0,0.005,0.004,0.007,0.006c0.272,0.229,0.519,0.426,0.702,0.482
+ C56.855,47.061,56.226,48.369,55.96,49.504z"/>
+<radialGradient id="SVGID_9_" cx="448.7241" cy="1259.3271" r="3.928" gradientTransform="matrix(1 0 0 1 -390.4004 -1211.6016)" gradientUnits="userSpaceOnUse">
+ <stop offset="0.1939" style="stop-color:#C9C9C9"/>
+ <stop offset="0.3496" style="stop-color:#C6C6C6"/>
+ <stop offset="0.4761" style="stop-color:#BCBCBC"/>
+ <stop offset="0.5925" style="stop-color:#ABABAB"/>
+ <stop offset="0.702" style="stop-color:#939393"/>
+ <stop offset="0.7697" style="stop-color:#808080"/>
+</radialGradient>
+<path fill="url(#SVGID_9_)" d="M56.16,45.414c1.353-0.564,3.287-0.266,4.963,0.955c0.035,0.025,0.073,0.055,0.109,0.084
+ c-0.867-0.068-1.818-0.033-2.427,0.086c-0.109-0.105-0.763-0.449-0.744-0.434C57.464,45.758,56.757,45.463,56.16,45.414z"/>
+<path fill="none" stroke="#717171" stroke-width="0.1136" stroke-linecap="round" stroke-miterlimit="10" d="M56.16,45.414
+ c1.353-0.564,3.287-0.266,4.963,0.955c0.035,0.025,0.073,0.055,0.109,0.084c2.032,1.545,3.77,4.627,1.18,5.801
+ c-2.048,0.93-3.543,0.785-4.722-0.484c-0.624-0.676-1.239-1.471-1.729-2.264c-0.892-1.438-1.354-2.871-0.664-3.533
+ C55.541,45.734,55.835,45.549,56.16,45.414z"/>
+<path fill="none" stroke="#717171" stroke-width="0.1136" stroke-linecap="round" stroke-miterlimit="10" d="M58.777,46.596
+ c0.083-0.021,0.168-0.041,0.258-0.057c0.604-0.119,1.329-0.154,2.197-0.086"/>
+<path fill="none" stroke="#717171" stroke-width="0.1136" stroke-linecap="round" stroke-miterlimit="10" d="M55.958,49.516
+ c0-0.002,0.002-0.008,0.002-0.012c0.269-1.135,0.896-2.441,2.813-2.908"/>
+<path fill="none" stroke="#717171" stroke-width="0.1136" stroke-linecap="round" stroke-miterlimit="10" d="M58.061,46.105
+ c-0.597-0.35-1.306-0.643-1.901-0.693"/>
+<path fill="none" stroke="#717171" stroke-width="0.1136" stroke-linecap="round" stroke-miterlimit="10" d="M58.779,46.598
+ c0-0.002,0-0.002-0.002-0.002c-0.199-0.16-0.441-0.328-0.709-0.482"/>
+<path fill="#4D4D4D" d="M58.259,45.936c0.354,0.264,0.438,0.48,0.548,0.604c-0.091,0.018-0.173,0.033-0.259,0.059
+ c-0.355-0.393-0.996-0.666-0.955-0.727C57.688,45.729,58.063,45.791,58.259,45.936z"/>
+</svg>
+
+ <?xml version="1.0" encoding="utf-8"?>
+<svg version="1.1" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="57px" height="67px" viewBox="0 0 57 67" enable-background="new 0 0 57 67" xml:space="preserve">
+<g>
+
+ <radialGradient id="neck_x5F_white_1_" cx="28.0298" cy="-751.9429" r="11.4464" fx="25.7969" fy="-753.1596" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#B38E5D"/>
+ <stop offset="1" style="stop-color:#805126"/>
+ </radialGradient>
+ <path id="neck_x5F_white_2_" fill="url(#neck_x5F_white_1_)" stroke="#5B453B" stroke-miterlimit="10" d="M19.278,37.799h18.188
+ v13.23c-1.313,0.371-17.173,0.436-18.188,0.172V37.799z"/>
+
+ <radialGradient id="SVGID_1_" cx="27.481" cy="-760.3003" r="31.0533" fx="21.4231" fy="-763.6011" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#B38E5D"/>
+ <stop offset="1" style="stop-color:#805126"/>
+ </radialGradient>
+ <path fill="url(#SVGID_1_)" stroke="#5B453B" stroke-miterlimit="10" d="M49.529,51.225c-4.396-4.396-10.951-5.884-12.063-6.109
+ V37.8H19.278c0,0,0.038,6.903,0,6.868c0,0-6.874,0.997-12.308,6.432C1.378,56.691,0.5,62.77,0.5,62.77
+ c0,1.938,1.575,3.492,3.523,3.492h48.51c1.947,0,3.521-1.558,3.521-3.492C56.055,62.768,54.211,55.906,49.529,51.225z"/>
+
+ <radialGradient id="face_x5F_white_1_" cx="27.7827" cy="-732.2632" r="23.424" fx="23.2131" fy="-734.753" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#B38E5D"/>
+ <stop offset="1" style="stop-color:#805126"/>
+ </radialGradient>
+ <path id="face_x5F_white_2_" fill="url(#face_x5F_white_1_)" stroke="#5B453B" stroke-miterlimit="10" d="M43.676,23.357
+ c0.086,10.199-6.738,18.52-15.246,18.586c-8.503,0.068-15.467-8.146-15.553-18.344C12.794,13.4,19.618,5.079,28.123,5.012
+ C36.627,4.945,43.59,13.158,43.676,23.357z"/>
+
+ <linearGradient id="face_highlight_1_" gradientUnits="userSpaceOnUse" x1="2941.4297" y1="5674.7988" x2="2965.0596" y2="5768.2505" gradientTransform="matrix(0.275 0 0 0.2733 -783.3976 -1542.678)">
+ <stop offset="0" style="stop-color:#FFFFFF;stop-opacity:0.42"/>
+ <stop offset="1" style="stop-color:#FFFFFF;stop-opacity:0.12"/>
+ </linearGradient>
+ <path id="face_highlight_2_" fill="url(#face_highlight_1_)" d="M27.958,6.333c-6.035,0.047-10.747,4.493-12.787,10.386
+ c-0.664,1.919-0.294,4.043,0.98,5.629c2.73,3.398,5.729,6.283,9.461,8.088c3.137,1.518,7.535,2.385,11.893,1.247
+ c2.274-0.592,3.988-2.459,4.375-4.766c0.183-1.094,0.293-2.289,0.283-3.553C42.083,13.952,36.271,6.268,27.958,6.333z"/>
+ <path id="path9833_2_" fill="#4B4B4B" stroke="#000000" stroke-linecap="round" stroke-linejoin="round" d="M28.372,0.5
+ C17.537,0.5,8.269,7.748,9.153,26.125c0.563,6.563,5.862,12.042,9.366,13.531c-2.929-10.968-0.304-25.021-0.585-25.526
+ c-0.281-0.505,3.536,6.728,3.536,6.728l3.183-8.312c5.541,4.28,0.393,11.309,1.049,11.058c4.26-1.631,5.34-9.228,5.34-9.228
+ s2.729,3.657,2.701,5.504c-0.054,3.562,2.194-6.067,2.194-6.067l1.027,2.031c6.727,9.822,3.684,16.208,1.654,22.781
+ c15.665-0.703,12.289-10.48,9.658-18.407C43.59,6.092,39.206,0.5,28.372,0.5z"/>
+
+ <radialGradient id="collar_x5F_body_2_" cx="15.1587" cy="-763.7056" r="32.4004" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#B0E8FF"/>
+ <stop offset="1" style="stop-color:#74AEEE"/>
+ </radialGradient>
+ <path id="collar_x5F_body_1_" fill="url(#collar_x5F_body_2_)" stroke="#5491CF" d="M0.5,62.768c0,1.938,1.575,3.494,3.523,3.494
+ h48.51c1.947,0,3.521-1.559,3.521-3.494c0,0-1.844-6.861-6.525-11.543c-4.815-4.813-11.244-6.146-11.244-6.146
+ c-1.771,1.655-5.61,2.802-10.063,2.802c-4.453,0-8.292-1.146-10.063-2.802c0,0-5.755,0.586-11.189,6.021
+ C1.378,56.689,0.5,62.768,0.5,62.768z"/>
+
+ <radialGradient id="collar_x5F_r_2_" cx="31.5" cy="-753.832" r="9.2834" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#80CCFF"/>
+ <stop offset="1" style="stop-color:#74AEEE"/>
+ </radialGradient>
+ <path id="collar_x5F_r_1_" fill="url(#collar_x5F_r_2_)" stroke="#5491CF" d="M38.159,41.381c0,0-0.574,2.369-3.013,4.441
+ c-2.108,1.795-5.783,2.072-5.783,2.072l3.974,6.217c0,0,2.957-1.637,5.009-3.848c1.922-2.072,1.37-5.479,1.37-5.479L38.159,41.381z
+ "/>
+
+ <radialGradient id="collar_x5F_l_2_" cx="19.1377" cy="-753.873" r="9.2837" gradientTransform="matrix(1 0 0 -1 0.1201 -706.5371)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#80CCFF"/>
+ <stop offset="1" style="stop-color:#74AEEE"/>
+ </radialGradient>
+ <path id="collar_x5F_l_1_" fill="url(#collar_x5F_l_2_)" stroke="#5491CF" d="M18.63,41.422c0,0,0.576,2.369,3.012,4.441
+ c2.109,1.793,5.785,2.072,5.785,2.072l-3.974,6.217c0,0-2.957-1.637-5.007-3.85c-1.922-2.072-1.37-5.48-1.37-5.48L18.63,41.422z"/>
+
+ <radialGradient id="Knob2_2_" cx="27.8872" cy="9.9414" r="0.9669" gradientTransform="matrix(1 0 0 -1 0.04 66.1543)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#80CCFF"/>
+ <stop offset="1" style="stop-color:#74AEEE"/>
+ </radialGradient>
+ <circle id="Knob2_1_" fill="url(#Knob2_2_)" stroke="#5491CF" cx="28.258" cy="56.254" r="0.584"/>
+
+ <radialGradient id="Knob1_2_" cx="27.9253" cy="3.6973" r="0.9669" gradientTransform="matrix(1 0 0 -1 0.04 66.1543)" gradientUnits="userSpaceOnUse">
+ <stop offset="0" style="stop-color:#80CCFF"/>
+ <stop offset="1" style="stop-color:#74AEEE"/>
+ </radialGradient>
+ <circle id="Knob1_1_" fill="url(#Knob1_2_)" stroke="#5491CF" cx="28.296" cy="62.499" r="0.584"/>
+</g>
+</svg>
+
+ <?xml version="1.0" encoding="utf-8"?>
+<svg version="1.1"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+ x="0px" y="0px" width="36px" height="57px" viewBox="0 -0.741 36 57" enable-background="new 0 -0.741 36 57"
+ xml:space="preserve">
+<defs>
+</defs>
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="230.1768" y1="798.6021" x2="180.3346" y2="798.6021" gradientTransform="matrix(1 0 0 1 -195.2002 -770.8008)">
+ <stop offset="0" style="stop-color:#4D4D4D"/>
+ <stop offset="1" style="stop-color:#8D8D8D"/>
+</linearGradient>
+<rect y="0.943" fill="url(#SVGID_1_)" width="34.977" height="53.716"/>
+<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="224.6807" y1="798.6021" x2="200.6973" y2="798.6021" gradientTransform="matrix(1 0 0 1 -195.2002 -770.8008)">
+ <stop offset="0.0319" style="stop-color:#848484"/>
+ <stop offset="0.1202" style="stop-color:#8C8C8C"/>
+ <stop offset="0.308" style="stop-color:#969696"/>
+ <stop offset="0.5394" style="stop-color:#999999"/>
+ <stop offset="0.5501" style="stop-color:#9C9C9C"/>
+ <stop offset="0.6256" style="stop-color:#B0B0B0"/>
+ <stop offset="0.7118" style="stop-color:#BEBEBE"/>
+ <stop offset="0.8178" style="stop-color:#C7C7C7"/>
+ <stop offset="1" style="stop-color:#C9C9C9"/>
+</linearGradient>
+<path fill="url(#SVGID_2_)" d="M5.497,0.943c7.945-1.258,16.04-1.258,23.983,0c0,17.905,0,35.811,0,53.716
+ c-7.943,1.258-16.039,1.258-23.983,0C5.497,36.753,5.497,18.848,5.497,0.943z"/>
+<path fill="#515151" d="M5.497,14.621c7.995,0,15.989,0,23.983,0c0,13.346,0,26.693,0,40.037c-7.943,1.258-16.039,1.258-23.983,0
+ C5.497,41.314,5.497,27.967,5.497,14.621z"/>
+<path opacity="0.43" fill="#565656" d="M5.497,4.745c7.982-0.628,16.001-0.628,23.983,0c0,2.707,0,5.413,0,8.12
+ c-7.994,0-15.989,0-23.983,0C5.497,10.158,5.497,7.452,5.497,4.745z"/>
+<path opacity="0.43" fill="none" stroke="#4D4D4D" stroke-width="0.0999" stroke-miterlimit="10" d="M5.497,4.745
+ c7.982-0.628,16.001-0.628,23.983,0c0,2.707,0,5.413,0,8.12c-7.994,0-15.989,0-23.983,0C5.497,10.158,5.497,7.452,5.497,4.745z"/>
+<polygon opacity="0.43" fill="#565656" stroke="#4D4D4D" stroke-width="0.0135" stroke-miterlimit="10" enable-background="new " points="
+ 6.496,5.746 9.869,5.606 9.869,6.661 6.496,6.799 "/>
+<rect x="31.307" y="2.517" fill="#E7ED00" stroke="#717171" stroke-width="0.1926" stroke-miterlimit="10" width="3.692" height="1.505"/>
+<rect x="31.307" y="5.8" fill="#C8FF00" stroke="#717171" stroke-width="0.1926" stroke-miterlimit="10" width="3.692" height="1.507"/>
+<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="29.4414" y1="35.1235" x2="5.4995" y2="35.1235">
+ <stop offset="0" style="stop-color:#808080"/>
+ <stop offset="0.1907" style="stop-color:#828282"/>
+ <stop offset="0.2955" style="stop-color:#8A8A8A"/>
+ <stop offset="0.3795" style="stop-color:#989898"/>
+ <stop offset="0.4524" style="stop-color:#ACACAC"/>
+ <stop offset="0.5175" style="stop-color:#C5C5C5"/>
+ <stop offset="0.5273" style="stop-color:#C9C9C9"/>
+ <stop offset="0.5914" style="stop-color:#C9C9C9"/>
+ <stop offset="0.9681" style="stop-color:#C9C9C9"/>
+</linearGradient>
+<path fill="url(#SVGID_3_)" d="M5.5,14.822c0,13.22,0,26.438,0,39.66c7.931,1.256,16.012,1.256,23.941,0c0-13.222,0-26.439,0-39.66
+ C21.461,14.822,13.48,14.822,5.5,14.822z M28.396,18.703c-0.74,0.01-1.482,0.02-2.225,0.029c0-0.951,0-1.901-0.001-2.85
+ c0.742-0.003,1.483-0.005,2.224-0.008C28.396,16.817,28.396,17.76,28.396,18.703z M16.354,42.496c0-0.961,0-1.924,0-2.885
+ c0.744,0.006,1.489,0.006,2.233,0c0,0.961,0,1.924,0,2.885C17.843,42.503,17.098,42.503,16.354,42.496z M18.587,43.568
+ c0,0.955,0,1.91,0,2.866c-0.744,0.009-1.489,0.009-2.234,0c0-0.956,0-1.911,0-2.866C17.098,43.574,17.843,43.574,18.587,43.568z
+ M18.586,27.742c0,0.961,0,1.922,0,2.886c-0.744,0.004-1.488,0.004-2.231,0c0-0.964,0-1.925,0-2.886
+ C17.099,27.746,17.842,27.746,18.586,27.742z M16.354,26.671c0-0.955,0-1.91,0-2.865c0.743,0.002,1.487,0.002,2.23,0
+ c0,0.955,0,1.91,0,2.865C17.842,26.675,17.099,26.675,16.354,26.671z M16.354,34.583c0-0.961,0-1.924,0-2.885
+ c0.744,0.004,1.488,0.004,2.231,0c0,0.961,0,1.924,0,2.885C17.842,34.588,17.099,34.588,16.354,34.583z M18.586,35.656
+ c0,0.961,0,1.924,0.001,2.885c-0.745,0.008-1.489,0.008-2.233,0c0-0.961,0-1.924,0-2.885C17.099,35.66,17.842,35.66,18.586,35.656z
+ M15.307,30.619c-0.742-0.01-1.484-0.021-2.227-0.039c0-0.957,0-1.916,0-2.875c0.742,0.014,1.485,0.023,2.226,0.029
+ C15.307,28.695,15.307,29.656,15.307,30.619z M15.307,31.689c0,0.961,0,1.924,0,2.885c-0.742-0.012-1.485-0.025-2.227-0.047
+ c0-0.959,0.001-1.92,0.001-2.877C13.822,31.667,14.565,31.68,15.307,31.689z M15.307,35.644c0,0.959,0,1.922-0.001,2.883
+ c-0.742-0.012-1.485-0.031-2.228-0.056c0-0.959,0.001-1.918,0.001-2.877C13.821,35.617,14.564,35.633,15.307,35.644z M15.306,39.597
+ c0,0.96,0,1.922,0,2.883c-0.742-0.016-1.486-0.037-2.228-0.064c0-0.959,0-1.916,0.001-2.877
+ C13.82,39.564,14.563,39.585,15.306,39.597z M19.637,39.597c0.742-0.012,1.484-0.033,2.227-0.059c0,0.959,0,1.918,0,2.875
+ c-0.741,0.029-1.483,0.052-2.227,0.064C19.637,41.519,19.637,40.559,19.637,39.597z M19.637,38.527c0-0.961,0-1.924,0-2.883
+ c0.74-0.012,1.482-0.027,2.225-0.05c0,0.959,0,1.918,0.002,2.876C21.121,38.496,20.377,38.515,19.637,38.527z M19.637,34.572
+ c0-0.961,0-1.922-0.002-2.883c0.741-0.01,1.483-0.021,2.225-0.039c0.002,0.957,0.002,1.916,0.002,2.875
+ C21.119,34.547,20.376,34.564,19.637,34.572z M19.635,30.619c0-0.963,0-1.924,0-2.885c0.74-0.006,1.483-0.017,2.225-0.029
+ c0,0.959,0,1.916,0,2.875C21.118,30.599,20.376,30.609,19.635,30.619z M19.633,26.666c0-0.955,0-1.909,0-2.864
+ c0.741-0.005,1.483-0.013,2.227-0.021c0,0.951,0,1.903,0,2.856C21.118,26.65,20.375,26.66,19.633,26.666z M19.633,22.732
+ c-0.001-0.963-0.001-1.924-0.001-2.885c0.741-0.002,1.483-0.006,2.226-0.012c0,0.959,0.002,1.918,0.002,2.877
+ C21.116,22.72,20.374,22.728,19.633,22.732z M18.586,22.736c-0.744,0.002-1.487,0.002-2.23,0c0-0.963,0-1.924,0-2.887
+ c0.743,0.002,1.487,0.002,2.23,0C18.586,20.813,18.586,21.773,18.586,22.736z M15.309,22.732c-0.742-0.004-1.483-0.012-2.226-0.02
+ c0-0.959,0.001-1.918,0.001-2.877c0.742,0.006,1.484,0.01,2.226,0.012C15.31,20.808,15.309,21.769,15.309,22.732z M15.309,23.801
+ c0,0.955,0,1.91,0,2.864c-0.742-0.006-1.483-0.016-2.227-0.027c0-0.953,0-1.906,0-2.859C13.825,23.789,14.566,23.796,15.309,23.801z
+ M12.036,26.617c-0.742-0.017-1.483-0.033-2.225-0.055c0-0.947,0-1.895,0.001-2.841c0.741,0.019,1.483,0.031,2.225,0.042
+ C12.037,24.716,12.036,25.666,12.036,26.617z M12.035,27.683c0,0.957,0,1.916,0,2.873c-0.742-0.021-1.483-0.047-2.225-0.076
+ c0-0.953,0-1.904,0-2.857C10.552,27.646,11.293,27.667,12.035,27.683z M12.035,31.621c0,0.957-0.001,1.914-0.001,2.871
+ c-0.742-0.023-1.483-0.055-2.224-0.092c0-0.953,0-1.906,0-2.859C10.551,31.572,11.292,31.6,12.035,31.621z M12.033,35.56
+ c0,0.956-0.001,1.914-0.001,2.871c-0.742-0.031-1.484-0.066-2.225-0.111c0-0.953,0.001-1.906,0.001-2.858
+ C10.549,35.5,11.291,35.533,12.033,35.56z M12.031,39.498c0,0.955,0,1.914-0.001,2.869c-0.742-0.035-1.484-0.078-2.225-0.129
+ c0-0.953,0-1.904,0.001-2.857C10.547,39.426,11.289,39.465,12.031,39.498z M12.03,43.435c0,0.951-0.001,1.901-0.001,2.854
+ c-0.742-0.041-1.484-0.09-2.225-0.149c0-0.944,0.001-1.892,0.001-2.838C10.546,43.353,11.288,43.4,12.03,43.435z M13.077,43.482
+ c0.743,0.031,1.486,0.053,2.228,0.067c0,0.956,0,1.91,0,2.864c-0.742-0.016-1.486-0.041-2.229-0.074
+ C13.077,45.389,13.077,44.435,13.077,43.482z M15.305,47.486c0,0.961,0,1.922,0,2.883c-0.743-0.019-1.487-0.047-2.23-0.084
+ c0-0.959,0-1.918,0.001-2.875C13.818,47.443,14.562,47.468,15.305,47.486z M16.353,47.504c0.745,0.009,1.49,0.009,2.234,0
+ c0.001,0.96,0.001,1.924,0.001,2.883c-0.745,0.011-1.49,0.011-2.235,0C16.353,49.427,16.353,48.464,16.353,47.504z M19.639,47.486
+ c0.741-0.018,1.483-0.043,2.227-0.076c0,0.957,0.002,1.916,0.002,2.875c-0.742,0.037-1.486,0.065-2.229,0.084
+ C19.639,49.406,19.639,48.447,19.639,47.486z M19.637,46.414c0-0.954,0-1.908,0-2.864c0.742-0.015,1.484-0.036,2.229-0.067
+ c0,0.953,0,1.905,0,2.857C21.122,46.373,20.379,46.398,19.637,46.414z M22.911,43.435c0.741-0.035,1.483-0.082,2.224-0.135
+ c0,0.945,0,1.895,0.002,2.838c-0.74,0.059-1.482,0.107-2.226,0.15C22.911,45.336,22.911,44.386,22.911,43.435z M22.911,42.369
+ c-0.001-0.957-0.001-1.914-0.002-2.871c0.741-0.032,1.483-0.069,2.225-0.117c0,0.954,0.001,1.906,0.001,2.857
+ C24.395,42.289,23.652,42.333,22.911,42.369z M22.909,38.431c0-0.957-0.001-1.915-0.001-2.871c0.742-0.027,1.482-0.061,2.224-0.098
+ c0.001,0.951,0.001,1.904,0.001,2.857C24.393,38.363,23.65,38.4,22.909,38.431z M22.908,34.494c0-0.957-0.002-1.916-0.002-2.871
+ c0.742-0.021,1.482-0.051,2.225-0.079c0,0.952,0,1.903,0.001,2.856C24.391,34.437,23.648,34.468,22.908,34.494z M22.906,30.556
+ c0-0.957,0-1.916-0.002-2.873c0.742-0.016,1.484-0.037,2.226-0.061c0,0.953,0.001,1.904,0.001,2.857
+ C24.391,30.509,23.648,30.535,22.906,30.556z M22.904,26.617c0-0.951,0-1.901,0-2.854c0.74-0.011,1.482-0.025,2.224-0.042
+ c0,0.946,0.001,1.894,0.001,2.841C24.389,26.583,23.646,26.601,22.904,26.617z M22.902,22.699c0-0.957,0-1.916,0-2.874
+ c0.742-0.007,1.482-0.014,2.225-0.023c0.001,0.953,0.001,1.906,0.001,2.859C24.387,22.676,23.646,22.689,22.902,22.699z
+ M22.902,18.76C22.9,17.802,22.9,16.845,22.9,15.887c0.742,0,1.481-0.003,2.225-0.004c0.001,0.953,0.001,1.906,0.002,2.858
+ C24.385,18.75,23.643,18.756,22.902,18.76z M21.855,18.767c-0.742,0.004-1.482,0.007-2.225,0.009c0-0.961,0-1.922,0-2.884
+ c0.741,0,1.482-0.001,2.225-0.002C21.855,16.849,21.855,17.808,21.855,18.767z M18.585,18.779c-0.743,0.001-1.486,0.001-2.229,0
+ c0-0.961,0-1.923,0-2.885c0.742,0,1.486,0,2.229,0C18.585,16.855,18.585,17.817,18.585,18.779z M15.31,18.777
+ c-0.742-0.002-1.483-0.005-2.225-0.009c0-0.959,0-1.918,0-2.877c0.742,0,1.483,0.001,2.225,0.002
+ C15.31,16.854,15.31,17.815,15.31,18.777z M12.039,18.76c-0.742-0.005-1.483-0.011-2.225-0.019c0-0.953,0-1.905,0.001-2.858
+ c0.742,0.001,1.483,0.004,2.224,0.004C12.039,16.845,12.039,17.803,12.039,18.76z M12.039,19.827c0,0.957-0.001,1.915-0.001,2.872
+ c-0.741-0.01-1.483-0.021-2.224-0.035c0-0.953,0-1.906,0-2.859C10.555,19.813,11.296,19.819,12.039,19.827z M8.768,22.64
+ c-0.741-0.018-1.482-0.035-2.223-0.057c0-0.943,0-1.887,0-2.831c0.741,0.013,1.482,0.025,2.223,0.036
+ C8.768,20.739,8.768,21.689,8.768,22.64z M8.767,23.697c0,0.944,0,1.89,0,2.832c-0.741-0.024-1.482-0.053-2.223-0.084
+ c0-0.938,0-1.873,0-2.811C7.284,23.658,8.026,23.679,8.767,23.697z M8.766,27.587c0,0.949-0.001,1.898-0.001,2.85
+ c-0.74-0.033-1.481-0.068-2.222-0.111c0-0.942,0-1.887,0-2.83C7.284,27.529,8.025,27.56,8.766,27.587z M8.765,31.494
+ c0,0.951-0.001,1.9-0.001,2.852c-0.74-0.04-1.481-0.087-2.221-0.139c0-0.943,0-1.887,0-2.831C7.283,31.42,8.023,31.459,8.765,31.494
+ z M8.763,35.404c0,0.949,0,1.899,0,2.851c-0.741-0.052-1.481-0.104-2.22-0.168c0-0.942,0-1.886,0-2.829
+ C7.282,35.31,8.022,35.361,8.763,35.404z M8.762,39.312c0,0.949,0,1.899-0.001,2.852c-0.741-0.059-1.48-0.123-2.219-0.195
+ c0-0.943,0-1.889,0-2.83C7.281,39.203,8.021,39.26,8.762,39.312z M8.76,43.219c0,0.944,0,1.888-0.001,2.832
+ c-0.74-0.065-1.479-0.14-2.218-0.224c0-0.938,0-1.875,0-2.812C7.281,43.092,8.02,43.16,8.76,43.219z M8.759,47.109
+ c0,0.951,0,1.9,0,2.851c-0.741-0.073-1.48-0.158-2.219-0.253c0-0.942,0-1.887,0-2.828C7.279,46.964,8.019,47.039,8.759,47.109z
+ M9.804,47.201c0.741,0.06,1.483,0.111,2.224,0.154c0,0.955,0,1.912,0,2.868c-0.742-0.045-1.484-0.103-2.225-0.166
+ C9.804,49.107,9.804,48.154,9.804,47.201z M12.027,51.291c0,0.957,0,1.916,0,2.873c-0.742-0.053-1.484-0.114-2.225-0.188
+ c0-0.951,0.001-1.904,0.001-2.857C10.544,51.187,11.285,51.244,12.027,51.291z M13.075,51.353c0.743,0.039,1.486,0.067,2.229,0.086
+ c0,0.961,0,1.922,0,2.885c-0.743-0.021-1.487-0.053-2.229-0.094C13.075,53.269,13.075,52.312,13.075,51.353z M16.353,51.459
+ c0.745,0.009,1.49,0.009,2.235,0c0,0.961,0,1.924,0,2.885c-0.745,0.013-1.491,0.013-2.235,0
+ C16.353,53.382,16.353,52.42,16.353,51.459z M19.639,51.439c0.741-0.019,1.485-0.049,2.229-0.086c0,0.959,0,1.92,0.001,2.877
+ c-0.743,0.041-1.485,0.072-2.229,0.094C19.639,53.361,19.639,52.4,19.639,51.439z M22.913,51.291
+ c0.743-0.047,1.483-0.104,2.226-0.172c0,0.953,0,1.906,0,2.857c-0.74,0.073-1.481,0.135-2.224,0.188
+ C22.914,53.205,22.914,52.248,22.913,51.291z M22.913,50.224c-0.001-0.956-0.001-1.912-0.001-2.869
+ c0.742-0.043,1.484-0.095,2.225-0.154c0,0.953,0,1.906,0.002,2.857C24.396,50.123,23.654,50.179,22.913,50.224z M26.184,47.109
+ c0.739-0.066,1.479-0.145,2.217-0.229c0,0.942,0,1.887,0,2.83c-0.736,0.092-1.478,0.177-2.217,0.252
+ C26.184,49.009,26.184,48.06,26.184,47.109z M26.184,46.051c-0.002-0.944-0.002-1.888-0.002-2.832
+ c0.739-0.06,1.48-0.127,2.219-0.202c0,0.938,0,1.873,0,2.811C27.662,45.912,26.923,45.986,26.184,46.051z M26.182,42.162
+ c0-0.95-0.002-1.9-0.002-2.85c0.74-0.052,1.48-0.109,2.219-0.176c0.002,0.943,0.002,1.887,0.002,2.83
+ C27.662,42.039,26.921,42.105,26.182,42.162z M26.18,38.253c0-0.95,0-1.9-0.002-2.852c0.742-0.041,1.482-0.093,2.221-0.146
+ c0,0.942,0,1.887,0,2.829C27.66,38.15,26.92,38.203,26.18,38.253z M26.178,34.345c0-0.949,0-1.898,0-2.852
+ c0.74-0.034,1.481-0.073,2.221-0.117c0,0.943,0,1.887,0,2.83C27.659,34.258,26.918,34.305,26.178,34.345z M26.177,30.437
+ c0-0.949,0-1.9-0.001-2.85c0.741-0.027,1.481-0.059,2.221-0.092c0,0.943,0.002,1.888,0.002,2.83
+ C27.659,30.367,26.918,30.404,26.177,30.437z M26.176,26.529c-0.001-0.942-0.001-1.888-0.001-2.832
+ c0.742-0.018,1.482-0.039,2.222-0.063c0,0.938,0,1.873,0,2.811C27.657,26.476,26.917,26.503,26.176,26.529z M26.174,22.64
+ c0-0.951-0.001-1.901-0.001-2.851c0.741-0.01,1.483-0.022,2.224-0.035c0,0.943,0,1.886,0,2.831
+ C27.657,22.605,26.915,22.623,26.174,22.64z M8.769,15.881c0,0.95,0,1.9-0.001,2.85c-0.741-0.008-1.482-0.018-2.223-0.028
+ c0-0.943,0-1.887,0-2.83C7.286,15.876,8.028,15.878,8.769,15.881z M6.54,50.758c0.738,0.097,1.478,0.183,2.218,0.258
+ c0,0.95,0,1.901,0,2.853c-0.741-0.084-1.48-0.178-2.218-0.28C6.54,52.646,6.54,51.701,6.54,50.758z M26.184,53.869
+ c0-0.95,0-1.899,0-2.853c0.739-0.075,1.479-0.163,2.217-0.259c0.002,0.941,0.002,1.889,0.002,2.83
+ C27.663,53.693,26.925,53.785,26.184,53.869z"/>
+<path id="highlight_2_" opacity="0.17" fill="#FFFFFF" enable-background="new " d="M0,0.943h5.497c0,0,6.847-0.943,11.974-0.943
+ C22.6,0,29.48,0.943,29.48,0.943h5.496v41.951c0,0-12.076-0.521-18.623-2.548C9.807,38.32,0,30.557,0,30.557V0.943z"/>
+</svg>
+
+
+
+
diff --git a/background/hardwaremodel.tex b/background/hardwaremodel.tex
index 477f1f3..8c38c57 100644
--- a/background/hardwaremodel.tex
+++ b/background/hardwaremodel.tex
@@ -1,3 +1,7 @@
\section{Hardware Model}
+The target architecture of the work in this thesis are \emph{heterogeneous shared-memory many-core computers}. There is no universally accepted definition of \emph{many-core} yet, but normally it is assumed to mean "more cores than multi-core", usually tens or hundreds of cores. Scientific workflows feature a very high-level and abstract view of the underlying hardware. The abstract part of a workflow specification should ideally be completely devoid of any hard-ware specific details. \emph{Atomic activities} are an abstract representation of any kind of computational work, and the corresponding activity implementations which make up the concrete part of a workflow specification are supposed to be interchangeable without any preference for a specific implementation or specific hardware. Therefore, in the context of this work we use a very relaxed definition of the term \emph{many-cores} and assume it refers to a single computer featuring tens or hundreds of computational resources which can independently process computational work.
+
+
+
diff --git a/background/workflowmodel.tex b/background/workflowmodel.tex
index fa111b5..4f79647 100644
--- a/background/workflowmodel.tex
+++ b/background/workflowmodel.tex
@@ -1,47 +1,102 @@
-\section{Workflow Model}
+\section{Workflow Model}\label{sec:workflowmodel}
-The design and implementation of scientific workflows consists of two parts: an \emph{abstract part} and a \emph{concrete part}. We give a short overview of these two parts in the following subsections.
+The design and implementation of a \emph{scientific workflow} consists of two parts: an \emph{abstract part} and a \emph{concrete part}. We give an overview of these two parts in the following subsections.
-\begin{figure}{ht}
+\subsection{Workflow Design: The Abstract Part}
+
+\begin{figure}[ht]
\centering
- \includegraphics[width=.5\textwidth]{./background/figures/workflow-abstractpart.pdf}
+ \includegraphics[width=.8\textwidth]{./background/figures/workflow-abstractpart.pdf}
\caption{An abstract part of a scientific workflow.}
\label{fig:dag}
\end{figure}
-\subsection{Workflow design: the abstract part}
-The abstract part (see Figure~\ref{fig:dag}) of a scientific workflow specification comprises a hardware and middleware agnostic (and therefore easily portable) description of the workflow structure, the activities involved (identified by a unique name and a type), and the data and control flow dependencies between the activities. The individual activities are treated as black-boxes such that only the input and the output signatures are known.
+The \emph{abstract part} of a scientific workflow specification comprises a hardware and middleware agnostic (and therefore easily portable) description of the workflow structure, the activities involved, and the data and control flow dependencies between the activities. The individual activities are treated as black-boxes such that only the input and the output signatures are known.
-There are usually two different types of workflow activities:
-\begin{enumerate}
- \item \emph{Atomic activities} are basic indivisible computations units such as a legacy codes;
- \item \emph{Composite activities} combine several fine granular workflow activities, including atomic and other composite ones, to form coarse granular activities and impose a control flow on the contained inner activities.
-\end{enumerate}
-Typical composite activities are sequential and parallel loops, conditional activities, and sub-workflows.
+We define the structure of a Scientific Workflow $W$ as a \emph{Directed Acyclic Graph (DAG)} (see Figure~\ref{fig:dag}):
+$W=(A, D, P_{in}, P_{out})$, where $A$ represents workflow activities, $D$ represents the dependencies between activities, $P_{in}$ represents the workflow's \emph{Data In-Ports} which define the input signature of the workflow, and $P_{out}$ represents the workflow's \emph{Data Out-Ports} which define the output signature of the workflow
+
+There are usually two different types of workflow activities $A$:
+
+An \emph{Atomic Activitity} $A_i=(N, P_{in}, P_{out}, T_A)$ is a basic indivisible unit of computational work which consists of an unique name $N$, data in-ports $P_{in}$, data out-ports $P_{out}$ and an \emph{Atomic Activitity Type} $T_A$.
+
+A \emph{Composite Activity} $A_j=(N, P_{in}, P_{out}, T_C, W_{Sub}, C)$ consists of an unique name $N$, \emph{Data In-Ports} $P_{in}$, \emph{Data Out-Ports} $P_{out}$ and a \emph{Composite Activitity Type} $T_C$, and contains one or more sub-workflows $W_{Sub}=(A_{Sub}, D_{Sub})$ with activities $A_{Sub}$ and dependencies $D_{Sub}$, onto which it imposes an activity type dependend control-flow. $C$ denotes activity type specific parameters, e.g. for a for-loop activity $C=(Start, Stop, Step)$ denotes the initial value, the stop condition value and the stride of the loop counter. Typical composite activity types are sequential and parallel loops, conditional activities, and sub-workflows.
-\subsection{Workflow implementation: the concrete part}
+A \emph{data dependency} $D_{ij}$ between workflow activities $A_i$ and $A_j$ is defined as:
+\[D_{ij}=\left(P^i_{out_m}, P^j_{in_n}, Data_{ij}\right),\] where $Data_{ij}$ denotes the data exchanged between data out-port $P^i_{out_m}$ of activity $A_i$ and data in-port $P^j_{in_n}$ of activity $A_j$.
+
+A \emph{control-flow dependency} $D_{ij}$ between workflow activities $A_i$ and $A_j$ is defined as:
+\[D_{ij}=\left(A_i, A_j\right),\] which imposes a constraint on $A_j$ so that it can only be executed after $A_j$ has finished execution.
+
+
+\subsection{Workflow Implementation: The Concrete Part}
+
The concrete part of a workflow contains the hardware and middleware-dependent implementations of the atomic activities and their accompanying meta-information. This part is often highly specific to each individual workflow system and the underlying DCI. It usually contains information about the available activity implementations, locations where they are installed, how they can be executed, and any other further information indented to help the workflow engine in selecting the most appropriate activity implementation.
+In our workflow model we define the implementation $W_{Impl}$ of a workflow as a mapping \[W_{Impl}: T_A \rightarrow (A_{Impl}, I_{Meta})\] from atomic activity types to one or more tuples consisting of an \emph{Atomic Activity Implementations} $A_{Impl}$, which is the actual executable code, and accompanying meta information $I_{Meta}$. The meta information contains information needed by the scheduler for selecting an appropriate actvitity implementation, and by the execution subsystem for executing the activity implementation.
-\subsection{Workflow enactment}
-A workflow engine executes a workflow instance (operation usually called \emph{workflow enactment}) by traversing the DAG representing the workflow structure, determining the state of the individual activities, transferring data from finished activities to their successors in the dependency graph, unrolling composite activities and replacing them with the resulting subgraph, and delegating the actual execution of atomic activities to the scheduling and execution subsystems.
+\subsection{Workflow Management System}
+
+The software used for setting-up, managing, executing and monitoring workflows is called \emph{Workflow Management System} (WfMS). A WfMS usually covers all aspects of a workflow, from creating to execution, and consists of several components.
+
+\begin{figure}[ht]
+ \centering
+ \includegraphics[width=\textwidth,keepaspectratio=true]{./background/figures/workflow-managementsystem.pdf}
+ \caption{Architecture of a Scientific Workflow Management System.}
+ \label{fig:background-wfms}
+\end{figure}
+
+Figure \ref{fig:background-wfms} shows the architecture of a typical scientific WfMS for Grid and Cloud computing. It consists of the following core components:
+
+\begin{description}
+ \item[Engine:] Responsible for executing the abstract part of a workflow, also called \emph{Workflow Enactment} (see Section \ref{sec:background-workflowenactment}).
+ \item[Scheduler:] Responsible for mapping atomic activities to computing resources and selecting an approbriate activity implementation, also called \emph{Workflow Scheduling} (see Section \ref{sec:background-workflowscheduling}).
+ \item[Execution Layer:] Keeps track of the available computing resources, manages the actual execution of activity implementations, and provides a unified interface for the scheduler and the individual execution sub-systems representing different hardware and middleware.
+\end{description}
+
+Furthermore, a WfMS may also contain following optional components:
+
+\begin{description}
+ \item[User Interface:] Interface which allows a user to interact with the workflow systems to, for example, create a workflow, start it, monitor its execution and retrieve the final results.
+ \item[Prediction Service:] Predicts execution and data transfer times to aid the scheduler with scheduling the workflow. Some scheduling algorithms only work when a reliable prediction service is present.
+ \item[Monitoring/Logging Service:] Collects log messages and other information and presents them to the user, writes it into a log file or a data base for future use by e.g. the scheduler.
+\end{description}
+
+
+\subsection{Workflow Enactment}\label{sec:background-workflowenactment}
+
+A workflow engine executes a workflow instance (operation usually called \emph{Workflow Enactment}) by traversing the DAG representing the workflow structure, determining the state of the individual activities, transferring data from finished activities to their successors in the dependency graph, unrolling composite activities and replacing them with the resulting subgraph, and delegating the actual execution of atomic activities to the scheduling and execution subsystems.
We call the resulting DAG where composite activities have been replaced with their contained subgraphs enriched with additional state information a \emph{Workflow Execution Plan} (WEP).
We distinguish between two types of workflow enactment modes:
\begin{itemize}
\item In \emph{early enactment mode} the engine re-evaluates the WEP as soon as there are activity state changes, and tries to complete it as early as possible. This mode usually comes with a much higher overhead, but results in a more complete WEP comprising more information, which allows the scheduler to better plan the workflow execution on the underlying resources;
- \item In \emph{late enactment mode} (also called \emph{lazy evaluation mode}) the engine only re-evaluates and completes the WEP when it is absolutely necessary for the workflow enactment, and only partially completes it as far as it is required for continuing the enactment.
+ \item In \emph{late enactment mode} (also called \emph{lazy evaluation mode}) the engine only re-evaluates and completes the WEP when it is absolutely necessary for the workflow enactment, and only partially completes it as far as it is required for continuing the enactment. This mode has less overhead, but also results in a less complete WEP with less information available for the scheduler to plan the workflow execution.
\end{itemize}
-\subsection{Workflow scheduling}
-Scheduling describes the process of mapping atomic activities to available computing resources where they are executed. A concrete mapping of activities to computing resources is called \emph{workflow schedule}. The scheduler usually tries to optimize the schedule by maximising or minimizing a given utility function, typically the overall execution time.
-To be able to produce an optimal mapping the scheduler need to know the resource requirements of an individual activity in advance. We assume in this paper that the scheduler has accurate knowledge of the resources required by an individual activity, but in practice obtaining this knowledge is still a steep challenge.
+\subsection{Workflow Scheduling}\label{sec:background-workflowscheduling}
+
+Scheduling describes the process of mapping atomic activities $A=\left(A_1, A_2, ..., A_m\right)$ to available computing resources $R=\left(R_1, R_2, ..., R_n\right)$ where they are executed.
+The resulting mapping \[S: A \rightarrow R,\] is called \emph{workflow schedule}.
+The scheduler usually tries to optimize the workflow schedule by maximising or minimizing a given utility function, typically the overall execution time. Some scheduler implementations take more than one objective into account, some of which may conflict with other objectives. This is called \emph{multi-objective optimization}.
+
+To be able to produce an optimal mapping the scheduler need to know the resource requirements of an individual activity in advance. In this thesis we assume that the scheduler gets accurate knowledge of the resources required by an individual activity on a specific computing ressource from a third-party \emph{prediction service} we tread as black-box in the following. In practice obtaining this knowledge is still a steep challenge and subject to ongoing research.
Existing scheduling algorithms can be broadly divided into two categories~\cite{Wieczorek2009}:
\begin{itemize}
\item \emph{Just-in-time scheduling algorithms} only consider the next activities to be scheduled when deciding on a mapping and ignore the rest of the WEP. They are usually linear in complexity with the number of activities (i.e. $O(N)$) and come with a low overhead, but due to limited information the generated schedule may not be that good;
\item \emph{Full-ahead scheduling algorithms} use the entire WEP when deciding on a mapping and try to find an optimal schedule in the search space. They usually come with a much higher overhead, but consider more workflow information and therefore, produce in general better results. Generating a full-ahead schedule is an NP-hard problem~\cite{ullman1975np} and therefore, most existing full-ahead scheduling algorithms are approximate heuristic algorithms~\cite{heft02}.
\end{itemize}
+
+
+\subsection{Parallelism in Workflows}
+
+The most predominant form of parallelism found in scientific workflows is \emph{task parallelism} which means that different independent computational tasks operating on the same or different data are executed at the same time on different computing resources. On a conceptual level a scientific workflow is basically a collection of tasks with dependency relationships between them. The dependency relationships determine which tasks can be executed in parallel, and the scheduler distributes the tasks among the available computing resources so that a pre-set scheduling goal is satisfied.
+
+Other forms of parallelism like e.g. data parallelism can exist in workflows but are usually hidden away in atomic activity implementations which are considered black-boxes. A scientific workflow system can account for that fact by assuming that an atomic activity implementation may need more than one resource for execution.
+
+
+
diff --git a/biblio.bib b/biblio.bib
index 8c3eff7..0c7b329 100644
--- a/biblio.bib
+++ b/biblio.bib
@@ -185,3 +185,40 @@
Publisher = {IEEE}
}
+
+@Article{bacon1994compiler,
+ title={Compiler transformations for high-performance computing},
+ author={Bacon, David F and Graham, Susan L and Sharp, Oliver J},
+ journal={ACM Computing Surveys (CSUR)},
+ volume={26},
+ number={4},
+ pages={345--420},
+ year={1994},
+ publisher={ACM}
+}
+
+
+@article{cotton2003rams,
+ title={RAMS 2001: Current status and future directions},
+ author={Cotton, William R and Pielke Sr, RA and Walko, RL and Liston, GE and Tremback, CJ and Jiang, H and McAnelly, RL and Harrington, JY and Nicholls, ME and Carrio, GG and others},
+ journal={Meteorology and Atmospheric Physics},
+ volume={82},
+ number={1},
+ pages={5--29},
+ year={2003},
+ publisher={Springer}
+}
+
+
+@article{altschul1990basic,
+ title={Basic local alignment search tool},
+ author={Altschul, Stephen F and Gish, Warren and Miller, Webb and Myers, Eugene W and Lipman, David J},
+ journal={Journal of molecular biology},
+ volume={215},
+ number={3},
+ pages={403--410},
+ year={1990},
+ publisher={Elsevier}
+}
+
+
diff --git a/mwre/figures/Montage-experiments1.pdf b/mwre/figures/Montage-experiments1.pdf
new file mode 100755
index 0000000..2d9aca6
Binary files /dev/null and b/mwre/figures/Montage-experiments1.pdf differ
diff --git a/mwre/figures/Povray-experiments1.pdf b/mwre/figures/Povray-experiments1.pdf
new file mode 100755
index 0000000..07aea88
Binary files /dev/null and b/mwre/figures/Povray-experiments1.pdf differ
diff --git a/mwre/figures/Povray.pdf b/mwre/figures/Povray.pdf
new file mode 100755
index 0000000..9580d7b
Binary files /dev/null and b/mwre/figures/Povray.pdf differ
diff --git a/mwre/figures/Raincloud-experiments1.pdf b/mwre/figures/Raincloud-experiments1.pdf
new file mode 100755
index 0000000..475e77c
Binary files /dev/null and b/mwre/figures/Raincloud-experiments1.pdf differ
diff --git a/mwre/figures/Sparselu-experiments1.pdf b/mwre/figures/Sparselu-experiments1.pdf
new file mode 100755
index 0000000..29fe70e
Binary files /dev/null and b/mwre/figures/Sparselu-experiments1.pdf differ
diff --git a/mwre/figures/activityStateDiagram.pdf b/mwre/figures/activityStateDiagram.pdf
new file mode 100644
index 0000000..6e70864
--- /dev/null
+++ b/mwre/figures/activityStateDiagram.pdf
@@ -0,0 +1,424 @@
+%PDF-1.4
+%âãÏÓ
+1 0 obj
+ <<
+ /Title ()
+ /Author ()
+ /Subject ()
+ /Keywords ()
+ /Creator (yExport 1.4.0.1)
+ /Producer (org.freehep.graphicsio.pdf.YPDFGraphics2D 1.4.0.1)
+ /CreationDate (D:20160929172959+02'00')
+ /ModDate (D:20160929172959+02'00')
+ /Trapped /False
+ >>
+endobj
+2 0 obj
+ <<
+ /Type /Catalog
+ /Pages 3 0 R
+ /ViewerPreferences 4 0 R
+ /OpenAction [5 0 R /Fit]
+ >>
+endobj
+4 0 obj
+ <<
+ /FitWindow true
+ /CenterWindow false
+ >>
+endobj
+5 0 obj
+ <<
+ /Parent 3 0 R
+ /Type /Page
+ /Contents 6 0 R
+ >>
+endobj
+6 0 obj
+ <<
+ /Length 7 0 R
+ /Filter [/ASCII85Decode /FlateDecode]
+ >>
+stream
+GauHqbDp/GEnn=BU4/cEpjNW7&n!s,aTIN^!dr=eb)i_)#L&"F,e8(UHnE/')4^!ElU<.aq-l)s?X`p-
+&KZFN`s59=puCuCf>%?3hY@&M"T6a=QXbC'ldt_C?bcU:orl.0kBbH=r0OU:qs2#;O2(Y6gFM[;s8(KB
+J,bjbr"]8(q]C;m/cOr5O5G8]c$S@*C%G(]dH:HDL&Y(Gs$,=%nr&==ioZ/jnSr3so_dbrj/@255skoT[\\pl.>B%?=eeN4C=fD7Fp?B^LD(&
+3POXSTNYJO)Ylc+2\.?YLeb0O??\l])liXnDRHoGZchm(-]fa(OS9i2*KN
+V=TKA)R\FGZr]rkro)6bN;)ekVNH(,^\Pc@"[DVp56tm'X5Lc(j_cVD;kJ!n&@![Mj
+$-1g4\$(giFKWqkd`4frKPcm8V)6t6_CKeY4fmB<9:-gr1[Be]WR6=RDEmXXGWMtpN`YJ9Datlb%#[eo
+bZo6lNGKJL+7&V'=AiV_6Q?TdeJS&RYPSQ!TD_-([G"3RZnAFEGsoN^g4>aiVB#kWOgl-4a&$/3`A(=VIshbj.!?
+2Y2M;i+BIY#P9usU7<<;ecR(P01j=QF(Q\?-Jt$Nl[;fJU+Ng):^F6S_1JYl-DUNi*_tnc6.dYq?Ge#q
+)"4A=]TjCCYc#TgCK*p:R<Et2tR"L"-OTFR'@kp1qS([VtU_eI$.n'heCl/.4njt2jO%^VXo4>;#'[a;A\]u5
+@87N:@qr*/QtOO]!7k?j.ckc1JWNS=`9hQh_Ki:;Nl&0mVo,7kj6`n`Mu>`ce$\':Tm7PA,^XJ/tB+`\uKTX\oWPRP(.8]Xe3C,hrfbX
+IVD@ec1ACdWiIt+jMqd(Q&P82JUEn/!42I-&EZ/9XZH9*rIBBKEMorE0kTD3Fc"0'n<4<]2;Hf)jm1&u
+35B*C&PA)Z%iFeL*NHeM+YHn#31#YErJ9%,p;i::
+P#)#=Y]3R;eXfXA\XJi&m,=D6p;?Q,4n@WgH`jN,aImm_Sf]p6n5@mp2I"TB_]rHnC&QCJfs>P3'$Hl)
+$aN?NY-&Q4I-1!OO@f?6Zkt%FDoX!MoC^Z'23PRg)qnO[5B&g]dl(G.m<^bef57sAgMAKgg\4rAha5&\
+\,5DYR=7d1%`^P9hfMlQ*d$RMNQZ:aHR=45LYBjA=e*-R#h%pbEQ@P0IH91m`f=igeT>Nt=B>lk7UIj.
+^,:4AD[EmB?U*Ur2#;eYdX4V4#R9!t;<4r'%f`["LREVj5V&nj5:cnMW53IJ/[q&^bf_WU#H,;?AjKi5
+,+)rX;0b7dn`kN@_'*]O[S>pGbb*#/eNd4mD`@:/I^nMNm"5')LGOFO,K0Bkf6Dlud)DN@rkl$h8B!I%
+=`tBN]Eh90/2d#\/r]iUD[cnh?S4l!HcVM;$,'\53q;tdj53Kf[E9)!Mib]Is#\J0(g61uA[(
+!e9>1LXg+&jo0nW0an9AW9#N]CN%$M+M'A*i?rLb@i;?5#<53=K5!YUQ=ZL[^h(5;^`mJ!$OBEN,B^gK
+,7.dWXkr_IRR9nal&>39?sfPFdkK,am1L]Cl:`ZsbRo)H-GqBO$IQR7io1?]ZJ&D9]5"^.H'l[&?i2&u
+EihD)hiI;glms-[e[bd>%]$t2d7>o*L'iN-u_LN/H9b\q\uLWrlO/*Gn4TCg#!>UOZ/rMi3'#`5Kuf@8,7+[fLZ+Uo0Bp&Q@)rF1e8golmXobe.1n-=
+eJOQS-qT@.:3L$XBlL5)D7oXSbt61bF!Uo"3#H_;YY@d#QDpib5<(e-BUGqsolMfjB
+^"l"4HnWuZ*<&s9r\Wp;fP&,c`sSTNr\Y9@:li=L#(>M:3-4>0#'B].Q!OoQ9O]N=8#FBd0a9)13Cgij
+U.>!A+c])#feFh2S:RaQi@+UN7Y$_4"D#rXJp^)XB$$+1Et2)aa)T^XmE*=K2=C2k$MC>Ui2_f3n7nI]
+#V%h>$%;e>]PM3#el+]A37I-=b_L?k2,6K9i0r^UIQZkQ3=bX(n6N9]^4C?;4309PH`L.lkrKY;1H8Q$
+=G's=NX/oY(H4&G''Gf:3Q#&X/5*+pqu^j^!/B+mj9'TD.?),49OZ5]^4mM+BA>BO=rm)-2o#jReRBjH#DN:O7O='6IkH:6+9b_r*Q;9?&PjNCKo:6=\B>L09qgH;55>99W46(uU=A()esj/".Dj.BJi3
+$I\u]rZIg%Fs+sGQQ,^eTuK+7H\o@K6H6(%>B8VA/H5]m+RR79#:OX)k$_9p,f'b[Q\Ig`&@cBuGK
+GKUhf/El;5<*0t*"^T8/>sI618BN,ifNm3\416"Xb!%L'GC,(B:,.`)fV2CbZu%Nj"2BTSYNG)D(>:nt
+H.JKlLgEQK(!_/_7D5maQd[&PAlr<2Hf557KdIKT7OniC0\7O_@BSH3k7"'1\,Ls\E&5r(5Vq\o4:6!]
+>RSD)oTr;]*mH2s":mAT[]+sGBY+[+Hnt/@6I%El/GouiXB5$7NpS59HtP.3HgKS8%_Wr(j>]V_(5nP"
+jP+\Kp!k>6$Xn74>/B9WWma&>K'j1eV4)K91T".k7C70Nq,`P@um+3Ddp41"Mi#Z$(/],kZeop
+-\r6PgPMUGN6nAW%Z?ui">(*THOsF`R`EbEeZm$T:Kl+S#@G^h>'918FSUKef:U^UJq!_]p8I8mBK8nI
+*`H>m[WY!;E$BYuLajBJ"oaGJV:4f$e:m':qs)TDUNn[2Y&)?1R-N=6WHbi\HEn[I$L7g/PtPKBjhs
+D)o\2NugaoP-(`4Wahq1#.O5sGgk+/J&`T`I?"b])9]iJ*U-qhSe%1e5gm'%rX0H4BhA?11p?7k8H4BO
+Y'IciJmJ(sJODV%/!g61qBKl4bE;d[;l&@"+(5NH)l16B/c?4BHe4HE]C]G97dlZBl`4$/.&;?D2&BN3
+(T[\',Q/#*i,GLl_3VrH=OM\mU];I3Ik_VWV*F1.LJ.Z$5]N"V"jso1Ud*GrCYi.ElXtD*&"86!Ud'05
+O\!-oan(\f5=j3EOXJi(P5Y\RqE*LYrd_B0i+s6'1n!;q\J"]&M=:QFKc;?4m*P8Z`hqY92i/P<&&h\3Dl!L)ba-$A:2'(q20P)Z(*A7<45iLM]AaD_S6)'-o^TI3C3;9k+d>K+:Y[rFY!d,'`^XF@rg
+L+On8knkL\2^h&S>dfC?Zd36YPQ1%Md)e9*k9t^JB=9$IiHRAB*UgP/cAnjiNSul=="\Y!(G7gX\mP2m
+p$$qcqtjc'Zp6r4;'Ft[PT9"I[LPgTp:R#9(g(uD8g4`nR/YC\<-$nTfcT
+J&dU/6EXX5SFtEM\dBN?lMc!T]7qKCdPb(=M3T>2[iBYZ%[o^`L!!C6Ld#gH7SG\+r<5GEtsg#?Xb58
+g0%i>I#Z?tjnT!s,N^ur*1=>'eT*uuNYQX=C-2=u'\`p(-3j**FI:X<5HER)TcKmSXXTk%^)A+XI@UBe
+m:?Rq8f78@@]Q3UJ)IA/o+g:)QA\08%G]TO=9*#+g>Q8Eo*R+T([YI54d8$'k
+3N::k@kF;EuiQP=8;S.gW=(E7lMa^M=tXs9KF,I$rWN@9-1kN3UL,4j&T9BsL6:MXL]i?qP"i[<\B
+3].c9MQM-eDHdSOO5i;`,c`hgENZ<##^t!ZB4!mVHXrRRbdFAU*#-1XJ-SrbFEjcp(14_-B]6MUN%5L$
+9bD@Z3WW0D67C\"(8+2$c7kLGFmg?H`-9,oM5Q?,@2L#[Ya&e'*h`i/>"\o5^RD96S7BPGMLFF;rT/>2VK]6!'-^LMI5%u(Z!<44"X<9%sDJQm.b'$*`jhV2joj@B@8
+EaL]U&HU"-jH/*>2=->KT8i80i]HbQ+119Q,SP2EY,duXQQlg$kA_af+'L5Ap^d/H1-]?S@C/9=+*ULn;\#=J1eBj%Lb
+\/Ro"5gpHMTl.g.;f_+qM99AC9AX:7>l3f\?.P3lW9_-[HH:JBGbZIEb:'W?i[@
+(_Hiq%C[<9)JVZ-@>h&COGg@"rb@@7M/iKB2.;o0#]31qUS8V.dn%sQ^-i)L8IS,`+Jge5XO5sbVT[ce
+?96t@J`t<@&?nj>.%I8,359Ll81iLOZh5ncQ$A1QjJmFt'WE>&!MXe^Y/CgBn-nAno
+\g+_4]+$2MrY!d[A^7n^5u[op7nL1'cWX/kHD`'Nes#sAOiDCLF#DAu%ugLL9')4pi+KU<@=4GqYjCeU
+r1LK([Za%B-;b+mp\&D9rcQu0#jbf>AA[!TMe(TpEFX6sp\j2rB)t32:DjE)'TXVq2n!ZfV1e3.H9A1i
+rE=(GHt&(-:0_[oY<)tE<@$\]3'KI&<9D*q6Qb,"m0%m:bV
+?NlN:2/Us)'^u39j>SRHG;')I:,`@S5W?l*['?[9$8(0@,]=Cu5CDYN:;QCB&,;j;q=qK.c!,+4_k'_j/O-h,M,?pplQf)
+hVPW4P]#S_DL'[Ye'8an&kVi4j."mW;/UaGote_bj84#Z2,Kbi1E'@WjH)?l)L[+YWWoKn,[CM5EipU)
+pH2SP=87-cj/[l3eQ_**.E_s;^=\WAGP:cW2RIs6ajT#iAQ!l%4jf_3l/ug@%/)'tX$>I1*aa$sW^Sjp
+229"b)]qGK*o(6r]VBCgs#[s8Ya8G(QBd!<:+Adtdq19c!u*C?Zg^O983PAP1-Mq)dV_e&FBXFrlLGp<
+;?;k'1o=j<1lIAtVTkGc%8k:S*A+TPhn.7fb=["t\X&M2kL`t8.gBHdB!ljF9?ZtoQE@O<`hm;US!I2J
+17_T\TmCS8"#cb]Ec%M[Q^.'r?7mhYe#UFaC91X_F@D8!Q3
+GgeE2R"%j_KJ0]tWpqIUMPqUmC8qZoYURTrhn;
+Hi9gQ2Puf)oqa3hC73q;s%U[QCbt?25;Zl57ANf.n@l/=2Y'B9]N0d/UJ\N,d@u15<8=
+!T/PL-aQsTAJX+fgfapG8h(sDQ^6"6iLQ4[1=/^kG[2(aHa?G4$d5m]CUXgK2>2*C!2%F,X".jcIB
+%@E(kaeEQAdfTqI@Z:)h>">5slLJK"Cb`Rm,"XeQ]luqbY;,FJ>^kTU-2Zd"_)ne@RpT9`'KmnPjMVm)
+ZtQ`73-l1_eV"O\b5Z,SQ%pR>"mRLVO1B1nCJ6oVFL?qnK?iONdHa2J%tSa0PJZ44&`:6a(%WtrhFc/Q?03E[Y1oB)P)Np2R3OZSKrY#_?AY!uVGLeYQ#e%I'`
+4)$Q,ijgMSB^^R+imIbJ[h^"PjVU2fTCLP3n+`1T1L8^O]lD3,2X[*OiX4]2C#6%7noQCBF(0*!-?HR7
+%G+2kRicFUF3d%sckp9KA%afN@6I]hNjKAXHt-@PM_Y2KbSqCOZ&Yfn%MI@E(sdH/OeJrh%\JX=psi&$
+>*).c:naDY>iEN4Q(1jne$HcQ>K(\T6c8/oZ-r_:bcY9i8`f4SV
+WE+OQI.ugm,p[$&>$_LAL+T1'A/M7CLHVeR0`Ld_q$#Yo%Dm7
+Ru+@#Ou7'\:okcQ+_+1SIr2h:4UX!>bs-0@H2FH44`CMb%3oY]!-*lMMkL`*VS@?91G>9fD<*MVge4F)
+6?DX&_bc#6do%5!Bh*lU$M@fq:$>LXCSD82^&VTJ6`9)SeG['RN2(lt=D!7qlYhRAJ)QlGb+p]u@Wr;2
+C(qiB';IPlI?ID97(&s8gc3b[F+_/rSQG=dI82_qDVS?dmnLL>&?^EL&1ss=]B0SOh(^B]%j5WKA%.fg
+oCRh5l`GZZr4iNV72)\=jCom`El5s]_:U;rX]Z(>9KOAo^E_(#U5.AOpAkE^,,Ht87&JAFL:+G+1#*8q
+c&n[8*Mq-o,mWNCBr>!BTbQ!Cd;#US#s&a0@N,OB2Mp'QY/V=TA6'*6hl^"]3rsK2!S(lY'lH><`a4q)
+ah5t3*Tr-fdq.R5>aON"h\]8t$".LX&H^nr]`QP[UQ(^/PB`La5[^uT7CSt7XQQFp%F7[kYEELCZ\SpJl%jdFZ[_`j]Jk0"B"<5U[
+3RpNe1rqKJ4A_7naOY]u2=]:XG7N*O>fP?gKn`dI/P*iNf1*AkBF:*_JO2@K^AGeh:'j)*Q#C-$-Q#]o
+/5ZdC"Oau?A%$J3GTAOiHMoCmV/i4e/`W34HVS9E'DZ/d.f)aLhfSQ5EtpiG`YV)`m,JA0Ap1@dHS;4:
+(DgNGQ[$,F)kc2PS=&!HTJ:t3R.RcpI?G(Kj0'CP&'_@K(Y4l8MChc2;^>RW2`aeCC/A?J"4O`]CBY,OIkM]L$P3F&UZTqqB_NST*i6`CeXG,>j-^B4K^
+aeLakIPbUE9ABoY/C%4Hpg"-Kt6Q:+jh)[GmF1$D@M
+a[HZ5."+!j<+t6`g_<8.j!i:BMR4qe?Y^]2TF1Pk=50;fZ,rT`WDbl\:.9b?o8fNMj\aCaZ[%Q
+b<>JAT;r[qVN$+Xfd)f/ZYjYp+.I:<4hU%UBfW#eR5=4na-t/WbL.5jgg)_'@TTZMd`'>^Cq<^HC!i'A
+QdWE*ATp[$4(X1M]T/ET.7uHhXJBK7HR=.g3Vr@ff6u1q_kl%!?g/Ma--FeKeYiXXrfE#@>cak'pVTD,__I9)m65E<[Y"/k11HFa5f5%:>^8j8ec9-L*[%U10Q(`,3XVN
+-*6QYlU0f79_HPi5$ArEB2psL;@;>jom]V9UIQJ9Du(H".`3i/>,,7,o*HAD^[TjpH^;T:1%pX`,K'C<
+6LWRnqu-M<>\/'Hp:OmNcX4oU1C4p:%Dcp+i^"]$:Q%L&l!'pg?Hgn1HQVf
+6\V$T8HdQ?O]0=i4.,heU,jKRWG?)\8Qt8,8^AT(P(ke92R*P0Fr>Vpn@jd@*&@U)DjoK.$+"QmOYb5I
+M_9^N0=\\B["!`R^X1T(cdfCN.T%WXhA]a@n>gQ<.">K3UI`aAX>G6+*[uI.I5&,M=H4KbR5,&;Y%^A&
+/=U0ZQD"h7HQ!ldbL8_+;a4>6bmf0.8g@j/[o"UbIC4(eZ=GYt=!&,>>;D\eW*IInq[-1bIkR#K/Ru,s
+rPB>BR;?phb;bFCC8BmH
+G$&@Ak$:g7S+)^PM:oC'nTYKPBE%"?bsolq%/8:eaR\dn"pV^6d,Wg?Hh,BX6r/%mVK\8TiJ6aMupYIWIk1=>94)Q)q8MDelW\Ao'P;cjUL9bMPk2_Op
+jjNfl%q$+5$iBg86mr<,1%o(Z$[3MPqu((r190NReXI?rm8jK#pFP\[&G(P&Q<:P2ruZMW=gH>I5ep7W
+a,Hl@^1%di,DuV/fQ+3Za7D"BCQe[)'F=/%iZq!EJD!R"D1F0hL)=n^ROt[JCA!BmHPD:hFXCO^(D_4bLUfV1P0M',
+4-CO#>*@Z4]dpCDS+e;r.\f8QNS7DoZ^HD8JLnu]7tL/AO"NB;%br%Fo@'UWR*W'G*&bg1,_`fuJXASK
+.mk2s(eool2J'>Y%uULOW]TKUXkHXGY8^^>=8,5rUq:[=/.0&u$SrN`X<(Q\Enu5/".?Q'H8c5$jDcUNONgpgqIK,9/[QarbUXSjpMh:lk!&3VAMgD"HgDf"VF?;nb>(gT`lU*K^
+/FguO:Y%OZLSM'pG?nd',^IIm`VmC(CJe--K`Z<[n><&EieoG^GY-6c7Iip=4+F)73k[h]!VDh%ZCTj%3V>%V9Xca&O*0XthR-Tt&5n
+dW-C1_V:A^2(D:/r\#GA0.Gkcj[D]NZbN$EKqE;k7gu`
+oNiT%i[Qa/?R6L//$:X[cg\#K/M8#d[Sbf,&ZhE@])qB7eeZZFUBa>HI%Dm,K@kO//9cNmWNWhS)&l/C
+a&m&i=RJ')X
+;I%1\oCn]u_@49>[WhCk/QP4;l5k)!A`4WiG),h3Y-r2dcU.quX#QATGrl0E=*`.oGtV;+&nT]S1SfWb
+!94F1Oj\B22Br#GIPI=-1\(9Wf,@dY*+*agH+_TSDJNcs%UWAW=O&(mB5S'=g8p6&_cmVCQ&,_u'^uoN
+4G3\G0_])P;$=R>nal^3
+P7n0>N"l<]K86Aod[]'aI]rh&q9"a?/<#&sp>^oKfLM3O'S"q>`:#[2N65k's57D#+8PHEYpAg8Rd$1P
+pCB7@"tuNOXeV'WSFpQDr6W\V=DEW1ku2Y]!AKu46%acsm`R`EGe2YXr8nN,bTet7
+6Te81L#FV"L1?fOcD+[U"fg[TcZT!ndj6@KK?/(U-fJXhCAQ4r,V8F5[Fm/Gm/"`&-;J,I[N*dp.PDiu`_0oB.hp
+S3L,oW)rQ:n%NW,H&E76@DBc'q=2?[/WnG%=Sr!c"'?XlRHE-8"(k)of>KseAI3]m+[%R#4me[saepGn
+N4/V0aJ%suEFMqZV^9b%9AlsX\gDXfQ
+/@i^bm@[][qs,&(BE!.N4/XC)V5>f)EU\@+qj59`^R&:G/T#(llSls%2N&!-e$+>LdLpL!![O^Ma5Jc*
+Z=@U`;^XMtih3#(W4@s/e#li,6>@HCL@+q,^tD>Y127R9Nab>[;_sM+Y(S:mAjYe6A%W/H^1QK;fG0mHpc$s5mp?9Q1",4#9c*(UY<\lpY$kZ5T#p*Y)gLng]
+b$$2$p0\KNKMqkj*ef2em,N$Na9]4lL%?C+.Y]Ocj9lIZn,6!FbD&p8n3^k)#Kgdef(1>0r6heaRq\E2
+T(L"Ien.d`f%Ke0WOn-f#$[1JXLO:]+P(k/\V)aAbVLMQ(TRehVJtGB-"&($q0*DRZ%SLTgBQ"d.">bV
+k\Ib^X4e&>0<;&GSOUl1)FiNM(']4gIhT7kL#G'3V[<^ADF04X.mJ$Is)VVo"$$5/(<+`-r,ZpR.2YqV
+hjl%"\IVK`#0M()Vs*_RI9]4"h3(L!D6dkQ?S&)8f\;d5"@;sB4o&qZs,N#Sk'up^J[7K4NDhZS3XK^r
+LM9kZ]lkWl2#GA-XIa$bHPCRW0BpR,ljm-c]jmnl#OZcE"]h-5@6km0fu&3CD&I/DjI+H_&OF.[m$!G>
+Yr)>o7_99>McotLAuP[CIMDo94.kK-.nf82i\_KtG+o1UQe>u4Gp,ti5?MXmC%pHRYf)aL2MNWV$!)eb
+d.C8j?tQN@:U;_0=mP=@0P>T+LAf6a>XdE>A7G#5/W_gT:C_\OC%bi7YV^^VrR`\pXu9
+af7eT0b8a0'SjYQVqG_SX$k&uHddCVHKK[s]tbQRggVk>Jo4"5&jr8/NB>D!nrSorAq.&5lmm:!>F6e<
+QDQ6RTottC.r)G6[]7U0=BMK;>Q!]GSKa6./I&6!WF;XB%N]:l[Qa!MPt,$EP..m1",/G>ldQ#''Y]?0
+;rj'J45Gkg"+2gWnQ=\T)!KW$@(f'Kp`umk^&CQ7=o?mB+-=L[lJ.[@MgW)lk2+B(rXA>t4Y9\jajX]8
+#M0Xg,]tZ&M"G5QSC1jgFB)cuc][!rYo>JN(@d6Y5U=M0"nAgp`?Ok\iQfA"-WdV?:\1DiV/WP`G+'tB
++gcN[ih<`U`GTL+Z28DWGC7k7I)UEFEdQSp`Non&;iob;dNXY$Hlkle1J#a)so6)EI*7BkI[N9O1HHp#=Rh
+A=!1mS6t&GNUdWS.^e*\L8,hgBD91$IK*Zh\rQfAUguVqi'A6VqHgl,aI]>/!`9)glU!^>VX$bo6d)ie
+h%o_7$3-@_CJ>me<^R(+[42J2aK2_)E&nCcWtfBXAYBc':NtRhC\[OBn6gfk*4tTc58[D]YuMDh87R?0
+Zl,U[Ws`D&,c66pojQ5_;\/a+)LFQ?UJK5\V7Ed=j[O)nr.,<4E:uA;Mgt^]I+jDDh<>/&\pqDQ"-;5(
+=qTlAd#hOe-et.$/k7$aS$blnc^)EfXqVN$AA]%'*4=2iACBF+".Rf8UNJ3k5oX;?W)GUIME\JJ77nh&
+bAh)nR]g)RL)5cVFl/Qs^bbTl>UD3*eeaVfim4SKIM+(;Ju=,l)+ZnXD-
+F>=XjGY*[!r32/E"@qe6R7BC:e\Y`P]$A1QWB_ubfJ%]e]-uG"&%lQN/3Hbk`YWLVj90ecYV'L[)>6#/
+&=#-HL7:bV^]+b@?kn;)/eGc_jI-:M?)WU8(_$J2G%XJrYX0>n_L%]W@-EgAW:@UU78q.![''eWN`d&k
+<[/ZqLhgDF#>=S7c`g.Bii'tOH_$pR9H/4iOVt)q#-'GbiD#5e!o3#fhP4ZV^Z4Zn!'J8UUD9'?J-Z/d
+hMg6mRWM"A:hK#im3-3l&B;;=$:Dr*ZD3%R5>\O$7G>G8Tk_2j>qLdTm.8"B);N7t7jN&_1T1V^ja5*,N8!l@D2>LPmARk"r!KXqKf:_bPPC&>YSI*/ll`#Yc:Z<*<]bj?/&_P2
+Vo@n:hYpu>iC;_@A67k'(09oN*RmE`5:EuQX!Nb2o\?=SeU
+o=VEK1&H???9>J,e)FVDrZ:1*\29I,_alXWl.AE^q+[EM2md.VF5uk/Y%[O5#5GW5JWj[K^-sXWip;M:
+F0t4%0e/;G.?;2(]B9EuIEe@Nn(GT).R"060IHCkAe@P4QAEh8NA9.7Aoqo8eQ=OGkC,)8eHXPoe-QKO
+)/HWfZ`Y_uD4_`5W%TLm^X`$7_V\g#)b'L9Z6_en'mJ\M\
+p0>ji0,,O*Uc$T-9/ibWW]"A,P&Aogl*BF&a+8nkERm9bd=rJE8N$2i0N%PVcqCdnhtBc>`?S7#kj/!(EVRWX\!<
+*TVUPS_s"*+.=q.Z%b_FD3[Zf@2ODb`iXka)L8\u4VmddrYbUZG#gduNWNid"ri>sZJuanc0<6%E_I`LR
+H7/-q4`A9Q[XPnepj.Sdlb;?TNEKfrgl$64C2=/5E8MZ3$Wf*)QQp%'k(7cDEOTFh=Q3FP0e:tcAKIkP
+T;tNijCW2#])$9#,\k2s=,j!EL9FnmcGFd1c/6Om\;8'AS7icBrL.G'nbGN1NEeTn.L$nnPlp:U%
+Y/7%R'93hNp?[dr9LVrpV8U%@0pLZEn&:o_Qo6gli;OlObiS).\))Saa^(C,>84LUW#4emXt(""`@GPdjdEs^,PYR*%b*d$@'b"=GH>b>.9
+_Y#\L>gBIUdk]`Ab%bMNWbjGU?I%)1T;Ir2D'RZUW/fK=?J`cqR'>of5jr\
+R!LbOe&/&L=b1PXjfBKRVO%a/^!'ZIQX2RdHJ.LoH9#ckA*[],cJ3_+/%ARR=.ZD9
+GcUkMjajL&^M_Nfs'`&&r_aJQW_#od`WT!4FG?`ad,\-]Cg2V
+>mo7`XK/l(EZR,;9eWi1m+0@*f]l):-fm@X?8`;JH8tLIU'l%kOmD,QZ[Q.4,Egh7]ptRo4d]R4R!LbO
+PLH52L?*P<4&(agMK?1*)quV3niVG4263qVbXZMbULk=-
+\9iAs^D[!H$'Q*_;9X/DWp[Rc]e%XqhQ00^g>'hXW??pk&ef.30YB`&;(BuLXNN/2UPnp
+n9a3@3&-NmcqL>(WkW6qo`8"H/+3Ne90gn0N]@[1=35`u:@;jhMH2R!Fc4bj5g%a+kru@@Mc&G4ShI8(
+AZk>p/i-2hrlDH)q-M%#,Th,3N3-if($6HVZ3Uo+kSmT'a##mn3RsV'C0g0fPWMaJYqcgtoe[fK)c)5U
+>n2=Dm8%:p$plDC06/Q@8S`rBaUCSJMttZ;U.W!=;jqkR-H?m9e7)Y'r,PA
+S+1@_$lCaHTD[EQ(Con#%iai3@goBO';N`pIA^`^+.7aUq%&$h[Ll536X6t&Wr4ueC_rX`!FLYWO*.()
+nOS($QB=NRU8^%?@YK)CJ(4BpIqEas=+>0PndO][o/!,[QCBXgO=-ES`eiU3fOMBJF[P;=nlVc(f4038
+3f<#CNhecZ9[GrJVGSGqrqCTW4KAm?s4Z"Se'$=nTDM\h0-p`3Z@ADmU>tEZHlp(Nm91(%k5/44XYR>W
+37=`I%Ps\l)*mUeZXWd<*#Yn#!@^dbZf2BBlBCA@g's2DoQB\1MsX#HoO6&h6uXF%7TXE`;"`MLZ,QDG
+(WH(mbL_cUfKO,(FY.lT5>oM-EigOjCOi[n'`\QPs<-$RhD&tP[Kc/X+XF,ddWmOZ%19G*2`b#YtDMmg;P6'^fk^?tGdI]KmbguD/B^#p1\T0[hRRuALr5,Me[sPJ['Vq?(W(.Df\@01S-!MjR7P9>^6ebck87S
+,]7)^3%FAHG*A<]%8K>'-<2"#`a3bI./6h$5L)'e_"9c&\"A[krM-5.>Q:U@@7424e_lS2kR+g\D\%U\
+6F"b+'f!Q&Xqh$M/K/+=\lX;[XN>HpAd2'WQ'j_7;\2f[<[4eH&?!fH!=E\eK#G5V7oCH>Qd/V!DVS%9
+DS4iLeKOsm;87&7X1cNPO0R-sZ')Bbk^-h2/eY4!UK/nhT#C<*iTDJZeW>`u-V^KnK&aA^f8[g%L6]8Q
+@pe>h>-s^7HeNh(j@j%9(OWXTlI(I?9A@WZ41\n2g3`K<1f2uros70eX1"72/X!Pd%basJp#]MuS''ke
+-!SIZFXgDVh*]SOil@7sT,'^pruBLn/EhR",sETo=6A'ON5_TN062VkgK1r]S/$C)&iGk.-Q#eL^l3VN
+man-8BH-X1?Jt1950jK1M>QF^iP@&Q+<0XD2ReZhlu-7MN_[$X.)H]Y@k:5epjADGa7"8-*M6aUjqD[e
+.[?MfLqVc:\591RbDdQ!^VIB[=P_9a7U[UH,?5*&FSAf'_B.AS<]gTu'uqn875#H\^c"%\,5/UPiq]Nj
+6O9;jBT(+s*]rZ$E>j1Z%I/)jG!_-]g"pors*;%,CO^r:XlS3)7"uC-:cacB,"%l=WnQA78[p!n_H.[Z
+n_bF[OaE%>HpLm@dIU]RmjBU2o_F&rkI]CFms&YefeK7,fL6IL4)I1cO]g5U$Dmr8r_$harh2-6=l=BH
+h:qOLFcrBY`N_2CdDEaV\-63,/VEj<[?W+p4e#Gtjihi^FS;c868oVKZ=5a_K,`[S.,DE%M9fiDdtgd>
+4[So\)iYU`-!P.==tJX>gWl3B/NXe,mjNI_-^?k4/$LDL86Q/ZoK$_.Z.c]l99RENacm:d]L/h#W7&4J
+Zc]q#fd9.m(tH::Bi!ND;N)^(2JoGU*N]X,"OAmuRB88.cb-I;X@cc0]k'`n,S.KBp8Mf`Jb!%o@oYU(
+#4>1sC7?imId0SU\ZZN+WVH`#+k9W3egi>Q/r=g_$nn9gTYJJ.a)Pli[VRsYL40&>R63jke1SL
+]JCU)H\lc+NLu>:6N-^HD,*1
+_#kmX=B(mT0I3AY)pU!]`%dG8YDoU'P#VV1[<\#X:_fTj*.t$PUWn$<>(uaIC>S=nhu-so>;?"B-TD4/
+:UJn\nNJ\/aV41Q.;"\=\]XTnTl^*])S+(6O78:N/XVUq^ho`gWaE'5ss)l(3-0nJq;2
+dFWDaia'.@Y)5j>M0GO,FZf3>bWg#5kItI#`-XE@CqQr-.$#b4)-qD]]LUuaHK%(c*c4]cF%sqCEE/rY
+?ea;L4n1FE'Db]En8V7:%J/Q'^M-q_FAI:X*k*NRjBHOuHt2cd%@\`*2mr%02sqtV;R$[h&F&I:5@$B9
+h*02EkeXoT?L>Sr?cYX^-!ts<<3+aen'S4SHK$u$oQ]AV\Y@cpCA0X4^PS_m1;>]kMq%+Pc<[$Z5Upu\
+g;$TP\?Rj@mdm3[0[c@P^"Ie\eV[KlFo!H2<8nn*ebm]%hlm9/?<(u>`8h1o[eajNgNt6cRo],BpU!82
+<^51bEjW?FNs]unpfrC8MGrnBYg1Gr_d=4g3:Fjlc0pOj'Uo3B/1L0L\S[#rSP(DfCOWJh=jVFuc-[n7
+d&Q?EC6em$o=I,UiiDmgRC;-jI`F(+D:9H(H^;h6YJ+o'h#j><2nBa+k4_JP[eOTdkGfW*,0nVO&t,fr
+SZ?ZR]8b_0X4^fUSDST;H[gs`E3mg"3\?L^he96'oC7fpU/C%l;6%_g5H).h@X.Z_^1$VJ4m%N39P6GbYNC&N%q5)Z)Rg3N@W@]B4VmcI'&PjH;=2ISc8HOkgjSj%2'+Epob#(]Dajc<
+Rbnu)JA!N!FftBJ5Fq@QqDhj8CM5T?bO6DllN5\+-()W5oCVaRKsm*6AAoch7PYiioG$`Bf,&T0420rR
+lh,]Oc\/pe8:8+%pV5bcNO*p.<:MKV?#*r6"WuOkR*rb(0:CT)l!DOa=0s$Hs0Qsk4Ii^%icWmcP.%KD
+1NpoPM9Pb%^YlMZ+8GJCh*:084L4k]PF8_D9hb%P(7F;YS$J.L4IkNAc6i-N);Pkh?*Oq5WLZ^X/"&:nZ=&_L6>4/H^Y`#gRN)J3d
+7tue3fhM4]R:V.4jmDfdI/-h-p=O38upS<^*#U=uiE'6trRFUsccN5#f
+Q\il4bJ:[!?H0N@fDre*Ri3e+LCb37]+37RpO*uFmJ/2qQraG:T^+R
+?CmAT9(SeMUE7+-^@c[Ao"ibt#=kXc7FN/bLhbWp-bW27-.g=*MWpl@.Cd*s'2q7P:Woq6',Na^8UB%]
+nsnjk;(k^G'QLg&B^=dESttU^_krc[DPibueonK.Sid%up$s(9A:DOQS5$DQQFAM(5'`Z^4GnjLNHVIJo7gEb9)N;*
+OrN6T0P&jf8lK^fDQFRfQ=Y:0YS6S\41";O9nSR6s3C,?`2sbA-aHqacYPR^KsO9rB/#73AVX4%lEtM;
+pdce!9Bnb2[asgEGAJuW@S+)a3RV@UntB`**99V-J!73
+p4HC7Ng2`BW"ZSKG7TfSSC`jIOoXfsl[1;J(>h?DQo>Ho]2%WpTBh[Z).u1U2c,g2SK]qCA_HTiW2fD!
+3nLDgg=b8N^l%_8"6NCR#kT'9iLO*)k'o8L#M
+O3_e^-R`K#=dGUg=`QX@NUs%$fl/aY7JP!2i>SOL2+:ts41%$5XKfeEL#OJBXXVTqG+L"s!Am5rQD+_99r4,P8+otAdg
+LpA0:G=8YPao&C:O'l+6ej&2:or$0KCFoA!rH1K4A^ZPUYW
+^`A(qeQL0WRmqgbqqoT&He+,S7YR#+rXH1"h@'.$YJh/s8$C5dr-GX6XC*8!@B"q;#?Mc**=HHdMBde)
+-+qAC/6@uqL++kd)jZ:GWb56YGS*!iHgE!m'X21e3`A=`'Zq!(]b!EMdH@_+\#&?!_,*]%,XT[#T(aE3
+5P:Sd"V#%n'Gq=](t=t_DC=s20V.m6i$qCo2AXNkW2O[gKdlILjq0:p;r\M:C(.ho^-rc16S"64ds.Yg
+>0(eg#+X(iSmF6RkS1^G8n^\`i491G2?I0)F0oV:"bF4fg?&Z($$qs(]i[$,_nV)%2!N7#@3"l$mH#a/
+n'0tpp@R>T(>+!)$S)u=Xro+=*mFsAMeG%()XA(Ht-Rjr]\L_mUO]C.YS+M7g_>:=r)cKaQWY&]e4<1*P4
+BKu-"&m^0Bc'H48Me6HLMK1HIU,RMe-iI1$a-Lo'YW7]FW1$#/,*6@qD=6B(olfJ(?gY,[.U9qZWXuZG
+@T%pHLXf?r6/Pi$mT%HTNLT)hC3HdjDDl,J.i'u@J[p3s_VJD;HH(s'D(Lj'iJ;WZg8L$e0,Sk>E1?I?
+J;rs.&F1S@!DaHF_dZq%%t)cje:r4oS6H;fQ5f]?]?/ED9Xk#eh#EDH:-,s?*9_!tPM7d9GfXuqZa*Dq
+Rfd*=:G&inM4-m?8dGR>3.ne&@)XR"A;]$IW-a5rMQgT9$d!^3g@A%3S"lq92[?Tcd\J/:eRInfQ?oCg
+oWDYL)`oY4K)NV_9>CKI#F,dINX\I9Ti]M,!@rP-*j7:m@qqDDiC3#>0#FSC;,pDr@$0hJp'\^pUX<1h
+WTB+Zi-cBSZDH_pd=C=i%d#)V7TF@nLSt/LQ1$%=4mpYU),+6-2uJcZd8"t2RCr'=,K8G6CiX.Fs,Kf#?PpZr[(fd"RItsMOibDF
+\4jo/@WABj>!EsSZ5p('=%@>"bfqm,aQ/=T-M,pM1)VKW.Ej\U*//],-(h6Hn!l/$-m"ehnYSa(fg_ec
+hR'Zehf8.+cM,t9*?t)1Zs!a:(*J)W2H<^TTbm.4dTC:OLFVUKT#AZq-!TZ?>0X^+*HfrF?Oa(sdrZR:
+R,TQ4#"#M9Or1-Z8c,3L!(5WUP&P7`$qKi_@3$g;k0#;`Qr8KQ$uPHHh_FC)[>EE`!mA8FSQ]*m:f`<0;b6Jc!<)'rGP]4MY[.a^pq:TF6>ds8C7
+bUP:F/H&"TaG<\.6>WEp[9r-]Fbcp+m:m@8l58(he_Xsq9G(F9Toj(gS,IqP32L2<=2?XS<6NB;K@G9I
+i]+8@:%[*V]oJ8tG[@4m[e[FYc"C\=Y$A`AZgf.ORb,qI1G%r3LB3AqorUfa`$4H^\afJR=0u$SWU_sD
+iO?&d)Uq;Ia/MDX8UCO+<)2d)Ea9PmL3k5bK`nc92m<,TW8J8,RL>mB\u9MG@b^%.1JYIF*@+@2D^*hJ7o2qYf@adZT1#,+$e.R$MGb>UL18'N_(oetXuS]E97S--[#mF%q@ZoDF$
+FddP4O]V
+bj%O7`L+693<*b!oYIgC*qM`T`p=.P)#WO[`otii_76si5+1#%`C#q,.N.T?@9D8!3GrXj
+o8+\B9b8',I%5M(R)\qh'#\P5D%)G`VS+7C^f=udpkWOG7H1@O:N(/TW/=Z+onPZ//gH=H_KDgT]ANXK
+07%:!e[XHa'BQl(Ge_)_J&h:&kA+=/gr9te=UNSfDjKU&Fp\TB]h#:lQ_RI&Z%R.Eh3L!=9]p0@prV*k
+4j;XnalPBu3p!G?Gf-F\Wq-1M0h6lT.UUE"a&oui>1KJ(OV;h"RBr?0b&uYI]q8`V$'")FuOAN/+_3ZAsE!HJ.V[
+82$aHajIaI?^CXUbQ/$=XP%+]mR'Vo"j,MFPSZ?H\e*7Jml]@B>OLIJnNO?W$HolKdfQtK,=64"5*ZdtZ/[j/aTUQ>p$Tlpo(?QUR9e,0H,Z3aT75f[h.bb`,A-kumrQrhK.p9=#>8?/=@3L)HXi5XW=Nu>rpO4N&_g5esbFpNYN4**@^Snd]W=d7j&u9
+n!IaYl:mONceX%oN3`\-`GX#X+4Y6aIuB"(^CMr73n:>AaTU`,W`G3Ve8EYC2K#8t0<6('7CK)F'rm-Q
+fhb+S^MOUHjr7jukj':b.dFENH$G\44;I8SPQQgaAc#5#<6#7XeF7aWC(gL'b'E?`q0/"'TIA;XaZ/Wi
+DBoN@.&o0T=u[mEb?+AmJD>UMW2jPcAD3-hJ.[Hp=VCN,5c$IdRE*1%rC9ng?eN_%$RY$G\9$+'(J%)X!pL>/=
+`!O+:-,5i'P1:C*+preLEG
+J,X!aDM?-'5Q:HR]l*lE?iTV&^AdN'ruOE(p)h&dT5OO5J,Aj+s726N\SjW\fU/Yqi0P'Y+m^6(D
+endstream
+endobj
+7 0 obj
+ 25535
+endobj
+3 0 obj
+ <<
+ /Parent null
+ /Type /Pages
+ /MediaBox [0.0000 0.0000 400.00 201.00]
+ /Resources 8 0 R
+ /Kids [5 0 R]
+ /Count 1
+ >>
+endobj
+9 0 obj
+ [/PDF /Text /ImageC]
+endobj
+10 0 obj
+ <<
+ /S /Transparency
+ /CS /DeviceRGB
+ /I true
+ /K false
+ >>
+endobj
+11 0 obj
+ <<
+ /Alpha1
+ <<
+ /ca 1.0000
+ /CA 1.0000
+ /BM /Normal
+ /AIS false
+ >>
+ >>
+endobj
+8 0 obj
+ <<
+ /ProcSet 9 0 R
+ /ExtGState 11 0 R
+ >>
+endobj
+xref
+0 12
+0000000000 65535 f
+0000000015 00000 n
+0000000323 00000 n
+0000026286 00000 n
+0000000453 00000 n
+0000000529 00000 n
+0000000617 00000 n
+0000026262 00000 n
+0000026740 00000 n
+0000026456 00000 n
+0000026495 00000 n
+0000026597 00000 n
+trailer
+<<
+ /Size 12
+ /Root 2 0 R
+ /Info 1 0 R
+>>
+startxref
+26813
+%%EOF
diff --git a/mwre/figures/engine-schematics.pdf b/mwre/figures/engine-schematics.pdf
new file mode 100755
index 0000000..0ada95d
Binary files /dev/null and b/mwre/figures/engine-schematics.pdf differ
diff --git a/mwre/figures/overall-architecture.pdf b/mwre/figures/overall-architecture.pdf
new file mode 100755
index 0000000..448edaa
Binary files /dev/null and b/mwre/figures/overall-architecture.pdf differ
diff --git a/mwre/mwre-evaluation.tex b/mwre/mwre-evaluation.tex
index 787ee15..64d806b 100644
--- a/mwre/mwre-evaluation.tex
+++ b/mwre/mwre-evaluation.tex
@@ -1,5 +1,5 @@
-\section{Experiments}\label{sec:experiments}
+\section{Experiments}\label{sec:mwreexperiments}
The purpose of our experiments is twofold. We first compare in Section~\ref{sec:exp-overhead} the perfomance and overhead of our workflow engine with two related state-of-the-art workflow systems.
Second, we evaluate in Section~\ref{sec:exp-performance} the overhead of workflow execution with full-ahead scheduling to find out how well full-ahead scheduling performs on shared-memory manycore computers which exhibit completely different characteristics than DCIs.
@@ -12,14 +12,8 @@ We conducted all the experiments on a multi-core system with four Intel Xeon E7-
\begin{figure}[t]
\centering
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Povray-Runtime.tex}}
- \caption{Enactment time.}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Povray-Memory.tex}}
- \caption{Memory utilisation.}
- \end{subfigure}
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Povray-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Povray-Memory.tex}
\caption{Experimental results for the POV-Ray workflow.}
\label{fig:ex-povray-results}
\end{figure}
@@ -65,14 +59,8 @@ RainCloud is a meteorological workflow for weather simulation in mountainous reg
\begin{figure}[t]
\centering
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Raincloud-Runtime.tex}}
- \caption{Enactment time.}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Raincloud-Memory.tex}}
- \caption{Memory utilisation.}
- \end{subfigure}
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Raincloud-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Raincloud-Memory.tex}
\caption{Experimental results for the RainCloud workflow.}
\label{fig:ex-raincloud-results}
\end{figure}
@@ -103,14 +91,8 @@ In this experiment we cannot directly compare ASKALON to the rest because ASKALO
\begin{figure}[t]
\centering
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Montage-Runtime.tex}}
- \caption{Enactment time.}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Montage-Memory.tex}}
- \caption{Memory utilisation.}
- \end{subfigure}
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Montage-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Montage-Memory.tex}
\caption{Experimental results for the Montage workflow.}
\label{fig:ex-montage-results}
\end{figure}
@@ -131,44 +113,20 @@ The Sparselu workflow (see Figure~\ref{fig:ex-sparselu}) adapted from the \textt
\begin{figure}[t]
\centering
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-For-1-Runtime.tex}}
- \caption{Enactment time (\texttt{For-Length}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-For-1-Memory.tex}}
- \caption{Memory utilisation (\texttt{For-Length}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-For-2-Runtime.tex}}
- \caption{Enactment time (\texttt{For-Width}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-For-2-Memory.tex}}
- \caption{Memory utilisation (\texttt{For-Width}).}
- \end{subfigure}
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Sparselu-For-1-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Sparselu-For-1-Memory.tex}\qquad
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Sparselu-For-2-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Sparselu-For-2-Memory.tex}
\caption{Experimental results for the \texttt{For} variant of the Sparselu workflow.}
\label{fig:ex-Sparselu-for-results}
\end{figure}
\begin{figure}[t]
\centering
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-While-1-Runtime.tex}}
- \caption{Enactment time (\texttt{While-Length}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-While-1-Memory.tex}}
- \caption{Memory utilisation (\texttt{While-Length}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-While-2-Runtime.tex}}
- \caption{Enactment time (\texttt{While-Width}).}
- \end{subfigure}
- \begin{subfigure}[b]{0.48\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Sparselu-While-2-Memory.tex}}
- \caption{Memory utilisation (\texttt{While-Width}).}
- \end{subfigure}
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Sparselu-While-1-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Sparselu-While-1-Memory.tex}\qquad
+ \subfloattex{Enactment time.}{0.48\columnwidth}{./mwre/figures/Sparselu-While-2-Runtime.tex}
+ \subfloattex{Memory utilisation.}{0.48\columnwidth}{./mwre/figures/Sparselu-While-2-Memory.tex}
\caption{Experimental results for the \texttt{While} variant of the Sparselu workflow.}
\label{fig:ex-Sparselu-while-results}
\end{figure}
@@ -234,14 +192,8 @@ We generated three different workflows for each parameter combination, recorded
\begin{figure}[t!]
\centering
- \begin{subfigure}[b]{\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Scheduler01-Times-HEFT.tex}}
- \caption{HEFT.}
- \end{subfigure}
- \begin{subfigure}[b]{\textwidth}
- \resizebox{\columnwidth}{!}{ \input{./mwre/figures/Scheduler01-Times-JIT.tex}}
- \caption{MCT.}
- \end{subfigure}
+ \subfloattex{HEFT.}{\columnwidth}{./mwre/figures/Scheduler01-Times-HEFT.tex}\qquad
+ \subfloattex{MCT.}{\columnwidth}{./mwre/figures/Scheduler01-Times-JIT.tex}
\caption{Cumulative time analysis of HEFT and MCT.}
\label{fig:ex-scheduling-results}
\end{figure}
diff --git a/mwre/mwre-main.tex b/mwre/mwre-main.tex
index 91e48f0..9ae0825 100644
--- a/mwre/mwre-main.tex
+++ b/mwre/mwre-main.tex
@@ -1,5 +1,5 @@
-\chapter{Manycore Workflow Runtime Engine (MWRE)}
+\chapter{Manycore Workflow Runtime Engine}
\input{mwre/mwre-architecture}
diff --git a/phdthesis.kilepr b/phdthesis.kilepr
index 86a94b5..b58341a 100644
--- a/phdthesis.kilepr
+++ b/phdthesis.kilepr
@@ -4,7 +4,7 @@ img_extIsRegExp=false
img_extensions=.eps .jpg .jpeg .png .pdf .ps .fig .gif
kileprversion=2
kileversion=2.1.3
-lastDocument=mwre/mwre-evaluation.tex
+lastDocument=background/workflowmodel.tex
masterDocument=
name=PhD Thesis
pkg_extIsRegExp=false
@@ -44,6 +44,13 @@ Highlighting=BibTeX
Indentation Mode=normal
Mode=BibTeX
+[document-settings,item:conclusion/conclusion-main.tex]
+Bookmarks=
+Encoding=UTF-8
+Highlighting=LaTeX
+Indentation Mode=normal
+Mode=LaTeX
+
[document-settings,item:introduction/introduction-main.tex]
Bookmarks=
Encoding=UTF-8
@@ -86,6 +93,13 @@ Highlighting=LaTeX
Indentation Mode=normal
Mode=LaTeX
+[document-settings,item:scheduling/scheduling-main.tex]
+Bookmarks=
+Encoding=UTF-8
+Highlighting=LaTeX
+Indentation Mode=normal
+Mode=LaTeX
+
[document-settings,item:thesis.tex]
Bookmarks=
Encoding=UTF-8
@@ -100,6 +114,20 @@ Highlighting=LaTeX
Indentation Mode=normal
Mode=LaTeX
+[document-settings,item:wepevaluation/wepevaluation-main.tex]
+Bookmarks=
+Encoding=UTF-8
+Highlighting=LaTeX
+Indentation Mode=normal
+Mode=LaTeX
+
+[document-settings,item:workflowtransformations/workflowtransformations-evaluation.tex]
+Bookmarks=
+Encoding=UTF-8
+Highlighting=LaTeX
+Indentation Mode=normal
+Mode=LaTeX
+
[document-settings,item:workflowtransformations/workflowtransformations-main.tex]
Bookmarks=
Encoding=UTF-8
@@ -114,49 +142,26 @@ Highlighting=LaTeX
Indentation Mode=normal
Mode=LaTeX
+[document-settings,item:workflowtranslation/workflowtranslation-main.tex]
+Bookmarks=
+Encoding=UTF-8
+Highlighting=LaTeX
+Indentation Mode=normal
+Mode=LaTeX
+
[item:background/background-main.tex]
archive=true
column=31
encoding=UTF-8
highlight=LaTeX
-line=5
-mode=LaTeX
-open=true
-order=2
-
-[item:background/hardwaremodel.tex]
-archive=true
-column=0
-encoding=UTF-8
-highlight=LaTeX
line=3
mode=LaTeX
open=true
-order=5
+order=0
-[item:background/workflowmodel.tex]
+[item:background/figures/workflow-managementsystem.pdf]
archive=true
-column=18
-encoding=UTF-8
-highlight=LaTeX
-line=5
-mode=LaTeX
-open=false
-order=-1
-
-[item:biblio.bib]
-archive=true
-column=0
-encoding=UTF-8
-highlight=BibTeX
-line=186
-mode=BibTeX
-open=true
-order=7
-
-[item:conclusion/conclusion-main.tex]
-archive=true
-column=7536750
+column=4
encoding=
highlight=
line=0
@@ -164,6 +169,46 @@ mode=
open=false
order=-1
+[item:background/hardwaremodel.tex]
+archive=true
+column=0
+encoding=UTF-8
+highlight=LaTeX
+line=4
+mode=LaTeX
+open=true
+order=2
+
+[item:background/workflowmodel.tex]
+archive=true
+column=188
+encoding=UTF-8
+highlight=LaTeX
+line=63
+mode=LaTeX
+open=true
+order=1
+
+[item:biblio.bib]
+archive=true
+column=0
+encoding=UTF-8
+highlight=BibTeX
+line=224
+mode=BibTeX
+open=false
+order=10
+
+[item:conclusion/conclusion-main.tex]
+archive=true
+column=0
+encoding=UTF-8
+highlight=LaTeX
+line=0
+mode=LaTeX
+open=false
+order=8
+
[item:introduction/introduction-main.tex]
archive=true
column=0
@@ -179,50 +224,50 @@ archive=true
column=0
encoding=UTF-8
highlight=LaTeX
-line=1
+line=80
mode=LaTeX
-open=true
-order=4
+open=false
+order=12
[item:mwre/mwre-enactment.tex]
archive=true
column=0
encoding=UTF-8
highlight=LaTeX
-line=7
+line=93
mode=LaTeX
-open=true
-order=6
+open=false
+order=4
[item:mwre/mwre-evaluation.tex]
archive=true
-column=0
+column=36
encoding=UTF-8
highlight=LaTeX
-line=14
+line=1
mode=LaTeX
-open=true
-order=9
+open=false
+order=4
[item:mwre/mwre-main.tex]
archive=true
column=0
encoding=UTF-8
highlight=LaTeX
-line=2
+line=9
mode=LaTeX
-open=true
-order=3
+open=false
+order=1
[item:mwre/mwre-source-to-source-compiler.tex]
archive=true
-column=40
+column=14
encoding=UTF-8
highlight=LaTeX
-line=25
+line=65
mode=LaTeX
-open=true
-order=8
+open=false
+order=5
[item:mwre/povray.inspire]
archive=true
@@ -247,22 +292,22 @@ order=-1
[item:scheduling/scheduling-main.tex]
archive=true
column=0
-encoding=
-highlight=
+encoding=UTF-8
+highlight=LaTeX
line=0
-mode=
+mode=LaTeX
open=false
order=-1
[item:thesis.tex]
archive=true
-column=1
+column=24
encoding=UTF-8
highlight=LaTeX
-line=20
+line=93
mode=LaTeX
open=true
-order=0
+order=3
[item:titlepage.tex]
archive=true
@@ -271,28 +316,28 @@ encoding=UTF-8
highlight=LaTeX
line=6
mode=LaTeX
-open=true
+open=false
order=1
[item:wepevaluation/wepevaluation-main.tex]
archive=true
column=0
-encoding=
-highlight=
+encoding=UTF-8
+highlight=LaTeX
line=0
-mode=
+mode=LaTeX
open=false
order=-1
[item:workflowtransformations/workflowtransformations-evaluation.tex]
archive=true
-column=0
-encoding=
-highlight=
-line=0
-mode=
+column=95
+encoding=UTF-8
+highlight=LaTeX
+line=7
+mode=LaTeX
open=false
-order=-1
+order=11
[item:workflowtransformations/workflowtransformations-main.tex]
archive=true
@@ -301,52 +346,58 @@ encoding=UTF-8
highlight=LaTeX
line=6
mode=LaTeX
-open=true
-order=10
+open=false
+order=2
[item:workflowtransformations/workflowtransformations-transformations.tex]
archive=true
-column=0
+column=346
encoding=UTF-8
highlight=LaTeX
-line=38
+line=20
mode=LaTeX
-open=true
-order=11
+open=false
+order=3
[item:workflowtranslation/workflowtranslation-main.tex]
archive=true
column=0
-encoding=
-highlight=
+encoding=UTF-8
+highlight=LaTeX
line=0
-mode=
+mode=LaTeX
open=false
order=-1
[view-settings,view=0,item:background/background-main.tex]
CursorColumn=31
-CursorLine=5
+CursorLine=3
JumpList=
ViMarks=.,5,30,[,5,7,],5,30
[view-settings,view=0,item:background/hardwaremodel.tex]
CursorColumn=0
-CursorLine=3
+CursorLine=4
JumpList=
-ViMarks=.,1,22,[,1,9,],1,22
+ViMarks=.,4,0,[,4,0,],4,0
[view-settings,view=0,item:background/workflowmodel.tex]
-CursorColumn=18
-CursorLine=5
+CursorColumn=188
+CursorLine=63
JumpList=
-ViMarks=.,5,15,[,5,15,],5,15
+ViMarks=.,63,187,[,63,166,],63,187
[view-settings,view=0,item:biblio.bib]
CursorColumn=0
-CursorLine=186
+CursorLine=224
JumpList=
-ViMarks=.,185,1,[,151,0,],-1,-1
+ViMarks=.,223,0,[,224,0,],-1,-1
+
+[view-settings,view=0,item:conclusion/conclusion-main.tex]
+CursorColumn=0
+CursorLine=0
+JumpList=
+ViMarks=
[view-settings,view=0,item:introduction/introduction-main.tex]
CursorColumn=0
@@ -356,39 +407,45 @@ ViMarks=
[view-settings,view=0,item:mwre/mwre-architecture.tex]
CursorColumn=0
-CursorLine=1
+CursorLine=80
JumpList=
ViMarks=.,1,0,[,1,0,],1,0
[view-settings,view=0,item:mwre/mwre-enactment.tex]
CursorColumn=0
-CursorLine=7
+CursorLine=93
JumpList=
-ViMarks=.,157,571,[,157,571,],157,571
+ViMarks=.,93,2,[,93,2,],93,2
[view-settings,view=0,item:mwre/mwre-evaluation.tex]
-CursorColumn=0
-CursorLine=14
+CursorColumn=36
+CursorLine=1
JumpList=
-ViMarks=.,241,38,[,241,38,],241,51
+ViMarks=.,1,36,[,1,36,],1,36
[view-settings,view=0,item:mwre/mwre-main.tex]
CursorColumn=0
-CursorLine=2
+CursorLine=9
JumpList=
-ViMarks=.,9,26,[,9,17,],9,26
+ViMarks=.,9,0,[,9,0,],9,0
[view-settings,view=0,item:mwre/mwre-source-to-source-compiler.tex]
-CursorColumn=40
-CursorLine=25
+CursorColumn=14
+CursorLine=65
JumpList=
ViMarks=.,25,39,[,25,35,],25,39
-[view-settings,view=0,item:thesis.tex]
-CursorColumn=1
-CursorLine=20
+[view-settings,view=0,item:scheduling/scheduling-main.tex]
+CursorColumn=0
+CursorLine=0
JumpList=
-ViMarks=.,20,0,[,20,0,],20,0
+ViMarks=
+
+[view-settings,view=0,item:thesis.tex]
+CursorColumn=24
+CursorLine=93
+JumpList=
+ViMarks=.,93,23,[,93,23,],93,23
[view-settings,view=0,item:titlepage.tex]
CursorColumn=0
@@ -396,14 +453,32 @@ CursorLine=6
JumpList=
ViMarks=
+[view-settings,view=0,item:wepevaluation/wepevaluation-main.tex]
+CursorColumn=0
+CursorLine=0
+JumpList=
+ViMarks=
+
+[view-settings,view=0,item:workflowtransformations/workflowtransformations-evaluation.tex]
+CursorColumn=95
+CursorLine=7
+JumpList=
+ViMarks=.,0,46,[,0,46,],0,46
+
[view-settings,view=0,item:workflowtransformations/workflowtransformations-main.tex]
CursorColumn=0
CursorLine=6
JumpList=
-ViMarks=.,5,64,[,5,55,],5,64
+ViMarks=.,5,0,[,5,0,],5,0
[view-settings,view=0,item:workflowtransformations/workflowtransformations-transformations.tex]
+CursorColumn=346
+CursorLine=20
+JumpList=
+ViMarks=.,136,22,[,136,22,],136,46
+
+[view-settings,view=0,item:workflowtranslation/workflowtranslation-main.tex]
CursorColumn=0
-CursorLine=38
+CursorLine=0
JumpList=
ViMarks=
diff --git a/thesis.tex b/thesis.tex
index 144a852..a1f9448 100644
--- a/thesis.tex
+++ b/thesis.tex
@@ -1,88 +1,157 @@
\documentclass[
a4paper, % paper size
11pt, % font size
-% DIV=15, % used for typearea calculation
-% headsepline, % add head line to border calculation
- oneside, % onesided document
+ %DIV=15, % used for typearea calculation
+ %headsepline, % add head line to border calculation
+ twoside, % onesided document
footnotes = multiple, % visually separate two consecutive footnotes
-% toc = index, % add index to table of contents
+ %toc = index, % add index to table of contents
numbers = auto, % automatic placing of end dot in numbering
-% pagesize % used for flexibility
+ %pagesize % used for flexibility
]{scrbook}
\usepackage[utf8]{inputenc}
-\usepackage[caption=false,font=footnotesize]{subfig}
-\usepackage{subfig}
-\usepackage{wrapfig}
+
+%%% Page Layout %%%
+\usepackage[
+ inner=4.6cm,
+ outer=3.7cm,
+ top=4.4cm,
+ headsep=0.8cm,
+ bottom=4.4cm
+]{geometry}
+\setlength{\parindent}{1em}
+\setlength{\parskip}{0.5em}
+
+
+%%% Headers and Footers %%%
+\usepackage{scrlayer-scrpage}
+\pagestyle{scrheadings}
+\lehead{\pagemark}
+\rehead{\headmark}
+\rohead{\pagemark}
+\lohead{\headmark}
+\lefoot{}
+\rofoot{}
+
+%%% Math packages %%%
+\usepackage{amssymb}
+
+
+%%% Graphics/Figures Packages %%%
\usepackage{graphicx}
+\usepackage{wrapfig}
\usepackage{caption}
-%\usepackage{subcaption}
-\usepackage{xcolor}
+\usepackage[font=footnotesize]{subfig}
+%\usepackage{morefloats}
+
+
+%%% Listing Packages %%%
+\usepackage{scrhack} % Needed to mitigate incompatibilities of the listings package with the KOMA scripts packages
\usepackage{listings}
-\usepackage{url}
-\usepackage{morefloats}
+\usepackage{float} % Needed to prettify listings
+\floatstyle{ruled} % Default float style for new floats
+\newfloat{listing}{tbph}{listing} % Define a new float for listings
+\floatname{listing}{Listing} % Define the name to be used in captions for listings
-\usepackage{float}
-\floatstyle{ruled}
-\newfloat{listing}{tbph}{listing}
-\floatname{listing}{Listing}
-
-\usepackage{tikz}
-\newcommand*\circled[1]{\tikz[baseline=(char.base)]{\node[shape=circle,draw,inner sep=0.5pt] (char) {#1};}}
-
+%%% Algorithm packages %%%
\usepackage{algorithmicx}
\usepackage{algpseudocode}
-\usepackage{algorithm}
-
-\renewcommand{\algorithmicrequire}{\textbf{Input:}}
-\renewcommand{\algorithmicensure}{\textbf{Output:}}
-
+% User defined algorithmicx block representing a struct
\algblockx[Struct]{StructStart}{StructEnd}%
[1][structname]{\textbf{struct #1 \{}}%
{\textbf{\}}}
-
-
+% We need to make \Call robust to be able to nest \Call statements
\usepackage{makerobust}
\MakeRobustCommand{\Call}
-\usepackage{placeins}
-\usepackage[binary-units=true]{siunitx}
+
+%%% Used to create a circled number %%%
+\usepackage{tikz}
+\newcommand*\circled[1]{\tikz[baseline=(char.base)]{\node[shape=circle,draw,inner sep=0.5pt] (char) {#1};}}
+
+
+%%% Other Packages %%%
+\usepackage[binary-units=true]{siunitx} % SI-Units helper package
+\usepackage{url} % Needed for declaring urls
+%\usepackage{xcolor} % Sometimes it is useful to color something
+%\usepackage{placeins} % Needed for \FloatBarrier
+
+
+% Needed for having the table of content as pdf index
+% Should usually be the very last package
+\usepackage[]{hyperref}
+\hypersetup{
+ pdftitle={Your title here},
+ pdfauthor={Your name here},
+ pdfsubject={Your subject here},
+ pdfkeywords={keyword1, keyword2},
+ bookmarksnumbered=true,
+ bookmarksopen=true,
+ bookmarksopenlevel=2,
+ colorlinks=false,
+ pdfstartview=Fit,
+ pdfpagemode=UseOutlines,
+ pdfpagelayout=TwoPageRight
+}
+
+%%% Custom Commands %%%
+\newcommand*{\EmptyPage}{\newpage\null\thispagestyle{empty}\newpage} % Inserts an empty page
+\newcommand*{\subfloattex}[3]{\subfloat[#1]{\resizebox{#2}{!}{\input{#3}}}} % Convenience command for putting a .tex figure into a \subfloat
-% Bibliography
-%\usepackage[backend=bibtex,style=numeric]{biblatex}
-%\addbibresource{biblio.bib}
-
-
+%%%%%% Document Start %%%%%%
\begin{document}
+%%% Title/Preface Pages, Table of Content, etc %%%
\include{titlepage}
+\cleardoublepage
+
+\textbf{Certificate of Authorship and Originality} here
+
+\cleardoublepage
+
+\textbf{Abstract} here
+
+\cleardoublepage
+
+\textbf{Acknowledgements} here
+
+\cleardoublepage
+
\tableofcontents
-\include{introduction/introduction-main}
+
+%%% Real content start here %%%
+
+%\include{introduction/introduction-main}
\include{background/background-main}
-\include{workflowtranslation/workflowtranslation-main}
+%\include{workflowtranslation/workflowtranslation-main}
-\include{mwre/mwre-main}
+%\include{mwre/mwre-main}
-\include{scheduling/scheduling-main}
+%\include{scheduling/scheduling-main}
-\include{wepevaluation/wepevaluation-main}
+%\include{wepevaluation/wepevaluation-main}
-\include{workflowtransformations/workflowtransformations-main}
+%\include{workflowtransformations/workflowtransformations-main}
-\include{conclusion/conclusion-main}
+%\include{conclusion/conclusion-main}
+
+
+%%% Bibliography %%%
\bibliographystyle{abbrv}
\bibliography{biblio}
+
\end{document}
diff --git a/workflowtransformations/figures/Raincloud-experiments1.pdf b/workflowtransformations/figures/Raincloud-experiments1.pdf
new file mode 100644
index 0000000..475e77c
Binary files /dev/null and b/workflowtransformations/figures/Raincloud-experiments1.pdf differ
diff --git a/workflowtransformations/figures/Raincloud-experiments2.pdf b/workflowtransformations/figures/Raincloud-experiments2.pdf
new file mode 100644
index 0000000..c0b0106
Binary files /dev/null and b/workflowtransformations/figures/Raincloud-experiments2.pdf differ
diff --git a/workflowtransformations/figures/Raincloud-experiments3.pdf b/workflowtransformations/figures/Raincloud-experiments3.pdf
new file mode 100644
index 0000000..c4dfeb9
Binary files /dev/null and b/workflowtransformations/figures/Raincloud-experiments3.pdf differ
diff --git a/workflowtransformations/figures/Sparselu-Heft-Speedup-early.pdf b/workflowtransformations/figures/Sparselu-Heft-Speedup-early.pdf
new file mode 100644
index 0000000..5520023
Binary files /dev/null and b/workflowtransformations/figures/Sparselu-Heft-Speedup-early.pdf differ
diff --git a/workflowtransformations/figures/Sparselu-Heft-Speedup-late.pdf b/workflowtransformations/figures/Sparselu-Heft-Speedup-late.pdf
new file mode 100644
index 0000000..dff8292
Binary files /dev/null and b/workflowtransformations/figures/Sparselu-Heft-Speedup-late.pdf differ
diff --git a/workflowtransformations/figures/Sparselu-experiments1.pdf b/workflowtransformations/figures/Sparselu-experiments1.pdf
new file mode 100644
index 0000000..29fe70e
Binary files /dev/null and b/workflowtransformations/figures/Sparselu-experiments1.pdf differ
diff --git a/workflowtransformations/figures/Sparselu-experiments2.pdf b/workflowtransformations/figures/Sparselu-experiments2.pdf
new file mode 100644
index 0000000..6ff5c82
Binary files /dev/null and b/workflowtransformations/figures/Sparselu-experiments2.pdf differ
diff --git a/workflowtransformations/figures/blast-experiment01.pdf b/workflowtransformations/figures/blast-experiment01.pdf
new file mode 100644
index 0000000..430f792
Binary files /dev/null and b/workflowtransformations/figures/blast-experiment01.pdf differ
diff --git a/workflowtransformations/figures/blast-experiment02.pdf b/workflowtransformations/figures/blast-experiment02.pdf
new file mode 100644
index 0000000..f12e370
Binary files /dev/null and b/workflowtransformations/figures/blast-experiment02.pdf differ
diff --git a/workflowtransformations/figures/blast-reduction.pdf b/workflowtransformations/figures/blast-reduction.pdf
new file mode 100644
index 0000000..044c728
Binary files /dev/null and b/workflowtransformations/figures/blast-reduction.pdf differ
diff --git a/workflowtransformations/figures/elimination-Makespan.pdf b/workflowtransformations/figures/elimination-Makespan.pdf
new file mode 100644
index 0000000..cda69b4
Binary files /dev/null and b/workflowtransformations/figures/elimination-Makespan.pdf differ
diff --git a/workflowtransformations/figures/loophoisting-Makespan.pdf b/workflowtransformations/figures/loophoisting-Makespan.pdf
new file mode 100644
index 0000000..14bff13
Binary files /dev/null and b/workflowtransformations/figures/loophoisting-Makespan.pdf differ
diff --git a/workflowtransformations/figures/meteoag-enactment-early.pdf b/workflowtransformations/figures/meteoag-enactment-early.pdf
new file mode 100644
index 0000000..967ed12
Binary files /dev/null and b/workflowtransformations/figures/meteoag-enactment-early.pdf differ
diff --git a/workflowtransformations/figures/meteoag-enactment-late.pdf b/workflowtransformations/figures/meteoag-enactment-late.pdf
new file mode 100644
index 0000000..65f85f2
Binary files /dev/null and b/workflowtransformations/figures/meteoag-enactment-late.pdf differ
diff --git a/workflowtransformations/figures/meteoag-speedup.pdf b/workflowtransformations/figures/meteoag-speedup.pdf
new file mode 100644
index 0000000..761b16c
Binary files /dev/null and b/workflowtransformations/figures/meteoag-speedup.pdf differ
diff --git a/workflowtransformations/figures/meteoag01.pdf b/workflowtransformations/figures/meteoag01.pdf
new file mode 100644
index 0000000..b43c231
Binary files /dev/null and b/workflowtransformations/figures/meteoag01.pdf differ
diff --git a/workflowtransformations/figures/meteoag02.pdf b/workflowtransformations/figures/meteoag02.pdf
new file mode 100644
index 0000000..34e5f89
Binary files /dev/null and b/workflowtransformations/figures/meteoag02.pdf differ
diff --git a/workflowtransformations/figures/meteoag03.pdf b/workflowtransformations/figures/meteoag03.pdf
new file mode 100644
index 0000000..e460772
Binary files /dev/null and b/workflowtransformations/figures/meteoag03.pdf differ
diff --git a/workflowtransformations/figures/pipelining-Makespan.pdf b/workflowtransformations/figures/pipelining-Makespan.pdf
new file mode 100644
index 0000000..a7d7405
Binary files /dev/null and b/workflowtransformations/figures/pipelining-Makespan.pdf differ
diff --git a/workflowtransformations/figures/raincloud-EnactmentTimeEarly.pdf b/workflowtransformations/figures/raincloud-EnactmentTimeEarly.pdf
new file mode 100644
index 0000000..e998398
Binary files /dev/null and b/workflowtransformations/figures/raincloud-EnactmentTimeEarly.pdf differ
diff --git a/workflowtransformations/figures/raincloud-EnactmentTimeLate.pdf b/workflowtransformations/figures/raincloud-EnactmentTimeLate.pdf
new file mode 100644
index 0000000..2f9536e
Binary files /dev/null and b/workflowtransformations/figures/raincloud-EnactmentTimeLate.pdf differ
diff --git a/workflowtransformations/figures/raincloud-MemoryLate.pdf b/workflowtransformations/figures/raincloud-MemoryLate.pdf
new file mode 100644
index 0000000..7f6e9cc
Binary files /dev/null and b/workflowtransformations/figures/raincloud-MemoryLate.pdf differ
diff --git a/workflowtransformations/figures/raincloud-NodeCountLate.pdf b/workflowtransformations/figures/raincloud-NodeCountLate.pdf
new file mode 100644
index 0000000..6f40944
Binary files /dev/null and b/workflowtransformations/figures/raincloud-NodeCountLate.pdf differ
diff --git a/workflowtransformations/figures/raincloud-VisitationCountEarly.pdf b/workflowtransformations/figures/raincloud-VisitationCountEarly.pdf
new file mode 100644
index 0000000..18979fe
Binary files /dev/null and b/workflowtransformations/figures/raincloud-VisitationCountEarly.pdf differ
diff --git a/workflowtransformations/figures/raincloud-VisitationCountLate.pdf b/workflowtransformations/figures/raincloud-VisitationCountLate.pdf
new file mode 100644
index 0000000..3720b11
Binary files /dev/null and b/workflowtransformations/figures/raincloud-VisitationCountLate.pdf differ
diff --git a/workflowtransformations/figures/transformation-CodeHoisting.pdf b/workflowtransformations/figures/transformation-CodeHoisting.pdf
new file mode 100644
index 0000000..0ef8a12
--- /dev/null
+++ b/workflowtransformations/figures/transformation-CodeHoisting.pdf
@@ -0,0 +1,314 @@
+%PDF-1.4
+%âãÏÓ
+1 0 obj
+ <<
+ /Title ()
+ /Author ()
+ /Subject ()
+ /Keywords ()
+ /Creator (yExport 1.4.0.1)
+ /Producer (org.freehep.graphicsio.pdf.YPDFGraphics2D 1.4.0.1)
+ /CreationDate (D:20161122182447+01'00')
+ /ModDate (D:20161122182447+01'00')
+ /Trapped /False
+ >>
+endobj
+2 0 obj
+ <<
+ /Type /Catalog
+ /Pages 3 0 R
+ /ViewerPreferences 4 0 R
+ /OpenAction [5 0 R /Fit]
+ >>
+endobj
+4 0 obj
+ <<
+ /FitWindow true
+ /CenterWindow false
+ >>
+endobj
+5 0 obj
+ <<
+ /Parent 3 0 R
+ /Type /Page
+ /Contents 6 0 R
+ >>
+endobj
+6 0 obj
+ <<
+ /Length 7 0 R
+ /Filter [/ASCII85Decode /FlateDecode]
+ >>
+stream
+GauHq]<5_UEhm&L;*U]dh[`YOJ,s1OA&oDmR+oW[JKFh%b_h5#,hMJ(mC@b?G,jSaMbGJ>A25%`c9KbK
+htQd>kO7sLQ3R9ckHAh(na2n;f=0>^O+Y1egF$@chF2g?qsE.QIf$lU3Ih&>?iU,[^ZFp6q6,i'm@XFV
+b9-c_?iKS"rhI7.i?'.us7q/KY#!l$[f',`T=U5(rjt#b2i7Oc1B1Ws'h/..8^58kV:#4`RmWs#q"I:R
+?T^efFmm!GWq+&[?Sg\l[oV50UkDt%0PtUc@>CZWbQ]jI``fIN`ng8[?8)F6?%G$ug
+GG);liEcbS+)P.eir!<2Vagie+$29&)+80Ood=VD+19e2:F"%d5DE]`R4.asO>f