From 2714647fd74ef1b98d84292378513d92d2de4cea Mon Sep 17 00:00:00 2001 From: Salvatore Filippone Date: Fri, 25 Mar 2011 16:23:33 +0000 Subject: [PATCH] psblas3: Version number string & docs. --- base/modules/psb_const_mod.F90 | 7 + docs/html/footnode.html | 2 +- docs/html/img100.png | Bin 341 -> 227 bytes docs/html/img101.png | Bin 258 -> 341 bytes docs/html/img102.png | Bin 193 -> 258 bytes docs/html/img103.png | Bin 134 -> 193 bytes docs/html/img104.png | Bin 255 -> 134 bytes docs/html/img105.png | Bin 387 -> 255 bytes docs/html/img106.png | Bin 263 -> 387 bytes docs/html/img107.png | Bin 244 -> 263 bytes docs/html/img108.png | Bin 276 -> 244 bytes docs/html/img109.png | Bin 374 -> 276 bytes docs/html/img110.png | Bin 222 -> 374 bytes docs/html/img111.png | Bin 259 -> 222 bytes docs/html/img112.png | Bin 804 -> 259 bytes docs/html/img113.png | Bin 408 -> 804 bytes docs/html/img114.png | Bin 419 -> 408 bytes docs/html/img115.png | Bin 354 -> 419 bytes docs/html/img116.png | Bin 310 -> 354 bytes docs/html/img117.png | Bin 835 -> 310 bytes docs/html/img118.png | Bin 335 -> 835 bytes docs/html/img119.png | Bin 497 -> 335 bytes docs/html/img120.png | Bin 403 -> 497 bytes docs/html/img121.png | Bin 266 -> 403 bytes docs/html/img122.png | Bin 533 -> 266 bytes docs/html/img123.png | Bin 544 -> 533 bytes docs/html/img124.png | Bin 334 -> 544 bytes docs/html/img125.png | Bin 231 -> 334 bytes docs/html/img126.png | Bin 519 -> 231 bytes docs/html/img127.png | Bin 604 -> 519 bytes docs/html/img128.png | Bin 577 -> 604 bytes docs/html/img129.png | Bin 210 -> 577 bytes docs/html/img130.png | Bin 568 -> 210 bytes docs/html/img131.png | Bin 743 -> 568 bytes docs/html/img132.png | Bin 276 -> 743 bytes docs/html/img133.png | Bin 521 -> 276 bytes docs/html/img134.png | Bin 267 -> 521 bytes docs/html/img135.png | Bin 570 -> 267 bytes docs/html/img136.png | Bin 239 -> 570 bytes docs/html/img137.png | Bin 0 -> 239 bytes docs/html/img139.png | Bin 371 -> 0 bytes docs/html/img14.png | Bin 240 -> 649 bytes docs/html/img140.png | Bin 431 -> 371 bytes docs/html/img141.png | Bin 916 -> 431 bytes docs/html/img142.png | Bin 676 -> 916 bytes docs/html/img143.png | Bin 234 -> 676 bytes docs/html/img144.png | Bin 430 -> 234 bytes docs/html/img145.png | Bin 500 -> 430 bytes docs/html/img146.png | Bin 412 -> 500 bytes docs/html/img147.png | Bin 356 -> 412 bytes docs/html/img148.png | Bin 379 -> 356 bytes docs/html/img149.png | Bin 288 -> 379 bytes docs/html/img15.png | Bin 192 -> 240 bytes docs/html/img16.png | Bin 368 -> 192 bytes docs/html/img17.png | Bin 520 -> 368 bytes docs/html/img18.png | Bin 0 -> 520 bytes docs/html/img19.png | Bin 6852 -> 0 bytes docs/html/img20.png | Bin 0 -> 6852 bytes docs/html/img21.png | Bin 517 -> 0 bytes docs/html/img22.png | Bin 771 -> 517 bytes docs/html/img23.png | Bin 618 -> 771 bytes docs/html/img24.png | Bin 0 -> 618 bytes docs/html/img25.png | Bin 480 -> 0 bytes docs/html/img26.png | Bin 184 -> 480 bytes docs/html/img27.png | Bin 232 -> 184 bytes docs/html/img28.png | Bin 201 -> 232 bytes docs/html/img29.png | Bin 226 -> 201 bytes docs/html/img30.png | Bin 449 -> 226 bytes docs/html/img31.png | Bin 464 -> 449 bytes docs/html/img32.png | Bin 266 -> 464 bytes docs/html/img33.png | Bin 780 -> 266 bytes docs/html/img34.png | Bin 247 -> 780 bytes docs/html/img35.png | Bin 567 -> 247 bytes docs/html/img36.png | Bin 1050 -> 567 bytes docs/html/img37.png | Bin 310 -> 1050 bytes docs/html/img38.png | Bin 791 -> 310 bytes docs/html/img39.png | Bin 436 -> 791 bytes docs/html/img40.png | Bin 868 -> 436 bytes docs/html/img41.png | Bin 309 -> 868 bytes docs/html/img42.png | Bin 508 -> 309 bytes docs/html/img43.png | Bin 907 -> 508 bytes docs/html/img44.png | Bin 562 -> 907 bytes docs/html/img45.png | Bin 564 -> 562 bytes docs/html/img46.png | Bin 325 -> 564 bytes docs/html/img47.png | Bin 646 -> 325 bytes docs/html/img48.png | Bin 486 -> 646 bytes docs/html/img49.png | Bin 670 -> 486 bytes docs/html/img50.png | Bin 721 -> 670 bytes docs/html/img51.png | Bin 729 -> 721 bytes docs/html/img52.png | Bin 242 -> 729 bytes docs/html/img53.png | Bin 255 -> 242 bytes docs/html/img54.png | Bin 350 -> 255 bytes docs/html/img55.png | Bin 416 -> 350 bytes docs/html/img56.png | Bin 3612 -> 416 bytes docs/html/img57.png | Bin 199 -> 3612 bytes docs/html/img58.png | Bin 228 -> 199 bytes docs/html/img59.png | Bin 426 -> 228 bytes docs/html/img60.png | Bin 804 -> 426 bytes docs/html/img61.png | Bin 282 -> 804 bytes docs/html/img62.png | Bin 404 -> 282 bytes docs/html/img63.png | Bin 97 -> 404 bytes docs/html/img64.png | Bin 3613 -> 97 bytes docs/html/img65.png | Bin 364 -> 3613 bytes docs/html/img66.png | Bin 249 -> 364 bytes docs/html/img67.png | Bin 257 -> 249 bytes docs/html/img68.png | Bin 267 -> 257 bytes docs/html/img69.png | Bin 261 -> 267 bytes docs/html/img70.png | Bin 335 -> 261 bytes docs/html/img71.png | Bin 776 -> 335 bytes docs/html/img72.png | Bin 117 -> 776 bytes docs/html/img73.png | Bin 5395 -> 117 bytes docs/html/img74.png | Bin 793 -> 5395 bytes docs/html/img75.png | Bin 366 -> 793 bytes docs/html/img76.png | Bin 497 -> 366 bytes docs/html/img77.png | Bin 325 -> 497 bytes docs/html/img78.png | Bin 362 -> 325 bytes docs/html/img79.png | Bin 301 -> 362 bytes docs/html/img80.png | Bin 350 -> 301 bytes docs/html/img81.png | Bin 534 -> 350 bytes docs/html/img82.png | Bin 172 -> 534 bytes docs/html/img83.png | Bin 826 -> 172 bytes docs/html/img84.png | Bin 357 -> 826 bytes docs/html/img85.png | Bin 501 -> 357 bytes docs/html/img86.png | Bin 366 -> 501 bytes docs/html/img87.png | Bin 255 -> 366 bytes docs/html/img88.png | Bin 243 -> 255 bytes docs/html/img89.png | Bin 186 -> 243 bytes docs/html/img90.png | Bin 425 -> 186 bytes docs/html/img91.png | Bin 573 -> 425 bytes docs/html/img92.png | Bin 318 -> 573 bytes docs/html/img93.png | Bin 459 -> 318 bytes docs/html/img94.png | Bin 395 -> 459 bytes docs/html/img95.png | Bin 286 -> 395 bytes docs/html/img96.png | Bin 415 -> 286 bytes docs/html/img97.png | Bin 186 -> 415 bytes docs/html/img98.png | Bin 375 -> 186 bytes docs/html/img99.png | Bin 227 -> 375 bytes docs/html/node100.html | 6 +- docs/html/node105.html | 20 +- docs/html/node107.html | 2 +- docs/html/node11.html | 10 +- docs/html/node13.html | 4 +- docs/html/node26.html | 30 +- docs/html/node27.html | 40 +- docs/html/node28.html | 38 +- docs/html/node29.html | 20 +- docs/html/node30.html | 14 +- docs/html/node31.html | 20 +- docs/html/node32.html | 24 +- docs/html/node33.html | 20 +- docs/html/node34.html | 14 +- docs/html/node35.html | 4 +- docs/html/node36.html | 50 +- docs/html/node37.html | 60 +- docs/html/node39.html | 30 +- docs/html/node40.html | 42 +- docs/html/node41.html | 22 +- docs/html/node42.html | 22 +- docs/html/node44.html | 34 +- docs/html/node45.html | 4 +- docs/html/node49.html | 2 +- docs/html/node5.html | 18 + docs/html/node50.html | 2 +- docs/html/node51.html | 8 +- docs/html/node55.html | 8 +- docs/html/node56.html | 6 +- docs/html/node59.html | 4 +- docs/html/node6.html | 14 +- docs/html/node60.html | 10 +- docs/html/node61.html | 10 +- docs/html/node62.html | 2 +- docs/html/node63.html | 2 +- docs/html/node64.html | 2 +- docs/html/node65.html | 2 +- docs/html/node68.html | 12 +- docs/html/node70.html | 32 +- docs/html/node72.html | 4 +- docs/html/node73.html | 6 +- docs/html/node74.html | 2 +- docs/html/node76.html | 6 +- docs/html/node80.html | 2 +- docs/html/node81.html | 4 +- docs/html/node82.html | 4 +- docs/html/node83.html | 4 +- docs/html/node84.html | 4 +- docs/html/node85.html | 4 +- docs/html/node86.html | 12 +- docs/html/node87.html | 12 +- docs/html/node88.html | 8 +- docs/html/node9.html | 4 +- docs/psblas-3.0.pdf | 2628 ++++++++++++++++---------------- docs/src/intro.tex | 4 + test/fileread/cf_sample.f90 | 7 + test/fileread/df_sample.f90 | 7 + test/fileread/sf_sample.f90 | 7 + test/fileread/zf_sample.f90 | 7 + test/pargen/ppde.f90 | 8 +- test/pargen/spde.f90 | 8 +- 198 files changed, 1747 insertions(+), 1678 deletions(-) diff --git a/base/modules/psb_const_mod.F90 b/base/modules/psb_const_mod.F90 index e91cafca..df212649 100644 --- a/base/modules/psb_const_mod.F90 +++ b/base/modules/psb_const_mod.F90 @@ -53,6 +53,13 @@ module psb_const_mod integer, save :: psb_sizeof_dp, psb_sizeof_sp integer, save :: psb_sizeof_int, psb_sizeof_long_int integer, save :: psb_mpi_integer + ! + ! Version + ! + character(len=*), parameter :: psb_version_string = "3.0.0" + integer, parameter :: psb_version_major = 3 + integer, parameter :: psb_version_minor = 0 + integer, parameter :: psb_patchlevel = 0 ! ! Handy & miscellaneous constants diff --git a/docs/html/footnode.html b/docs/html/footnode.html index 771031e9..2979db8b 100644 --- a/docs/html/footnode.html +++ b/docs/html/footnode.html @@ -104,7 +104,7 @@ sample scatter/gather routines. . -
... follows... follows3
The string is case-insensitive diff --git a/docs/html/img100.png b/docs/html/img100.png index 503b1ab625b0b58be3c1c329604963e873079469..985ac48f8c056c758514081d558883216f7b6673 100644 GIT binary patch delta 160 zcmcc0^q5hxGr-TCmrII^fq{Y7)59eQNQ;5kEX)iHj2b}@H}dKLQYnEjcUAG>TgQq-pYs3%%-wgkf-HlcIN-4&yORx^0I L`njxgN@xNAiBB_c delta 275 zcmV+u0qp+c0o4K_iBL{Q4GJ0x0000DNk~Le0000l0000U1Oos70XZmY0g)k0f73}s zK~yM_V_*ORb`ZhM00#|h{3v{e1_s_0KthWFJKzK21O`@i1~wKTOOe3=EXuJPhjMKC zTY!|n1O}D`1_D4<8UqW%2L^_KMd=U)ZN!>{A7ntNFesO)0cbTV0|Q$~1CYhAfPo+6 z{DcP=faC@+hnXQEh=FMWP#GHoX#*F7LjbA)+`EbPB0azsAnsIvusH%a9AM(C3qT}e zCD`@)3@jl31@#E{A7ntNFesO)0cbTV0|Q$~1CYhAfPo+6 z{DcP=faC@+hnXQEh=FMWP#GHoX#*F7LjbA)+`EbPB0azsAnsIvusH%a9AM(C3qT}e zCD`@)3@jl31@#EERLtq!mDH7G?$pM&Croof8#(>Ki;=978x}CMP(s z?-9NsF>!~EJFk$0#3r>`2O;lI3B}197`ennJ`@t5mcd3PG-7Be4aH>+i?V{2pUWSY=n$L!DKZ0#({%pA=W rak8jQ{ZS9Ugx$&wzDb!0VhjxPcSERLtq!mDH7G?$pM&Crooj{JkL{*J?6%`c;2?-t^ z9-zRh$kX$H6k|z{UoeBivm0qZPJ^e5V+hC0HlryA4;*Z4-77pl z?@q(qV&=o_X0^<9Y;A02olFxt?3n$ToUNTjnVF-RB2E^ysXyxBm#|y8!8a*0fq`NE XPKm@{5n`8tj$!b0^>bP0l+XkKUExDN delta 162 zcmZo-I>@Nn8Q|y6%O%Cdz`(%k>ERLtqiK-eU5)u+TJRqsg z^K}=26k|z{UoeBivm0qZj+3X0V+hC0}(bZjhEDfB_dcvBmx|) znVHRjSbjYt^X%!&%w-2^CVXX@aH;r#7egS=z8oF~_A6}0=2dmmfu=Edy85}Sb4q9e E06!NfmH+?% diff --git a/docs/html/img103.png b/docs/html/img103.png index de35d7fad8c77ab7abeff94980152111cb2310fd..b83a8d66b2d9b937bd16c8b5cf98e92f0b700064 100644 GIT binary patch delta 165 zcmZo;JjggfrCv9{C&YF0=FKZste7)r&V&gQT3T8vDk^evauN~}LPA13JUnb{Yzzzx zBqStwcz75X7&_0_T?A5$B|(0{3=Yq3qyafjo-U3d95a&>5+0-^BxEoov6Zp2StK-G zQWKVlU=fiBaIj`(HV0z)^^DB3r!zB`9jKY`m1)8yx#9<241qlRa(Ecnudo@LSJh1i P8pq)2>gTe~DWM4fS~WEe delta 105 zcmX@e*v2?PB}pj2C&YF0=FKfFEjc+kAt50)HZ}|l46Qx+Pk|I;NswPKgTu2MX+VyW zr;B3<$IRpe2L?4}fs!1wVrV($%E;h0m&q-~_n;S0HG`+CpUXO@ GgeCynJs)fU diff --git a/docs/html/img104.png b/docs/html/img104.png index d974a444ebb74a43b57ef65688153a9b9f139c8d..de35d7fad8c77ab7abeff94980152111cb2310fd 100644 GIT binary patch literal 134 zcmeAS@N?(olHy`uVBq!ia0vp^JRmj;GXn#o1jC}|K#ov=Pl)U0&6`_VT5@u7LPA1p zY;1tStv&fqffQp&kY6x^!?PP{K#r29i(?4K%;W?I1~q1ZlU&X`Is$SMkC~1!acnDM dXgTJ}$lx}Y$t}hApchazgQu&X%Q~loCIAY}A*=uZ literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^l0eMI!py+H7%x2QDUf3j;1lAydGqEKD^|>zGiSnt z2`w!x6%`dZIXMXl2_YdN9v&VxHZ}$Z1}Z8l5)u+TJUl>6uOd&+15%77L4Lsu4$p3+ z0XemvE{-7_Gn0YZ9{gZXktmUtIMCqlIDwJthNO(c6eDS7E&+x|ysnJA!V()8R~U** zMA(^dYBBJ7Oh`{>;o9)wbGk;tRYoQ|=?Rs06k2uSc#ccx9GWGe{?Dk`8Q|y6%O%Cdz`(%k>ERLtq$PovkA<0mfiYfq*3*fK-t`Q%o-U3d95a&> z5)vN#U{H}Lk(M~n;O{trk?V$}jKdToX=W|~hDW@vjJ(1U8yHs@ic3V;nQ&?`@On&0 zPiNuU@Zod1M#5D_COhc~m3I_cb>euAOXwV$C86Zt#23n=cSm@JzJY^CU6RKK@dsW) qz6J~*FU3mU@KSc3VJj)YAaY`Y$Ol8GbWWhd7(8A5T-G@yGywpKw>A0z delta 323 zcmV-J0lfbI0fPe}iBL{Q4GJ0x0000DNk~Le0000l0000W1Oos70S8zN+>s$me*pnW zL_t(2kz-&W0u(qfFaarkf(qFg5*U~^>?nZnxEUr8V>%z0a1vDA2HhPk|e*e@B6V0pUdDZ?dV$-4fyIk~!5bvb!Z|^)lYzmZiuD3R12702X2O!hOlF3UK0aJnzl#ras8S*tf003YV VCdFKD+D!le002ovPDHLkV1gI>aw7l$ diff --git a/docs/html/img106.png b/docs/html/img106.png index c352f896b67e66a4b0e9c1e4a113143ab585d5c0..92823e6ade91eeb26e1b718198aa36c3762bf332 100644 GIT binary patch delta 358 zcmV-s0h#`X0)qo3iBL{Q4GJ0x0000DNk~Le0000l0000W1Oos70S8zN+yDRoFp(uF zea1vDA2Hh zPk|e*M}dI>;ZRNnh6d_6lmbwQ#Fi8QdWk~;Lk-ggFf|!Wrc7WfOIyI|$VI>LZ^5ivcj8I43ATBXy|(IC}$- zN}C?i%)nm2!0E=okb&vK77)R>0aJnzl#ras@-;mG0ALg*#awUNO#lD@07*qoM6N<$ Eg7X@AFaQ7m delta 233 zcmZo>Zf8>M4DfU3<&xrJU|`_&^l%9R(o#Sy!otkJz$liE{-7*QbAo&23R07Yn)jT}>A`%wn3Qw$VIjG1p ztIs&jE9jHJ8vOpi1IA5(IkEzWC1xI&!tKmB<5|KEhDA3NmlmdKI;Vst0KADwkpKVy diff --git a/docs/html/img107.png b/docs/html/img107.png index f21abed1397a9b386d5c9f8cb5e896d16fe831ae..c352f896b67e66a4b0e9c1e4a113143ab585d5c0 100644 GIT binary patch literal 263 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)i!py+HD3-|}4dmzs_=LD_-n@CmiWPI_%$YD@ zLQ6|aMMXtUPEJBXLP$u6hlhuajg5hUfrNwv4-XGeN9Xyvi$IF8B*-tA!Qt7BG$5zL z)5S4FVrnu_PeSqmCaDCTYpZ#9_(dcv%oUzk-EvToXI7taoLA5%fi?L3fd`D60&`>q z4ol2DFooNhamKTR9SnERLtq-B9vj)j?lfiYCif(6J?5AX?b-Mo48iWMv7 z%$d{D(o#`Tk&}}%(NVNMl-2MhPz7U2kY6x^!?PP{Ku)!%i(`ny)Z_#QW;TsIoCe1v z6&f~1@;C^wH|T_gToou~pRi+&!&P$;k-`3Gwjou(7c*Fffpikl^9r0jdpUHGB!A7)yfuf*Bm1-ADs+sy$sCLnNjq zCpa*(Y3$)NI3}skurZRyL5RIUCoJTuKq>o#9djJk9AGu&I+NjW-BHEEBO!r<^%A>7 zSesL37`wq)DTXQfKp}2*nWx}bp#-9u!U8P)H@{1ax m8@DogTHdkw)nu&kfPvwWnWkHxV00$X84RATelF{r5}E+&<4R5d literal 276 zcmeAS@N?(olHy`uVBq!ia0vp^@*p+`GXn#oU}h;VkYg6$6XLpg^X9p8=N1TKr3s`MOM?7@ z862M7NCR?uJY5_^B&N;{xXpJ|f#Y?b-;|ZJ|Nq~t9XHALP3rPv4gxvc1{X?>H1)7E z^=rj#aDM3aO61`FuMSHU*e0G?Bd#^G=g8Wd{T>tlyL>AAx5cUDXnfOEgZGY;u6@4a zYSE?fQ2)?+f%TG|X8lKw#>}qxwX{Aw-2L@A|LCj?xmG@(+mp<<$G#|DpR@Oe@9gvD YlOvcbE7Endf$n1PboFyt=akR{01zH*1^@s6 diff --git a/docs/html/img109.png b/docs/html/img109.png index 0f14d83063bc869df21a39da4d669b5578105118..60d8dfe127b74eea9de665f15698294aaf919d60 100644 GIT binary patch delta 241 zcmeyyG=<5iGr-TCmrII^fq{Y7)59eQNXvuR9Lx+1jDne^yg-gwfKQ0)=FOYu&YfFa zTs%=nw?1OIl_pSvu_VYZn8D%MjWi&q$J50zL}KdPfZKdW6*yk^`Au0l`~UyV+HsR? z-=r=-<{*&6ZE&IFNK+3xQ@>W+2Iq%vuS5>+|LU+*fo ze_Nbdj>b1#HF)nh>DuQzt`=Py5A_eN7g#UZY1V(_s9DVHieF3X!^7QQpYxB-%8+a2 p^SM3Ae0%JR;`KRufB4QmZ$3GKxw0Z%Hyh|M22WQ%mvv4FO#l@RV4(m2 delta 340 zcmV-a0jvI$0`>wdiBL{Q4GJ0x0000DNk~Le0000=0000T1Oos70f=(fn*aa+Fi=cX zMYFTBkuoiR>RHR400001bW%=J06^y0W&i*H^hrcPR5*=eV1NN825f)>i`W4u&GmpG z@&f}y16GZ=0Qa|zfk5hfHUoonKSKi0-W??ACkiOAF-+iKcu>I5(b2-d#Kkay`c{wx z*m25ifGe56z-$=Lbl?L>jI|NS0SbONz$n1Mps;{{q2opa&^wF*K(PXMQ6Wa4AXx8& zZ=yoj%^T8yv4BJk+!!WgsJS;VaDJ0u@?v0X4XHpDDmSQxe{GGAa=rhqWZmVqk?ECU3W8Kxw#E8h)ZSmMA1 mB#=}eEoIs|IKU{t!Jx2! zq2opa&^wF*K(PXMQ6Wa4AXx8&e{Z5f*v%W#fU$r?4cr(eWT?3}FmQg8VDe&MYYnMD zQk4-3kpVJUcpcadFfd3OFhw&sEMu@ksAAztV159S0dcArYM2=$1y~riDl%VSSf+q5 z%a(yF2`mEyml>ucuq)pUU|8b71tgGEEoIj zBs@rHXy9XGOXKJk?BJD&1?CI zx6E13JlS&~kwNq>ce25A$F)g$3BTCVD)xmXSl>T%fPukqGvD(T_xNIy2q&48Q|y6%O%Cdz`(%k>ERLtq=kT(kA<0mfpPigM4^d_K7}!!E{-7_Gm{e% z5*{QpH1M&prEzo%cJN9_s2LnM5H4`=%<%@c9}*%BD#1oGJ~O&(FmF1+xhI3`=C%C9 zTjs21p6of0$RK)`JK5m5z`$U*neTavdwem_Rt8U3KbLh* G2~7a;@icn? delta 193 zcmV;y06zcT0fPb|iBL{Q4GJ0x0000DNk~Le0000R0000E1Oos70bAxu*pVSje}PFv zK~xBtV_-lA6CQv_UO1nLfq{$R0|NsmC$cJL1qL+(AkELfP$9s83Ah*-8yX<;UqO7J z=4KFW#K6o4q8Bh2aAMKMz|iv|fFbL*gZ4`YFqba@NX&)k1%g@-!F?H~_!)>WdkN*S vUjPyo4EhOR9$ViI29|l77;=697fk{HRI?V~F7<4c00000NkvXXu0mjfcFjQc diff --git a/docs/html/img112.png b/docs/html/img112.png index 47f71ed5aa73d1633fd778f3d042068a592a153c..04caf6e508c156c184859bb47356c8137e2220d3 100644 GIT binary patch delta 194 zcmV;z06qVt27>}2iBL{Q4GJ0x0000DNk~Le0000R0000E1Oos70bAxu*pVSie*l3= zL_t&tnPXr;1`{5DNM1OfiGhKO;R6E$CnvHhW(5W{10c=Mz)&H;fC;!57#kWO@?SxG zpyp-}ZN$LL2cj1+7;s|I#=y|?B7h<5w}bXe2QZf}0Z7b+=mmmW5W#&JruZ3%FnbB* wv0nfZ77Y3cU>;lF4hEKan;3F_7ywNI093OU;4bxSl>h($07*qoM6N<$f>x+N!2kdN delta 743 zcmV+0;C2ZiBL{Q4GJ0x0000DNk~Le0002A0000U1Oos70RUqeACVzTe*&UO zL_t(YiS1QQNEA^V|IN&s**Cj0JJW{-QMhzS4}lZdAt-o}njVa?5GqNRP~1x}hX{`^ z(A*Bu9_sEvtfN{+U221}V;dNFGzd>YV-j|o-pr(o>qmwK5&jPE{r(^C|Nigm|9~VY z+*Cd3(sa@u$ufS80w_EB912u;f1CNN82l?HDY(RxYiOHT#>1 zI||#(QshD|d+tJm#IVqSrHWXULF$2Vp?A58N<3(Q7L=ZN=(OFkuhR-zfA+K~plB}X5j9S2$iDno8w+@nX27xqD8Fg6XfeXH; z>Yzn&r*p$Zq^1(0i#7+Jf6B1Jcj3BITJ%0#xF`B)XB0a%sJ5nf@U4}03h%n0iKiTG zBp>)}_||=9`7oka%HxYybsKl_Uqc%ytI2NvT^DyBuC)28Wm-!n73yL;|(v?G8*T^H*&vC)@ zGOkv}yqpssnlD9ZJubSlc%=2{BJmhB@mG`NCZ^Zz@oyr1bCuGe+X;hwkMA(_E_SgM ZegJYV-j|o-pr(o>qmwK5&jPE{r(^C|Nigm|9~VY z+*Cd3(sa@u$ufS80w_EB912u;f1CNN82l?HDY(RxYiOHT#>1 zI||#(QshD|d+tJm#IVqSrHWXULF$2Vp?A58N<3(Q7L=ZN=(OFkuhR-zfA+K~plB}X5j9S2$iDno8w+@nX27xqD8Fg6XfeXH; z>Yzn&r*p$Zq^1(0i#7+Jf6B1Jcj3BITJ%0#xF`B)XB0a%sJ5nf@U4}03h%n0iKiTG zBp>)}_||=9`7oka%HxYybsKl_Uqc%ytI2NvT^DyBuC)28Wm-!n73yL;|(v?G8*T^H*&vC)@ zGOkv}yqpssnlD9ZJubSlc%=2{BJmhB@mG`NCZ^Zz@oyr1bCuGe+X;hwkMA(_E_SgM ZegJh$nC$>6K$_ z2mrBxVjDhyWS<0VU~m8naPbLnLsbgE^iLqoI?{jvlm`3R2;{(iRBJgH_@M#`3=FIW z3H$g!0tpP25Wx=&4*U=m{5)U*f1_vY+z=J)ECmh_MNDw(7N8oAwM!5y0&LmFGCXz`&TH=H9@-vH{3t;hezCFash7*U!T1 zz;=KElJsUWGcbK%0w*Vg`Be-x%nS?n;i$|=JF3}mbT0000?Qnh)kKlklGRv!0iB)=QzN?z?h-t-oU`J0mxH`WUK%H002ovPDHLkV1o2@d&B?$ delta 354 zcmV-o0iFJs1ET{WiBL{Q4GJ0x0000DNk~Le0000&0000W1Oos70V6?!9FZYRe<4Xk zK~y-6V_<-S1~93>fFCeJX?_j{g%7iL6Htw;qX8!HL4jfS1`Zz5OK_ZM$wG$XP$+3_uPymDo@PGkmwGqsA4hY2t zMlitgz(t0E)qnvKPK*K!3``0je+?gioYT8^H-Los6zZ8+7>rn;TE0RkE-*p{j0isu zNdOK8pdThMFcdOOM3Xc{Vrzj(E(J^@SiBfm!&9OewlFZHOkiNy01|6}Nro%{5)LyN z4A?e+0+@w!0wkQL!xS)yf;4bWP+;J7U;@S7OlEK-GO!82lyC=wRJbv0I87@tU}$4t zSZct)h8*QU70yT;POuv_@%h>Uh}jMBsTlGA0EO=?>MW^yR{#J207*qoM6N<$f?Onc Av;Y7A diff --git a/docs/html/img115.png b/docs/html/img115.png index 343909734acb1734e6568be66e6b2a792500f085..988e80e204c20d1320ea3ce8843fd25f73cb9567 100644 GIT binary patch delta 355 zcmV-p0i6Eg0;2;ViBL{Q4GJ0x0000DNk~Le0000&0000W1Oos70V6?!9FZYQe*qy$ zL_t(IjbmVdf(9_DzAW)3=B*Pe;^GXfSl92cQ=59`4sAzSQw00pjy5{C@wHU28;+l z4@m$H2B04%FfbG{Ohl73MPh4#NiGFUBUro`Si@7I8MZJmq)cF7*#Hu2fJufd01^%} z84TDqfC89>a{?rsr^6I5iGnn6PEcUrbzlO;-b`k2Br>oGz?5(YgH*UNIc!ZUF<@w8 zU|4Fvz=j;VwY delta 289 zcmV++0p9+j1L6W9iBL{Q4GJ0x0000DNk~Le0000b0000W1Oos70T6ne6_FuJe*oY~ zL_t(2kz-&0g90EvzyJpcK)iqf2{7?8-~j9#a5W4J4Y*XH0zM#~zz$X|$Jh|S5Dyl8 z60m{6fsw%hsz`u=kvP+E00XdoBOq4bVSxyNoLa!ZYLKvx4`}=Y28Is|4*Wo8d;qF@ z#?H;~m0<(SCkzS@EfW|xDRKoVcc2hLNir~qg9s$Rv;a&U0+T5d7*bmz0=OL*RDi$S;_|;n|HeAm@Rni(`n!#N-5qW+nx@0}Sk(4tp9HISoD@c4UH2mE*CH`Z>UpN2z!v& z$k8|_>cD}l2^;$PGyX8M)wl8U@cnT}uVGkKeeB%X4^tDFco3Frz-SZEfpYAz6P z@-#B&Xy#Bku!X@#mT9u4utZR_64MS@iI9dv_Y@Sx&T*dMF_w_{At@1J-k_;44e$fB`00DGTPE!Ct=GbNc006g1L_t(2k+qP$4Z<)Gg+G!QEG!}@ z=rckZdL$$yI!mNsixe3kBOt*58Nov^03&!5oC_!vm@cpI{oi{&h@!CJ(UGE}B?sSk zl<^&4=)@?L4+Bb*vNlr6p#C=+V@^J9YTFG4g4Bh6`pqC5FS1wH+U0gox0kknx%d;~ z2s@fF&V*YF@vOO>tSPBFQr9O^9)w#aTPOGIHM*oft~tLGm+EfO7IQ$g<5rnoe$lD| e54e$fB`00DGTPE!Ct=GbNc006g1L_t(2k+qP$4Z<)Gg+G!QEG!}@ z=rckZdL$$yI!mNsixe3kBOt*58Nov^03&!5oC_!vm@cpI{oi{&h@!CJ(UGE}B?sSk zl<^&4=)@?L4+Bb*vNlr6p#C=+V@^J9YTFG4g4Bh6`pqC5FS1wH+U0gox0kknx%d;~ z2s@fF&V*YF@vOO>tSPBFQr9O^9)w#aTPOGIHM*oft~tLGm+EfO7IQ$g<5rnoe$lD| e5 delta 809 zcmV+^1J?Yu0>cI+iBL{Q4GJ0x0000DNk~Le0002F0000U1Oos70rj1duK)l5Fp(uF zeMc{K~zYI?Nvc&(@+@x(&VK{ z(=?H(J2?aH&>ge^VHah6lWj~HEQP8?L;`jydKnJcyal#N^)z)b!OKwaT*2)qn>z~~ zD(qMlch2;%d5SN|Vq4mcUIrrj4td}Ef8PK8{CV&H{{Zz+h$Cpi<5Y)*vOiCu4NOBA z!VT$W?^U3>x0y-9ak1`chZ1L(9OM-;@KOLrA<6WF(axLOMk$KnuM(HoLmDB34HGsM zMPV4aHALlec|aiBlle{d=R z@6i&}agm@Ef%@0Ih^OPH4BLe)CwFf~hR9#BCd0jxPTro!WIChI$_34P z9luP9ns*={_)lY2YnaB|8t1DK+kriOPCad9~I0APYkBngQ!0GO1*U(Li z`FDk9h>6w=#^MElO1H>ZxXV&ge@b}Kv2klN%?fEVjb9a(;j$@Pq0KFx^G5yv(9LBbY?5@5dRt0en8uAy{}0LJLC^M?(ygbmI`k|u3_o%;#DP#9Ph7rzP>Meif)U@92H0=hai^9L7{ zzxbB1H8{c|H{DwnSgR!+)fjWZ)6veA$oon5^Kr0&^T=57xrWzD74rVKY7yVN&m4>z zrNEp)ec~WB(~oS?glb5Bdn3;n%mrI~QFAf{Xr1`XeL0)K8NJSX79;uwdQ_bDRmK#H zU&R(P4;ubmY~>US<6U};-a}CB-!Ej4J)XSp5+ic5+H|11c+>h^TjA3lI$5ZNyHucc nE9srKonP8$KafKlVjuhgzB-@3xYm~g00000NkvXXu0mjfQ6O_b diff --git a/docs/html/img118.png b/docs/html/img118.png index a8d143ed65fc3ff5a491efe431d1149c49789ef8..101ad4d6473fe6bfae340633630c8092b3a9858e 100644 GIT binary patch delta 774 zcmV+h1Nr>V0>cI&iBL{Q4GJ0x0000DNk~Le0002F0000U1Oos70rj1duaO~3e*(ct zL_t(YiS1QEXwy&_{?g>7Nz*iusXI9X?$8~y0bv(qeUoiW87zgWMMMI2DtZ|X*}Mg| zN%b^!Fu}`E@La*|D4RPA9V+Zt6?e|`uz89v$zogDja~*K`wn^E``-Wl{CV&H{{Zz+ zh$Cpi<5Y)*vOiCu4NOBA!VT$WfA3YGy0@80!*Q|hX@?SLmmK63GVoFWMx*h3m2gbfom6-8kfx-~@Qb9q1@+m!7|2bO%y6=J|KMrGh*gWtB!=OEz< zjdLd=Rvl;G5D_ye!Eh=8@6i&}agm@Ef%@0Ih^OPH4BLe)CwFf~hR9#BeSh&klQ%ZQzv2klN%?fEVjb9a( z;j$@Bnrn^CFHf*UAi8fxcC*fCb#!Jc@euzR)_y?S zZ@sTc2|MbwCY}H0FBC^M?(ygbmI`k|u3_f1UdYzfc%h6&Jq> z6-DnO>tHGv!veZGHS-4-l)w0vu{AitA~)Sz7Feq#9n~0f!PC*smB{-^_VaPDf%C{% z@wtZAN)__{w`vjJyU!eq8l}LTL4D#NHPer5(S&M9ek0Eq%mrI~QFAf{Xr1`XeL0)K z8NJSX79;uwdQ_bDTvf&ti(kbSGY=a6U2NqP3*%jSjNU^~?cXnCkUgHf?-C<&vf6Z@ zyLi+3TwCGO9y(d5g}YRsbt~zeww+(vXg`oc9AY2*0lqq)zqrtOgJZLDq2!WFX6EfyqT6g2ju0H9RGnVG9Gp2?hplkdVVn1_QPY zurTKb5u6hg7V!Z diff --git a/docs/html/img119.png b/docs/html/img119.png index faeee6e4bf6973d1af6c2b0b517dd81739e80bd3..a8d143ed65fc3ff5a491efe431d1149c49789ef8 100644 GIT binary patch delta 270 zcmV+p0rCFv1J42>iBL{Q4GJ0x0000DNk~Le0000Z0000W1Oos70Uc!QQjsA`e*n!% zL_t(2kz-)M3z*p%82CBxt7%{ZksrWp1upz*8CXGz7&sXiSPTrl^D#7l#LNz{ax*lr zKvhg&U?gA$ZcxBr03;tUfGkje2mu`jbU(`j7a0bI1U?1^CIwEAFh2tWpF%wo3qt}o zL>tOgJZLDq2!WFX6EfyqT6g2ju0H9RGnVG9Gp2?hplkdVVn1_QPY zurTKb5u6hg7(<%-dA44;+*9#+3g-VeSLzhYjR4HOYV#&~n$wCZai

D z7})z0_$eJ34Fh5V&TeSas!KceNq+a?^ZD#MU>0)LOrWDenPAhh3kZQ*!4fCO5~z5w zm7Zk=1wk_Z&$&FjFylt*!Vaz8e?wJk=&ss=^QHsxWi_x0_MwxZq}!ufQBQGfpor8e z1+0ehTbUt_%qa)tv_{aAk|J6$u+f4ZInsP!Kft+pEvZhTJ?e|VcNM|7LHRa@frx1H zf|83^PSX&AN=BTG4L%l5JDdir0a*H=fStm+(R15(mU#{|<#dMUqqzOIe|K69RcoPh z-%&PdaNKnV=_PR8J5gXma(W*`&t{$va(85+8o-$VO&{}P<1xwIPoSO|XI=WHE4mq? z&)X609m2mdT{p>|(iU-yQ}7Pm@`W_*dcQv}z$^SCR8^_S$C;9SV7E~B%6?a2A(&k3 cUpM>#4cWjd46~VYc`8I}uh-mYI zl8abQ(-4A6Mx2ceJ{C?poCd4`So)xVox-}&bK7^8c@8w?bcW}nxc#?xe_9PyYoT-B zQ8sFD+;s=(C2-w4QD8%IdLKm3W}XjncVwa(z?lF|AM<15G0ELepq?3LUHYagx*4L+ z+Y#*@!oMV=1Cs+GiBL{Q4GJ0x0000DNk~Le0000j0000Y1Oos70ZwIo>X9K#e-TMU zK~yM_)sP`i#6T2;zg~~Fdz7{gWCaQV>j=Rd!9v1MI0v!@--Lt&MH9@)I&20103?QB zke9#@s7JtidzVto&YMnmr#lOZ++fOpJ`Uuuzby)g()NTUsKM8roe^all@pfX zvW*?QsWm#tg`Y1ruLemM+ls_U7Rl=Wgb&vF|vsyByCA{|WyUlP|ts z;?+96H=$du7xs}9xKI)6eLqXv&@|HDg(;;am=|^Sh$qfZUHm)2BRs%8C?A{7KkOZ6 kr>F0F+N(Ml<@_6b1Bg^CF{b{rr~m)}07*qoM6N<$f;DxP0{{R3 diff --git a/docs/html/img121.png b/docs/html/img121.png index f51cb667defdcbc6ce59b7fada068403bcb834ad..18112b72e0fdc731780516e6265a5a2f4476868f 100644 GIT binary patch delta 384 zcmV-`0e}9A0+RzfiBL{Q4GJ0x0000DNk~Le0000j0000Y1Oos70ZwIo>Hq)$Fi=cX zMYFTBsHmu%oScx5kc5PUczAe`I39oMS<9XP0004WQchC5xRCXVkTfGdX*h(T=yy*FWWd zDT9L3z#VTy0;AaKVx|QXUt5+g(DnA_;Tq>|=C85uII+7N&kg?x{}q!jzF*?iI=wfc zTdo)OkrcR45$kERLtq{V<(j)j?lfpP7*!=Hg1-2k5u*Ug(ZuUN5S z&YU?DCQN8)X_;s(SO2kZk~L78u_VYZn8D%MjWi&q+tbA{L}F@k0s|8}8%sb!Li=V* zeTNt2@9!NvxRn5iZtB?Zt&xt%k$7S%(=f-UEhnvQB~Pe= tYrA9=(~SPz(g#cm*#y!pIM1~*F#I)9Q`>*YRtV@W22WQ%mvv4FO#nM9Qy2gM diff --git a/docs/html/img122.png b/docs/html/img122.png index 83d7a517ed74ad7fca4ea8b6fdce45890b32416d..f51cb667defdcbc6ce59b7fada068403bcb834ad 100644 GIT binary patch delta 246 zcmbQr(#2%a8Q|y6%O%Cdz`(%k>ERLtq{V<(j)j?lfpP7*!=Hg1-2k5u*Ug(ZuUN5S z&YU?DCQN8)X_;s(SO2kZk~L78u_VYZn8D%MjWi&q+tbA{L}F@k0s|8}8%sb!Li=V* zeTNt2@9!NvxRn5iZtB?Zt&xt%k$7S%(=f-UEhnvQB~Pe= tYrA9=(~SPz(g#cm*#y!pIM1~*F#I)9Q`>*YRtV@W22WQ%mvv4FO#nU&QyTyP delta 515 zcmV+e0{s1o0+j?iiBL{Q4GJ0x0000DNk~Le0001s0000T1Oos70Ur;t1ONa4Fi=cX zMYFTBsHmu%oScx5kc5PUczAe`I39oMS<9XP0004WQchCBQ7oB{F_caX?O zhDQcm3CtH5mO*^!3HDSKLk%;-BZd>WjOqA+>~}5~hIE%D4mJ#&2@F3=6p$n?GfYWf z-yR`=5Mk@@a9}_KyMbT_x**7PAc+Pjhfe{Eicv5$005C-To(KBfQ$eD002ovPDHLk FV1hAS!(jjb diff --git a/docs/html/img123.png b/docs/html/img123.png index 4a97c54d94475bcd3acfc060cba46f748e899f8c..83d7a517ed74ad7fca4ea8b6fdce45890b32416d 100644 GIT binary patch delta 469 zcmV;`0V@8W1eF9KiBL{Q4GJ0x0000DNk~Le0001s0000T1Oos70Ur;t1d$<3f0Ic> zK~zYIV_-l54Gdf0Yz_t-fSXmGf#C}-S)du5V44Zp6rfPje4r5HADsG#1Rod}*wLH^ z6yi565a4EDU=%1r0#C2K=TcP|>9W0~&ysf2o0i2QDxHA;Q1VyJ6-usIaj!C@cVnIX@3W!Ub-S9Ksxsd%h|-@B!#K{zT4e;AlsDj8fh zyDSQ+010F#fW;Xz)Z80b%0rroGe&g-!wz6tb-uu`oWTys7#3a!wgXC)4DtAl0V6S$1&_<`(qE*FM$mn9B144erJOB9eK zE;CF?VBa1gfDmEp?{Hv1D+9ZMUViBL{Q4GJ0x0000DNk~Le0001h0000T1Oos70q5^Y^N}G;f1XK1 zK~y-6?NdEZ0znXc+%0f?9*wmZZ8SDCCRkuLgh--^(tz4stO%8@-I^#t(S)cC-4$p} zVPmejpTJL0e!(?HOYinLSdou{5DR_9?aZ6EGqbaMfDgj*3@WC=Mu@`ly_gtM7+BCX zQru-wnqVRM#&(De3v)Op7i}~)G$vSJHiSr`iPC`DU91R|t=*a^LD7V$4c!%J zO<`lMxu3vKP=3KRMoaJZI9QR7f)ERR#qG?Sw==V|dw>tZ@(e1b!bXU~^1YZCQW#j! zHB#JVP?}&N`NnpL4GVL^=$8j5f6_t8v9z$}5kR)a@mDSWT9Zi59s@@S=ZYiBL{Q4GJ0x0000DNk~Le0000<0000T1Oos70b@mMn2{k%e*nx$ zL_t(IjbmVdfFKSAY`}n_1FJX~FyCch!7YmdSfO+SgM(WO14jdh&BomGfk^G7f)5uA z__^63?C#wgXk-g9-~lSPA5#TC0|U#00|&Ht`58DmIvk)vObQJL7+AR=N_Oww02Ja= za13rRU@}0`IMe~F0bXe?q6~qAV*`s917llw0Q=<7R+kK%svKrA^a2CYU<)u^+u>Bj zIYHqoLnSlI28M?W%a|EJ@zT-Jf}zTd!6GapfZKqrfnkXQhEW{-9STIbe`EjvI;z<{9xt2h`i-(_IIEsFwJp>zX-gIfy&M+1n>#@zFPNbRJ84;Kvh zx!ED??%f+`WD7Ci0V=m2Qw2W*1IvR02ef$k88|vR9H2r>3JnJsSh*ldcJJN*6yj5G z3~n%BGCV;Z(&r zLE$SyB{RzghKCHxm>EFv($Ud^p~{WHA}k|-+kmZsVTl8VQ5^jp3PiboWB>pz zFfl5GB|HdbEB?{&!j73+nOSB7^TtV9?95sQOedX<|p>810(0MlHoA?7Rrk$xP8KW~(IG7pY?F3j8S>~Al Pt!MCb^>bP0l+XkK-^VSk diff --git a/docs/html/img126.png b/docs/html/img126.png index 77dcbe5b49f5a3b130c2128531cbab03649c678b..d677cf778c7d14cd6f321833f95b7325e4cd68ae 100644 GIT binary patch delta 165 zcmZo?dCsWV8Q|y6%O%Cdz`(%k>ERLtq=kT(kA<0mfpPigM4^d_-qj4Lo-U3d95a&> z8kiUr!V(??vlahncwxuPt;{U5fqCO3Ep}!t1E!TMOnz)^Va%?I3a<~hGfnu>o}Zz` z-MGV^@z`coK}}%^okQCgC3WTq?@%|8XXree@=g2!7t_wvm5kAuDIClU@pb~Ni7fL> Qfc7(Zy85}Sb4q9e0K2a(X#fBK delta 456 zcmV;(0XP2V0fz)3iBL{Q4GJ0x0000DNk~Le0001S0000U1Oos70iN~T`jH_^e*uL_ zL_t(IjqOuCPXa*@eRtl$0bcG3wb4XMIp zCMMU=(c0Va6A0l4IJ?Wofj|gqr7w3oZ|2SH>?FHD9}W(YEC?1MgJ}pa<%-aX1tqtK zzTSch9f4Duy3Z__^n0x5xL^qIe^}OGql!G+I_LYJ4>& z8feo&fOR_!ywJ?t+i`~SbuY^*xsvdwWLc6N|AmwO1a_4%u{yVwW1 zWZqOvE4I+S~9G2;m1fyUWLcKnQB3FLyg{=FRNvB)dQ#4i1ql2o@oOX$UXniqMJ$CAWvZ z-hvAqfm55h&n%eqd#vZUUd^IK- zXwyM}bvq5b(9GQ1afb4BFUu;qlJKWwS&|(8g_HgSc9k))JSLEDYyAYe8G0=yI^ttE zBg(8ii~vZS@M9hqPpPKBO(|-;rLFWuTUXoG+l*33#StG=qNF<1x6h@uf55t)WL1?D zMapI(aRb1=Isc!6)=e9(^<7yn)|~! xjRrc!4Bzm+^qdR%`BO)c9r$32mi}V_d;$+LOapglATa;{002ovPDHLkV1jW6&!YeU delta 540 zcmV+%0^|LM1l$B6iBL{Q4GJ0x0000DNk~Le0001)0000U1Oos70lL7Ee~}?ff7(ez zK~zYI?Nz@^!$25)u`xYcYuc^oU=b0=_#ecg=pq&rsVJC9L`B_15j=lE9K;T~ckmC$ zA_`sNAUGEM2h_z$2-v|*FTKVjHikf53O-0K_rCAmy^qV604_vO1!*cE0<2>S5Sn%w z>Q5j)=A0}^>@M^vxdf1S3eo>;e})xmDDE?&5gl)@ZzvO*tf`!5Tg!ryhV8lE3@{g} zAHiVs#TK(9Y3^KRS8s4$(J?nDS7laYna^`lf*@JB^(1TlwF2d%6x~*vprHEa0SC7U zbf5|(JzR!e$Nn_ge(5cAr=jZ<`<)}1Qij@DMAy}L2^%RV%~rc}wzKjye{X;^Y*?n0 zLZxEVPf=r}S*Ha&RSV`joV=|GWz2_;qB072=MI84a<{-(~o)}d*z0Om7xhLZqFY5rnY$C z-6%H28ib;D2GmHI5#-7nau!pnWDe|LsYwklyux)`Zc^9n<^it3_8>+LT}Db(9Baf5 z+ikaty%<~g(5&`-3TtkuF@t@%P7aYBKS0+E=e(sp;zEnx6g~eR>0DRQ0(x?-to}#4 eAlj!U8mupg#rqZ;eyF|x0000S5Sn%w z>Q5j)=A0}^>@M^vxdf1S3eo>;e})xmDDE?&5gl)@ZzvO*tf`!5Tg!ryhV8lE3@{g} zAHiVs#TK(9Y3^KRS8s4$(J?nDS7laYna^`lf*@JB^(1TlwF2d%6x~*vprHEa0SC7U zbf5|(JzR!e$Nn_ge(5cAr=jZ<`<)}1Qij@DMAy}L2^%RV%~rc}wzKjye{X;^Y*?n0 zLZxEVPf=r}S*Ha&RSV`joV=|GWz2_;qB072=MI84a<{-(~o)}d*z0Om7xhLZqFY5rnY$C z-6%H28ib;D2GmHI5#-7nau!pnWDe|LsYwklyux)`Zc^9n<^it3_8>+LT}Db(9Baf5 z+ikaty%<~g(5&`-3TtkuF@t@%P7aYBKS0+E=e(sp;zEnx6g~eR>0DRQ0(x?-to}#4 eAlj!U8mupg#rqZ;eyF|x0000eT|}HZI0%9qBGR!Af}leu2kTH!!SU2u4i$9~90Q7T zrlMqt;NJcOH`fRbZhC1_bEz?Hp^L=_$9>zhwu_osC(DuIUT#)0I>xMra0w5mn!hs)KX`Y^We|>cRGML> zt_p?Vn5`H^yC|Rf2~-GZO=mRGR#MACU_ro-80X03yu4_zCHE;6Ph$A@e-@u|SMrTA ztu%=#)9$z(q+_hKzuVoX^`M#EHGdY7-$!3x%0OTY#APCswSN^NBE>1&54K}H^-$({ zl2aB?qqQ{?wL+fk7v?T*CS7W$6dY@{uGP(s`6?!zDHk)#E9F zMdaVed%UODrf?yHqz$|yS5tM6<lw}$V&@C?Wb|6!00000NkvXXu0mjf DuiES2 diff --git a/docs/html/img129.png b/docs/html/img129.png index 69a41dd72c3c1fd9146a1c18fe961f2d2e8b5bb1..5976bb1575014496c8080fdbb11d55c909d1ebfe 100644 GIT binary patch delta 514 zcmV+d0{#8c0l@?ziBL{Q4GJ0x0000DNk~Le0001`0000U1Oos70mu*Y$&n#Te*wQq zL_t(YiS1M|OT$1IeOKFf)RuG>2VF#*IyeY|93s-O4uYUVCkN|LP{HxkS`HO;5gY@G zbEcwXiQwM;1UJ_R4sLpBQgf*>ZJ~?B2giNiyZ62OJ`N5Dp>RTSv|3V_CgMN=jm9bf z-bo|^zW(Y!-qs*7^`BArRqgoue~Z$hWGMtYFE4;51<5tOwajZnlPh%`>BnL^>%Cv6 zds!H|+qrVLJH=Ln&azA?t+tDrStrYp;$Ci6GCIbrhj0lGr<%Vr3_o~x$z>3ZcT}2T zrLGEv;Fzr#MY|}U`UzABXiaA{(N5vOU&=sW48&z3l(l~qA|k~p+Yh#5J@ruL zd6H8WP@}aq6SYE~>=))PZYEu7rxYA(wdDg$->xfEl;;^!seBzcN78weYr`cr57px- zfkous$a}n}*QRhGgQN|-SR+$)kmb)Ktu|fLf_uzcCHDz>Ma|zl#mCW);nOmlU*U39 zaJ}krlN_GI*0-v9sr07*qoM6N<$ Ef}ct2)Bpeg delta 144 zcmX@ea*0u~Gr-TCmrII^fq{Y7)59eQNDG13EX)iHjEd>PdnPJ+r!fS0x;Tb#%uG&j zVBEuNAeJo8%*@?0`H2jpiZsg&5eWmv%U7l`v9Uel=Vencl^0|3Y;0N@A+m_6>>XQQ tFOR%~k35?k`!`mFYhi6UY;~cG3~7t_#6Bt?6b4$w;OXk;vd$@?2>?VjBuD@N diff --git a/docs/html/img130.png b/docs/html/img130.png index fad10afc5f4101bec7f166fd0f4be953d917b125..69a41dd72c3c1fd9146a1c18fe961f2d2e8b5bb1 100644 GIT binary patch delta 144 zcmdnNa*0u~Gr-TCmrII^fq{Y7)59eQNDG13EX)iHjEd>PdnPJ+r!fS0x;Tb#%uG&j zVBEuNAeJo8%*@?0`H2jpiZsg&5eWmv%U7l`v9Uel=Vencl^0|3Y;0N@A+m_6>>XQQ tFOR%~k35?k`!`mFYhi6UY;~cG3~7t_#6Bt?6b4$w;OXk;vd$@?2>?GOBtHNE delta 505 zcmV{lX4DNY##>C}Qa=@1aHiyFnjF(?i~hdL=v53L#msUSFK z5dVZryE%4HaLiAr#m&XMm!?ff8zO#y&_nWa?|X-vb3YPb014Puk<<_Y6eI~Rn`t)k?Tf3h)FX3;Px zw6j`g3wEc7VF2a57;#D1f!mA=x+1e~@P3L=j~t~98kV;eb~wiGg6K&)Z2y6;_mM(0 z_@e}LxglJsp3^w{2O!aOyh3Gew+$BvehR`WeNFp zc`XpBr^zP>uUG=AA2{aXPyK=}al&%H2GWl{lX4DNY##>C}Qa=@1aHiyFnjF(?i~hdL=v53L#msUSFK z5dVZryE%4HaLiAr#m&XMm!?ff8zO#y&_nWa?|X-vb3YPb014Puk<<_Y6eI~Rn`t)k?Tf3h)FX3;Px zw6j`g3wEc7VF2a57;#D1f!mA=x+1e~@P3L=j~t~98kV;eb~wiGg6K&)Z2y6;_mM(0 z_@e}LxglJsp3^w{2O!aOyh3Gew+$BvehR`WeNFp zc`XpBr^zP>uUG=AA2{aXPyK=}al&%H2GWl+5#|S^XeMJwXW8sCZMq;GFph8?v^;lgaC{^tlXCg^JN@m?jl(2MG-f3tQ$evUf& zKr!cYBp*NxrrYwk$euImNXezX3f!|@WU_L3$w7@iv~)l~6)=P*MqGZ4-_`mnXvrou z-D$oD_*Y@C`@a`3pD|4ie~;}>?w%GUMqnRTQ`_zFGFmw40mtN0@s!iY#6*L=Bn>Ra zWo6jPCCx6KxVU&;DF25%Cv>V&U+BX4aF`qIHM|CDw_c!jb3@;K&WEzBHdF>-(hmEvZX`e_ft+;1x*tMwYBJ zheRxQ8O2rC^cj<}15}%qSZ=bY{zmsQS((nLWp_qz!HDn_&RP8U7TCGFa2k5B_XHaa zjvW~7&9>26f9AHY;4udazxc35)9=qv@bbUr(tTw{Rp9g(n|&~B4v^s+rDuVBpM(Bw P00000NkvXXu0mjfT#G|M diff --git a/docs/html/img132.png b/docs/html/img132.png index 0417d2c413403277f667a455f92e107b6191db37..865798ac348e03ea4df631012b8497f0b30cc1b8 100644 GIT binary patch delta 681 zcmV;a0#^N$0_O!GiBL{Q4GJ0x0000DNk~Le000220000W1Oos70Saoq-jN|oe*$Gm zL_t(YiS1QAZ_`i|J+@zM$N4e~jhHOdE{Gum0+y-|6hwi6&`MR2kgyPRfT}XTfCow{ z3o05GKDI0{XMo-OgG|gRGlLlruyNnB;}}SYAVLDENAi0o*Y_UZ>+5#|S^XeMJwXW8sCZMq;GFph8?v^;lgaC{^tlXCg^JN@m?jl(2MG-f3tQ$evUf& zKr!cYBp*NxrrYwk$euImNXezX3f!|@WU_L3$w7@iv~)l~6)=P*MqGZ4-_`mnXvrou z-D$oD_*Y@C`@a`3pD|4ie~;}>?w%GUMqnRTQ`_zFGFmw40mtN0@s!iY#6*L=Bn>Ra zWo6jPCCx6KxVU&;DF25%Cv>V&U+BX4aF`qIHM|CDw_c!jb3@;K&WEzBHdF>-(hmEvZX`e_ft+;1x*tMwYBJ zheRxQ8O2rC^cj<}15}%qSZ=bY{zmsQS((nLWp_qz!HDn_&RP8U7TCGFa2k5B_XHaa zjvW~7&9>26f9AHY;4udazxc35)9=qv@bbUr(tTw{Rp9g(n|&~B4v^s+rDuVBpM(Bw P00000NkvXXu0mjf_h>^J delta 211 zcmV;^04)FK1(X6IiBL{Q4GJ0x0000DNk~Le0000Q0000E1Oos70kk9`=8+*we*lt6 zL_t&tnPXsJVBq}#BpB{GFfb^97!2|ZP{0i)Rg@VS5MTlW11kdqlS5KK!vqE_-~t1K z0f=U>rFkfJ(21)q~@G1KXDR3nT9AO6X*h;)y*h(Wq7^WsL007Y67s6N{e=`68 N002ovPDHLkV1fp~NIC!j diff --git a/docs/html/img133.png b/docs/html/img133.png index f5338df36395b8517b4c3e2a6be6b62c78efed09..0417d2c413403277f667a455f92e107b6191db37 100644 GIT binary patch delta 211 zcmV;^04)EB1e5|HiBL{Q4GJ0x0000DNk~Le0000Q0000E1Oos70kk9`=8+*we*lt6 zL_t&tnPXsJVBq}#BpB{GFfb^97!2|ZP{0i)Rg@VS5MTlW11kdqlS5KK!vqE_-~t1K z0f=U>rFkfJ(21)q~@G1KXDR3nT9AO6X*h;)y*h(Wq7^WsL007Y67s6N{e=`68 N002ovPDHLkV1l@1N811Z delta 458 zcmV;*0X6=V0*M46iBL{Q4GJ0x0000DNk~Le0000}0000W1Oos70qZSk%8?;Ue*uR{ zL_t(Ijpb3lOT$1Ied#sn(I#yi1VzEBi(^2+EQJUy_zTQn6>$kpI<*d>V~QnPX&l_^ zf8e0t7~I_a6GR+z%V2l!ay3y%5$dMzxbJ)S?%na-cR&mo!=R;TSso~xcVrQe+@Xhm zfWt!$P#M)KiSF~Dj(Y0=yguZCe_mAYTC|p0x-zdZW;spw@zWXj{hU0e5KXJ(F~N?A z2MQ38xT62EqLHB_RMgPpL5dp4XctyuaHEO?pu{_i;3PD9D+pCpr6_Z?$kYa0ig$!m zr6ukvu>mCm{i6A#UuVacXahFW3dy~ONW2f3M9qoBE*78mw?XWfF0-k;e|_DY1}0Mv zMU8om_>A~I)@Q2&>XYO^bU%8 z2YEXaAhz-esYycI8aRiwCA2=yNFSS|V9&+YVq~rE>bNnsr(PkqtDp|dokQEK9UarU zPG5l4t_Pf^z3b}RYS5XiAe&}YtQ4`8=KOc~0AP$iIPeG1`2YX_07*qoM6N<$f-pnY A;{X5v diff --git a/docs/html/img134.png b/docs/html/img134.png index 0401ba94fa73f2a8c580eeb2358fc79d41ced388..f5338df36395b8517b4c3e2a6be6b62c78efed09 100644 GIT binary patch delta 458 zcmV;*0X6=M0*M46iBL{Q4GJ0x0000DNk~Le0000}0000W1Oos70qZSk%8?;Ue*uR{ zL_t(Ijpb3lOT$1Ied#sn(I#yi1VzEBi(^2+EQJUy_zTQn6>$kpI<*d>V~QnPX&l_^ zf8e0t7~I_a6GR+z%V2l!ay3y%5$dMzxbJ)S?%na-cR&mo!=R;TSso~xcVrQe+@Xhm zfWt!$P#M)KiSF~Dj(Y0=yguZCe_mAYTC|p0x-zdZW;spw@zWXj{hU0e5KXJ(F~N?A z2MQ38xT62EqLHB_RMgPpL5dp4XctyuaHEO?pu{_i;3PD9D+pCpr6_Z?$kYa0ig$!m zr6ukvu>mCm{i6A#UuVacXahFW3dy~ONW2f3M9qoBE*78mw?XWfF0-k;e|_DY1}0Mv zMU8om_>A~I)@Q2&>XYO^bU%8 z2YEXaAhz-esYycI8aRiwCA2=yNFSS|V9&+YVq~rE>bNnsr(PkqtDp|dokQEK9UarU zPG5l4t_Pf^z3b}RYS5XiAe&}YtQ4`8=KOc~0AP$iIPeG1`2YX_07*qoM6N<$f*>i@ A+5i9m delta 202 zcmeBV>1I;w4DfU3<&xrJU|`_&^l%9R(vm>T$HL6Oz!)z)>*+*A?|Oz#PZ!4!j+w~` z2?-Bs8B`?lm_1q36q=Knn7INH6I>rLs`48c7+9(t@y$p$z#uLmVaBkMg{_T&EiI5O zQH+hPPOt6n9EUFb>7DTm!R*2NnT*VZeaad@aXBGS3+tBB##|nV94^4VBfqnFcs)X22WQ%mvv4FO#rDK BJK_KU diff --git a/docs/html/img135.png b/docs/html/img135.png index bb8f30e98a86d1b1bc0b2bf2e12a3e5ea853c37e..0401ba94fa73f2a8c580eeb2358fc79d41ced388 100644 GIT binary patch delta 202 zcmdnR(#@pU8Q|y6%O%Cdz`(%k>ERLtq$PovkA<0mfiYfq*3*fK-t`Qfo-U3d95a&> z5)vNNGN?%8F?+J6DKsZDF>?hZCb&LgROL4?FtAiP;+v6hfI(bB!i-@h3tJllTUsDn zq8J-nonG7DISyU=(>voCg4u)jGZ~o+`;;|!a)0;c$wu7!M=HEU@Fj&44$rjF6*2UngGwo BJQDx_ delta 507 zcmVrlW|n*c@C6oP2fOYgZCV<&3n0$m*!LbEA794?2GBqOqOd{4!~`&x9&4V>#%Bo~ z3B-A8%eGFS1wmCANnjbXdf zsW^e0>N-pJ2R2TMrVzTe1}Xibbc&V6R**g(2X0~TXYR%drmQB`QSgrlW|n*c@C6oP2fOYgZCV<&3n0$m*!LbEA794?2GBqOqOd{4!~`&x9&4V>#%Bo~ z3B-A8%eGFS1wmCANnjbXdf zsW^e0>N-pJ2R2TMrVzTe1}Xibbc&V6R**g(2X0~TXYR%drmQB`QSgH=O5Zex}Y#t#@(*UamA=TIfY&CIUN%xrCM z-pqXBgF_x0AA60I;X$`=tgQ2YGL^7?a@;fLK93A9k5Bx8pen8?oSug|W4hBzGKNpsDP6$r{DK)Ap4~_T za&kRg978x}CIhu4q%bt@=Mgx-)KYLDYs1XOy9zvt2}zq&7w~#;8?$^ce!!@@W?s)b zhbkd%W_E36W@~%%X66$g9P-%s*lVN=54wG0Wu5<%sf6{Duj!NAhVfBs_5f*C-I89ZJ6T-G@yGywo@{7Ml3 literal 0 HcmV?d00001 diff --git a/docs/html/img139.png b/docs/html/img139.png index 12936326fb443e4a706aa2368f291f6bc6b0f606..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 371 zcmV-(0gV2MP)RHR400001 zbW%=J06^y0W&i*H@kvBMR49>SU;qKe3k(b_3~<20Ex@p$fdLtCpGW5X2Z0Z8IS|3F zplIL#H0gipLxu!~f(t0RAsQIa04tp3;531YgF)dw&;W)5Aj5dk)sh1Ykk|)c47LLw z9>nvTvG8($L_ajJaqx1OfmAjcurere^9Zs*gQ9^MtezL>rWAn{6g%cW9DE?G7z1!L zpb0Q#nYOX@cQAP|a2lkCdKfUb1_MQz`32-1su`H77-CpB6Ief7V{QT|?quj@IKs^E ziQy`PE(321)B)e!4H%{-Fr-BuV3--&$PnS;fUt;Tfwlni1F}3yBk&&^0014gS4j4! RW(5EM002ovPDHLkV1n|5h+hBz diff --git a/docs/html/img14.png b/docs/html/img14.png index 49ee48d235be3003f62659af0f22c220767364e2..a4bf654b3510a94d45fdaec1f48ffe20cfb49807 100644 GIT binary patch delta 632 zcmV-;0*C$Z0f_}WiBL{Q4GJ0x0000DNk~Le0001<0000S1Oos70Tt9M4FCWDFi=cX zMYFTBsHmu%oScx5kc5PUczAe`I39oMS<9XP0004WQchCO_tJDFPul!;|m1=N@0%@A?7xC>LLf7Kl1$)b@WIX|1#7 z*}$?F{8*a@%W_1?3rN^aW!9A7+AmbkgEVV-6vcWu*(<2k1(xo{o{1FhWr>6aPV6~p>tAL1LXvGtx-0T^lMv23jdd>tw@L&5PekYz~18+Jf zvH|7SPt(p7o9Minr)7IR_`H98OA`8hr=fOjT?yYP#bam1H+AKKF10GevBZPM*e9hm z+!f<^*>SZaI`-{Qq7xG0*d$zU)NVD~PIeDyL`P@WuJvkm&*YaZGC;88h*kWc3LG+t!ValDYyW)fomXDtrNQQT`Yx4nf?`bT7LR8W;~>}P_sHd zI}VlK3)}$JQ$KXO+OKFzbYkKsMCb~H37FdssxLY=tE$!1!KWLl%Mfh1;rwERLtq;)}T7G?$p#vSudae@Q_d_r6|Z{ECO#fmv| z=1iC{p{1o|qP1N8$G%C{KxxL3AirP+hi5m^fSf{47sn8ZsmTcp%wZfy3mCkNH?SKN z7+W8xsNvw!IClIj-?JiP1;!OZ$1bt3v?m@)V+&C@&>+5Hm571`pY#JCGcz`}X+>;h zZM;0JHZqJmcoSAuG&r|ed~DI1aXawnOgV!b*N*8;huK{UrPV%IsTnXZ& QQ=sh(p00i_>zopr02?w$CIA2c diff --git a/docs/html/img140.png b/docs/html/img140.png index 38263b79972c46241af7266427f26fdf72eded6b..12936326fb443e4a706aa2368f291f6bc6b0f606 100644 GIT binary patch delta 307 zcmV-30nGld1M>nQiBL{Q4GJ0x0000DNk~Le0000g0000U1Oos70p9_kMUf#(e*p1G zL_t(2kz-&00mcgq3@i+Az``xSu%Uqg8E~IR=KTkO4{$jU!LFca-~cq~f9gYq1crhO zD7qmU7|;MKoaNv&fs2Dd;Xcp+h65nOc+u680}PPZ2Ve}g10Np5^P92oa)3lXG_Y~- za+rZsHX5)pD01@%vO$BQff=lxe;4Sc6oC~KJLW$ed?2hC18_8;2{2`uwz2hhFnKX> z8l;DM7%;a614Wtn1>_y78JMaVVpup6SU+52ZUQOpWawr%!p!iA;VOeJ18)n|0pHyX z7^WsLq(vTJm>Js05aHs0u!v)UwgB@3vOG#7@E;oh03EkiNcN{@1poj52>?k&PDHLk FV1llHb8!Fw delta 367 zcmV-#0g(Rl0e*rB? zL_t(2k$Mn2ld)W-xib!j0#8Z?wEpoD_&kq!wooEsi~@sb|&D&ogMoHyQcf9Eb+k5jz_yB!DGJU)U;uHV? N002ovPDHLkV1hLfo$vqv diff --git a/docs/html/img141.png b/docs/html/img141.png index 98984bad543c7378567eb5e2bbb1ca3fb63243cf..38263b79972c46241af7266427f26fdf72eded6b 100644 GIT binary patch delta 367 zcmV-#0g(Qb2d@JmiBL{Q4GJ0x0000DNk~Le0000u0000W1Oos70m3SlO_3o>e*rB? zL_t(2k$Mn2ld)W-xib!j0#8Z?wEpoD_&kq!wooEsi~@sb|&D&ogMoHyQcf9Eb+k5jz_yB!DGJU)U;uHV? N002ovPDHLkV1l#vot6Lq delta 856 zcmV-e1E>721C$3LiBL{Q4GJ0x0000DNk~Le0002Y0000i1Oos70jy7Y)sZ1fe*+Rp zL_t(oh3%KmYt%p#$KN)a*=c9j$J(*KmdXRt$6+8rN zC6`M4aqt-N9~hx}@v;Yz-c-DLu%O_~hRcC*;m*P9Jbrc39qVQTSuhxmSLLC*k<@3ZT^fMp*HXaVy`tn&x(Bg!O?Cp0>bL z6AzhCCFGMaTn0I%$i7t{Smjx?_mL*d+m^WKDJtmN*u7RtOy=_jb$buUTl2|&i)pav ziCZ6;nVBR@$!j;P@YK3)7uQgrLrmcZNzGVv;aP~s9KfnNKn*J;`Uobde-BaV%R$2e zN9ZNuFan1P zP4oO*vp9$GrJ<;%S$2l#PkjiDozz&-#UX2LW1~JuoCN^o@|p7rh4(j@@@^1GgMZNR zIZdncN#Ep|mtEKCqd|^XezvqhIfVO;Bbvf zV5!aF)nb{ehyt;?J??0@OUcrJomp!;Q}f^Y8R=}6+2ggZFpCSze|vx#84vcszug;6 z-xJIVK;`t_Oo3+J%CLJF=+_(cGU+*NV|CKMQ_;*XAT|YVJIw}d2IDuUx?dkwL7@>dr0G2HKZs%rU7olMFYKM@B&mrAinRk5Ap825$Dnt9E8uM52OBwm-*<) zXe7#>-0nzhf9o0;e{o}~C7l)82Khl-$p%PMya=~x9 zU)T`_HD=dRF-LCRmCm#IL3>RLr*Fwtw%ZtUlxIDaf_Vbhq%(7C?uVHL_}MAiF)%8P z6if>?hr?h?V%A^7! diff --git a/docs/html/img142.png b/docs/html/img142.png index 8df7b6879bbe331e9123baa7db5a2f058b38b503..98984bad543c7378567eb5e2bbb1ca3fb63243cf 100644 GIT binary patch delta 856 zcmV-e1E>6?1(XLNiBL{Q4GJ0x0000DNk~Le0002Y0000i1Oos70jy7Y)sZ1fe*+Rp zL_t(oh3%KmYt%p#$KN)a*=c9j$J(*KmdXRt$6+8rN zC6`M4aqt-N9~hx}@v;Yz-c-DLu%O_~hRcC*;m*P9Jbrc39qVQTSuhxmSLLC*k<@3ZT^fMp*HXaVy`tn&x(Bg!O?Cp0>bL z6AzhCCFGMaTn0I%$i7t{Smjx?_mL*d+m^WKDJtmN*u7RtOy=_jb$buUTl2|&i)pav ziCZ6;nVBR@$!j;P@YK3)7uQgrLrmcZNzGVv;aP~s9KfnNKn*J;`Uobde-BaV%R$2e zN9ZNuFan1P zP4oO*vp9$GrJ<;%S$2l#PkjiDozz&-#UX2LW1~JuoCN^o@|p7rh4(j@@@^1GgMZNR zIZdncN#Ep|mtEKCqd|^XezvqhIfVO;Bbvf zV5!aF)nb{ehyt;?J??0@OUcrJomp!;Q}f^Y8R=}6+2ggZFpCSze|vx#84vcszug;6 z-xJIVK;`t_Oo3+J%CLJF=+_(cGU+*NV|CKMQ_;*XAT|YVJIw}d2IDuUx?dkwL7@>dr0G2HKZs%rU7olMFYKM@B&mrAinRk5Ap825$Dnt9E8uM52OBwm-*<) zXe7#>-0nzhf9o0;e{o}~C7l)82Khl-$p%PMya=~x9 zU)T`_HD=dRF-LCRmCm#IL3>RLr*Fwtw%ZtUlxIDaf_Vbhq%(7C?uVHL_}MAiF)%8P z6if>?hr?h?V%A^7H`&#V%Spk%avyRe~>d_M-8&$hm#4m^7v1*`X{{FPsM}TVs zFSRXZ0xs+q$%tp&czz8`88^Quh2n<`SB@wV6)U6280q=A9%^~HyoB#h=B%sNVX2P0 z^b9wB(E+{v$qdE1pwY!Pv=De0>M2|*=G|o}$71M-TS4;o*h|+Dt z%l7thsLl12*VWa=>MXf2f0#urkH@3oELA&o`p9Z-y;r@=&+xl@bN4RwpFH&XYM+y*rqGyMyH)z>+|{F`+goY!#<7~XiBL{Q4GJ0x0000DNk~Le0001a0000i1Oos70mP6xsF5K{e*z*& zL_t(YiPcp-Y|}s#{u28f!;#hth^Y-f1A--jN}UiVQ5cYlJQRV{#Y4m#p@NWLuqq;X zL3m;65(&iY4q@q17FNQ{5*Ai0RboM+ymK03U*j`4?Z7Ab?%jRwd(ZcL=L0f`_{4Z7 zTOoYeeUi;~>H`&#V%Spk%avyRe~>d_M-8&$hm#4m^7v1*`X{{FPsM}TVs zFSRXZ0xs+q$%tp&czz8`88^Quh2n<`SB@wV6)U6280q=A9%^~HyoB#h=B%sNVX2P0 z^b9wB(E+{v$qdE1pwY!Pv=De0>M2|*=G|o}$71M-TS4;o*h|+Dt z%l7thsLl12*VWa=>MXf2f0#urkH@3oELA&o`p9Z-y;r@=&+xl@bN4RwpFH&XYM+y*rqGyMyH)z>+|{F`+goY!#<7~$XNaE3)Y99j6gnOq9A3akGA zKVHCGmLN857sH_>p$qJjUJ9J!VPpNsnQ;5G)*Q(Q=?AYYV>*f%1m7_?^D|idmv#S= SZ=eEn0)wZkpUXO@geCxN);8M! diff --git a/docs/html/img144.png b/docs/html/img144.png index d57061ccbf921ccf83d08742cf55fb9cfe07c828..d5054576c169f898fc963c8d94f96e0832fa8755 100644 GIT binary patch delta 168 zcmZ3-{EAVrGr-TCmrII^fq{Y7)59eQNDBk891Al81EcqIj_nf_z3Uh$XNaE3)Y99j6gnOq9A3akGA zKVHCGmLN857sH_>p$qJjUJ9J!VPpNsnQ;5G)*Q(Q=?AYYV>*f%1m7_?^D|idmv#S= SZ=eEn0)wZkpUXO@geCxT7&hYo delta 366 zcmV-!0g?Xd0j>ifiBL{Q4GJ0x0000DNk~Le000150000U1Oos70Vzl%-H{ zL_t(IjbmVd0B#0$1_lQPte}BGfWe)Cfepe&0!%Ol4+lpF{{#?=9lH_O0YBJc1_oBB zMsCgk28IHT7LXhVH?nOkq!^1Ea6)N$2*tdCVF8%YAOfb?xfpoC4sl==01KFcDV7gh zt&sr%)NukuU@??tLKAO*(jgFve?1k-|B?WvSU4D+!LgG7)!6U>OfhmZvoIupLKheV z9UVYZHbA8L84?tM8n_tvAnGf?Bxggurwha`R!p}!kmI4@1ehP7@>#y%Q_Y=#%1`)# z#0lzRKLBQQfPe!7L#zP50+KvC!%iUH!3Rx~AJNRd$`G%>z_A+$K=H{mM5ALjko*9Z z zZq5J(h60WjkQ@g$vTZD+7>gTlLTPyj#k_%G0hrMs0;brx7*7rFeHFN7Z?K_ z9Y9kyK&1H@5)^?NxES~#>MOt`XG6ZH3&bu~Ot(3Z;0>S-#*?&7FYCPxyhv z3F=}$0A_T6fCB?VtN_0Pk~}-ZP9WaF2ThY7(agTe5U;?%u^R|L@yRr!Lt{6P`~a2Y zXkcKKN4_o&EP21MR0t6Q5S$|V;0E8?8Mdv zgOQu}DFZal>Q$s*^&hi$k32&6f0Cb4MQMe~A0aAY>7;ETrDK3F!fH}~e}-Q*n6gTa zf>>HmL8%n-h#iFfLLN^xT$jsC$U^2g>6!k9+z;kNp53o)zHjMSH;|jr)6!gx>kg^M z2^G>b2&kS7%EQ2!4N@6g1k&i7?`}SR=R&9=IpgXq@hy4sJqoki2)I#=3wTPk8r8#@rh9xRdWUPht#X#LTl eL1fyWi4VKw$D;3IG5}MNUMnLSTZuDaV@t diff --git a/docs/html/img146.png b/docs/html/img146.png index 09d1d7962dae56b98309c33f0f7b3ef54dc20b3b..0e2bf7fa300a2f167c281d9d640abf9f92a0bfca 100644 GIT binary patch delta 436 zcmV;l0Zaaz1M~wSiBL{Q4GJ0x0000DNk~Le0001F0000H1Oos70j?w@gOMRje{xAg zK~yM_olreX!%!4GZSv9>KN4_o&EP21MR0t6Q5S$|V;0E8?8Mdv zgOQu}DFZal>Q$s*^&hi$k32&6f0Cb4MQMe~A0aAY>7;ETrDK3F!fH}~e}-Q*n6gTa zf>>HmL8%n-h#iFfLLN^xT$jsC$U^2g>6!k9+z;kNp53o)zHjMSH;|jr)6!gx>kg^M z2^G>b2&kS7%EQ2!4N@6g1k&i7?`}SR=R&9=IpgXq@hy4sJqoki2)I#=3wTPk8r8#@rh9xRdWUPht#X#LTl eL1fyWi4VKw$D;3IG5}MNUMnLSTZPfyape delta 347 zcmV-h0i^!)1DpdPiBL{Q4GJ0x0000DNk~Le0000>0000T1Oos70cWthrI8^_e;P?d zK~y-6V_<-Q5AqDyfI*W1R&gc<4h9BhCJz5UKqfJOwE#pmFz_=lI9y|7R48C*05aK_ z84{8Lz@n4`BtzH(Alwh^3SVytQ zGIcmWSsy?Iix)%ZkA%>skclA`49u+=3asHN(GdBp1cWk&nG75YnA8>kjm%-#$zaQ1 zz_tNuOg54-&It;<4hDP%tOwW+xO`+-rpUnS0LlVPohX)ax-oDDGh{MwF&h9`>7i2{ twx*RJdy1vwM*0000T1Oos70cWthrI8^^e*qdv zL_t(IjbmVdfDiHv*nmNk0akG)1`Y-WW+o2*KR_lifVBWbHZbrrFgRReWK<|%XaF+V zm>Ck10>Gk_10+M(10dWF>+W|;tD2_obrAr#Al z1|fq5Ku5dC0D0VCF(!o#T#N$1e}LjdsN+-k%*V+m#4J$H1U7G20aom(4h|R(z*tAI z$TD>}Kv^F^1dA6#=Z}QYrjUst6%5R+849f7DbW!5tOSHIhnWl<3z*av0FBIH*vVka zV8FHkYD_kgGR_GKybcC@2CN6z54e0}Sfj26EOr0o}a=I~a1~X(bGH@FJS?Qru u9k!;GAbX0X<3|D>4|eYc0{mex9033xojujUM*Q*s0000U|mj delta 291 zcmV+;0o?wa1LOiBiBL{Q4GJ0x0000DNk~Le0000k0000H1Oos70Vlk(>X9K!e*of1 zL_t&-m1AH4fej4||Ns97GZ|O|AZ$i3kBia4y}^M21_Zz)=V1;8-UbHd0OkZ&2axLj z|35G=urnZmOr3_-4J{2K1+75N1XhIu{46XC{0w*jBMJ{$u|ubODq|``8*?xN1Iq*j zh6G+NZe}(kpv>eADh#YV_6%Src?Ps{F>pkRx^Xx#po0Gh@Bxnlm>)54p=*VL7%XC} z!VefOF$8t7AK)qAXkfa?_Q6+x10X@R5Px1_QrkL4IDtJ pD-0{xX9K#f8t3* zK~xx(V_*P*4Gj$c|NjRw8CU}#Y(_ATi_yWo!GQq=1i&QcVGah~1_tH;<^)#c zKQJ(`Ga!LXorcy8Ee#?Ctw7EMR)qunEG!KC40r(}3J+PaL#KNxV=6-%b1(w~%LE06 z1YRy~W;P?B%;XI!46Ho%3}7b)c(igca72o_aX2ubg8vBc0gnTiA2D#DYlVUsEMly} z4;U^n1a+|=;3?o}V7kcm!B>C-B%!as-oU`{k%8d`1HXX20|WCnXRwCHPW%E596+fn o3@g~=1Q-(^GKk@J&426w03ZHTD{RTEl>h($07*qoM6N<$f`n^n)&Kwi delta 314 zcmV-A0mc600{a3XiBL{Q4GJ0x0000DNk~Le0000x0000T1Oos70g?GRJ&_?yfB8v7 zK~yM_V_*OQb`EZS1~gz$fGz?83JlB)uRegJvB|;!D+5CVNG*fIR{(~uwsuW)|6B<5uN}b zu?)(Y#=tfKNU?Y^xNh+bU@mdynBN8xXWIsr{=&clN;nQP8BBmd#XnV%p$n>!Z7V{W zbAkdl(9lBW4-8kB84%j1Gq8gU=X7JR22w8J0t{0P5N2a>+He8@47e^f5P1b9)Bpeg M07*qoM6N<$g1Z}S82|tP diff --git a/docs/html/img149.png b/docs/html/img149.png index 51cfc1ee9138598a3e62b6e01d5f262ed83938d2..159bf1eb84ea6d5973babf76cf781e89e17fb51d 100644 GIT binary patch delta 314 zcmV-A0mc5H0{a3XiBL{Q4GJ0x0000DNk~Le0000x0000T1Oos70g?GRJ&_?yfB8v7 zK~yM_V_*OQb`EZS1~gz$fGz?83JlB)uRegJvB|;!D+5CVNG*fIR{(~uwsuW)|6B<5uN}b zu?)(Y#=tfKNU?Y^xNh+bU@mdynBN8xXWIsr{=&clN;nQP8BBmd#XnV%p$n>!Z7V{W zbAkdl(9lBW4-8kB84%j1Gq8gU=X7JR22w8J0t{0P5N2a>+He8@47e^f5P1b9)Bpeg M07*qoM6N<$f@iaA)c^nh delta 222 zcmV<403rYT0-ypRiBL{Q4GJ0x0000DNk~Le0000T0000E1Oos70ao}rpOGOv|A0Aw(K0!k+^tb(wBfNe#)15jvYdm~U9 Y0Ml(EAO{iM&;S4c07*qoM6N<$g2s$U?EnA( diff --git a/docs/html/img15.png b/docs/html/img15.png index 5328d7ff4e710c780d672fc9b9febae0e8bddb2f..49ee48d235be3003f62659af0f22c220767364e2 100644 GIT binary patch delta 177 zcmX@W_<>QeGr-TCmrII^fq{Y7)59eQNb7>wEX)iHj63F^;+&}HSzqYs;us<^H93KS zIgI0I0fU$E26lr2W9tJIH5^!_*d-R0_QXSJY#|B<8pJoO5>c?= zlYZc1X2!-gt%$9xjhBbjMuu?*Z^Fuo2In@5k1cvLZU-KnDQA%5+A+Q9FuO~k+6OB& c0|tit%YsuYC+~X-bP9tfyQ`neI;Vst0ER|4qyPW_ delta 128 zcmeyscz{u{Gr-TCmrII^fq{Y7)59eQNb`Z%EX)iHj51$~ZcSA540H5!aSY*@nVjIj zFpo{6IhC2&nPH0T6FwCoA&Co&$(jK@PZ>OJww!f1bb!&BlW9YtPC^Ak(hI|aX5M+n d3S4^_8N_S3>cTM>v0}xX zIddjVn9$PFGSONt>to*}YoIh^NswPKgTu2MX+Vynr;B3<$IRpe2ZniU8qKN9%+3r` zWS{V<2nk7CU`*Bw=y}TEakJ&D!=VF=&YVme3Uv}H7?NHX7ButDJ67P@!^j|B%O#f~ SweC64Fa}RoKbLh*2~7aW8Z_$w delta 349 zcmV-j0iyoE0q_DliBL{Q4GJ0x0000DNk~Le0000?0000U1Oos70R#BeasU7TFi=cX zMYFTBsHmu%oScx5kc5PUczAe`I39oMS<9XP0004WQchC<$c{P!;@#fe*-{{HV+VD3gN?$o{~L(|m&FVzmK7?85=}R)$C(b~I^L zhJXtPaM?#?z=9r-gun(&e=;#7e6ZkPhXofKLjyws7oWff78btT1XQITxVV3qLk+N* z%Sxg<$OQi}0r8p{4-lsgM^eDAOspxTf(T^}R~T{_=BGSmO-beWrSXIPC3a=(3)l}B z@Cz^;VPH8B!+3)!03yuN@gsqO;RFK%PXn0ZHQ;muCC94_tQR=ixWX71#Bn;ezm0)) v##9D|13<_UNt_pt5T|Ug11uS-1`7ZHEl_){F5J5Q00000NkvXXu0mjf$5w`N diff --git a/docs/html/img17.png b/docs/html/img17.png index a674f6be44b096e85a2cd520ac9352eda70e4e91..9245dd3ec99df955293d27cfe642a72268110503 100644 GIT binary patch delta 304 zcmV-00nh%31n>eOiBL{Q4GJ0x0000DNk~Le0000?0000U1Oos70R#Bea*-iRe*o@D zL_t(IjbmUS04AXEIZ%1*4h)}A75s;R56GhYsLTQ=lYR0f6vK*$nFoEMJ}r);nTEU5+y001ped#x_qy8ZwF002ov22Mn-LSTYk Cj&r~O delta 457 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 diff --git a/docs/html/img23.png b/docs/html/img23.png index 309dc6000c028859dd810d44ca60e5f9d8dcff27..cf820eabca16e489570d00a7506cde5ae1cb904a 100644 GIT binary patch delta 710 zcmV;%0y+Ka1cL@4iBL{Q4GJ0x0000DNk~Le0002T0000W1Oos70V8ceS&<=2e*%F? zL_t(YiS1Rti_}0A{*uh@&R))BOBKO@&6O!sv^nAr^iYJw!_#sbVav33DZFD*WET#_ z>$VW<1r?QT@+T~uh2{Dmq)@m<&Nn|cnN9ZeIK)Es!6fs(`QCi@$0HHlF!3U;_7N>-}4 zxk~Y6Qq>(8AB^X@RLioNe_w%*Oqdz{1WQ{QU8M4~S=~>-nHH=R)?l7+=?FIKR41cL zmy$*i1tPa_Wvkmhb$B>z#Iz3w z9W-K-cF%MSHn!o0^#pICLWK8eAG-#BqrZcaJ=G)PF(#uDvg0qpdoJ7(+r>h&MvL)$ sT&BQVzh~uke<6C~9GKBdTiV~SUr;oY9cDE}HUIzs07*qoM6N<$f_q+3=Kufz delta 556 zcmV+{0@MA22I>SMiBL{Q4GJ0x0000DNk~Le0001c0000W1Oos70k@|r?vWu&e*x%8 zL_t(IjqOrBOB_KMe)hw4*7J5xB!LLx3RfsL+r>&&6bVUlkU|Ry3kuqK76I)}UF3*` zr&e|=sP%zO#3p5`5J-N2`U^Hiz%uX5?A^}d5#mRzd|=*>dFOdQW(H8;qhh6I$wntM z+E%q=yakgB8;nwpRg>ah&;Ba{e_Aedr3C;0LkHK*HkLZ1?4Wxi(StW*@&|IbKIgHVjX zM~4>6i>tx#NPQFW(k@E!q>(=Ie#&fe!RY3g^b;vINxrwfCkT7HijGThe@Ed{olSn* zl~_ZWl`S53(}YxCTqV^nW4IfAwigsATFAQX$;@7v6uI{~$jm*ds&ckxJPdK(wLH~Z zO|?<4wD(?%$71QZL@NDLpz=ndT+*S;Kivxvjo~OxP&T;v6Lwbu1YkPW)N?k)yOVe>d&Ma2*q5{Q%BkCZDk`sI8?me<+*(Dc#X6E)NX~pXxB1 z#6>asg=@b>mH&SECO4(kRJ{|Q)o>iZ4uSERDwd{?0~Uhq);%mM=XNd#q!$MH5R7|D uo)53ooJT@xxjJ`%C8nIZC;J(Xfj_K2TP5&;*)jkC002ovPDHLk0$_qw=>6>g diff --git a/docs/html/img24.png b/docs/html/img24.png index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..309dc6000c028859dd810d44ca60e5f9d8dcff27 100644 GIT binary patch literal 618 zcmV-w0+s!VP)RHR400001 zbW%=J06^y0W&i*I=t)FDR5*?8Qawu?K^T7a!*$m4c26XM2;vG?C^p;0N>&sJNpp}w z3keGf+IbcM?M_|fh=r$Cb}Oj$flb6FWvUQJet`N5HbuZP@67Do&f*c`N348c-j8|b zc|T?bP~f9trDn-SCp6ktwPU;mlM5S+QjS%V;$P4HD*{?BbfpWcy+Oit3~4nDi4VHc7s>z9$HK zyNZrWaYx}(olSn*l~_ZWl`S53(}YxCTqV^nW4IfAwigsATFAQX$;@7v6uI{~$jm*d zs&ckxJPdK(wLH~ZO|?<4wD(?%$71QZL@NDLpz=ndT+*S;Kivxvjo~OxP&T;v6 zLwbu1YkPW)N?k)yOVH|@r79TQ~z0M211pRq2et)(=7D4YK& z-O(*B4-E>R>M)zcMKSt?YrjR6|9<%K57y%V3+a2&u6f$^CtmZpyb7J}{8JuEBd zb}k5{7Y6wdjC)F+53kgmM?z}3I(L92rkuJb`x%dcKde7nCGdgSG5`Po07*qoM6N<$ Eg6_u>BLDyZ literal 0 HcmV?d00001 diff --git a/docs/html/img25.png b/docs/html/img25.png index e98a26a453bfd13131192e1023fdf6ff45ebfb1b..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 480 zcmV<60U!Q}P)RHR400001 zbW%=J06^y0W&i*IUP(kjR5*=eU_b#52Al~D{0sshHY)=+-{tX>QnAi4pjfUz}F0GP_n!crF?sSl{!!4R?l7;6qy z3`>EEro#=~!NBrafq_XtAK83hA;RkL;cHKmj&b#$ovYR1adzU{FA)XJ=r@ zW#Cuf2dZlK2|#ghgp2c41qSZ23TGtq6H_7-7}!#GFfiyDv=QNJaC$n^-qFfcGABqSIZ7z_*y0002$S<9XP0004WQchC4n!0%Fnj=FW}K?<19c!42;c!4Aj-h-1IT&6 za1}@%2w-r4tKlHiY@z`hLj#cH;$`66f4zG*Fi1WCMHoCfIv5xj9TI?HAb_C*=wlvQ zyNb4e1)JaoAm#*Oe-22XbF(ur@)dx^75Ic$7}yvYWOnb~!JxvDz`)JG&~c-IA%UL@ z$V!0d7i4GPVNn39ZxH6^0mUYU`Jl8i4V!aV3#jC^kpom*6NpmB4WUFBm>+-{f2>{% z8X&p>rhu_EQUI9B&B9U_AgK?i+`$mC02pfyRSZjkil)O2+`+)|S%HB`Kp)wBU?IZm zB))(HXzC}X13&>bSjJ)b08|fR%wSMJsAp$j$YtPH;0LN|_X$98aDwX|8x@7rB3^Q-?2rgxT>P1Z zElo^8*|D+lax0^GLVCnOX0xd;nP$izzIou>0R{%nHrCJQ`<;&g&0+9#^>bP0l+XkK D#`P?a diff --git a/docs/html/img27.png b/docs/html/img27.png index bd2bea65ce98054618297ee530b1a345b83b783a..9f8a50df3ac9688af763e511baf8d7d90200a370 100644 GIT binary patch delta 138 zcmaFCxPx(mI3F(yGXn$T_d_RdGB7Y`O;lAXG%zrbkdWZv;Q7Pd4o1!c#^#>=gY<_YN$ o2bs;LzGRvqfB5Esa|ak0INMl1pYL}*1~iAk)78&qol`;+07J|wJOBUy delta 187 zcmdnN_=0hQIG-E~GXn!-QNzwR3=9kg6IGS!ZES1|3=C9MR3s!MczAe#!mlDv&jV77 zB|(0{3=Yq3qyaf;o-U3d95a&>8kiZ|*f^TsGj{y>FRyh@oI&Yk;;Dc22@XuWtO`Yp z%!&t|6*M*`9%f`?b6b$PhKJ|Oxf@siwnumKF7Zk5X9&{S!}*Iz;h$)mXu`)W9sLSQ nU0)fuGdfOB*ec9n$G~v6MC!ncdq)L;Rx)_H`njxgN@xNA*%Us& diff --git a/docs/html/img28.png b/docs/html/img28.png index b8c723d5eb0f50a06c0c5ddc897f7184ac18afd7..bd2bea65ce98054618297ee530b1a345b83b783a 100644 GIT binary patch delta 208 zcmX@f_<~WjGr-TCmrII^fq{Y7)59eQL<6xL3o`=)V^PD-H$aZTL{+7F8ygz~0|ONm z6$uFm9v&W`@T?a|%5OMDXi8G>~7 zaQV2whD9DF)-XMkvj0=-cbRdl?AqHoZ1)9-cis;t~=Ov1W-{jm*c6@=RUh5OuxrpgE(*X%2%cMg|NFySH=1 VOy4_g5zt@;Pgg&eb<9o)O#q&@Ejs`J diff --git a/docs/html/img29.png b/docs/html/img29.png index 23642ca77852b9d4ec08e8802609da24476d241b..b8c723d5eb0f50a06c0c5ddc897f7184ac18afd7 100644 GIT binary patch delta 156 zcmaFFc#?5~I3F(yGXn#o%-5n@3=9lf6IGS!4GatAqHoZ1)9-cis z;t~=Ov1W-{jm*c6@=RUh5OuxrpgE(*X%2%cMg|NFySH=1Oy4_g5zt@;Pgg&eb<9o) FO#tV}D%t=5 delta 181 zcmX@f_=s_WIG-E~GXn$T%bJY5_^IA$g%Bs@rPVB}lD#L2@WEFqz1kib-?CUBDX$V%3TB@Y`e z^16ItEWE`wp;1R6kHKR$BQvwK-CT=CjT;thY0PbW0=y=)91Al81LMr?Oz$TudY3UIc)B=-aLi0j zNO+Loz{t0PiIay%SVBV2Ac3h&P2eQ&k(I0wOCB~{bP0l+XkKA)zg| delta 385 zcmV-{0e=4C0l@A=r`26%y(l|kSGnB#yh3k50yY(TPrfk6O=0vKR|P(Zux9t9cc z!w|s0APExs1d{`TL;|MZ1PNf06X+YbkhTNZfov)qK(X7qcW(em164L)>gK={qCIeC z#}wm&P{5$)gNyM(C^lqgdV)#Ae*j@_0dVLuF!KXRCPo2<4+}o5o(o8P zc=n*+14JE<0x;P5G2$8su(*c3fgFF)8)$TNbSMy1mB2oM6~<=j$EltVNhT9a#$ZuZ z31?ZjUt$msY4&*8#DE+>p=GWczzmfI43inS8`vjsPhjw81&OgQfGJ{TSICC4)EBTG zVDJ~&vW7+``>K)dc91sUnX z5Wv772@?7QlLLZ80;b>u31E^F=o`3@wgcFKY$_Z;vD>?MZvaUHRW@Mi=D-x9J#c2n z6yt(Wz@X=Yi}6AzHe_ddf=R;we_?I`aOg8I^8-mHMgfKo3qJ5RFtG35y&IyQ3rKu; z_MqScL>-R;FxdGq;u;9BxQ4xf9DmUpXmoURC=gVYz&?Q$#%Airsh$r>CKF7?U{O^G zXIZ#kVh|5$_ITOEfE+)eWv&~*43z~8lNq=h*e7sLVDM)JiLoz$DPm^GR)(_F7qA{+ z@E71y_Ge(Y!Q%kRkj@C(t}s9x#jn5{z`$1G<-**O&cGRplH<6;(xE!oQs?0E91`ea e+DL>d5C8!605vzH{=$v`0000U7;7|Ys31GtvK+NMnTygIKkZfh( z|G>Z?3}mrxfV%()Sn!*L8}L9VemDyVJmf&+1qKy<4hF{4yLUG*@PY)`II!q%AlG6F z05=wgu=0Z`PM|DY%mJcK5GV^5e>>;~A`dhe3OX==1DB2a0gzM>WN7&C!D#{m=kDFR zp~1PJfx)5e!G({I=;liRksm%_aZdrJPz4#@8VJBx=cu`b2z4C{+zv1{%UPVJeQ~Kq z@U}s9VgQZ?hNUnaZSDscG$Il*el#$E^9~fGwnRX35rfJChRF=Q3|s-+Wep5p*nx?j zK@uL`%nUPNO!Wn<2N=FGcr*DkaBSdl0L5$~+%%>SOi&iT0&f6=g=oXBdjJ tqTQA{LYZu-b8z_)8FVpiBt{ts008=^Ka**3s6Ufww|KAs000071BwD6iBL{Q4GJ0x0000DNk~Le0000P0000E1Oos70bdiE<&hyve*lO{ zL_t&tnPXsJVBie^5)5}fFfb^97>pAbP=Ja68xjvF*}%ZSpAbP=Ja68xjvF*}%ZS+@e*%h0 zL_t(YiS1RtYZO5g{`Pinf5q%=VJR{m7A6)B2qAV0XT&I&LnDfUEErL=@PZX{`%zL}QPPmdp zGw8_xm>#o^BDc4InuVn*^OPPDe<9q}<*R;QQ*s6fzh@CGVLt(G0@s0~du+NVgpvk5 zoQerNdlwp%4elYKQLJQg5Wy7bdT5(GnWc^&a4ZrhZEL@g>;f~7EQig);;;a9gwDW{ z&}E=BAjHR`Ax8~!@<7(Fh#I_Zx68})$xu_~Y-`9F0;m*&eEU>w87bb`e{WL%HX6>D z%0Wq|uG)mpuS(7}Qd6YGv<^Lik=K33yg1T0zrkWaNETT(bB@_o6lNVn;v%!Rgue<<~>Sdt>QQboY(qAJR-fjr3a*!AL!2`=0)w*5$XiXf1@<1IgHoEcG63f zN+H@PzJk%0%8wm-i`HGD(W=?!M%*y@k3bs@vp+%oG4SzHfgq>Tk)M?GlJtH=j!&0y z`bvm(;H`w+LJ8H)yUWV5jZfrr2Dqbhy!AZ98s|uQpS}>cM^4xiEN3tdpTo@Sz|hTp zgAZ{Eg}#!Gy3Et#B}h!bO2HZ<`ilj7Fv;zY@e5&pb^@HhwC4Z-002ovPDHLkV1g(# BR#5-| diff --git a/docs/html/img34.png b/docs/html/img34.png index 0cafba56ff7a445e7d334ff2d9e6b7965bf41f1c..7dfb344707592206da4b0d195a68749336ac3c1f 100644 GIT binary patch delta 719 zcmV;=0x+@e*%h0 zL_t(YiS1RtYZO5g{`Pinf5q%=VJR{m7A6)B2qAV0XT&I&LnDfUEErL=@PZX{`%zL}QPPmdp zGw8_xm>#o^BDc4InuVn*^OPPDe<9q}<*R;QQ*s6fzh@CGVLt(G0@s0~du+NVgpvk5 zoQerNdlwp%4elYKQLJQg5Wy7bdT5(GnWc^&a4ZrhZEL@g>;f~7EQig);;;a9gwDW{ z&}E=BAjHR`Ax8~!@<7(Fh#I_Zx68})$xu_~Y-`9F0;m*&eEU>w87bb`e{WL%HX6>D z%0Wq|uG)mpuS(7}Qd6YGv<^Lik=K33yg1T0zrkWaNETT(bB@_o6lNVn;v%!Rgue<<~>Sdt>QQboY(qAJR-fjr3a*!AL!2`=0)w*5$XiXf1@<1IgHoEcG63f zN+H@PzJk%0%8wm-i`HGD(W=?!M%*y@k3bs@vp+%oG4SzHfgq>Tk)M?GlJtH=j!&0y z`bvm(;H`w+LJ8H)yUWV5jZfrr2Dqbhy!AZ98s|uQpS}>cM^4xiEN3tdpTo@Sz|hTp zgAZ{Eg}#!Gy3Et#B}h!bO2HZ<`ilj7Fv;zY@e5&pb^@HhwC4Z-002ovPDHLkV1iee BR=ofK delta 182 zcmeBS`_8D?8Q|y6%O%Cdz`(%k>ERLtq@_S?7G?$pMxzbE9upP4>lsQtT^vI=W+o>v zFtG}3%w%Gg*if*+=s+W*u`o09YGtPdrOlm=oD=L096E6Be1q_Y!sjC)gc0bl}|i2H_3Mjg}Z$GfQ&rk@?f; z;4Jw=Qi4}PVu!?ymHq_Sz@oXIaL4v delta 503 zcmVi47`})*a4pah#*!qGPuRS!cYKVHZx2=K#mbO!3H3%XklRRVP#Q#~9oQPn8~05?(67Z~}u*_j*?IDs*th6O2-wXTK$*+2 zf?E92jAR%&3g`~tF;AdSA)uGB&9#Aja%ihd1_OhI`viv2GFOl+2TX;3)+dimE^Q3r zp-l`uk9d!P^oo0$Oa<%hW#9@h*uv1kV8_7Sz&?SQAseKFeF5B_4?qYkyg)c65p1sk zuLA=^I#BOd1|MdY4Ga$%mNEMa@F_DeTmhGE&S-k4G4L}nm>q+-Ih#R2d;(Cfg==OZ zw*gxN!x9I!5-%6-uylk@HW1MGq4p!CzbV7Trnzr|?hT+`)~TMZ46F_0hZTnl@p?Jo tr7+2H#1u)aC0IZ^1$w6{P@tL0002-;T?O8%M$`ZR002ovPDHLkV1luI&H4ZU diff --git a/docs/html/img36.png b/docs/html/img36.png index e1c0218c1a16892d364509b6550e3acb39d7961b..e341cc9524eecb9a70504d0177f54826254be223 100644 GIT binary patch delta 504 zcmVEWAKCCJ}6} z0j~oCLpo6JR|X$umJJLK8J02o3-Bp3FkAtbZq8_Wr!nv|F_;~LxH+3aL3{#GuZ3%7 zA-4fr1H%#rwh}KF?yz)(PBswG_@VYArN1e|#iqG$g6<8VUe>9et_-XV6F zL_t(oh3!^Nh!jT@{<^DYdZv4)dpyYIW`iWiEaS==2=y4sg@r&W*ET|`X*$5h2Tbscf|5NXZvle}!L5CPl&XO6CrdjJ>Uf#N;h#J2u^7s|!4$gR4zdE<4CM zzQb{R-fVK&`}q%(IF8bQ7C+iDA?;pM0X$lg{ChBbS!!PA$IaNyRcPGU{t!9YKcm^;9ZET~@cp znqqWC{DIX&0gU;ow7;GBsxkwNyZ{kV)($WMV@|#)t16lIB~dy1-uDY+I4}CS!*}a z@H+J4L!15|oX}$^^A*~q-^3gZ1iq)q7SBJzYHn4+FBha}vqe~nfN6H(Y8Ur#ND%p7 z_*on-d)tBE^+(aZKGyHxo7h9C@<*|PUxw95LNGffD)KQ_f4D~|m2GfN1Y|+E1j7`m zr`2tYRZq{lVP4|LD1Yu?#eHvjg^;o1{%iNAuFuU>-ne+JzVi=Yo?V_N%}h0-!SVe+ z?L{F*PWH3z!>_mur;5*zTRc$Z6_hTi?HZmN#UN8EPIB`UXZd>TtKk$>Xu7Mwtn;Gr z)pLcZIF@xeHP!9ScrYu5d%{_L%dh&5G~Zu!eCvtJ8^XF6YzXa3fQP!CyR)k>-j)CW N002ovPDHLkV1l$8<+lI; diff --git a/docs/html/img37.png b/docs/html/img37.png index 9528520c2707125e7b4dd637fbfe17b56f253683..e1c0218c1a16892d364509b6550e3acb39d7961b 100644 GIT binary patch delta 991 zcmV<510eji0-6XRiBL{Q4GJ0x0000DNk~Le0002#0000a1Oos70qJNkERi8ge*>6F zL_t(oh3!^Nh!jT@{<^DYdZv4)dpyYIW`iWiEaS==2=y4sg@r&W*ET|`X*$5h2Tbscf|5NXZvle}!L5CPl&XO6CrdjJ>Uf#N;h#J2u^7s|!4$gR4zdE<4CM zzQb{R-fVK&`}q%(IF8bQ7C+iDA?;pM0X$lg{ChBbS!!PA$IaNyRcPGU{t!9YKcm^;9ZET~@cp znqqWC{DIX&0gU;ow7;GBsxkwNyZ{kV)($WMV@|#)t16lIB~dy1-uDY+I4}CS!*}a z@H+J4L!15|oX}$^^A*~q-^3gZ1iq)q7SBJzYHn4+FBha}vqe~nfN6H(Y8Ur#ND%p7 z_*on-d)tBE^+(aZKGyHxo7h9C@<*|PUxw95LNGffD)KQ_f4D~|m2GfN1Y|+E1j7`m zr`2tYRZq{lVP4|LD1Yu?#eHvjg^;o1{%iNAuFuU>-ne+JzVi=Yo?V_N%}h0-!SVe+ z?L{F*PWH3z!>_mur;5*zTRc$Z6_hTi?HZmN#UN8EPIB`UXZd>TtKk$>Xu7Mwtn;Gr z)pLcZIF@xeHP!9ScrYu5d%{_L%dh&5G~Zu!eCvtJ8^XF6YzXa3fQP!CyR)k>-j)CW N002ovPDHLkV1lTC<+K0* delta 245 zcmVm?N0O7BFxy1SPQYaPl%LFfj15Fgyq-aAXshpuoWFRxn}1 zH1<&T5+cnc430B&FeZIw=n~*(OVAaNR}f=(S_2g2ZD9Dwz*WHbk>MKCSB44(2DS|# v#k>w&4GDG(oDF=ANgtR$CLHH=P-OrBQ~@P2=BX`200000NkvXXu0mjfeF#)G diff --git a/docs/html/img38.png b/docs/html/img38.png index d18c1037cb2f62860f72b73c52f67a3ee34667b2..9528520c2707125e7b4dd637fbfe17b56f253683 100644 GIT binary patch delta 245 zcmVm?N0O7BFxy1SPQYaPl%LFfj15Fgyq-aAXshpuoWFRxn}1 zH1<&T5+cnc430B&FeZIw=n~*(OVAaNR}f=(S_2g2ZD9Dwz*WHbk>MKCSB44(2DS|# v#k>w&4GDG(oDF=ANgtR$CLHH=P-OrBQ~@P2=BX`200000NkvXXu0mjfctKP# delta 730 zcmV<00ww*n0+$9MiBL{Q4GJ0x0000DNk~Le0001!0000a1Oos70SE&neUTwce*%?B zL_t(YiS1R-YZE~f{&r_Kn`D#S#hWLiQ1GJeK?D`bN?TD2WuZZX3Z}GR?WH*cZ^D`; z9;DcS2u*A4)fk6fW zTKlb^qHPNa<2uAEyhHYoNj!oj4D;NoB5Wh1es8Rk&?a)MM`6f<=AbCclUg2ZPP#hM z_==nllVqM5x?Xo03+N#uRxu1CFCV8)_gv`Hz%43xcx)N#CXNw3 z-|4&tOjBB?76rOg4<4@x(h4N&j;v#c$|4NYB;2RgaDCY2-K=P%5Y$^?!HuF{O!jb| z9tvj$ge}sb#q2)bYYbj=f0Jl!x`~|q$6t%X7F0W3__oRPbpDmt7! zPUPw=bxb8<);WK!ec5G=MX-8Vcc5GW=D932h%NJFWvOu&YHvFY-5o~HMQ6@`Yu*A4)fk6fW zTKlb^qHPNa<2uAEyhHYoNj!oj4D;NoB5Wh1es8Rk&?a)MM`6f<=AbCclUg2ZPP#hM z_==nllVqM5x?Xo03+N#uRxu1CFCV8)_gv`Hz%43xcx)N#CXNw3 z-|4&tOjBB?76rOg4<4@x(h4N&j;v#c$|4NYB;2RgaDCY2-K=P%5Y$^?!HuF{O!jb| z9tvj$ge}sb#q2)bYYbj=f0Jl!x`~|q$6t%X7F0W3__oRPbpDmt7! zPUPw=bxb8<);WK!ec5G=MX-8Vcc5GW=D932h%NJFWvOu&YHvFY-5o~HMQ6@`YFU}11rz)-z=H&~qmF7-SP-$>0Z?J>gE9}|H|OQ%o@P*fnR~wiJ^l*o`EY-N`Zla#Q<43 zgFb@-iw9V_g==OZt4o*wTS|5)!$pR61};~0x3g}^3K3vvCC#hT1;_{)(f|NitxNs; S<^ah60000FU}11rz)-z=H&~qmF7-SP-$>0Z?J>gE9}|H|OQ%o@P*fnR~wiJ^l*o`EY-N`Zla#Q<43 zgFb@-iw9V_g==OZt4o*wTS|5)!$pR61};~0x3g}^3K3vvCC#hT1;_{)(f|NitxNs; S<^ah600001Mv);)e*)r3 zL_t(YiS1U+Yt%p#|K($o?55pBPZlq!_;Jlas2ngMdgZ&UxWYK_!mS`t0#RkNw(Q-x2{F-(zj$L^XC2DZ|1!>lLfXC zCxmjQ1U!S8sze~z62nA^uw;e^e^j#;8^^8C29!i+ji10YXf*z~Ph`x{OP_)-HZut# z48M`}cKmH$%y=#ElJTimzW|k9YLHDnCFmYkK(eqFzfl{bMqaZuM_Gq1(iIEqA^ktX zQ=tHIeMxC{R2KEkQ^l1YJrzA2Cw4A>*kILGB1KbS`MABj%q(*FN@18!e==Kr?~$F? z(V->|1EUoaWg7F%Osoqx2kprAB#x|1RlJ_}q$#jz`4#x<+q3^+7qeEB6-|t+Q>CtB zn6S$VR%?viaK@5YlcRilSLBZD$TmgKRG8%QPP3>Kn?I#YAvx)&EB;z_HR9XlIhynf z4Lm`er!HcOS*hcNxpNMBPTKo@EXae02M(O}nA*$oOio;dG&Y3ifArD4UJfw0IZti? z2OkeVD9_OU2uR}-=RuY!&qEX~{5)$O@^hhl3L)8bgM|1CY{0E zYL}XLx-Y=~j4F;ZgKjb6mW*e775Ijml4_oSVRiOl5yW(v=4Cs(AH#&qQ0#dJ3&nUp zMswU=+L|XsSlmqpeaL%s=@jGr5b((8lp~j~K^dDKkwQE{p>IQeW~iSkmoNu?bh4k` zTkyQFJ59~SQ%7~NG&xIay;0}+lVt0l5Lb~9#BqD%W$YRYa5nB_kK?C)SbxQXG2ZrX laJxYv#3$fh`*r<~1Mv);)e*)r3 zL_t(YiS1U+Yt%p#|K($o?55pBPZlq!_;Jlas2ngMdgZ&UxWYK_!mS`t0#RkNw(Q-x2{F-(zj$L^XC2DZ|1!>lLfXC zCxmjQ1U!S8sze~z62nA^uw;e^e^j#;8^^8C29!i+ji10YXf*z~Ph`x{OP_)-HZut# z48M`}cKmH$%y=#ElJTimzW|k9YLHDnCFmYkK(eqFzfl{bMqaZuM_Gq1(iIEqA^ktX zQ=tHIeMxC{R2KEkQ^l1YJrzA2Cw4A>*kILGB1KbS`MABj%q(*FN@18!e==Kr?~$F? z(V->|1EUoaWg7F%Osoqx2kprAB#x|1RlJ_}q$#jz`4#x<+q3^+7qeEB6-|t+Q>CtB zn6S$VR%?viaK@5YlcRilSLBZD$TmgKRG8%QPP3>Kn?I#YAvx)&EB;z_HR9XlIhynf z4Lm`er!HcOS*hcNxpNMBPTKo@EXae02M(O}nA*$oOio;dG&Y3ifArD4UJfw0IZti? z2OkeVD9_OU2uR}-=RuY!&qEX~{5)$O@^hhl3L)8bgM|1CY{0E zYL}XLx-Y=~j4F;ZgKjb6mW*e775Ijml4_oSVRiOl5yW(v=4Cs(AH#&qQ0#dJ3&nUp zMswU=+L|XsSlmqpeaL%s=@jGr5b((8lp~j~K^dDKkwQE{p>IQeW~iSkmoNu?bh4k` zTkyQFJ59~SQ%7~NG&xIay;0}+lVt0l5Lb~9#BqD%W$YRYa5nB_kK?C)SbxQXG2ZrX laJxYv#3$fh`*r<~L=Tz%g4q50000L=Tz%g4q50000n<> delta 445 zcmV;u0Yd(@0{jCZiBL{Q4GJ0x0000DNk~Le000190000S1Oos70c~p~tdSv0e*t<) zL_t(IjqOxDOT$nUJ!$jN8cZVyuFp{&d{c3Jh}{GWR_P=bii3j0MbRmP4sPk_*2UtO zp<5S!g7^!fzaWA?!28lPP1=W`lY=MZCik9m-@EVT5}*Lri9AG5!sY2pprqfY!q-s1 z1I%mnLTU(UY#_w$ldCz>IV0zJe;JM~ors0m=85dL(16KF?950|$(0$xMxEPnTw*m? zqtQqP^jro5O1X?qM*K}!bd8Y~I%%R`W`UBRmK@Iz=bmuG2>aw1V?y(rk}&XzqX0FE zEy`X|#!HeR5HUXxWhN#|HABJ47%?qCRX1Lz6w=k;d0ahK{>@9C?vE#?fi5ks%iIK{-=6xQceN?#w> z^8xHp_<(E#Jd~0Ac66TCV-w73CwhxA&D$1QjSjAWM-J1Qt=|})wp`IV0zJe;JM~ors0m=85dL(16KF?950|$(0$xMxEPnTw*m? zqtQqP^jro5O1X?qM*K}!bd8Y~I%%R`W`UBRmK@Iz=bmuG2>aw1V?y(rk}&XzqX0FE zEy`X|#!HeR5HUXxWhN#|HABJ47%?qCRX1Lz6w=k;d0ahK{>@9C?vE#?fi5ks%iIK{-=6xQceN?#w> z^8xHp_<(E#Jd~0Ac66TCV-w73CwhxA&D$1QjSjAWM-J1Qt=|})wp`G{t& delta 847 zcmV-V1F-!31B(YCiBL{Q4GJ0x0000DNk~Le0002a0000S1Oos70j$8SMUf#(e*+0g zL_t(YiS1TPYZO5c{$_UPwG(Ft1u+P+3g+U$2EhkjMo5Cu%Rp8V@!+C@#s`idDtMWM zO;`kR#dyeV{Ra&uUiPvmg5Dzd1NM*~Fo*|__G5czX0wSRK0s11)78~g^;K8ZbPuo% z-7CWvjFEUsrfp}SXdbWy6N`7Cf6VM3T0Y57b%jVj(rJWBobV+(Fr%Ld<`+op+U4QL zl!FtL#C(nTA{y8GfHhDiqQ^Dd^4JoKtt^)4%tRcBrDM3-bzR{w>N#YNg+rhq=6{<^ zkx}%bk%7hiK-3rjBokeXe&&VH5|7)PyUH^!FQ1HH!ylmuuk}c~-DVm^f7pRckIPDD zKW(tFj3`+Lii}B-i0T;h-7|OGD1+pHXYU^*@4uuXj2a|EwTA%$EWb|@MRB7`Ct+Sh-O Zz5@_Espq_0uE+oY002ovPDHLkV1o9LlY0OF diff --git a/docs/html/img44.png b/docs/html/img44.png index e1a29cbd050eb7a6f48a2a24071e3b774973c2f7..911db80b52a99b4a956fb6a674865a81c24212b8 100644 GIT binary patch delta 847 zcmV-V1F-zE1d9hDiBL{Q4GJ0x0000DNk~Le0002a0000S1Oos70j$8SMUf#(e*+0g zL_t(YiS1TPYZO5c{$_UPwG(Ft1u+P+3g+U$2EhkjMo5Cu%Rp8V@!+C@#s`idDtMWM zO;`kR#dyeV{Ra&uUiPvmg5Dzd1NM*~Fo*|__G5czX0wSRK0s11)78~g^;K8ZbPuo% z-7CWvjFEUsrfp}SXdbWy6N`7Cf6VM3T0Y57b%jVj(rJWBobV+(Fr%Ld<`+op+U4QL zl!FtL#C(nTA{y8GfHhDiqQ^Dd^4JoKtt^)4%tRcBrDM3-bzR{w>N#YNg+rhq=6{<^ zkx}%bk%7hiK-3rjBokeXe&&VH5|7)PyUH^!FQ1HH!ylmuuk}c~-DVm^f7pRckIPDD zKW(tFj3`+Lii}B-i0T;h-7|OGD1+pHXYU^*@4uuXj2a|EwTA%$EWb|@MRB7`Ct+Sh-O Zz5@_Espq_0uE+oY002ovPDHLkV1fk*lQIAR delta 499 zcmVmz?e*v&b zL_t(Ijn!1oO9DX@{@h)4S2On-25k^t^ACtHROpt3hPSqpQ3QJmyKO;bheD!L9kLR; zF61HbBK-q;h|bbquyyHZZ)UBuHv0h``e5e0{pP(l@6Ehf;2qQ)ph!b~oJ=EPThQC_ z_vQ?{J$hC+ogg71kFe%uJOCaxf0-x)al=sAuBy)}&7cW*lPry4!1!TI%yl?ymnD%# z!r#j@WJdF6scraKgJjoJ7RHO1M(mNESPPe=I!hyO`^lD~ zQ8Ou~^C@DL2^&>GCMuwdNi9@0(S%Oy(p!qh`~)U>monUvMh=yDh!UTIqNAcUI~@&u p2vXB}YbzP2xZpxQ;eH}t;u+O$U_y3NHj)4U002ovPDHLkV1o0|-l6~i diff --git a/docs/html/img45.png b/docs/html/img45.png index 262d8531324ddf0574514c2b76cae33a73e34d89..e1a29cbd050eb7a6f48a2a24071e3b774973c2f7 100644 GIT binary patch delta 498 zcmVmz@f3QhJ zK~y-6)l|<*0znl1++B57Gxr(>Z4h4b4~Q^S=$3?rx3-f}1bYg*Z9!#+LZVY0vJ$&4 z74NJD*`Oe11j(A)9% z<_x<%dR91{AR!`;u;ykw03J4(e<%ZS!%*3-s?RFTpb2=BERA8n_+d=UbvSI7C6PwL z-^(;)M+U)i4>`IY4V2o37Z|PAuYm_ZVhg38rt&A~d|sb4z>Nx(Lt-zZwO=(FzCLTS z8$Qa5j&Xf0j05Nmn$ zZzFAyxbc3w=6{W|-#7(SHVegKam(F6-n;lnZt~fO4W!+@?l9K>plBOK?dtb0q;Dr# zK=f!ioxDn(X9~nD#^L-GIHY~xkj!$aZTMM(WY<#`#*3In?2(>W3zwuiOCxXl$(Eu~ zGbyI?DPolg8&yFjDxixkNK`e^gih?zTZ+g01SWZxGTf3z4wZO_5}$&iqoOrC9Swa5 oQqy{CD;cM_;6gs(ej;Du8P#rJLUvO&k^lez07*qoM6N<$f;1!E#{d8T delta 500 zcmVb@!LUeT2R9Q^6F{BpfC&i$budQb!01>AL>)}j$><

(=PSCfO(R^Dm)f%$s<9(VzK%rX7rUj71|@$>n$6ZBQ}`K?!K0^*1oyp15-YZA4V2US zNY>Vjjbi$gL?Fldh`wd{j)5}@%OuMB q1CVHEe{DDI4wy~dEsr^uiFgG`qhXBoo$ki~0000SezDQ%EnZbUG+Ip9W8UxXm(_5oB zVZJ<*V$*A`j7{m;&%vuiM~Ofu`G%#f2aXf3i|D;qMl8 zVAw3*%zu06e~#;4Wr@8fINJ_i>Z2q0qnpphg6p$T8&mihk-?*61jPa&iBL{Q4GJ0x0000DNk~Le0000h0000D1Oos70kwg;PLUx?e*nWt zL_t&-m1AH40%isXSgZhL6fm$ZW@F%oalzms1A_xE*D+2YQ-Q(cJd#Wo5Vsb1yGBHY zGq5@^FkD!~%D~LS{m8G|rBJvw_bsLEFX6fdK&Ft0-GAqZS1K0000< KMNUMnLSTZzHDE#j diff --git a/docs/html/img47.png b/docs/html/img47.png index 8d80e5be5f613726e0230c12e56da6a1f5dc8047..0e462a32c842c814651fd5317d286c5bde28849d 100644 GIT binary patch delta 260 zcmV+f0sH=j1;qj(iBL{Q4GJ0x0000DNk~Le0000h0000D1Oos70kwg;PLUx?e*nWt zL_t&-m1AH40%isXSgZhL6fm$ZW@F%oalzms1A_xE*D+2YQ-Q(cJd#Wo5Vsb1yGBHY zGq5@^FkD!~%D~LS{m8G|rBJvw_bsLEFX6fdK&Ft0-GAqZS1K0000< KMNUMnLSTZFfM68> delta 584 zcmV-O0=NCe0)_=4iBL{Q4GJ0x0000DNk~Le0001e0000S1Oos70m%WKe~}?ee*y$a zL_t(IjqOywPZU8E{$^*_TW^)y#=`DQw4Xu~6PhJ>1f|&ssEGv|n=33l6GCFQ#nE6x zV?hTc-6TM@&B;F?g@3>m`~g=;Eb+aWy=CqPkU%U<{F0fQ``-KBynSzGfC+qV(A1mc zN3aL@SktshfEaqZ*Or+>8W9b>f3KI(1R9U&eh}yC1rggq=IG*+E%;JV9I)P=Ad07@Bs%@#K?!mWto}HNkTr28i3-d8bM8mAzsI+N zY}zDh6Rx@WnY8}eoKP6%wL2ko-7YhsplLwi5Y$9nL3B=a%79;jY*FP+}M8{iLy WmTPRLRAHI`00001f|&ssEGv|n=33l6GCFQ#nE6x zV?hTc-6TM@&B;F?g@3>m`~g=;Eb+aWy=CqPkU%U<{F0fQ``-KBynSzGfC+qV(A1mc zN3aL@SktshfEaqZ*Or+>8W9b>f3KI(1R9U&eh}yC1rggq=IG*+E%;JV9I)P=Ad07@Bs%@#K?!mWto}HNkTr28i3-d8bM8mAzsI+N zY}zDh6Rx@WnY8}eoKP6%wL2ko-7YhsplLwi5Y$9nL3B=a%79;jY*FP+}M8{iLy WmTPRLRAHI`0000X14(R@2+n2!5^Fjg00;aSZ3=F6WaE1Yl716;svz5qjLuHWz0210qVzXbm QNB{r;07*qoM6N<$f@hYYZU6uP diff --git a/docs/html/img49.png b/docs/html/img49.png index dcd7f10853f7fee414a75c65a564070f88a67075..0913945f1c3b9cfdc35d7318e850e2ba7f6dfcb6 100644 GIT binary patch delta 422 zcmV;X0a^Z@1?B@GiBL{Q4GJ0x0000DNk~Le0001G0000S1Oos70sVMfW04_Ce*t7k zL_t(IjbmUy0|`6==t3xfE1wasJQQ$%2muEMrVp$j1_Og4F}jez0U+MMzzrn-t3yOK zgn@WW4c{38Ks;{lY=mlvO6mY^IDt*d1uDhP#UQ}Wps=8UfoJ#b-5{xm4&1tc1PfOJ z{*WDP082O&AY?vZ^(#=24JxC|e-Ob_&mqA2fq@GuqX3m@DBx${X14(R@2+n2!5^Fjg00;aSZ3=F6WaE1Yl716;svz5qjLuHWz0210qVzXbm QNB{r;07*qoM6N<$f{!Mlh5!Hn delta 608 zcmV-m0-ycn1D*vTiBL{Q4GJ0x0000DNk~Le0001p0000R1Oos70U}}Q8j&GOe*zpy zL_t(IjqO#V(UT4MHD@_2L{(t01zH%O2}(JqR8=?4Ju}NYuw-`f263xD7BU{gfMMJ(!5?7br`q+<4U**%%~c!N}RNU zdnD?+*df+;*%ynLa?;=*h-M@Dk)cg>>k_S6xxb(qG2y^Yl7vo`+R7L`$?7(sN09_K zm{rl`!l-&I|8C{~0CdqLx=C-oG>taR#v*kqMK5=$(<3C21q)VYFyTJ;f9cas(TSnS zAag;NPl9QfPLd9qMtEG=qSREZ2Wvgz2GUrT6EkU|36-(i0CR%PY$FRIO^ffbfRnR^ zR@9f58bc-OhBmK;#{?&nn^a`IUW1!aJYPjPVNoW4xuvjdGU` zjBSqlgULC8Ss%x?b4A#4e`fyBl!1L%n-;dGJTcv3&0ASH8OAlPiby-Pd1iv6nO*4T0K+HoJ@7FbTW0B#68L uPK&2i&7C`-u?N>i)B_4ifre}+B7scGub8NlcO0000ViBL{Q4GJ0x0000DNk~Le0001p0000R1Oos70U}}Q8j&GPe;i3f zK~y-6?N!Zd)Ib#fC1xi{*KATKcp{sy6g{{H1@SZotFfiJ zAlQqCTs(NIAhMFn9_wvA2p&A_pAhV&cxm4x*=)OPv>q%7{vhvb-h1=rC2s_ zBJ6W+VEMp-pw`60KUfzn~g1;lNIkgie*(${0P#>NcQ9kpwrG zRng_bsCq2_Zsq>~bkQWbNpHS1jW*53B6TZ8FL$ZaBP5Xp3sz<@;Xe22f74FUiJ{3L zb3vC+f@zpek`9_icwE_{)KshoYdzuy(pZ)gGijm;m9g6ZbArumBMTx;i|?_3le30a z)S^bBh1b71=A*-RO%OdB&>(*?jmW8$Sj8|hpY9R znb7;0P@Bgo#Y-1$<+|s=e+e<&&UCpzLVJD<>u@e2N9yrsyEa+eN_ zZI1hc$vJ^pAIG+HMc8tGB_ZnmOkC>%KlHBJV-Q3WW>CmC5^q10FamXsiI~)-i@+K1 zVGf!c?=HH+Rb3A?oFo1ojahh2iHc{Lq%5g_f_$KhCRcnY3k7#z~}$~002ovPDHLkV1m&)ALRf5 delta 658 zcmV;D0&V@C1xJt`H=Jf?~6XU?FHwZ*dE8i$$)I6dov|q!6)liet@j z2OBsJ#A>TUY+MjUNV8xe*DZ+0m8q@nu(9;b%x;W1-CM;<{9tC@oB8I=oA+KOKmoDr z0~Z{&4Q+(xWFaUr%h?uggkTxbe=HJn7{jUHtYoEth7RDv)1adTG zhZmca8bunCZqs<&L{;dP(_yPF5ROSXy-F!FB?-Z@(6iHZPT#OKDU{(6x`WHcR=;&@96tv=zV5r1l9sx zPW7vJGLfu(H8veT=ToVP`sIaz&Efb};c@maV!pUS=?jUE>8P@YXd7xH9KpM}1l&^( zfwE+aTQiTju$KF7K0u|F#a2&W-zBmGocin;{VlcS)e5}?9?Z@5V$P>4%S%l%LczR+ s*Z2i`2dAuu-NH;Dx)0`DZ`z#r1}au?ttNmG82|tP07*qoM6N<$g8WM`;Q#;t diff --git a/docs/html/img51.png b/docs/html/img51.png index 418f2429a098774221a98ee03ee1aa4dc9a2593a..3d693307ea71dd0228d9f4c972efc5db0263385a 100644 GIT binary patch delta 658 zcmV;D0&V@-1xJt`H=Jf?~6XU?FHwZ*dE8i$$)I6dov|q!6)liet@j z2OBsJ#A>TUY+MjUNV8xe*DZ+0m8q@nu(9;b%x;W1-CM;<{9tC@oB8I=oA+KOKmoDr z0~Z{&4Q+(xWFaUr%h?uggkTxbe=HJn7{jUHtYoEth7RDv)1adTG zhZmca8bunCZqs<&L{;dP(_yPF5ROSXy-F!FB?-Z@(6iHZPT#OKDU{(6x`WHcR=;&@96tv=zV5r1l9sx zPW7vJGLfu(H8veT=ToVP`sIaz&Efb};c@maV!pUS=?jUE>8P@YXd7xH9KpM}1l&^( zfwE+aTQiTju$KF7K0u|F#a2&W-zBmGocin;{VlcS)e5}?9?Z@5V$P>4%S%l%LczR+ s*Z2i`2dAuu-NH;Dx)0`DZ`z#r1}au?ttNmG82|tP07*qoM6N<$f|LL;8~^|S delta 666 zcmV;L0%iTt1=$55iBL{Q4GJ0x0000DNk~Le0001#0000R1Oos70Uz^=e32nce^*IF zK~y-6?Nz^P)NmC4Bu#Qjb9YHWa48byz|qVujo7LOib0C4gA#~qNFm0(l z5Oi_K>UN^Y$t^e5?Hm*bhx`eVf)pp;H^1(hw%1ZSIQW6Q_rCA@dGGt)_XhzAaAWD& zS{v2aw6htrz%){Aw;i>LMov_Ue0K^OXP(vg5BcX?zs+e?5HSYu+3iny-(T*x7C zgI9iw;T+IXIyATtK_(R%$`_S%(xjQ!l);lupp@}oow3txYD8pOjiD(!nbYPq>t$%Y zUXMDBH171DaT(GlLG*nFOH$PADEA^gNZug(s|Nl>hzO3rQumzq?j&}Ne`Lp);P)i= z79W6ydD_M3qHbc4uyp!tM&gVNHFlI>tkP0$#7Er#0&`;)`qmU!6Vtt37d6Q%bDz&y zC2kF%ZupjjC}0S~WVxvlYLrz)AN<-X6}JWViml`;T!5^Ei}juInt z#)83y96eDbh+)F4;|bR}MQGhIO;kKgx8pIpna93`@R^4!&b3BTc@I9J7T_hEZ{kmi zf1UHYkhU#6%AVh8%s8nzv7KmJW204h(4F&v+(*Tk1N!muhXl*Z=n_rExM`Kz_IL#5~z)E|!cVk_Og%~$m9Y{(xT&YQzj zN@Kw$@dmhu_c#FceSFID?SjYSVoiK^P?qE157vx!6DUWg3jhEB07*qoM6N<$f@|0CU<#cHrq>p6j)?rplJxJal`>O{2MTiKFz*6^|_wFQie~o0vnBey$ z_ZA<3hI!h>=%Q|7kg#<6Y)0aY3^jI?V64(oZp26300MJk7W&o{SQFE|UKcgVD|4UE zStV`_pl+I7@CzDFb`onHxQ-Gd zbH;+fh8#UnC5U0dtm6sSIYnsQF-=rFOt<4PyP3znh47h&EY7t?Qh5(Pp%&mJoNwY! zihrH+yO6dmJj$NmY0NmOIkBB+TVtbDdC;Bnf!s&MndB2n7Ai%QaSHfO=F(#Z$sP7I z8IV}GO8*B~!&LN$@4~PuE|kXR?)Seqd-%$(2Ak=U@NfsuJbBG*JNiJx2tOw4CINenb-h{#G{ z*cjcY5&W;2(Nk=8>r%aj;u$Po0#(utG(IrC-Ojvw&6-1!zWVbU_cqE3&F6Z^!2W;Y b0d@wr=}N7it2jZbP0l+XkKGDJK; diff --git a/docs/html/img53.png b/docs/html/img53.png index 9849391fdf1f170a95fe48440f2d24130b790d62..15dbb2d12c354cb75dba2c9510da2e03b4d89b54 100644 GIT binary patch delta 215 zcmey*_=!=qGr-TCmrII^fq{Y7)59eQNJ|2-91Al817pn58FfI8!9-QndIJLk6%`c; z2?-t^9-!E($kX$H6k|z{UoeBivm0qZPJyS3V~E7mwt;*j3cxTn`!8|4%%?&fqp(sr7ReC&<+dp00i_ I>zopr05&K@b^rhX delta 228 zcmeyw_@7a=Gr-TCmrII^fq{Y7)59eQNQ(op91Al81EUkqinBnD?nG79dKDEF2?+@v z9v+~;w%vA}K#H*>$S;_|;n|HeAg968#W6%;YH|V)uqQFIaRekJ6eKh-?qlQl`|hsw z4hf&IDU6I0o-Rx{$Y^l1L(fkpp^{;vr6YsSMnhu*X3e;?G=-xx4;*lrqxs(90prDK zo2m>m4p{Pq@^}jd_0KRf`@rOULhMZDcfJPi7gAdcKSyrFbulVGl5+y_2JIR*x= X0woXe>I+MOj$!b0^>bP0l+XkKz`;in diff --git a/docs/html/img54.png b/docs/html/img54.png index be49db315280685d26cb3cf659d7f463320ff0cd..9849391fdf1f170a95fe48440f2d24130b790d62 100644 GIT binary patch delta 228 zcmcb|^q*0+Gr-TCmrII^fq{Y7)59eQNQ(op91Al81EUkqinBnD?nG79dKDEF2?+@v z9v+~;w%vA}K#H*>$S;_|;n|HeAg968#W6%;YH|V)uqQFIaRekJ6eKh-?qlQl`|hsw z4hf&IDU6I0o-Rx{$Y^l1L(fkpp^{;vr6YsSMnhu*X3e;?G=-xx4;*lrqxs(90prDK zo2m>m4p{Pq@^}jd_0KRf`@rOULhMZDcfJPi7gAdcKSyrFbulVGl5+y_2JIR*x= X0woXe>I+MOj$!b0^>bP0l+XkKuhd5W delta 324 zcmey*c#lc7Gr-TCmrII^fq{Y7)59eQNb3Tz91Al81EcNTT{b|D!9-QndIJLk6%`c; z2?-t^9-!E($kX$H6k|z{UoeBivm0qZ&K*w|#}JK)$q5Y2EDC9f4UA@Nj25#WiZUPO z7kJAM*veX9VzglkQ>me`L4lFMht0VUQZo_~9;Brv6dzc}$gA?9`2=^uB=JWK9e-^d z%s(1_vHl>K%2RjXt|8--`YWQ+2d0@c=p;U1*eu_0l35{ggI8V0Vu>Y84oYhnd35v} z{$(Xb96Z1>t#QH|#*hM$n+?T`%+J|0X1_FMzAUa09pBidu7k-}m9FJep#acs&; U`#Tl%fj(vMboFyt=akR{09D>?V*mgE diff --git a/docs/html/img55.png b/docs/html/img55.png index 6ea93c9e158c5b49d2460e2259b2599b6866a440..be49db315280685d26cb3cf659d7f463320ff0cd 100644 GIT binary patch delta 285 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 diff --git a/docs/html/img57.png b/docs/html/img57.png index 7ea61bee7a7d9343f7c2a2462d3ee8f3c564dc56..9a8263accd7d88e1fd66ac64ea37b8259211d145 100644 GIT binary patch literal 3612 zcmV+%4&(8OP)RHR400001 zbW%=J06^y0W&i*Unn^@KRCt{2Tz#w@RTcm3?C$LB+fS21AR+BiYf?e%hC+fGVMt#; zumTH|QiRw+UJJ$|8+{TH(P`7dytb6pR8l0y#fS;UKc0M;#+R5CHNM1XHUyg{nm9nf zCi=&=RxSSJx%bZZ&g{&-eGgylp5)Ekx%b?A&OP_s-#vHc?gIvpMt?ghm?$Dcsk)P& zcUiJ7XJdjc)ma}Wl&CfbaMpdCN(EBa%c;3_Bym%zwv~HzL|5t_&LUN;MsiktoFx<@ z_#ASiXOQVcvUuB+_D6CirLvn$0bLaxpE1LT?5#8I5Vk;Te~Dm&k4>pFw{Y1qVQlp( zdV|%9qf#(qI<5v2N_tI%l~n@I5o`;jd|ovwVs;2ON{Rg0T$%0W_cI_ajNXZxnpT3XTBll;Vxtz}I%2(w|Wp`+iA*^H_uYRqy#9X0-7 z`g$t!o+7UT84sE?bgKnhgV4=9H$-diAL$`^Iba1jd&|kVS-8(b6`rM3Z)CS~ zaMqj(3M|zsHhE<@FzY96Bu(WEdUI=aW?SLowpOL0!ma&t9H8rKRadLJxre8+%wKNk zg==MLoPhN3%G_3RP%GP3=+nxw6<%E&t-chkmAhd2waV*g7SPlX9KnJjH41o)^&?cP z^+}Z?dbBSmKY`vVMYsHlAeC0PHWQww1xzS%4gF<)g8Kx^rnRl!9_j~i9i{w+HiY<4 z3bPfhI+DRGAO*A%%TWoE64a`|AhoDe^u^ICj4Z80+a`iq(UQcx=Vrn}zg7wgGzl|u zbrEzp)R)6YkenuMFAu>H6pMPj<{d${a3U`a0rW%Cga|*~WhQ7V)T#lkO2Sq{Ek73= zB@GwL6!O+Olu&x;6`gENw^Q6RQJR~ZWA|=F<=`fYC5B5a$cCY%V9HkT5)!V24H83L zGohBtgGw|-x)p1p81yKNOq1D~Q+>9Qv6q|6vPhFR0^{U9sFexDQxc$>n>4GIjM@s)SVW>*41;WChr-HJ6!}A) z?TFmLwkk`OjH(kw{7)!v%t|MpK%RGumhXe^vL$U|*Nkr%l?~L}3R;(18>7u+j3QDS zL{zf7a|QJ=!(GMRMfWOL4U?}Wx|PN5T1})iiF)6d4b`m{l1G@OhjTAI<&8GB&ixF` zuar~ILpo{LMUl2L#e^lll5sylb!zWmTd^21rHV)9S9!8?oUQu(O3?DKRY%8>gHAw| z+GHi7ZIxR;3r((LdxIm%9W9G>psj?J!E2~>!5U{Pm^E>acEM3;<)vyYkADuX*a~Id zRc4KbxH$+G!*#IYV>~JEk=m_@IhZ-%%)tp{8?xmqGHQ(^2FTfvra_5)n>Zx>YEwK9 zBiFBvcDP?%W$1QUl&ws6(PVy=$0dVpwH}J<@hh1EtWKP*d~YVEJo|?wu+^B(b6Ua$ zzeE72^>kxDrQ5FKHOA)UfVpu)h!|_bX-S;aN76PxMy$;Te@}whDabB_VU}fK!y!!rMhF zT~nZ4B-1+B1gybf>x0;)f1d9IY^RZ1)z#41_KZ*I^xMRCDRM^}yoS7Yu;Z*SWRe{3Ru6rt`S+f$+ zesz^nL${3Vv_O?B+JbekUx}ByR(e*j4)!bFXqT&#g(+AE`W0@`aX33ADsQ$~llqku z1#RaAOl>Y@Yd$)M;e623u8|5s% z!+cY!lbpCb)LP4$()yVpYor_l$B=_p%B0Hi>hK{4(4+i{;}yXJ4J*T|)y`+j2)}ah ziV@)zbDP0_)kXlXdN5=B3SVh^@ah0s3I_Yt>vZ$rRZTh8iuEhq`>@MbbUymkn8q}w zrKY6EL6VXDePiZ%x^JB$(i{oOFN}lV>gP^v+daI97iqT%hR27IsW}pGLS)-yZ8V$s zXi&qO@QCveJmvkwP4yJgXCS}L)%&NfVpn9}`N+muS3>rKFSfC*E$J?!dO|vFr*mz; zfWs6XX_&Bcm5#TtBpONM3*J8DfLAiP_Jrp=NJ*V=LP*$#w24aXBi_#LdOC9Fblv2(2eq}o-v|Cy!T5vWDckaQQmkAB&a$kTc89PB$U-B##6g*)GoDk6cLRG%#M0pFU~iRo@nVR#T(n6WRzyE8rTN*TlE$JO zm&8=aK{EXsE)hi3&4^0$QZ=(yxCCJP| z$}ZM~2a>WXuJ<>(P+UUh$UI%&0$$xcU3VqOlbcn4qa)!Gq1(oQezzxYbWDpw8N+Z7 zK`#ldA@FF#vn3#!yVtA0yO3ytNH5_yJ}e3Zc&w{qo!VC^-5BC`YA5(EE7wK#Ec>FE zJ#8Ofo6y*mqM4l@3D$e2+r;n8iSD~aLST+Jh!O(n56fN zXPJOzL4U_1K|`r}doM-cq0HtwHgoPz44~(n&nW~v=TruvI8wzo?A)CJHSFr^*k!Hp zlws`ShxAsd6B_GB87tk<3j7S~RdyJY4Z|l$$X{XY91$i|TnFIza72W1u050Xu8P9UR z&Yt!cf6q9$m)#kx>}-sHOJ(~bY7p}50F7WJb!rq`VvxtmCVB6l>mA7miCVFy&c+Vi+gcx|GsTR=uq*9G4tm z`t3Tg^AUZ>HL0Gj)zNUt2TWYT#lcob#HD^<(vr72ro|z7c8J6I3!-9UkzRm@?Bm2X z^wY@cR9@Cb-N;4l<1+IfxJ3g;#z7mok@s=H-;9H70!IZ*Bk$voGp$5Kz%_R9}6=B17qppY%d^3Yoe-ry^W2Hfq{XF ziV6=84^Zs4ko{vI#aI&L7tG-B>_!@puZGu+aK?j43Wr-7cQ-0B>WFDGOufTs{F|xe+KZcvL5vJ9 Yl(;H46`kw@8q476>gU3;&MBb@0GP@!e*gdg diff --git a/docs/html/img58.png b/docs/html/img58.png index 09e8cb6ccb3e5119c7d4be4cb0c2a180a8840952..7ea61bee7a7d9343f7c2a2462d3ee8f3c564dc56 100644 GIT binary patch delta 178 zcmaFDc$`tSGr-TCmrII^fq{Y7)59eQNb>_R9}6=B17qppY%d^3Yoe-ry^W2Hfq{XF ziV6=84^Zs4ko{vI#aI&L7tG-B>_!@puZGu+aK?j43Wr-7cQ-0B>WFDGOufTs{F|xe+KZcvL5vJ9 Yl(;H46`kw@8q476>gU3;&MBb@0JtwOtN;K2 delta 207 zcmX@k_=HilGr-TCmrII^fq{Y7)59eQNDBcm9}6=B1LN|~i6D-_L{<5E4-XF;8yf=y z0~Hk&2?+@v9v+~~tH{&yfD~g%kY6x^!?PP{Ku(gUi(?4K%;W@z1~!FfZ3a6fcl?mF zcxZHn>5s#t`HoGDq6LON4Bf>Ho_=iM3YkYfFnH)Ch&u$|tX-U}?$V>*(D>4LM(F7S z2YxW0sXBJxz(;{23HuKy9=O09bo|ox#mSNr*cf&?@-ymB*0~6@j=|H_&t;ucLK6V3 C<3gPP diff --git a/docs/html/img59.png b/docs/html/img59.png index 4e8a4e168069c7f4f76ebe528c2f750f87ce51b4..09e8cb6ccb3e5119c7d4be4cb0c2a180a8840952 100644 GIT binary patch delta 162 zcmZ3*{De`lGr-TCmrII^fq{Y7)59eQNDBcm9}6=B1LN|~i9!<5(Bze*q{- zL_t(2kz-&012#T}h6V_eL5Y_E!h8TCHZU;o?_h9L0W#eg&;Sb)gm&Qh$Z(gVgMkCc zPSE2(SB41!7&sw}53C?7E--O1DKx0CK@3%3B5VK(U{+YbzzbnEAS^$?05wm58AyDX z+Q<;hpkNrl;L*{+zzvp3FnCbFf6vbFVF8%O&yWBl*%&5#W7cQ*@C+=*%P2siTOgni zOfvN=AcQ#XH8J!}L02dbGCvbpHh#D5_i2wiq07*qo IM6N<$f;A3@oB#j- diff --git a/docs/html/img60.png b/docs/html/img60.png index b5b74989d946386515ba4ce2cc265bdaaf733221..4e8a4e168069c7f4f76ebe528c2f750f87ce51b4 100644 GIT binary patch delta 362 zcmV-w0hRuw2C4%giBL{Q4GJ0x0000DNk~Le0000?0000E1Oos70RS%7>5(Bze*q{- zL_t(2kz-&012#T}h6V_eL5Y_E!h8TCHZU;o?_h9L0W#eg&;Sb)gm&Qh$Z(gVgMkCc zPSE2(SB41!7&sw}53C?7E--O1DKx0CK@3%3B5VK(U{+YbzzbnEAS^$?05wm58AyDX z+Q<;hpkNrl;L*{+zzvp3FnCbFf6vbFVF8%O&yWBl*%&5#W7cQ*@C+=*%P2siTOgni zOfvN=AcQ#XH8J!}L02dbGCvbpHh#D5_i2wiq07*qo IM6N<$g5ivZVE_OC delta 743 zcmV7!bQ4)j4THCv?X$8kk9L=W3PSZuy3u{s6wlqrY zB_nk^YXvfPMuVMwB1VlWRkOBnRK@YJQ|@WAcuj+o?Ls|H&A+2Elq2;Df7tJE0Xwth zZC-JHj|$sd&mO-g?j;3fmx1(q_tF&uG;{Zrg}$}aSTRXi(+tL}f;O8DUw_WBiN+P3 zlnLn`gQl^_Oyk8i)j8A1BN>{G_!~uRn?=iOP@V0pSFjm(NJ(WpH6uDQd0DPjN~O5- zs%mwAk`kiaC$X-W&GO~kf1Q`Q@A8y`%yDRl=)1%3<^caKuEvoSlOEcl#o69 zx1+@oN_ny1aAv4(A4dw3fAGfvB`b`RqZ3lCf$4_mCl;1*E5yX&6BO3&)>J!*d1W}} z7ZmCzE_$E~uQ5Gqg{sBle`ReTW)DPn%5B=l zb^N(uwjfV%O$6sXrb4MJ)QQZfk;qbS8Z|kvH(B{+@v3~kCWD{G>;f;aEEx{I%H~=8 z;!-)7a&0BBG`r#owU9yb@4PY9^U~^rRm|M}4(eiZy$L+*PqY5p$1|XVcdq2uK`uPP z%7!bQ4)j4THCv?X$8kk9L=W3PSZuy3u{s6wlqrY zB_nk^YXvfPMuVMwB1VlWRkOBnRK@YJQ|@WAcuj+o?Ls|H&A+2Elq2;Df7tJE0Xwth zZC-JHj|$sd&mO-g?j;3fmx1(q_tF&uG;{Zrg}$}aSTRXi(+tL}f;O8DUw_WBiN+P3 zlnLn`gQl^_Oyk8i)j8A1BN>{G_!~uRn?=iOP@V0pSFjm(NJ(WpH6uDQd0DPjN~O5- zs%mwAk`kiaC$X-W&GO~kf1Q`Q@A8y`%yDRl=)1%3<^caKuEvoSlOEcl#o69 zx1+@oN_ny1aAv4(A4dw3fAGfvB`b`RqZ3lCf$4_mCl;1*E5yX&6BO3&)>J!*d1W}} z7ZmCzE_$E~uQ5Gqg{sBle`ReTW)DPn%5B=l zb^N(uwjfV%O$6sXrb4MJ)QQZfk;qbS8Z|kvH(B{+@v3~kCWD{G>;f;aEEx{I%H~=8 z;!-)7a&0BBG`r#owU9yb@4PY9^U~^rRm|M}4(eiZy$L+*PqY5p$1|XVcdq2uK`uPP z%2}@iBY=F^3;WZHWM-2@be`MCe3D zh$u6|43L0i0ZfX!fx%x4D$4YMF9}2?!sPsc$N?f6?Y7hr#SYdMSLqN8QFH(RX!Iec T2}@iBY=F^3;WZHWM-2@be`MCe3D zh$u6|43L0i0ZfX!fx%x4D$4YMF9}2?!sPsc$N?f6?Y7hr#SYdMSLqN8QFH(RX!Iec T#`H0v1#1_Oo;EGjSoKZ66%g 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 diff --git a/docs/html/img66.png b/docs/html/img66.png index 5c11fa45d6edb57e0286eda3595e6be280c839f7..9b5e36ea41b3b0224a7073f8fbc76179b79de253 100644 GIT binary patch delta 299 zcmV+`0o4Ba0qg=HiBL{Q4GJ0x0000DNk~Le0000t0000R1Oos70bQIru8|>3f9gp@ zK~yM_V_<*-)&>R#5XFE58W^$#7%%}J14A^BVlODbB8dPzKn&6zz~BS1VZ$eg#09+C z@PH3M7lHLNp5DE?frEkJ0VlHbf&_96rU(=>8zAvm9e~bcU`W`0zh{^V`pFh1s*4Ze;AKK0FrKDRHHxB-0`#l8XdC~aLLU9rioQhc4|um z$oCvDIo=IGqMsqO%yk0;Gs6s!kR&{j^#hG${K3qS4dO6;U;76Cb+Syvbo x7^2;lI-=Uyy5fd{0C!lrGj=EK>LJ2U03H-8EqI1{O#lD@07*qoM6N<$0fL+cY{UQn delta 183 zcmaFE^pjDsGr-TCmrII^fq{Y7)59eQNDBh791Al81EastjjoA`KK13EE{-7*QERLtqy>Rkj)j?lfze;+M%P3|pZao77sn8ZsmTcr zjQkQ74k7H!%=`IQ`7krPa2;`Aw&6ME@QK-3c|yv2fddoVS#{<*Brye89%fQFxR60* z2J6knU0P;MOX`I#^l_JP8?0e5ekIz_$8I_4tMr5q{tQAg4yPsZ8d8^ccKkXJbK-0O jLu%n4h09?Q3=Eb_M3&cm@8t~yx`@Hk)z4*}Q$iB}9x^%V delta 191 zcmV;w06_ow0f7P`iBL{Q4GJ0x0000DNk~Le0000M0000U1Oos70jFf7?1&H0|Ns;kY?rp5^M$x*Z>zp1B3zrrV|Xz4Oo?7 zfc#DYuoVm+K$H>0bf~L7Ft7qm;kd-`AOXxT2_Vi)f}oaxVK$8YjDg`al*#_1W2OL< t&4&~ObwJF~;0fpRGaPcDl1oql6#&P+6PZ>Fw!r`Z002ovPDHLkV1kE1L5KhV diff --git a/docs/html/img68.png b/docs/html/img68.png index 5060d61f08248526902472fe02a0f8600a626462..d9049fe704d41c1f37c452ace8a94815bb1f1699 100644 GIT binary patch delta 191 zcmV;w06_nX0)YY{iBL{Q4GJ0x0000DNk~Le0000M0000U1Oos70jFf7?1&H0|Ns;kY?rp5^M$x*Z>zp1B3zrrV|Xz4Oo?7 zfc#DYuoVm+K$H>0bf~L7Ft7qm;kd-`AOXxT2_Vi)f}oaxVK$8YjDg`al*#_1W2OL< t&4&~ObwJF~;0fpRGaPcDl1oql6#&P+6PZ>Fw!r`Z002ovPDHLkV1hO6K^p)7 delta 201 zcmZo<>Sj{x4DfU3<&xrJU|`_&^l%9R($YXI!otkJ!1!}@w(3MhpZZQu7sn8ZsmTdI zkmSIe_kxMX=MJ}o#E-xh8!Lw=OnGSnM{iza5PQ;g;%_^H$X8iefyp}}9A8PQeQ2uq z!^3{V!6bh=LqwS9stTr6Uj-i9C0KBCscrOs(6V7ye90P-ga^S5ULVv93ThHow5&Xx znsCC{pfZo)={*O-7T%*3^3(PS@5pJc=6|Kdu=kVR*+1+r4*=cB;OXk;vd$@?2>{HM BN;d!i diff --git a/docs/html/img69.png b/docs/html/img69.png index 432763a50ca253fbfbd1258e67b2abe468596e90..5060d61f08248526902472fe02a0f8600a626462 100644 GIT binary patch delta 201 zcmZo=>Sj{x4DfU3<&xrJU|`_&^l%9R($YXI!otkJ!1!}@w(3MhpZZQu7sn8ZsmTdI zkmSIe_kxMX=MJ}o#E-xh8!Lw=OnGSnM{iza5PQ;g;%_^H$X8iefyp}}9A8PQeQ2uq z!^3{V!6bh=LqwS9stTr6Uj-i9C0KBCscrOs(6V7ye90P-ga^S5ULVv93ThHow5&Xx znsCC{pfZo)={*O-7T%*3^3(PS@5pJc=6|Kdu=kVR*+1+r4*=cB;OXk;vd$@?2>{Qz BN;?1m delta 195 zcmV;!06hPT0)+x0iBL{Q4GJ0x0000DNk~Le0000Q0000K1Oos70TyWh8<8PQe}hRx zK~xx(V_-l6JPg=CDFYwF1O|2_k&X@^!Ok#&55(c`6aWhrK;-^|!3Sgmm^zxkG#e*~ zIauna1`l7XS0f%yW2!~BVX x?J<-06bO%N0kQ%121p!@vrX8o8G*S13IGR;FU!i&S6~1D002ovPDHLkV1h7fMjZeE diff --git a/docs/html/img70.png b/docs/html/img70.png index 0f133fbf4ec185a35b384d2f95a7d129632b89b5..432763a50ca253fbfbd1258e67b2abe468596e90 100644 GIT binary patch delta 195 zcmV;!06hQC0)+x0iBL{Q4GJ0x0000DNk~Le0000Q0000K1Oos70TyWh8<8PQe}hRx zK~xx(V_-l6JPg=CDFYwF1O|2_k&X@^!Ok#&55(c`6aWhrK;-^|!3Sgmm^zxkG#e*~ zIauna1`l7XS0f%yW2!~BVX x?J<-06bO%N0kQ%121p!@vrX8o8G*S13IGR;FU!i&S6~1D002ovPDHLkV1i^fMqvN| delta 269 zcmV+o0rLKZ0?z^=iBL{Q4GJ0x0000DNk~Le0000j0000Z1Oos70fjlPPmv)^f6Ylm zK~yM_V_*ORHii!j3_J{Ipn#zPT?h;=U=@XenLy0XkN_lkAp$&n7WmX-0*)6885sJy z1ehQ$OJ-n5U^9Nq05+E)9OP1%!c@`>CJitZOkiN(?f?=yIvE}?fc(<{^g9Q`1TY&Y za)FPf0OSmi>IR6W1O|=Q8q@#)!15`d TbHb|j00000NkvXXu0mjfXRlZH diff --git a/docs/html/img71.png b/docs/html/img71.png index e344cde87c47a860e555731c665b094de5ad934e..0f133fbf4ec185a35b384d2f95a7d129632b89b5 100644 GIT binary patch delta 270 zcmV+p0rCEb2G0T^iBL{Q4GJ0x0000DNk~Le0000j0000Z1Oos70fjlPPmv)@e*n!% zL_t(2kz-&00yc&Z3=BLBXrO?h0bK|TE?^aff|)?f&yWBlc_9Kkd=~iBV*-vB3mF*t zx&)XYE=y)$NMJL5%m6l*AspmVn8H-j3?>aQ6-;1Y;O+ntJ31L2Fo68i0Q5Tt!vruJ zC~|?1r2ym%km?4ArUV9#1~v$jWaR||^9H{Lm~m_iY3W#UfJaA12Nq!_2d)HG2$ORG z1Lp<=!xpAQUx9&V1A?&(CO)^Ls}Yp}G4U%p18O|TjCPI!s3oZ210OS~9vajD0KoDo UpL4>h_5c6?07*qoM6N<$f_3p%{r~^~ delta 715 zcmV;+0yO>40*D47iBL{Q4GJ0x0000DNk~Le0001{0000U1Oos70V6m_%8?;Ue*%U{ zL_t(YiS1NPXcIvc{&shEvPqLnJXm{BvS=?Bq`_Jh6pe0ZrP{i=lpb2#gT)jT_Rto+ zO`(MKAO>oSc#0RV?m@+4K)f$DLXWj4y=|+Nf`z!dO?CSd<3&a3cbGTtz3+Q7^JZs( z5X7D#MKWM07dCtqKSvM7kU{K}e_REUO}KTix>;h+%nT~tRN>V2O!vsI6=(`KG*|0Z zK3%v*Fip7*oFHw`Vfb0D5*KXY0W6NLb!LW?u{M7!`vVQf{~QutYkaG0Pw>#3m?g^W z3>RCX6fh$)_VsTFh~utCWl!Di=uX*>Tz@jlM;~^N%3_Yy=IAifXfB{if0oos^0iNc zdI3ef_M6Z3w^3{mkL?U)>fPtt;#;mnF7pZAZMT}1FbTTW5$zb1v>-!zQDho~8*~=a zL5=cwNiS8LMKf^#ush=CnRq;)N5KX$wf{T^HTj%!olhIHk zcIm_({t+w%MOG4YG)XX7HE> zAa^3&8aJ8R2k+NQEFWIN{EQVivCK%S->>Y6@&iJ}+swUs(U+JuHp_Ba28RH z54n_|c?3L#g)6vvGJBy;BXhwuk>8-vG;!mKryiowfh~002ovPDHLkV1mE%OWptg diff --git a/docs/html/img72.png b/docs/html/img72.png index 18a82590a741663740bb43d788ca5595fe85e6e6..e344cde87c47a860e555731c665b094de5ad934e 100644 GIT binary patch literal 776 zcmV+j1NZ!iP)RHR400001 zbW%=J06^y0W&i*JhDk(0R7i>KR843TK@|RWcXqN#lT18Vdr-1yFBYW1S``$HZfK?2 zy1A4dTHJ%h6czT+7QIcOg!Lc>YKwS^7q9L?#bZFcFE&DtwI{u8tCfO+hd=)=O55|x|?37#ul1;dEu)0}d&&&)e-c;e# z_DuK4uN7ztH#Ar4Rz6+0Mleme4xAuu&|&ylt`Zk);Q=g;u61UHl(9B{Ec*iu$NwA> zUTb`-Y)|meoR}rb>)#m6h z(`YWBN|w}1^0iNcdI3ef_M6Z3w^3{mkL?U)>fPtt;#;mnF7pZAZMT}1FbTTW5$zb1 zv>-!zQDho~8*~=aL5=cwNiS8LMKf^#ush=CnRq;)NBJuX5iAAcnN3%+oABjI(~^-=VBT!{alMJ45h2%!G3lgDoMWl9 z8qdZJvWSCb@R$Z5cOu;yH<{W8@7GH#A6~-zj1@Ss%t)%=uk4BP146~y%)NTimzYOF zRo<@R4i<10QH~F}l%IJ7JcWfTxO(J^w)H?{1-HJUiu<1DixeB#1ou|jfJ<%TCWb{< zS~jY}yDlc^FCeRaWAKw7Wl9n1bnVq%(0000# z7)yfuf*Bm1-ADs+WIbIRLpWw8Z?Hdb;oN}_<{6BKpMBcB`MZIM!2t$_x-9k(d%vgB PK!psRu6{1-oD!M<>NX>3 diff --git a/docs/html/img73.png b/docs/html/img73.png index b9c750c26417319f9075254c69af329d52379163..18a82590a741663740bb43d788ca5595fe85e6e6 100644 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^K0wUG$jrdNxSwanBOr$@z$e6Y^XAPA{S0@T&MN># z7)yfuf*Bm1-ADs+WIbIRLpWw8Z?Hdb;oN}_<{6BKpMBcB`MZIM!2t$_x-9k(d%vgB PK!psRu6{1-oD!M<>NX>3 literal 5395 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 fcNvu@bPt5E=#*moUfyT=k41oZCJg;gU=Mba diff --git a/docs/html/img74.png b/docs/html/img74.png index 29f556d6b00b0c7f378e364c114f12d12a0e1df3..b9c750c26417319f9075254c69af329d52379163 100644 GIT binary patch literal 5395 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 fcNvu@bPt5E=#*moUfyT=k41oZCJg;gU=Mba literal 793 zcmV+!1LpjRP)RHR400001 zbW%=J06^y0W&i*Jmq|oHR7i>KRn2SEKotLF^RctLO_S}#!djYzRm6(KgL)FuVoM7` zQ!E(iB|_`RrKGS_yp3gxUMedp6nfc<_Z&oo1zAB)UKa5W2tBCBi0etE&Sbx<>0#A_ z;t%HIO@8mq%glT8fHTsLU4a_vg|RSD-%}kSzUI!=9rm|^n^?`e{uR@L=fnQJZVU>& zJLMkn({lS6cAEDj*+V7J(kT_+WCI#7QLR2j0d$Jmn#D#9<$_jcG}hQ>Iezm*&s_Y~ zKlyjjO^@in$d8BRH{+eKL}{bKnhIq0F)LBr(Imf|7Hp`hloG}?BuNlO0P?OE7_~IX zyCGnm%9d+zpYsm|MJLh`ElS?k)vAwB#b?knX2`Y{5KeIiEY38n4S5K8441uT2n0DX z=Z<8hKvyJU1a;fQyQB!S>1qtR?hjcMuZ(!6&=bj4JncXJLR|29fBe&dq*bbX=n;kc zEwz3WTVuxHJvpGBFbtzxQ{);Z+G_nE7E8#|4LHEnS$n*=&UY_9nB$ptw8I*m@s#CF z+yU_*E?;DF@!q!a1YGTy<6?c9n_ek7Tuo%2Kf^8f*a8}NG0wNZTW;rs*|wOWqEm-9 zS;rXgM%-Ysy#!Wpm|BLSv4y10)wUV8#@D5f*p*$gfs`L&hnrCR=tb!~F!Suiwy;AM zjLi`#jAXnN*sc@V$Rq$R=x&eLeCYqM0G!|3#FoON_&K;}uvEN_ zWs6=aD=HLv*^BoaM1%!dK~G*5@ec?+sK=HpF%@6F51d-H%e ztg)tpKn9G?q8CHfcY#z*0BD<1e~vYbB!aFWwI_-Y4TAi_7c^vZSW3m47zC1!;kI|D zsf>(Wfg0+Cu`p2IQyn3`=FZg}_P2tYSk1fs71M&}!~VT)3<|wFviV*4Sq`e)B}nT>RBP`FGJxe~;+E$d8BR zH{+eKL}{bKnhIq0F)LBr(Imf|7Hp`hloG}?BuNlO0P?OE7_~IXyCGnm%9d+zpYsm| zMJLh`ElS?k)vAwB#b?knX2`Y{5KeIiEY38n4S5K8441uT2n0DX=Z<8hKvyJU1a;fQ zyQB!S>1qtR?hjcMuZ(!6f6x=jRy^%L{z6>vd4K%VfuvQceCQE{`z^J86kB7);5|8@ zo-hofTT|p3CfaKKAQnr=(hWGk)meMIxXyPkKA7W~cC^D9o$-|AP22(TATD2Ia`E1_ z@dRA$nB!u7nwwrJIb2O-oPdi81P2iV6wdg zR&bbFhN7{Bq|Vj08MnsQrH|N^U9*9dA7Y1_Q2gjc={zv=?8UaQLl%t95h;vhycF3X zFtvFQztN;6!UWFKXsc_pRGh=;^lhAVbZu|%^5Vn($|jd)gp#8xm$2gD`n1JlJX*j_ zFg0a!gQ+euwJ$S|GABW7$P_2d!#V~5zlZ%utsy;-u@(;fY%%diYWH^o+LL-JP;hbp O0000t;GYn{V6XwmX%$E?DR7nlzpa=A!|(v0D;K~yKnoh6%+>%0(S|Pu4B_4& zho~}4aA^3z016U*b{-Xm3qWLKqRjNPXNC- z<3ol@h6^kp3y$kE1c6QR!RnL_j|6J?h{gZ_q609=&poao00000NkvXX1g=70f_rLh A7XSbN diff --git a/docs/html/img76.png b/docs/html/img76.png index ab90c16de116c20644aba9250d409679cee05b52..5fd95a8c1dcfbcccd9eb264149a74430d9393676 100644 GIT binary patch delta 302 zcmV+}0nz^P1MUJLiBL{Q4GJ0x0000DNk~Le0000k0000U1Oos70oLjPKan9ze*o-B zL_t(2kz-&00(M3=24o=PfyCipPymvwQ$PG+aA3d=SQtJ4Nj8S!0@eVq4j|~np%xo( zfa(E)0}l>t;GYn{V6XwmX%$E?DR7nlzpa=A!|(v0D;K~yKnoh6%+>%0(S|Pu4B_4& zho~}4aA^3z016U*b{-Xm3qWLKqRjNPXNC- z<3ol@h6^kp3y$kE1c6QR!RnL_j|6J?h{gZ_q609=&poao00000NkvXX1g=70g5R@k AYybcN delta 434 zcmV;j0Zsny0`UVOiBL{Q4GJ0x0000DNk~Le000160000U1Oos70mh0?S@oH-m&{Yi%t_Go_kfDQP9I7H%BU0$tP2CRcAPVB(2Po)n zT%3!OV+y*b-{6ocIMrNQV~J@gh=brmxIe!tuSTwJM}EibUp`M zQa=K2pI2KCj2Dew_a;0m;mr``rcC zK|88&7L0kzr|l3_G;d1U71ZiGMD*=e=9CO7FrM;LY0u*>TQaT44nJFp@|7Fov(1iw c{jW$LtNBuInl*sl000002uVdwM6N<$f>pV_#Q*>R diff --git a/docs/html/img77.png b/docs/html/img77.png index c4b1412a5f4794f23aa87c1c2bed9878babdaa10..ab90c16de116c20644aba9250d409679cee05b52 100644 GIT binary patch delta 434 zcmV;j0ZsnJ0`UVOiBL{Q4GJ0x0000DNk~Le000160000U1Oos70mh0?S@oH-m&{Yi%t_Go_kfDQP9I7H%BU0$tP2CRcAPVB(2Po)n zT%3!OV+y*b-{6ocIMrNQV~J@gh=brmxIe!tuSTwJM}EibUp`M zQa=K2pI2KCj2Dew_a;0m;mr``rcC zK|88&7L0kzr|l3_G;d1U71ZiGMD*=e=9CO7FrM;LY0u*>TQaT44nJFp@|7Fov(1iw c{jW$LtNBuInl*sl000002uVdwM6N<$f)F>ooB#j- delta 260 zcmV+f0sH>(1H}R%iBL{Q4GJ0x0000DNk~Le0000h0000U1Oos70WibLdyyeae*nWt zL_t(2kz-&0g9IREWPpJm0dOV*7ldN@;lSX)fFCp@umUv-fK)>SI0i(hUBrj1L(va|bY(06E9?8G_g?v0HY)fh?!f6#xJ^BO=iV_+Y;P0000< KMNUMnLSTY!PhoTb diff --git a/docs/html/img78.png b/docs/html/img78.png index f30e3ea6f99e5ebce12bc102cd26d73786deef1c..c4b1412a5f4794f23aa87c1c2bed9878babdaa10 100644 GIT binary patch delta 259 zcmV+e0sQ{z0>uI$iBL{Q4GJ0x0000DNk~Le0000h0000U1Oos70WibLdyyebf5S;c zK~yM_V_*P-1R!Q)fPo(Ya3%v6gkt&Oz~I1uA2cMe0yPSNR6_(f321=mLSir2z;dC0 z!C(W(H36v#t^WVF6>|_{2yVdi0lQs{3aSYu3Jl@iKsE zK~xx(V_*OQo;Pe@nqj)49+2c_U|?ooU^Nhv<`ZB*0uB(0oe@ZE-k_ks%76td2mp}> zfVhE|;VVPK6M+v54cHW-0EZ1A5==0#GAsa5KywN@8D$t04m4c&!oa}Gz`>%y%Fx2( zzzK4pD-WY~LO`HEz5s4R5rFLlenTD(M?7HQgR?sz{!0mBNb?BbC}3!3V4Uv8z}S+W z@dKor;{rorF9X9DSq8=n409RN8Fnz3vV+~s?*J5L;M~wE#1W_fbS%pUV4yk}0A(0k uLLDSr8yQjy*uoh!T$~spToO3L7#IMLH!m}UDOSq>0000 zK~xx(V_*OQo;Pe@nqj)49+2c_U|?ooU^Nhv<`ZB*0uB(0oe@ZE-k_ks%76td2mp}> zfVhE|;VVPK6M+v54cHW-0EZ1A5==0#GAsa5KywN@8D$t04m4c&!oa}Gz`>%y%Fx2( zzzK4pD-WY~LO`HEz5s4R5rFLlenTD(M?7HQgR?sz{!0mBNb?BbC}3!3V4Uv8z}S+W z@dKor;{rorF9X9DSq8=n409RN8Fnz3vV+~s?*J5L;M~wE#1W_fbS%pUV4yk}0A(0k uLLDSr8yQjy*uoh!T$~spToO3L7#IMLH!m}UDOSq>00000$Kn9E`JSG_9KM;IClHd+t_|Fi*umGey!2wAEq>uqC;0F9F2m&#PyP$!AZ$jw-Hii#i#~J|rR{&PW$WTF|$^W5%T$eGHO!f?b zFjW>XOa@ZS3|D{w0Ctc10@ec{L7Hs?6JsS<4Zi{}NOfe$lmKA3GQI=KrOtsH*5Uw) lsxGFD0$Kn9E`JSG_9KM;IClHd+t_|Fi*umGey!2wAEq>uqC;0F9F2m&#PyP$!AZ$jw-Hii#i#~J|rR{&PW$WTF|$^W5%T$eGHO!f?b zFjW>XOa@ZS3|D{w0Ctc10@ec{L7Hs?6JsS<4Zi{}NOfe$lmKA3GQI=KrOtsH*5Uw) lsxGFD0000U1Oos70pTRh3y~pAf80q# zK~y-6V_*OSzEBPZY=G-Lc5wyFiM5J`-~o)mf$&BHoCOqP-w=?n(O@G3Lq|soOpM_GFT;I?8xS?z zyLW)a0=U`u*!dZd^$sTR9|KU)a)C0KLNQpBK|+Tq)2)?(Bc+)^Jfzv0000U1Oos70pTRh3y~p9e*oM` zL_t(IjbmT{1HMoW25f-qJa%yg2B0`M>%j?_68~Y~12%06V4Vyc9ZrWz75v z3>*g-{JAGE__J=nX&M7C-b`fY|O9l|9GjN6qU>K&+ j-+>`E3b3RaEZ_qGs+V?EY2t*W00000NkvXXu0mjfsb6V= delta 471 zcmV;|0Vw|70+s|JiBL{Q4GJ0x0000DNk~Le0001t0000U1Oos70eeT=(~%)de*u(9 zL_t(YiDO_u0Rjx4;cQ+89Dti$xPjpVE?I^K22La%2ZZ8e;H$e2q?uB2Y5R{3aM9M>(L0gR;{228DO9P`_dB-~ou8W_?;Jq(C4#srv&cQUYi*ulW>(1k2vx`6os z3uglB2fW4r-97{4cJ2V684SEF9~inBt}r7>@EC9<80a$aHsCO(<3|$`&l-p=+zJ>n zA`}>=B74A#fzyp)W@sZ$EuCPn8whrw3!+OfKftD96bubOL@7W7001;1?J=mXYwiF5 N002ovPDHLkV1hu5uMz+N diff --git a/docs/html/img82.png b/docs/html/img82.png index ef89bdfbaef86c120dc1b4c49ecbccceafb2960b..0ee708a9d7060555266e6a88e9b6f799b54c81c7 100644 GIT binary patch literal 534 zcmV+x0_pvUP);T0000mP)t-sv$M0P zsHmKroRE-^goK26czA4VY+ztuR8&+*NJu<9JTNdYBqSsl7#Iu;3;+NC>RHR400001 zbW%=J06^y0W&i*Ilu1NER7ig_UIrY1n_akp;R7yNh6V;sBpwHZ;$+~f zyAPz9QgLbfj}CCy@BwNp#1ej}5P$GS0d591hP?2r@8m37|>t-n{`tO$7Pp1Mdf?4Zwf`swr5�!!`cQ-1yK#DI0C1?O*rUodd z0EjivBq4wm&IAU11a_l9M>(L0gR;{228DO9P`_dB-~ou8W_?;Jq(C4#srv&cQUYi z*ulW>(1k2vx`6os3uglB2fW4r-97{4cJ2V684SEF9~inBt}r7>@EC9<80a$aHsCO( z<3|$`&l-p=+zJ>nA`}>=B74A#fzyp)W@sZ$onWvV2zHzGbbb@ z#K6EnMMVWDb1g(v3P>@Q1o;IsI6S+N2IRPUx;TbNOifNWz$r4pGBY!iGhi8G*i{GC z8BKb6d^^q_XFsDLBHdI}XqezEsKU9Vkx?%)P()6;(k9h7*+|CC%EOt7lOgvCuZD4! RUzGbbb@ z#K6EnMMVWDb1g(v3P>@Q1o;IsI6S+N2IRPUx;TbNOifNWz$r4pGBY!iGhi8G*i{GC z8BKb6d^^q_XFsDLBHdI}XqezEsKU9Vkx?%)P()6;(k9h7*+|CC%EOt7lOgvCuZD4! RUPUX6xg#4?v@g~J<~hF2gDxRG=Y$t&J?@#-rG!pK#^26 z8jCmjcj$i;`N6E(8v3i>=qL~c`lj>7{oOWl9GG0ApTM-cs3Q$lfFHqJFn-gnE;{e2 zzknXl|3Bb*+CHdlO~W&M{jdv;^1DPgR?l>Xp2dtM>Vr$QQ|z z(b3j1WFMOBJak-+lcw1Ohj-4KF$Xv!$!XGqqn4aca_#&yez6064E1A7^~BfYpjA_h z5PNbz(N%vH``b*Pz8pZ)X?I%UxVwYKh9UerKq8jig1;R z44xCRT?=#bSrBA3i>gRgX68-`(_-Z!g|9w)cFh?PX% zH4)Ke)f`M@tkD!}QB%^Y6;)noo@<5Bbj8*vgVct*pvAxyyw-0lLRz>hX&1a|oV6rs z*>>>~48E;4(Lu1fTt#Bh1ski~J9b3@hGLPSbgVo*5RVlpS4z5ku1&weE_AVlz=V(> zYD-WIln4_NjL6&rBB`k+0#V}~$r!DqTl^A*PSPbu-=x&Ya;)yt$l8a2Bqk)*;Yz>y z;;9R@s(EJF^VqbzI`wwDKiLc5AJ0e~{L;qdA8KuW0_;x`;(5o{cmMzZ07*qoM6N<$ Eg4REUcK`qY diff --git a/docs/html/img84.png b/docs/html/img84.png index e0dd7dffe601b41ef61ec281630df710364b2b28..617901509b38311f24b415c75e7f4325c2bfcca9 100644 GIT binary patch delta 804 zcmV+<1Ka%N0=fn`iBL{Q4GJ0x0000DNk~Le0001|0000S2m=5B0Yt)Y{r~^~Gf+%a zMYFTBsHmu%oScx5kcfzgku@ZL14aCa00001bW%=J06^y0W&i*JwMj%lR9J=WR|}IH zAqYk-Ag;UX|NpfGAB~roCYjuH+D^W?TQ?#PVFd(u5odiK2tw2E3Hz%OXB6184(^r` zygk!9!Ux12+cbfYo6Z!w_1@b|fk2T|H5!XI`giDm6Zyfc+8X++-{>fR5C!_C^Tz$% zHgX)8T%(`Bw7aMy4OW03!CWwY)2=Q$@2S6l9?<_k;Ck9VsBKMJg1}wAdv3!~pR>!O zIaok^*XoD1JsT{%T#V0?E=!eJa2!kJVrTrQ+(bh3!ADZkubX<;;rr89Ccg~wJ2RI|i zY0`tEmYh#=?ff);u>*Y!^gp?-lL`{x)-4Iq=!SZ;ui086VcOus$MUeiw{2d;4cB6 z@_5nrBFuRL_e;O!x3cJiT)T$cTz$R=Qn$Y^vSIjo{mD~@CF`5fu1lnDP8dbE;)G~O zb`ev+s}#NPeTazWg{UGt1R>UerKq8jig1;R44xCRT?=#bSrBA3i>gRgX6(V~JrIu-DOXCme6CHu!7g;Mg}{W6AZklc43r3C6B3Nb+yf%1sU`wZ;~mKu zt)yH05`|9EB}d<+)W~wI?$gNHhk+y}B-Y_dzxv{-3$?0wX4&)Dw7WX>cDp~>3*aBm iNFDsr#^oPsZGHmmPZHvJ$JclO0000O(bAV3hxFi~h_j^J!M!5r-E3gmv}X6EGOU^u{Le`E{fF*5TrII_ty z1UWFUg1GLiF6^P427w$72E-hfGofx(9U$3^@FZ}yaLAs23`dQ zUjYtweuJkVIkxi~^c@(Oz5)&8E&vkD-<%m3I>6f44lqrS6JRL%!2B_RpIPA}2jfEq eF@}#o8366$D#^w14tzQQ0000>xl8$}mxAWscx%I>8+5?F!_6AIP7egSdJxxwe-k5enV(gS_wVz4zU{yL$m9@Fe$<3k&dLnt{ipkvk~Suo%r2 z0h8>KQd!;bS0e6y6Z4v4P+9NUAMiuh(o-VR{ zk2UM0kuVb*aEz8w=#rp2$tjsoP6iqIW`nFX?=FV2KV+orU&6E?l9`PlXp8=sXokan ztAYn{l{OkuL$}7^`d{|C%qj>?5?mQGHSp{d@=o`sP*QK~U3_b~sZ43Xf5JuZL`?mf zde<4Eb}n{FFjibi1v_tbwt5`e)tMbDoO@x6_?=PlQVPv#=v)i&f<0izrldPz%knHN zOjmV_CaT99pLhh`qGb=r?z+>eI)iJV#(~$E#<)RsAE&(`l;1LWv@FzIvz-~qh3;+NC07*qoM6N<$f^KWfVgLXD diff --git a/docs/html/img86.png b/docs/html/img86.png index a4793c56f0a26700ea41106e0a6c6eecb2dcb640..3ffa14f5b4a525ba647a004ced352f5480fc36f0 100644 GIT binary patch delta 438 zcmV;n0ZIPu0`&tSiBL{Q4GJ0x0000DNk~Le0001D0000W1Oos70c;$A%#k5We*tqz zL_t(IjqOvvOT$1E{(5O`+B8kwg+{R8*g-@PA&XKwWvgSvLEXB$oP$5My1F_z2SgCE zbaZU>AIP7egSdJxxwe-k5enV(gS_wVz4zU{yL$m9@Fe$<3k&dLnt{ipkvk~Suo%r2 z0h8>KQd!;bS0e6y6Z4v4P+9NUAMiuh(o-VR{ zk2UM0kuVb*aEz8w=#rp2$tjsoP6iqIW`nFX?=FV2KV+orU&6E?l9`PlXp8=sXokan ztAYn{l{OkuL$}7^`d{|C%qj>?5?mQGHSp{d@=o`sP*QK~U3_b~sZ43Xf5JuZL`?mf zde<4Eb}n{FFjibi1v_tbwt5`e)tMbDoO@x6_?=PlQVPv#=v)i&f<0izrldPz%knHN zOjmV_CaT99pLhh`qGb=r?z+>eI)iJV#(~$E#<)RsAE&(`l;1LWv@FzIvz-~qh3;+NC07*qoM6N<$f_>4SnLIhe1Kiru}P|cpRoSHHui&G zBIF0QNuQZ<6)cpX-s17*-Ff%j3kOu3gVMxp;8gt9cv|VQlc)P7nZbkW#Mteu zZnJX(2Jpo5=`7sa+4}mvnh|^sb(+yDVB%(tb}slPncHCfk~-fHeSUd!uXHMXei)52 zUPl|^Imr+{4mYBrY1P(VO`o2Rlr77;;Q_fL+?LNveRKu>Qd|_Jdy{ z+$;_>F)dH3B52UMJc(!_1zv%E#b!qykxw=kE!)<{@5#jX@BgulJh zrU;P@Pk+e}*zK%t zvvUIm@Wk`!EZp1K`ue__5qu7Hn$as@;%1F@F8C&y+hF~YI^Pd{etC1RbSiy*7>zSt zM;qcf$q+scH=?3x)z)53pPrADEz7&6yas>zTO`Q$Ii(o@0000 zz{f8hF+tv?Kt$-$Z+VuEjfcA*N;JE4u}^pzaP+~U!p1~Nj~~L$O!W+>Sp|&mPHo(& pYR$09u6tn@i@ZRAyaWS7l5oD-dTqv*2%x(dJYD@<);T3K0RRAAIbi?* diff --git a/docs/html/img88.png b/docs/html/img88.png index 37a6ec01e3a5b8d17b1e4efacd2268ba850e1cf2..c1e8d746b80c3f42f9b9bdfe192b8ca72073ce3c 100644 GIT binary patch literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz1!py+HxYAnq9FSuW;1lAydGqEKD^|>zGiSnt z2`w!x6%`dZIXMXl2_YdN9v&VxHZ}$Z1}Z8l5)u+TJUl>6uOd&+15%77L4Lsu4$p3+ z0XemvE{-7*Q|LuD*gKZpMA#~<{m*tai@vw&AhC<34(5nY>yaE zx3@KL^6+qO;^A`O;}?&ZAn#HjB6R7uJWI#M!`%-hnq9isC%g*czHttllW>{s{y|9Z#UZ6l;f`K6^Uv0fMV@m|kAq<|belF{r5}E)L3{H9g literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W7!py+H7-8Vy4CJT>_=LD_-n@CmiWPI_%xP(9 zsi>&P$;k-`3Gwjou(7c*Fffpikl^9r0jdpUHGB!A7)yfuf*Bm1-ADs+sytmBLnNjq zCjdd3Lj$vcUNn>R1dZm-`Ig1c7?=eaLhmv%hs+9jkZ|Atmq}k|BIA`*_5&t8=LHfb z9AMbUm)6Lnd2BvoGxH3goOO%|vzQOvJ@J5VS>*wh&x~x+cVgOnc?3_yObFa8DG^b8 n=|SQFr!MJ}%;^&jGBTW-uJJqW)iDd8D;PXo{an^LB{Ts5BI8e} diff --git a/docs/html/img89.png b/docs/html/img89.png index da9d1a4564751b44c2955318895c22dabe1c239e..37a6ec01e3a5b8d17b1e4efacd2268ba850e1cf2 100644 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^(m*W7!py+H7-8Vy4CJT>_=LD_-n@CmiWPI_%xP(9 zsi>&P$;k-`3Gwjou(7c*Fffpikl^9r0jdpUHGB!A7)yfuf*Bm1-ADs+sytmBLnNjq zCjdd3Lj$vcUNn>R1dZm-`Ig1c7?=eaLhmv%hs+9jkZ|Atmq}k|BIA`*_5&t8=LHfb z9AMbUm)6Lnd2BvoGxH3goOO%|vzQOvJ@J5VS>*wh&x~x+cVgOnc?3_yObFa8DG^b8 n=|SQFr!MJ}%;^&jGBTW-uJJqW)iDd8D;PXo{an^LB{Ts5BI8e} literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^JRmj;GXn#o1jC}|K#p91Pl)U0&6`)OSTSeLoR*fB zii(PyoScx55D5th9v+bT_IFz=fD~g%kY6x^!?PP{K#rHEi(?4K%;bcG2Pq7U$C%j6 z*fb0h5)v4LGq)1&Z}E#b^L7LnrQ2Ig%H*H{#mo;+Z{=@DsU f;N$k;KoNuPOm^mq1)oiTrZRZC`njxgN@xNA2&OgX diff --git a/docs/html/img90.png b/docs/html/img90.png index 84ab80b6af710405daa83d32721e3921bb3873ab..da9d1a4564751b44c2955318895c22dabe1c239e 100644 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^JRmj;GXn#o1jC}|K#p91Pl)U0&6`)OSTSeLoR*fB zii(PyoScx55D5th9v+bT_IFz=fD~g%kY6x^!?PP{K#rHEi(?4K%;bcG2Pq7U$C%j6 z*fb0h5)v4LGq)1&Z}E#b^L7LnrQ2Ig%H*H{#mo;+Z{=@DsU f;N$k;KoNuPOm^mq1)oiTrZRZC`njxgN@xNA2&OgX literal 425 zcmV;a0apHrP)RHR400001 zbW%=J06^y0W&i*ICrLy>R5*=eV891B7#P?2M0mcLx!J^Rc0nBb-;O6HCvmPi2FhfKZJY-~WfGA}~7$88V#Y6%&I16Iu z2SyHv3mNz!A=c2q02SZ>x{>8WBar(6sEvIB&}k2VK_vke0BJn{R?5O(umP-sp}_q+ z!v?Tc1B8VNV3Hlq=cI+NXbbus7|fB98BCB95mnv{%)r>@M^)j?z_18Jvv@HaV>rUV zZ2(olae#q=F+4Kq-X zfe*|}cV*yAVc>-V*yYbXN%k5x4s T-6)IX00000NkvXXu0mjfjGLR= diff --git a/docs/html/img91.png b/docs/html/img91.png index ae2c4cd80d5e60b0976c9350b9d73b1666e6f899..84ab80b6af710405daa83d32721e3921bb3873ab 100644 GIT binary patch delta 360 zcmV-u0hj*01gQfdiBL{Q4GJ0x0000DNk~Le0000%0000W1Oos70mybZACVzUefI%eze-;2~Jpfk9!e6iftb(Dy{X4@3uvP1ZF&tw!!oY0+Rl#w9fq^kY&AkCA z2vWqr;84Zj!g>HK3pay>*MaQ-P!KBei6Ma}2vr3`6+;a(P>_KS%u9D=KHyAY;7DNL z=E}bHZh%Q|ex^-}H zEQpA>J9q3D{R@KN?z>#l)YdB0Zu*7h-TU58-n|rv!0G1-bztU(1Q;E){SW{Gf7OU6&?7NiodNJXRaL^a_$ON+a7tp1FBv)5@L>qx zFsC=E1FsgwWvmI7!8@9et~M)U7<-&~hwNdsxYKV9U5z2zDrV$>~aE)#gqZ`np z{h&=4Covh@I0AZrh3vY4u^=){(+rb1mQ87D<}$zMW@UCq)pN=aI&7|rfBSD4E2%5* zorWnHO-Ad9iMNz)$HeWBWB3a&ww$kM-G%0AgTMP1?1YkCh;Dj5d|P>?Y3DsrJixjX zkIEr+v~j{qc*Y%AiRfk+q%syyiykVQtA+kBag9Au#WL*{+a+BtR@}yHL-)Dqgv*9k z9H=Ji(n^0xZM?ye{`XU~Q%^}TScSAxm_gR-ABlOjZKJXRoB=li<1UgeOE8P5ZytBK zUp^5?F2+PUT*KAg0qTA)(}R84iT#7qKYoc1JEvPZ1rrTB00000NkvXXu0mjfO;_d+ diff --git a/docs/html/img92.png b/docs/html/img92.png index 2abf9ed6cfa450df1a8b8b1b7610ce21f19e31a7..ae2c4cd80d5e60b0976c9350b9d73b1666e6f899 100644 GIT binary patch delta 510 zcmV<6uNbA za4d+3xI1_382t-^;O@Iz($v-})NcBP=H2_=Pu{&0h`{OR3U$tV=tEHJ=MtpiLr$1d zcmbtgt?xnxLhGEE%mf%6wfztPe*)ErD9|G@T%7^%JXKY~w)iJoAaF`zjxQNG*zjQp z;4r5*sROST#$~Jtmccukkghf>jwRu@^5w#e^|ev_&eY(w|C>4eLM zR~)D&>(WYpNo~Brk^c8nRJ2b?F<6DPQ4>mP}EwQZxa0-OOi0^=@{E=w?rsBa#3 zxnDjJNG`@iI$Xom-T~@(^b delta 253 zcmVbq)*+f&333>Jk_@(2XIe9}1XZE_zVF z#s;J`kmT?hN&(=2JB334NC0_E2R;-& z;6D<;9%guf47vaZ+_C&%lC3qQQ-VQd0qX@2N23v0%3&FU9fSG;SSrzIKu9rPU|6QW zufQt6fTRr~#TCG?M1ie20NFf`{x;H`KDfYtT;Kx$IObq)*+f&333>Jk_@(2XIe9}1XZE_zVF z#s;J`kmT?hN&(=2JB334NC0_E2R;-& z;6D<;9%guf47vaZ+_C&%lC3qQQ-VQd0qX@2N23v0%3&FU9fSG;SSrzIKu9rPU|6QW zufQt6fTRr~#TCG?M1ie20NFf`{x;H`KDfYtT;Kx$IO=LF1P1JYAFMsyVfO|c3a|i1IEx90KOjqe0NbXpn|Q;B z1uPtF=t2z)3xMPUeg+2!f5QhBCM4+%KpkvAMG0Jd0uL@g1r30h6QPC!9xe`4b}z|* z9g7$^S{vBVqm>O3<^>A;=o&r%fBg#t4p50o2KEmhpb}sjrh}h{VZsNF-Me8D4nRAA zA;rPK&QjoL0M!9X5=hAc;XsfAL4*XK0v<1n6u>xaD@74;boMcpcadu-G!lJD{qEU?hnL3=EeT z^iV9XVyIzeSjN!JfK7clF!O{qFfi}{@d*fZnPEx-^9>IJgmSk24hMz^Fp~q>DG0!o ofFZO1LWyHlj|o(XR5y|V0Gld10YNIrdjJ3c07*qoM6N<$g2)nxy8r+H delta 330 zcmV-Q0k!_i1B(M8iBL{Q4GJ0x0000DNk~Le0000%0000W1Oos70mybZACVzUe+fxM zK~y-6V_?7s`WYD57#tWFIMF5e`9UP-2fVr&7+4{c1Df!2IIDnw0hoXT+0F$({DA=~ z5+T6;0nFS06lq{cU}NCqPjECaU;udn4)_!p6iBv|c)*0rVFo!y14)1phyzg6Hz2Wf z_!%4&9v~aW#m=Gt^b*Jm2^O~`6$~az+!GkQ!Tb*xDjb$E*fBU?VEn?sk3$9X1%_n`TnQW- z82G^aRtBby9}Nr)Cm0xbfK(3y16KgU5(V3qW(I}~unKPMj$8)Bj2j^AARrtbVPJ5^ cDKj(y0RChz+Y}W2Pyhe`07*qoM6N<$f{uc4f&c&j diff --git a/docs/html/img95.png b/docs/html/img95.png index f71e274b6cb9295d14552c2888f93fd833ccccd9..4ffe594975a39c635a9cfb3b25d8f8f38e725c1f 100644 GIT binary patch delta 331 zcmV-R0kr;}0*eD7iBL{Q4GJ0x0000DNk~Le0000%0000W1Oos70mybZACVzTe*pUFL zDiR^U{sGL~02FCpNMK{&LK}0Q3^b3ke(ye;f=AOnkgR?;-2r1WP+01UiB0h7@2)U|>9eU5Y~i zOnERcFyKmRlfmR>3>9pxAr%ZJOWYF}yuthr7%Ci=G1xIUUts*gz>h-(^96=w3S0>s z8yNV&{8k30jvoyS3?~>Ecz{$70|Qq8!x9DCmSzTq46q7r?2cRp#EcstA?zR=9${c` d#wjy20RaAFFWVFp{ZIe^002ovPDHLkV1infa8&>R delta 221 zcmV<303!d31D*mQiBL{Q4GJ0x0000DNk~Le0000R0000U1Oos70a!3dLy;j%e*m0G zL_t&-m1AH40wx9o5MW?vfOEJL1fZ<{|NnnLQpK^~5Tx%Ph#i0=j;;<099X#c*nM+8MZ98PdZKAQ{0Ez-vIFt)zkf$lwD2 X14A>0d{QzK00000NkvXXu0mjfe@IMY diff --git a/docs/html/img96.png b/docs/html/img96.png index dc005ccf7ed6bac7a04a3827c1f4d3dcc304e9d4..f71e274b6cb9295d14552c2888f93fd833ccccd9 100644 GIT binary patch delta 221 zcmV<303!dN1D*mQiBL{Q4GJ0x0000DNk~Le0000R0000U1Oos70a!3dLy;j%e*m0G zL_t&-m1AH40wx9o5MW?vfOEJL1fZ<{|NnnLQpK^~5Tx%Ph#i0=j;;<099X#c*nM+8MZ98PdZKAQ{0Ez-vIFt)zkf$lwD2 X14A>0d{QzK00000NkvXXu0mjfkc>=s delta 351 zcmV-l0igb#0-pmRiBL{Q4GJ0x0000DNk~Le0000+0000W1Oos70V=8^W|1LFe*qmy zL_t(IjbmWI3;MyN0~Q$r27Z1pqZhvk3=FIoA`KAgcLBo(n2>`4A!D!sjt|H@kP#nX zMnRHR400001 zbW%=J06^y0W&i*I9Z5t%R5*=eV89Fd!K4Eg83P7>elVjKzX=QstQaB<5bAdU!v~m< zg90IAumO$_$UKk{A7DmCuqZGbIKT&FZ2$^2FeI=saPaUuI0SG5h1ihIaATN2j@_gI zCKMh!h}fWkA_j6q0IH@0WR4auKchnessdInUS=@E0Hm6OfrFvJfXS8z9AOQ}3V9e7 zFrdaGM+1WZv5p^{fF*%}@c>TQiD1%$fq~%zPBmN#AaXN?8urPdtu7f13=*lO3@jTM zpz^3{47M^xl@LpWw8Cp0uNS#&oxH#W*1OA}%c+QY-6 zu_=LZf{?31p2M`16IN*q%PM6Q{$#B9A;@ub7o*R{CqB%R817`SKJvYr3~~sAr>mdK II;Vst0Hm-p9smFU diff --git a/docs/html/img98.png b/docs/html/img98.png index 99bf4164028b0e18be70a468bf0ac1e752144699..71d5daf6921b9d808ccb733c607fe4033261bd7d 100644 GIT binary patch delta 162 zcmey)w2RTGGr-TCmrII^fq{Y7)59eQL<2D&3o`=)V`13tav(=5z$e6Y^XAQS=FFKe zVZuZU#q|H1qwWJG7)yfuf*Bm1-ADs+>^xl@LpWw8Cp0uNS#&oxH#W*1OA}%c+QY-6 zu_=LZf{?31p2M`16IN*q%PM6Q{$#B9A;@ub7o*R{CqB%R817`SKJvYr3~~sAr>mdK II;Vst0NcMabpQYW literal 375 zcmV--0f_#IP)RHR400001 zbW%=J06^y0W&i*H^+`lQR49>SU;qI&1_lQPh5`m;zyuOS0%>4!0|PTF14jn~lK}%B zz{v|DS%63YWO^%*Sg?Vk0b+&&KAqSB`v)YB0ub{S@Ip8eeB3~%J_1_?0u3xIq#I8V zHaCJ_JB{Ed?AvvY>&18O&vB0Ed$U4?_S0OGifo!-oYxl^hLR zz<`9fcZnrL;RPBvn`WT%00Wx>7I6+puoRqRV8^CS7EH1;@HHedFrNU13@}K5fPsNA zX9K#fAvX3 zK~yM_V_*OQHUB>9B3Xb)0AzYAkXW#R zqXA-u13sPD0s99ejsg(#7Vtti5`5f1r#=E(1_BK%ETkJx5actQfU|jkn8g7RRzUk1 z3_b)vc`XGTK(e5Lff>wYY5<3me*+Ig00T=$M+3u$1wfS?4P3y0gt&K!B}Cx`8aSI~ zpz{C&n*tVb4oI*RoMd3frcD-1vNP~CBr-6c0EP@ONPvKWfidMG!v}^Is5H~p0tUth z$Qro=*cUKPfSAp|;4c6SL1bwk27Xlup#+2gzW^DY8oB@g$3iEWQj_Gb3;+NC07*qo IM6N<$g7IWyS^xk5 delta 160 zcmey)^q5hxGr-TCmrII^fq{Y7)59eQNQ;5kEX)iHj2b}@H}dKLQYnEjcUAG>TgQq-pYs3%%-wgkf-HlcIN-4&yORx^0I L`njxgN@xNAo{uw; diff --git a/docs/html/node100.html b/docs/html/node100.html index 2136174f..433c78c3 100644 --- a/docs/html/node100.html +++ b/docs/html/node100.html @@ -104,9 +104,9 @@ Error code: if no error, 0 is returned. Legal inputs to this subroutine are interpreted depending on the $ptype$ string as follows3: + HREF="footnode.html#foot6722">3:

NONE
No preconditioning, i.e. the preconditioner is just a copy @@ -129,7 +129,7 @@ Legal inputs to this subroutine are interpreted depending on the by the data allocation boundaries for each process; requires no communication. Only the incomplete factorization $ILU(0)$ is currently implemented.
diff --git a/docs/html/node105.html b/docs/html/node105.html index 43fe42ab..09a0237a 100644 --- a/docs/html/node105.html +++ b/docs/html/node105.html @@ -73,7 +73,7 @@ err = \frac{\|r_i\|}{(\|A\|\|x_i\|+\|b\|)} < eps \begin{displaymath}err = \frac{\Vert r_i\Vert}{(\Vert A\Vert\Vert x_i\Vert+\Vert b\Vert)} < eps \end{displaymath}
@@ -89,7 +89,7 @@ err = \frac{\|r_i\|}{\|b\|_2} < eps \begin{displaymath}err = \frac{\Vert r_i\Vert}{\Vert b\Vert _2} < eps \end{displaymath}
@@ -97,11 +97,11 @@ err = \frac{\|r_i\|}{\|b\|_2} < eps according to the value passed through the istop argument (see later). In the above formulae, $x_i$ is the tentative solution and $r_i=b-Ax_i$ the corresponding residual at the in.
Default: $itmax = 1000$.
Specified as: an integer variable $itmax \ge 1$.
itrace
If $>0$ print out an informational message about convergence every $itrace$ iterations.
Scope: global @@ -268,7 +268,7 @@ Intent: in.
Values: $irst>0$. This is employed for the BiCGSTABL or RGMRES methods, otherwise it is ignored. @@ -329,7 +329,7 @@ Returned as: a real number. ALT="$A$">; only available with the $CG$ method.
Scope: global diff --git a/docs/html/node107.html b/docs/html/node107.html index a7848e86..dd076511 100644 --- a/docs/html/node107.html +++ b/docs/html/node107.html @@ -63,7 +63,7 @@ Mathematics Department, Macquarie University, Sydney. The command line arguments were:
latex2html -local_icons -noaddress -dir ../../html userhtml.tex

-The translation was initiated by on 2010-06-22 +The translation was initiated by Salvatore Filippone on 2011-03-25


diff --git a/docs/html/node11.html b/docs/html/node11.html index 7d80675d..4c8bf984 100644 --- a/docs/html/node11.html +++ b/docs/html/node11.html @@ -129,7 +129,7 @@ figure 4. The definitions for single precision complex data are identical except for the real declaration and for the kind type parameter. -
+
Figure 4: The PSBLAS defined data type that @@ -143,7 +143,7 @@ for the kind type parameter. --> \fbox{\TheSbox}
@@ -161,7 +161,7 @@ following should hold: i; the last element of the sparse matrix is thus stored at index $ia2(m+1)-1$. It should contain m+1 entries in nondecreasing order (strictly increasing, if there are no empty rows). @@ -172,7 +172,7 @@ contains the corresponding coefficient value, for all $ia2(1) \le j
 \le ia2(m+1)-1$. @@ -191,7 +191,7 @@ matrix; --> $1 \le j \le infoa(1)$, the coefficient, row index and column index are stored into apsk(j), ia1(j) and ia2(j) respectively. diff --git a/docs/html/node13.html b/docs/html/node13.html index f842b628..39ec25d4 100644 --- a/docs/html/node13.html +++ b/docs/html/node13.html @@ -72,7 +72,7 @@ to be interpreted. This data structure is the basis of more complex preconditioning strategies, which are the subject of further research. -
+
@@ -86,7 +86,7 @@ The PSBLAS defined data type that contains a preconditioner. --> \fbox{\TheSbox}
Figure 5: The PSBLAS defined data type that contains a preconditioner.
diff --git a/docs/html/node26.html b/docs/html/node26.html index 72ec51ae..78e5c047 100644 --- a/docs/html/node26.html +++ b/docs/html/node26.html @@ -68,7 +68,7 @@ y \leftarrow \alpha\> x+ \beta y \begin{displaymath}y \leftarrow \alpha\> x+ \beta y \end{displaymath}

@@ -81,7 +81,7 @@ call psb_geaxpby(alpha, x, beta, y, desc_a, info)


-
+
@@ -90,16 +90,16 @@ Data types
Table 1: Data types
@@ -133,7 +133,7 @@ Data types
alpha
the scalar $\alpha$.
Scope: global @@ -148,7 +148,7 @@ Specified as: a number of the data type indicated in Table .
Scope: local @@ -161,16 +161,16 @@ Specified as: a rank one or two array containing numbers of type specified in Table 
1. The rank of $x$ must be the same of $y$.
beta
the scalar $\beta$.
Scope: global @@ -185,7 +185,7 @@ Specified as: a number of the data type indicated in Table .
Scope: local @@ -197,10 +197,10 @@ Intent: inout. Specified as: a rank one or two array containing numbers of the type indicated in Table 
1. The rank of $y$ must be the same of $x$.
desc_a
@@ -226,7 +226,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
y
the local portion of result submatrix $y$.
Scope: local diff --git a/docs/html/node27.html b/docs/html/node27.html index 59232575..6487e560 100644 --- a/docs/html/node27.html +++ b/docs/html/node27.html @@ -58,19 +58,19 @@ psb_gedot -- Dot Product

This function computes dot product between two vectors $x$ and $y$.
If $x$ and $y$ are real vectors it computes dot-product as:

@@ -83,17 +83,17 @@ dot \leftarrow x^T y \begin{displaymath}dot \leftarrow x^T y\end{displaymath}

Else if $x$ and $y$ are complex vectors then it computes dot-product as:

@@ -105,7 +105,7 @@ dot \leftarrow x^H y \begin{displaymath}dot \leftarrow x^H y\end{displaymath}

@@ -116,7 +116,7 @@ dot \leftarrow x^H y psb_gedot(x, y, desc_a, info)

-
+
$x$, $y$, $\alpha$, $\beta$ Subroutine
@@ -125,13 +125,13 @@ Data types
Table 2: Data types
@@ -166,7 +166,7 @@ Data types
the local portion of global dense matrix $x$.
Scope: local @@ -179,17 +179,17 @@ Specified as: an array of rank one or two containing numbers of type specified in Table 2. The rank of $x$ must be the same of $y$.
y
the local portion of global dense matrix $y$.
Scope: local @@ -202,10 +202,10 @@ Specified as: an array of rank one or two containing numbers of type specified in Table 2. The rank of $y$ must be the same of $x$.
desc_a
@@ -227,10 +227,10 @@ Specified as: a structured data of type descdatapsb_desc_type.
Function value
is the dot product of subvectors $x$ and $y$.
Scope: global diff --git a/docs/html/node28.html b/docs/html/node28.html index 5d7c0aa9..c100a7fa 100644 --- a/docs/html/node28.html +++ b/docs/html/node28.html @@ -59,10 +59,10 @@ psb_gedots -- Generalized Dot Product This subroutine computes a series of dot products among the columns of two dense matrices $x$ and $y$:

@@ -74,7 +74,7 @@ res(i) \leftarrow x(:,i)^T y(:,i) \begin{displaymath}res(i) \leftarrow x(:,i)^T y(:,i)\end{displaymath}

@@ -82,17 +82,17 @@ res(i) \leftarrow x(:,i)^T y(:,i) If the matrices are complex, then the usual convention applies, i.e. the conjugate transpose of $x$ is used. If $x$ and $y$ are of rank one, then $res$ is a scalar, else it is a rank one array. @@ -101,7 +101,7 @@ is a rank one array. call psb_gedots(res, x, y, desc_a, info)

-
+
$dot$, $x$, $y$ Function
@@ -110,13 +110,13 @@ Data types
Table 3: Data types
@@ -151,7 +151,7 @@ Data types
the local portion of global dense matrix $x$.
Scope: local @@ -164,17 +164,17 @@ Specified as: an array of rank one or two containing numbers of type specified in Table 3. The rank of $x$ must be the same of $y$.
y
the local portion of global dense matrix $y$.
Scope: local @@ -187,10 +187,10 @@ Specified as: an array of rank one or two containing numbers of type specified in Table 3. The rank of $y$ must be the same of $x$.
desc_a
@@ -210,10 +210,10 @@ Specified as: a structured data of type descdatapsb_desc_type.
res
is the dot product of subvectors $x$ and $y$.
Scope: global diff --git a/docs/html/node29.html b/docs/html/node29.html index 436f6988..be6a9d76 100644 --- a/docs/html/node29.html +++ b/docs/html/node29.html @@ -59,12 +59,12 @@ psb_geamax -- Infinity-Norm of Vector This function computes the infinity-norm of a vector $x$.
If $x$ is a real vector it computes infinity norm as:

@@ -77,14 +77,14 @@ amax \leftarrow \max_i |x_i| \begin{displaymath}amax \leftarrow \max_i \vert x_i\vert\end{displaymath}

else if $x$ is a complex vector then it computes infinity-norm as:

@@ -96,7 +96,7 @@ amax \leftarrow \max_i {(|re(x_i)| + |im(x_i)|)} \begin{displaymath}amax \leftarrow \max_i {(\vert re(x_i)\vert + \vert im(x_i)\vert)}\end{displaymath}

@@ -109,7 +109,7 @@ psb_geamax(x, desc_a, info)


-
+
$res$, $x$, $y$ Subroutine
@@ -118,11 +118,11 @@ Data types
Table 4: Data types
@@ -161,7 +161,7 @@ Data types
the local portion of global dense matrix $x$.
@@ -194,7 +194,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
Function value
is the infinity norm of subvector $x$.
Scope: global diff --git a/docs/html/node30.html b/docs/html/node30.html index abbc96c4..5d14f846 100644 --- a/docs/html/node30.html +++ b/docs/html/node30.html @@ -59,7 +59,7 @@ psb_geamaxs -- Generalized Infinity Norm This subroutine computes a series of infinity norms on the columns of a dense matrix $x$:

@@ -71,7 +71,7 @@ res(i) \leftarrow \max_k |x(k,i)| \begin{displaymath}res(i) \leftarrow \max_k \vert x(k,i)\vert \end{displaymath}

@@ -84,7 +84,7 @@ call psb_geamaxs(res, x, desc_a, info)


-
+
$amax$ $x$ Function
@@ -93,11 +93,11 @@ Data types
Table 5: Data types
@@ -136,7 +136,7 @@ Data types
the local portion of global dense matrix $x$.
Scope: local @@ -166,7 +166,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
res
is the infinity norm of the columns of $x$.
Scope: global diff --git a/docs/html/node31.html b/docs/html/node31.html index 691a20d9..434024ad 100644 --- a/docs/html/node31.html +++ b/docs/html/node31.html @@ -58,12 +58,12 @@ psb_geasum -- 1-Norm of Vector

This function computes the 1-norm of a vector $x$.
If $x$ is a real vector it computes 1-norm as:

@@ -76,14 +76,14 @@ asum \leftarrow \|x_i\| \begin{displaymath}asum \leftarrow \Vert x_i\Vert\end{displaymath}

else if $x$ is a vector then it computes 1-norm as:

@@ -95,7 +95,7 @@ asum \leftarrow \|re(x)\|_1 + \|im(x)\|_1 \begin{displaymath}asum \leftarrow \Vert re(x)\Vert _1 + \Vert im(x)\Vert _1\end{displaymath}

@@ -108,7 +108,7 @@ psb_geasum(x, desc_a, info)


-
+
$res$ $x$ Subroutine
@@ -117,11 +117,11 @@ Data types
Table 6: Data types
@@ -160,7 +160,7 @@ Data types
the local portion of global dense matrix $x$.
@@ -193,7 +193,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
Function value
is the 1-norm of vector $x$.
Scope: global diff --git a/docs/html/node32.html b/docs/html/node32.html index 8c17a30d..7289fd3d 100644 --- a/docs/html/node32.html +++ b/docs/html/node32.html @@ -59,7 +59,7 @@ psb_geasums -- Generalized 1-Norm of Vector This subroutine computes a series of 1-norms on the columns of a dense matrix $x$:

@@ -71,19 +71,19 @@ res(i) \leftarrow \max_k |x(k,i)| \begin{displaymath}res(i) \leftarrow \max_k \vert x(k,i)\vert \end{displaymath}

This function computes the 1-norm of a vector $x$.
If $x$ is a real vector it computes 1-norm as:

@@ -96,14 +96,14 @@ res(i) \leftarrow \|x_i\| \begin{displaymath}res(i) \leftarrow \Vert x_i\Vert\end{displaymath}

else if $x$ is a complex vector then it computes 1-norm as:

@@ -115,7 +115,7 @@ res(i) \leftarrow \|re(x)\|_1 + \|im(x)\|_1 \begin{displaymath}res(i) \leftarrow \Vert re(x)\Vert _1 + \Vert im(x)\Vert _1\end{displaymath}

@@ -128,7 +128,7 @@ call psb_geasums(res, x, desc_a, info)


-
+
$asum$ $x$ Function
@@ -137,11 +137,11 @@ Data types
Table 7: Data types
@@ -180,7 +180,7 @@ Data types
the local portion of global dense matrix $x$.
@@ -213,7 +213,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
res
contains the 1-norm of (the columns of) $x$.
Scope: global diff --git a/docs/html/node33.html b/docs/html/node33.html index 938a8f44..7852a929 100644 --- a/docs/html/node33.html +++ b/docs/html/node33.html @@ -58,12 +58,12 @@ psb_genrm2 -- 2-Norm of Vector

This function computes the 2-norm of a vector $x$.
If $x$ is a double precision real vector it computes 2-norm as:

@@ -76,14 +76,14 @@ nrm2 \leftarrow \sqrt{x^T x} \begin{displaymath}nrm2 \leftarrow \sqrt{x^T x}\end{displaymath}

else if $x$ is double precision complex vector then it computes 2-norm as:

@@ -95,7 +95,7 @@ nrm2 \leftarrow \sqrt{x^H x} \begin{displaymath}nrm2 \leftarrow \sqrt{x^H x}\end{displaymath}

@@ -103,7 +103,7 @@ nrm2 \leftarrow \sqrt{x^H x}


-
+
$res$ $x$ Subroutine
@@ -112,11 +112,11 @@ Data types
Table 8: Data types
@@ -160,7 +160,7 @@ psb_genrm2(x, desc_a, info)
the local portion of global dense matrix $x$.
Scope: local @@ -192,7 +192,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
Function Value
is the 2-norm of subvector $x$.
Scope: global diff --git a/docs/html/node34.html b/docs/html/node34.html index 086e94ce..002ecf35 100644 --- a/docs/html/node34.html +++ b/docs/html/node34.html @@ -59,7 +59,7 @@ psb_genrm2s -- Generalized 2-Norm of Vector This subroutine computes a series of 2-norms on the columns of a dense matrix $x$:

@@ -71,7 +71,7 @@ res(i) \leftarrow \|x(:,i)\|_2 \begin{displaymath}res(i) \leftarrow \Vert x(:,i)\Vert _2 \end{displaymath}

@@ -84,7 +84,7 @@ call psb_genrm2s(res, x, desc_a, info)


-
+
$nrm2$ $x$ Function
@@ -93,11 +93,11 @@ Data types
Table 9: Data types
@@ -136,7 +136,7 @@ Data types
the local portion of global dense matrix $x$.
@@ -169,7 +169,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
res
contains the 1-norm of (the columns of) $x$.
Scope: global diff --git a/docs/html/node35.html b/docs/html/node35.html index 9d93b7f9..84b25c5b 100644 --- a/docs/html/node35.html +++ b/docs/html/node35.html @@ -72,7 +72,7 @@ nrmi \leftarrow \|A\|_\infty \begin{displaymath}nrmi \leftarrow \Vert A\Vert _\infty \end{displaymath}
@@ -92,7 +92,7 @@ where:


-
+
$res$ $x$ Subroutine
diff --git a/docs/html/node36.html b/docs/html/node36.html index 5f7281e1..feb19315 100644 --- a/docs/html/node36.html +++ b/docs/html/node36.html @@ -70,7 +70,7 @@ y \leftarrow \alpha P_r A P_c x + \beta y
Table 10: Data types
@@ -89,7 +89,7 @@ y \leftarrow \alpha P_r A^T P_c x + \beta y
\begin{displaymath}
 y \leftarrow \alpha P_r A P_c x + \beta y
 \end{displaymath}
@@ -108,7 +108,7 @@ y \leftarrow \alpha P_r A^H P_c x + \beta y
\begin{displaymath}
 y \leftarrow \alpha P_r A^T P_c x + \beta y
 \end{displaymath}
@@ -122,20 +122,20 @@ where:
$x$
is the global dense submatrix $x_{:, :}$
$y$
is the global dense submatrix $y_{:, :}$
$P_r, P_c$
are the permutation matrices.
@@ -157,7 +157,7 @@ where:


-
+
\begin{displaymath}
 y \leftarrow \alpha P_r A^H P_c x + \beta y
 \end{displaymath}
@@ -169,16 +169,16 @@ Data types SRC="img1.png" ALT="$A$">, $x$, $y$, $\alpha$, $\beta$ @@ -219,7 +219,7 @@ call psb_spmm(alpha, a, x, beta, y,desc_a, info, &
alpha
the scalar $\alpha$.
Scope: global @@ -250,7 +250,7 @@ Specified as: a structured data of type spdatapsb_spmat_type.
the local portion of global dense matrix $x$.
@@ -264,16 +264,16 @@ Specified as: a rank one or two array containing numbers of type specified in Table 11. The rank of $x$ must be the same of $y$.
beta
the scalar $\beta$.
Scope: global @@ -288,7 +288,7 @@ Specified as: a number of the data type indicated in Table .
@@ -302,10 +302,10 @@ Specified as: a rank one or two array containing numbers of type specified in Table 
11. The rank of $y$ must be the same of $x$.
desc_a
@@ -342,7 +342,7 @@ Intent: in.
Default: $trans = N$
Specified as: a character variable. @@ -360,10 +360,10 @@ Intent: inout.
Specified as: a rank one array of the same type of $x$ and $y$ with the TARGET attribute. @@ -375,7 +375,7 @@ the TARGET attribute.
y
the local portion of result submatrix $y$.
Scope: local diff --git a/docs/html/node37.html b/docs/html/node37.html index 1184abfa..018a9526 100644 --- a/docs/html/node37.html +++ b/docs/html/node37.html @@ -75,7 +75,7 @@ y &\leftarrow& \alpha P_r T^{-H} P_c D x + \beta y\\ --> \begin{eqnarray*}
 y &\leftarrow& \alpha P_r T^{-1} P_c x + \beta y\\
 y &\leftar...
@@ -89,40 +89,40 @@ where:
 <DL>
 <DT><STRONG><IMG
  WIDTH=
is the global dense submatrix $x_{:, :}$
$y$
is the global dense submatrix $y_{:, :}$
$T$
is the global sparse block triangular submatrix $T$
$D$
is the scaling diagonal matrix.
$P_r, P_c$
are the permutation matrices.
@@ -137,7 +137,7 @@ call psb_spsm(alpha, t, x, beta, y, desc_a, info,&


-
+
Table 11: Data types
Subroutine
@@ -146,22 +146,22 @@ Data types
Table 12: Data types
@@ -195,7 +195,7 @@ Data types
alpha
the scalar $\alpha$.
Scope: global @@ -211,7 +211,7 @@ Table 12.
the global portion of the sparse matrix $T$.
Scope: local @@ -227,7 +227,7 @@ Specified as: a structured data type specified in
the local portion of global dense matrix $x$.
@@ -241,16 +241,16 @@ Specified as: a rank one or two array containing numbers of type specified in Table 12. The rank of $x$ must be the same of $y$.
beta
the scalar $\beta$.
Scope: global @@ -265,7 +265,7 @@ Specified as: a number of the data type indicated in Table .
@@ -279,10 +279,10 @@ Specified as: a rank one or two array containing numbers of type specified in Table 
12. The rank of $y$ must be the same of $x$.
desc_a
@@ -317,7 +317,7 @@ Intent: in.
Default: $trans = N$
Specified as: a character variable. @@ -343,7 +343,7 @@ Intent: in.
Default: $unitd = U$
Specified as: a character variable. @@ -389,7 +389,7 @@ Default: $diag(1) = 1 (no scaling)$
Specified as: a rank one array containing numbers of the type @@ -406,7 +406,7 @@ Intent: inout.
Specified as: a rank one array of the same type of $x$ with the TARGET attribute. @@ -419,7 +419,7 @@ TARGET attribute.
the local portion of global dense matrix $y$.
diff --git a/docs/html/node39.html b/docs/html/node39.html index 1fc78113..974ae658 100644 --- a/docs/html/node39.html +++ b/docs/html/node39.html @@ -70,7 +70,7 @@ x \leftarrow \alpha x \begin{displaymath}x \leftarrow \alpha x \end{displaymath}
@@ -79,7 +79,7 @@ where:
$x$
is a global dense submatrix.
@@ -87,7 +87,7 @@ where:


-
+
$T$, $x$, $y$, $D$, $\alpha$, $\beta$ Subroutine
@@ -96,10 +96,10 @@ Data types
Table 13: Data types
@@ -142,7 +142,7 @@ call psb_halo(x, desc_a, info, alpha, work, data)
x
global dense matrix $x$.
Scope: local @@ -169,7 +169,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
alpha
the scalar $\alpha$.
Scope: global @@ -180,7 +180,7 @@ Intent: in.
Default: $alpha = 1 $
Specified as: a number of the data type indicated in Table 13. @@ -196,7 +196,7 @@ Intent: inout.
Specified as: a rank one array of the same type of $x$ with the POINTER attribute.
@@ -219,7 +219,7 @@ index list on which to base the data exchange.
x
global dense result matrix $x$.
Scope: local @@ -235,7 +235,7 @@ Table 13.
info
the local portion of result submatrix $y$.
Scope: local @@ -248,7 +248,7 @@ An integer value that contains an error code.
-
+
$\alpha$, $x$ Subroutine
@@ -256,7 +256,7 @@ Sample discretization mesh.
\includegraphics[scale=0.45]{figures/try8x8.eps} \rotatebox{-90}{\includegraphics[scale=0.45]{figures/try8x8}}
@@ -280,7 +280,7 @@ index space, with a halo made of 8 entries placed at local indices 33 through 40. If process 0 assigns an initial value of 1 to its entries in the $x$ vector, and process 1 assigns a value of 2, then after a call to psb_halo the contents of the local vectors will be the following: diff --git a/docs/html/node40.html b/docs/html/node40.html index 262ff5ed..258c604f 100644 --- a/docs/html/node40.html +++ b/docs/html/node40.html @@ -69,7 +69,7 @@ x \leftarrow Q x \begin{displaymath}x \leftarrow Q x \end{displaymath}
@@ -78,31 +78,31 @@ where:
$x$
is the global dense submatrix $x$
$Q$
is the overlap operator; it is the composition of two operators $ P_a$ and $ P^{T}$.


-
+
Figure 6: Sample discretization mesh.
@@ -111,7 +111,7 @@ Data types
Table 14: Data types
@@ -151,7 +151,7 @@ call psb_ovrl(x, desc_a, info, update=update_type, work=work)
x
global dense matrix $x$.
Scope: local @@ -184,13 +184,13 @@ Specified as: a structured data of type descdatapsb_desc_type.
update = psb_add_
Sum overlap entries, i.e. apply $P^T$;
update = psb_avg_
Average overlap entries, i.e. apply $P_aP^T$;
@@ -203,7 +203,7 @@ Default: $update\_type = psb\_avg\_ $
Scope: global @@ -221,7 +221,7 @@ Intent: inout.
Specified as: a one dimensional array of the same type of $x$.

@@ -232,7 +232,7 @@ Specified as: a one dimensional array of the same type of x

global dense result matrix $x$.
Scope: local @@ -267,18 +267,18 @@ An integer value; 0 means no error has been detected.
  • The operator $ P^{T}$ performs the reduction sum of overlap elements; it is a ``prolongation'' operator $P^T$ that replicates overlap elements, accounting for the physical replication of data;
  • The operator $ P_a$ performs a scaling on the overlap elements by the amount of replication; thus, when combined with the reduction operator, it implements the average of replicated elements over all of @@ -288,7 +288,7 @@ their instances.

    -

    +
  • $x$ Subroutine
    @@ -296,7 +296,7 @@ Sample discretization mesh.
    \includegraphics[scale=0.65]{figures/try8x8_ov.eps} \rotatebox{-90}{\includegraphics[scale=0.65]{figures/try8x8_ov}}
    @@ -321,7 +321,7 @@ index space, with an overlap of 16 entries placed at local indices 25 through 40; the halo will run from local index 41 through local index 48.. If process 0 assigns an initial value of 1 to its entries in the $x$ vector, and process 1 assigns a value of 2, then after a call to psb_ovrl with psb_avg_ and a call to psb_halo_ the contents of the local vectors will be the diff --git a/docs/html/node41.html b/docs/html/node41.html index 871f835c..ee9a6d5a 100644 --- a/docs/html/node41.html +++ b/docs/html/node41.html @@ -71,7 +71,7 @@ glob\_x \leftarrow collect(loc\_x_i) \begin{displaymath}glob\_x \leftarrow collect(loc\_x_i) \end{displaymath}
    @@ -80,19 +80,19 @@ where:
    $glob\_x$
    is the global submatrix $glob\_x_{1:m,1:n}$
    $loc\_x_i$
    is the local portion of global dense matrix on process
    $collect$
    is the collect function.
    @@ -110,7 +110,7 @@ process

    -
    +
    Figure 7: Sample discretization mesh.
    @@ -119,7 +119,7 @@ Data types
    Table 15: Data types
    @@ -163,7 +163,7 @@ call psb_gather(glob_x, loc_x, desc_a, info, root)
    the local portion of global dense matrix $glob\_x$.
    Scope: local @@ -189,7 +189,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
    root
    The process that holds the global copy. If $root=-1$ all the processes will have a copy of the global vector.
    @@ -204,10 +204,10 @@ Specified as: an integer variable $-1\le root\le np-1$, default $-1$.
    On Return
    diff --git a/docs/html/node42.html b/docs/html/node42.html index 859f6cac..d50ddc23 100644 --- a/docs/html/node42.html +++ b/docs/html/node42.html @@ -69,7 +69,7 @@ loc\_x_i \leftarrow scatter(glob\_x) \begin{displaymath}loc\_x_i \leftarrow scatter(glob\_x) \end{displaymath}
    @@ -78,19 +78,19 @@ where:
    $glob\_x$
    is the global matrix $glob\_x_{1:m,1:n}$
    $loc\_x_i$
    is the local portion of global dense matrix on process
    $scatter$
    is the scatter function.
    @@ -108,7 +108,7 @@ process

    -
    +
    $x_i, y$ Subroutine
    @@ -117,7 +117,7 @@ Data types
    Table 16: Data types
    @@ -182,7 +182,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
    root
    The process that holds the global copy. If $root=-1$ all the processes have a copy of the global vector.
    @@ -197,10 +197,10 @@ Specified as: an integer variable $-1\le root\le np-1$, default $-1$.
    On Return
    @@ -210,7 +210,7 @@ Specified as: an integer variable $i\in \{1\dots mg\}$ is allocated to process $vg(i)$.
    Scope:global. @@ -112,7 +112,7 @@ Specified as: an integer array.
    flag
    Specifies whether entries in $vg$ are zero- or one-based.
    Scope:global. @@ -123,10 +123,10 @@ Intent: in.
    Specified as: an integer value $0,1$, default $0$.

    @@ -156,7 +156,7 @@ Specified as: a subroutine.

    Data allocation: the set of global indices $vl(1:nl)$ belonging to the calling process.
    Scope:local. @@ -286,10 +286,10 @@ An integer value; 0 means no error has been detected. --> $0\le pv(i) < np$; if $nv>1$ we have an index assigned to multiple processes, i.e. we have an overlap among the subdomains. @@ -304,23 +304,23 @@ An integer value; 0 means no error has been detected. --> $i\in \{1\dots mg\}$ is assigned to process $vg(i)$. The vector vg must be identical on all calling processes; its entries may have the ranges $(0\dots np-1)$ or $(1\dots np)$ according to the value of flag. The size $mg$ may be specified via the optional argument mg; the default is to use the entire vector vg, thus having mg=size(vg). @@ -330,7 +330,7 @@ An integer value; 0 means no error has been detected. vl(1:nl) assigned to the current process; thus, the global problem size $mg$ is given by the range of the aggregate of the individual vectors vl specified in the calling processes. The size may be specified via the optional @@ -339,7 +339,7 @@ An integer value; 0 means no error has been detected. If globalcheck=.true. the subroutine will check how many times each entry in the global index space $(1\dots mg)$ is specified in the input lists vl, thus allowing for the presence of overlap in the input, and checking for ``orphan'' @@ -353,10 +353,10 @@ An integer value; 0 means no error has been detected. the result is a generalized row-block distribution in which each process $I$ gets assigned a consecutive chunk of $N_I=nl$ global indices.
    diff --git a/docs/html/node45.html b/docs/html/node45.html index abd75d73..6fe167d7 100644 --- a/docs/html/node45.html +++ b/docs/html/node45.html @@ -96,7 +96,7 @@ Intent: in.
    Specified as: an integer array of length $nz$.
    ja
    @@ -110,7 +110,7 @@ Intent: in.
    Specified as: an integer array of length $nz$. diff --git a/docs/html/node49.html b/docs/html/node49.html index 047adc26..889b1110 100644 --- a/docs/html/node49.html +++ b/docs/html/node49.html @@ -104,7 +104,7 @@ Intent: in.
    Specified as: an integer value $nl\ge 0$.
    extype
    diff --git a/docs/html/node5.html b/docs/html/node5.html index 108ea7f1..bfd23993 100644 --- a/docs/html/node5.html +++ b/docs/html/node5.html @@ -147,6 +147,24 @@ are classified as:
    Each process has its own value(s) independently.
    +To finish our general description, we define a version string with the +constant +

    +
    + + +\begin{displaymath}\verb\vert psb_version_string_\vert\end{displaymath} +
    +
    +

    +whose current value is 3.0.0


    diff --git a/docs/html/node50.html b/docs/html/node50.html index 51992ac5..e4c53864 100644 --- a/docs/html/node50.html +++ b/docs/html/node50.html @@ -131,7 +131,7 @@ An integer value; 0 means no error has been detected.
  • Providing a good estimate for the number of nonzeroes $nnz$ in the assembled matrix may substantially improve performance in the matrix build phase, as it will reduce or eliminate the need for diff --git a/docs/html/node51.html b/docs/html/node51.html index b81ce0ae..096b5a71 100644 --- a/docs/html/node51.html +++ b/docs/html/node51.html @@ -91,7 +91,7 @@ Intent: in.
    Specified as: an integer array of size $nz$.
    ja
    @@ -105,7 +105,7 @@ Intent: in.
    Specified as: an integer array of size $nz$.
    val
    @@ -119,11 +119,11 @@ Intent: in.
    Specified as: an array of size $nz$. Must be of the same type and kind of the aspk component of the sparse matrix $a$.
    desc_a
    diff --git a/docs/html/node55.html b/docs/html/node55.html index be78de6b..f757a077 100644 --- a/docs/html/node55.html +++ b/docs/html/node55.html @@ -90,10 +90,10 @@ Intent: in.
    Specified as: Integer scalar, default $1$. It is not a valid argument if $x$ is a rank-1 array. @@ -108,10 +108,10 @@ Intent: in.
    Specified as: Integer scalar, default $1$. It is not a valid argument if $x$ is a rank-1 array. diff --git a/docs/html/node56.html b/docs/html/node56.html index 828c4c7f..80bb4c04 100644 --- a/docs/html/node56.html +++ b/docs/html/node56.html @@ -71,7 +71,7 @@ call psb_geins(m, irw, val, x, desc_a, info,dupl)
    m
    Number of rows in $val$ to be inserted.
    Scope:local. @@ -89,11 +89,11 @@ Specified as: an integer value. ALT="$i$"> of $val$ will be inserted into the local row corresponding to the global row index $irw(i)$. Scope:local.
    diff --git a/docs/html/node59.html b/docs/html/node59.html index 7b96b445..d5dbd99c 100644 --- a/docs/html/node59.html +++ b/docs/html/node59.html @@ -75,7 +75,7 @@ call psb_gelp(trans, iperm, x, info) SRC="img1.png" ALT="$A$"> or $A^T$.
    Scope: local @@ -89,7 +89,7 @@ Specified as: a single character with value 'N' for $A$ or 'T' for $A^T$.
    iperm
    diff --git a/docs/html/node6.html b/docs/html/node6.html index 36a83e02..8e27d836 100644 --- a/docs/html/node6.html +++ b/docs/html/node6.html @@ -63,7 +63,7 @@ pattern. As an example, consider a cell-centered finite-volume discretization of the Navier-Stokes equations on a simulation domain; the index space $1\dots n$ is isomorphic to the set of cell centers, whereas the pattern of the associated linear system matrix is isomorphic to the adjacency graph imposed on the discretization mesh @@ -74,7 +74,7 @@ Thus the first order of business is to establish an index space, and this is done with a call to psb_cdall in which we specify the size of the index space $n$ and the allocation of the elements of the index space to the various processes making up the MPI (virtual) parallel machine. @@ -83,7 +83,7 @@ parallel machine. The index space is partitioned among processes, and this creates a mapping from the ``global'' numbering $1\dots n$ to a numbering ``local'' to each process; each process $1\dots n_{\hbox{row}_i}$, each element of which corresponds to a certain element of $1\dots n$. The user does not set explicitly this mapping; when the application needs to indicate to which element of the index space a certain item is related, such as the row and column index of a @@ -108,7 +108,7 @@ library will translate into the appropriate ``local'' numbering.

    For a given index space $1\dots n$ there are many possible associated topologies, i.e. many different discretization stencils; thus the description of the index space is not completed until the user has @@ -125,7 +125,7 @@ defined a set of ``halo'' (or ``ghost'') indices --> $n_{\hbox{row}_i}+1\dots n_{\hbox{col}_i}$, denoting elements of the index space that are not assigned to process x

    If $y$ is not present, then $x$ is overwritten with the translated integer indices. Scope: global
    @@ -142,14 +142,14 @@ Specified as: a rank one integer array.
    y
    If $y$ is present, then $y$ is overwritten with the translated integer indices, and $x$ is left unchanged. Scope: global diff --git a/docs/html/node61.html b/docs/html/node61.html index 1e4c242e..73f74e08 100644 --- a/docs/html/node61.html +++ b/docs/html/node61.html @@ -113,11 +113,11 @@ Specified as: a character variable Ignore, Warning or
    x
    If $y$ is not present, then $x$ is overwritten with the translated integer indices. Scope: global
    @@ -130,14 +130,14 @@ Specified as: a rank one integer array.
    y
    If $y$ is not present, then $y$ is overwritten with the translated integer indices, and $x$ is left unchanged. Scope: global diff --git a/docs/html/node62.html b/docs/html/node62.html index d29986c5..10f08135 100644 --- a/docs/html/node62.html +++ b/docs/html/node62.html @@ -101,7 +101,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
    A logical mask which is true if $x$ is owned by the current process Scope: local
    diff --git a/docs/html/node63.html b/docs/html/node63.html index a587ccf0..dee24c7f 100644 --- a/docs/html/node63.html +++ b/docs/html/node63.html @@ -112,7 +112,7 @@ Specified as: a character variable Ignore, Warning or
    A logical mask which is true for all corresponding entries of $x$ that are owned by the current process Scope: local
    diff --git a/docs/html/node64.html b/docs/html/node64.html index 12e29a4a..4b676ab3 100644 --- a/docs/html/node64.html +++ b/docs/html/node64.html @@ -101,7 +101,7 @@ Specified as: a structured data of type descdatapsb_desc_type.
    A logical mask which is true if $x$ is local to the current process Scope: local
    diff --git a/docs/html/node65.html b/docs/html/node65.html index 00b8c7d9..3f2a6af9 100644 --- a/docs/html/node65.html +++ b/docs/html/node65.html @@ -112,7 +112,7 @@ Specified as: a character variable Ignore, Warning or
    A logical mask which is true for all corresponding entries of $x$ that are local to the current process Scope: local
    diff --git a/docs/html/node68.html b/docs/html/node68.html index da8b0153..94d1ec7b 100644 --- a/docs/html/node68.html +++ b/docs/html/node68.html @@ -80,7 +80,7 @@ Intent: in.
    Specified as: an integer $>0$.
    a
    @@ -116,7 +116,7 @@ Intent: in.
    Specified as: an integer $>0$. When append is true, specifies how many entries in the output vectors are already filled. @@ -131,10 +131,10 @@ Intent: in.
    Specified as: an integer $>0$, default: $row$.

    @@ -209,12 +209,12 @@ An integer value; 0 means no error has been detected.

    1. The output $nz$ is always the size of the output generated by the current call; thus, if append=.true., the total output size will be $nzin+nz$, with the newly extracted coefficients stored in entries nzin+1:nzin+nz of the array arguments;
    2. diff --git a/docs/html/node70.html b/docs/html/node70.html index 770586ae..3307b92c 100644 --- a/docs/html/node70.html +++ b/docs/html/node70.html @@ -73,7 +73,7 @@ call psb_hsort(x,ix,dir,flag)

      These serial routines sort a sequence $X$ into ascending or descending order. The argument meaning is identical for the three calls; the only difference is the algorithm used to accomplish the @@ -99,7 +99,7 @@ Type:optional.
      Specified as: an integer array of (at least) the same size as $X$.

      dir
      @@ -123,7 +123,7 @@ default psb_lsort_up_.
      flag
      Whether to keep the original values in $IX$.
      Type:optional. @@ -155,7 +155,7 @@ Type: Optional An integer array of rank 1, whose entries are moved to the same position as the corresponding entries in $x$.
      @@ -185,24 +185,24 @@ position as the corresponding entries in $flag = psb\_sort\_ovw\_idx\_$ then the entries in $ix(1:n)$ where $n$ is the size of $x$ are initialized to $ix(i) \leftarrow
 i$; thus, upon return from the subroutine, for each index ; thus, upon return from the subroutine, for each SRC="img4.png" ALT="$i$"> we have in $ix(i)$ the position that the item $x(i)$ occupied in the original data sequence; @@ -222,16 +222,16 @@ i$">; thus, upon return from the subroutine, for each --> $flag = psb\_sort\_keep\_idx\_$ the routine will assume that the entries in $ix(:)$ have already been initialized by the user;
    3. The three sorting algorithms have a similar $O(n \log n)$ expected running time; in the average case quicksort will be the fastest and merge-sort the slowest. However note that: @@ -239,7 +239,7 @@ i$">; thus, upon return from the subroutine, for each
      1. The worst case running time for quicksort is $O(n^2)$; the algorithm implemented here follows the well-known median-of-three heuristics, but the worst case may still apply; @@ -247,7 +247,7 @@ i$">; thus, upon return from the subroutine, for each
      2. The worst case running time for merge-sort and heap-sort is $O(n \log n)$ as the average case;
      3. The merge-sort algorithm is implemented to take advantage of diff --git a/docs/html/node72.html b/docs/html/node72.html index bb07470f..7c6989ae 100644 --- a/docs/html/node72.html +++ b/docs/html/node72.html @@ -107,7 +107,7 @@ Intent: in.
        Specified as: an integer array. Default: use the indices $(0\dots np-1)$. @@ -141,7 +141,7 @@ Specified as: an integer variable.
      4. It is an error to specify a value for $np$ greater than the number of processes available in the underlying base parallel environment. diff --git a/docs/html/node73.html b/docs/html/node73.html index f327957b..045249c8 100644 --- a/docs/html/node73.html +++ b/docs/html/node73.html @@ -104,7 +104,7 @@ Specified as: an integer value. $-1 \le iam \le np-1$
        np
        Number of processes in the PSBLAS virtual parallel machine. @@ -128,14 +128,14 @@ Specified as: an integer variable.
        --> $0 \le iam \le np-1$;
      5. If the user has requested on psb_init a number of processes less than the total available in the parallel execution environment, the remaining processes will have on return $iam=-1$; the only call involving icontxt that any such process may execute is to psb_exit. diff --git a/docs/html/node74.html b/docs/html/node74.html index cbb2e6b4..0a28df93 100644 --- a/docs/html/node74.html +++ b/docs/html/node74.html @@ -103,7 +103,7 @@ Specified as: a logical variable, default value: true.
      6. This routine may be called even if a previous call to psb_info has returned with $iam=-1$; indeed, it it is the only routine that may be called with argument icontxt in this situation. diff --git a/docs/html/node76.html b/docs/html/node76.html index 83788f15..35db4e87 100644 --- a/docs/html/node76.html +++ b/docs/html/node76.html @@ -63,7 +63,7 @@ call psb_get_rank(rank, icontxt, id)

        This subroutine returns the MPI rank of the PSBLAS process $id$

        Type:
        @@ -98,7 +98,7 @@ Specified as: an integer value. $0 \le id \le np-1$
        @@ -110,7 +110,7 @@ Specified as: an integer value. $0<= root <= np-1$, default 0 diff --git a/docs/html/node81.html b/docs/html/node81.html index e4f1cc8c..22eb5aa7 100644 --- a/docs/html/node81.html +++ b/docs/html/node81.html @@ -97,7 +97,7 @@ scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all pro
        root
        Process to hold the final sum, or $-1$ to make it available on all processes.
        @@ -112,7 +112,7 @@ Specified as: an integer value $-1<= root <= np-1$, default -1.
        diff --git a/docs/html/node82.html b/docs/html/node82.html index cac0bc37..c6d0e3da 100644 --- a/docs/html/node82.html +++ b/docs/html/node82.html @@ -97,7 +97,7 @@ scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all pro
        root
        Process to hold the final maximum, or $-1$ to make it available on all processes.
        @@ -112,7 +112,7 @@ Specified as: an integer value $-1<= root <= np-1$, default -1.
        diff --git a/docs/html/node83.html b/docs/html/node83.html index 54b7e904..12a35949 100644 --- a/docs/html/node83.html +++ b/docs/html/node83.html @@ -97,7 +97,7 @@ scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all pro
        root
        Process to hold the final value, or $-1$ to make it available on all processes.
        @@ -112,7 +112,7 @@ Specified as: an integer value $-1<= root <= np-1$, default -1.
        diff --git a/docs/html/node84.html b/docs/html/node84.html index 64432425..93fba0f5 100644 --- a/docs/html/node84.html +++ b/docs/html/node84.html @@ -97,7 +97,7 @@ scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all pro
        root
        Process to hold the final value, or $-1$ to make it available on all processes.
        @@ -112,7 +112,7 @@ Specified as: an integer value $-1<= root <= np-1$, default -1.
        diff --git a/docs/html/node85.html b/docs/html/node85.html index 3cd5cf27..0c48444f 100644 --- a/docs/html/node85.html +++ b/docs/html/node85.html @@ -97,7 +97,7 @@ scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all pro
        root
        Process to hold the final value, or $-1$ to make it available on all processes.
        @@ -112,7 +112,7 @@ Specified as: an integer value $-1<= root <= np-1$, default -1.
        diff --git a/docs/html/node86.html b/docs/html/node86.html index da6322be..df6a9dff 100644 --- a/docs/html/node86.html +++ b/docs/html/node86.html @@ -93,7 +93,7 @@ Intent: in. Specified as: an integer, real or complex variable, which may be a scalar, or a rank 1 or 2 array, or a character or logical scalar. Type, kind and rank must agree on sender and receiver process; if $m$ is not specified, size must agree as well. @@ -111,7 +111,7 @@ Specified as: an integer value $0<= dst <= np-1$.
        m
        @@ -128,16 +128,16 @@ Specified as: an integer value $0<= m <= size(dat,1)$.
        When $dat$ is a rank 2 array, specifies the number of rows to be sent independently of the leading dimension $size(dat,1)$; must have the same value on sending and receiving processes. @@ -157,7 +157,7 @@ same value on sending and receiving processes.
      7. This subroutine implies a synchronization, but only between the calling process and the destination process $dst$.
      diff --git a/docs/html/node87.html b/docs/html/node87.html index d8ff3a78..8e302fc3 100644 --- a/docs/html/node87.html +++ b/docs/html/node87.html @@ -94,7 +94,7 @@ Specified as: an integer value $0<= src <= np-1$.
      m
      @@ -111,16 +111,16 @@ Specified as: an integer value $0<= m <= size(dat,1)$.
      When $dat$ is a rank 2 array, specifies the number of rows to be sent independently of the leading dimension $size(dat,1)$; must have the same value on sending and receiving processes. @@ -143,7 +143,7 @@ Intent: inout. Specified as: an integer, real or complex variable, which may be a scalar, or a rank 1 or 2 array, or a character or logical scalar. Type, kind and rank must agree on sender and receiver process; if $m$ is not specified, size must agree as well. @@ -156,7 +156,7 @@ not specified, size must agree as well.
    4. This subroutine implies a synchronization, but only between the calling process and the source process $src$.
    diff --git a/docs/html/node88.html b/docs/html/node88.html index c7f0e539..d25b16c8 100644 --- a/docs/html/node88.html +++ b/docs/html/node88.html @@ -94,7 +94,7 @@ explicitly.

    -

    +
  • $x_i, y$ Subroutine
    Figure 8: The layout of a generic psb_foo @@ -108,7 +108,7 @@ The layout of a generic psb_foo --> \fbox{\TheSbox}
    @@ -124,7 +124,7 @@ called by psb_spasb ... by process 0 (i.e. the root process).

    -

    +
    Figure 9: A sample PSBLAS-2.0 error @@ -138,7 +138,7 @@ A sample PSBLAS-2.0 error --> \fbox{\TheSbox}
    diff --git a/docs/html/node9.html b/docs/html/node9.html index d2434d6b..e9e48c3d 100644 --- a/docs/html/node9.html +++ b/docs/html/node9.html @@ -166,7 +166,7 @@ Specified as: an allocatable integer array of rank one. The Fortran 95 definition for psb_desc_type structures is as follows: -
    +
    Figure 3: The PSBLAS defined data type that @@ -180,7 +180,7 @@ The PSBLAS defined data type that --> \fbox{\TheSbox}
    diff --git a/docs/psblas-3.0.pdf b/docs/psblas-3.0.pdf index f1cc19be..24782a13 100644 --- a/docs/psblas-3.0.pdf +++ b/docs/psblas-3.0.pdf @@ -741,14 +741,14 @@ BT 0 g 0 G [-300(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G - [-1584(5)]TJ + [-1584(6)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG 0 -12.989 Td [(2.4)-1022(Programming)-334(mo)-27(del)]TJ 0 g 0 G [-736(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-500(.)-499(.)-500(.)]TJ 0 g 0 G - [-1584(7)]TJ + [-1584(8)]TJ 0 g 0 G 0 0 1 rg 0 0 1 RG /F27 9.9626 Tf -14.944 -23.641 Td [(3)-925(Data)-383(Struct)-1(ure)1(s)]TJ @@ -3606,7 +3606,7 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 628 0 obj << -/Length 6456 +/Length 5672 >> stream 0 g 0 G @@ -3617,82 +3617,82 @@ BT 0 g 0 G /F8 9.9626 Tf 128.471 0 Td [(handling)-333(halo)-333(and)-334(o)28(v)28(erlap)-333(comm)27(unications;)]TJ 0 g 0 G -/F27 9.9626 Tf -128.471 -20.46 Td [(Data)-383(m)-1(anagemen)32(t)-383(and)-383(auxiliary)-384(routines)]TJ +/F27 9.9626 Tf -128.471 -22.844 Td [(Data)-383(m)-1(anagemen)32(t)-383(and)-383(auxiliary)-384(routines)]TJ 0 g 0 G /F8 9.9626 Tf 210.717 0 Td [(including:)]TJ 0 g 0 G -/F14 9.9626 Tf -173.855 -20.46 Td [(\017)]TJ +/F14 9.9626 Tf -173.855 -22.844 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(P)28(arallel)-333(en)27(vironmen)28(t)-333(managemen)28(t)]TJ 0 g 0 G -/F14 9.9626 Tf -9.963 -16.208 Td [(\017)]TJ +/F14 9.9626 Tf -9.963 -17.399 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(Comm)28(unication)-334(d)1(e)-1(scriptor)1(s)-334(allo)-28(cation;)]TJ 0 g 0 G -/F14 9.9626 Tf -9.963 -16.207 Td [(\017)]TJ +/F14 9.9626 Tf -9.963 -17.4 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(allo)-28(cation;)]TJ 0 g 0 G -/F14 9.9626 Tf -9.963 -16.208 Td [(\017)]TJ +/F14 9.9626 Tf -9.963 -17.4 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(Dense)-333(and)-334(sparse)-333(matrix)-333(build)-334(an)1(d)-334(up)-27(date;)]TJ 0 g 0 G -/F14 9.9626 Tf -9.963 -16.207 Td [(\017)]TJ +/F14 9.9626 Tf -9.963 -17.399 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(Sparse)-333(matrix)-334(and)-333(data)-333(distribution)-333(prepro)-28(cessing.)]TJ 0 g 0 G -/F27 9.9626 Tf -46.825 -20.46 Td [(Preconditioner)-383(routi)-1(n)1(es)]TJ +/F27 9.9626 Tf -46.825 -22.844 Td [(Preconditioner)-383(routi)-1(n)1(es)]TJ 0 g 0 G 0 g 0 G - 0 -20.46 Td [(Iterativ)32(e)-384(metho)-32(ds)]TJ + 0 -22.844 Td [(Iterativ)32(e)-384(metho)-32(ds)]TJ 0 g 0 G -/F8 9.9626 Tf 94.307 0 Td [(a)-333(subset)-334(of)-333(Krylo)28(v)-334(sub)1(s)-1(p)1(ac)-1(e)-333(iterativ)28(e)-333(me)-1(th)1(o)-28(ds)]TJ -94.307 -20.327 Td [(The)-391(follo)27(wing)-391(naming)-391(sc)27(heme)-391(has)-392(b)-27(een)-392(adopted)-391(for)-391(all)-392(the)-391(sym)27(b)-27(ols)-392(in)28(ternally)]TJ 0 -11.955 Td [(de\014ned)-333(in)-334(the)-333(PSBLAS)-333(soft)28(w)27(are)-333(pac)28(k)55(age:)]TJ +/F8 9.9626 Tf 94.307 0 Td [(a)-333(subset)-334(of)-333(Krylo)28(v)-334(sub)1(s)-1(p)1(ac)-1(e)-333(iterativ)28(e)-333(me)-1(th)1(o)-28(ds)]TJ -94.307 -22.114 Td [(The)-391(follo)27(wing)-391(naming)-391(sc)27(heme)-391(has)-392(b)-27(een)-392(adopted)-391(for)-391(all)-392(the)-391(sym)27(b)-27(ols)-392(in)28(ternally)]TJ 0 -11.955 Td [(de\014ned)-333(in)-334(the)-333(PSBLAS)-333(soft)28(w)27(are)-333(pac)28(k)55(age:)]TJ 0 g 0 G -/F14 9.9626 Tf 14.944 -20.326 Td [(\017)]TJ +/F14 9.9626 Tf 14.944 -22.115 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(all)-275(the)-275(sym)28(b)-28(ols)-275(\050i.e.)-425(subroutine)-275(names,)-286(data)-275(t)28(yp)-28(es...\051)-425(are)-275(pre\014xed)-275(b)28(y)]TJ/F30 9.9626 Tf 297.883 0 Td [(psb_)]TJ 0 g 0 G -/F14 9.9626 Tf -307.846 -20.46 Td [(\017)]TJ +/F14 9.9626 Tf -307.846 -22.844 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(all)-333(the)-334(data)-333(t)28(yp)-28(e)-333(names)-334(are)-333(su\016xed)-333(b)27(y)]TJ/F30 9.9626 Tf 173.378 0 Td [(_type)]TJ 0 g 0 G -/F14 9.9626 Tf -183.341 -20.46 Td [(\017)]TJ +/F14 9.9626 Tf -183.341 -22.843 Td [(\017)]TJ 0 g 0 G /F8 9.9626 Tf 9.963 0 Td [(all)-333(the)-334(constan)28(t)-333(v)55(alues)-333(are)-333(su\016xed)-334(b)28(y)]TJ/F30 9.9626 Tf 167.622 0 Td [(_)]TJ 0 g 0 G -/F14 9.9626 Tf -177.585 -20.46 Td [(\017)]TJ +/F14 9.9626 Tf -177.585 -22.844 Td [(\017)]TJ 0 g 0 G -/F8 9.9626 Tf 9.963 0 Td [(all)-473(the)-474(subroutine)-473(names)-474(follo)28(w)-474(th)1(e)-474(rule)]TJ/F30 9.9626 Tf 186.5 0 Td [(psb_xxname)]TJ/F8 9.9626 Tf 57.021 0 Td [(where)]TJ/F30 9.9626 Tf 30.205 0 Td [(xx)]TJ/F8 9.9626 Tf 15.178 0 Td [(can)-473(b)-28(e)]TJ -288.904 -11.955 Td [(either:)]TJ +/F8 9.9626 Tf 9.963 0 Td [(all)-473(the)-474(subroutine)-473(names)-474(follo)28(w)-474(th)1(e)-474(rule)]TJ/F30 9.9626 Tf 186.5 0 Td [(psb_xxname)]TJ/F8 9.9626 Tf 57.021 0 Td [(where)]TJ/F30 9.9626 Tf 30.205 0 Td [(xx)]TJ/F8 9.9626 Tf 15.178 0 Td [(can)-473(b)-28(e)]TJ -288.904 -11.956 Td [(either:)]TJ 0 g 0 G -/F27 9.9626 Tf 11.208 -20.46 Td [({)]TJ +/F27 9.9626 Tf 11.208 -22.843 Td [({)]TJ 0 g 0 G /F30 9.9626 Tf 10.71 0 Td [(ge)]TJ/F8 9.9626 Tf 10.46 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(dense)-333(data,)]TJ 0 g 0 G -/F27 9.9626 Tf -21.17 -16.208 Td [({)]TJ +/F27 9.9626 Tf -21.17 -17.4 Td [({)]TJ 0 g 0 G /F30 9.9626 Tf 10.71 0 Td [(sp)]TJ/F8 9.9626 Tf 10.46 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(sparse)-333(data,)]TJ 0 g 0 G -/F27 9.9626 Tf -21.17 -16.207 Td [({)]TJ +/F27 9.9626 Tf -21.17 -17.4 Td [({)]TJ 0 g 0 G /F30 9.9626 Tf 10.71 0 Td [(cd)]TJ/F8 9.9626 Tf 10.46 0 Td [(:)-444(the)-334(routine)-333(is)-333(related)-334(to)-333(comm)28(unication)-334(descriptor)-333(\050see)]TJ 0 0 1 rg 0 0 1 RG [-333(3)]TJ 0 g 0 G - [(\051.)]TJ -32.378 -20.46 Td [(F)83(or)-275(example)-276(the)]TJ/F30 9.9626 Tf 72.33 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ/F30 9.9626 Tf 5.628 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 49.818 0 Td [(and)]TJ/F30 9.9626 Tf 18.797 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.818 0 Td [(p)-28(erform)-275(the)-276(same)]TJ -243.464 -11.955 Td [(action)-343(\050see)]TJ + [(\051.)]TJ -32.378 -22.843 Td [(F)83(or)-275(example)-276(the)]TJ/F30 9.9626 Tf 72.33 0 Td [(psb_geins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)]TJ/F30 9.9626 Tf 5.628 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 49.818 0 Td [(and)]TJ/F30 9.9626 Tf 18.797 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.818 0 Td [(p)-28(erform)-275(the)-276(same)]TJ -243.464 -11.956 Td [(action)-343(\050see)]TJ 0 0 1 rg 0 0 1 RG [-343(6)]TJ 0 g 0 G - [(\051)-343(on)-342(dense)-343(matrices,)-345(s)-1(p)1(arse)-343(matrices)-343(and)-343(comm)28(unication)-343(de-)]TJ 0 -11.956 Td [(scriptors)-357(resp)-28(ectiv)28(ely)83(.)-514(In)27(terface)-356(o)27(v)28(erloading)-357(allo)28(ws)-357(the)-357(u)1(s)-1(age)-356(of)-357(the)-357(same)]TJ 0 -11.955 Td [(subroutine)-333(in)28(terfaces)-334(for)-333(b)-28(oth)-333(real)-333(and)-334(complex)-333(data.)]TJ -24.907 -20.326 Td [(In)-320(the)-320(desc)-1(r)1(iption)-321(of)-320(the)-320(subroutines,)-323(argumen)28(ts)-320(or)-320(argumen)27(t)-320(en)28(tries)-320(are)-320(clas)-1(si-)]TJ 0 -11.955 Td [(\014ed)-333(as:)]TJ + [(\051)-343(on)-342(dense)-343(matrices,)-345(s)-1(p)1(arse)-343(matrices)-343(and)-343(comm)28(unication)-343(de-)]TJ 0 -11.955 Td [(scriptors)-357(resp)-28(ectiv)28(ely)83(.)-514(In)27(terface)-356(o)27(v)28(erloading)-357(allo)28(ws)-357(the)-357(u)1(s)-1(age)-356(of)-357(the)-357(same)]TJ 0 -11.955 Td [(subroutine)-333(in)28(terfaces)-334(for)-333(b)-28(oth)-333(real)-333(and)-334(complex)-333(data.)]TJ -24.907 -22.114 Td [(In)-320(the)-320(desc)-1(r)1(iption)-321(of)-320(the)-320(subroutines,)-323(argumen)28(ts)-320(or)-320(argumen)27(t)-320(en)28(tries)-320(are)-320(clas)-1(si-)]TJ 0 -11.955 Td [(\014ed)-333(as:)]TJ 0 g 0 G -/F27 9.9626 Tf 0 -20.327 Td [(global)]TJ +/F27 9.9626 Tf 0 -22.115 Td [(global)]TJ 0 g 0 G /F8 9.9626 Tf 34.738 0 Td [(F)83(or)-228(input)-228(argumen)28(ts,)-250(th)1(e)-229(v)56(alue)-229(m)28(ust)-228(b)-28(e)-228(the)-228(same)-229(on)-228(all)-228(pro)-28(cesses)-229(par)1(tic)-1(i)1(-)]TJ -9.831 -11.955 Td [(pating)-252(in)-253(the)-253(subroutin)1(e)-253(call;)-280(for)-252(output)-253(argumen)28(ts)-252(the)-253(v)56(alue)-253(is)-253(guaran)28(teed)]TJ 0 -11.955 Td [(to)-333(b)-28(e)-333(the)-334(same.)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -20.46 Td [(lo)-32(cal)]TJ +/F27 9.9626 Tf -24.907 -22.844 Td [(lo)-32(cal)]TJ 0 g 0 G -/F8 9.9626 Tf 28.055 0 Td [(Eac)28(h)-333(pro)-28(cess)-334(has)-333(its)-333(o)27(wn)-333(v)56(alue\050s\051)-334(indep)-27(enden)27(tly)84(.)]TJ/F16 11.9552 Tf -28.055 -28.598 Td [(2.3)-1125(Application)-375(structure)]TJ/F8 9.9626 Tf 0 -18.638 Td [(The)-274(main)-275(underlyi)1(ng)-275(principle)-274(of)-274(the)-275(P)1(SBLAS)-275(library)-274(is)-274(that)-274(the)-275(library)-274(ob)-55(jects)]TJ 0 -11.955 Td [(are)-311(created)-311(and)-311(exist)-312(with)-311(reference)-311(to)-311(a)-311(discretized)-311(space)-311(to)-311(whic)27(h)-311(there)-311(corre-)]TJ 0 -11.955 Td [(sp)-28(onds)-339(an)-340(index)-339(space)-340(and)-340(a)-339(matrix)-340(sparsit)28(y)-339(pattern.)-463(As)-340(an)-340(example,)-341(consider)]TJ 0 -11.955 Td [(a)-355(cell-cen)27(tered)-355(\014nite-v)28(olume)-355(discretization)-356(of)-355(the)-355(Na)28(vier-Stok)28(es)-356(equations)-355(on)-355(a)]TJ 0 -11.955 Td [(sim)28(ulation)-371(domain;)-390(the)-371(index)-371(space)-371(1)]TJ/F11 9.9626 Tf 166.004 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 22.959 0 Td [(is)-371(isomorphic)-371(to)-371(the)-371(set)-371(of)-371(cell)-371(cen-)]TJ -188.963 -11.956 Td [(ters,)-388(whereas)-378(the)-377(pattern)-377(of)-377(the)-378(asso)-28(ciated)-377(linear)-377(system)-378(matrix)-377(is)-377(isomorphic)]TJ +/F8 9.9626 Tf 28.055 0 Td [(Eac)28(h)-333(pro)-28(cess)-334(has)-333(its)-333(o)27(wn)-333(v)56(alue\050s\051)-334(indep)-27(enden)27(tly)84(.)]TJ -28.055 -22.114 Td [(T)83(o)-333(\014nish)-333(our)-334(general)-333(description,)-333(w)28(e)-334(de\014ne)-333(a)-333(v)27(ersion)-333(string)-333(with)-334(th)1(e)-334(constan)28(t)]TJ/F30 9.9626 Tf 122.168 -23.377 Td [(psb_version_string_)]TJ/F8 9.9626 Tf -122.168 -23.377 Td [(whose)-333(curren)27(t)-333(v)56(alue)-334(is)]TJ/F30 9.9626 Tf 99.793 0 Td [(3.0.0)]TJ 0 g 0 G - 169.365 -29.887 Td [(5)]TJ +/F8 9.9626 Tf 69.572 -29.888 Td [(5)]TJ 0 g 0 G ET endstream @@ -3708,77 +3708,66 @@ endobj 624 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [406.358 377.154 413.331 389.109] +/Rect [406.358 347.355 413.331 359.31] /Subtype /Link /A << /S /GoTo /D (section.3) >> >> endobj 625 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [173.863 344.739 180.837 356.694] +/Rect [173.863 312.555 180.837 324.511] /Subtype /Link /A << /S /GoTo /D (section.6) >> >> endobj 629 0 obj << /D [627 0 R /XYZ 99.895 740.998 null] >> endobj -26 0 obj << -/D [627 0 R /XYZ 99.895 210.33 null] ->> endobj 626 0 obj << -/Font << /F27 433 0 R /F8 434 0 R /F14 604 0 R /F30 601 0 R /F16 431 0 R /F11 587 0 R >> +/Font << /F27 433 0 R /F8 434 0 R /F14 604 0 R /F30 601 0 R >> /ProcSet [ /PDF /Text ] >> endobj 632 0 obj << -/Length 8533 +/Length 8657 >> stream 0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 150.705 706.129 Td [(to)-278(t)1(he)-278(adjacency)-278(grap)1(h)-278(imp)-28(osed)-277(on)-278(the)-277(discretization)-278(mesh)-277(b)27(y)-277(the)-278(discretization)]TJ 0 -11.955 Td [(stencil.)]TJ 14.944 -12.048 Td [(Th)28(us)-409(the)-408(\014rst)-408(order)-409(of)-408(business)-408(is)-409(to)-408(establish)-409(an)-408(index)-408(space,)-427(and)-409(this)-408(is)]TJ -14.944 -11.955 Td [(done)-371(with)-371(a)-371(call)-371(to)]TJ/F30 9.9626 Tf 87.109 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 50.768 0 Td [(in)-371(whic)28(h)-371(w)28(e)-371(sp)-28(ecify)-371(the)-371(size)-371(of)-371(the)-371(index)-371(space)]TJ/F11 9.9626 Tf -137.877 -11.955 Td [(n)]TJ/F8 9.9626 Tf 9.142 0 Td [(and)-317(the)-318(allo)-28(cation)-317(of)-317(the)-318(elemen)28(ts)-318(of)-317(the)-317(index)-318(space)-317(to)-318(the)-317(v)55(arious)-317(pro)-28(cesses)]TJ -9.142 -11.956 Td [(making)-333(up)-334(th)1(e)-334(MPI)-333(\050virtual\051)-333(parallel)-334(mac)28(hine.)]TJ 14.944 -12.047 Td [(The)-308(index)-309(space)-308(is)-309(parti)1(tioned)-309(among)-308(pro)-28(cesses,)-314(an)1(d)-309(this)-308(creates)-309(a)-308(mapping)]TJ -14.944 -11.956 Td [(from)-249(the)-249(\134global")-249(n)28(um)28(b)-28(ering)-249(1)]TJ/F11 9.9626 Tf 132.852 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.744 0 Td [(to)-249(a)-249(n)28(um)28(b)-28(ering)-249(\134lo)-28(cal")-249(to)-249(eac)28(h)-249(pro)-28(cess;)-277(eac)27(h)]TJ -154.596 -11.955 Td [(pro)-28(cess)]TJ/F11 9.9626 Tf 33.771 0 Td [(i)]TJ/F8 9.9626 Tf 5.794 0 Td [(will)-237(o)28(wn)-237(a)-237(certain)-237(subset)-237(1)]TJ/F11 9.9626 Tf 113.508 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 -1.494 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.801 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.655 2.49 Td [(,)-256(eac)27(h)-237(elemen)28(t)-237(of)-237(whic)28(h)-237(corresp)-28(onds)]TJ -191.793 -11.955 Td [(to)-390(a)-389(certain)-390(elemen)28(t)-390(of)-389(1)]TJ/F11 9.9626 Tf 111.313 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 0 Td [(.)-613(The)-390(user)-389(do)-28(es)-390(not)-389(s)-1(et)-389(explicitly)-390(this)-389(mapping;)]TJ -130.577 -11.955 Td [(when)-392(the)-393(appl)1(ic)-1(ati)1(on)-393(needs)-392(to)-392(indicate)-393(to)-392(whic)28(h)-392(e)-1(lemen)28(t)-392(of)-392(the)-393(index)-392(space)-392(a)]TJ 0 -11.955 Td [(certain)-273(item)-273(is)-273(related,)-285(suc)28(h)-273(as)-273(the)-273(ro)28(w)-273(and)-273(column)-273(index)-273(of)-273(a)-273(matrix)-273(co)-27(e\016c)-1(ien)28(t,)]TJ 0 -11.956 Td [(it)-449(do)-27(es)-449(so)-449(in)-448(the)-449(\134global")-449(n)28(um)28(b)-28(ering,)-477(and)-449(the)-448(library)-449(will)-448(translate)-449(in)28(to)-449(the)]TJ 0 -11.955 Td [(appropriate)-333(\134lo)-28(cal")-333(n)28(um)27(b)-27(ering.)]TJ 14.944 -12.048 Td [(F)83(or)-273(a)-274(giv)28(en)-274(index)-274(space)-273(1)]TJ/F11 9.9626 Tf 109.331 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.99 0 Td [(there)-274(are)-273(m)-1(an)28(y)-273(p)-28(ossible)-274(asso)-28(ciated)-274(top)-27(ologies,)]TJ -146.265 -11.955 Td [(i.e.)-418(man)28(y)-254(di\013eren)27(t)-254(discretization)-254(stencils;)-281(th)28(us)-254(the)-254(description)-254(of)-254(the)-254(index)-255(space)]TJ 0 -11.955 Td [(is)-355(not)-355(completed)-355(un)28(til)-356(th)1(e)-356(user)-355(has)-355(de\014ned)-355(a)-355(sparsit)28(y)-355(pattern,)-361(either)-355(explicitly)]TJ 0 -11.955 Td [(through)]TJ/F30 9.9626 Tf 36.93 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.661 0 Td [(or)-260(implicitly)-259(through)]TJ/F30 9.9626 Tf 92.222 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-420(The)-260(descriptor)-259(is)-260(\014nalized)]TJ -225.886 -11.955 Td [(with)-354(a)-355(call)-354(to)]TJ/F30 9.9626 Tf 62.274 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.603 0 Td [(and)-354(a)-355(sparse)-354(matrix)-354(with)-355(a)-354(call)-354(to)]TJ/F30 9.9626 Tf 153.217 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-508(Af)1(te)-1(r)]TJ/F30 9.9626 Tf -313.167 -11.955 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.443 0 Td [(eac)28(h)-338(pro)-28(cess)]TJ/F11 9.9626 Tf 57.244 0 Td [(i)]TJ/F8 9.9626 Tf 6.803 0 Td [(will)-338(ha)28(v)27(e)-338(de\014ned)-338(a)-338(set)-339(of)-338(\134halo")-338(\050or)-338(\134ghost"\051)-338(indices)]TJ/F11 9.9626 Tf -114.49 -11.956 Td [(n)]TJ/F8 9.9626 Tf 5.98 -1.494 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.802 -0.996 Td [(i)]TJ/F8 9.9626 Tf 5.985 2.49 Td [(+)-234(1)]TJ/F11 9.9626 Tf 16.722 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.263 -3.487 Td [(col)]TJ/F9 4.9813 Tf 12.177 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.654 4.483 Td [(,)-355(denoting)-351(elemen)27(ts)-351(of)-351(th)1(e)-351(index)-351(space)-351(that)-351(are)]TJ/F17 9.9626 Tf 209.596 0 Td [(not)]TJ/F8 9.9626 Tf 18.445 0 Td [(assigned)]TJ -307.624 -11.955 Td [(to)-284(pro)-28(cess)]TJ/F11 9.9626 Tf 45.921 0 Td [(i)]TJ/F8 9.9626 Tf 3.432 0 Td [(;)-300(ho)28(w)27(ev)28(er)-284(the)-284(v)56(ariables)-284(asso)-28(ciated)-283(with)-284(them)-284(are)-284(needed)-284(to)-283(c)-1(omplete)]TJ -49.353 -11.955 Td [(computations)-410(asso)-27(ciated)-410(with)-409(the)-410(sparse)-409(m)-1(atri)1(x)]TJ/F11 9.9626 Tf 216.316 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-429(an)1(d)-410(th)28(us)-410(they)-409(ha)28(v)27(e)-409(to)-410(b)-27(e)]TJ -223.788 -11.955 Td [(fetc)28(hed)-464(from)-464(\050)1(ne)-1(i)1(gh)27(b)-27(ouring\051)-464(pro)-28(cesses.)-835(The)-464(descriptor)-464(of)-463(the)-464(index)-463(space)-464(is)]TJ 0 -11.955 Td [(built)-394(exactly)-394(for)-393(the)-394(purp)-28(ose)-394(of)-394(prop)-27(e)-1(r)1(ly)-394(sequencing)-394(the)-394(comm)28(unication)-394(steps)]TJ 0 -11.956 Td [(required)-333(to)-334(ac)28(hiev)28(e)-333(this)-334(ob)-55(jectiv)28(e)-1(.)]TJ 14.944 -12.047 Td [(A)-306(simple)-306(application)-305(structure)-306(will)-306(w)28(alk)-306(through)-306(the)-306(in)1(dex)-306(space)-306(allo)-28(cation,)]TJ -14.944 -11.956 Td [(matrix/v)28(ector)-334(creation)-333(and)-333(linear)-333(syste)-1(m)-333(solution)-333(as)-334(f)1(o)-1(l)1(lo)27(ws:)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(2.3)-1125(Application)-375(structure)]TJ/F8 9.9626 Tf 0 -18.787 Td [(The)-274(main)-275(und)1(e)-1(r)1(lying)-275(principle)-274(of)-274(the)-274(PSBLAS)-275(librar)1(y)-275(is)-274(that)-274(the)-275(library)-274(ob)-55(jects)]TJ 0 -11.955 Td [(are)-311(created)-311(and)-311(exist)-311(with)-312(r)1(e)-1(f)1(e)-1(rence)-311(to)-311(a)-311(discretized)-311(space)-311(to)-311(whic)27(h)-311(there)-311(corre-)]TJ 0 -11.955 Td [(sp)-28(onds)-339(an)-340(index)-339(space)-340(and)-339(a)-340(matrix)-340(sparsit)28(y)-339(pattern.)-463(As)-340(an)-340(example,)-341(consider)]TJ 0 -11.955 Td [(a)-355(cell-cen)27(tered)-355(\014nite-v)28(olume)-355(discretization)-356(of)-355(the)-355(Na)28(vier-Stok)28(es)-356(equations)-355(on)-355(a)]TJ 0 -11.955 Td [(sim)28(ulation)-371(domain;)-390(the)-371(index)-371(space)-371(1)]TJ/F11 9.9626 Tf 166.003 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 22.959 0 Td [(is)-371(isomorphic)-371(to)-371(the)-371(set)-371(of)-371(cell)-371(cen-)]TJ -188.962 -11.956 Td [(ters,)-388(whereas)-378(the)-377(pattern)-377(of)-377(the)-378(asso)-28(ciated)-377(linear)-377(system)-377(m)-1(atr)1(ix)-378(is)-377(isomorphic)]TJ 0 -11.955 Td [(to)-277(the)-278(adjacency)-278(grap)1(h)-278(imp)-28(osed)-277(on)-278(the)-277(discretization)-278(mesh)-277(b)27(y)-277(the)-278(discretization)]TJ 0 -11.955 Td [(stencil.)]TJ 14.944 -12.169 Td [(Th)28(us)-409(the)-408(\014rst)-408(order)-409(of)-408(business)-408(is)-409(to)-408(establish)-409(an)-408(index)-408(space,)-427(and)-409(this)-408(is)]TJ -14.944 -11.955 Td [(done)-371(with)-371(a)-371(call)-371(to)]TJ/F30 9.9626 Tf 87.109 0 Td [(psb_cdall)]TJ/F8 9.9626 Tf 50.768 0 Td [(in)-371(whic)28(h)-371(w)28(e)-371(sp)-28(ecify)-371(the)-371(size)-371(of)-371(the)-371(index)-371(space)]TJ/F11 9.9626 Tf -137.877 -11.955 Td [(n)]TJ/F8 9.9626 Tf 9.142 0 Td [(and)-317(the)-318(allo)-28(cation)-317(of)-317(the)-318(elemen)28(ts)-318(of)-317(the)-317(index)-318(space)-317(to)-318(the)-317(v)55(arious)-317(pro)-28(cesses)]TJ -9.142 -11.955 Td [(making)-333(up)-334(th)1(e)-334(MPI)-333(\050virtual\051)-333(parallel)-334(mac)28(hine.)]TJ 14.944 -12.169 Td [(The)-308(index)-309(space)-308(is)-309(parti)1(tioned)-309(among)-308(pro)-28(cesses,)-314(an)1(d)-309(this)-308(creates)-309(a)-308(mapping)]TJ -14.944 -11.955 Td [(from)-249(the)-249(\134global")-249(n)28(um)28(b)-28(ering)-249(1)]TJ/F11 9.9626 Tf 132.852 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.744 0 Td [(to)-249(a)-249(n)28(um)28(b)-28(ering)-249(\134lo)-28(cal")-249(to)-249(eac)28(h)-249(pro)-28(cess;)-277(eac)27(h)]TJ -154.596 -11.955 Td [(pro)-28(cess)]TJ/F11 9.9626 Tf 33.771 0 Td [(i)]TJ/F8 9.9626 Tf 5.794 0 Td [(will)-237(o)28(wn)-237(a)-237(certain)-237(subset)-237(1)]TJ/F11 9.9626 Tf 113.508 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 -1.495 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.801 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.655 2.491 Td [(,)-256(eac)27(h)-237(elemen)28(t)-237(of)-237(whic)28(h)-237(corresp)-28(onds)]TJ -191.793 -11.955 Td [(to)-390(a)-389(certain)-390(elemen)28(t)-390(of)-389(1)]TJ/F11 9.9626 Tf 111.313 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.264 0 Td [(.)-613(The)-390(user)-389(do)-28(es)-390(not)-389(s)-1(et)-389(explicitly)-390(this)-389(mapping;)]TJ -130.577 -11.956 Td [(when)-392(the)-393(appl)1(ic)-1(ati)1(on)-393(needs)-392(to)-392(indicate)-393(to)-392(whic)28(h)-392(e)-1(lemen)28(t)-392(of)-392(the)-393(index)-392(space)-392(a)]TJ 0 -11.955 Td [(certain)-273(item)-273(is)-273(related,)-285(suc)28(h)-273(as)-273(the)-273(ro)28(w)-273(and)-273(column)-273(index)-273(of)-273(a)-273(matrix)-273(co)-27(e\016c)-1(ien)28(t,)]TJ 0 -11.955 Td [(it)-449(do)-27(es)-449(so)-449(in)-448(the)-449(\134global")-449(n)28(um)28(b)-28(ering,)-477(and)-449(the)-448(library)-449(will)-448(translate)-449(in)28(to)-449(the)]TJ 0 -11.955 Td [(appropriate)-333(\134lo)-28(cal")-333(n)28(um)27(b)-27(ering.)]TJ 14.944 -12.169 Td [(F)83(or)-273(a)-274(giv)28(en)-274(index)-274(space)-273(1)]TJ/F11 9.9626 Tf 109.331 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 21.99 0 Td [(there)-274(are)-273(m)-1(an)28(y)-273(p)-28(ossible)-274(asso)-28(ciated)-274(top)-27(ologies,)]TJ -146.265 -11.955 Td [(i.e.)-418(man)28(y)-254(di\013eren)27(t)-254(discretization)-254(stencils;)-281(th)28(us)-254(the)-254(description)-254(of)-254(the)-254(index)-255(space)]TJ 0 -11.955 Td [(is)-355(not)-355(completed)-355(un)28(til)-356(th)1(e)-356(user)-355(has)-355(de\014ned)-355(a)-355(sparsit)28(y)-355(pattern,)-361(either)-355(explicitly)]TJ 0 -11.955 Td [(through)]TJ/F30 9.9626 Tf 36.93 0 Td [(psb_cdins)]TJ/F8 9.9626 Tf 49.66 0 Td [(or)-260(implicitly)-259(through)]TJ/F30 9.9626 Tf 92.223 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-420(The)-260(descriptor)-259(is)-260(\014nalized)]TJ -225.886 -11.955 Td [(with)-354(a)-355(call)-354(to)]TJ/F30 9.9626 Tf 62.274 0 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.603 0 Td [(and)-354(a)-355(sparse)-354(matrix)-354(with)-355(a)-354(call)-354(to)]TJ/F30 9.9626 Tf 153.217 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 47.073 0 Td [(.)-507(After)]TJ/F30 9.9626 Tf -313.167 -11.956 Td [(psb_cdasb)]TJ/F8 9.9626 Tf 50.443 0 Td [(eac)28(h)-338(pro)-28(cess)]TJ/F11 9.9626 Tf 57.244 0 Td [(i)]TJ/F8 9.9626 Tf 6.802 0 Td [(will)-338(ha)28(v)27(e)-338(de\014ned)-338(a)-338(set)-339(of)-338(\134halo")-338(\050or)-338(\134ghost"\051)-339(i)1(ndices)]TJ/F11 9.9626 Tf -114.489 -11.955 Td [(n)]TJ/F8 9.9626 Tf 5.98 -1.494 Td [(ro)28(w)]TJ/F9 4.9813 Tf 15.802 -0.996 Td [(i)]TJ/F8 9.9626 Tf 5.985 2.49 Td [(+)-234(1)]TJ/F11 9.9626 Tf 16.722 0 Td [(:)-167(:)-166(:)-167(n)]TJ/F8 9.9626 Tf 19.263 -3.487 Td [(col)]TJ/F9 4.9813 Tf 12.176 -0.996 Td [(i)]TJ/F8 9.9626 Tf 3.655 4.483 Td [(,)-355(denoting)-351(elemen)27(ts)-351(of)-351(th)1(e)-351(index)-351(space)-351(that)-351(are)]TJ/F17 9.9626 Tf 209.596 0 Td [(not)]TJ/F8 9.9626 Tf 18.445 0 Td [(assigned)]TJ -307.624 -11.955 Td [(to)-284(pro)-28(cess)]TJ/F11 9.9626 Tf 45.92 0 Td [(i)]TJ/F8 9.9626 Tf 3.433 0 Td [(;)-300(ho)28(w)27(ev)28(er)-284(the)-284(v)56(ariables)-284(asso)-28(ciated)-283(with)-284(them)-284(are)-284(needed)-284(to)-283(c)-1(omplete)]TJ -49.353 -11.955 Td [(computations)-409(a)-1(sso)-27(ciated)-410(with)-409(the)-410(sparse)-409(m)-1(atr)1(ix)]TJ/F11 9.9626 Tf 216.316 0 Td [(A)]TJ/F8 9.9626 Tf 7.472 0 Td [(,)-429(an)1(d)-410(th)28(us)-410(they)-409(ha)28(v)27(e)-409(to)-410(b)-27(e)]TJ -223.788 -11.955 Td [(fetc)28(hed)-464(from)-464(\050)1(neigh)27(b)-27(ouring\051)-464(pro)-28(cesses.)-835(The)-464(descriptor)-464(of)-463(the)-464(index)-463(space)-464(is)]TJ 0 -11.955 Td [(built)-394(exactly)-394(for)-393(the)-394(purp)-28(ose)-394(of)-394(prop)-27(e)-1(r)1(ly)-394(sequencing)-394(the)-394(comm)28(unication)-394(steps)]TJ 0 -11.956 Td [(required)-333(to)-334(ac)28(hiev)28(e)-333(this)-334(ob)-55(jectiv)28(e)-1(.)]TJ 14.944 -12.168 Td [(A)-306(simple)-306(application)-305(structure)-306(will)-306(w)28(alk)-306(through)-306(the)-306(in)1(dex)-306(space)-306(allo)-28(cation,)]TJ -14.944 -11.955 Td [(matrix/v)28(ector)-334(creation)-333(and)-333(linear)-333(syste)-1(m)-333(solution)-333(as)-334(f)1(o)-1(l)1(lo)27(ws:)]TJ 0 g 0 G - 12.177 -20.203 Td [(1.)]TJ + 12.177 -20.566 Td [(1.)]TJ 0 g 0 G [-500(Initialize)-333(parallel)-334(en)28(vironmen)28(t)-333(with)]TJ/F30 9.9626 Tf 169.42 0 Td [(psb_init)]TJ 0 g 0 G -/F8 9.9626 Tf -169.42 -20.296 Td [(2.)]TJ +/F8 9.9626 Tf -169.42 -20.779 Td [(2.)]TJ 0 g 0 G [-500(Initialize)-333(index)-334(space)-333(with)]TJ/F30 9.9626 Tf 130.123 0 Td [(psb_cdall)]TJ 0 g 0 G -/F8 9.9626 Tf -130.123 -20.296 Td [(3.)]TJ +/F8 9.9626 Tf -130.123 -20.78 Td [(3.)]TJ 0 g 0 G [-500(Allo)-28(cate)-301(sparse)-302(matrix)-301(and)-302(dense)-302(v)28(ectors)-301(with)]TJ/F30 9.9626 Tf 215.329 0 Td [(psb_spall)]TJ/F8 9.9626 Tf 50.077 0 Td [(and)]TJ/F30 9.9626 Tf 19.055 0 Td [(psb_geall)]TJ 0 g 0 G -/F8 9.9626 Tf -284.461 -20.296 Td [(4.)]TJ +/F8 9.9626 Tf -284.461 -20.779 Td [(4.)]TJ 0 g 0 G [-500(Lo)-28(op)-411(o)28(v)28(er)-411(all)-411(lo)-28(cal)-411(ro)27(ws,)-430(generate)-411(matrix)-411(and)-411(v)27(ector)-411(en)28(tries,)-431(an)1(d)-412(in)1(s)-1(ert)]TJ 12.73 -11.955 Td [(them)-333(with)]TJ/F30 9.9626 Tf 48.153 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.393 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geins)]TJ 0 g 0 G -/F8 9.9626 Tf -130.648 -20.296 Td [(5.)]TJ +/F8 9.9626 Tf -130.648 -20.779 Td [(5.)]TJ 0 g 0 G [-500(Assem)28(ble)-334(the)-333(v)56(arious)-334(en)28(tities:)]TJ 0 g 0 G - 16.936 -20.296 Td [(\050a\051)]TJ + 16.936 -20.779 Td [(\050a\051)]TJ 0 g 0 G /F30 9.9626 Tf 17.711 0 Td [(psb_cdasb)]TJ 0 g 0 G -/F8 9.9626 Tf -18.264 -16.126 Td [(\050b\051)]TJ +/F8 9.9626 Tf -18.264 -16.368 Td [(\050b\051)]TJ 0 g 0 G /F30 9.9626 Tf 18.264 0 Td [(psb_spasb)]TJ 0 g 0 G -/F8 9.9626 Tf -17.157 -16.125 Td [(\050c\051)]TJ +/F8 9.9626 Tf -17.157 -16.367 Td [(\050c\051)]TJ 0 g 0 G /F30 9.9626 Tf 17.157 0 Td [(psb_geasb)]TJ 0 g 0 G -/F8 9.9626 Tf -34.647 -20.296 Td [(6.)]TJ -0 g 0 G - [-500(Cho)-28(ose)-286(the)-287(preconditioner)-287(to)-286(b)-28(e)-287(u)1(s)-1(ed)-286(with)]TJ/F30 9.9626 Tf 198.375 0 Td [(psb_precset)]TJ/F8 9.9626 Tf 60.389 0 Td [(and)-287(b)1(uild)-287(it)-287(with)]TJ/F30 9.9626 Tf -246.034 -11.955 Td [(psb_precbld)]TJ -0 g 0 G -/F8 9.9626 Tf -12.73 -20.296 Td [(7.)]TJ -0 g 0 G - [-500(Call)-333(the)-334(iterativ)28(e)-333(metho)-28(d)-333(of)-334(c)28(hoice,)-333(e.g.)]TJ/F30 9.9626 Tf 189.595 0 Td [(psb_bicgstab)]TJ/F8 9.9626 Tf -201.772 -20.204 Td [(This)-333(is)-334(the)-333(structure)-333(of)-334(the)-333(sample)-333(program)]TJ/F30 9.9626 Tf 194.327 0 Td [(test/pargen/ppde90.f90)]TJ/F8 9.9626 Tf 115.068 0 Td [(.)]TJ -294.451 -12.047 Td [(F)83(or)-291(a)-292(sim)28(ulation)-292(in)-291(whic)27(h)-291(the)-292(same)-292(discretization)-291(mesh)-292(is)-292(used)-291(o)27(v)28(er)-292(m)28(ultiple)]TJ -14.944 -11.956 Td [(time)-333(steps,)-334(the)-333(follo)28(wing)-334(structure)-333(ma)28(y)-333(b)-28(e)-334(more)-333(appropriate:)]TJ -0 g 0 G - 169.365 -29.888 Td [(6)]TJ +/F8 9.9626 Tf 122.541 -32.378 Td [(6)]TJ 0 g 0 G ET endstream @@ -3793,169 +3782,177 @@ endobj 633 0 obj << /D [631 0 R /XYZ 150.705 740.998 null] >> endobj +26 0 obj << +/D [631 0 R /XYZ 150.705 716.092 null] +>> endobj 635 0 obj << -/D [631 0 R /XYZ 150.705 376.4 null] +/D [631 0 R /XYZ 150.705 285.279 null] >> endobj 636 0 obj << -/D [631 0 R /XYZ 150.705 356.381 null] +/D [631 0 R /XYZ 150.705 264.776 null] >> endobj 637 0 obj << -/D [631 0 R /XYZ 150.705 336.085 null] +/D [631 0 R /XYZ 150.705 243.997 null] >> endobj 638 0 obj << -/D [631 0 R /XYZ 150.705 315.789 null] +/D [631 0 R /XYZ 150.705 223.218 null] >> endobj 639 0 obj << -/D [631 0 R /XYZ 150.705 283.538 null] +/D [631 0 R /XYZ 150.705 190.483 null] >> endobj 640 0 obj << -/D [631 0 R /XYZ 150.705 263.371 null] +/D [631 0 R /XYZ 150.705 169.712 null] >> endobj 641 0 obj << -/D [631 0 R /XYZ 150.705 244.754 null] +/D [631 0 R /XYZ 150.705 150.854 null] >> endobj 642 0 obj << -/D [631 0 R /XYZ 150.705 228.629 null] ->> endobj -643 0 obj << -/D [631 0 R /XYZ 150.705 210.418 null] ->> endobj -644 0 obj << -/D [631 0 R /XYZ 150.705 178.444 null] +/D [631 0 R /XYZ 150.705 134.487 null] >> endobj 630 0 obj << -/Font << /F8 434 0 R /F30 601 0 R /F11 587 0 R /F9 634 0 R /F17 573 0 R >> +/Font << /F16 431 0 R /F8 434 0 R /F11 587 0 R /F30 601 0 R /F9 634 0 R /F17 573 0 R >> /ProcSet [ /PDF /Text ] >> endobj -648 0 obj << -/Length 7629 +645 0 obj << +/Length 6896 >> stream 0 g 0 G 0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 112.072 706.129 Td [(1.)]TJ +/F8 9.9626 Tf 112.072 706.129 Td [(6.)]TJ +0 g 0 G + [-500(Cho)-28(ose)-286(the)-287(preconditioner)-287(to)-286(b)-28(e)-287(used)-286(with)]TJ/F30 9.9626 Tf 198.375 0 Td [(psb_precset)]TJ/F8 9.9626 Tf 60.389 0 Td [(and)-287(bu)1(ild)-287(it)-287(with)]TJ/F30 9.9626 Tf -246.034 -11.955 Td [(psb_precbld)]TJ +0 g 0 G +/F8 9.9626 Tf -12.73 -24.805 Td [(7.)]TJ +0 g 0 G + [-500(Call)-333(the)-334(iterativ)28(e)-333(metho)-28(d)-333(of)-334(c)28(hoice,)-333(e.g.)]TJ/F30 9.9626 Tf 189.595 0 Td [(psb_bicgstab)]TJ/F8 9.9626 Tf -201.772 -23.585 Td [(This)-333(is)-334(the)-333(structure)-333(of)-334(the)-333(sample)-333(program)]TJ/F30 9.9626 Tf 194.328 0 Td [(test/pargen/ppde90.f90)]TJ/F8 9.9626 Tf 115.067 0 Td [(.)]TJ -294.451 -13.175 Td [(F)83(or)-291(a)-292(sim)28(ulation)-292(in)-291(whic)27(h)-291(the)-292(same)-292(discretization)-291(mes)-1(h)-291(is)-292(used)-291(o)27(v)28(er)-292(m)28(ultiple)]TJ -14.944 -11.955 Td [(time)-333(ste)-1(p)1(s)-1(,)-333(the)-333(follo)28(wing)-334(structure)-333(ma)28(y)-333(b)-28(e)-334(more)-333(appropriate:)]TJ +0 g 0 G + 12.177 -23.586 Td [(1.)]TJ 0 g 0 G [-500(Initialize)-333(parallel)-334(en)28(vironmen)28(t)-333(with)]TJ/F30 9.9626 Tf 169.421 0 Td [(psb_init)]TJ 0 g 0 G -/F8 9.9626 Tf -169.421 -20.056 Td [(2.)]TJ +/F8 9.9626 Tf -169.421 -24.804 Td [(2.)]TJ 0 g 0 G [-500(Initialize)-333(index)-334(space)-333(with)]TJ/F30 9.9626 Tf 130.123 0 Td [(psb_cdall)]TJ 0 g 0 G -/F8 9.9626 Tf -130.123 -20.056 Td [(3.)]TJ +/F8 9.9626 Tf -130.123 -24.805 Td [(3.)]TJ 0 g 0 G [-500(Lo)-28(op)-271(o)28(v)27(er)-271(the)-272(top)-27(ology)-272(of)-271(the)-272(discretization)-271(mesh)-272(and)-271(build)-271(the)-272(descriptor)]TJ 12.73 -11.956 Td [(with)]TJ/F30 9.9626 Tf 22.693 0 Td [(psb_cdins)]TJ 0 g 0 G -/F8 9.9626 Tf -35.423 -20.056 Td [(4.)]TJ +/F8 9.9626 Tf -35.423 -24.805 Td [(4.)]TJ 0 g 0 G [-500(Assem)28(ble)-334(the)-333(descriptor)-333(with)]TJ/F30 9.9626 Tf 143.019 0 Td [(psb_cdasb)]TJ 0 g 0 G -/F8 9.9626 Tf -143.019 -20.056 Td [(5.)]TJ +/F8 9.9626 Tf -143.019 -24.804 Td [(5.)]TJ 0 g 0 G [-500(Allo)-28(cate)-222(the)-222(sparse)-223(matrices)-222(and)-222(dense)-222(v)27(ectors)-222(with)]TJ/F30 9.9626 Tf 233.375 0 Td [(psb_spall)]TJ/F8 9.9626 Tf 49.287 0 Td [(and)]TJ/F30 9.9626 Tf 18.265 0 Td [(psb_geall)]TJ 0 g 0 G -/F8 9.9626 Tf -300.927 -20.056 Td [(6.)]TJ +/F8 9.9626 Tf -300.927 -24.805 Td [(6.)]TJ 0 g 0 G [-500(Lo)-28(op)-333(o)28(v)28(e)-1(r)-333(the)-333(time)-334(steps:)]TJ 0 g 0 G - 16.936 -20.056 Td [(\050a\051)]TJ + 16.936 -24.805 Td [(\050a\051)]TJ 0 g 0 G - [-500(If)-340(after)-339(\014rst)-340(time)-339(step,)-341(reinitialize)-340(the)-339(s)-1(p)1(a)-1(r)1(s)-1(e)-339(matrix)-340(with)]TJ/F30 9.9626 Tf 269.988 0 Td [(psb_sprn)]TJ/F8 9.9626 Tf 41.843 0 Td [(;)]TJ -294.119 -11.955 Td [(also)-333(zero)-334(out)-333(the)-333(dense)-334(v)28(ectors;)]TJ + [-500(If)-340(after)-339(\014rst)-340(time)-339(step,)-341(reinitialize)-340(the)-339(s)-1(p)1(a)-1(r)1(s)-1(e)-339(matrix)-340(with)]TJ/F30 9.9626 Tf 269.988 0 Td [(psb_sprn)]TJ/F8 9.9626 Tf 41.843 0 Td [(;)]TJ -294.119 -11.956 Td [(also)-333(zero)-334(out)-333(the)-333(dense)-334(v)28(ectors;)]TJ 0 g 0 G - -18.265 -16.006 Td [(\050b\051)]TJ + -18.265 -18.38 Td [(\050b\051)]TJ 0 g 0 G [-500(Lo)-28(op)-252(o)28(v)27(er)-252(the)-253(mesh,)-268(generate)-253(the)-253(co)-27(e\016cie)-1(n)28(ts)-252(and)-253(insert/up)-27(date)-253(them)]TJ 18.265 -11.955 Td [(with)]TJ/F30 9.9626 Tf 22.693 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 50.394 0 Td [(and)]TJ/F30 9.9626 Tf 19.371 0 Td [(psb_geins)]TJ 0 g 0 G -/F8 9.9626 Tf -109.616 -16.006 Td [(\050c\051)]TJ +/F8 9.9626 Tf -109.616 -18.38 Td [(\050c\051)]TJ 0 g 0 G [-500(Assem)28(ble)-334(with)]TJ/F30 9.9626 Tf 83.686 0 Td [(psb_spasb)]TJ/F8 9.9626 Tf 50.394 0 Td [(and)]TJ/F30 9.9626 Tf 19.372 0 Td [(psb_geasb)]TJ 0 g 0 G -/F8 9.9626 Tf -154.559 -16.005 Td [(\050d\051)]TJ +/F8 9.9626 Tf -154.559 -18.38 Td [(\050d\051)]TJ 0 g 0 G [-500(Cho)-28(ose)-222(and)-222(build)-222(preconditioner)-222(with)]TJ/F30 9.9626 Tf 180.822 0 Td [(psb_precset)]TJ/F8 9.9626 Tf 59.748 0 Td [(and)]TJ/F30 9.9626 Tf 18.265 0 Td [(psb_precbld)]TJ 0 g 0 G -/F8 9.9626 Tf -257.728 -16.006 Td [(\050e\051)]TJ +/F8 9.9626 Tf -257.728 -18.38 Td [(\050e\051)]TJ 0 g 0 G - [-500(Call)-333(the)-334(iterativ)28(e)-333(metho)-28(d)-333(of)-334(c)28(hoice,)-333(e.g.)]TJ/F30 9.9626 Tf 194.023 0 Td [(psb_bicgstab)]TJ/F8 9.9626 Tf -223.69 -20.056 Td [(The)-370(insertion)-370(routines)-370(will)-370(b)-27(e)-370(c)-1(all)1(e)-1(d)-369(as)-370(man)27(y)-370(times)-370(as)-370(needed;)-388(they)-370(only)-370(need)]TJ 0 -11.955 Td [(to)-404(b)-27(e)-404(called)-404(on)-404(the)-403(data)-404(that)-404(is)-403(actually)-404(allo)-28(cated)-403(to)-404(the)-404(curren)28(t)-404(pro)-27(ce)-1(ss,)-421(i.e.)]TJ 0 -11.955 Td [(eac)28(h)-334(pro)-27(cess)-334(generates)-333(its)-334(o)28(wn)-333(data.)]TJ 14.944 -11.988 Td [(In)-326(principle)-326(there)-327(is)-326(no)-326(sp)-28(eci\014c)-326(order)-327(in)-326(the)-326(calls)-327(to)]TJ/F30 9.9626 Tf 225.879 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)-328(nor)-326(is)-326(there)]TJ -287.896 -11.956 Td [(a)-393(requiremen)27(t)-393(to)-393(build)-394(a)-393(matrix)-393(ro)28(w)-394(in)-393(its)-394(en)28(tiret)28(y)-393(b)-28(efore)-393(c)-1(alli)1(ng)-394(the)-393(routine;)]TJ 0 -11.955 Td [(this)-288(allo)28(ws)-288(the)-288(application)-288(programmer)-288(to)-288(w)27(alk)-288(through)-288(the)-288(discretization)-288(mesh)]TJ 0 -11.955 Td [(elemen)28(t)-402(b)28(y)-401(elemen)28(t,)-419(generating)-401(the)-401(main)-401(part)-401(of)-402(a)-401(giv)28(en)-401(matrix)-402(ro)28(w)-401(but)-401(also)]TJ 0 -11.955 Td [(con)28(tributions)-333(to)-334(the)-333(ro)28(ws)-334(corresp)-28(on)1(ding)-334(to)-333(neigh)28(b)-28(ouring)-333(elemen)28(ts)-1(.)]TJ 14.944 -11.988 Td [(F)83(rom)-410(a)-410(functional)-410(p)-28(oin)28(t)-410(of)-410(view)-410(it)-410(is)-410(ev)27(en)-410(p)-27(os)-1(sibl)1(e)-411(to)-410(execute)-410(one)-410(call)-410(for)]TJ -14.944 -11.955 Td [(eac)28(h)-372(nonzero)-372(co)-28(e\016cien)28(t;)-391(ho)27(w)28(ev)28(er)-372(this)-372(w)28(ould)-372(ha)28(v)28(e)-372(a)-372(substan)27(tial)-371(com)-1(p)1(utational)]TJ 0 -11.955 Td [(o)28(v)28(e)-1(r)1(head.)-412(It)-236(is)-236(therefore)-236(advisable)-236(to)-235(pac)27(k)-236(a)-235(certain)-236(amoun)28(t)-236(of)-236(data)-236(in)28(to)-236(eac)28(h)-236(call)]TJ 0 -11.955 Td [(to)-308(the)-307(insertion)-308(routin)1(e)-1(,)-312(sa)28(y)-308(touc)28(hing)-308(on)-307(a)-308(few)-307(tens)-308(of)-307(ro)27(ws;)-316(the)-307(b)-28(est)-308(p)-27(erformng)]TJ 0 -11.956 Td [(v)56(alue)-386(w)28(ould)-385(dep)-28(end)-386(on)-385(b)-28(oth)-385(the)-385(arc)27(hitecture)-385(of)-385(the)-386(computer)-385(b)-28(eing)-385(used)-386(and)]TJ 0 -11.955 Td [(on)-450(the)-450(problem)-450(structure.)-794(A)28(t)-450(the)-450(opp)-27(os)-1(it)1(e)-450(extrem)-1(e,)-479(it)-449(w)27(ould)-449(b)-28(e)-450(p)-28(ossible)-450(to)]TJ 0 -11.955 Td [(generate)-310(the)-311(en)28(tire)-310(part)-310(of)-311(a)-310(co)-28(e\016cien)28(t)-311(matrix)-310(residing)-310(on)-310(a)-311(pro)-27(ces)-1(s)-310(and)-310(pass)-310(it)]TJ 0 -11.955 Td [(in)-309(a)-309(single)-309(call)-309(to)]TJ/F30 9.9626 Tf 76.89 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(;)-317(this,)-314(ho)28(w)28(e)-1(v)28(er,)-314(w)28(ould)-309(en)28(tail)-309(a)-309(doubling)-309(of)-309(memory)]TJ -123.963 -11.955 Td [(o)-28(ccupation,)-333(and)-333(th)27(u)1(s)-334(w)28(ould)-333(b)-28(e)-333(almos)-1(t)-333(alw)28(a)28(ys)-334(far)-333(from)-333(optimal.)]TJ/F16 11.9552 Tf 0 -28.062 Td [(2.4)-1125(Programming)-375(mo)-31(del)]TJ/F8 9.9626 Tf 0 -18.451 Td [(The)-325(PSBLAS)-324(librarary)-325(is)-325(based)-325(on)-324(the)-325(Single)-325(Program)-324(Multiple)-325(Data)-325(\050SPMD\051)]TJ 0 -11.955 Td [(programming)-413(mo)-28(del:)-603(eac)27(h)-413(pro)-27(cess)-413(participating)-413(in)-413(the)-413(computation)-413(p)-28(erforms)]TJ 0 -11.955 Td [(the)-333(same)-334(actions)-333(on)-333(a)-334(c)28(h)28(unk)-334(of)-333(data.)-444(P)28(arallelism)-334(is)-333(th)28(us)-334(data-driv)28(en.)]TJ 14.944 -11.988 Td [(Because)-389(of)-389(this)-389(structure,)-403(man)28(y)-389(subrouti)1(nes)-389(co)-28(ordinate)-389(their)-389(action)-389(across)]TJ -14.944 -11.955 Td [(the)-478(v)56(arious)-478(pro)-28(cesses,)-514(th)28(us)-478(pro)28(viding)-478(an)-477(implicit)-478(sync)28(hronization)-478(p)-28(oin)28(t,)-514(and)]TJ 0 -11.955 Td [(therefore)]TJ/F17 9.9626 Tf 43.026 0 Td [(must)]TJ/F8 9.9626 Tf 26.326 0 Td [(b)-28(e)-452(called)-452(sim)28(ultaneously)-452(b)28(y)-452(all)-452(pro)-28(cesses)-453(p)1(articipating)-452(in)-452(the)]TJ -69.352 -11.955 Td [(computation.)-597(This)-384(is)-384(certainly)-384(true)-385(for)-384(the)-384(data)-384(allo)-28(cation)-384(and)-384(assem)28(bly)-385(rou-)]TJ 0 -11.955 Td [(tines,)-333(for)-334(all)-333(the)-333(computational)-334(r)1(outines)-334(and)-333(for)-333(some)-334(of)-333(the)-333(to)-28(ols)-334(rou)1(tines)-1(.)]TJ 14.944 -11.988 Td [(Ho)28(w)27(ev)28(er)-490(there)-490(are)-491(man)28(y)-490(cases)-490(where)-491(no)-490(sync)28(hronization,)-529(and)-491(ind)1(e)-1(ed)-490(no)]TJ -14.944 -11.956 Td [(comm)28(unication)-459(among)-458(pro)-28(cesses,)-489(is)-459(implied;)-521(for)-458(instance,)-489(all)-459(the)-458(routines)-458(in)]TJ + [-500(Call)-333(the)-334(iterativ)28(e)-333(metho)-28(d)-333(of)-334(c)28(hoice,)-333(e.g.)]TJ/F30 9.9626 Tf 194.023 0 Td [(psb_bicgstab)]TJ/F8 9.9626 Tf -223.69 -24.805 Td [(The)-370(insertion)-370(routines)-370(will)-370(b)-27(e)-370(c)-1(all)1(e)-1(d)-369(as)-370(man)27(y)-370(times)-370(as)-370(needed;)-388(they)-370(only)-370(need)]TJ 0 -11.955 Td [(to)-404(b)-27(e)-404(called)-404(on)-404(the)-403(data)-404(that)-404(is)-403(actually)-404(allo)-28(cated)-403(to)-404(the)-404(curren)28(t)-404(pro)-27(ce)-1(ss,)-421(i.e.)]TJ 0 -11.955 Td [(eac)28(h)-334(pro)-27(cess)-334(generates)-333(its)-334(o)28(wn)-333(data.)]TJ 14.944 -13.175 Td [(In)-326(principle)-326(there)-327(is)-326(no)-326(sp)-28(eci\014c)-326(order)-327(in)-326(the)-326(calls)-327(to)]TJ/F30 9.9626 Tf 225.879 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(,)-328(nor)-326(is)-326(there)]TJ -287.896 -11.955 Td [(a)-393(requiremen)27(t)-393(to)-393(build)-394(a)-393(matrix)-393(ro)28(w)-394(in)-393(its)-394(en)28(tiret)28(y)-393(b)-28(efore)-393(c)-1(alli)1(ng)-394(the)-393(routine;)]TJ 0 -11.956 Td [(this)-288(allo)28(ws)-288(the)-288(application)-288(programmer)-288(to)-288(w)27(alk)-288(through)-288(the)-288(discretization)-288(mesh)]TJ 0 -11.955 Td [(elemen)28(t)-402(b)28(y)-401(elemen)28(t,)-419(generating)-401(the)-401(main)-401(part)-401(of)-402(a)-401(giv)28(en)-401(matrix)-402(ro)28(w)-401(but)-401(also)]TJ 0 -11.955 Td [(con)28(tributions)-333(to)-334(the)-333(ro)28(ws)-334(corresp)-28(on)1(ding)-334(to)-333(neigh)28(b)-28(ouring)-333(elemen)28(ts)-1(.)]TJ 14.944 -13.175 Td [(F)83(rom)-410(a)-410(functional)-410(p)-28(oin)28(t)-410(of)-410(view)-410(it)-410(is)-410(ev)27(en)-410(p)-27(os)-1(sibl)1(e)-411(to)-410(execute)-410(one)-410(call)-410(for)]TJ -14.944 -11.955 Td [(eac)28(h)-372(nonzero)-372(co)-28(e\016cien)28(t;)-391(ho)27(w)28(ev)28(er)-372(this)-372(w)28(ould)-372(ha)28(v)28(e)-372(a)-372(substan)27(tial)-371(com)-1(p)1(utational)]TJ 0 -11.955 Td [(o)28(v)28(e)-1(r)1(head.)-412(It)-236(is)-236(therefore)-236(advisable)-236(to)-235(pac)27(k)-236(a)-235(certain)-236(amoun)28(t)-236(of)-236(data)-236(in)28(to)-236(eac)28(h)-236(call)]TJ 0 -11.956 Td [(to)-308(the)-307(insertion)-308(routin)1(e)-1(,)-312(sa)28(y)-308(touc)28(hing)-308(on)-307(a)-308(few)-307(tens)-308(of)-307(ro)27(ws;)-316(the)-307(b)-28(est)-308(p)-27(erformng)]TJ 0 -11.955 Td [(v)56(alue)-386(w)28(ould)-385(dep)-28(end)-386(on)-385(b)-28(oth)-385(the)-385(arc)27(hitecture)-385(of)-385(the)-386(computer)-385(b)-28(eing)-385(used)-386(and)]TJ 0 -11.955 Td [(on)-450(the)-450(problem)-450(structure.)-794(A)28(t)-450(the)-450(opp)-27(os)-1(it)1(e)-450(extrem)-1(e,)-479(it)-449(w)27(ould)-449(b)-28(e)-450(p)-28(ossible)-450(to)]TJ 0 -11.955 Td [(generate)-310(the)-311(en)28(tire)-310(part)-310(of)-311(a)-310(co)-28(e\016cien)28(t)-311(matrix)-310(residing)-310(on)-310(a)-311(pro)-27(ces)-1(s)-310(and)-310(pass)-310(it)]TJ 0 -11.955 Td [(in)-309(a)-309(single)-309(call)-309(to)]TJ/F30 9.9626 Tf 76.89 0 Td [(psb_spins)]TJ/F8 9.9626 Tf 47.073 0 Td [(;)-317(this,)-314(ho)28(w)28(e)-1(v)28(er,)-314(w)28(ould)-309(en)28(tail)-309(a)-309(doubling)-309(of)-309(memory)]TJ -123.963 -11.955 Td [(o)-28(ccupation,)-333(and)-333(th)27(u)1(s)-334(w)28(ould)-333(b)-28(e)-333(almos)-1(t)-333(alw)28(a)28(ys)-334(far)-333(from)-333(optimal.)]TJ 0 g 0 G - 169.365 -29.887 Td [(7)]TJ + 169.365 -29.888 Td [(7)]TJ 0 g 0 G ET endstream endobj -647 0 obj << +644 0 obj << /Type /Page -/Contents 648 0 R -/Resources 646 0 R +/Contents 645 0 R +/Resources 643 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R +/Parent 660 0 R +>> endobj +646 0 obj << +/D [644 0 R /XYZ 99.895 740.998 null] +>> endobj +647 0 obj << +/D [644 0 R /XYZ 99.895 716.092 null] +>> endobj +648 0 obj << +/D [644 0 R /XYZ 99.895 685.535 null] >> endobj 649 0 obj << -/D [647 0 R /XYZ 99.895 740.998 null] +/D [644 0 R /XYZ 99.895 613.511 null] >> endobj 650 0 obj << -/D [647 0 R /XYZ 99.895 716.092 null] +/D [644 0 R /XYZ 99.895 588.43 null] >> endobj 651 0 obj << -/D [647 0 R /XYZ 99.895 699.864 null] +/D [644 0 R /XYZ 99.895 563.625 null] >> endobj 652 0 obj << -/D [647 0 R /XYZ 99.895 679.808 null] +/D [644 0 R /XYZ 99.895 526.865 null] >> endobj 653 0 obj << -/D [647 0 R /XYZ 99.895 647.797 null] +/D [644 0 R /XYZ 99.895 502.06 null] >> endobj 654 0 obj << -/D [647 0 R /XYZ 99.895 627.741 null] +/D [644 0 R /XYZ 99.895 477.255 null] >> endobj 655 0 obj << -/D [647 0 R /XYZ 99.895 607.685 null] +/D [644 0 R /XYZ 99.895 449.514 null] >> endobj 656 0 obj << -/D [647 0 R /XYZ 99.895 585.88 null] +/D [644 0 R /XYZ 99.895 419.179 null] >> endobj 657 0 obj << -/D [647 0 R /XYZ 99.895 557.919 null] +/D [644 0 R /XYZ 99.895 388.567 null] >> endobj 658 0 obj << -/D [647 0 R /XYZ 99.895 529.682 null] +/D [644 0 R /XYZ 99.895 369.91 null] >> endobj 659 0 obj << -/D [647 0 R /XYZ 99.895 513.399 null] +/D [644 0 R /XYZ 99.895 351.53 null] >> endobj -660 0 obj << -/D [647 0 R /XYZ 99.895 497.394 null] ->> endobj -30 0 obj << -/D [647 0 R /XYZ 99.895 258.481 null] ->> endobj -646 0 obj << -/Font << /F8 434 0 R /F30 601 0 R /F16 431 0 R /F17 573 0 R >> +643 0 obj << +/Font << /F8 434 0 R /F30 601 0 R >> /ProcSet [ /PDF /Text ] >> endobj 664 0 obj << -/Length 1716 +/Length 3504 >> stream 0 g 0 G 0 g 0 G BT -/F8 9.9626 Tf 150.705 706.129 Td [(sec.)]TJ +/F16 11.9552 Tf 150.705 706.129 Td [(2.4)-1125(Programming)-375(mo)-31(del)]TJ/F8 9.9626 Tf 0 -18.389 Td [(The)-325(PSBLAS)-324(librarary)-325(is)-325(based)-324(o)-1(n)-324(the)-325(Single)-325(Program)-324(Multiple)-325(Data)-325(\050SPMD\051)]TJ 0 -11.956 Td [(programming)-413(mo)-28(del:)-603(eac)27(h)-413(pro)-27(cess)-413(participating)-413(in)-413(the)-413(computation)-413(p)-28(erforms)]TJ 0 -11.955 Td [(the)-333(same)-334(actions)-333(on)-333(a)-334(c)28(h)28(unk)-333(of)-334(data.)-444(P)28(arallelism)-334(is)-333(th)28(us)-334(data-d)1(riv)27(en.)]TJ 14.944 -11.955 Td [(Because)-389(of)-389(this)-389(structure,)-402(m)-1(an)28(y)-389(subrou)1(tines)-389(co)-28(ordinate)-389(their)-389(action)-389(across)]TJ -14.944 -11.955 Td [(the)-478(v)56(arious)-478(pro)-28(cesses,)-514(th)28(us)-478(pro)28(viding)-477(a)-1(n)-477(implicit)-478(sync)28(hronization)-478(p)-28(oin)28(t,)-514(and)]TJ 0 -11.955 Td [(therefore)]TJ/F17 9.9626 Tf 43.026 0 Td [(must)]TJ/F8 9.9626 Tf 26.326 0 Td [(b)-28(e)-452(called)-452(sim)28(ultaneously)-452(b)28(y)-452(all)-452(pro)-28(cesses)-452(participating)-452(in)-452(the)]TJ -69.352 -11.956 Td [(computation.)-597(This)-384(is)-384(certainly)-384(true)-385(for)-384(the)-384(data)-384(allo)-28(cation)-384(and)-384(assem)28(bly)-385(rou)1(-)]TJ 0 -11.955 Td [(tines,)-333(for)-334(all)-333(the)-333(computational)-333(routines)-334(and)-333(for)-333(some)-334(of)-333(the)-333(to)-28(ols)-334(r)1(outines.)]TJ 14.944 -11.955 Td [(Ho)28(w)28(e)-1(v)28(er)-490(there)-490(are)-490(m)-1(an)28(y)-490(cases)-490(where)-491(no)-490(sync)28(hronization,)-529(and)-491(in)1(dee)-1(d)-490(no)]TJ -14.944 -11.955 Td [(comm)28(unication)-459(among)-458(pro)-28(cesses,)-489(is)-459(implied;)-521(f)1(or)-459(instance,)-489(all)-459(the)-458(routines)-458(in)]TJ 0 -11.955 Td [(sec.)]TJ 0 0 1 rg 0 0 1 RG [-421(3.4)]TJ 0 g 0 G - [-421(are)-421(only)-420(acting)-421(on)-421(the)-421(lo)-28(cal)-421(data)-420(structures,)-443(and)-421(th)28(us)-421(ma)28(y)-421(b)-28(e)-421(called)]TJ 0 -11.955 Td [(indep)-28(enden)28(tly)84(.)-917(The)-491(most)-491(imp)-27(ortan)27(t)-490(case)-491(is)-491(that)-491(of)-490(the)-491(co)-28(e\016cien)28(t)-491(insertion)]TJ 0 -11.955 Td [(routines:)-409(since)-263(the)-263(n)27(um)28(b)-28(er)-263(of)-263(co)-27(e\016c)-1(i)1(e)-1(n)28(ts)-263(in)-263(the)-263(sparse)-263(and)-263(dense)-263(matrices)-263(v)55(aries)]TJ 0 -11.956 Td [(among)-323(the)-322(pro)-28(cessors,)-325(and)-323(since)-322(the)-323(user)-323(is)-322(free)-323(to)-323(c)28(ho)-28(ose)-322(an)-323(arbitrary)-323(ord)1(e)-1(r)-322(in)]TJ 0 -11.955 Td [(builiding)-333(the)-333(matrix)-334(en)28(tries,)-333(these)-334(routines)-333(cannot)-333(imply)-334(a)-333(sync)28(hronization.)]TJ 14.944 -11.955 Td [(Throughout)-333(this)-333(use)-1(r)1('s)-334(guide)-333(eac)28(h)-334(subroutine)-333(will)-333(b)-28(e)-333(clearly)-334(indicated)-333(as:)]TJ + [-421(are)-421(only)-420(acting)-421(on)-421(the)-421(lo)-28(cal)-421(data)-420(structures,)-443(and)-421(th)28(us)-421(ma)28(y)-421(b)-28(e)-421(called)]TJ 0 -11.955 Td [(indep)-28(enden)28(tly)84(.)-917(The)-491(most)-491(imp)-27(ortan)27(t)-490(case)-491(is)-491(that)-491(of)-490(the)-491(co)-28(e\016cien)28(t)-491(insertion)]TJ 0 -11.956 Td [(routines:)-409(since)-263(the)-263(n)27(um)28(b)-28(er)-263(of)-263(co)-27(e\016c)-1(i)1(e)-1(n)28(ts)-263(in)-263(the)-263(sparse)-263(and)-263(dense)-263(matrices)-263(v)55(aries)]TJ 0 -11.955 Td [(among)-323(the)-322(pro)-28(cessors,)-325(and)-323(since)-322(the)-323(user)-323(is)-322(free)-323(to)-323(c)28(ho)-28(ose)-322(an)-323(arbitrary)-323(ord)1(e)-1(r)-322(in)]TJ 0 -11.955 Td [(builiding)-333(the)-333(matrix)-334(en)28(tries,)-333(these)-334(routines)-333(cannot)-333(imply)-334(a)-333(sync)28(hronization.)]TJ 14.944 -11.955 Td [(Throughout)-333(this)-333(use)-1(r)1('s)-334(guide)-333(eac)28(h)-334(subroutine)-333(will)-333(b)-28(e)-333(clearly)-334(indicated)-333(as:)]TJ 0 g 0 G /F27 9.9626 Tf -14.944 -19.925 Td [(Sync)32(hronous:)]TJ 0 g 0 G -/F8 9.9626 Tf 71.504 0 Td [(m)28(ust)-359(b)-28(e)-359(called)-359(sim)28(ultaneously)-359(b)28(y)-359(all)-359(the)-359(pro)-28(cesses)-359(in)-359(the)-359(rele-)]TJ -46.597 -11.955 Td [(v)56(an)27(t)-333(comm)28(unication)-333(con)27(text;)]TJ +/F8 9.9626 Tf 71.504 0 Td [(m)28(ust)-359(b)-28(e)-359(called)-359(sim)28(ultaneously)-359(b)28(y)-359(all)-359(the)-359(pro)-28(cesses)-359(in)-359(the)-359(rele-)]TJ -46.597 -11.956 Td [(v)56(an)27(t)-333(comm)28(unication)-333(c)-1(on)28(text;)]TJ 0 g 0 G -/F27 9.9626 Tf -24.907 -19.926 Td [(Async)32(hronous:)]TJ +/F27 9.9626 Tf -24.907 -19.925 Td [(Async)32(hronous:)]TJ 0 g 0 G /F8 9.9626 Tf 78.32 0 Td [(ma)28(y)-334(b)-27(e)-334(called)-333(in)-333(a)-334(totally)-333(indep)-28(enden)28(t)-333(manner.)]TJ 0 g 0 G - 91.045 -504.109 Td [(8)]TJ + 91.045 -366.168 Td [(8)]TJ 0 g 0 G ET endstream @@ -3965,21 +3962,24 @@ endobj /Contents 664 0 R /Resources 662 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R -/Annots [ 645 0 R ] +/Parent 660 0 R +/Annots [ 661 0 R ] >> endobj -645 0 obj << +661 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [169.454 703.195 184.177 714.044] +/Rect [169.454 565.254 184.177 576.103] /Subtype /Link /A << /S /GoTo /D (subsection.3.4) >> >> endobj 665 0 obj << /D [663 0 R /XYZ 150.705 740.998 null] >> endobj +30 0 obj << +/D [663 0 R /XYZ 150.705 716.092 null] +>> endobj 662 0 obj << -/Font << /F8 434 0 R /F27 433 0 R >> +/Font << /F16 431 0 R /F8 434 0 R /F17 573 0 R /F27 433 0 R >> /ProcSet [ /PDF /Text ] >> endobj 670 0 obj << @@ -4110,7 +4110,7 @@ endobj /Contents 670 0 R /Resources 668 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R +/Parent 660 0 R /Annots [ 666 0 R 667 0 R ] >> endobj 666 0 obj << @@ -4320,7 +4320,7 @@ endobj /Contents 680 0 R /Resources 678 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R +/Parent 660 0 R >> endobj 681 0 obj << /D [679 0 R /XYZ 150.705 740.998 null] @@ -4593,7 +4593,7 @@ endobj /Contents 694 0 R /Resources 692 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R +/Parent 660 0 R /Annots [ 691 0 R ] >> endobj 691 0 obj << @@ -4749,7 +4749,7 @@ endobj /Contents 700 0 R /Resources 698 0 R /MediaBox [0 0 595.276 841.89] -/Parent 661 0 R +/Parent 660 0 R /Annots [ 697 0 R ] >> endobj 697 0 obj << @@ -19041,11 +19041,11 @@ endobj /Parent 1485 0 R /Kids [571 0 R 585 0 R 598 0 R 614 0 R 627 0 R 631 0 R] >> endobj -661 0 obj << +660 0 obj << /Type /Pages /Count 6 /Parent 1485 0 R -/Kids [647 0 R 663 0 R 669 0 R 679 0 R 693 0 R 699 0 R] +/Kids [644 0 R 663 0 R 669 0 R 679 0 R 693 0 R 699 0 R] >> endobj 711 0 obj << /Type /Pages @@ -19171,7 +19171,7 @@ endobj /Type /Pages /Count 36 /Parent 1489 0 R -/Kids [435 0 R 574 0 R 661 0 R 711 0 R 751 0 R 793 0 R] +/Kids [435 0 R 574 0 R 660 0 R 711 0 R 751 0 R 793 0 R] >> endobj 1486 0 obj << /Type /Pages @@ -19951,7 +19951,7 @@ endobj /Count -11 >> endobj 1491 0 obj << -/Names [(Doc-Start) 430 0 R (Hfootnote.1) 606 0 R (Hfootnote.2) 608 0 R (Hfootnote.3) 1383 0 R (Item.1) 635 0 R (Item.10) 644 0 R] +/Names [(Doc-Start) 430 0 R (Hfootnote.1) 606 0 R (Hfootnote.2) 608 0 R (Hfootnote.3) 1383 0 R (Item.1) 635 0 R (Item.10) 648 0 R] /Limits [(Doc-Start) (Item.10)] >> endobj 1492 0 obj << @@ -19959,19 +19959,19 @@ endobj /Limits [(Item.100) (Item.105)] >> endobj 1493 0 obj << -/Names [(Item.106) 1291 0 R (Item.107) 1296 0 R (Item.108) 1297 0 R (Item.109) 1302 0 R (Item.11) 650 0 R (Item.110) 1303 0 R] +/Names [(Item.106) 1291 0 R (Item.107) 1296 0 R (Item.108) 1297 0 R (Item.109) 1302 0 R (Item.11) 649 0 R (Item.110) 1303 0 R] /Limits [(Item.106) (Item.110)] >> endobj 1494 0 obj << -/Names [(Item.111) 1309 0 R (Item.112) 1314 0 R (Item.12) 651 0 R (Item.13) 652 0 R (Item.14) 653 0 R (Item.15) 654 0 R] +/Names [(Item.111) 1309 0 R (Item.112) 1314 0 R (Item.12) 650 0 R (Item.13) 651 0 R (Item.14) 652 0 R (Item.15) 653 0 R] /Limits [(Item.111) (Item.15)] >> endobj 1495 0 obj << -/Names [(Item.16) 655 0 R (Item.17) 656 0 R (Item.18) 657 0 R (Item.19) 658 0 R (Item.2) 636 0 R (Item.20) 659 0 R] +/Names [(Item.16) 654 0 R (Item.17) 655 0 R (Item.18) 656 0 R (Item.19) 657 0 R (Item.2) 636 0 R (Item.20) 658 0 R] /Limits [(Item.16) (Item.20)] >> endobj 1496 0 obj << -/Names [(Item.21) 660 0 R (Item.22) 673 0 R (Item.23) 674 0 R (Item.24) 675 0 R (Item.25) 676 0 R (Item.26) 677 0 R] +/Names [(Item.21) 659 0 R (Item.22) 673 0 R (Item.23) 674 0 R (Item.24) 675 0 R (Item.25) 676 0 R (Item.26) 677 0 R] /Limits [(Item.21) (Item.26)] >> endobj 1497 0 obj << @@ -20019,7 +20019,7 @@ endobj /Limits [(Item.81) (Item.86)] >> endobj 1508 0 obj << -/Names [(Item.87) 1218 0 R (Item.88) 1219 0 R (Item.89) 1220 0 R (Item.9) 643 0 R (Item.90) 1221 0 R (Item.91) 1222 0 R] +/Names [(Item.87) 1218 0 R (Item.88) 1219 0 R (Item.89) 1220 0 R (Item.9) 647 0 R (Item.90) 1221 0 R (Item.91) 1222 0 R] /Limits [(Item.87) (Item.91)] >> endobj 1509 0 obj << @@ -20107,7 +20107,7 @@ endobj /Limits [(page.6) (page.64)] >> endobj 1530 0 obj << -/Names [(page.65) 1078 0 R (page.66) 1084 0 R (page.67) 1093 0 R (page.68) 1100 0 R (page.69) 1106 0 R (page.7) 649 0 R] +/Names [(page.65) 1078 0 R (page.66) 1084 0 R (page.67) 1093 0 R (page.68) 1100 0 R (page.69) 1106 0 R (page.7) 646 0 R] /Limits [(page.65) (page.7)] >> endobj 1531 0 obj << @@ -20291,8 +20291,8 @@ endobj >> endobj 1575 0 obj << /Title (Parallel Sparse BLAS V. 3.0-beta) /Subject (Parallel Sparse Basic Linear Algebra Subroutines) /Keywords (Computer Science Linear Algebra Fluid Dynamics Parallel Linux MPI PSBLAS Iterative Solvers Preconditioners) /Creator (pdfLaTeX) /Producer ($Id: userguide.tex 4222 2010-05-13 12:08:31Z sfilippo $) /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.3)/Keywords() -/CreationDate (D:20100622145615+02'00') -/ModDate (D:20100622145615+02'00') +/CreationDate (D:20110325174559+01'00') +/ModDate (D:20110325174559+01'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX using libpoppler, Version 3.141592-1.40.3-2.2 (Web2C 7.5.6) kpathsea version 3.5.6) >> endobj @@ -20305,423 +20305,423 @@ xref 0000000000 00000 f 0000000015 00000 n 0000010143 00000 n -0000899908 00000 n +0000900289 00000 n 0000000058 00000 n 0000000105 00000 n 0000084075 00000 n -0000899836 00000 n +0000900217 00000 n 0000000150 00000 n 0000000183 00000 n 0000092008 00000 n -0000899713 00000 n +0000900094 00000 n 0000000229 00000 n 0000000266 00000 n 0000102238 00000 n -0000899639 00000 n +0000900020 00000 n 0000000317 00000 n 0000000358 00000 n 0000110485 00000 n -0000899552 00000 n +0000899933 00000 n 0000000409 00000 n 0000000448 00000 n -0000117737 00000 n -0000899465 00000 n +0000125959 00000 n +0000899846 00000 n 0000000499 00000 n 0000000543 00000 n -0000135983 00000 n -0000899391 00000 n +0000138580 00000 n +0000899772 00000 n 0000000594 00000 n 0000000634 00000 n -0000146725 00000 n -0000899267 00000 n +0000147106 00000 n +0000899648 00000 n 0000000680 00000 n 0000000716 00000 n -0000146785 00000 n -0000899156 00000 n +0000147166 00000 n +0000899537 00000 n 0000000767 00000 n 0000000815 00000 n -0000163187 00000 n -0000899095 00000 n +0000163568 00000 n +0000899476 00000 n 0000000871 00000 n 0000000911 00000 n -0000163247 00000 n -0000898971 00000 n +0000163628 00000 n +0000899352 00000 n 0000000962 00000 n 0000001013 00000 n -0000186937 00000 n -0000898910 00000 n +0000187318 00000 n +0000899291 00000 n 0000001069 00000 n 0000001109 00000 n -0000186998 00000 n -0000898823 00000 n +0000187379 00000 n +0000899204 00000 n 0000001160 00000 n 0000001212 00000 n -0000187120 00000 n -0000898711 00000 n +0000187501 00000 n +0000899092 00000 n 0000001263 00000 n 0000001315 00000 n -0000187181 00000 n -0000898637 00000 n +0000187562 00000 n +0000899018 00000 n 0000001362 00000 n 0000001415 00000 n -0000191862 00000 n -0000898550 00000 n +0000192243 00000 n +0000898931 00000 n 0000001462 00000 n 0000001515 00000 n -0000199125 00000 n -0000898463 00000 n +0000199506 00000 n +0000898844 00000 n 0000001562 00000 n 0000001616 00000 n -0000199186 00000 n -0000898376 00000 n +0000199567 00000 n +0000898757 00000 n 0000001663 00000 n 0000001717 00000 n -0000204796 00000 n -0000898289 00000 n +0000205177 00000 n +0000898670 00000 n 0000001764 00000 n 0000001810 00000 n -0000204856 00000 n -0000898202 00000 n +0000205237 00000 n +0000898583 00000 n 0000001857 00000 n 0000001914 00000 n -0000204916 00000 n -0000898115 00000 n +0000205297 00000 n +0000898496 00000 n 0000001961 00000 n 0000002018 00000 n -0000211817 00000 n -0000898028 00000 n +0000212198 00000 n +0000898409 00000 n 0000002065 00000 n 0000002110 00000 n -0000211878 00000 n -0000897941 00000 n +0000212259 00000 n +0000898322 00000 n 0000002158 00000 n 0000002202 00000 n -0000211939 00000 n -0000897866 00000 n +0000212320 00000 n +0000898247 00000 n 0000002250 00000 n 0000002297 00000 n -0000213510 00000 n -0000897736 00000 n +0000213891 00000 n +0000898117 00000 n 0000002344 00000 n 0000002388 00000 n -0000221664 00000 n -0000897657 00000 n +0000222045 00000 n +0000898038 00000 n 0000002437 00000 n 0000002471 00000 n -0000231716 00000 n -0000897564 00000 n +0000232097 00000 n +0000897945 00000 n 0000002520 00000 n 0000002552 00000 n -0000241291 00000 n -0000897471 00000 n +0000241672 00000 n +0000897852 00000 n 0000002601 00000 n 0000002634 00000 n -0000249606 00000 n -0000897378 00000 n +0000249987 00000 n +0000897759 00000 n 0000002683 00000 n 0000002716 00000 n -0000256255 00000 n -0000897285 00000 n +0000256636 00000 n +0000897666 00000 n 0000002765 00000 n 0000002799 00000 n -0000263268 00000 n -0000897192 00000 n +0000263649 00000 n +0000897573 00000 n 0000002848 00000 n 0000002881 00000 n -0000270979 00000 n -0000897099 00000 n +0000271360 00000 n +0000897480 00000 n 0000002930 00000 n 0000002964 00000 n -0000279037 00000 n -0000897006 00000 n +0000279418 00000 n +0000897387 00000 n 0000003013 00000 n 0000003047 00000 n -0000285522 00000 n -0000896913 00000 n +0000285903 00000 n +0000897294 00000 n 0000003096 00000 n 0000003130 00000 n -0000291835 00000 n -0000896820 00000 n +0000292216 00000 n +0000897201 00000 n 0000003179 00000 n 0000003212 00000 n -0000300358 00000 n -0000896727 00000 n +0000300739 00000 n +0000897108 00000 n 0000003261 00000 n 0000003292 00000 n -0000317592 00000 n -0000896648 00000 n +0000317973 00000 n +0000897029 00000 n 0000003341 00000 n 0000003372 00000 n -0000332248 00000 n -0000896518 00000 n +0000332629 00000 n +0000896899 00000 n 0000003419 00000 n 0000003463 00000 n -0000339144 00000 n -0000896439 00000 n +0000339525 00000 n +0000896820 00000 n 0000003512 00000 n 0000003543 00000 n -0000359466 00000 n -0000896346 00000 n +0000359847 00000 n +0000896727 00000 n 0000003592 00000 n 0000003623 00000 n -0000383808 00000 n -0000896253 00000 n +0000384189 00000 n +0000896634 00000 n 0000003672 00000 n 0000003705 00000 n -0000393391 00000 n -0000896174 00000 n +0000393772 00000 n +0000896555 00000 n 0000003754 00000 n 0000003788 00000 n -0000402670 00000 n -0000896043 00000 n +0000403051 00000 n +0000896424 00000 n 0000003835 00000 n 0000003881 00000 n -0000402732 00000 n -0000895964 00000 n +0000403113 00000 n +0000896345 00000 n 0000003930 00000 n 0000003962 00000 n -0000427462 00000 n -0000895871 00000 n +0000427843 00000 n +0000896252 00000 n 0000004011 00000 n 0000004043 00000 n -0000431847 00000 n -0000895778 00000 n +0000432228 00000 n +0000896159 00000 n 0000004092 00000 n 0000004124 00000 n -0000435938 00000 n -0000895685 00000 n +0000436319 00000 n +0000896066 00000 n 0000004173 00000 n 0000004205 00000 n -0000438772 00000 n -0000895592 00000 n +0000439153 00000 n +0000895973 00000 n 0000004254 00000 n 0000004287 00000 n -0000445435 00000 n -0000895499 00000 n +0000445816 00000 n +0000895880 00000 n 0000004336 00000 n 0000004371 00000 n -0000453143 00000 n -0000895406 00000 n +0000453524 00000 n +0000895787 00000 n 0000004420 00000 n 0000004452 00000 n -0000460930 00000 n -0000895313 00000 n +0000461311 00000 n +0000895694 00000 n 0000004501 00000 n 0000004533 00000 n -0000471434 00000 n -0000895220 00000 n +0000471815 00000 n +0000895601 00000 n 0000004582 00000 n 0000004614 00000 n -0000477439 00000 n -0000895127 00000 n +0000477820 00000 n +0000895508 00000 n 0000004663 00000 n 0000004696 00000 n -0000482163 00000 n -0000895034 00000 n +0000482544 00000 n +0000895415 00000 n 0000004745 00000 n 0000004776 00000 n -0000487421 00000 n -0000894941 00000 n +0000487802 00000 n +0000895322 00000 n 0000004825 00000 n 0000004857 00000 n -0000494201 00000 n -0000894848 00000 n +0000494582 00000 n +0000895229 00000 n 0000004906 00000 n 0000004938 00000 n -0000498694 00000 n -0000894755 00000 n +0000499075 00000 n +0000895136 00000 n 0000004987 00000 n 0000005019 00000 n -0000502166 00000 n -0000894662 00000 n +0000502547 00000 n +0000895043 00000 n 0000005068 00000 n 0000005101 00000 n -0000506023 00000 n -0000894569 00000 n +0000506404 00000 n +0000894950 00000 n 0000005150 00000 n 0000005181 00000 n -0000513180 00000 n -0000894476 00000 n +0000513561 00000 n +0000894857 00000 n 0000005230 00000 n 0000005274 00000 n -0000520670 00000 n -0000894383 00000 n +0000521051 00000 n +0000894764 00000 n 0000005323 00000 n 0000005367 00000 n -0000524546 00000 n -0000894290 00000 n +0000524927 00000 n +0000894671 00000 n 0000005416 00000 n 0000005454 00000 n -0000530187 00000 n -0000894197 00000 n +0000530568 00000 n +0000894578 00000 n 0000005503 00000 n 0000005544 00000 n -0000534094 00000 n -0000894104 00000 n +0000534475 00000 n +0000894485 00000 n 0000005593 00000 n 0000005631 00000 n -0000539719 00000 n -0000894011 00000 n +0000540100 00000 n +0000894392 00000 n 0000005680 00000 n 0000005721 00000 n -0000544189 00000 n -0000893918 00000 n +0000544570 00000 n +0000894299 00000 n 0000005770 00000 n 0000005812 00000 n -0000548562 00000 n -0000893825 00000 n +0000548943 00000 n +0000894206 00000 n 0000005861 00000 n 0000005902 00000 n -0000555067 00000 n -0000893732 00000 n +0000555448 00000 n +0000894113 00000 n 0000005951 00000 n 0000005990 00000 n -0000564375 00000 n -0000893639 00000 n +0000564756 00000 n +0000894020 00000 n 0000006039 00000 n 0000006072 00000 n -0000570561 00000 n -0000893560 00000 n +0000570942 00000 n +0000893941 00000 n 0000006121 00000 n 0000006158 00000 n -0000579139 00000 n -0000893429 00000 n +0000579520 00000 n +0000893810 00000 n 0000006205 00000 n 0000006256 00000 n -0000585106 00000 n -0000893350 00000 n +0000585487 00000 n +0000893731 00000 n 0000006305 00000 n 0000006336 00000 n -0000590325 00000 n -0000893257 00000 n +0000590706 00000 n +0000893638 00000 n 0000006385 00000 n 0000006416 00000 n -0000595250 00000 n -0000893164 00000 n +0000595631 00000 n +0000893545 00000 n 0000006465 00000 n 0000006496 00000 n -0000598047 00000 n -0000893071 00000 n +0000598428 00000 n +0000893452 00000 n 0000006545 00000 n 0000006586 00000 n -0000601490 00000 n -0000892978 00000 n +0000601871 00000 n +0000893359 00000 n 0000006635 00000 n 0000006673 00000 n -0000603115 00000 n -0000892885 00000 n +0000603496 00000 n +0000893266 00000 n 0000006722 00000 n 0000006754 00000 n -0000605007 00000 n -0000892792 00000 n +0000605388 00000 n +0000893173 00000 n 0000006803 00000 n 0000006837 00000 n -0000606785 00000 n -0000892699 00000 n +0000607166 00000 n +0000893080 00000 n 0000006886 00000 n 0000006918 00000 n -0000611736 00000 n -0000892606 00000 n +0000612117 00000 n +0000892987 00000 n 0000006967 00000 n 0000006999 00000 n -0000617327 00000 n -0000892513 00000 n +0000617708 00000 n +0000892894 00000 n 0000007048 00000 n 0000007078 00000 n -0000623083 00000 n -0000892420 00000 n +0000623464 00000 n +0000892801 00000 n 0000007127 00000 n 0000007157 00000 n -0000628816 00000 n -0000892327 00000 n +0000629197 00000 n +0000892708 00000 n 0000007206 00000 n 0000007236 00000 n -0000634664 00000 n -0000892234 00000 n +0000635045 00000 n +0000892615 00000 n 0000007285 00000 n 0000007315 00000 n -0000640485 00000 n -0000892141 00000 n +0000640866 00000 n +0000892522 00000 n 0000007364 00000 n 0000007394 00000 n -0000646425 00000 n -0000892048 00000 n +0000646806 00000 n +0000892429 00000 n 0000007443 00000 n 0000007473 00000 n -0000652285 00000 n -0000891969 00000 n +0000652666 00000 n +0000892350 00000 n 0000007522 00000 n 0000007552 00000 n -0000659529 00000 n -0000891839 00000 n +0000659910 00000 n +0000892220 00000 n 0000007599 00000 n 0000007635 00000 n -0000667226 00000 n -0000891760 00000 n +0000667607 00000 n +0000892141 00000 n 0000007684 00000 n 0000007718 00000 n -0000668796 00000 n -0000891667 00000 n +0000669177 00000 n +0000892048 00000 n 0000007767 00000 n 0000007799 00000 n -0000670465 00000 n -0000891574 00000 n +0000670846 00000 n +0000891955 00000 n 0000007848 00000 n 0000007894 00000 n -0000672595 00000 n -0000891495 00000 n +0000672976 00000 n +0000891876 00000 n 0000007943 00000 n 0000007986 00000 n -0000673541 00000 n -0000891365 00000 n +0000673922 00000 n +0000891746 00000 n 0000008033 00000 n 0000008064 00000 n -0000678561 00000 n -0000891261 00000 n +0000678942 00000 n +0000891642 00000 n 0000008113 00000 n 0000008143 00000 n -0000684019 00000 n -0000891182 00000 n +0000684400 00000 n +0000891563 00000 n 0000008192 00000 n 0000008223 00000 n -0000687844 00000 n -0000891089 00000 n +0000688225 00000 n +0000891470 00000 n 0000008272 00000 n 0000008309 00000 n -0000691527 00000 n -0000890996 00000 n +0000691908 00000 n +0000891377 00000 n 0000008358 00000 n 0000008396 00000 n -0000695828 00000 n -0000890917 00000 n +0000696209 00000 n +0000891298 00000 n 0000008445 00000 n 0000008483 00000 n -0000697160 00000 n -0000890787 00000 n +0000697541 00000 n +0000891168 00000 n 0000008531 00000 n 0000008577 00000 n -0000702559 00000 n -0000890708 00000 n +0000702940 00000 n +0000891089 00000 n 0000008626 00000 n 0000008661 00000 n -0000708465 00000 n -0000890615 00000 n +0000708846 00000 n +0000890996 00000 n 0000008710 00000 n 0000008744 00000 n -0000714218 00000 n -0000890522 00000 n +0000714599 00000 n +0000890903 00000 n 0000008793 00000 n 0000008828 00000 n -0000716806 00000 n -0000890443 00000 n +0000717187 00000 n +0000890824 00000 n 0000008877 00000 n 0000008913 00000 n -0000717824 00000 n -0000890327 00000 n +0000718205 00000 n +0000890708 00000 n 0000008961 00000 n 0000009001 00000 n -0000725772 00000 n -0000890262 00000 n +0000726153 00000 n +0000890643 00000 n 0000009050 00000 n 0000009076 00000 n 0000009902 00000 n @@ -20729,11 +20729,11 @@ xref 0000009128 00000 n 0000010021 00000 n 0000010082 00000 n -0000884669 00000 n -0000886405 00000 n -0000884523 00000 n -0000885252 00000 n -0000886842 00000 n +0000885050 00000 n +0000886786 00000 n +0000884904 00000 n +0000885633 00000 n +0000887223 00000 n 0000010629 00000 n 0000010448 00000 n 0000010312 00000 n @@ -20871,27 +20871,27 @@ xref 0000084135 00000 n 0000082814 00000 n 0000074675 00000 n -0000886259 00000 n -0000886960 00000 n -0000744868 00000 n -0000744805 00000 n -0000742669 00000 n -0000742731 00000 n -0000742981 00000 n -0000742484 00000 n -0000742546 00000 n +0000886640 00000 n +0000887341 00000 n +0000745249 00000 n +0000745186 00000 n +0000743050 00000 n +0000743112 00000 n +0000743362 00000 n +0000742865 00000 n +0000742927 00000 n 0000091856 00000 n 0000089892 00000 n 0000092131 00000 n 0000089737 00000 n 0000084232 00000 n -0000884815 00000 n +0000885196 00000 n 0000092069 00000 n 0000091290 00000 n 0000091409 00000 n 0000091456 00000 n 0000091530 00000 n -0000742607 00000 n +0000742988 00000 n 0000101717 00000 n 0000101870 00000 n 0000102024 00000 n @@ -20899,15 +20899,15 @@ xref 0000101562 00000 n 0000092256 00000 n 0000102177 00000 n -0000886551 00000 n -0000885540 00000 n -0000885107 00000 n -0000885971 00000 n -0000885397 00000 n +0000886932 00000 n +0000885921 00000 n +0000885488 00000 n +0000886352 00000 n +0000885778 00000 n 0000102298 00000 n -0000885683 00000 n +0000886064 00000 n 0000102360 00000 n -0000742919 00000 n +0000743300 00000 n 0000110055 00000 n 0000110208 00000 n 0000108084 00000 n @@ -20920,965 +20920,965 @@ xref 0000109912 00000 n 0000109959 00000 n 0000110033 00000 n -0000742422 00000 n -0000742361 00000 n -0000117372 00000 n -0000117524 00000 n -0000117796 00000 n -0000117225 00000 n +0000742803 00000 n +0000742742 00000 n +0000116588 00000 n +0000116739 00000 n +0000116952 00000 n +0000116441 00000 n 0000110710 00000 n -0000117676 00000 n -0000127323 00000 n -0000126524 00000 n -0000117932 00000 n -0000126643 00000 n -0000884961 00000 n -0000126705 00000 n -0000126765 00000 n -0000126827 00000 n -0000126889 00000 n -0000126951 00000 n -0000127013 00000 n -0000127075 00000 n -0000127137 00000 n -0000127199 00000 n -0000127261 00000 n -0000138067 00000 n -0000136043 00000 n -0000135133 00000 n -0000127445 00000 n -0000135252 00000 n -0000135313 00000 n -0000135374 00000 n -0000135435 00000 n -0000135496 00000 n -0000135557 00000 n -0000135618 00000 n -0000135679 00000 n -0000135739 00000 n -0000135800 00000 n -0000135861 00000 n -0000135922 00000 n +0000116891 00000 n +0000126516 00000 n +0000125778 00000 n +0000117062 00000 n +0000125897 00000 n +0000885342 00000 n +0000126020 00000 n +0000126082 00000 n +0000126144 00000 n +0000126206 00000 n +0000126268 00000 n +0000126330 00000 n +0000126392 00000 n +0000126454 00000 n +0000134575 00000 n +0000133606 00000 n +0000126651 00000 n +0000133725 00000 n +0000133786 00000 n +0000133847 00000 n +0000133908 00000 n +0000133969 00000 n +0000134029 00000 n +0000134090 00000 n +0000134151 00000 n +0000134211 00000 n +0000134272 00000 n +0000134333 00000 n +0000134394 00000 n +0000134455 00000 n +0000134515 00000 n +0000887459 00000 n +0000138361 00000 n +0000138641 00000 n +0000138222 00000 n +0000134659 00000 n +0000138518 00000 n +0000146737 00000 n +0000146888 00000 n +0000147593 00000 n +0000146590 00000 n +0000138751 00000 n +0000147045 00000 n +0000147226 00000 n +0000147288 00000 n +0000147349 00000 n +0000147410 00000 n +0000147471 00000 n +0000147532 00000 n +0000154669 00000 n +0000153931 00000 n +0000147703 00000 n +0000154050 00000 n +0000154112 00000 n +0000154174 00000 n +0000154235 00000 n +0000154297 00000 n +0000154359 00000 n +0000154421 00000 n +0000154483 00000 n +0000154545 00000 n +0000154607 00000 n +0000163351 00000 n +0000163750 00000 n +0000163212 00000 n +0000154779 00000 n +0000163507 00000 n +0000163688 00000 n +0000172799 00000 n +0000173260 00000 n +0000172660 00000 n +0000163860 00000 n +0000172950 00000 n +0000173012 00000 n +0000173074 00000 n +0000173136 00000 n +0000173198 00000 n +0000177267 00000 n +0000177329 00000 n +0000177087 00000 n +0000173383 00000 n +0000177206 00000 n +0000887577 00000 n +0000186804 00000 n +0000186955 00000 n +0000187104 00000 n +0000187623 00000 n +0000186649 00000 n +0000177426 00000 n +0000187256 00000 n +0000187439 00000 n +0000192181 00000 n +0000198845 00000 n +0000192303 00000 n +0000192001 00000 n +0000187759 00000 n +0000192120 00000 n 0000887078 00000 n -0000138286 00000 n -0000137928 00000 n -0000136153 00000 n -0000138224 00000 n -0000146356 00000 n -0000146507 00000 n -0000147212 00000 n -0000146209 00000 n -0000138370 00000 n -0000146664 00000 n -0000146845 00000 n -0000146907 00000 n -0000146968 00000 n -0000147029 00000 n -0000147090 00000 n -0000147151 00000 n -0000154288 00000 n -0000153550 00000 n -0000147322 00000 n -0000153669 00000 n -0000153731 00000 n -0000153793 00000 n -0000153854 00000 n -0000153916 00000 n -0000153978 00000 n -0000154040 00000 n -0000154102 00000 n -0000154164 00000 n -0000154226 00000 n -0000162970 00000 n -0000163369 00000 n -0000162831 00000 n -0000154398 00000 n -0000163126 00000 n -0000163307 00000 n -0000172418 00000 n -0000172879 00000 n -0000172279 00000 n -0000163479 00000 n -0000172569 00000 n -0000172631 00000 n -0000172693 00000 n -0000172755 00000 n -0000172817 00000 n -0000176886 00000 n -0000176948 00000 n -0000176706 00000 n -0000173002 00000 n -0000176825 00000 n -0000887196 00000 n -0000186423 00000 n -0000186574 00000 n -0000186723 00000 n -0000187242 00000 n -0000186268 00000 n -0000177045 00000 n -0000186875 00000 n -0000187058 00000 n -0000191800 00000 n -0000198464 00000 n -0000191922 00000 n -0000191620 00000 n -0000187378 00000 n -0000191739 00000 n -0000886697 00000 n -0000198614 00000 n -0000198763 00000 n -0000198913 00000 n -0000204584 00000 n -0000199247 00000 n -0000198301 00000 n -0000192032 00000 n -0000199063 00000 n -0000211312 00000 n -0000204976 00000 n -0000204445 00000 n -0000199370 00000 n -0000204735 00000 n -0000211460 00000 n -0000211607 00000 n -0000212000 00000 n -0000211157 00000 n -0000205086 00000 n -0000211755 00000 n -0000213028 00000 n -0000212787 00000 n -0000212097 00000 n -0000212906 00000 n -0000212967 00000 n -0000887314 00000 n -0000213572 00000 n -0000213329 00000 n -0000213112 00000 n -0000213448 00000 n -0000220856 00000 n -0000221006 00000 n -0000221153 00000 n -0000221303 00000 n -0000221453 00000 n -0000223615 00000 n -0000221786 00000 n -0000220685 00000 n -0000213656 00000 n -0000221603 00000 n -0000221724 00000 n -0000223827 00000 n -0000223476 00000 n -0000221922 00000 n -0000223765 00000 n -0000231055 00000 n -0000231205 00000 n -0000231355 00000 n -0000231506 00000 n -0000231838 00000 n -0000230892 00000 n -0000223924 00000 n -0000231655 00000 n -0000231776 00000 n -0000232852 00000 n -0000232671 00000 n -0000231987 00000 n -0000232790 00000 n -0000240631 00000 n -0000240781 00000 n -0000240931 00000 n -0000241081 00000 n -0000241412 00000 n -0000240468 00000 n -0000232936 00000 n -0000241230 00000 n -0000241351 00000 n -0000887432 00000 n -0000242426 00000 n -0000242245 00000 n -0000241561 00000 n -0000242364 00000 n -0000249248 00000 n -0000249394 00000 n -0000249728 00000 n -0000249101 00000 n -0000242510 00000 n -0000249545 00000 n -0000249666 00000 n -0000255895 00000 n -0000256044 00000 n -0000256378 00000 n -0000255748 00000 n -0000249877 00000 n -0000256193 00000 n -0000256316 00000 n -0000262908 00000 n -0000263056 00000 n -0000263390 00000 n -0000262761 00000 n -0000256527 00000 n -0000263207 00000 n -0000263328 00000 n -0000270619 00000 n -0000270768 00000 n -0000271103 00000 n -0000270472 00000 n -0000263551 00000 n -0000270917 00000 n -0000271041 00000 n -0000272127 00000 n -0000271947 00000 n -0000271264 00000 n -0000272066 00000 n -0000887550 00000 n -0000278676 00000 n -0000278825 00000 n -0000279160 00000 n -0000278529 00000 n -0000272211 00000 n -0000278975 00000 n -0000279098 00000 n -0000285163 00000 n -0000285310 00000 n -0000285644 00000 n -0000285016 00000 n -0000279309 00000 n -0000285461 00000 n -0000285582 00000 n -0000291475 00000 n -0000291623 00000 n -0000291958 00000 n -0000291328 00000 n -0000285792 00000 n -0000291773 00000 n -0000886116 00000 n -0000291896 00000 n -0000299847 00000 n -0000299998 00000 n -0000300147 00000 n -0000307542 00000 n -0000300666 00000 n -0000299692 00000 n -0000292107 00000 n -0000300297 00000 n -0000300418 00000 n -0000300480 00000 n -0000300542 00000 n -0000300604 00000 n -0000307693 00000 n -0000307843 00000 n -0000307993 00000 n -0000308145 00000 n -0000308298 00000 n -0000308451 00000 n -0000308664 00000 n -0000307355 00000 n -0000300827 00000 n -0000308602 00000 n -0000317381 00000 n -0000324891 00000 n -0000317714 00000 n -0000317242 00000 n -0000308774 00000 n -0000317531 00000 n -0000317652 00000 n -0000887668 00000 n -0000325043 00000 n -0000325194 00000 n -0000325345 00000 n -0000325495 00000 n -0000325707 00000 n -0000324720 00000 n -0000317888 00000 n -0000325645 00000 n -0000330712 00000 n -0000330863 00000 n -0000331075 00000 n -0000330565 00000 n -0000325843 00000 n -0000331014 00000 n -0000332034 00000 n -0000332310 00000 n -0000331895 00000 n -0000331185 00000 n -0000332186 00000 n -0000338631 00000 n -0000338782 00000 n -0000338933 00000 n -0000339266 00000 n -0000338476 00000 n -0000332394 00000 n -0000339083 00000 n -0000339204 00000 n -0000347956 00000 n -0000343727 00000 n -0000348106 00000 n -0000348380 00000 n -0000343580 00000 n -0000339402 00000 n -0000348256 00000 n -0000348318 00000 n -0000347621 00000 n -0000347740 00000 n -0000347787 00000 n -0000347861 00000 n -0000347934 00000 n -0000351820 00000 n -0000351640 00000 n -0000348531 00000 n -0000351759 00000 n -0000885827 00000 n -0000887786 00000 n -0000359103 00000 n -0000359254 00000 n -0000359589 00000 n -0000358956 00000 n -0000351904 00000 n -0000359404 00000 n -0000359527 00000 n -0000365818 00000 n -0000371116 00000 n -0000365969 00000 n -0000366118 00000 n -0000366512 00000 n -0000365663 00000 n -0000359738 00000 n -0000366269 00000 n -0000366330 00000 n -0000366391 00000 n -0000366452 00000 n -0000375490 00000 n -0000370507 00000 n -0000370326 00000 n -0000366648 00000 n -0000370445 00000 n -0000375552 00000 n -0000370997 00000 n -0000370591 00000 n -0000375429 00000 n -0000375094 00000 n -0000375213 00000 n -0000375260 00000 n -0000375334 00000 n -0000375407 00000 n -0000383445 00000 n -0000383596 00000 n -0000383931 00000 n -0000383298 00000 n -0000375651 00000 n -0000383746 00000 n -0000383869 00000 n -0000385686 00000 n -0000385506 00000 n -0000384092 00000 n -0000385625 00000 n -0000887904 00000 n -0000393179 00000 n -0000395592 00000 n -0000393515 00000 n -0000393040 00000 n -0000385770 00000 n -0000393329 00000 n -0000393453 00000 n -0000395804 00000 n -0000395453 00000 n -0000393676 00000 n -0000395743 00000 n -0000402794 00000 n -0000402489 00000 n -0000395901 00000 n -0000402608 00000 n -0000409468 00000 n -0000409741 00000 n -0000409329 00000 n -0000402930 00000 n -0000409619 00000 n -0000409680 00000 n -0000420431 00000 n -0000419937 00000 n -0000409851 00000 n -0000420056 00000 n -0000420118 00000 n -0000420180 00000 n -0000420242 00000 n -0000420305 00000 n -0000420368 00000 n -0000421383 00000 n -0000421134 00000 n -0000420567 00000 n -0000421257 00000 n -0000421320 00000 n -0000888022 00000 n -0000427247 00000 n -0000427650 00000 n -0000427103 00000 n -0000421468 00000 n -0000427398 00000 n -0000427524 00000 n -0000427588 00000 n -0000431481 00000 n -0000431632 00000 n -0000431971 00000 n -0000431328 00000 n -0000427774 00000 n -0000431784 00000 n -0000431908 00000 n -0000435573 00000 n -0000435723 00000 n -0000436000 00000 n -0000435420 00000 n -0000432082 00000 n -0000435874 00000 n -0000438558 00000 n -0000438833 00000 n -0000438414 00000 n -0000436111 00000 n -0000438709 00000 n -0000445072 00000 n -0000445220 00000 n -0000445498 00000 n -0000444919 00000 n -0000438944 00000 n -0000445371 00000 n -0000447598 00000 n -0000447286 00000 n -0000445635 00000 n -0000447409 00000 n -0000447472 00000 n -0000447535 00000 n -0000888147 00000 n -0000452782 00000 n -0000452932 00000 n -0000453397 00000 n -0000452629 00000 n -0000447683 00000 n -0000453079 00000 n -0000453205 00000 n -0000453269 00000 n -0000453333 00000 n -0000460415 00000 n -0000460566 00000 n -0000460716 00000 n -0000460991 00000 n -0000460253 00000 n -0000453521 00000 n -0000460867 00000 n -0000464760 00000 n -0000464189 00000 n -0000461115 00000 n -0000464312 00000 n -0000464376 00000 n -0000464440 00000 n -0000464504 00000 n -0000464568 00000 n -0000464632 00000 n -0000464696 00000 n -0000471069 00000 n -0000471221 00000 n -0000471622 00000 n -0000470916 00000 n -0000464871 00000 n -0000471371 00000 n -0000471496 00000 n -0000471559 00000 n -0000473692 00000 n -0000473313 00000 n -0000471733 00000 n -0000473436 00000 n -0000473500 00000 n -0000473564 00000 n -0000473628 00000 n -0000477075 00000 n -0000477224 00000 n -0000477500 00000 n -0000476922 00000 n -0000473777 00000 n -0000477376 00000 n -0000888272 00000 n -0000481799 00000 n -0000481948 00000 n -0000482290 00000 n -0000481646 00000 n -0000477611 00000 n -0000482099 00000 n -0000482226 00000 n -0000487208 00000 n -0000487482 00000 n -0000487064 00000 n -0000482401 00000 n -0000487358 00000 n -0000493986 00000 n -0000494263 00000 n -0000493842 00000 n -0000487606 00000 n -0000494137 00000 n -0000495313 00000 n -0000495001 00000 n -0000494387 00000 n -0000495124 00000 n -0000495187 00000 n -0000495250 00000 n -0000498479 00000 n -0000498756 00000 n -0000498335 00000 n -0000495398 00000 n -0000498630 00000 n -0000501952 00000 n -0000502227 00000 n -0000501808 00000 n -0000498867 00000 n -0000502103 00000 n -0000888397 00000 n -0000506085 00000 n -0000505836 00000 n -0000502338 00000 n -0000505959 00000 n -0000512966 00000 n -0000513241 00000 n -0000512822 00000 n -0000506222 00000 n -0000513117 00000 n -0000514445 00000 n -0000514130 00000 n -0000513365 00000 n -0000514253 00000 n -0000514317 00000 n -0000514381 00000 n -0000520455 00000 n -0000520731 00000 n -0000520311 00000 n -0000514530 00000 n -0000520607 00000 n -0000524331 00000 n -0000524672 00000 n -0000524187 00000 n -0000520855 00000 n -0000524482 00000 n -0000524608 00000 n -0000529972 00000 n -0000530311 00000 n -0000529828 00000 n -0000524796 00000 n -0000530124 00000 n -0000530248 00000 n -0000888522 00000 n -0000533879 00000 n -0000534220 00000 n -0000533735 00000 n -0000530435 00000 n -0000534030 00000 n -0000534156 00000 n -0000539504 00000 n -0000539843 00000 n -0000539360 00000 n -0000534344 00000 n -0000539656 00000 n -0000539780 00000 n -0000543975 00000 n -0000544379 00000 n -0000543831 00000 n -0000539967 00000 n -0000544125 00000 n -0000544251 00000 n -0000544315 00000 n -0000548348 00000 n -0000548749 00000 n -0000548204 00000 n -0000544490 00000 n -0000548499 00000 n -0000548623 00000 n -0000548686 00000 n -0000554854 00000 n -0000555130 00000 n -0000554710 00000 n -0000548860 00000 n -0000555003 00000 n -0000559390 00000 n -0000559015 00000 n -0000555254 00000 n -0000559138 00000 n -0000559201 00000 n -0000559264 00000 n -0000559327 00000 n -0000888647 00000 n -0000563861 00000 n -0000564010 00000 n -0000564161 00000 n -0000564437 00000 n -0000563699 00000 n -0000559514 00000 n -0000564311 00000 n -0000570623 00000 n -0000570375 00000 n -0000564561 00000 n -0000570498 00000 n -0000578589 00000 n -0000577827 00000 n -0000570747 00000 n -0000577950 00000 n -0000578014 00000 n -0000578078 00000 n -0000578142 00000 n -0000578206 00000 n -0000578270 00000 n -0000578334 00000 n -0000578397 00000 n -0000578461 00000 n -0000578525 00000 n -0000579201 00000 n -0000578953 00000 n -0000578712 00000 n -0000579076 00000 n -0000585296 00000 n -0000584919 00000 n -0000579286 00000 n -0000585042 00000 n -0000585168 00000 n -0000585232 00000 n -0000590512 00000 n -0000590139 00000 n -0000585433 00000 n -0000590262 00000 n -0000590387 00000 n -0000590449 00000 n -0000888772 00000 n -0000595504 00000 n -0000595063 00000 n -0000590649 00000 n -0000595186 00000 n -0000595312 00000 n -0000595376 00000 n -0000595440 00000 n -0000598108 00000 n -0000597861 00000 n -0000595641 00000 n -0000597984 00000 n -0000601552 00000 n -0000601303 00000 n -0000598219 00000 n -0000601426 00000 n -0000603176 00000 n -0000602929 00000 n -0000601689 00000 n -0000603052 00000 n -0000605069 00000 n -0000604820 00000 n -0000603287 00000 n -0000604943 00000 n -0000606846 00000 n -0000606599 00000 n -0000605180 00000 n -0000606722 00000 n -0000888897 00000 n -0000611798 00000 n -0000611549 00000 n -0000606957 00000 n -0000611672 00000 n -0000617514 00000 n -0000617141 00000 n -0000611935 00000 n -0000617264 00000 n -0000617388 00000 n -0000617451 00000 n -0000623273 00000 n -0000622896 00000 n -0000617651 00000 n -0000623019 00000 n -0000623145 00000 n -0000623209 00000 n -0000629003 00000 n -0000628630 00000 n -0000623410 00000 n -0000628753 00000 n -0000628877 00000 n -0000628940 00000 n -0000634854 00000 n -0000634477 00000 n -0000629140 00000 n -0000634600 00000 n -0000634726 00000 n -0000634790 00000 n -0000640672 00000 n -0000640299 00000 n -0000634991 00000 n -0000640422 00000 n -0000640546 00000 n -0000640609 00000 n -0000889022 00000 n -0000646550 00000 n -0000646238 00000 n -0000640809 00000 n -0000646361 00000 n -0000646487 00000 n -0000652408 00000 n -0000652099 00000 n -0000646687 00000 n -0000652222 00000 n -0000652346 00000 n -0000659164 00000 n -0000659314 00000 n -0000659592 00000 n -0000659011 00000 n -0000652545 00000 n -0000659465 00000 n -0000663795 00000 n -0000663859 00000 n -0000663923 00000 n -0000663609 00000 n -0000659690 00000 n -0000663732 00000 n -0000667288 00000 n -0000667039 00000 n -0000664021 00000 n -0000667162 00000 n -0000668858 00000 n -0000668610 00000 n -0000667399 00000 n -0000668733 00000 n -0000889147 00000 n -0000670528 00000 n -0000670278 00000 n -0000668969 00000 n -0000670401 00000 n -0000672657 00000 n -0000672409 00000 n -0000670639 00000 n -0000672532 00000 n -0000673604 00000 n -0000673354 00000 n -0000672768 00000 n -0000673477 00000 n -0000678348 00000 n -0000678623 00000 n -0000678204 00000 n -0000673702 00000 n -0000678498 00000 n -0000683806 00000 n -0000684082 00000 n -0000683662 00000 n -0000678734 00000 n -0000683955 00000 n -0000687631 00000 n -0000687906 00000 n -0000687487 00000 n -0000684193 00000 n -0000687781 00000 n -0000889272 00000 n -0000691590 00000 n -0000691340 00000 n -0000688017 00000 n -0000691463 00000 n -0000695615 00000 n -0000695890 00000 n -0000695471 00000 n -0000691701 00000 n -0000695765 00000 n -0000697223 00000 n -0000696973 00000 n -0000696001 00000 n -0000697096 00000 n -0000702189 00000 n -0000702341 00000 n -0000702683 00000 n -0000702036 00000 n -0000697334 00000 n -0000702496 00000 n -0000702620 00000 n -0000707799 00000 n -0000707948 00000 n -0000708098 00000 n -0000708250 00000 n -0000708527 00000 n -0000707628 00000 n -0000702845 00000 n -0000708401 00000 n -0000713852 00000 n -0000714003 00000 n -0000714279 00000 n -0000713699 00000 n -0000708638 00000 n -0000714155 00000 n -0000889397 00000 n -0000716590 00000 n -0000716869 00000 n -0000716446 00000 n -0000714390 00000 n -0000716742 00000 n -0000717886 00000 n -0000717638 00000 n -0000716980 00000 n -0000717761 00000 n -0000725409 00000 n -0000725558 00000 n -0000725834 00000 n -0000725256 00000 n -0000717984 00000 n -0000725708 00000 n -0000731889 00000 n -0000732104 00000 n -0000731745 00000 n -0000725996 00000 n -0000732041 00000 n -0000734959 00000 n -0000734772 00000 n -0000732228 00000 n -0000734895 00000 n -0000743043 00000 n -0000742049 00000 n -0000735057 00000 n -0000742172 00000 n -0000742235 00000 n -0000742298 00000 n -0000742793 00000 n -0000742856 00000 n -0000889522 00000 n -0000744995 00000 n -0000744618 00000 n -0000743154 00000 n -0000744741 00000 n -0000744931 00000 n -0000745080 00000 n -0000745533 00000 n -0000745867 00000 n -0000746223 00000 n -0000746249 00000 n -0000746760 00000 n -0000746798 00000 n -0000747493 00000 n -0000747850 00000 n -0000747930 00000 n -0000748306 00000 n -0000748948 00000 n -0000749612 00000 n -0000750240 00000 n -0000750883 00000 n -0000751173 00000 n -0000751826 00000 n -0000765963 00000 n -0000766410 00000 n -0000778809 00000 n -0000779237 00000 n -0000790344 00000 n -0000790679 00000 n -0000792765 00000 n -0000792987 00000 n -0000797546 00000 n -0000797793 00000 n -0000814532 00000 n -0000815065 00000 n -0000817341 00000 n -0000817573 00000 n -0000819956 00000 n -0000820194 00000 n -0000829876 00000 n -0000830253 00000 n -0000836243 00000 n -0000836563 00000 n -0000840613 00000 n -0000840957 00000 n -0000842580 00000 n -0000842816 00000 n -0000856326 00000 n -0000856702 00000 n -0000862975 00000 n -0000863243 00000 n -0000876703 00000 n -0000877189 00000 n -0000884177 00000 n -0000889611 00000 n -0000889731 00000 n -0000889853 00000 n -0000889979 00000 n -0000890096 00000 n -0000890188 00000 n -0000900007 00000 n -0000900194 00000 n -0000900379 00000 n -0000900562 00000 n -0000900738 00000 n -0000900908 00000 n -0000901079 00000 n -0000901249 00000 n -0000901420 00000 n -0000901590 00000 n -0000901764 00000 n -0000901939 00000 n -0000902116 00000 n -0000902290 00000 n -0000902464 00000 n -0000902641 00000 n -0000902816 00000 n -0000902993 00000 n -0000903168 00000 n -0000903345 00000 n -0000903533 00000 n -0000903750 00000 n -0000903953 00000 n -0000904140 00000 n -0000904321 00000 n -0000904499 00000 n -0000904684 00000 n -0000904866 00000 n -0000905048 00000 n -0000905233 00000 n -0000905411 00000 n -0000905581 00000 n -0000905752 00000 n -0000905922 00000 n -0000906093 00000 n -0000906263 00000 n -0000906434 00000 n -0000906604 00000 n -0000906780 00000 n -0000906954 00000 n -0000907128 00000 n -0000907305 00000 n -0000907480 00000 n -0000907657 00000 n -0000907832 00000 n -0000908009 00000 n -0000908182 00000 n -0000908376 00000 n -0000908579 00000 n -0000908779 00000 n -0000908979 00000 n -0000909182 00000 n -0000909383 00000 n -0000909586 00000 n -0000909787 00000 n -0000909990 00000 n -0000910191 00000 n -0000910394 00000 n -0000910595 00000 n -0000910798 00000 n -0000910998 00000 n -0000911190 00000 n -0000911376 00000 n -0000911581 00000 n -0000911817 00000 n -0000911994 00000 n -0000912168 00000 n -0000912319 00000 n -0000912437 00000 n -0000912553 00000 n -0000912668 00000 n -0000912785 00000 n -0000912900 00000 n -0000913016 00000 n -0000913132 00000 n -0000913252 00000 n -0000913375 00000 n -0000913499 00000 n -0000913619 00000 n -0000913690 00000 n -0000913808 00000 n -0000913924 00000 n -0000914006 00000 n -0000914046 00000 n -0000914283 00000 n +0000198995 00000 n +0000199144 00000 n +0000199294 00000 n +0000204965 00000 n +0000199628 00000 n +0000198682 00000 n +0000192413 00000 n +0000199444 00000 n +0000211693 00000 n +0000205357 00000 n +0000204826 00000 n +0000199751 00000 n +0000205116 00000 n +0000211841 00000 n +0000211988 00000 n +0000212381 00000 n +0000211538 00000 n +0000205467 00000 n +0000212136 00000 n +0000213409 00000 n +0000213168 00000 n +0000212478 00000 n +0000213287 00000 n +0000213348 00000 n +0000887695 00000 n +0000213953 00000 n +0000213710 00000 n +0000213493 00000 n +0000213829 00000 n +0000221237 00000 n +0000221387 00000 n +0000221534 00000 n +0000221684 00000 n +0000221834 00000 n +0000223996 00000 n +0000222167 00000 n +0000221066 00000 n +0000214037 00000 n +0000221984 00000 n +0000222105 00000 n +0000224208 00000 n +0000223857 00000 n +0000222303 00000 n +0000224146 00000 n +0000231436 00000 n +0000231586 00000 n +0000231736 00000 n +0000231887 00000 n +0000232219 00000 n +0000231273 00000 n +0000224305 00000 n +0000232036 00000 n +0000232157 00000 n +0000233233 00000 n +0000233052 00000 n +0000232368 00000 n +0000233171 00000 n +0000241012 00000 n +0000241162 00000 n +0000241312 00000 n +0000241462 00000 n +0000241793 00000 n +0000240849 00000 n +0000233317 00000 n +0000241611 00000 n +0000241732 00000 n +0000887813 00000 n +0000242807 00000 n +0000242626 00000 n +0000241942 00000 n +0000242745 00000 n +0000249629 00000 n +0000249775 00000 n +0000250109 00000 n +0000249482 00000 n +0000242891 00000 n +0000249926 00000 n +0000250047 00000 n +0000256276 00000 n +0000256425 00000 n +0000256759 00000 n +0000256129 00000 n +0000250258 00000 n +0000256574 00000 n +0000256697 00000 n +0000263289 00000 n +0000263437 00000 n +0000263771 00000 n +0000263142 00000 n +0000256908 00000 n +0000263588 00000 n +0000263709 00000 n +0000271000 00000 n +0000271149 00000 n +0000271484 00000 n +0000270853 00000 n +0000263932 00000 n +0000271298 00000 n +0000271422 00000 n +0000272508 00000 n +0000272328 00000 n +0000271645 00000 n +0000272447 00000 n +0000887931 00000 n +0000279057 00000 n +0000279206 00000 n +0000279541 00000 n +0000278910 00000 n +0000272592 00000 n +0000279356 00000 n +0000279479 00000 n +0000285544 00000 n +0000285691 00000 n +0000286025 00000 n +0000285397 00000 n +0000279690 00000 n +0000285842 00000 n +0000285963 00000 n +0000291856 00000 n +0000292004 00000 n +0000292339 00000 n +0000291709 00000 n +0000286173 00000 n +0000292154 00000 n +0000886497 00000 n +0000292277 00000 n +0000300228 00000 n +0000300379 00000 n +0000300528 00000 n +0000307923 00000 n +0000301047 00000 n +0000300073 00000 n +0000292488 00000 n +0000300678 00000 n +0000300799 00000 n +0000300861 00000 n +0000300923 00000 n +0000300985 00000 n +0000308074 00000 n +0000308224 00000 n +0000308374 00000 n +0000308526 00000 n +0000308679 00000 n +0000308832 00000 n +0000309045 00000 n +0000307736 00000 n +0000301208 00000 n +0000308983 00000 n +0000317762 00000 n +0000325272 00000 n +0000318095 00000 n +0000317623 00000 n +0000309155 00000 n +0000317912 00000 n +0000318033 00000 n +0000888049 00000 n +0000325424 00000 n +0000325575 00000 n +0000325726 00000 n +0000325876 00000 n +0000326088 00000 n +0000325101 00000 n +0000318269 00000 n +0000326026 00000 n +0000331093 00000 n +0000331244 00000 n +0000331456 00000 n +0000330946 00000 n +0000326224 00000 n +0000331395 00000 n +0000332415 00000 n +0000332691 00000 n +0000332276 00000 n +0000331566 00000 n +0000332567 00000 n +0000339012 00000 n +0000339163 00000 n +0000339314 00000 n +0000339647 00000 n +0000338857 00000 n +0000332775 00000 n +0000339464 00000 n +0000339585 00000 n +0000348337 00000 n +0000344108 00000 n +0000348487 00000 n +0000348761 00000 n +0000343961 00000 n +0000339783 00000 n +0000348637 00000 n +0000348699 00000 n +0000348002 00000 n +0000348121 00000 n +0000348168 00000 n +0000348242 00000 n +0000348315 00000 n +0000352201 00000 n +0000352021 00000 n +0000348912 00000 n +0000352140 00000 n +0000886208 00000 n +0000888167 00000 n +0000359484 00000 n +0000359635 00000 n +0000359970 00000 n +0000359337 00000 n +0000352285 00000 n +0000359785 00000 n +0000359908 00000 n +0000366199 00000 n +0000371497 00000 n +0000366350 00000 n +0000366499 00000 n +0000366893 00000 n +0000366044 00000 n +0000360119 00000 n +0000366650 00000 n +0000366711 00000 n +0000366772 00000 n +0000366833 00000 n +0000375871 00000 n +0000370888 00000 n +0000370707 00000 n +0000367029 00000 n +0000370826 00000 n +0000375933 00000 n +0000371378 00000 n +0000370972 00000 n +0000375810 00000 n +0000375475 00000 n +0000375594 00000 n +0000375641 00000 n +0000375715 00000 n +0000375788 00000 n +0000383826 00000 n +0000383977 00000 n +0000384312 00000 n +0000383679 00000 n +0000376032 00000 n +0000384127 00000 n +0000384250 00000 n +0000386067 00000 n +0000385887 00000 n +0000384473 00000 n +0000386006 00000 n +0000888285 00000 n +0000393560 00000 n +0000395973 00000 n +0000393896 00000 n +0000393421 00000 n +0000386151 00000 n +0000393710 00000 n +0000393834 00000 n +0000396185 00000 n +0000395834 00000 n +0000394057 00000 n +0000396124 00000 n +0000403175 00000 n +0000402870 00000 n +0000396282 00000 n +0000402989 00000 n +0000409849 00000 n +0000410122 00000 n +0000409710 00000 n +0000403311 00000 n +0000410000 00000 n +0000410061 00000 n +0000420812 00000 n +0000420318 00000 n +0000410232 00000 n +0000420437 00000 n +0000420499 00000 n +0000420561 00000 n +0000420623 00000 n +0000420686 00000 n +0000420749 00000 n +0000421764 00000 n +0000421515 00000 n +0000420948 00000 n +0000421638 00000 n +0000421701 00000 n +0000888403 00000 n +0000427628 00000 n +0000428031 00000 n +0000427484 00000 n +0000421849 00000 n +0000427779 00000 n +0000427905 00000 n +0000427969 00000 n +0000431862 00000 n +0000432013 00000 n +0000432352 00000 n +0000431709 00000 n +0000428155 00000 n +0000432165 00000 n +0000432289 00000 n +0000435954 00000 n +0000436104 00000 n +0000436381 00000 n +0000435801 00000 n +0000432463 00000 n +0000436255 00000 n +0000438939 00000 n +0000439214 00000 n +0000438795 00000 n +0000436492 00000 n +0000439090 00000 n +0000445453 00000 n +0000445601 00000 n +0000445879 00000 n +0000445300 00000 n +0000439325 00000 n +0000445752 00000 n +0000447979 00000 n +0000447667 00000 n +0000446016 00000 n +0000447790 00000 n +0000447853 00000 n +0000447916 00000 n +0000888528 00000 n +0000453163 00000 n +0000453313 00000 n +0000453778 00000 n +0000453010 00000 n +0000448064 00000 n +0000453460 00000 n +0000453586 00000 n +0000453650 00000 n +0000453714 00000 n +0000460796 00000 n +0000460947 00000 n +0000461097 00000 n +0000461372 00000 n +0000460634 00000 n +0000453902 00000 n +0000461248 00000 n +0000465141 00000 n +0000464570 00000 n +0000461496 00000 n +0000464693 00000 n +0000464757 00000 n +0000464821 00000 n +0000464885 00000 n +0000464949 00000 n +0000465013 00000 n +0000465077 00000 n +0000471450 00000 n +0000471602 00000 n +0000472003 00000 n +0000471297 00000 n +0000465252 00000 n +0000471752 00000 n +0000471877 00000 n +0000471940 00000 n +0000474073 00000 n +0000473694 00000 n +0000472114 00000 n +0000473817 00000 n +0000473881 00000 n +0000473945 00000 n +0000474009 00000 n +0000477456 00000 n +0000477605 00000 n +0000477881 00000 n +0000477303 00000 n +0000474158 00000 n +0000477757 00000 n +0000888653 00000 n +0000482180 00000 n +0000482329 00000 n +0000482671 00000 n +0000482027 00000 n +0000477992 00000 n +0000482480 00000 n +0000482607 00000 n +0000487589 00000 n +0000487863 00000 n +0000487445 00000 n +0000482782 00000 n +0000487739 00000 n +0000494367 00000 n +0000494644 00000 n +0000494223 00000 n +0000487987 00000 n +0000494518 00000 n +0000495694 00000 n +0000495382 00000 n +0000494768 00000 n +0000495505 00000 n +0000495568 00000 n +0000495631 00000 n +0000498860 00000 n +0000499137 00000 n +0000498716 00000 n +0000495779 00000 n +0000499011 00000 n +0000502333 00000 n +0000502608 00000 n +0000502189 00000 n +0000499248 00000 n +0000502484 00000 n +0000888778 00000 n +0000506466 00000 n +0000506217 00000 n +0000502719 00000 n +0000506340 00000 n +0000513347 00000 n +0000513622 00000 n +0000513203 00000 n +0000506603 00000 n +0000513498 00000 n +0000514826 00000 n +0000514511 00000 n +0000513746 00000 n +0000514634 00000 n +0000514698 00000 n +0000514762 00000 n +0000520836 00000 n +0000521112 00000 n +0000520692 00000 n +0000514911 00000 n +0000520988 00000 n +0000524712 00000 n +0000525053 00000 n +0000524568 00000 n +0000521236 00000 n +0000524863 00000 n +0000524989 00000 n +0000530353 00000 n +0000530692 00000 n +0000530209 00000 n +0000525177 00000 n +0000530505 00000 n +0000530629 00000 n +0000888903 00000 n +0000534260 00000 n +0000534601 00000 n +0000534116 00000 n +0000530816 00000 n +0000534411 00000 n +0000534537 00000 n +0000539885 00000 n +0000540224 00000 n +0000539741 00000 n +0000534725 00000 n +0000540037 00000 n +0000540161 00000 n +0000544356 00000 n +0000544760 00000 n +0000544212 00000 n +0000540348 00000 n +0000544506 00000 n +0000544632 00000 n +0000544696 00000 n +0000548729 00000 n +0000549130 00000 n +0000548585 00000 n +0000544871 00000 n +0000548880 00000 n +0000549004 00000 n +0000549067 00000 n +0000555235 00000 n +0000555511 00000 n +0000555091 00000 n +0000549241 00000 n +0000555384 00000 n +0000559771 00000 n +0000559396 00000 n +0000555635 00000 n +0000559519 00000 n +0000559582 00000 n +0000559645 00000 n +0000559708 00000 n +0000889028 00000 n +0000564242 00000 n +0000564391 00000 n +0000564542 00000 n +0000564818 00000 n +0000564080 00000 n +0000559895 00000 n +0000564692 00000 n +0000571004 00000 n +0000570756 00000 n +0000564942 00000 n +0000570879 00000 n +0000578970 00000 n +0000578208 00000 n +0000571128 00000 n +0000578331 00000 n +0000578395 00000 n +0000578459 00000 n +0000578523 00000 n +0000578587 00000 n +0000578651 00000 n +0000578715 00000 n +0000578778 00000 n +0000578842 00000 n +0000578906 00000 n +0000579582 00000 n +0000579334 00000 n +0000579093 00000 n +0000579457 00000 n +0000585677 00000 n +0000585300 00000 n +0000579667 00000 n +0000585423 00000 n +0000585549 00000 n +0000585613 00000 n +0000590893 00000 n +0000590520 00000 n +0000585814 00000 n +0000590643 00000 n +0000590768 00000 n +0000590830 00000 n +0000889153 00000 n +0000595885 00000 n +0000595444 00000 n +0000591030 00000 n +0000595567 00000 n +0000595693 00000 n +0000595757 00000 n +0000595821 00000 n +0000598489 00000 n +0000598242 00000 n +0000596022 00000 n +0000598365 00000 n +0000601933 00000 n +0000601684 00000 n +0000598600 00000 n +0000601807 00000 n +0000603557 00000 n +0000603310 00000 n +0000602070 00000 n +0000603433 00000 n +0000605450 00000 n +0000605201 00000 n +0000603668 00000 n +0000605324 00000 n +0000607227 00000 n +0000606980 00000 n +0000605561 00000 n +0000607103 00000 n +0000889278 00000 n +0000612179 00000 n +0000611930 00000 n +0000607338 00000 n +0000612053 00000 n +0000617895 00000 n +0000617522 00000 n +0000612316 00000 n +0000617645 00000 n +0000617769 00000 n +0000617832 00000 n +0000623654 00000 n +0000623277 00000 n +0000618032 00000 n +0000623400 00000 n +0000623526 00000 n +0000623590 00000 n +0000629384 00000 n +0000629011 00000 n +0000623791 00000 n +0000629134 00000 n +0000629258 00000 n +0000629321 00000 n +0000635235 00000 n +0000634858 00000 n +0000629521 00000 n +0000634981 00000 n +0000635107 00000 n +0000635171 00000 n +0000641053 00000 n +0000640680 00000 n +0000635372 00000 n +0000640803 00000 n +0000640927 00000 n +0000640990 00000 n +0000889403 00000 n +0000646931 00000 n +0000646619 00000 n +0000641190 00000 n +0000646742 00000 n +0000646868 00000 n +0000652789 00000 n +0000652480 00000 n +0000647068 00000 n +0000652603 00000 n +0000652727 00000 n +0000659545 00000 n +0000659695 00000 n +0000659973 00000 n +0000659392 00000 n +0000652926 00000 n +0000659846 00000 n +0000664176 00000 n +0000664240 00000 n +0000664304 00000 n +0000663990 00000 n +0000660071 00000 n +0000664113 00000 n +0000667669 00000 n +0000667420 00000 n +0000664402 00000 n +0000667543 00000 n +0000669239 00000 n +0000668991 00000 n +0000667780 00000 n +0000669114 00000 n +0000889528 00000 n +0000670909 00000 n +0000670659 00000 n +0000669350 00000 n +0000670782 00000 n +0000673038 00000 n +0000672790 00000 n +0000671020 00000 n +0000672913 00000 n +0000673985 00000 n +0000673735 00000 n +0000673149 00000 n +0000673858 00000 n +0000678729 00000 n +0000679004 00000 n +0000678585 00000 n +0000674083 00000 n +0000678879 00000 n +0000684187 00000 n +0000684463 00000 n +0000684043 00000 n +0000679115 00000 n +0000684336 00000 n +0000688012 00000 n +0000688287 00000 n +0000687868 00000 n +0000684574 00000 n +0000688162 00000 n +0000889653 00000 n +0000691971 00000 n +0000691721 00000 n +0000688398 00000 n +0000691844 00000 n +0000695996 00000 n +0000696271 00000 n +0000695852 00000 n +0000692082 00000 n +0000696146 00000 n +0000697604 00000 n +0000697354 00000 n +0000696382 00000 n +0000697477 00000 n +0000702570 00000 n +0000702722 00000 n +0000703064 00000 n +0000702417 00000 n +0000697715 00000 n +0000702877 00000 n +0000703001 00000 n +0000708180 00000 n +0000708329 00000 n +0000708479 00000 n +0000708631 00000 n +0000708908 00000 n +0000708009 00000 n +0000703226 00000 n +0000708782 00000 n +0000714233 00000 n +0000714384 00000 n +0000714660 00000 n +0000714080 00000 n +0000709019 00000 n +0000714536 00000 n +0000889778 00000 n +0000716971 00000 n +0000717250 00000 n +0000716827 00000 n +0000714771 00000 n +0000717123 00000 n +0000718267 00000 n +0000718019 00000 n +0000717361 00000 n +0000718142 00000 n +0000725790 00000 n +0000725939 00000 n +0000726215 00000 n +0000725637 00000 n +0000718365 00000 n +0000726089 00000 n +0000732270 00000 n +0000732485 00000 n +0000732126 00000 n +0000726377 00000 n +0000732422 00000 n +0000735340 00000 n +0000735153 00000 n +0000732609 00000 n +0000735276 00000 n +0000743424 00000 n +0000742430 00000 n +0000735438 00000 n +0000742553 00000 n +0000742616 00000 n +0000742679 00000 n +0000743174 00000 n +0000743237 00000 n +0000889903 00000 n +0000745376 00000 n +0000744999 00000 n +0000743535 00000 n +0000745122 00000 n +0000745312 00000 n +0000745461 00000 n +0000745914 00000 n +0000746248 00000 n +0000746604 00000 n +0000746630 00000 n +0000747141 00000 n +0000747179 00000 n +0000747874 00000 n +0000748231 00000 n +0000748311 00000 n +0000748687 00000 n +0000749329 00000 n +0000749993 00000 n +0000750621 00000 n +0000751264 00000 n +0000751554 00000 n +0000752207 00000 n +0000766344 00000 n +0000766791 00000 n +0000779190 00000 n +0000779618 00000 n +0000790725 00000 n +0000791060 00000 n +0000793146 00000 n +0000793368 00000 n +0000797927 00000 n +0000798174 00000 n +0000814913 00000 n +0000815446 00000 n +0000817722 00000 n +0000817954 00000 n +0000820337 00000 n +0000820575 00000 n +0000830257 00000 n +0000830634 00000 n +0000836624 00000 n +0000836944 00000 n +0000840994 00000 n +0000841338 00000 n +0000842961 00000 n +0000843197 00000 n +0000856707 00000 n +0000857083 00000 n +0000863356 00000 n +0000863624 00000 n +0000877084 00000 n +0000877570 00000 n +0000884558 00000 n +0000889992 00000 n +0000890112 00000 n +0000890234 00000 n +0000890360 00000 n +0000890477 00000 n +0000890569 00000 n +0000900388 00000 n +0000900575 00000 n +0000900760 00000 n +0000900943 00000 n +0000901119 00000 n +0000901289 00000 n +0000901460 00000 n +0000901630 00000 n +0000901801 00000 n +0000901971 00000 n +0000902145 00000 n +0000902320 00000 n +0000902497 00000 n +0000902671 00000 n +0000902845 00000 n +0000903022 00000 n +0000903197 00000 n +0000903374 00000 n +0000903549 00000 n +0000903726 00000 n +0000903914 00000 n +0000904131 00000 n +0000904334 00000 n +0000904521 00000 n +0000904702 00000 n +0000904880 00000 n +0000905065 00000 n +0000905247 00000 n +0000905429 00000 n +0000905614 00000 n +0000905792 00000 n +0000905962 00000 n +0000906133 00000 n +0000906303 00000 n +0000906474 00000 n +0000906644 00000 n +0000906815 00000 n +0000906985 00000 n +0000907161 00000 n +0000907335 00000 n +0000907509 00000 n +0000907686 00000 n +0000907861 00000 n +0000908038 00000 n +0000908213 00000 n +0000908390 00000 n +0000908563 00000 n +0000908757 00000 n +0000908960 00000 n +0000909160 00000 n +0000909360 00000 n +0000909563 00000 n +0000909764 00000 n +0000909967 00000 n +0000910168 00000 n +0000910371 00000 n +0000910572 00000 n +0000910775 00000 n +0000910976 00000 n +0000911179 00000 n +0000911379 00000 n +0000911571 00000 n +0000911757 00000 n +0000911962 00000 n +0000912198 00000 n +0000912375 00000 n +0000912549 00000 n +0000912700 00000 n +0000912818 00000 n +0000912934 00000 n +0000913049 00000 n +0000913166 00000 n +0000913281 00000 n +0000913397 00000 n +0000913513 00000 n +0000913633 00000 n +0000913756 00000 n +0000913880 00000 n +0000914000 00000 n +0000914071 00000 n +0000914189 00000 n +0000914305 00000 n +0000914387 00000 n +0000914427 00000 n +0000914664 00000 n trailer << /Size 1576 /Root 1574 0 R /Info 1575 0 R -/ID [ ] >> +/ID [<4D1C2155F0A584C3A75B8EAB29F4F311> <4D1C2155F0A584C3A75B8EAB29F4F311>] >> startxref -914925 +915306 %%EOF diff --git a/docs/src/intro.tex b/docs/src/intro.tex index 0eeba636..83842ce5 100644 --- a/docs/src/intro.tex +++ b/docs/src/intro.tex @@ -283,6 +283,10 @@ are classified as: is guaranteed to be the same. \item[local] Each process has its own value(s) independently. \end{description} +To finish our general description, we define a version string with the +constant +\[ \verb|psb_version_string_|\] +whose current value is \verb|3.0.0| \subsection{Application structure} diff --git a/test/fileread/cf_sample.f90 b/test/fileread/cf_sample.f90 index 2c4c1c6a..05310c67 100644 --- a/test/fileread/cf_sample.f90 +++ b/test/fileread/cf_sample.f90 @@ -93,6 +93,13 @@ program cf_sample info=psb_success_ call psb_set_errverbosity(2) ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if + ! ! get parameters ! call get_parms(ictxt,mtrx_file,rhs_file,filefmt,kmethd,ptype,& diff --git a/test/fileread/df_sample.f90 b/test/fileread/df_sample.f90 index 7658d3ac..9df1da65 100644 --- a/test/fileread/df_sample.f90 +++ b/test/fileread/df_sample.f90 @@ -94,6 +94,13 @@ program df_sample info=psb_success_ call psb_set_errverbosity(2) ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if + ! ! get parameters ! call get_parms(ictxt,mtrx_file,rhs_file,filefmt,kmethd,ptype,& diff --git a/test/fileread/sf_sample.f90 b/test/fileread/sf_sample.f90 index 82763f53..8b99617c 100644 --- a/test/fileread/sf_sample.f90 +++ b/test/fileread/sf_sample.f90 @@ -93,6 +93,13 @@ program sf_sample info=psb_success_ call psb_set_errverbosity(2) ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if + ! ! get parameters ! call get_parms(ictxt,mtrx_file,rhs_file,filefmt,kmethd,ptype,& diff --git a/test/fileread/zf_sample.f90 b/test/fileread/zf_sample.f90 index d4a7176f..3ceaf67f 100644 --- a/test/fileread/zf_sample.f90 +++ b/test/fileread/zf_sample.f90 @@ -93,6 +93,13 @@ program zf_sample info=psb_success_ call psb_set_errverbosity(2) ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if + ! ! get parameters ! call get_parms(ictxt,mtrx_file,rhs_file,filefmt,kmethd,ptype,& diff --git a/test/pargen/ppde.f90 b/test/pargen/ppde.f90 index 6c365a2b..a66fcc8f 100644 --- a/test/pargen/ppde.f90 +++ b/test/pargen/ppde.f90 @@ -110,7 +110,13 @@ program ppde if(psb_get_errstatus() /= 0) goto 9999 name='pde90' call psb_set_errverbosity(2) - call psb_cd_set_large_threshold(2) + ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if ! ! get parameters ! diff --git a/test/pargen/spde.f90 b/test/pargen/spde.f90 index 3dc26885..21661fa1 100644 --- a/test/pargen/spde.f90 +++ b/test/pargen/spde.f90 @@ -110,7 +110,13 @@ program ppde if(psb_get_errstatus() /= 0) goto 9999 name='pde90' call psb_set_errverbosity(2) - call psb_cd_set_large_threshold(2) + ! + ! Hello world + ! + if (iam == psb_root_) then + write(*,*) 'Welcome to PSBLAS version: ',psb_version_string_ + write(*,*) 'This is the ',name,' sample program' + end if ! ! get parameters !