postgresql15-docs-15.10-150600.16.9.1<>,gD:p9|t sjT|Ԑ5ͯpxL}{txIt#MtxK=!3mn~M뵵kud{_`=;?d ( J $=^i (  ) < w@ |xtӨӼ6(U8\:9D::ذ:F G H lI3X8Y8\8]L4^b~c'defluv,zk|ЀІCpostgresql15-docs15.10150600.16.9.1HTML Documentation for PostgreSQLPostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, and user-defined types and functions. This package contains the HTML documentation for PostgreSQL. The start page is: file:///usr/share/doc/packages/postgresql15/html/index.html . Manual pages for the PostgreSQL SQL statements can be found in the postgresql package.gD:h03-ch2a0SUSE Linux Enterprise 15SUSE LLC PostgreSQLhttps://www.suse.com/Productivity/Databases/Toolshttps://www.postgresql.org/linuxnoarchREB"i-2=GU-\*O(q\YoJ{$d#+ GV %EC vJ4 V@Y|1+} 0x:L'0%9J! j&<ixF>9'M /3HxXN i &q/J U L4]#P;;y#H4N;/\'mF$8K=c3>~_#;OIZ!(3e . du./Lxa[;-X\6akCe}  `lމ~('Yw"h mT OO 7 8U Bh%!~~73F4pڸA1]:sp?k.-E/ZO"gF/V2 E E( kV\= @ : :S |:T%|0x,T<( PoOݚ +T& p*( Gfo >b3 KH=Soy+HrS4Z Sy C4vCL%aD!)eƤ[R=]e!F6P3!˝Y}+.1u2I‹ &9i7$"Q?;<%k Lp  ;x.oy0 *<=  /)d04s*Rx)!<*%1e_+;6"Y:6N 3<,hu V+UN0 >66~FDi916Wh UWv ~'#..,IK053 5!r; db_Yd{\Ri@ol =mK6,i9qe]E6>(~LwZFfqcBcsn%&,$tX8Lk&&($g^rC:k ,# ) ctog("O /$א8ue*=# Mo 9& j9Y!H!n,dD$dd&r K1fn; r2%M &n~Z3mX~ > 'jkla96(K'|p!uuY$B Bw *k RB< :OF9 &rEK$AUCm%d$ba֖U(l %;*N~d-oMMRW8HE-'{fur/ 9X,R"NRf$*0m%r87:[qa"*6u۹Y9)S&F;DKC x]$ x$8 o,!]wM 9k*GY5e7  ``$ I !!-  g 9"d").47Y*SA3S"uB9A2,M?q7]&;A)78G8!K%W.IDeyA=0>~*:J6C l1{$q7=wL@yF-` xL:dZ)4Dk,"1|d_"Ad?)6!W613A:$&Q)V1-wG_U0%+9q <)K p,YEGjd^z$(m'1;\5Dz X #q $ \*L  & c _1\@*@/"f% Z$n>h.%,H<G0=`])FF:h;[-0=*)=b{<$#H^A6 ǚ 4sp  ף'b("CP`<+|B!D*+3k~+ s- 77.Z{lTT(3B,a>DG?g~AA큤gD:_gD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:IgD:I0ed2c4f8ccf4da5e282a1dfebc85da1bc91dc204ee2500551242b347c5a2750debe133b04790ed295b864a69465aa96866a35c1b31af240021a954367db4313402ea20eca3d9eee3f5c01e86c23fa9620f422446d9938b42c7df9d6f568ac2f5994f722a2d940714f67994956b8553db6d38e3414746f5ed4f5b23957e8fed22643a07a00055dbb42b999c78f2ac195b65e7868ac78eac350e4d81a674a40494866693c77c86832990c99332ab6713ede0013b385169e128114aa3ac66d1bf46803ec59b673f2eb63916c826e242b65899ee1e3510ed02e9ca881eab3e24d83987f7bf3634aaa1c08164613460eccc0ab6f225b4e70a5f61b95e7ae6c0f01249133e202a908802bdd9541f95f611e883be58d5520fa757bf0b1020d411031820300c8fa70659a7ac3145238b5c3ce6e8a3202bea3465d48abf4c7c2bc63501969325fda27d10d7c839353bf12419f16d411af59159ce3c59bf2522df7a0fbe62fd519618b6a452e063c136f90be2853246d6e28762be9a61321e44e30f182c99084a6f1e27903b2f9f3db87e6535adefba667d2278593367c2741dd0ab06afcc7782ec5406ebfb6a0c2d3d5252332b876123b37d961eaf62b10f73a568fc6f5b3620306e603b38e0762f7b3a245aff1a7bc4a98460d964795395e5abfefda9055c1a59b379d9fdc97da202f39087edf3519ff23cb3144b5ec4986e6ba8649a030463c99e4a444fdf57d5ef306fdacb62dbc06e96b8d8d12d0c0fc772e8d23d0daa1ad434b4495cb8923328128d521b0c06516380d9abdfe6011e47a1f5fa97b3d1e9e81610479abeafdbecbcd5287e530a6c2418460fc034f18c62214ec1e8687c55bb2f4b89de7f03cdece07ad4364e3ece1ed11ea338a7df019f4c88c5e7e31a48086b389f76e04f56f3bd553adf591fca054e262e00e2f8e4ddb1bf018f906d633d5a29c2aa5a4c9f0493c81851eff7f7ff6ce791f4c0fc5ff7727546234142cca64cb8f822bbbd0bba9df830c1216c508737525d5340faaf71eb9f5d02f35a6724764729005288b88ded9dfa0080b66bb932981ef2938d33ecd006b9b00da72ef52f54d0792319afa8cc3dcdad9c27e84cc028c2ed4efc8fb55ed1f12cc6bb9cc5e3b34ea316eb0ba4f8fa03dfff2c2a434626c842d7aa1cd19ae10416e5cea3e63298601bc4ba1bc5af0af6eeff903c54dcccc904b0e520b2118f3ff8d7e13367162bf330311d865c8c9bdf4068fa7ed67691221135f1729ad750f0c532d783dd866bf238290814257f0ab0aa92b79675e92a0f794b3b4570e8c3eb004f81cca47e706d9c9a70e1966cd19ab493868f3770039af764402d7d55e7b29b5eb34aec7e6d529a2f0cb999295703904c4832731b224a5f7670516942cea3028dcef58c22073f04780b8137a461b257ed67bb3af053f3a2a1056e3bf83c275667078379633ba4401ace0ba9eb3e61bb3cedbed01c1700c68a58543ae16cad48e712f89088c41c001c7dec9d14197c3e181ddb4b77c462c4c86da96f7a1f28b11d67f42bc328bdec9c6db35c57232da4e16be21b5027c4eeff498382dc92cd4d0a857d92c2275540f1091d9cc02dee2b46be7cbb1fdce6797f87cfbbd7b83cfd9a7da787c41b526a101006dc65996a92934a145627e5c890faab957263dbf5f67ce7704e89c0b2cd696e6f4daffab9689bd8cbc20fce7b44cf4e2002fa7aacc57d72fec064247a0c125486678d7e689957d678c800efe5721b1768293ff130b7dc7b06dad3ae6fb2c48d9db7df01ab137825cfa146e8bf4d94e6fa3628a7e4895f746351ea1637ff88d1a72002332a734cf90bf4b6cac312cc704d21e6176749bd24e290b8b9e446493f147c5ac373f48022d5e688bef4fc0d1429edc922d6b96a5cc6a8a5624990b5cd87de1e096fd9183d95005c10f9c0c55c672252f2a76017b372d71a8af04d929b4180c4c5835986bc16f1be0b02fa8ab282b514dddff3aa0e3d0c3b8ca3b1bdc0e849d1c9175ac6239b7c409c0b2287ffefc2ca4a3decf450461d90639dda8941600fb5fc11aa61918c9a4689951817190f3a4d6ec7af03c0a57b12e71016c630de129515d04c97fec553bea068ba1d66832ac6f8082d22e0e82fb04dd2135483a78551bb32a85cf5e69e3ba1c76c15d3672b7fd3fea28ca9ba8bc1870d2730297108c5be95e378d19ce2e3428f174cb4c3ab3e9471c6dcd09affafe8b4bc517164edc6c320554a048bf55168c9749da7e4e8bf0c8eb430059dcef117b3fd44626974613bce4f275718a85e7f470f0e5cfd69303f75d76086127e7c5820ee8b9f7a9215633ee2ae12e30585bab911356a538a9afc530751c8bc70ec769b860d2cdd6457d7f0d8e73d27c90503409b9fc895c93413273765aa3052821343d4af938aad18d8eb45dc5e6da2435f4fdd4d5a7a5abaef38b299d5656d500844c6376b95f70291b5dda7d893a2f4a403cec58c789ed79ed8ef885283fc9f8ada42012975163f17cd8fd9ebd05e4940780f203cd30d043bd3d1f2de71e9382f8cc314a58a024d91b3ae96b5d2154f43dc3ecaa4c8a97fd525e55aea68fa364f8fac3cc87d9be0fedbd81a5a030b88e3afbc210c2b8293c1ce3399750c919e21c7a929964dbf692f1dce7dc1ae48fc61c0efd06ac0cdc08e09f67f41bf9a5476f4ea1fb60718bdc6dc2616ea0e8b8fcc210769745b245e6c0e0bd39b8f168d22abc41b956c4a69c5639f23a26835784564f98d5287da44e32a10a4af3aff1fffeb9493d25ac7aade59cd1977bcfb71f448ffb336a3f2a6c89665fbe038834b5e8e02078f32c919b2f45969878689a911fb7f5a90c1049e3080255150706898b1c107ca6c961640578e249cdd5721c0f02bec6d48362e811b3c7037c93e90374bfb63146270438310f83fdf3b6215e864fccf4aa0c6f6c36e0d8b178c5a3c7adf35f276906259e04c55b002b75021770060aa9c3ceb01f98ec92375d421ed034f1cdeeed836067900d6b5f1bc1a04b90b9dc59ccf2b907363de74ce9a86f48d608968f872aa54d30b8b4585385b3c7dd9f15eb1a1cc9bf1b24b1a23f56d358ffa4aea87f6feda7c790f1db7ac31267c318f814bba1b8b34887f2557831788daaa29fba10e9b05ec0f818d621a4335febe308e00a003b650a321c47d48ca930898b1182e9d343bf3143bdc32358da1cfa35b179f7b653a2637ddc6379a8fdb49fe287647caa3f6d90f70012f24cec56d369f97cb37b45bcba0014571426c89139ed81134baeb8bde52010ad67d033cad08bece1cd2a8508b64acecae82556665b3a1e1496c57fad194342716ca45c3e1cf73182968066269b4c8658e84275d4d65052173e411d59fc9ebf6fb1c6ce459ab7efafd2b6f7bc05cc59ccf501613ff85cfd7793392fe3cbbe0d58e062602ea080eb2c37adf40430b870b70921d34507efbf2138011dc32fd73ac0122f724fd9f9b2692a35ceda59376944aa2d23d1f1ed1559bff581e90fb555082c3e18821a375a60294387375cbc56e2c6ad6a4ec9ef1d521e8d39472643708e0b5786f3fe9e9fbe49b37cdc5b239e3d1f9cc5ff4a7717b4d0d7a93bf19d96c7f2bd23b4ef70f886faebc432e6216f0ce641d39e7e893db8b3e248ab68ea8bf90a712afafd8028018dd919257d14df8a5e74d08b0a5d4af813e80e00be248f0218d2df630d2d25e504542d009b3ae2d076a0c1da763f2a219184ac865600b6ec52db6c54590f9e08c07da876e1abb6cf51b6f98c4941eeabb8f0cfdc8e850a3d5bda8499a82caa9db7279ac4d0dd557fb07299b7828f80ca1fad704d00e7e61c306f55dfdf209bd62109a3f07fceb4952b4b0349920391d451d7d22d3216f561d880a24be99b02923a55dd6b4cf9aed7dda99fdf9adedc5f927c220f79c4c175a5f26517c72ffaa862ec5c35603f6daddcf0657558ac780d6397d572cf846c2284a859f71684c9646ee76fa7cdd9936440ffa5922944552a6e1eb4a82d7ad531c09685d7f1568b111145c36a95017d80567c5762c717e5c2753237275f8f9589a81daebbb1ec7c5ed29aaa03fe81a9a31f001a1257241c40ec9b1fb7ecaed97286d90ee6128c22f65cb2f1dbdf96849b81b4bbf339602b31593229a4d2851c612f8434f3d2e885719217716f8ef4cd5e3c604901f0d9c116eb796bd46f8270e5adfb0e8bbd6b901abc47d5268cf33991a0190d20566094a3b92d7b197e43dfc559c4a75bb34bdd1bf4dd2d724c98b4f74c4675ce38ddeb45acf3a13c2e2e1c4e16b409d5cfd3dc8134d452d4539379b732747fe77c2e1f08bf8b5022ef3fcb5883dc62fb81f93c84bbd444985e6e462824dcc80b3296fc2c79f47140c09ae38afd48d4416952e62e745bcdb8a6fa81c8ef4afbf07f96b157ef5b9f84ead498d791bb9adc528bdc319ffa62f5fe78f4c00b139c5ebab3e6777cada8d7ca7db9d1c6f7a80a1a932561854526306485fe5ef1da394b6bf92a863651284ce257c791ba6d11513875943b548b3d56d304afcbd4b888dfcf0423b701ef22fed8741a49c9f0e8aab041adc45004eb67e9904ede0d1a9ab8247f4b9925bcc292f8c87c0e1b7add924b149ce814a2b45f3736e2e79765813b0af76cc6dd25f9a2708c6bc34d873f8fa6e2bbc7f76a8a9c268c7a763093fe1763ab731f2e7485f31045195c7ca678f670c9bbf4620eae5eae2a97ce66bb8b2c24e634fbb8de041afa58035d45cdb330461bbdb302d8da498feff238640acb351d6ae7e9704ab8ee6d70a5a4fc76cfb977ba5b6415714439c0a6d451deaadf788f66563a4691e18ffd9f1a6cea2583641e369ac7cb5438067fe85c585b3ce402e6d3490a486c0214686cef9f5ad7549501c6729539ecc6e2fbc12f1731f4eece1698b957975f613a0fb924230634e5cb90ca167fa6815d98e4f4c6d9aef95335d34dff1a0249187516b8d87cb94f8f95d6758b412fbdca456226f8d8b36989cdf588803279d040de565c440e6eeda52d6ca5c61dba80c84dcbfd96aac96ac2862be35d0ca8915e313d37dc87e07309c6678ea47ef58f1dfde09a3b2b281d3ba96d8811c4e84e569b33b9077ae4bc1747839d281bddcf8cf6dc21a8f0df429c28712bf4b06beb18261f2722a0939ad7d9b3397d6c8bd0e2ea148ed04b292eb75580ca6080eb6ca4c58c9cb5cd2d19969f9d55be70f24b2e0bd359e54c7e7543d8f611f753492861ca3e80a9ec1f1d4059c04bcd132510aa225834f9c359e32382d4c2b8cda8cd4e28c4241000288eeb09efcfcacd33067f6caac83cdafb77203fecb3f4ff34db85e813363bbc91a2b558a405467a898469e3d5dc959c28c7d35f232b51b92cabbf41e8145380832017d42552a57cf719118dd7de1e8992ccc5bd494fbaa1f902abe5650f0f28e995723358757cac038299fab33192a7e31a91841e5332959fdaddf9b1c4c7dde7f13badbcfd762899bb5dce385aecd833fae7881b396c10e2714027efdfc04d2ee31b401df49a9f22c7e28d90e6edb6cafb84ab7533ec9ef148a176fdcb04acccfff53d1a8f6fbd7b640689b641e9b731b5afe00ee062b133191952154905502ca96a62c69f57e9c6fc79ed04e0703a678b4bbe44223c669f22c8732db94ebfad81b60690f44b2a313935c4af95ddf008e83d193714013f6fb88a4f1df5eadf49c9ef89d37c1aa2670898a759fd425092b4e9ec0e84de9761e38001a98a6089c7fe91849221447bd48b4a10d531c62a1eeb7edfce432e55ed6111ed6ac4069040f46765e8b88b309f63ff553b5b1d146aa4780cb2aeb1bdf83a0d1efbd5fcf8d58403838015c8621c91c181792a21227061888900386685ac6a44fce6ee9e726a8c3c77dfc6999b2d3992e8d96b80f70b432b357fcc986be10ab8c3f2b517d164ca8620a6b5e2b8332b6a68c19993d81bd113b068f3b1cf08565f05835170b5f9860f621bc3be1be9a1c59557e75310396eebf9e8219adeba0fce159e9a8da497c1e778996b8eca1d1c672c54ba9505918efdba61712d537a7d1874086825dc947e1761b826dfa45ffd517cf287984e1c863c207c125b586c67f7bf3810b7b2b25b5c833ea1bb2aa24e0670468a8cbf4bd4f61140502f65af0236f4aa3e9b6baef1b53c59477bc8d0dfde1219963d008c75d985ce4a73f32aca0f170873809be50b8844f27bf7d79275828232410b27931b768f151be6b5299bc1fe0fc3fd56eb8f40e4874fd191f4b7ce77f76508ab2e6053af7b3bd3f13a029c7dd854ac729e658a4c0b05ba3084465b37d5a2c69693261ca9c7e545326377decc2f7bd75c1566693d429636f3a794236eb42846faae369d9e3f2301f464b746d6a465d6a8dc64c45b04f50d7f6567d2b787001317012ffd2c61a31afe56effbd3ae602a0c0796ba09a6aa6ef6aabbfa938c99bb29156c76260ca4d9afd8868e61ef89ca9a81832c64b905c0f6f91b14de84e7f1afa5142e2d4f916a9a7375640b4623eae74abd5895020169d90f7e35de1a714d721a363181f20af33341f69188b359e42e0384e89aee89f4f4d9a351cafbda0e4017b1a1e15c4f628803b181342b36fda9030705820952cb8f1db14d30ccf58258a9056b208fa7dcd81c6a7f2f54c2358875fee3f8dd92ab66fc8c139cc67dbad8b566839b4e2afec32c51bbdb5e8dba75a93b2ad933d6574a550eb972582d2b3ad7dceb669a65c7445f9ef09529dd516747e065886990cf66fbfa31745ad6d17b036ceaf6e50c09e23455a9f198339e9b7cd6d4e38b168cb6b7ad7805a4d2879b75b2e17e1271395988ab6c24665f8351d1fbbacf932f01048b51cf0c07e1baf31bcd0f88947443d747f740a92cad5b06bc552f903e70b45400315aa938e4df941df8cc80eed17972be04264f71366b753ee0c47157bd08ed52ab0243d076505dcd888e1b6f619a9338e83203e0d7ce4403068898f265a4c8b4916598a74db032ac08a7c59b17e00b48d2f622e45ac01b37a30a288f7d321e6476011069d044deb5bee32205ccf626cf91ca882301a9ba047e2b25d1b97dffda9e6feaf436eb76d8e68a6f2fe5c5102333f2a88c10cb1bdd3b14c96a5a7331aa37ce10ab52aaf87ec266faaac8edb1b63b301c885655b6661fa86b016dd7ddc3eed7c2dc19daedd9a33cf85d17f5a1e06b5266e0330898fed6221ecfa3b7441e71f26832d1407ad8ffaf03909414136c7e411844a76bc153b4cf009e9d89fe74f03b0452889fee0d3b5fa0f5f82e47493e62a02151acdecae45d3c6fb79a5e6ba1ce39fba1f18b570e726fd846c56fb58afcaec2a7410687e9951624f2b946fb8873d5d1b1f4304df82b78ad3488f6a6a12fbd0c16cc861c3c135ec624fc66f99d9ddbcfb00b324b5da1c71ad186e68474f2579fd6940bd2accaf534b175c355aa96e42cc4805c86ed2478e0e1a96b51684432b26985b305c38eb8b3a5602b79e3e13f9fc4b6ba8dd115cb83ec98a91b17819d1e0eae7363fdc54f2e12877e672c7359580493a258e18bb92dec53168f2efe02409f4176873e2d2a8d5cbe7fbf904de541bc82cb8e76bf686195ed8b6dc89e0f5b318577bc91b2f69ceab47a9e5661d238d2ce464f1b1eb32251b60b270b0f857660d5e9900a02d350ca3067e6fd963bd56c54bd44e1b72d774e576fe29183ee04191b0d56c77e8e965eb405923c95fdb6e92e8cc574aa5840ec6d62358439b18bb33c44cc17bc5c9d642bd4a2cf8162e8862ae5a641662111503ef0cd70d0651f0ecdd0c3083043107053e714b89651f79b51317fab73266776bc3e6f6961a235ce3ed9697039949d841735cb57b28c85bb7bade789b384129defa361e15a5b4c9371f22b8a4dcb715e3db882aabebc51a012073a3d9cbf4605b1b22f233bea2f02a21f39e60fe2097a500261de9902335edd4d8565df0540ad286d15bcc035fd00c40d8c470ca82abe3c9bd90d5d7b9e48db37cb37a3514e88bab533c53a3583c0bbe7351f0489bf2ebb2993e952606f3931e2815050f82ba8c0c3f0375e61f10c3e27163f8b88e87165e7a02161735e88bbbdee3ae1310b990594184b3e7ac6ccab502f26b6503438cfe0b8636c8ef08e486dfd7e45f9c0380575cb122cd0a6082bb7579fc20ab6a8b36046c8e24af8e349a27298442dbf90d70bba03a112bc85b0f8ae8ab7b063f02fffadfc9b32aeff1db4b30f139f1990ed90755cc650accc0c841e6c6fc1e23a1a10e82a9a39cb0c1e87ef4cc4b31378c7b6e2fdcecc8da8c691f6832edc062c86e7ff9436e14f8b105395f6125539b96d2c839634e1d179ad365f512db2a357c8514f5301d9c5cacc8d03535aa98a1506bfa4599434c5c04c3397b11b783fcf805d2ca8c1f702c784892503515985f54859228e18693d67d5c8615d069c50bc11ed292a26c332861c84cd6296ba81a7144a0d3b79012826625b15205643723a879bb90c977412c5edba86073be9916fb16d128bfac05e5e9617b03926df079581a0ea31c29350578311931f497592cea1b412ad47b59164eea35e5dc974db1794f1807f3b19b43584775a63d50494e6ac35dded1d2d97ee8d5cce5bd612d4b4f5cfc8b2c400a1b00e0b5850e0c1802d0d05b04ce07dfa2b0f719ff20640acadcb2440205b90f6a321f71537fe30cfcb668d3c481435c1cf0943898ddf23eef5f985cf9929e761b627edbaf5854310480e288298c4c31d1ca4d311f1e5b655855c90e4a334584f5b3e56db4ffa10e26756e3c52c35acf2a609e3f0b3ffa51b1bb71d3a2519449f705244b6665b2400964f99ef4efe905d32e013f27e9f4f4ed7b4ecfdd15dcf3043a63a5cdfd6fd9dac534de1713252ee5b2a9b9956a5bf0c53c10422131c48ee43c4a9fba685a914ae9365974eb586e63f720a1febfdb3ce88c8f664f6fbec58ee2b6805f10276036a6405fb6593fc5a27245f8e88daa586642d02465be72966b1cb8f396a23d7b80d1c1d7599721b7d9494a1d3ca1c17e629f67396576b08959048a5a4ff9d4bb69266947838e8d4e952a6d2ffb4f5ba1b48f573e8cbbe461a34d98b5edc21eeca347fe990d8fad3beddb0dc19537134e5e10b0fdf8c5e15a843316a8d4933ca11b0c608f05eeed933a419bf9019ca31e955719c93b45ede63846407f0a178b2161a8838bef4c5e15b928b4556a66b2f3d28eefed57cac98dfb59589ad17290d19f6726ce622cea11b859121aef75562f387d1b4bd61e842e8b87b47bc737af39bde3a28ddae56798d0df40c013e2264094a860dbce0d74a2b9c11bfe4cbb968c7aa1fd19ff97c62227b1596a32ba488d063845400abf99061bdc514bdd42185b4e586dd4f918c1887731917ddf90ac6fd08bd04d07996f1c253940d4f09125afdeeefe3d246ba79d01bd2e164adb9b63bdf257a4d868d55b9370a19564bfbb4ae7d6ed7821d3a75db4f312253f2ddf4628ea1a30c556bdffeb39cb6f7f9fc13cf9b727230e083c6866eae60cfafb381821d9e7c0e421cdd3aa9923a0eb663ee7e656f9e073994961eba65481b7276f24e043be3ee63535bf00360a3946b7b294a94ae3d0f4051d0fe8531f44291f8e1e3bcbea909116c150f223e7bb18560a8dc2506cadc5f0ffa11ff90d807cd1a77c40cef7e5da731475d782fa0ff97388df80f26e3bdada88b262d0b75c264a21bfdf67732b7c9d532a939f8f675dd84cabdb1c2f25ba06dd9eb507ca2c7cd69f9195160207c36065fd7254bd4d9569c51fd5a475d9ee291d6ab50932cf428f15615067d7207b633b628c4adc1dbe8240b3eae56991a7f6811710b07ae5212e7aa5f7723513f35d22c796bab5d3bfb81ce23b46e324c1fe4da22d57e10cfa01fec2965091ce2183473465898dfc62365147ebc03dfd20eefe4b3d15c404bb1eeb9ea81835f78dacf78b19738910b289f9fae412c1945ac1c21f36489b1ae543c4c09a746b373f125c9b9d19022e8f10714360f938c07e527bc214562ca398a1ee9d8e4fd90087ef652a295c53c85f94953d212354b24ee9755acff589f119351d0535a61277218adeb95f98896053cfe1aeeeaf4a50d0114c2e07bee71a6642741f04f00796db654895c70d206009838fb511d18bc0d2ea64d6b96f3795d944ffc6914e308e5e7dd3ad493b546d79d75098ac7c477ae4d506debe534c6671e46ced5cf23f24a9deafa659a943a2f15251a180416edc8db175ff0cd44d67f23be2bce29cec38e2d607fc6c3cd8bcdd647bbae65cb43e2f689925b59e12c271eea8b59ad2893fe778f0c751bf6e33d200eb91502f06153694e92aa715be907226a436767cac1dfb9b649cf649d7c24310b2d199b1bed3786bf81d2fa4c734a79bf9fbd2821c9fb46b6e9c15feee947a9926bf569e9b1ba38973cf2915b3b3611c667ffdd4842239976715a9a67e669a3059f3e421dc21e71f05c5394d11f18afd3e4f70381663c26d727984cfc8c378acbe4f07b9358497795b0cdccbf164a8ac505d363c2d5ce0323be2ac6f6b3cdf39f8454b8724f3a2eb64639de9ca64866ea6940a24832c8298dd401d8fcbd758e0f164e9cfeaf745af6c4cb8c00d54151321a478f5952476eb8c9fd661617e29431faa9395a2b96b9fb4f6ed147228cd2848e1f5dd03487b70208386c7aececa71357864b6c2392c2781d063cb699b293804ad5112a7e9ecc19ee8f74f0994ce728ec8d5da03d761a0ed45c1214340a817951a14b40fdb53b31b776dab093ee6035e379ac50851580b71f39309b6b29cc523cc63dbdf618cb9733ec310be07d6048a1393dd49bc863579b7171545f5649c0762dcd185cd00ba02d382a6a03cb2845c07efae1e6f069eaa9720d3119b4d3855ac64d95aaa22c61c8d3544fbd6eb3a2ad59afb78ffa302b070da7a57b32192558f48a71c31a626b99f98eaa216f1fc324f9381e8cc8b02b85b867ea30d56fa7a373f412fd9049618a698e686584a8734ac5225017a25a5c8603694a8a858debf75bd9f1e95d3320ddc0cc48af00d889a495eab778fb782e6c4cd2074c8c874d8223cce28a40102a08b4d8062a91c3d429d754eec6c09efe22ce19b29336c8dc6c254b1726cd2936e604fdf798b63fd6f85c9c8bfd8004924e2a3bf94a780f9a3a01b4e73ea71aeabc9acbec4a9e5ec5552f2aeebe8a9f686845028da97d46a29d04697d12e9e2194dd1e1ef711fb172219539b2895f81765de8abe39c671b290e6561a077a487a2704de689fddc0441b1fc25d26455e24d8bf6cdbf10ff93d78189df85f892ed90e5bdf592c8576c1219d65603c54dfbdad66dc2e183f3df26b1b4dc574228913c8168eb024087d9df23a81cd8a949d37e1d8291a75bca75e787a47d003c96fe3905c6becd28c1036815b68b6dde1d6a1999f7ef8857bd11c089fe5a8e45afcdacc9ef258b503234676dc8ab8f63c30a79d3fbc59ffe9ed2df66577248fbee21091e9c74569c435d5099d9dbe91788dfb1d9b9b30f6028a155f11aeccbe6ccb1461abf7e1f3ded142fc552440a52ca207d6091a0771633f6f6b6ac7af2bf6d5a3128bb7a4861d5e976084957feeb9778ade1dbe6f4c1e77b79310f478dd1f83d92e0c36ee5b47210a8c09bcda10b84b681d986df95244d29f7172b8808b5895921a3be4a4bf045d05ca1e45bcad162e490fe937f44ebfe421f0015b7b0677f55298ad8345ed280dbf4200ad67cf25e5a017e99bb1359c1323d211e75e648ef97cda06fa1aa7f2272fc7c6be4c090639b952c0415ff3a6af1fee4302465958965ba7d29f9d17898227213680ca970a28ac16ad2fdd3512e85d067ae9c71df554eff815d1323660be8efc7670e1e3c1bf8287574204cc2a807ebf3783296056a2783ce5543bfaffa2c2f9fee1f8e614c315d51f42be0c62efe361cffe25f8216757da229ce46d6b61b72f30469380181dddf22b948679ac9d56426a88f1f74cbab40ba1f4a3253a17608598445f6076f44eb57f21aa66361e5d17656eedc6684e3be349cab7668ccc32636ede11cdf19752f9445a026b54765b807bde7f026a0c3675109c4d1d63949d9f9bd4e5718955476a9bc0288b79d90a5f63597393bbe47cbc06f13b6adf63c4fd5f2508df5462d321f3b5710cdef806eb419882b932e70d5d93f33ae4bd7b1cc975a8170bd75386c37751a3ed1a840e5ae090c7bc3f1752b3a73be852daf924c397117496b3a06a742729a38f7effc9e667e2d109f5dcbc1b02e4b68d785c03e308aa9a853221d90ecfa6b63af4a7aba1c51ed9c8fe026d3c7b583769751c3d6a694920676cf7331c26c180bff3e2985d69e5e31fc7af39bda0ba93f4990770b8739d95bb1f90225629aa915dfb192272235193b19a54b5b7a6aa74276e04d62a57b457503fc11dc6274e50dbe1fa688b21007556dbca6a2075390e223dad69ed96459c592183865ef25f8e426a99c62928d006290aa4449e4e5d5cf66442b7029ca18a165d17f8d16b1502e9508376691a6e9b845ebbf95add26b02fc75b5aefd18a92f33d5f119895f8dc6b3b03ca236a6e3d3102c7456ead377e47d8de23cc491c1ef96d70284df031f766ded9dfa3c98f619c4cf6f3cef70ab1202c4b6bb2df5f325ac0ff52573375fb6e189804d0f3fd8271ac1f5da9f758c63e0f8627fe2e546ff04c148dde65f144ef23b999f0994f4d250325127227e89efb67c28a704dc668e7085216cd8e805f3f16d8532aced59f20f08e3b7458a6b43e2b5fa9a6fa00b97036b57cd71de425fada131c50caf18ce9ac6b9f7f8a7cadf8f660f3fbf998274efd182be500fb7f3e5ec971c7229600109130b29edf77dbee9868196b6d6dbdf06235aca23087a7f3aebf8b0ae943dbd5316a0f7f5336fba85fa0e428f2b965d59352d2d2c24b50014727fde56010567aa3a839a326a12ee23d6f25bad42d60280bba2211a161cd4aabb053468eb3cec8433a3c14c035147d8908180da14d458326bf70210706222eba420c0e64ef0a3493cbd598a0b0a803ef5c268064b547b992f5eb634567d804b26e7b1fdf2f786344c128a1e2c42c064b5bf9cbe2195a23f11b31d22708e86c3232fd8fe3588b8075bb50f7adf83a600c249edab8e9b3367416b860727768debc18ddade5b7aec4b1bdd6574b3193e4276307db5de18c5be2f9a55d86fbc754143755d9a2f919bbfae2f78e9bb4576ac7a8221679ade8a8ec3af5eaed30c0b272de00347e454ed8f2cfabdb063af204c12d6bfa5f78a7e8e0d15b7492b9e9950c702d8ff93c0ed21417dbd18123e03aa448600436edb91efdceccc6b6cff16aabd3587e113cc9d10bc2aa1772f2f7c052516b1e361e93705ce74c6b3aaae08afd70eaae81daafa140c98c3b429fb466ce9352f4fff870d70183d687534f729e0ad289b6066c041fda7d3cae359a5d5781c673b105e692f6493b6d626440584e08ba049ff3f28376bc15e3d8d495bc5297987d366db038c2089e183263551cc44107ef318b0da8a2d0145103dfffb69856178c3a5d4362d2ce003e35a6bab1887ca207571fe4ad95b621d43291b2e64c8ef90d3d5c575cf26aef938deecce5df063cdf73ef1ffb67d38e14e97940c0ca6aedf0c497a8f994384c7a5bd179849a4dcfe05101b9f847c3a822a17a0cf9dc90c8b3191a0ccfcdde74e83d745215d7d163a2e588778d5ee73b9085844ab0b73294e26bff8264fa88352acddb5ce39bf329c0c893e7ad3f53712e538bf9b7a6f4eedc8854470fdad69277a15c7bf6bee6f7ab7712a416ec7cc9ece92a733349fb54e8b79eb1f7c4f12305e58b46cb12bca85fc7300c7c376eed691e2cbaee911ebd90b9c9af466e634dc1bbdef9207a149f5f089f5e3d77bb830747466b28443eadb13b4ba9fb021a24fba1807761d005704b6d5b9ddb3efb95742d936f23ff02df506efe90507e42e735ffb59c0f4dd904b4185794b42134f9805b1c430284ea04fc0d60ae42c3be66804e47ee7c718768b38c0e1b45c13dc09fdfdf1c8591481d9e24b2846b4a5f2a4b935adbe2ea43654aac0748dd6b636147c42c85415861ce5c637fe5fe4e11a0f1adbe0d1da89c9ad51c00259ed198d344a9299837a1d95587859dbdf09ae8d1400c62c66bde4539b1dd055dff634ba7d8c18fc2eefeb303e5c36adf038ae3c1fbb56653f8f9176848d9d2f72bf042ff0798c5cceff5809b1210aeeeeebba6e534cfe59be7bc51ad05aa00608997ff039b24d98c1ce24c52d90f4d6a2d2311d3ea087066e5750cef51f545cfed21980c34d7cf21bf3bb4afc0942351f0a9144bbf83eda58bbce6b6b11ec84b69920be434c7188e0ad89b92ae79c01c8bec8f3543bae3a5c45c590f9813040b4b1c8dd6e246e54f005cf47b9d7919030c8a71638e45314b42122b6eddc45617c29c3af675805286c5b3596f9aeecd9d624f6011f4a5bc1cc63dc6d73cffbc0cce1158f2eb5805e8cd62d06147df0fa5e99aa077e4e03bd4d4951102c4bff67bb77292c62e240fc83261b0c055bed8746273aba3aca48622caf4ccced4d9b25c4e71879e88bf49e02be8cfc90281df8c561f21ea20c79b7aa57c964c0a7accfde4db32fd2b766d6a4960d23d76839371f4029d481de945ef305cd233c6b4604e98d21fb1072e241fef96685c62ac1434b891ec177d0cc712a000af8a4a4309b252723aa95685c57a75a775532976de5c100c15c655a677a72f0385f63727ce980c090da67a2ebcc17fb1dc9b48c631023731181233ee08ae86dc529b8ea676b9eaba6ba6e04b8fd77580e4758cd15d05b28f3269b2b36486418425430a90243b3315146d2502e4ef762a39caced2fd6e67b2e3db44401b038a9f9110b13f23bde153bc45cd9135c48371514df6b97c4735c504469cf6a94ddc58c691648d0db10f4466cd8210aa83d9ce8c3ad320754332c972a75c2637181bd4a15f4ea776bb868022292d5a338745d93957aabd05e405ddd24681e5537cf373762dac5bb0e4992a5403ce0d3f4f7e792309a6f6b03a0d78b8648a590a43daa2655d2f10b6b6881d6361d361c989291ad8d12beede6d5c4aacac81193d94ba36a43815298091ca7330dafa7e5429efc4137aee9bb687e8d8136727ccdf0e174280f3e1a4065a4277ca8c4bcc703d90747c9d0ef88769df53ae73f88c87f265c02cd76b8afef82267c38d795a2bd979d33f9b4d7b6bddd03be4e81151daf01d870057983b194266c8a394b9f5ec3579e6049eb56570c523fa55e1e054d009df3d125827d2062ac7c14a92b617e4a72c259b336f9a091397a8f345e422137883ea4aec5fdb35299a9ed8f9aa348ceeae054ccf1656b443a1194eaff61d13c378c9886df4fc0910420e494ac798d3ee13a57a4db2e37acbab28e4e0c04150c26b1bcc0993c4ff9e29e191eb0a1faf7dd0e3f5ef5c6f3eddf0a68a0a1438bb45f47d28107620c12e2ac6e42e437e7711bcfff89889bd86f53eead843990a5941f348b5648cecf88ac7cef4b6698157de4340e62d3e2eebd70f12d37a61e8921de22b1830358d93ab903d799ff08676604d3741881a6082684e9133b557f8994a08d5d58c83ff34be0dfe5259a1d17638c9dc43c70a3c58d1da9a4b604b078a8a80344ea8ff055dabe0bb3d06114da3111c84c3c0e2b48065a6b3eda91a36d256bbc9b5d5c257240a8a7aa2f53269b1ba3af39aed7aaacb868aa03e69efe80e5a557503984e89afa528465036ea0612be1719994a0d95081e1a94d732ed1e395c3fce2b7b367b133e79d425900ff1f19150f79b7944dfd7d4dcc2e038534d1e3bb75f7a50f26076b67603e4ac5b60125736e52f197a167a63ae3e212df3e05cf03d57d3072bf55010de243f9f5e68994db977cbc8fde6e979a5610c108138fc9059b49de13ad95ba040cb96672395baec0b0a4cd861d3a42eca1d10febcd866851fc0cf9059db88e66ae3faf10405db40196ccf45a17db6eacf894abdc1e7ba5f0ca5c2683303575d25f5817c28621a26f24b8a51510343275fff602c1c707163f52ed442f2a656828daa0681b051f7e192b7ad3cdbf1107f4c15e417dd942914bcd8e6c3006ec135e1a356a6165fcd9862d8ba78a3ee1b795ece8aa7110f82124bbf9d3c54c20e8c89eeafde9ccab66c99ed575fe731246dad7a288b21c27423f04a3030fcf1fd518e7f59a884a933033720f038869e72b3dc4af1023bc80f25c55ba60ef67f48c32520009892449ff903dae8b4c8ff0677181ca972dd411e53958a9bd9b75f25c1bd4a3a0453c9afb926e8f0a601f7ab265dbe4ddb2c38b1a24ed77180087719d2d617f6255e2d690e67d7d051f1a80341fe5591530bb451544ef7545acf3da3aaabd83fc7db26922343ec47ad830987c71e9925fcefcb134bfe5b481d1cf9eb2db9a28483f62cc6c73ec6efe4de8002e5b8550b617e70c4c38e3064e7524d392c50984c26926ff30db69660272c4e21b2539313ff111d2c9dd76dd510008e9232a2600019a081d0199a870ed01ce2fd7ebc0190ebb75966a1b2bea04d3928e2871304429ad433146aac1306dc1434eee8b13a620d25f6e74846ec7bca57628d3e528436db1b0242209c8281cf0fd390ecd4b43801436d6414c4c13cc1828a7ee6671c9eea075d43963a27061c1101798ccb607006f6925f8e7fdc87833c69f01c27b33152bfc003bbe1f2c5ed60165baed8a67a0b72ddee9b2f69ecb7fec920f4f417a257ce8671f33f850959aa51c46dc969e31ff2da3040ae8fccc2eb187cf538aea4db435c3f3d4d24b9d85711164b4958377604cc4ef84ce118a4ef82d0d1b7b8e59bdab516a4180356ce24121efc6fe0c55912efb552b17b2b0954a19aec87ef824100dab1b6b14303d4d9b880fcaee40277e2d988e701367bd1f3bd47ca69dfcf147d5f3ffc5133b07e0598e7a8d4850040a554be6fb054ec6877bd9a939562a080b72ba1d0507cd1164a108bf1be9d2a1309f469f82648a81b3b347c8c4da8cee4887d4d62b5fce0301c1b669dbf33983eb0da47dc1ba8fc82f18bb3d99c88cabddb195dcde4cc2d246eab528db22483a6e4f33fbc6cc814f8c98f10a059e68d64d4f5523a644238d53d3bf2f5afe030c4135ac7cc4de25d2c1550c579c5a403e7f8fb897f2a35fd232808b56636c299973acb98d989e2bf785d271e5e700c4ea6e390e47d4aa9f686314a5e76de1547979824d5af1c1414c041ae91f711ab94ece7e20718880658bfa40819bdc32dac2b9bd24afd45e06b406d512112af4000227e0efd4c687eae6f303c5d0e021fc5aa6810a4c1c672e231f0ea254686545efd6d287d165f1c5881312cd7bf41db73f2a62a381cf0ad2d6a114bc5f94722716c7bcd522f7a9a6c745963740e76aef6acd7cc7c995003364e9ca82374c06dcba25ca76c6a566c9ad2f0547ce39f3326422ef0b3de8e6b36f28a843610f17d1694b8559cd5da4c664b8a1063a37c22b48106d1ed8123fb51445513ae2e95db95dd0e87e99242ba3cec712c9ba5ddcf15aa0417c93314d0c95d4839132e54434d995fe37016d1983ae276111dcdc0b525595a788d624b821f4d2d47bb20a5fc0b610f6d1049f6df801db5e217946bb9382f13b8b10010e7077e23b34bd48ef0b1d515b90c91c78b2bae0783b624ae7051b214a6fdd0d123ad298755a1677ed7823d58dc734b01de6672baa401e61588c9e331ec5048700d50eae1fa52b7a64440db860a38ac95b014675e17f7005de9666446e8b3c736bbed9c44a974553fb9d9b6223506cdd7473ebbf4edab174378e13fb7167bd2f4da17f4467d5464131641e85a99e35734c76be521f7958d635c45ccd7c0d97e0d9fae509ca4dd5560866d2ea96b4f90e94d00d5fc51c052a0b60ffdc504c9391b62a491d1ddd4e23cb562da99af058e4d7981128d40eb544caf6439af6c83c94d9a5eba551e43643b76ff182d1c332e072df30bb20971f1c3465cf143a1dc7a3e4dab87dbc46458a97c51aca74bd9b0479ca5c81f2bd477d3953e165a000f3cd5516fd2550cf6ad4bb8e22c7ef7585e684ed23f3c9c8e7dce6742b0c9aae1695e4c7487d0a2ffc4f75a4fae3092efd867666b585fe0c1287db45f7eb94558f42fa065e1f54c76bde989640e7f498b5bd8289ab1ba9f52d35471863da3a20c920430fb065fd070ccd95e77dea8a100d070d09cadabdf2140e7303b273097e38e19d45bfab841a1a09fde7d4d9974c94527983f9aa33f91c77548668ce0f7899737e58347640cb25dc86b4fa40e138256e049079b3ef0be2e8afa15a87f536d4eca6eed6d83cc26a22a9cf848c24da0fd929cab6672996efa523b8387e1f03de488fe3bb6f7b31891e0757950511affc280d1970c9e2743c4c420018fcc0c287f097ad37bda39cab7e762a8b5186be78dd161ed940d9e386f53fc55658bd5ccd77f42b9d9aab429f0eea831f51de7d29064ce5988f708e20541b763addabae74e59f1a32cb1afdd3f22e228103acc882f499991a1745de546977bd772af52403d99f2dce7560d2e7cdb66552f5ce3ddcef1dad649399c7b8e7889821f45d2faab346195b6ba6ba6224d6042680c4496249ac3a50d1a6daf4da8c0b3cf2e7f7dd07dc7fc526f6cfa55b6e2ccab36e353fd00c74482665f4b69438a39246f685e74730e8012f2bea5ff0493ac7c4357efb064792dc509719c7d4a7c82d8673b0655e5e166f145e945731f2b7cf6a72f6debeb914eda49af4d11a00bd70d3e9f872765225d635f7d4c0f9e13edb90b59246ad2418ae5c52f3578c5be4ea58e875abbba9c42500b6f53b12a8b70120b8b268295aef99f3aaa36752b23011ab864e7fefb52b43ed379df7b8097565c73547e4eb59a757cd668394e1e34eafaeb32910f0d81de709fadd9604fa591c9fdfc23e64abda081de96daea039cade61b39756dd5eb83be0bcba8f6de43b5c4cd6e3999e2c3f334968f609cfe4743cd861925dcb38ec73758993f9b64229f95e3cd11332052c14ff22e54807a7a9e0875a17ee1ae3baa9bf0e373e0576ac48492fff30cd6157bd4e4da2c14b344a631c30e8cbe2502b68063446d63b827201b28b021e534ede4766a9839f04f6936e377f7ad95eca52b80543864747f2ffe9f8c7840552f5cf481eee14118f8543190def3fdee636bbd05f57440fcbe2787eca112c5b18667d3f7e98e07fd1552d63e13c221b97e19c9c377f2145764e678469815b37baa432634c77f2ef0962b87340ade78344be7c447151dc9a48e6f0524161b60ab9694181258a26f2e08bf10533fa7f2aee4ec6d53308f60fd9f7247f2ba4a658a41ad3a375051081e9c69b013b089266c81473e02fa6e158a5f91d72971ad89b411a1d0bc83a7d06e174247487c61550365b4584210eb6e788a0d8660bafce16b8abc70a6dfb72f0bbfac8ed01d5cf7ac7e5fd79b5746827f93ed4dd5fc8fd52e980b062d51fde76f68b40e82b15e03ff3649aecd89319bd76745b78c6e643e240884e7ee2867cc6294bccf8a541374f06ad54bdc6c91fdbff245f91b03d404e8e1832f0106dd83d741104726173fe143e52c3b388815a13386c2726f4695037746ac753d1e747e50323a7e17e0ab5a1ca43d1ef33e91fdff8d134a2f9984843c978fdca4357df163a68deecc1d7f52740e493b404f78b7ba8187cce806d41063149aae40112d815be694d36ddf0441649761364f1a706b783c6c4fc6d8ce7d0c3ebd444c81371d37c409512f87fd7c1221165dc837eea0b5980e167b57d4e8c19d59363ec1f7bb23a82f48ef288b9d46c12da9291b39a060fa6de1caea0d9e330834581d37aebd5471b1c26e75b1702a5bfff36f6899cedee3f69bc676a346897fca35116673ed4f3bfd8dec6588db016e04d3df985faf6761d34c8ab200a6f69ed75e2793923ed88b9183afc4a1f25c34c0176ac03bd3e48619e6318ea85f13cc345ad5eff7bc4be3264446af93343ba153c86f29ac58c25b85d9849ff8fdfe15f865048cb6867fdd08c1b35ebdb85cf1cd13af843c98e6362e04b80f0534a0a91ca9b7e4a25161e3e251624085deab32f8a15c83315ad6c5c78ef7d4115f1bf7e1d1d77449a989db0823ae82dcfe2ad245d3dcd561b894831d5506476b570e53be4b6bddc2bb1b163c21387049f9951600bbad8d55603afe3577c53cc41206403f037a8b09ca4435a3715ac96e46d04abc36c59600d3f4cc8f040e1624e55db3e293150a234aeba7a58e003ec79dfe9a6a175e910f3d67538134470ed79f136943ec0adbda57d05d818171334b796df82d70188e33375209f375d81e87959d702847bab9cd97edb0944c77eabd1feab0292565fdcae28e223dc557c77b31a2c4e467f20752dea5f32bdedd4342230802ad52d4972f4eb760e2b4c2ed09a50228fd0211e4850bf9d24a604731270624e4a1420f39edf52c024d9aa1b96c793ed17878742325c4120adbfdbf96b7f9c5610aff2912333b2bf2b2a99540c5033feb9cdfb6411ecb194a829a67dfeb6831a33f458b6dc68448f5d3f491c01974b9a3de5e2a83b4e4e63be137742afff2146dafe5c014ff90f8c0b3497001078fe20631147f5657abb510e0bf146f4101fa4e32176b98ad06950cf8824d78d9843241584ad2e59ac33233960b8482e1d7602457cdf5ce7264a0c7a1d06c2bf5e4ff2c373872b536a280d4e34d4eed3b8174dbe1f2ad990f9526807347e63096db51aca4e2a8c76374e66475b7be4c70231045fc7c84ebf774beb0163d4223d5924f7ef32e822f9202b77eaa64b6116ab45f1cfbca00115554b0bbb7f4a06279764964bee0fca67b3da7cc73b5989d28e5a63acf6d12944d249c2facd52fb048870b4f6e92a6d91fb57fd17825b685adf383c45941d3c260dc01bff1c7d5b83dfae80393f538b0fff3ecf07f424417907a2c42cdda64a27be66076f736fb3f089a76f6752f7f01d058cac84d6e94e89e99fd6dcc02e4dbcc5a00318cd009cc845dbd951e31adfd7ca138db8a67151a65e9f1986092aa1d2fe99637696e4c7ae1c27969581afac585ff3e6c350ec30cac5118909f999fbe910df333a7e7c2b75f5249d87d4d3b47bb7b8197a908098c5614f07b8fb1130890d3e10bbc49ab7cf7aebf4da6ba15dcd286fc947eb6bfd4a692d053d92df0b8a447b1efae46aa9866dd5fe240514d1793ebb1867a3d314da45a69f40b6fcaa91cc0d6535a74291a17e45f41867d3d5e7c682cc3a835c6a14386235d87c9810a88653dcc2151962de1f44d813bbadcb72c0895e81c9fdaabacf4b722f8fc7a2993cb45a1fbe45a324465ba281db7e161677685320eb6eee360f34f07ef4efdaeee83d556a7b6e04ef4f2c13b5c3314b1ecab2a5cd76243e07959b37752370cd24ee97b78a0ae5f4cfbe101869fe936c287209f8000483495d26382c9fe48c9dba9167aaede910e9d93124fd4e327882fb3b55185793f13ea6aede96d3fc3b79184ee516b34f753fd8346c81ebbcabc508525b2b3386812a67f0613589a3e87ee2122e9ca08b282e2033ae7f52a99b7dc05499f66ad44315305114bed0c7e5578fa08000f39cf5c50628d16881c2c6e2afee55a147b60deb9adc2f4fc257dc57e275e068cb32b1d174367eab20387ee9a0d536ae5f3060e78ec4acabcb6f6ada592dce9f15b4f5a6c5e3695bb25975fdfc210312c43a40aa9d9f10d17e883299cef2e91c97aae55dbc054fcaadf1717d4ea72e3edbe0bc73695a41c7f68d8dd6d4b9728c5e736dd727a6925771db3f4f3ec7be39e9aae4082179d6aa30708ab21bb84cbfd820b5b342ebff987f49569e84658738c9d0fac2db287c51c34d3414cd3c3405ff7d77042bb4f18a49957ea9b0a7700cbf477884197670f3399d00f72b5814483b1c25dbade13cd742b0fb0751a8c113d636795c40e313f1c0eff15a4d25305fe0b86ea0b600e3877d7f3d5f0b1bb3fd818985fd733cfe8ce83620b84f9e027fc83e62e10097f8ff7ffd80d9712942a1d78e22ddad7e5dd4eccc95ecbb911e69b2ce0396a972d96314d0051ed96c0ebfb8a117f7f674aa42c11a3317b0e99df5469bef3c77b3e4974da0723b47839ae5ddfc4bf7c6ebcab427ebb9663f1c22c7a5ed1023d2958b18aaa75270e93df55407a9e2cf2f66082dd13f911e5d8b51bb6a748e61d6ddb93a34eda669e7160dd3f8568a1f41c82c727ddd6b082987f9f612fa9d200d373d510194e6b172d7dd83bf0376b237a09c9703bb962f0e9a2d81d3b768b435f82b076e516541cdf6e3c4417c7994655a989b608c77a5de53b03b5855b67900c45b9393bbc5318d2bd41f1051c6e3a225ebe14547fcda57ff805e00405bb06f29794e1607601de8ffdf68a4f6f5b395b282f5385ac4c4e0d4263167532ba3dfff4958218539d3897a1b19ec10f332da21b43fe97f1fc328a13010e204f9408cb80eb05a6eb447ab830dea97d1a3549a50044ff2bac63c55fcb4d38d2df6c357999baa70d45a831bb10747e30b40fcba73bfaf25e687e146b0156a3fefe0e4b881d4f1b208cb7d1d59f2f676a20def9143ca5bd0992de84ed779f53bf81c490e6f414e6b0528b5c0710f4394604cb9a09331e85e570f647c96668142089b9e6140e6debb70f94496f770b0bb5d3f077dcc3a0855223549f6c98304f7c2152469db8af3f59af791870b9985319eb72a9880b026b35ef920ff73dc48a121a89c0f31a2e8f77a3b8e0602eefad1c546081c95ac54a796eaff4ec35b92fc219454b2abdaadb81396c06e8aaad11eda3c1c9da7b4564a2445f15027f44a76be60e95d0aec02bf247316d217c42606f83cba4cee3940a168e1b0d5adba37e23bc9b306e5361c21c11213bb7e47924b0d96e738288946504c9ed6573bc353de3b246ea6e64b43c587c48d85d86832f2cb5892bdae30edfcf449bd7b6a04aa720c1b7df891d8fadc42f669ec16125f407fe901461ca30d9e6c0bf4c8914a80c7ada0362a209cb3ed47c8dd1df4bd23444da52c4469bb8125ead64ca8a1e4624c31908d1cb53a25e6cac82f1f20698bd6ea552e4b051c715e38ca38c466fe67be850cb674d5d785392e111efb59ceaa82b8e72ea0f9d23fc58204697ce94b0a3b78fab3b896978c181544c44faed5275c3f96f0a24447ec029cb91dfcfa352084995ccfb3b6745d6ea22be7179e38e380b7b9141f2851f8ec9e3e8d3c9c7518f47c5a3282b87265df4ba187e38f1a4fb16ef9cba361728d1ae4a66239b5b2749a4f55347c2a8211b4a3a594129d772ee891c7d025ca01f77e4d98b2cde06f450ba60ab0731b10b7a17899ec863ec441954dfb51ee86238c9812a10906ac6b3aa89b797c4071a2af0e9558a9524950fd94a16577da0b457947748c4e5c19e99ef00ca816d354e101b5e7e63130985710de4cdd1ceceab76ea3aff5192eb73e6ec6e45dac7aa2aa43f0127859a1cb4448b16050a5bc664ee02f77f83fc1768c2ebb032c576e8d8fb82cebc5041caa60b449d9db38b650297cc4e11c8985d69f77ce8155aa74cc375a8adea3f1741a6b7fb6100af9f9b89c1d61e46d7c661097e024c748812596e6295a355bd9a4493a7404361e0654886b40bd14d82fb3325809e64dd755653650979d7753219251577c87d2baebe598f0cf5fae5d1967bc10bae81684ff07c0e160ffa7297d7f7fd5d91406acc6b7daf46cfeb59e4013fb983b6d75739e3518072e50dc801a032b1635d4bb8f1f2e7fe7d958213bc5ffad779564bd3ca0f587c29c219d5cda7009c3b2448f982d09ff1755b3852ab453fef1f076031c96ff6d2966aaf3d304e206f55011e630b29420cb670999d108b60fbc1555fa88b5cf71e580ef05eec87545e74ae415970449db8853bb0ef2c75045589b5d498881f2c5f0e515c2926247044b9cf9f7471c51203f18dd87a77db096bd5ea0ba131cc003e33cc72aad6aa62c1670f53b48923293df4d5ac44e553f7690b8c3926421216eb0d6135bc595816560d9e93e92fa4a5f2771df700cd94674139bdff033e9ccd9a173ec8bb741f043adeb7745badc4906eca7f3614c6740798d6abc5088d2d29452eb3dd3047af1e252f584361ee4b0e4a176bbfc0eaacd3a8a930cadb477ea94800e65a0f630384773bc87d1de33da1908d3492c5ca6a146575afa6a6a79b63e485d033788ddf387d1a41b85873c9ec39d7e6f653f5604a90f181dca9db73573f22d0a395e63a42dfe4ba44490948520ef503a123db790209e6eb1e879192b7f5fd7c4912864eeffc718abc9922e61ec40a94261f6635aeaa94f234e3ff75893ba75efa77083c68b339683f6787a4654e0383b2e6caa15fa3a893658b1db8c98b3c83432142c8651ff8cb0518af0903c8dbb96083c2c88944238babe485c7da1b3c7af0db8d6b90dd395df65bcb1db4f4ca726e2322cf13a30d1760b780e059eb97fa0e65cb2df2afc52ef8349ce74cb215d749da325b013f2101770ce18b364d01d7db4bc0c03ef7e10970c667a9a833f8edc46f7b124da0cdd337f8749c5897161a9e4f625bf1431f39d65d71662f0890f7de77db06408068f364dcc3b21b8991c564fcb3ab4411f0898f08ebd003c1c4b6ce744cc5f0d0e91887efe54a17d57495f4c9790748785042dfda308ebe58f5ea79168979ed0e690aee8213596da113b1d9971f0565bad18d4c8eb778c459d78d288a3c686a045589e3afd2bc967454c3d4087975913d124c697ea6e139c441a41eb9e7380050463123e8cf27fb5543aa00e24ade7db3b02e780420c9259803c2612497e8d35a1c3265a72196336ce7ff119b315bdd5eb46a7e065889830b7df811bc7b2de47bfc806ba368922ec0aaab2faad88b1cf63ebf9ad6e41118c5a71e0793ae578220d0102c099bb9d14a442740abc859f13d63f577244d60b0ffdd264045a9af88a23ff32e9ce8647cd7e75a322618866ac53f5949916fa2d1dee6c790baf68eeba9477e2eba2b5210aa92f9da016e110126aa06c25c1d29b88b625f39d6ab3a72dc7789e5a3c64cf8c90ca8181d9f281961aa6762f611afc531f47620d0022e9a31283aae26a5b01eee6ce3b6e373bc067da648ea4ab199db603509f8dff52af1262cd60b4af8f4270c78293d8f93e4ca9b459a616174d3bca0204f7615b99bfce562f0ce825084f6c0989d56cc167d12f19fb2e16508d4cacfe4d0d9ca2db20025887f361ce7d63c043aee9bfaa87ec353f989d2c26f0755567a7c6e95dc06ffe7c661ea50097b98f5011c808508e06d5e6c775ccadc1854090b106751c97dc292b1bfd14922d056e36ea2af3993b9fe3860105a040c595a5a1b67733ebad149236094c72a5da61d466f2227607eb08071f07df3f0c80b395494c6fcf00238c65c60672bcb437285f2ec27d922ba5412430de20e39cd5ca3bb74a11a1384497fff52d5e459ef0c8f66160179a96bc25a79fc4b43d7f5e722a2ae50313328123a86901eff604e3b14555ad36071a1d490d0bdeaf8102996fd9e6c46e320f3a04b6b32e71a94d2f9abaf92455c79f14e34c7f50f69a160f8e0ffc6a23c78ad4d8bd80588d9168aef132791f0bdfa184f80c0aa1a3d7483cde79fb3b0085f33047e97c4a5a29e7db8c399da21f7899c605e313990c785fe6681bd0e346e5b80ba8f02a5b48c9975122939ae897b06ec21848b2ecc70b6f6b0743ed8c46bad73ddf3d1587937aee576d44d8d96c1d3239c45b602f9f78d8d6153f652200f77ade9be3fa6dbf826e1854ce2d130f7ee31bde29e94dd087c2bf8fe11f62482d8fee8f57396837499f76d07fbb7a37d2ee2e99875ed193e34417c93ffea39e9f2481acf8be2ad79b63987d4ae644c459643d85a2f6c9184d3c60f623cb261fb3c0afb00964b488e637afd7898dd1357261990e628d78acd9690a90dfc1a38c6ac7ad1661583359a8a717958239099e634b73075913a4df764b94c6ef4ac10adf383e823453526050cf90b334548263543370b0fe600c746bf237bf889126741351339c86de2bed39bcac6c9aa736693d89c8debd64a3d7049623964d738319beefdd70c1ac34a23ebe76d7f41c61ef959b3684ab8b95db916f51de9e793d209cca24d5d125f3bb3de5dc4f644cdc8be3506ebb8cc2a65bda8632d72d351b4a8b90dd10ba333c1397dc61ed115c8ed76846b1f232e9dd38151c1dd9053028ad12ffc35ccc971b69e2f75094d08bc39729ec44afe4c64b829d1d2c4f8034d9c6155ba72b8c52b62bd40a7a53ea79f87fe75304cce8babc9252a3f0b0852c9c2e1cf059b5fb9fcd79cb9b516f8eaf02146793d7d7990f29172d592ceabf7426ea2a42435280912a2c2410e6cfe592b0cccd8e425f2a1e1b3a1ab147b2ea77a4d9813b31cd4ffad121f70421d5c35fe7010d651fd96955eda8617cd33d3639bb5f96f81b068efabc9c1037e73b502b3968ba9997fac41da28e7a9a8aea3968d6a78e4d430412501637779fedba9356ab4ea6f4eecaf603d62c15b8e6238b53dffb34ac05c70347010f6d4a7faaa6ee8a21a8a27e26d7230a443df0da5adf8b1a0580ea6c454eacc406ed32c4b86a96d42d20e856b80f5111a68a9467e322929dbb4219e5509ced9067fcf334b2c48fa7189e90505a817ea532ea60500a8fb456b2eb249da09d5c009dc16763c330e657a0d22c14072a52285ca85247c6bada27cb947a5dd2bd35701d8395d9fe57a0b57868130d039e1ee038459de8cbce0ba735b123d9292bb8f072a6f22765269434833c5fe8baacadb1b308f68e3075892224d8c98503782d5259392449e3ba21e9f86b91617dce9e0659d2fc10de6cc45b0abdb1c110061a93c6e30bec3f7d0c6848dead32ee75bf108ee421b9d8bce777de24bf4be5fc6f25285c200432c906aebb068754b66c71c22e26450805d36aed9a181a92c0cdefc82366688eb97e2ee286049e5df32da009873292af3c1bafb446da5d115298a59dd2153d2ea523af5ab4d329d82a9ba235adc723556486caed208e475998092bb9af43ff6032c647d94df198a3d293f4d1264e23af41c3a60d276feeb240e6e365917642d324bf1a0f40eb2687af4801a0dc01bc28d25444d9feccb55da2435edbbf67724be850a00b6601da3c0f812140bc64605629a750610a5dbd652fa89e29b581e8d233c4821cfb84ff8b09326152f72a4ccc461da09f1271732b1bd45f0e81f6bfd89b6ee8150ac83abeb929bc294c3c888bd4c14917122bf5b78721d6bddbd012e09686a275fe96c6ab9d35268b0591e977cfdcdab8e7a29726f554cde4981153301a4a1ff6c75be0990c319f3289dfd0de9aebdc792fa8c4dba37d6a3550d8b1f4173e1489018aaed760ebd1db0780e419ef582f88f4baf691928bc93dcdd330e94f363fa5d14ef268ee0116b700f54405c1b2a8ee6b40517b9ce82d75a92e6f2962e5be6bd3448f650b06513d469b44db9a875a0784decbe8947ba9ec76d26d03fdf7ff664a16c6f6a4b2c94b7675fa75b9984a46732d4857aef599757b09914c7a80aa793ec829433a6aa0e262fad50dcced342ee7573746c73134aae2f30092bf4e861c86eee71cda45482d963eb4a6101fa435c9899c7fc0aebb43aaac8ace508ff8e9bbd3157dc77e4c9dd46906053fb2bbc94c6178b17b3dd07912e53341499d447ac97a8bd2920dfb432ffcd5d59b6cd2036a3bf54a59ef6d24d5f29a16769203054047b08473b8651d1459e848d3417bdf0c4bd7e122c4c4fa043b7f931330eb042be45dc05377c9599638f05c2a19178f69212f34d3b9a2e45dfe038ab76b029df955e5c36993ff5ce2244aa9aae5b5d84bed2f43b7b96e4e9de55bf0c0061599c8179b09c3bc34a5f788b6daef315953d8449dbdcae0f149f58fe9b891342bd68ec2f41d40d7523b36f6e02cf1e4a7e56c8765ca15479478e553f64c3f4aba6ca3c1f9fe3c55e72f8b429c72da5096b868cc9102ff2ad708e6d3eb3be1280ba38953658c064ef9f7bb40f8802f686f90a65be46f64f7d0a0d8f238ea9618b245ba8a5414253f2bb381d9c0c30097c3550b82e74899d85b2c06fd78516138b16da7dee4cbca37060fb4b9b6dc6012a795105b8a529ffafd7a71197a7dfae0f4e0ca30b8157503f07f7898944ae49bc50b74593f0fb3bfcdeeef739f45e419b0a7a37b70e5b9e8c93cee725590c449e336ed64d1ca00aa4697e9ff8360eaead02eb0c90d9a20bbd5e299700eee9c6605402819466da160a8c1b81bb06211d1cbf2e50e9a5e695d135391db4ade5c50b4fa9caea1f8e02ad04768d31632c7254f5d7966500604d12119b68b74c56874ba88b5898857bf194612736b643bb9b11dd382e431a97167bd83977d9fbacf7e94d725957744e1777cca8be65a508ef0f23a3f6cffc116faad6a657e828aa1d3e0205eff601fb7eb51b9f39e4fc834522f1224d84118bc4099776847c919cc59cf4cbee26c231729c68240d971573b1ffd9f5957a7a0656a8969fe2d4cccaa7ba36ec02478ee5b39cf312785759a29575b16201e25b37799c93da86c95f5da02a4868a7e49aeddd01c95dda43b305d0f99c1cd1914c8c50a6ef15f66c140cf6aaabab03c6de2b23bc023ecbaaac9db2c96d8a7a25125ce82896ff0954c8325fdaeb292ea7052848716718c5610ef469bb1fd405863ff2cacb512429266ea24c9b334f136939050406a1d7bd25ea6b51739aa13c7b6d3da7fb0564cc7d140abd8ff95edb9e955545c59742ce7b61f25e6b6f3ecaad77ad8661c84984459830d00c2f250d8300e4b07ae7ca988f2cb000dee8a26f1a15cca70266c14a32209af92b7b875b22d319927a5a910866e533d2eb9df2b39bb64b741927e750ae3534b527c7df665603b2feb220e825b813f6ca5d251fbc0c5ef0a18cd2b7a509b16c975fa7810ba8df09dda7d3dcda62220ef424fbb0357c36547c98ccdb08c6aee63962cd1e2d558d99a7b6620f299a0e9c93e91403d3cc65016dc0035b04b4911c7357b35e8db9a59e35cf788521ee04af0fd199fc7127960baf308a02a515b22ccb9cb3c235c2d3e704a7e3d982a9ea9dffca24b8f51e5b7f429b7c64a4a8728eb331ff763d13591b85724bae22613bd17af870449354b779a7a279daeb8b25635bdfa0d6da138d4c40c652cb92c54da5c0404e599a813d6bdc927c1d4f2498aa6c123927532e462fc0904cc7f7cb29f97eba47d705de43dce01d01a493e783c812faf72525c5a37bbf662c744400f640206c4235e724196a11822b3cef7bf5de86a0653ea25bb7953615d1f8da8d8396b83dab9c36f32768f73ed45a9ac738dea8998c4550dcf2c33603190dc5cb28ca00e003e0e375f4ecd50c579c7fc5ccb6b40e6edff587e77fe4a1743471e1f737a2f4b6c80ca7a15298fe57b49298f36daa0e0d31630f6346065613ce99b2212c13bcf9553b876f1c73acb2f7af2040f174c48acee142c1d8db9e26bfb6df42512bd629162655f50632dda7d7e201c4a100818c70710f466220bc0abe7296db884e576a9bd9756f1ccfce847c7f2b964670f1184615423466317ba252759add795aa77da2b1ca17db7c138a3f38248d555030b1e47baeca235e80f04f1ba9c79a3de495a24e7211b08180958c3cae809ebca184057c80355b61d271d45e338577b8eadfabab6a844ad151a3793edfd57aa3cd0417e1afee947c66713f117327ab75ba1fe42ac129532394348fb09117b32f1c8cb1773b76232f19618f15e4db310a9d771db0e3ac59394c02c66e4a9443b1c853332e0cb53d72faa93274b0694869968ffc15b184aaa3922332be5f94102b995391fead04ac76313157b7721e1e0842e8d738dee99b15b59544e418c7fe3f356a2eaaf90231770ebb4489fd3ce02cefcca950d4aae52957ffe814e22b5465ed6064a35389221cca72a107a77256fd1137555212875998c18a41e9b1b49b4d4c64432918d032828a3acb263b364960ad625fc251aa65fa87c3aa132e60eb65aeaf6322f1408871460ee4dc690ecc6da46320463dcf87cd56da33d56f619bffb6135acea288f4c2d244c3062dd9d82276a44d3192778d1b74e30bfe74c47bd2411d8fc72de991582869d0387b99888e167d6a5f1e5d6f958cb163fbe8be10e85af5e66973902cd5f53d32393b5fa5a450dd8c300fa7b3ea0bc9de7b672aa4f045b8f72c570f16f03a33537c4bef7572c6754e675fce2e6b224c3b45166c7323eb679c2938cb5f0f300139c1f9ad0e49e44855f9e43e6c257186d3e38a9ac7905e41744a3ad6d1d4615e66f1324fdfdcd6790afae9656a9b5cd03197cc72d3562597c3ade2ea6bdaf72bb7a1e08f366127c46ef94a4c680805996efe5192c791920edb26724cbf4c5be26369f57c0fe0336fcc20cf5dd5f1892027ef4ed63589039826bb394a90b234b8d326a0ed9370f1e27aef1f3a59b36d674260faea6e80ca1bb50e1b95673622a87994a7f730bfa32cecda6236017b747a78b2e392c0760061d37dd29b434dc97ef20c978cc78d4500171c32e93a4ca446d5fb48aa0430865f0f50dd3d7f1f72332c46050f88e64a49ae5879f204c239e890b9755b02e10ca59daa77078cd37818246d3e9730190aafe13b5526e0d4dd65e805acf84173a51259865ba6e9b0098f43e7b136b967226e2b63618795eaa42c883073a8220e04065f592b4c5bbf4c887c1363deb3ffd32a2804e01077e03587f418c4eb2508d16b2063f977a06908eb0362a8887ee21cbf845b22ac54584682a087b2a45ce4d663ea542ef91bd451a490450f21c2251bd66bba94c1ec47967994a5cb8054142a8780c5eb9f651020bfa4bc7faa6915a2d96d6afb4af287b33d2ca703027e117a41cf8c5233868889417dce13f122e390111c9434bff65d16b3c4218981136b30082172cb71a4010cb00c5b4d0cbedeea922e6ec67215eb9e05fc8b898ee58dbfd5093a25343fed2cb2a4f962288a04e7a28cfff3366db64c42baad6c145a7cb408e8be99c3db49974a261ac8789f0043f4d2e3558270fa381fdb74800053f7f6c6266ed69424d22bcc92d1c091f8fb4b909fbb069130fcab6f4794d16b654faabdeb4e4a77d2a05fea70ef14607999144b84c68559412f4ca101ba2acbe5f1567c4308af38302cec5e1fd475f4c71568b000d464eefb51bff643042763ae5ffc665798ce4fa2b5cf2512cdf4ea5a2b08a21cd79841a8dd0f452c947e1c2d3518847717676f52b562d0977dcf3f357aef7baf58c2f1cd2f50bd0abf9745372113a457e353baf22e0792a85eb46a1d2fd81e6876e34f8d22f52f7e4f29ee6980fb2db4a3e1d1e4db9e63c901a7aa648a45f96ac799abb54c5e2ca220847336a0276ef6dfc97205fdfa18448c70175c11765295d6ef5f24cc21af7da15998e3dd0ab419dddb3816a7dca1aa9c61ed910ac87f0a90df3b8ba668ed375b87208d355cdf08467d9fc52e2e70d566981949390ad1e393ca2ba15bceafc302ccb8826fb2b81dcdb2ed7a27eb54d4e9ce76ef21c3fe2ef95c7ba0f72460342f51369afb56142a4138aa77231d97019d9eace36e1f83384878720abfd2a9fce37284336a4d5be3d32f6ab73c1445989e6aaee025ab572ebfd8b62921510d95b43c0c0d6464a763d3c8c65b7749c52a2b602305ce2cee8666f92dd2246fe114deb30804fd35796a658999b626ef14d527741146d9cfde041ba1cf469b9dd744bdd2c67adb17716896685b6d3dd379c46a85abf382d3d3d837d597ecabb1599bc010500887669eda427127b82cd04d7373453cb92a0e5beefd9e165021ed21dc518cafe931f5fa0d6ae23044bc8146799aa8684c8fcfe256bcffe5cfc6a4fbbd1b8c9f084a4621d54ddf70598fbbfc3dd8ca1dce107879528cec565aa7a762fbd21e858076966108641672d01b560c0fed9bbd2170ace273697a4416124a8898da9ec72a38233907aac9ae916d65f609ce47368889eaca3c1bc25bdc3655d1feb44d3b4840c9bbe171a9e527088dd5f82eebbf3128cc628ef69acb46ca9cabb037ce619c19620bae465227221e4c41f0220705ac78056e79cc21ccc3f310e317b91bcbb944facee4ab76450b6fb5e93506e9d961d177cf5ebdd74d4b799164fff6409f5ac0098fd9313f4791938384cec8a597bd3f4f7fdb696f795c5f850098d877d24ea7abb166a0187ddadaaf41c59cfa1e66c39a3f2272c8921e99b4a12d06ec3956555c31c971ed9f33f6a11e02fb2c8b5aa91eb013d5ca4f3709b1e4bee290b6cede7aa5a5a134bd7cdfd7ef575baca215106502c84efa38ae833a100ca4c29f3a0c22846f3ce8b4ae9fd0b3ad17aedc20fbd9415e07fd00e5eee907363d3bfe16cd760262b9a7fd7e246fb72bb62046a9bf1032d72967a76147a02deb4a23aef71007edfe59d85954787511d49237cc03aa965e32ee055297a95a738214522cf9599935ed23386d7eb4731c7146b4e3ed2f44da7404288db2c8ec67c12d0696599561d66e23ce0427fd3dcdf88cce6873ffa2ab7231f1c6f9501f334c6a7e09a8d871ea7c959477d231975e8ec8f6b4503fa6532ce796625ddefaf99a182b500df1ca06798c9dbf24ed8bd06fcd76475546e579812d6a06b5c1215f8559225777c7154bd51412d6659b51ae0d46a93407a5897a125ae39f9d1ac13739dd16fad3d1f9d46037dbcdba0866ffb41344eebe4f9458491647186ed73b24e14761afcf039a89df48ca59414e0afde9cfb6e76f7c7b0229a7f1add69bf2bc1c4e9af41cc8795b4e6e6fcb2598f0b720b2317da5f29f51667982afbad7c746e98335e6fd6a457dabe58673b6165e34062dbb684a6337358e5e402ca4327f976d883ca29ce8c2f7d429b8906d2c3f436a23495f26bbc7dc1cec1e10b2ca41fd70bb16303e487d73aaa2ee018eb7db2c0f0d4d7631deec8bfd72d3123223b9d3ececdc0e63a6e9b9de5b708f0f6064f3a8a90762c3382b08ad966ab6352a696103337be88d9f3e43f24b05b6a66fe0e8acb97e6059d03a9e362319f224881128c26419900c68105d852361fa9e38a18f7855a437f8ccce02c3dec0f7fbbd23694c98423ca07634f66cfefb026f2ecef88a856e966cec82373286b96247b56fbcd5601d5d7591e1ea42328e50691e90b2b5dbb0f35ad451a1698b7318486dfbe6436138c0ef08f5ab0e94f4e3fa152fd53cb41af8459bd297aab8cd214c4f7f2f4a1ed0a6dc608714e8f3391773e72939fd8c615c3ec8c3f5a49063cb79fe9c1b0933cbcceb15372ab2a620b4b2c1651f6f14d61f5b9147883d3398a0d82de5e0d341dbc99c91699b3205e2e87418ab830b3d11ce012f43f3b16e47e799b3dce253f15191b27aaa6dfbeebdd2ea65d9d04ceb66e7752ce5becb3236d0b22e4f6ce2c39ede19fe8f688cf954e0975d65b7081877b0de2f7a248ebabd2db71fe240d3c4f01e6593ae9f2ac2874f61338b2b50155b7145c5e9d62ff1fdc5b2d464e90352bfbaaabe971494b90815ae9d89a733767e1bbaaef3033cdca50e5331d387d6de46fd45ebb135c655f5ffdc658123043769b932c2dca6492f16624f2f8867ac7acde897eabd6e2b8df49f02537f573a765f5745f8188206735be715fe7c0e146da361439bea3a572660794aacccbb881cecb63bdc2eda7fd2c168268f237d1557c27562e2d22e0052bc8a5620ae78ff61dee4de24e14824effcba2eb70eecc8355b64968bc98e4e48f54e93860d71dd6bfd2b10879b3f9efece2d08875f885a1c480df8aa61336804dbb7a80314445c331455ef3d81b2de31859bc22706949f6dc81512acbae17acc983cf50ea54a3f97783cb48f7783955ff7db81c1d2f5eaf347eea1ea61049f956c48e5aacdfceac9b72a845693f8e4e085e04ea02485d98da5a3943f0921dbb4ad84c33aa1cead409516fbb6a67b13f73d83c09466134c3c0d70d5fa93fbc76648c7f2e43af570f438f06d8316a6e63a64f555ef8edde87057395a3f6fe97596d51daa22c91847d6cd62d598965ba6db28ff849139ba5206082be39e1951874f9001cc409eb852cbae19087f66abd04833bb2ebdb18bc5be1dc64d5f9b0bebe89b6a732222a61513502787e639c25ab973ae8cefd186f79e74f0e03c7774a0b4de0a2f6ab05d385a6354d2b5a080029739e8f85a97eb1650ba5b242bf2600feddf35da4b0d07d24e786c78344673840148cd0f7fa5ca5f958ed76cac1e2666cf3c4fb8de956baddca7298109c741425eafaaa13966d1879c95cbc27d7036410f480a392d8568f64b11e24de6c00413a6425693cd35dfc456889dbcb0891f57877ba9df935f9536e16e3406efa3bcd3dcf2b971e63490dd0133a7ae30eeb620bd89b292d584f59e599cbe5abb06eded9971ef648ea7a591a383df0f9e72dc500732edee3bb9ae6e31edf71af442a33a5e5361461d7b879feecabfdee7b625f2f0736fd2c161cb4e5cb9e9d7a13acef97d08359a90f8c04f9abfb2be1c85ac46ed9a02f0f31fe7da591bd700b062be9a246c8d1bd3f6384cd2a23b05e5438c01329012bbda47baf6e36917ca4f2fe3f85d3911f0ac7185b031be6ef7588945ceb9cf96ca1db0b426a0d525e8c566b9f1ea1747ded9b5c5d3ad7f8bfa7f6dd078692dd0f5aeebac55203ddf936166ac898206c1232a7a19858c941260b5082957b215efea31b3be8199f2886b474ebaedd72103c302f0814a9f444aae93de6e73c6e55ee10dc137c07915e65d572c8347d60219c12dea7aa31c9878e560c2b140494bcd244e52dff08dd8a0d177f2b46076dbaa418ac8ac422f2562fb97da3caaaab729cca7f5484a69c8cbe4871086562aef5a686d5e60b4093e7e39ea25b6706636c3d95dfcb839a8b31612db5d3b5f2ca1ba6c16ae43bc8ba8b72f7895702de35f2206e171fb102bdb4ebad20cc00bfcbf579d85f9fd3f7d723132bafa942b6115a11209a7eea2f3ea9a6c0cb78fd6f71c4c6c0dfa8fb9d26508ec335ee5a7771515eceeaa49f32ef63e4ef2980b6fdf521a77a38ce3fe79e84eafd0d120f9605323a503da9064910909677cf67fff8e77dc45f061b25143351d2c038b348cfbf1f17a90b6925999a655b44e4416944a44dfea9b81d1e227d331edbacd85845f66afe525ba6bece700640265c74caa2c3875b0af2e3bace48cb2f7ed55b24a7d65bf4ab8b10cac48b29b21890e9bf61c9fb5c8a83286aa0e9b6d56ad34ec094e991961f02d3b43f1e2739fe2c81b3c92f5a172d285831340662020d23d5364e8fee1966fab78929910e7bf96d9c253fd7bd13a2d4b53d72e793518fe8e69ce298f263f0ddc69c17fda408108bad79fcd81d42843b3d7c0a0bb5c7e970318a5679e322ba270d29a17e195ba744fb238db38d7b4be4db4b87bb86ac08fb644e11605bbe4c952e281b320fab18a522147b0ea5d3dfeb373556d2a26bb99a94d21e30451257a5a1973c93ef589df54a3ef3c3c917f73174f74a35f4f149ddb4a85ecfd18196cae2f930b74546be1a7531e311410ef9135e43af1e7fac7dcfdcd217d2152adfa944f819fe205ea410238a0620ddbc2dbbe1f7206412b1469e1bbf313ebb9a198414d4c0aa78572d8cc61091564aa973dba051592f2437b376795b2306059be94e4719b166c6cf473f3c8270ecda8bb90568a24fba5bce49c354a61700c8e4da5d25fcf702c63b9b1c4f2268ced5586ab97643ac95f9fb3f4bb78cff08bc1492d94cf6b06633f1b27e3da52d3a754a1305f2c6b889e2131e990d9fbeee57dc7eec75cb6705cba4d1c5cdfbc7a5a439a80e3d43fb5663ac9d75dde25b3e2c558a4ee7b7a839113f94d4503d2341b6df4dbccedb1675bc9a6db0d1e1402f6b43cff3c1b311248818dc0167eb574329a14d1de6bc8ad2a96cab261caa13fb1f5575c0561905c354b34a0806cfbba4ef31fb6f4d576f4b5972a23a72899be210d31a87b35fa88a7a156e54573eccb4add3f59a658140e46451a39d4f8b3f99a6466b13790c991b1cafb57c27c6690433d65e5aafe4e931ca25f66aaa2411ead1fc806c467d05c3e0a50a32081fdd8a30ac948539a8164c78f63bf06db36e9310dec58cc7b893076e44b63337e9e3bf7cbab1e8e80b0360deebbae3aa9dc38db7901d05ffa0c822ae2c042aefc0bf52b6d24be5bff91b998223540ff8aec12c2524e3c0463341262b8efcff19dafc5b28a7c93e2fc326c8a67b3cbcb15a766b281a5ecad033340283f85d54d1f362be6ebf42dc52e8662ec9c23d87abef83382c91d1a69694630d6425cadc99020330205b198e7da6fa052351398c84b7190670b34e1a346eff4daf3ad04d79a4d002a6d01b25202b6a999b8fc5e90d1cc9bd10c29310997939355ce74370410c13ce96363fb5aa4189f109b4db8916f3b086df8303ce743a53339e610fadedf496fca042bc2f072ecb2d742109b1d5ab004caf60d0b415c8d254965c5397f1016cd503af3e367730f86e426ed6bef4c365d6ca26cf0a8c8bb589114c4237c95a99384d7a538f8f5faca69809509ec41ed0e0ddc4e1c119541583727b56c2e6b215822b3d41c6d1d0385dc611efad138500b1648323354478ea4deb7e95889f266bb0d68c6112fe31307fb52c7c8eedd3a51d5e9945eb5b2b4269709565c59b2605fecf41970c4fd5e2c1a4949226d3c8334d8fff90e636996d70e47b1400776fa9e47f3e976086ee297ae034b7155c9008eceb66124314fc66356d4da75c4e06daadcc6a51d776386423717492ad4b4269fcf4f4ea5d0e3f56e7b577104cb88651c59c4687ff6705bbfc1a6d1ed41d442892cb41c5582708d5c4c7b9df349fd492540f3239f4383fee4bf7020e3edfd6927b40bd39aa1515d1a37ff425b23bbec2f6282387be7ed286197162146c605c20265e70f48c91e11ee74cc34b0719b6e76d2fb8d66821162f45edb1783ef0ae97cf6301c62bbfe8b90e472a69ae3f09c4489347db860a66583b6d8351a15b6718f2bd70b02760cdededf20e5d13dd821241cad588c776395244c452493eafb82306df7cfc7cfd02c9a19ac4d6f51d1404be2fc0a3f2b87374b42b9d2206082533a9f683f0e861b2861d08a216af038b989e8faf037ee9c87ef2177f96cfe092feb9ccce74240a585e0837dfab67c30a4c168aff5d7f2b423b5f43aa63be67abad9cba5985537e9074d6e24a488ae970e1d72776b1fd345061183ed63269a5683ee6168a1a031b754130540e260918c260708f319253c7a0588eeccc92334d253e2889b42785b37936498e5ad6d338d23daee9aa007f26c97a68284f595a6a31060712d0ccaf62c45e162e36b0913e819809bbba4c1d45c824ae6291a783a7031f31ce496b72ae14931edbc019bfb8050c93296f011f1bccda26759a04972b73f314344056d52163cdad8a13faae8aafce08b090b94c912785901a69fd9a416706e942b41fcf42d1728863522f895b56c83dc0e873c22ca8ddd4c1f924e256ac7060b88472e886266429d1634075a69a20c73490332f3530f8286981fb88ea222f3b730f5e9b02e15738f5a92ec80cb1e79c40318197ce174b5799930d9e61f770adec3ab647e19d52c69ce588c062d558b929a2ddbe81ff293d481a675b450bad47c25f83a337c727a23711796f3f739623ad0b406ee5a0ed5744418343cba369852bf6d54001a83918301a444ce7566902f9b4f11f8788dbd9c9c59258c9b72d32a7f2531e29832fd415afe3661e88d781954d3359376525ab5bdddfa9b9b221bbb300a66d47b2ed4b9f66875cc3de11f577177fc01f73bcf0a76e26d3ce8a3a0bffec1df481fdaa8ee2be0de5b7cfc810d2d6722e169b950d37a587ad318feae1d876e371f77576fb151d0aa1340ae1732bd955cb22f28760803635fed5a994233456e0d7805815acbc2f56b8cca36abc0e7435b5bd2a96aa6e0e6bd135d3779c3e7b6559d9080ab0cde1fb47594371809772cbb8b585a4a1a50588fe1642d4ab3267b8a77393a4c51266c7f38d1c3fbb74eebb50f11f161660eb2b97c3226b5c19cfebe135f723c784a30b04390f49722695957b478753aee18a6c83361f6bfc496be2c42f05bdfa440bfed2fcdb852e30fb97576261f8e4619a83b27f00575d2687feda81c1cb8b99d2b0eb8d082f3b7446f56b240bb0c5e4d515d204fea847a9060e12c8de5048db7718005ad8940c5f7fd9d75b826ca627543ac520af3316b63ea57c6341c3167b115c9d80be3a4f2201c52b85e57eb558d282857348a0bf70dae5a4c3c15d5113c37e0484a0980eb84ddae9dd0ce0c285f044df78cce513310ef6702096a69faf96552970415ad9112afc5899f2e47a979e8df94d7de2a852ecd0a625da2ea0b6a0c00684e608041cd6f8b5bfda2a5b46dddc5dcb348819e776061681b498b1e2d519946b1eb3d03aa3797869c38514fba8f04e9211defca90a9a7e7c4cfa578eec4d8c92019cb7c4b2acd1dfb64a05251e139da03e1ec4926339b58d3184f47448bb5e59248a338ece3a657d2d39ff119853b92db139d93b4b7eeb401e04512a9a5e0eb08bfacf9c08fe072abd66af8f5476ad8f3e9269172629c9b0f6e5dbfc6c2e08066c7c59110fd8123e01171b9c7c501a637b3e1b23d1f2ca88f2f73c71994f1654984543480d2272f17326b663bf5ade85e598b92e475e7eebdf6a9e241c574d8b0fe796fc35e4cb3f4ffeb3b7186906aaf33fc67c02a2cb4ba1620248ebc1abe2c445ea945057a1f07bbc348960d63d644e403aae3566045a307eb946f382a3d0141201cd0fea515eb0e185cfb17b6e66714a2518b1c7fd2b4393dd2ade899c5d2db0588c0ab0137aae964ef0b08b5e572a644fc5dbd4c0546a4146fbcdd1b63c1c8a5fd35fd34ba5f80068aca2116d02219a829d9dcc1292bc17de97ae1b068d6f73e93b939e4e3d10807d471f159ba44a7b9fd07201a61b964370eb2454bfc68d8f2d8398c8ab95b0e005ed20ce11b2f89f157c2a853c3e2a79daa6742e468feca50c37431dfb0cd4472e2a06c8c1c6aa529f853ee4d66358d74754fd96b9b28fa95d0cfaa944caac7fc9a59ac6252adaaee9bbec9b33d0959c30f44be1a460232e253101fcb2b368cc8d76df2f30e7a8b4855aba7b794767c06334dd9a1a8bffc903f91ea359474304c2b379fb90740f26b2912d1d440f4c5ba22957e49353dbf5785c1610efda31ff7f4f310cc7c9feaa4c49ff9ec3e262bd41facd803ddb396f09516a1087b0f5ef400594a684a5f2741834a6da9ec3a912706c78560ac1cceeaee940a1944e07dd6c46f0a467abb55f7bd23262f0d6a8036254af59acccacdd463d4e4c652dc86e49ec32fe0dff48c294f2f850aaf0f1db6ba4d5adfd9e76bbd78fb0676d1a46967a8a6bde61dc32943468e89d59693b60609b03d52ae07d9daa297e378684a10bd03ffe9ff3ecdbdc62046a5a667fe40f5950a45907d80755a93bcbc9c3c94ed9c14e57819d8100285aa0d5f5121798332e0a401539d9787b71b296c20e10adcbab6c9713046debbe6cf4aa09ca8308dfde0b99d0971f0c2f04cc10483c3072574ff45c41ab2e066464b038ea2645f75ec61af0579d35f8d5ebe204058760072d483d82ecc8b7b9bc0676dc725102bbe66d618808a27fac2386769f8eb75db90716bded4a735c55cf2dab57e3620023284ae2466cd47e99f8f8a638e8bca90b9fb062317f76400599eb21a616d9fa6d43f09683b447d8e74c608d40e7f9cf5a909fc75bdcc5f49e8c1f55b289b07b14c9a85fa2ed298a0a2461151065429123510a50fd806be0e09835734b3611ad74e8776e7d411e323326601333effff7b6baae1066c230af88ae6508504b7aaeef3f19882e4bc5b8a25bdadeebc392eac65c3604acac4e246097c4a7bf028a57b9e4cc0c3c8f53a4bb7fde834cb58eb6423915fa7579c377438e9508d7074ef5d8470399c78c154870e8fb12a0c2716567add7a7d2dde0ac71567bcc6f7b21de80e4dd6fe9794878ac1568dc0106e0c3e2c73faff2d0cd950ee85c01440e4d64ef81f815efdb33c54e2fbaba9c6e2a7b8385a3cf25d5b05b08657c01a92d40d526d0ba27dc72e5e8fd7ef171a2504376d9fac276a09ede697fc4dca74737254c0326e01a6d1dbca49b99f03f30c21452c69014d7c4d0ca755170d61852a9a1931893fbc415bbebc2632eb852ea11d5d798bf5914397c55b05299a8fcb318b79b867a06d3a9809caa80194932681fd20db91c012e30bbd0fc8ca7cd5f190b5cce1d74be740e71e942bee1dabeb8ec55e5f439ee76e599f225aa39d5dbbd07e91facf0f87d778f8b58f267dd07eec8b2410e5d0854ada93af34e052dea1235cfaf577a32355ebab03baacfc4c7344fea5057d97934bb5d30b4333a3bbc96da79f22a50014c6f28b7b8e9afac57abcfd3fb117b871f4c9316079cc79d30ac47dad96e5c45e377750b02f2228e31f2ca962779517d6c59c9cacaaec79f55143a26409603c1f14822afc7a6cae62d1bf9b2cda16c18b2f79206d25f06044472430f35c151d992d0c89fd7ce88205f93ef49e1cc2f033def702996a586b885684c3b5aad0a315d2bcaa1de3cc70e469404ca0255301f8aa2bff2811766c136ab32e8832da69b351ffd1c310696117abb88df7299e150b6616a916e5b36d3442989b0418864969f5190fd107242fc4386fd893c3677e0ffffec69537b96065b85f27046a8d71c039e8b563f83fc1ff886bd6f3da842fc2e82f1583002060ae1390b1eec8efde344838cbb1da4213a62c4ba74a12734ab971b30afd1c696ea4d8620718f003663aedae020713d250def7efd7cf2de70ed96e6a041b51ff3c91148cf5196fcd8e80510885e39a442054324db72d49d31887964290df6ffe2bd527265a21dbd100b2903bfb5bb1915c5236cfa8d6335f4c0dc82460a7b78cd42596b70e84a257d20d1b874fd143928805934ec514a27c1ec895b33d0177c95a7783910c91993cb4c620b99ad8505f05a2bf4ca2c68a50ffc60ccd724a55b11f272e8f089c1202a359b7d77b5a6c4b18bf7cee2a8b0162132994b6b6de9a64a44a828e6f73f5cae70d2d10907c30c8a9217256784cc7630ddb227efd20c9b09e58fbc977916fc600f8508667c948cb29df58b64cb0358f646963e1e94184ad4fe8c452d9e8dbc3e2e1acb41510ae70a45d286107ffbfc76c6fd0164c5a8943388981920941d44adbc894120abe1c75297e77345050f5591397ed33f7c24ab67e641db88bcda6b0ba564fc4dc901c3380cafa575d785b7b2042a787a1d0256c1750fb7468dcfc5d930f21ae8d093cac70fc1ca5f6e7a453aa456cafa56274e90dc131ae2976f8df32d7478f43e4ddbf6328f81b0bc6d24564051617a2e21783f9e5fb8efa1142b0615a5262502eb7ebfc540d0b35fb2cc182537a90ee44f1641f2d6cc6e19c9e857e18887afa1491c8a7f5a488506bda2fbc0f9d98bfc7fc096ed65b1226220d85399566975a2d95679c318c946f84389bf6a9b76c75cbe246aeb9d0a0428e04ecdfedab9bf73b32d3b836339b665bf8ab339b3ee003760831ccfc37db875327946bc89acb5d8006ea22bb9dc128673ebccd59cf20ef75b8557bd90a393327d9c9b286c16b5a82e28a27a608ad14d9cb1a8a34f8ffa718ae90272ec3d60de7ba457e20008e47a5ae0c670034c334aab135337dd27b0830eda69561f610ad387bc4376c8ecef464e390eb749314b7233afb5e5c554b43cdce8a36ffbe38e7f1fe3dccbc1700767da86a5d3a4baa670158a9d708061a8d3ce426d6757cb960715af9fc38af9d4af2e18088dfa31021f248a4bf3815c3ecad7256a5313e7308f7c43bec85ca85345ae93dd6c6030af5c99675fcc7b4ed9dd90148fadf34892ec98e528fed69a390586b9bcbd13ae9af05ddcbf72f40252ddb2b3e8770394ac1d7e99e26c1a5dd06105c1e1a55f47df3fd829300d6713fc3c4f2fd18f2ff7ea5e68d693e5b7b456e091f335ac3a382206953b64b3ef471e6e346a0127c265e1239d41d23ce817213a37bc0972c9a51a37bb866984ba1e686afce505a854c6b3176e87fad9145113fbf7e7fed4a173348ed22b842a42010a1c0125da158c0feb519e3f87bba2bb19bee7048e230036291e5557db81423e6eb7731483772542e84e2a98596bdae511c1f51eaca08c0edb1683c9ec7ec9501e36199c6f32f65bb51526ed44cc91265a91998c7ee19e33c5f89d03e741c242c59998b36f98c1da255940ba72db764b439775c379bb21ab65ad0a88dee737f164b99236c0ccfa9fd15ec67a50d465dab26f43497f6adc7671ca55c6a5554a4da1864fe01384db420435e30be348c7c483bd6a4a65b76ca07b29fc6c40e1f107ae4a9ea408985536e87c96d9b6279fca744e7e5c6bc38daf1cb27b316ad5b09fd43f1054f103da64c70ac22957fda1452a0ff15cf64a729666935d41694b56f2a3c3eeda24a3d4564d18c8053d3e3aace4aece65193f0ff4d5474e897de7be7a0e82208758c062e4317f7143705a9002a6696f7df78d5242245baf2964039c4b21aaea632fa331cbed8f266a456b57c14599422d74228545e504328ef0441191be322a3ad49bb8849737107e73d0b1b27b6f9d52cd95c01fd170042b6d381c54e0b7d3443273142efa3fb046ef328a8c23601bd5f586ea2f90003bea06650f2c5045136bc851970f978f82536718c609d398ebada69846e8256e8fce308cc7d33979d64e4c347501666ac286bd7b892a2124c1288028a21767ced44ba357f1cd96bc8b268113650a938a59ed2bb0578c959d86c5fd4824980533e6fa87958b6c7f6a35da935dd83378c34073c986fe957b7108b8a0fd1533ef7ff3daec13dac8e02ee53b6a424a73612331a3630a51bfd1c223268d98489da22c4e258c543232efeb073ac7ab7e48549bd12cede2303f74fe53f12133907e846366c27265b0e643719a8e0099f1c9515e12ceaab095e2be78f2341cac0ef46a7fecd0fd023123218d06390b8b660acb3c6431c17a64e0fb16fa5517fe085618bdc7442357a2ebd49044ed7d57d266ef3c6feab1a672393f67aab6784a01e4f62abf463125f103e8fca70654eb3df8744316736a4a3122e8763b08f28a3489ecb99ea2a299433ed2defaa8ab92f6242937aca8ca84f912d1365f27255080f18a16d8733d85137a62d4d691f8b5968c43a19fcc36653fbe7c32bb2524cf1dd274af95028ca6c69f2262e8929ea47735f318181d864904fe1f0d4f360aac863eb8b7913d87691e361a72ee490b1faf26e840411c623c5d204663acafecbbcc922b7ddb87f0a728940f75b5bb972a0cb81c688eabd4e971ce8e995397fb00ea042ce49b6a43ebb2fd42fc080e9bf82b02386331e123092beda22dd47b20f3bf70beb23a1d5d31a25293e1aafffb375eb1b0963e96cc7affaebae76374af98cd43344ad7b09d2d564b43dfd56209eaeb8ad6adca579f9b471807e43a0137b961d34f6ccd183697e08204f283581f981d7d8d7da994bc3336ed6912db622d1e6fc99bf03586e2fa0004382d61764b88a03312de6af56b612863435793f70ff1cd78c3d156e5d065b3f2226445d25004606141daea74d7b9ac173e73d78e71d6ab6a9d0387eb56b118c420140f5d905b42f557af36f41db748445d46be011e5f5c2e67e68311eeb8c98098fec6f1ff2d4240ac0a710386d13621ed671cf2947d5ce4f313c4a15de1027e1f8f57976e53d0ac8ba9d741c4602b3e0e6d72865ed3bc26fa687fccc456a46a6d7044208373a18302f1e3d3f332c29c50d9cd3f57d20047be3f362ad80d795b12791c366fffb8df12300e40a0bb0f2e22f59033a9c40cf74ec16d8a608507f1292aa99e73be8ef722a505cf54c847ef0948917f8a5e9ecb0c988d65b707cb4fd50cbbfd7722a4c0f2ca6cafc439ce0e5a2b6b54d2c1dbf5891fda48c29ab42242bbe81e4abc37f8b4ab568c10a20ce7b4d3f1e08f0c9aaf375f685c3d629d69207838f3fca177f95932f31515db138a8bc03e08f91a7408ab57060c1881d94c5b8e9b2a18a1ea5e43eb6a1060d4ea4fde6a1115645c88a2ebfeb040e06fc1a189f2e259adf8dfda0bee4642e6e765a60fc8b868250cd6c17663473e9a9388f8c9f470a4b7ccd62e12d09badf872a5992905264c4b9d966152f9e2e585ce961fbcc5fec99656a7fda12e937a9723ee97ad5b564538bdcc06cca028c77530f31af0ca748e74afa1da5e90fa6f6f787a60187bf8966d53ac1a43e47bccc2b0e0f05fd61c7f544f1b43c3d518ba023f7379958a18067c64b5303783d30a522f1e34273495ccb628949255a7d04c576f63c7b56baefc67119caff86c88fbb980eb6d6c0323a18e29df1ad8d5866c69769824595e03a8abeb65d00bdaed8bca31bf07585e1d040171e975728cc728cac40f5317334a7c7d26d84b654360bf6ac680828e420674aa00fc36696ac80a189744e9280436cb0ee5513d71ea38f4f129f8c17648020f3033ffb906ee2bf0cf4c84495ad765c193d79f338adbc53b4480da6ade28962ab07cc61f08ada12c82993ed1b08c074404ca19d17e99467a5daab2685138b7f1234ed3ebec9a5257b9ac4c3136a191f62f6d031f610090bc3fad7179bb07cd0715b831b29b722925e53e2e1bce51ba438cd049dbb8c495f99f348d865c107edcccc597da28a02eacee8eb3a12609b467d3e7d2f191c95d4741648555099bd8fa50178bdd45fcb97c733454945aaf1785265e35d6090b3807b31dde11ad01e1dc92771bab70700dfdb43fce64ba38cd27bba646267938a032dd32cb844af3e4e1683506c003287048a9e5aca793f83755bd9cc5cee45ee911b2418b545905e98306ff968d5eb816f4c8653609144efa50e998014417d2c23b9a4d4acf2bc6a34d456ed93440b34dd616c123adee6504b894f964f378a991cb3b0e0a583ffbab11a508c09e101488ddcc099714709046242e6b20b3b9faf66ddc3b1be50787b298ccfec6f52257f6ccf573318866dcc27027536b5d8950380aff53cee0ce5f42dd2e1bf86dbebd192f10667f9fe66d3adc89b216e2dad20b305b36159534bc2bde61ad5826e0a71c81eead7060416c4633a7c90367a7fabcd365f12cbc19f778e9bc4216b6860898d832f080195f7dd752964b3d808fdd7a37bcac15499cc63521676f1548cad6f1cfa20a87dec8020a142ab60c1c4669310f3652eecb38f81ca53787e59c227207b88dc025746c03b281c4cbb897a316fedecb2a92fd506132ffccb2bd3074f99e37031f660b73e7406ac2e5816c6052c4f71f8ddc2bc7a26828b7329b06c631b6d1233a5bdb1bcccb79e3dd0a93829cf8496d64078f4d4efd580d9b987ce17d47f0f0f53887fa3412e30a85b053247b73f2739621a6b0ce69df7df85ca2238483919dbbeca7cfbfb0e033da0e093fe4309b69116ed02613772873e3822bdf7783deec8e412d081b11d3172cf46877165054925cb75d454845d610cb9238a06814691632f50e8b74886f8542bbf6027e5ff95b283d741ccef0ad8b57818cfa2efb2273b63cf93ce794739ca15eda173567cf50cc2857e01c86701d1a0e36b43567ee59cab97b35366dc9b25a7b68ce014fd2b8e36d3b129372f4f2b5d9f334a267c9a54547d6153d8819e1fab594ee6ef7cb726ce1c58277fbd2c53de7e084d4dcdeb2b2dfc053f564ed05090a275720d474fc3a41020cd668b148e0ee89f2bd6d52bc9afb9235df7e64a70216ec36e6e1a2c6c53aa3102505cab4ee1b4d01f2b491550c85f22c6ad1988042287cfc27ded49756f6489e1b9cca4e7dc6d6476681254d1ab3bfff418d034dc268d90fc7df8011b845c4e10c6c7bbee3fea0def26761531cfd12f817a43fd1859a1d00be872ce09cf3b1aed6a5ededd557e10abb57feed25200ac8e96726763b3b3c230ece48d465b70841971eb0f6b841f0740471f2ebd55467f4885447e2933980b724624d533a15d9457e9ef9c482c1d42972d35eec40bc2e37a750764a0c1c79f71f6077306d038d4ccbef5a40467bb20e8bbe503b66be6de22654eec6a9923621ed8d08e8c4e653b99edeb13254e5e2ac0cf2a51eef1935d18e3366a01c20976117c8c5777abc9516aa567449b48d15c196afa8e4948adb4578622566b336c5335fb7cf9561a070e9eb490e98b86cb8a167b1ebd15c6d013f6106554b7e7930274c12124340786c6ceb735e636b1c66da49ec85d883a6b127bf046f5963d07abe255a353efde4b28427f5a890f974fe99c9395f785f315b88ff0cd1ac5bdb5897f1b49628cef63121699f16036d4349848008eb1fe5765bc14724aae4e2dc2c9547203e895018e45fa039cbdac1629a2eb511af752d7db861050cef166506635665e97464e964df36c2d99b6c4f29724fe30b4b9dafe9e9f1246f5fc048665dbdcb3faf4fd93f5bbce147c8969e21d24296a9fdb20a254306ed553da57e15d8756d8647a36fadebf0af9184ef741eee47217a6414b5e24c044de2246e17ad70060a4cfb432288ef8c7b889670780e1815a1603cba5b42b26dd0e29960b2251582a70b9a7417717b9ecde154ef57eab9ccea7ce3ea72df114f0b2226ff5e4785161e589c6712547e4d7a9084257eff1228b089e62450938cc88ee13ba97ad45758a222e54fc850adab38c7b0804bfb99e9ed81c6b1ac43d20faf612a93852aa0546ed19c4110b5ded208d34f65b2f4f51c9010958ee33105af39f9be8d2ceae1ec07262c0e699668b3fa7671c8ba134938a939b7d620abf07c7a97a565c7c963bff3c057ce35d37cd54f262e8e92a539b74ddcf2cc500b82b152affd584eb0ccadb3c809166f4564a2d703a9a346560415e6f13985d71de633d25af68b369cbdbe05948451336f84e37a661c9227e96a75939b001af8889d41fa93ea0f11a9accc7d9056b773ee0a8b60ef8bafaaba47ab7e7a8cf3a7d14bf040487c100d995da242db2aac0a46800af968d498ee5f97524931ee434a2947dce5cefc1861c7208537baa76c5b8dc0ec5cd9e63fc699a0567c45b52d637306227f40de40a6be3e2e697dd32779b63c68828a35b2b339be5e24cc3ddc9527d43695fea3b9bbeaeeae99411a2b595ad25a7299deed16ad8cca9d6bd4ab5f0c1a6232260e8ab6a3533df3398a3687003eefcf887a9ffc119e1a1756b4b4406ddae07b81dba03fb587ec4b8f597c84c4107f3096310cc36187adcf78a76fa2e5e75487b74f3cfe23a6f3c4e4ce583c389d2d197e405149a4f03ed6acd0c26406852e0457f7d9562281a0e1ed15d15348cbde475e6ffcb1dfdc548bcbde183c2d57d615613b054e9b0226f73aba5259bc93cc5cf09f8764a599ba352934edc84e7d78c4b289683e0e6164f0a9f1282985265d19504586362df1d1e359d5274dfdaf59306c753e24de2a2d6c8101085b54e3a1c506a39d608f2f81e660e59d2f402a87319553dbaa803bbc7ceefade59179f0a20f4fd5445c7021bf80d1fbf4c82577f3d097649748681ccaa53c6bca9268ac499fd5e1ed7ed5e3f2c55c1d762d367cf19b2111475fd9bd2aba511fe027497fec06e7fd6dc21808e9d0b34b0d9af3da9d7966f4635acb4f2cbd615cf66e2b87dc7628fb01997e13344d3e01d11bf0114b0d2531f4c378ba6c097b9748e90f3cba3906ccf782a4c2bce027253324874db73e48cb29088968f42956de6af43bb6f180aa873bf16c64540d4ef95417f14ef937a9945ce2d779218a27be86869b6a16f958d20343ee714336941085a521a42538e6789f31f86f384ac4a53d8680a3fcb0a4afaf0687d55266b69a1b63c89d26237af2e0d48f5d6eee8a510710384223541f6fa7d6d3e4bd49f2c6afee136d7156265de793cebaf27426c49786c3e23996a049534bc5a55f473cf66150c73630e1ba96a5f1ecf462d11fb423e95c5bf849a4578d31cd6efa39bb34a86c5e581942dc2593370b886cfb21d43058fa5b729aaa92bb7cf3e5f5bae63cc4422961f48a3a0987417bc70a594b58dcb2e37658ecceb4ff01dffd625d6c1bf352de857f630994ffa5b1180bf1dafa8452465bce2e9f0047672f5d4e6a28d62f06e834158345210c397dda79cbad4bcbc4bdb4c465d29db945dff6f653b0f3469b505ab5e08340f88b2a63f04e16bbfbffa46d95f9c4afca29d40688ede2047b8bac6d7fb374473ed37bd6eabea1820549a792ea2666a985213af5b20570531e017ca1c71c4541893731a22af14f93e63d79176d6be71027d1f7f4c994b319690a4de260de41362def565bc424dfe13bf32a43ad8acb5821462249a36acbde9d0ea82d383b67862e161428b9d2db0c450bbe90d6e58c6a24266ce1e224180b081e9209fc33008b3d7faa9a3257dc3364661b35301482dc5a17d409cbb39df89d86bcaf569586daec152e018a86aacb9ae674623eebb8c18602f661c8411758d8431c0cda4c859740c39ac607eab0f9bc704975d8d5c7fa6d9ae12c0caaf0149a555ddd1317a31ee5de895255991804e85e15b8d211353f9909a9d1de146b79c1d771b1fae8b6af37a84365fe41f6abb1c55f6150cb984751e73dfefff70f21fd5e748137e3696b7bc78fca161ea7164c0e6f857e44ce98c7862bff0ded758bc2c8c4b8a172724e1a406dc22da2de7858f58489dc332cf66fa5a2eb769043e63a8ac1baed2b69fafe98365921a8297aac443b31068bfc988e4436adde55c1e5ae7c1de27fd8a177163a627fb3757cbaac66dd93943f6d11a9e03286cc63fed0502a8200370ccfa3e535c0efab4c7b532bab60164f7501d708a707c02dcee9f85a9eeb591ab3835a954db5d2473088835e4e6fc5af69842415660f3e87bce51a4afdd03560c3c137eec3a39a287eee7c37f7ce4d3e3d7bc78ef79c969b06dd174d2c71651d1a5701a5fdd04207cd5961cef97afd84e6d32a66436ecad9d13a072b15746499c4b27f5981b205a1b32c49aa02d12fc53c88aa972a7bc2edb98464e729d47c61b95e956fbdf4288bcf92d17aff1bba2a95b6fc9a032a84dfcde5afce23ce70e0d40bc872593de9292f8df643ea502ba28c7bc28dc350775193620618d869e34c39d1fadbb467737f7718dcb11695ec771b858c2809a40ed85c35b1688942beb2053d7fefa30df594212de7f8fa1cdb9cd3073ca37640dfff90dca173119d7469953148bda37be648cecd3c2724f7df11c16007bbea52c139b1b1edc89de6fce69a1b548e5032ba5628ffff14634fc18eb208616291439e567e6c5680e8f8c9ffc187f018edef437e223190ef081a9cff9899eafe08329e31951a1d38d40d419c5e64a5633ccc066957d698929b5f64dedbff6e5f74a056fca04a0a39fa918a41b40b43809f588cfcb9be516a59655a8f9d4727c6c812a898955c8549f476443886d27757406e0023f69bf976c5d02085f835b5546645c6b1ec6fef22994e2895c3052bb3a79acb96daddf2e274756b7e2717ba0b96c17bcc40994afd957989b77ea9b8ba142ec7b8c1b803051d5fae6b62d1bc822b5555ec3b35857fb3069fbdb4b17cc6d8c3ca8a9a19be33a64b9522c3e6fc4b3c4f4b4dce7a9860b4ff375312b868717d228de53cb65a1ee06afc887f46a480e26ec48a07c3b286f8e7c64c75f2cecaffecba982cdb01e65fd4038d07ea13db7555c9e5d8c01ac90b7ec05a7326c2f589777d2e9b628b133f543901ea085585349cf4092082a3977cea63a6fd21eed7aa82e0fc97074c1aa6763e7df3e2d93b20378e2aee9920dcd9999fa4acde7b18fab0c15e5843d6b91866e34870796d0fdc09c469a7ebdd4d535590d28afa73fea95cef5c3b1fa1546573f6482fb1ac7f4c801383d0438d8aad8274dd618c6406791b3e2491df1510909015c5e6d84a1d87a29ed865e18ad7769fed96f5ec891d96695727763f57dbe7d983e29450c28c35a6b45aeae704399765ecc7bfca8bc0dbaa3ec5cd604a6389da0d7340d3ea2c353be218abd7f09b67ab634c45b0839bf5e9f9170887717f13e0a8b4c23cdbd1555ee333282b77e42feb146a39db32172bb037e32824f7faae06508ad39ef8e8db26189a989373d05a8dfb69f2ad7413d5f4638b1ac5637c47c22806b1a5eb80b6c42be8b270eb1cfb739848f8f714226a104c4ca3d6343fd7164c713872477f3e8f53c9526b080cedb670158b883b92e117580cb14739691f823f44c975b96df43973312728fdd9410c0c521a58f2cfb5ba33aa1148daac1c8bed073990ca03ab5db7a0f64c1858365fdd9baf75eab3db30883ddaf31661571d99c13424acd8747aa00274705be9ee569f6b7c4fc3f384fb8a9bf81cffcee913ef3092dcf8954c43cb5eb36a877aeb1dafe0b9f8abc750430031fc2c38486f2aa80fb99b6e27ec6a49679b850bf6cc7b1f8fe8502869b68f413654313e448ecc288845bf227d4b6888f65dac1da4664786c500d65d592285fc398466e168a210f0b58b71fa4d1828957e46b3d1c35089fd2bd224e8a5b7322a50094ff3cb60aeb9e6f08cc4a3760eccf6d0af388ac1e9f84faf02c9a3e7790021f19d9546844924d112520bb37698c80d2b70c076d202243d48a6a029f3db401c91cc42f264b1df83e3e8e11b73316d3f55f2dfa8939ef619398947e559fad1a1cdabe6f4c256b5568f1eded8fa60e4dcf5f49b20143294a6459b2e65bc050700f8e0026ff9d0398a804843cee3c99a220d8d5ba4fc6226fa18a2e127f10ca7871d794202c3b9e16b3084af16a5a542dcfb9798d635939a6807a65d316bc0ee28f108b344c568efb71a3c105f0928c88cb0be5cafa9a5e028d1bf4e47526e4d6bc743a47b463de5b31e9d36127193bac06d7dec21898521a316614c99c700d35261ec309175cb4b481cb05d7b925054d1f0ac189af493b889fc93f2a1209d2c3fd3807c49ee334aba56f9e0e6365d6ebb893e2a2c828f0b2e9f61f6cecf863d982dbdad13909f17cb689ca3e09d1c490187bc60a992c377cb94798217448253b7e752f5157fe465c2996c816effda6452c2a48a52b5b2253b916b938af47dbcaad9a5f66292e3a1bff68635fffb1fd6e1517417d5f2b5f75a4f332d191946a2e953322fd97cc31bf73dc6a6e868d6a10fdf4350f0fcd6fe6b9b63aa152323437801d0d4d2d51ced96a5c8cedb98e258e522a3d8347a9ee924f334a47a2838e44730eeb126c042f4e7d104d12f2ac144f8e0aba1601cbf0097e51e774bbdab9bdd15bae3285ee383d4b8b8c1f595ab7cf243a31b61ac3c46b2494d45bfc307bf649a93b96e0b8f254d649fe3ff1e9328b43e45974735256c647334cec220f903bea9a9df8555a7892dfe524ea68bbfe1aa6001a8700c766a3ffaabb0b4f2441addeb36f5c3455e4aa09937d76711e7d38079432d48c23fc7ad7a6c786139f84f1e00bd6b85f6af984e53fade8bbf114ff2786fd9911794c6d809a4d9c6759a460f3f5498a858027e96e815b24faebb0e260f7f41dc91b59c6ebd45017033cfd180135ef79050a5f59c636fb487b821ea7a7c5db1ad4375f5b9d74841571cd8d9445ba8f0502370bbf29848cf102e5ace6434e3bc0adf0ec9d0afd98f801b1e4e906e4a5909f4b6d0abcaedee188aeec4713e6788c93e5364d760f31501c138dd018f66855da8cc08104a0580d252c34a3e309fc184fae8657b0cf69d39806f7c2efb67bc62558dc53fff2bf7c8857c34b4ad7341fb15a25a00d6326cd7ecf7f1c7e27144effd59a5c908b22d91160e4a091d4d14888e4b0e864fc23e4ee62fc4692f6ffe5e1049ab362498e79c4b08f6f96046e6b3a31228be0aea0f457b4ff1806aa0a078aad2aa508e776bd68eff06d69d0da4ed3a83242253bb05e2bff777f9cc0849f8a1e30fd646cf8d3d14096c8a7b2d3ca6d6d740f81b566177fdc3833121c676d7ea716327f297433b3f5913c26b8a4dadfa4c157c5371894d3171f5644337901ee53c094c05e2db0be7c709a5dbd83f4815b13686d7288c9c9fa5efeccd78a0a82eb29b6e40c579e532607582e7086419fd4b62452dd4571740cdbac5458236f36a9aab396ef10dc5879e17630c3b16391909c15d718dbbb53940a507306869f5620c4309d7a1c68540805717d22595f72ef1a09b2e26a27946003011085f46cf67de4b1b4c95b4462a1b4a81cab591c0f7f4ee28dcdc8f9fd14db64e03f8c8e3ec14fb1de8899f1abe6067614ab2be0ae555a46c188a0afe7f8151d6a62acd0f18191fa0ed307bb7f1744b99eeb1f17b3e5723c3f2830506ac3a9d66c590d8cf26e2776e4ecb6ada0317c170e79ef4f142cc69153f27967081ac1418eccaf3be05e8eb27cff5e14cf33d523749bc402d78665ada15520941e2a2d43ad3b87b9dbb42470fa96589b8448b0312e758e5002090d5e9e4738498be3078e407013b4becad8f195af018b3db93ae165cdf0a926bfabbdfce0a16b2daa5e07e1c665117e6367910c54fda50a928664d7a52ff783106042f8e253af420b7c6f43f323ed04c1a7811135bc4749e3cbb9b888962d1019e82ace6db7c86aa6301922e9da25d7a012d4e0e0974d70ac2915a272b63d635ed78fe43b54cca292627e67442cf386dda33cd7e8c1f7ae0247807a706247d516e49802c711da51ccf7f4c39f2b76b2056fa7752b411c20b87a58c8d1032a91467e0af92f8eeeab576232ec23b0fc0a9597b850c7624b92e187083e6cf3433a656266281324f6085f6d8e4da9932f1d096bb4fb0632d24e8b7621f23543a670e1ddb44aa970a5b2914c22169eb9f1c8ebfced21e4700d1f9972165e04fb5455a1575c23fe4343796529fe469586fa8e16c77d0a4a1517dbff2036c1264c08a341ca9e2af67c20ef1458b153fba0e4c55b1dce9f7ebef4b71db158326f3359dc6dafe133a3030cb63f199119f739b946b20af63c5467bd12b4fb32acea3a89c66244c401dfeee17c7a99ce6fec0ab570b2028487d7e35532d418f55dc33c51388a2ca5becb589f36187325d46c835a0932aa5dbdd3327cbf95341bc59b803fc84623306a04c809c4c2779b7569968c17af764ad26f2c7f980a50fdad43b0387306ef4fb514897922bc75edaafcb73af43397a92052bf8df72af0f1c2f13eb84d8758a9cdc3a3a53bcbd78a4142789e73ff4395d5ec986f9884db02b742a98aa7d11bde6cbae6ca3bc379f8d7382ca0c01441ff34d0aaf3c063f0800c443936a4507a580f8e7a8ebf3a071335535a0d57f2c01fdc9c166940793234e921c73c49cf29650f8d98c3e1f8840b5c89d6c2498e4581c7de2d4fe0ae2c7ce7639da497f25492fd6a719d48e176bfbe90f9a375d7e8d6380b73e2605d0ac7b0c9ccec48584f61764f3183a7c9adff929086f25cfde1af3f51d62f197010c88b3e9a45cd342fb6347d1fb790e5bfc53ea7c0903593b2058cd23c53d2d5845fb5b23b78b532ff34b4d678873a2c368e27cfd8f9ae5e6f66d9de443aae0a68633d34546a3d76e1a785bb30a47b74eee49e34c764b354d72702c955e91e53427b7e9396264ac62f836dbe221875f55c1e8c7fe5590419cd32df3610d88185717a3f6c1b5b26b891d20f7c7554401b55fa5b10bf444d8ebecc71e46440c64da16118c95afa60b0255da8620ba62cc443559f1baa8894b650b1bd3cb2325e69c6667c726f1777a48dbcf20660179161657d93876e096ff59b33bec84a6b328b15069fa32f73e017f6ce38deaa08a4a537a420b5b279abd7fb6a3df3aaa8a5c9f4335b51ee9c33de028927ad196acfb114b3c61419d8b9f2718e09cf061e9a70278a444eba7a19e9559f15b8968136ebfacb7fb6614d44a1e9712000d572ee7c9276684eb4e04e54d084bd51bd77364418a8b5b7313812299c41b8fe66be8b6973bb1bdf70fc734a4e7b1ee78a964ce17fa1d712a0d4f803c9e74b7e517e575142f90292ee3d96204c58c5499e58e145dd91e699b8dbf4bad96c0ac026f5e6abf0ed17b55e81682dc61e97fd1b4df52fe386bfdf4fcf5c399c82d0047fa7ce30814195b1bfb2a003cc0a9d3410b1dbaeaf9f29cd769013fae7572e735d64c4cdd8d6d27877fef725b3e82138726cbc5ae8c79c424a058169ac33f55d1c4723134966f2fb1ef761f1f83f43056e78e7119c99a21426f569707669290a376287b7959fae331ff73caf14fb8f6b1c86c43f179952991550d228e9aa87ae8fb96c2a98d3afd7ee7d166da25a9d60790a83e485360003c0ccfa58ca6473dd883ea115baafca84bfc04199d6e4629be21b0cf1c67fd3cc15333846bb8a3991a4c7f925b1b384220d3df421a70a1005d7c1e05ddaa33a343dad230698ff14c0f3eee2e412529d07e5758bd5e38929a739afa99d1031415b0a757a6e948287c0ebf59d8bdb4449dbfefd248dce199505c0867316f8729850e6b73f5d1021041446fdaaeb1bfad5d8bd322c3885c4a039e0d517f503333db9d51f7261b99683af3d6e5228ba169e7c103175ebecbcc2dd72a74024d3ed3f5ec82dde55e89f7555c3bbb526361a99541fcaf5da8f8c8594c7341d6b558b6288689b2b624b366c6828606644551372cde42eae1c08d759410ede230b93b4531bd0bec88f657f0723b47182785b030b1ae9b888bac0ac0163c611089c27e6bd5180b849c2d4a03815c5fa4483befd74afe217c8dae8a103e88c76984c3b310bc8c71e3854765815a851df99cae5d7e6849d784e3229471a177b45374925326f5496186650ecb14145649e4baeefcefbd08caacd906691fee3840d65679aa6ae89fa627c7e0cb291475ee6470a04c41d49201f8f67526170e8f3de8707bfd2c7960cc7f8c5065a590e4ebce9b10d4dcc69ef5ea7c5a6f693afae17ed5626b14341bb4f2dd2ff8dac57179f91abb8ec398d1412312293582d2d63bf57a6782d85398c4566728d51559eafb453ac5587c4e926624eb015ece1b6379e4afec20929f1ab511c3e1b17daa14f4cbca4e7eb7dfbb0013f215a662f19e0a68c5db6df817f55d7791110f5543d0e919451be5937aeb3474ce36e328f9bb9911abe70a543555b91bfd237a19592a416836765a5193b747a7d099578fc02f888ed373c6a9ea80958742f413f408d580e1cdb99e89704c6bc38c9e5630e881567b6821dfc170cb0afeee9232b9d6e16da2c1790437cd09aecb3adda22346ce374f988f908c2d663a84309894f4fe0a8ddab38863ac594a8135c11aab0da4d38cf9a280f2b3a4de75e24f846add783ecea1b4b9e0a7a40de73fcc43d9917a887ed110655e74a6c9360ab24339776387d4136934799abd4b4b20523117a57d1f939023f149f12f508e2456929a352c3a2ef60354f54a3d486474da1f5a9484075c34f5adc6c0d230f5e67a449fa08e0d99d97b08b4e0825d569cdd26a26465f1b41b2cc799891d4e8100d3e3ce7e3c64bae982fbd7eb500c3059672cce45115b8ba9ebdae4f946ad35b9d8f4d6482c886b70c60159e27930a431e7273f8e5e47b9b61470828d7ff6f80cfb158d091ce31cf5f6d3c22e90b2fec4cd84a2014ef5c5debbc3b339b5fdc6a03d8a220f9f656fabfd44591cf2a96172ae16b3178c9c4df507d615f17c435fc10a9b2ccf91202dce17bf46a63b98a9740cc60bd8468647a13b88a8132f6b9351896bf7e9e0ec49bc70f784ba65ed0a708f154587d9f34c5224aa6479aebedee3a1492cbe0238e93a30e73ad1a99f0aefed3d5328e02320378f08421c75ad9f588b1c544b02b39a6981b7e3a84f7daeef773e74d79917628110a36f15eccc7b16000426e625d40fa0df7ffb3fa50aa68110e841bb8e31b4dc8052e0e4cc64c515d78fd476f01c43f1d873692ac35b968c92cf7e4dcf33d5f5e48db1143c0d6876f9cc4d9a44d7927bc5ea5885a7db5b7326a43370a4a2d512d34b657186457ad19643e96ede13f6084e7f9807f6514d6e671e1d292c8473fad28ae834081b58e929ddae02f637e8a1e83f82f450eab1f4c3e9e3d6cae7319d68331c791f17899678667cfa18560997876c1cd463b92414d1c644a5dea4d0862487a485e986e58c9244afb7f06d4ba10b999bd883950f3f0cf6a6641053e92cea1ff43a5551e74e251817b9851d9b9ed113b4197d782a16fb9a34e3c3f9b01591rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpostgresql15-15.10-150600.16.9.1.src.rpmpostgresql-docs-implementationpostgresql15-docs     postgresql-docs-noarchrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)153.0.4-14.6.0-14.0-15.2-14.14.3g<}g4g*fV@f;i@eCe@eqe@eKx@e@@e%@d,@c@clcGc>@c6@c5c,N@c@c@cb@b@b@b@b|bV@b[@aaza@apa\>@aUaQ@aO@`@```q`OL@`Gc@`/@`#_S__@_F@_mmax@suse.commax@suse.commax@suse.commrueckert@suse.demax@suse.comaaronpuchert@alice-dsl.netsarah.kriesch@opensuse.orgdimstar@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.comdimstar@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.comfvogt@suse.commax@suse.commax@suse.commax@suse.commax@suse.comfvogt@suse.commax@suse.comaaronpuchert@alice-dsl.netschwab@suse.demax@suse.commax@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.comada.lovelace@gmx.demax@suse.commax@suse.commax@suse.commax@suse.commrueckert@suse.demax@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.comgmbr3@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.com- Upgrade to 15.10 * Repair ABI break for extensions that work with struct ResultRelInfo. * Restore functionality of ALTER {ROLE|DATABASE} SET role. * Fix cases where a logical replication slot's restart_lsn could go backwards. * Avoid deleting still-needed WAL files during pg_rewind. * Fix race conditions associated with dropping shared statistics entries. * Count index scans in contrib/bloom indexes in the statistics views, such as the pg_stat_user_indexes.idx_scan counter. * Fix crash when checking to see if an index's opclass options have changed. * Avoid assertion failure caused by disconnected NFA sub-graphs in regular expression parsing. * https://www.postgresql.org/docs/release/15.10/- Upgrade to 15.9: * CVE-2024-10976, bsc#1233323: Ensure cached plans are marked as dependent on the calling role when RLS applies to a non-top-level table reference. * CVE-2024-10977, bsc#1233325: Make libpq discard error messages received during SSL or GSS protocol negotiation. * CVE-2024-10978, bsc#1233326: Fix unintended interactions between SET SESSION AUTHORIZATION and SET ROLE * CVE-2024-10979, bsc#1233327: Prevent trusted PL/Perl code from changing environment variables. * https://www.postgresql.org/about/news/p-2955/ * https://www.postgresql.org/docs/release/15.9/- Sync spec file from postgresql17.- Upgrade to 15.8 (bsc#1229013): * bsc#1229013, CVE-2024-7348 PostgreSQL relation replacement during pg_dump executes arbitrary SQL * https://www.postgresql.org/about/news/p-2910/ * https://www.postgresql.org/docs/release/15.8/- Upgrade to 15.7 (bsc#1224051): * bsc#1224038, CVE-2024-4317: Restrict visibility of pg_stats_ext and pg_stats_ext_exprs entries to the table owner. See the release notes for the steps that have to be taken to fix existing PostgreSQL instances. * Fix incompatibility with LLVM 18. * https://www.postgresql.org/docs/release/15.7/ - Prepare for PostgreSQL 17. - Make sure all compilation and doc generation happens in %build.- Require LLVM <= 17 for now, because LLVM 18 doesn't seem to work.- Remove constraints file because improved memory usage for s390x- Use %patch -P N instead of deprecated %patchN.- Upgrade to 15.6: * bsc#1219679, CVE-2024-0985: Tighten security restrictions within REFRESH MATERIALIZED VIEW CONCURRENTLY. One step of a concurrent refresh command was run under weak security restrictions. If a materialized view's owner could persuade a superuser or other high-privileged user to perform a concurrent refresh on that view, the view's owner could control code executed with the privileges of the user running REFRESH. Fix things so that all user-determined code is run as the view's owner, as expected * If you use GIN indexes, you may need to reindex after updating to this release. * LLVM 18 is now supported. * https://www.postgresql.org/docs/release/15.6/- Upgrade to 15.5: * bsc#1216962, CVE-2023-5868: Fix handling of unknown-type arguments in DISTINCT "any" aggregate functions. This error led to a text-type value being interpreted as an unknown-type value (that is, a zero-terminated string) at runtime. This could result in disclosure of server memory following the text value. * bsc#1216961, CVE-2023-5869: Detect integer overflow while computing new array dimensions. When assigning new elements to array subscripts that are outside the current array bounds, an undetected integer overflow could occur in edge cases. Memory stomps that are potentially exploitable for arbitrary code execution are possible, and so is disclosure of server memory. * bsc#1216960, CVE-2023-5870: Prevent the pg_signal_backend role from signalling background workers and autovacuum processes. The documentation says that pg_signal_backend cannot issue signals to superuser-owned processes. It was able to signal these background processes, though, because they advertise a role OID of zero. Treat that as indicating superuser ownership. The security implications of cancelling one of these process types are fairly small so far as the core code goes (we'll just start another one), but extensions might add background workers that are more vulnerable. Also ensure that the is_superuser parameter is set correctly in such processes. No specific security consequences are known for that oversight, but it might be significant for some extensions. * Add support for LLVM 16 and 17 * https://www.postgresql.org/docs/15/release-15-5.html- boo#1216734: Revert the last change and make the devel package independend of all other subpackages except for the libs.- boo#1216022: Call install-alternatives from the devel subpackage as well, otherwise the symlink for ecpg might be missing.- Also buildignore the postgresql*-implementation symbols: this is needed in order to bootstrap when no postgresql version currently has valid symbols provided. Once the packages are built, OBS could translate this to the pgname-* packages and accept the ignores; during bootstrap though, there is nothing providing the symbol and the existing buildignores do not suffice.- The libs and mini package are now provided by postgresql16.- Update to 15.4: * bsc#1214059, CVE-2023-39417: Disallow substituting a schema or owner name into an extension script if the name contains a quote, backslash, or dollar sign. * bsc#1214061, CVE-2023-39418: Fix MERGE to enforce row security policies properly. * https://www.postgresql.org/docs/15/release-15-4.html- Restore the independence of mini builds from the main build after the -mini name change from April 4, 2023. - Adjust icu handling to prepare for PostgreSQL 16.- Overhaul postgresql-README.SUSE and move it from the binary package to the noarch wrapper package. - Change the unix domain socket location from /var/run to /run.- Update to 15.3: * bsc#1211228, CVE-2023-2454: Prevent CREATE SCHEMA from defeating changes in search_path * bsc#1211229, CVE-2023-2455: Enforce row-level security policies correctly after inlining a set-returning function * https://www.postgresql.org/about/news/2637/ * https://www.postgresql.org/docs/15/release-15-3.html- bsc#1210303: Stop using the obsolete internal %_restart_on_update macro and drop support for sysv init to simplify the scriptlets.- Include -mini in Name: to avoid conflicts in the source package name and OBS internal dependency tracking.- Update to 15.2: * CVE-2022-41862, bsc#1208102: memory leak in libpq * https://www.postgresql.org/about/news/2592/ * https://www.postgresql.org/docs/15/release-15-2.html - Bump latest_supported_llvm_ver to 15.- Update to 15.1: * https://www.postgresql.org/about/news/2543/ * https://www.postgresql.org/docs/15/release-15-1.html- Update to 15.0: * https://www.postgresql.org/about/news/p-2526/ * https://www.postgresql.org/docs/15/release-15.html - Move pg_upgrade from *-contrib to *-server. - Drop support for the 9.x versioning scheme.- Update to 15~rc2 * https://www.postgresql.org/about/news/p-2521/ * Reverting the "optimized order of GROUP BY keys" feature.- Fix source URLs- Update to 15~rc1 https://www.postgresql.org/about/news/p-2516/- Create mechanism to specify the latest supported LLVM version. Automatically pin to that version if the distribution has a newer unsupported default version.- Disable LLVM JIT on riscv64- Update to 15~beta4 https://www.postgresql.org/about/news/p-2507/- Update to 15~beta3 https://www.postgresql.org/about/news/p-2496/- use %version requires for the contrib package for now as 15~beta1 is actually smaller than 15.- Add proper conditionals for lz4 and zstd- Upgrade to 15~beta1 https://www.postgresql.org/about/news/postgresql-15-beta-1-released-2453/ https://www.postgresql.org/docs/15/release-15.html - Refreshed patches to apply cleanly again: 0001-jit-Workaround-potential-datalayout-mismatch-on-s390.patch postgresql-conf.patch postgresql-llvm-optional.patch postgresql-plperl-keep-rpath.patch postgresql-testsuite-keep-results-file.patch postgresql-var-run-socket.patch - Add buildrequires for lz4 and zstd support- fork package for postgresql 15- Upgrade to 14.3: * bsc#1199475, CVE-2022-1552: Confine additional operations within "security restricted operation" sandboxes. * https://www.postgresql.org/docs/14/release-14-3.html- bsc#1198166: Pin to llvm13 until the next patchlevel update.- bsc#1195680: Upgrade to 14.2: * https://www.postgresql.org/docs/14/release-14-2.html * Reindexing might be needed after applying this upgrade, so please read the release notes carefully.- boo#1190740: Add constraints file with 12GB of memory for s390x as a workaround- Add a llvmjit-devel subpackage to pull in the right versions of clang and llvm for building extensions. - Fix some mistakes in the interdependencies between the implementation packages and their noarch counterpart. - Update the BuildIgnore section.- bsc#1192516: Upgrade to 14.1 * Make the server reject extraneous data after an SSL or GSS encryption handshake (CVE-2021-23214). * Make libpq reject extraneous data after an SSL or GSS encryption handshake (CVE-2021-23222). * https://www.postgresql.org/docs/14/release-14-1.html- boo#1191782: Let rpmlint ignore shlib-policy-name-error.- Remove postgresql-testsuite-int8.sql.patch, because its purpose is unclear. This affects only the test subpackage.- Upgrade to 14.0 https://www.postgresql.org/about/news/postgresql-14-released-2318/ https://www.postgresql.org/docs/14/release-14.html- Let genlists skip non-existing binaries to avoid lots of version conditionals in the file lists.- Upgrade to 14~rc1 https://www.postgresql.org/about/news/postgresql-14-rc-1-released-2309/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items- Upgrade to 14~beta2 https://www.postgresql.org/about/news/postgresql-14-beta-2-released-2249/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items- Upgrade to 14~beta1 https://www.postgresql.org/about/news/postgresql-14-beta-1-released-2213/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items - disable postgresql-testsuite-int8.sql.patch: it seems it is not needed anymore, need to be double checked.- bsc#1185952: llvm12 breaks PostgreSQL 11 and 12 on s390x. Use llvm11 as a workaround.- Upgrade to version 13.3: * https://www.postgresql.org/docs/13/release-13-3.html * CVE-2021-32027, bsc#1185924: Prevent integer overflows in array subscripting calculations. * CVE-2021-32028, bsc#1185925: Fix mishandling of “junk” columns in INSERT ... ON CONFLICT ... UPDATE target lists. * CVE-2021-32029, bsc#1185926: Fix possibly-incorrect computation of UPDATE ... RETURNING "pg_psql_temporary_savepoint" does not exist”. - Don't use %_stop_on_removal, because it was meant to be private and got removed from openSUSE. %_restart_on_update is also private, but still supported and needed for now (bsc#1183168).- Re-enable build of the llvmjit subpackage on SLE, but it will only be delivered on PackageHub for now (boo#1183118).- Remove leftover PreReq on chkconfig, we stopped using it long time ago.- boo#1179945: Disable icu for PostgreSQL 10 (and older) on TW.- Upgrade to version 13.2: * https://www.postgresql.org/docs/13/release-13-2.html * Updating stored views and reindexing might be needed after applying this update. * CVE-2021-3393, bsc#1182040: Fix information leakage in constraint-violation error messages. * CVE-2021-20229, bsc#1182039: Fix failure to check per-column SELECT privileges in some join queries. * Obsoletes postgresql-icu68.patch.- Add postgresql-icu68.patch: fix build with ICU 68- bsc#1178961: %ghost the symlinks to pg_config and ecpg. - boo#1179765: BuildRequire libpq5 and libecpg6 when not building them to avoid dangling symlinks in the devel package.- Upgrade to version 13.1: * CVE-2020-25695, bsc#1178666: Block DECLARE CURSOR ... WITH HOLD and firing of deferred triggers within index expressions and materialized view queries. * CVE-2020-25694, bsc#1178667: a) Fix usage of complex connection-string parameters in pg_dump, pg_restore, clusterdb, reindexdb, and vacuumdb. b) When psql's \connect command re-uses connection parameters, ensure that all non-overridden parameters from a previous connection string are re-used. * CVE-2020-25696, bsc#1178668: Prevent psql's \gset command from modifying specially-treated variables. * Fix recently-added timetz test case so it works when the USA is not observing daylight savings time. (obsoletes postgresql-timetz.patch) * https://www.postgresql.org/about/news/2111/ * https://www.postgresql.org/docs/13/release-13-1.html- Fix a DST problem in the test suite: postgresql-timetz.patch https://postgr.es/m/16689-57701daa23b377bf@postgresql.org- Initial packaging of PostgreSQL 13: * https://www.postgresql.org/about/news/2077/ * https://www.postgresql.org/docs/13/release-13.htmlh03-ch2a 1732524679  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~15.10-150600.16.9.115.10-150600.16.9.1postgresql15htmlacronyms.htmladmin.htmladminpack.htmlamcheck.htmlapp-clusterdb.htmlapp-createdb.htmlapp-createuser.htmlapp-dropdb.htmlapp-dropuser.htmlapp-ecpg.htmlapp-initdb.htmlapp-pg-ctl.htmlapp-pg-dumpall.htmlapp-pg-isready.htmlapp-pgamcheck.htmlapp-pgbasebackup.htmlapp-pgchecksums.htmlapp-pgconfig.htmlapp-pgcontroldata.htmlapp-pgdump.htmlapp-pgreceivewal.htmlapp-pgreceivexlog.htmlapp-pgrecvlogical.htmlapp-pgresetwal.htmlapp-pgresetxlog.htmlapp-pgrestore.htmlapp-pgrewind.htmlapp-pgverifybackup.htmlapp-postgres.htmlapp-postmaster.htmlapp-psql.htmlapp-reindexdb.htmlapp-vacuumdb.htmlappendix-obsolete.htmlappendixes.htmlapplevel-consistency.htmlarchive-module-callbacks.htmlarchive-module-init.htmlarchive-modules.htmlarrays.htmlauth-bsd.htmlauth-cert.htmlauth-delay.htmlauth-ident.htmlauth-ldap.htmlauth-methods.htmlauth-pam.htmlauth-password.htmlauth-peer.htmlauth-pg-hba-conf.htmlauth-radius.htmlauth-trust.htmlauth-username-maps.htmlauto-explain.htmlbackup-dump.htmlbackup-file.htmlbackup-manifest-files.htmlbackup-manifest-format.htmlbackup-manifest-toplevel.htmlbackup-manifest-wal-ranges.htmlbackup.htmlbasebackup-to-shell.htmlbasic-archive.htmlbgworker.htmlbiblio.htmlbki-commands.htmlbki-example.htmlbki-format.htmlbki-structure.htmlbki.htmlbloom.htmlbookindex.htmlbrin-builtin-opclasses.htmlbrin-extensibility.htmlbrin-intro.htmlbrin.htmlbtree-behavior.htmlbtree-gin.htmlbtree-gist.htmlbtree-implementation.htmlbtree-intro.htmlbtree-support-funcs.htmlbtree.htmlbug-reporting.htmlcatalog-pg-aggregate.htmlcatalog-pg-am.htmlcatalog-pg-amop.htmlcatalog-pg-amproc.htmlcatalog-pg-attrdef.htmlcatalog-pg-attribute.htmlcatalog-pg-auth-members.htmlcatalog-pg-authid.htmlcatalog-pg-cast.htmlcatalog-pg-class.htmlcatalog-pg-collation.htmlcatalog-pg-constraint.htmlcatalog-pg-conversion.htmlcatalog-pg-database.htmlcatalog-pg-db-role-setting.htmlcatalog-pg-default-acl.htmlcatalog-pg-depend.htmlcatalog-pg-description.htmlcatalog-pg-enum.htmlcatalog-pg-event-trigger.htmlcatalog-pg-extension.htmlcatalog-pg-foreign-data-wrapper.htmlcatalog-pg-foreign-server.htmlcatalog-pg-foreign-table.htmlcatalog-pg-index.htmlcatalog-pg-inherits.htmlcatalog-pg-init-privs.htmlcatalog-pg-language.htmlcatalog-pg-largeobject-metadata.htmlcatalog-pg-largeobject.htmlcatalog-pg-namespace.htmlcatalog-pg-opclass.htmlcatalog-pg-operator.htmlcatalog-pg-opfamily.htmlcatalog-pg-parameter-acl.htmlcatalog-pg-partitioned-table.htmlcatalog-pg-policy.htmlcatalog-pg-proc.htmlcatalog-pg-publication-namespace.htmlcatalog-pg-publication-rel.htmlcatalog-pg-publication.htmlcatalog-pg-range.htmlcatalog-pg-replication-origin.htmlcatalog-pg-rewrite.htmlcatalog-pg-seclabel.htmlcatalog-pg-sequence.htmlcatalog-pg-shdepend.htmlcatalog-pg-shdescription.htmlcatalog-pg-shseclabel.htmlcatalog-pg-statistic-ext-data.htmlcatalog-pg-statistic-ext.htmlcatalog-pg-statistic.htmlcatalog-pg-subscription-rel.htmlcatalog-pg-subscription.htmlcatalog-pg-tablespace.htmlcatalog-pg-transform.htmlcatalog-pg-trigger.htmlcatalog-pg-ts-config-map.htmlcatalog-pg-ts-config.htmlcatalog-pg-ts-dict.htmlcatalog-pg-ts-parser.htmlcatalog-pg-ts-template.htmlcatalog-pg-type.htmlcatalog-pg-user-mapping.htmlcatalogs-overview.htmlcatalogs.htmlcharset.htmlchecksums.htmlcitext.htmlclient-authentication-problems.htmlclient-authentication.htmlclient-interfaces.htmlcollation.htmlcolor-when.htmlcolor-which.htmlcolor.htmlconfig-setting.htmlconnect-estab.htmlcontinuous-archiving.htmlcontrib-dblink-build-sql-delete.htmlcontrib-dblink-build-sql-insert.htmlcontrib-dblink-build-sql-update.htmlcontrib-dblink-cancel-query.htmlcontrib-dblink-close.htmlcontrib-dblink-connect-u.htmlcontrib-dblink-connect.htmlcontrib-dblink-disconnect.htmlcontrib-dblink-error-message.htmlcontrib-dblink-exec.htmlcontrib-dblink-fetch.htmlcontrib-dblink-function.htmlcontrib-dblink-get-connections.htmlcontrib-dblink-get-notify.htmlcontrib-dblink-get-pkey.htmlcontrib-dblink-get-result.htmlcontrib-dblink-is-busy.htmlcontrib-dblink-open.htmlcontrib-dblink-send-query.htmlcontrib-prog-client.htmlcontrib-prog-server.htmlcontrib-prog.htmlcontrib-spi.htmlcontrib.htmlcreating-cluster.htmlcube.htmlcustom-rmgr.htmlcustom-scan-execution.htmlcustom-scan-path.htmlcustom-scan-plan.htmlcustom-scan.htmldatabase-roles.htmldatatype-binary.htmldatatype-bit.htmldatatype-boolean.htmldatatype-character.htmldatatype-datetime.htmldatatype-enum.htmldatatype-geometric.htmldatatype-json.htmldatatype-money.htmldatatype-net-types.htmldatatype-numeric.htmldatatype-oid.htmldatatype-pg-lsn.htmldatatype-pseudo.htmldatatype-textsearch.htmldatatype-uuid.htmldatatype-xml.htmldatatype.htmldatetime-appendix.htmldatetime-config-files.htmldatetime-input-rules.htmldatetime-invalid-input.htmldatetime-julian-dates.htmldatetime-keywords.htmldatetime-posix-timezone-specs.htmldatetime-units-history.htmldblink.htmlddl-alter.htmlddl-basics.htmlddl-constraints.htmlddl-default.htmlddl-depend.htmlddl-foreign-data.htmlddl-generated-columns.htmlddl-inherit.htmlddl-others.htmlddl-partitioning.htmlddl-priv.htmlddl-rowsecurity.htmlddl-schemas.htmlddl-system-columns.htmlddl.htmldefault-roles.htmldict-int.htmldict-xsyn.htmldifferent-replication-solutions.htmldisk-full.htmldisk-usage.htmldiskusage.htmldml-delete.htmldml-insert.htmldml-returning.htmldml-update.htmldml.htmldocguide-authoring.htmldocguide-build.htmldocguide-docbook.htmldocguide-style.htmldocguide-toolsets.htmldocguide.htmldomains.htmldynamic-trace.htmlearthdistance.htmlecpg-commands.htmlecpg-concept.htmlecpg-connect.htmlecpg-cpp.htmlecpg-descriptors.htmlecpg-develop.htmlecpg-dynamic.htmlecpg-errors.htmlecpg-informix-compat.htmlecpg-library.htmlecpg-lo.htmlecpg-oracle-compat.htmlecpg-pgtypes.htmlecpg-preproc.htmlecpg-process.htmlecpg-sql-allocate-descriptor.htmlecpg-sql-commands.htmlecpg-sql-connect.htmlecpg-sql-deallocate-descriptor.htmlecpg-sql-declare-statement.htmlecpg-sql-declare.htmlecpg-sql-describe.htmlecpg-sql-disconnect.htmlecpg-sql-execute-immediate.htmlecpg-sql-get-descriptor.htmlecpg-sql-open.htmlecpg-sql-prepare.htmlecpg-sql-set-autocommit.htmlecpg-sql-set-connection.htmlecpg-sql-set-descriptor.htmlecpg-sql-type.htmlecpg-sql-var.htmlecpg-sql-whenever.htmlecpg-variables.htmlecpg.htmlencryption-options.htmlerrcodes-appendix.htmlerror-message-reporting.htmlerror-style-guide.htmlevent-log-registration.htmlevent-trigger-definition.htmlevent-trigger-example.htmlevent-trigger-interface.htmlevent-trigger-matrix.htmlevent-trigger-table-rewrite-example.htmlevent-triggers.htmlexecutor.htmlexplicit-joins.htmlexplicit-locking.htmlextend-extensions.htmlextend-how.htmlextend-pgxs.htmlextend-type-system.htmlextend.htmlexternal-admin-tools.htmlexternal-extensions.htmlexternal-interfaces.htmlexternal-pl.htmlexternal-projects.htmlfdw-callbacks.htmlfdw-functions.htmlfdw-helpers.htmlfdw-planning.htmlfdw-row-locking.htmlfdwhandler.htmlfeatures-sql-standard.htmlfeatures.htmlfile-fdw.htmlfunctions-admin.htmlfunctions-aggregate.htmlfunctions-array.htmlfunctions-binarystring.htmlfunctions-bitstring.htmlfunctions-comparison.htmlfunctions-comparisons.htmlfunctions-conditional.htmlfunctions-datetime.htmlfunctions-enum.htmlfunctions-event-triggers.htmlfunctions-formatting.htmlfunctions-geometry.htmlfunctions-info.htmlfunctions-json.htmlfunctions-logical.htmlfunctions-matching.htmlfunctions-math.htmlfunctions-net.htmlfunctions-range.htmlfunctions-sequence.htmlfunctions-srf.htmlfunctions-statistics.htmlfunctions-string.htmlfunctions-subquery.htmlfunctions-textsearch.htmlfunctions-trigger.htmlfunctions-uuid.htmlfunctions-window.htmlfunctions-xml.htmlfunctions.htmlfuzzystrmatch.htmlgeneric-wal.htmlgenetic-algorithm.svggeqo-biblio.htmlgeqo-intro.htmlgeqo-intro2.htmlgeqo-pg-intro.htmlgeqo.htmlgin-builtin-opclasses.htmlgin-examples.htmlgin-extensibility.htmlgin-implementation.htmlgin-intro.htmlgin-limit.htmlgin-tips.htmlgin.htmlgin.svggist-builtin-opclasses.htmlgist-examples.htmlgist-extensibility.htmlgist-implementation.htmlgist-intro.htmlgist.htmlgit.htmlglossary.htmlgssapi-auth.htmlgssapi-enc.htmlhash-implementation.htmlhash-index.htmlhash-intro.htmlhigh-availability.htmlhistory.htmlhot-standby.htmlhow-parallel-query-works.htmlhstore.htmlindex-api.htmlindex-cost-estimation.htmlindex-functions.htmlindex-locking.htmlindex-scanning.htmlindex-unique-checks.htmlindex.htmlindexam.htmlindexes-bitmap-scans.htmlindexes-collations.htmlindexes-examine.htmlindexes-expressional.htmlindexes-index-only-scans.htmlindexes-intro.htmlindexes-multicolumn.htmlindexes-opclass.htmlindexes-ordering.htmlindexes-partial.htmlindexes-types.htmlindexes-unique.htmlindexes.htmlinformation-schema.htmlinfoschema-administrable-role-authorizations.htmlinfoschema-applicable-roles.htmlinfoschema-attributes.htmlinfoschema-character-sets.htmlinfoschema-check-constraint-routine-usage.htmlinfoschema-check-constraints.htmlinfoschema-collation-character-set-applicab.htmlinfoschema-collations.htmlinfoschema-column-column-usage.htmlinfoschema-column-domain-usage.htmlinfoschema-column-options.htmlinfoschema-column-privileges.htmlinfoschema-column-udt-usage.htmlinfoschema-columns.htmlinfoschema-constraint-column-usage.htmlinfoschema-constraint-table-usage.htmlinfoschema-data-type-privileges.htmlinfoschema-datatypes.htmlinfoschema-domain-constraints.htmlinfoschema-domain-udt-usage.htmlinfoschema-domains.htmlinfoschema-element-types.htmlinfoschema-enabled-roles.htmlinfoschema-foreign-data-wrapper-options.htmlinfoschema-foreign-data-wrappers.htmlinfoschema-foreign-server-options.htmlinfoschema-foreign-servers.htmlinfoschema-foreign-table-options.htmlinfoschema-foreign-tables.htmlinfoschema-information-schema-catalog-name.htmlinfoschema-key-column-usage.htmlinfoschema-parameters.htmlinfoschema-referential-constraints.htmlinfoschema-role-column-grants.htmlinfoschema-role-routine-grants.htmlinfoschema-role-table-grants.htmlinfoschema-role-udt-grants.htmlinfoschema-role-usage-grants.htmlinfoschema-routine-column-usage.htmlinfoschema-routine-privileges.htmlinfoschema-routine-routine-usage.htmlinfoschema-routine-sequence-usage.htmlinfoschema-routine-table-usage.htmlinfoschema-routines.htmlinfoschema-schema.htmlinfoschema-schemata.htmlinfoschema-sequences.htmlinfoschema-sql-features.htmlinfoschema-sql-implementation-info.htmlinfoschema-sql-parts.htmlinfoschema-sql-sizing.htmlinfoschema-table-constraints.htmlinfoschema-table-privileges.htmlinfoschema-tables.htmlinfoschema-transforms.htmlinfoschema-triggered-update-columns.htmlinfoschema-triggers.htmlinfoschema-udt-privileges.htmlinfoschema-usage-privileges.htmlinfoschema-user-defined-types.htmlinfoschema-user-mapping-options.htmlinfoschema-user-mappings.htmlinfoschema-view-column-usage.htmlinfoschema-view-routine-usage.htmlinfoschema-view-table-usage.htmlinfoschema-views.htmlinstall-binaries.htmlinstall-getsource.htmlinstall-post.htmlinstall-procedure.htmlinstall-requirements.htmlinstall-short.htmlinstall-windows-full.htmlinstall-windows.htmlinstallation-platform-notes.htmlinstallation.htmlintagg.htmlintarray.htmlinternals.htmlintro-whatis.htmlisn.htmljit-configuration.htmljit-decision.htmljit-extensibility.htmljit-reason.htmljit.htmlkernel-resources.htmllargeobjects.htmllegalnotice.htmllibpq-async.htmllibpq-build.htmllibpq-cancel.htmllibpq-connect.htmllibpq-control.htmllibpq-copy.htmllibpq-envars.htmllibpq-events.htmllibpq-example.htmllibpq-exec.htmllibpq-fastpath.htmllibpq-ldap.htmllibpq-misc.htmllibpq-notice-processing.htmllibpq-notify.htmllibpq-pgpass.htmllibpq-pgservice.htmllibpq-pipeline-mode.htmllibpq-single-row-mode.htmllibpq-ssl.htmllibpq-status.htmllibpq-threading.htmllibpq.htmllimits.htmllo-examplesect.htmllo-funcs.htmllo-implementation.htmllo-interfaces.htmllo-intro.htmllo.htmllocale.htmllocking-indexes.htmllogfile-maintenance.htmllogical-replication-architecture.htmllogical-replication-col-lists.htmllogical-replication-config.htmllogical-replication-conflicts.htmllogical-replication-monitoring.htmllogical-replication-publication.htmllogical-replication-quick-setup.htmllogical-replication-restrictions.htmllogical-replication-row-filter.htmllogical-replication-security.htmllogical-replication-subscription.htmllogical-replication.htmllogicaldecoding-catalogs.htmllogicaldecoding-example.htmllogicaldecoding-explanation.htmllogicaldecoding-output-plugin.htmllogicaldecoding-sql.htmllogicaldecoding-streaming.htmllogicaldecoding-synchronous.htmllogicaldecoding-two-phase-commits.htmllogicaldecoding-walsender.htmllogicaldecoding-writer.htmllogicaldecoding.htmlltree.htmlmaintenance.htmlmanage-ag-config.htmlmanage-ag-createdb.htmlmanage-ag-dropdb.htmlmanage-ag-overview.htmlmanage-ag-tablespaces.htmlmanage-ag-templatedbs.htmlmanaging-databases.htmlmonitoring-locks.htmlmonitoring-ps.htmlmonitoring-stats.htmlmonitoring.htmlmultibyte.htmlmultivariate-statistics-examples.htmlmvcc-caveats.htmlmvcc-intro.htmlmvcc-serialization-failure-handling.htmlmvcc.htmlnls-programmer.htmlnls-translator.htmlnls.htmlnon-durability.htmlnotation.htmloid2name.htmloldsnapshot.htmloverview.htmlpageinspect.htmlpagelayout.svgparallel-plans.htmlparallel-query.htmlparallel-safety.htmlparser-stage.htmlpasswordcheck.htmlperformance-tips.htmlperm-functions.htmlpgarchivecleanup.htmlpgbench.htmlpgbuffercache.htmlpgcrypto.htmlpgfreespacemap.htmlpgprewarm.htmlpgrowlocks.htmlpgstatstatements.htmlpgstattuple.htmlpgsurgery.htmlpgtestfsync.htmlpgtesttiming.htmlpgtrgm.htmlpgupgrade.htmlpgvisibility.htmlpgwaldump.htmlpgwalinspect.htmlpgxlogdump.htmlplanner-optimizer.htmlplanner-stats-details.htmlplanner-stats-security.htmlplanner-stats.htmlplhandler.htmlplperl-builtins.htmlplperl-data.htmlplperl-event-triggers.htmlplperl-funcs.htmlplperl-global.htmlplperl-triggers.htmlplperl-trusted.htmlplperl-under-the-hood.htmlplperl.htmlplpgsql-control-structures.htmlplpgsql-cursors.htmlplpgsql-declarations.htmlplpgsql-development-tips.htmlplpgsql-errors-and-messages.htmlplpgsql-expressions.htmlplpgsql-implementation.htmlplpgsql-overview.htmlplpgsql-porting.htmlplpgsql-statements.htmlplpgsql-structure.htmlplpgsql-transactions.htmlplpgsql-trigger.htmlplpgsql.htmlplpython-data.htmlplpython-database.htmlplpython-do.htmlplpython-envar.htmlplpython-funcs.htmlplpython-python23.htmlplpython-sharing.htmlplpython-subtransaction.htmlplpython-transactions.htmlplpython-trigger.htmlplpython-util.htmlplpython.htmlpltcl-config.htmlpltcl-data.htmlpltcl-dbaccess.htmlpltcl-error-handling.htmlpltcl-event-trigger.htmlpltcl-functions.htmlpltcl-global.htmlpltcl-overview.htmlpltcl-procnames.htmlpltcl-subtransactions.htmlpltcl-transactions.htmlpltcl-trigger.htmlpltcl.htmlpopulate.htmlpostgres-fdw.htmlpostgres-user.htmlpredefined-roles.htmlpreface.htmlpreventing-server-spoofing.htmlprogress-reporting.htmlprotocol-changes.htmlprotocol-error-fields.htmlprotocol-flow.htmlprotocol-logical-replication.htmlprotocol-logicalrep-message-formats.htmlprotocol-message-formats.htmlprotocol-message-types.htmlprotocol-overview.htmlprotocol-replication.htmlprotocol.htmlqueries-limit.htmlqueries-order.htmlqueries-overview.htmlqueries-select-lists.htmlqueries-table-expressions.htmlqueries-union.htmlqueries-values.htmlqueries-with.htmlqueries.htmlquery-path.htmlquerytree.htmlrangetypes.htmlrecovery-config.htmlreference-client.htmlreference-server.htmlreference.htmlregress-coverage.htmlregress-evaluation.htmlregress-run.htmlregress-tap.htmlregress-variant.htmlregress.htmlrelease-15-1.htmlrelease-15-10.htmlrelease-15-2.htmlrelease-15-3.htmlrelease-15-4.htmlrelease-15-5.htmlrelease-15-6.htmlrelease-15-7.htmlrelease-15-8.htmlrelease-15-9.htmlrelease-15.htmlrelease-prior.htmlrelease.htmlreplication-origins.htmlresources.htmlrole-attributes.htmlrole-membership.htmlrole-removal.htmlroutine-reindex.htmlroutine-vacuuming.htmlrow-estimation-examples.htmlrowtypes.htmlrule-system.htmlrules-materializedviews.htmlrules-privileges.htmlrules-status.htmlrules-triggers.htmlrules-update.htmlrules-views.htmlrules.htmlruntime-config-autovacuum.htmlruntime-config-client.htmlruntime-config-compatible.htmlruntime-config-connection.htmlruntime-config-custom.htmlruntime-config-developer.htmlruntime-config-error-handling.htmlruntime-config-file-locations.htmlruntime-config-locks.htmlruntime-config-logging.htmlruntime-config-preset.htmlruntime-config-query.htmlruntime-config-replication.htmlruntime-config-resource.htmlruntime-config-short.htmlruntime-config-statistics.htmlruntime-config-wal.htmlruntime-config.htmlruntime.htmlsasl-authentication.htmlseg.htmlsepgsql.htmlserver-programming.htmlserver-shutdown.htmlserver-start.htmlsource-conventions.htmlsource-format.htmlsource.htmlsourcerepo.htmlspgist-builtin-opclasses.htmlspgist-examples.htmlspgist-extensibility.htmlspgist-implementation.htmlspgist-intro.htmlspgist.htmlspi-examples.htmlspi-interface-support.htmlspi-interface.htmlspi-memory.htmlspi-realloc.htmlspi-spi-commit.htmlspi-spi-connect.htmlspi-spi-copytuple.htmlspi-spi-cursor-close.htmlspi-spi-cursor-fetch.htmlspi-spi-cursor-find.htmlspi-spi-cursor-move.htmlspi-spi-cursor-open-with-args.htmlspi-spi-cursor-open-with-paramlist.htmlspi-spi-cursor-open.htmlspi-spi-cursor-parse-open.htmlspi-spi-exec.htmlspi-spi-execp.htmlspi-spi-execute-extended.htmlspi-spi-execute-plan-extended.htmlspi-spi-execute-plan-with-paramlist.htmlspi-spi-execute-plan.htmlspi-spi-execute-with-args.htmlspi-spi-execute.htmlspi-spi-finish.htmlspi-spi-fname.htmlspi-spi-fnumber.htmlspi-spi-freeplan.htmlspi-spi-freetuple.htmlspi-spi-freetupletable.htmlspi-spi-getargcount.htmlspi-spi-getargtypeid.htmlspi-spi-getbinval.htmlspi-spi-getnspname.htmlspi-spi-getrelname.htmlspi-spi-gettype.htmlspi-spi-gettypeid.htmlspi-spi-getvalue.htmlspi-spi-is-cursor-plan.htmlspi-spi-keepplan.htmlspi-spi-modifytuple.htmlspi-spi-palloc.htmlspi-spi-pfree.htmlspi-spi-prepare-cursor.htmlspi-spi-prepare-extended.htmlspi-spi-prepare-params.htmlspi-spi-prepare.htmlspi-spi-register-relation.htmlspi-spi-register-trigger-data.htmlspi-spi-result-code-string.htmlspi-spi-returntuple.htmlspi-spi-rollback.htmlspi-spi-saveplan.htmlspi-spi-scroll-cursor-fetch.htmlspi-spi-scroll-cursor-move.htmlspi-spi-start-transaction.htmlspi-spi-unregister-relation.htmlspi-transaction.htmlspi-visibility.htmlspi.htmlsql-abort.htmlsql-alteraggregate.htmlsql-altercollation.htmlsql-alterconversion.htmlsql-alterdatabase.htmlsql-alterdefaultprivileges.htmlsql-alterdomain.htmlsql-altereventtrigger.htmlsql-alterextension.htmlsql-alterforeigndatawrapper.htmlsql-alterforeigntable.htmlsql-alterfunction.htmlsql-altergroup.htmlsql-alterindex.htmlsql-alterlanguage.htmlsql-alterlargeobject.htmlsql-altermaterializedview.htmlsql-alteropclass.htmlsql-alteroperator.htmlsql-alteropfamily.htmlsql-alterpolicy.htmlsql-alterprocedure.htmlsql-alterpublication.htmlsql-alterrole.htmlsql-alterroutine.htmlsql-alterrule.htmlsql-alterschema.htmlsql-altersequence.htmlsql-alterserver.htmlsql-alterstatistics.htmlsql-altersubscription.htmlsql-altersystem.htmlsql-altertable.htmlsql-altertablespace.htmlsql-altertrigger.htmlsql-altertsconfig.htmlsql-altertsdictionary.htmlsql-altertsparser.htmlsql-altertstemplate.htmlsql-altertype.htmlsql-alteruser.htmlsql-alterusermapping.htmlsql-alterview.htmlsql-analyze.htmlsql-begin.htmlsql-call.htmlsql-checkpoint.htmlsql-close.htmlsql-cluster.htmlsql-commands.htmlsql-comment.htmlsql-commit-prepared.htmlsql-commit.htmlsql-copy.htmlsql-create-access-method.htmlsql-createaggregate.htmlsql-createcast.htmlsql-createcollation.htmlsql-createconversion.htmlsql-createdatabase.htmlsql-createdomain.htmlsql-createeventtrigger.htmlsql-createextension.htmlsql-createforeigndatawrapper.htmlsql-createforeigntable.htmlsql-createfunction.htmlsql-creategroup.htmlsql-createindex.htmlsql-createlanguage.htmlsql-creatematerializedview.htmlsql-createopclass.htmlsql-createoperator.htmlsql-createopfamily.htmlsql-createpolicy.htmlsql-createprocedure.htmlsql-createpublication.htmlsql-createrole.htmlsql-createrule.htmlsql-createschema.htmlsql-createsequence.htmlsql-createserver.htmlsql-createstatistics.htmlsql-createsubscription.htmlsql-createtable.htmlsql-createtableas.htmlsql-createtablespace.htmlsql-createtransform.htmlsql-createtrigger.htmlsql-createtsconfig.htmlsql-createtsdictionary.htmlsql-createtsparser.htmlsql-createtstemplate.htmlsql-createtype.htmlsql-createuser.htmlsql-createusermapping.htmlsql-createview.htmlsql-deallocate.htmlsql-declare.htmlsql-delete.htmlsql-discard.htmlsql-do.htmlsql-drop-access-method.htmlsql-drop-owned.htmlsql-dropaggregate.htmlsql-dropcast.htmlsql-dropcollation.htmlsql-dropconversion.htmlsql-dropdatabase.htmlsql-dropdomain.htmlsql-dropeventtrigger.htmlsql-dropextension.htmlsql-dropforeigndatawrapper.htmlsql-dropforeigntable.htmlsql-dropfunction.htmlsql-dropgroup.htmlsql-dropindex.htmlsql-droplanguage.htmlsql-dropmaterializedview.htmlsql-dropopclass.htmlsql-dropoperator.htmlsql-dropopfamily.htmlsql-droppolicy.htmlsql-dropprocedure.htmlsql-droppublication.htmlsql-droprole.htmlsql-droproutine.htmlsql-droprule.htmlsql-dropschema.htmlsql-dropsequence.htmlsql-dropserver.htmlsql-dropstatistics.htmlsql-dropsubscription.htmlsql-droptable.htmlsql-droptablespace.htmlsql-droptransform.htmlsql-droptrigger.htmlsql-droptsconfig.htmlsql-droptsdictionary.htmlsql-droptsparser.htmlsql-droptstemplate.htmlsql-droptype.htmlsql-dropuser.htmlsql-dropusermapping.htmlsql-dropview.htmlsql-end.htmlsql-execute.htmlsql-explain.htmlsql-expressions.htmlsql-fetch.htmlsql-grant.htmlsql-importforeignschema.htmlsql-insert.htmlsql-keywords-appendix.htmlsql-listen.htmlsql-load.htmlsql-lock.htmlsql-merge.htmlsql-move.htmlsql-notify.htmlsql-prepare-transaction.htmlsql-prepare.htmlsql-reassign-owned.htmlsql-refreshmaterializedview.htmlsql-reindex.htmlsql-release-savepoint.htmlsql-reset.htmlsql-revoke.htmlsql-rollback-prepared.htmlsql-rollback-to.htmlsql-rollback.htmlsql-savepoint.htmlsql-security-label.htmlsql-select.htmlsql-selectinto.htmlsql-set-constraints.htmlsql-set-role.htmlsql-set-session-authorization.htmlsql-set-transaction.htmlsql-set.htmlsql-show.htmlsql-start-transaction.htmlsql-syntax-calling-funcs.htmlsql-syntax-lexical.htmlsql-syntax.htmlsql-truncate.htmlsql-unlisten.htmlsql-update.htmlsql-vacuum.htmlsql-values.htmlsql.htmlssh-tunnels.htmlssl-tcp.htmlsslinfo.htmlsspi-auth.htmlstorage-file-layout.htmlstorage-fsm.htmlstorage-hot.htmlstorage-init.htmlstorage-page-layout.htmlstorage-toast.htmlstorage-vm.htmlstorage.htmlstylesheet.csssupported-platforms.htmlsystem-catalog-declarations.htmlsystem-catalog-initial-data.htmltableam.htmltablefunc.htmltablesample-method.htmltablesample-support-functions.htmltcn.htmltest-decoding.htmltextsearch-configuration.htmltextsearch-controls.htmltextsearch-debugging.htmltextsearch-dictionaries.htmltextsearch-features.htmltextsearch-indexes.htmltextsearch-intro.htmltextsearch-limitations.htmltextsearch-parsers.htmltextsearch-psql.htmltextsearch-tables.htmltextsearch.htmltransaction-iso.htmltrigger-datachanges.htmltrigger-definition.htmltrigger-example.htmltrigger-interface.htmltriggers.htmltsm-system-rows.htmltsm-system-time.htmltutorial-accessdb.htmltutorial-advanced-intro.htmltutorial-advanced.htmltutorial-agg.htmltutorial-arch.htmltutorial-concepts.htmltutorial-conclusion.htmltutorial-createdb.htmltutorial-delete.htmltutorial-fk.htmltutorial-inheritance.htmltutorial-install.htmltutorial-join.htmltutorial-populate.htmltutorial-select.htmltutorial-sql-intro.htmltutorial-sql.htmltutorial-start.htmltutorial-table.htmltutorial-transactions.htmltutorial-update.htmltutorial-views.htmltutorial-window.htmltutorial.htmltypeconv-func.htmltypeconv-oper.htmltypeconv-overview.htmltypeconv-query.htmltypeconv-select.htmltypeconv-union-case.htmltypeconv.htmlunaccent.htmlunsupported-features-sql-standard.htmlupgrading.htmluser-manag.htmlusing-explain.htmluuid-ossp.htmlvacuumlo.htmlview-pg-available-extension-versions.htmlview-pg-available-extensions.htmlview-pg-backend-memory-contexts.htmlview-pg-config.htmlview-pg-cursors.htmlview-pg-file-settings.htmlview-pg-group.htmlview-pg-hba-file-rules.htmlview-pg-ident-file-mappings.htmlview-pg-indexes.htmlview-pg-locks.htmlview-pg-matviews.htmlview-pg-policies.htmlview-pg-prepared-statements.htmlview-pg-prepared-xacts.htmlview-pg-publication-tables.htmlview-pg-replication-origin-status.htmlview-pg-replication-slots.htmlview-pg-roles.htmlview-pg-rules.htmlview-pg-seclabels.htmlview-pg-sequences.htmlview-pg-settings.htmlview-pg-shadow.htmlview-pg-shmem-allocations.htmlview-pg-stats-ext-exprs.htmlview-pg-stats-ext.htmlview-pg-stats.htmlview-pg-tables.htmlview-pg-timezone-abbrevs.htmlview-pg-timezone-names.htmlview-pg-user-mappings.htmlview-pg-user.htmlview-pg-views.htmlviews-overview.htmlviews.htmlwal-async-commit.htmlwal-configuration.htmlwal-internals.htmlwal-intro.htmlwal-reliability.htmlwal.htmlwarm-standby-failover.htmlwarm-standby.htmlwhen-can-parallel-query-be-used.htmlxaggr.htmlxfunc-c.htmlxfunc-internal.htmlxfunc-optimization.htmlxfunc-overload.htmlxfunc-pl.htmlxfunc-sql.htmlxfunc-volatility.htmlxfunc.htmlxindex.htmlxml-limits-conformance.htmlxml2.htmlxoper-optimization.htmlxoper.htmlxplang-install.htmlxplang.htmlxproc.htmlxtypes.htmlSPI_commit.3pg15.gzSPI_commit_and_chain.3pg15.gzSPI_connect.3pg15.gzSPI_connect_ext.3pg15.gzSPI_copytuple.3pg15.gzSPI_cursor_close.3pg15.gzSPI_cursor_fetch.3pg15.gzSPI_cursor_find.3pg15.gzSPI_cursor_move.3pg15.gzSPI_cursor_open.3pg15.gzSPI_cursor_open_with_args.3pg15.gzSPI_cursor_open_with_paramlist.3pg15.gzSPI_cursor_parse_open.3pg15.gzSPI_exec.3pg15.gzSPI_execp.3pg15.gzSPI_execute.3pg15.gzSPI_execute_extended.3pg15.gzSPI_execute_plan.3pg15.gzSPI_execute_plan_extended.3pg15.gzSPI_execute_plan_with_paramlist.3pg15.gzSPI_execute_with_args.3pg15.gzSPI_finish.3pg15.gzSPI_fname.3pg15.gzSPI_fnumber.3pg15.gzSPI_freeplan.3pg15.gzSPI_freetuple.3pg15.gzSPI_freetuptable.3pg15.gzSPI_getargcount.3pg15.gzSPI_getargtypeid.3pg15.gzSPI_getbinval.3pg15.gzSPI_getnspname.3pg15.gzSPI_getrelname.3pg15.gzSPI_gettype.3pg15.gzSPI_gettypeid.3pg15.gzSPI_getvalue.3pg15.gzSPI_is_cursor_plan.3pg15.gzSPI_keepplan.3pg15.gzSPI_modifytuple.3pg15.gzSPI_palloc.3pg15.gzSPI_pfree.3pg15.gzSPI_prepare.3pg15.gzSPI_prepare_cursor.3pg15.gzSPI_prepare_extended.3pg15.gzSPI_prepare_params.3pg15.gzSPI_register_relation.3pg15.gzSPI_register_trigger_data.3pg15.gzSPI_repalloc.3pg15.gzSPI_result_code_string.3pg15.gzSPI_returntuple.3pg15.gzSPI_rollback.3pg15.gzSPI_rollback_and_chain.3pg15.gzSPI_saveplan.3pg15.gzSPI_scroll_cursor_fetch.3pg15.gzSPI_scroll_cursor_move.3pg15.gzSPI_start_transaction.3pg15.gzSPI_unregister_relation.3pg15.gzdblink.3pg15.gzdblink_build_sql_delete.3pg15.gzdblink_build_sql_insert.3pg15.gzdblink_build_sql_update.3pg15.gzdblink_cancel_query.3pg15.gzdblink_close.3pg15.gzdblink_connect.3pg15.gzdblink_connect_u.3pg15.gzdblink_disconnect.3pg15.gzdblink_error_message.3pg15.gzdblink_exec.3pg15.gzdblink_fetch.3pg15.gzdblink_get_connections.3pg15.gzdblink_get_notify.3pg15.gzdblink_get_pkey.3pg15.gzdblink_get_result.3pg15.gzdblink_is_busy.3pg15.gzdblink_open.3pg15.gzdblink_send_query.3pg15.gz/usr/share/doc/packages//usr/share/doc/packages/postgresql15//usr/share/doc/packages/postgresql15/html//usr/share/man/man3/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:36490/SUSE_SLE-15-SP6_Update/9876f9c35465887f19bbf0a44a95cf2b-postgresql15.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linuxdirectoryXML 1.0 document, UTF-8 Unicode text, with very long linesSVG Scalable Vector Graphics imageASCII texttroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)troff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)%o&cبutf-8f84990278c511f3c8c84280178ccc647424e00384cc1ee0e7447081e9e4a7e64?P7zXZ !t/(]"k%0#J:fV3sO\/ qwrZoU2h׀ Hi_EFA%93F,~U&fOf[YuvT7,ACҏ!sqjn8x/#2t["  |̯v<<̱(7U.kpUyD0Q[1rrG"6eFYFBkfmVVŠL!?T`R$WyӝYCvcO T[__m! |u g>ju}L՗O:FW8:D2(Qyo Vlb\K}( mqt_[KM n[d*.NE Qg:̃ɍy.j]z b;2Tu/gʥS/w){M7wWu7:hݦ;NfOXIqoɐUvh锲BSG tsT29N{0Qx+Zby@~j>1O-;3^i}p,Jec!v4^|%I RpAٴ×qqYwGy[cbqʈ,H"jli &Kl!UXf, 9=D`=PM%AJ*'_,;M3Al MTXV0 COevg:dw*Nr[ z烼KS8S(&o鎸Xݯ}ftWÒuGz.yB)jiJOD?9]-CE@r.WI/j5r܃*s^ZLxd$]$ƀO*Au/N2@_^^=;O}Qid!yKHPց> 4J',RC:ڰC+&n4%T.ܗ7 0"}[oz&Goq0'`v}/,VVN X.L)>NZO5ׇr@_+*gD{7_s)PƥQ_-,{ +~310 8WE*Tz)W m]5Hpeϭz*^Tvs>~0tMliK͐OmWtZy[Le]1$`sqo!JMt eU(ea?X&F; &3q(sʀ J{>kRM'A..DEPvlHHc - DiR~Q^J4EYlyժj2C)u83!{CǀqtWILgL5m<3\ "%" O`E펧EWͭ<2_:z:Ic] h݈-֩ܚnt#5) =v+mF]2cRq%Z$m ]9aA*^.8j6rIv {x{eLh_}:d;iEq *8X"/oQm *Džq‚QVc#ojue'3.W_!G ^4^QCѤOH:W!j=HsMjM>/+4{%SVdN2dS;8xwuE7y S2rd:{p~b9VzBAlAET~}M!x2WOQ sn'{TQVA ΣWHI%:#)wN">~Y} nr~<VXYD cs5Fjc1$s 0#%,c*ftƩYP{p̱3>.i z3HHZV'g>M0$RQn谚Y0=A,1j3 wBNQ媰7?xyu?ThX>փm4QkU$9GG-:. e1rC:ٜ]Lfaf2 tN<$ݔ]~> K,N!Z~Uo'1*ufa }q`xG#xoU=":wR%u-K4`D>;y7)n+7h s_ _s6$Ki+vAq.8@4N`>MDf+ Pǫҭ9߄ lB6eWI@";fS\0-o=9;6bJ̫H[X#g"%,]w_I9VGY~/3V p/#E^mJocI#~r2^1y],>iS9>Viq[qnC㐚mۆpݸ1C/T,8L%aK8y0b0px جJ&H| H>_ xUc^A !x`^8)KZO\(@0ɰ2" 켰zBu&Q|,dĔE9(("7 M"}՛[AMǿ9uВ3l 5UIE@?+#UbdwTxM㔕%9rh΃EqhOj<f9[<$0tێ?sy8S8-5@ z]_GC `D>@6 _gTVf%kR, z Gq$J3:>[x%5fŌ˽mW6vp9 錟Vy̥W_'@mLgbhBLď;Z3-g<}ޡԸupyϏ0gRPs&\ӟ:Tw0 &@)%1N-ϗV,2@TsuL/01Xhp8^ }/wW~ea9*qy'v< NRKk m[+u یCĞךhc⃮̏;!|R^p0r59QX"% ^U&{쁷(`q0&p<8j|[Uwwah a"/x_,Pylo/*{@4n|0Cߊe7T>% ]՗LS^X2X=wWltc k :B,K ]Q2d9X 7sWbKj)䦁"xhIT>a"x`{ h^w90 ]eg] HIR=N U0Mɮ;J)ޮl˱-#܍\7I2~>WRI#+&zg.X^/5gY*" (j1J%4MaP>hGK%eʹ >ylbqBg,9ꕧN Em ;d& NUJʕ3`X5pvHk1MN *:+%s\.z(W:1vzmt}s *S*uA|!A4uQ%aqk:Qzx|t`M[nDI38,13xr 6R 3hR/UnʎK.KP1ozC&}=)Ee+h1!6m<ؘCmTYUZ8 .̅qO]DoGe44oha/ȵe!؄n]'zD>],uY#0 ~U~eݦ5Ӌ5w["ȣr便8WwN l!'%EU(4X[ǎ\,œ KQ'?})XFbUjL2u0:Dݹ5!v8:ZV8oJ$Az*kG}A'̰6Y%hZDٸM%G_P CNFBy䗬 ?! j)?7wPxic=[K@5?p3k < ztGm)w/XO;ee2 ;6ۚAӉܴ)͍k։'„LB9`N(ϣ̾ wa9eyfȜ$Ek=n'b / 6uePL+X&fS̃Jv4rMpA]V&'VeS4 !lTb[XEvg'q: f*Ic1S(2\w~ O@8%i!w)ƴF'Ύykn7]yJK˨ ,B*XG`24iK2 vxfř`_TlM<Gq>4SvcT k7݊M؛4ߑgcM$M"2y' d"r]ّ@[4FN&ad2+H~Hd,pqݗr/OzZHroL.V@-?ᬁq9O}xo$=BE :KGg$a,"d`]߫ 7X9v~3}X= \s`)\6DȎ&!_@{!VybQǖ>Y1S30Y]{X:п|3-/*v.[=ྍOj7SN|%dnf6x*(QILmuO GcъR #]:&{yyuoꕴXUS*2jRS#*@1ЈLQӮ!"B6p 7\K>-&UiQɟ+!$(ŏ /+o| DҌv^UrBMu|q4é ]T|khL ٯ/9"J(-vg9kGZmb4bh"IH!è풢pT' x@U@~jLǂJ(O~Cb=# V0tnQ;vBa23Vt5U`(AXL]lt5f⊸C2Pd ˴ YZ