postgresql13-docs-13.20-150600.14.5.2<>,ĉgeOp9|=D5 B&Dƭ[yynTnOn8MOҊ$`pOw,do=VuK#@LrXS鋔o6 ի_$.Qu[^6Vr[Z8]K#fCX^,xh:sJ H@ncEcpeg!}2@~BF茮yP@,-tY87?&]]/hG4CZ)aS 3&Nr[/%wpڧ$I>;H?8d ( J $=^i  6 ( ; o! s6`TɈɜ(58<090:ͺ0FGHI&X+HY+P\+x]>l^bVcdefluvz4Cpostgresql13-docs13.20150600.14.5.2HTML 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/postgresql13/html/index.html . Manual pages for the PostgreSQL SQL statements can be found in the postgresql package.geOh04-ch1aSUSE Linux Enterprise 15SUSE LLC PostgreSQLhttps://www.suse.com/Productivity/Databases/Toolshttps://www.postgresql.org/linuxnoarchQ D"Oz3:H2.9+,)<Qp0{$g#+5NCD7I4 2@SR 2*y$N9 \4$R9K!mGAO' :g5 5T;A G&63 QVF M4$M'c8P# I8$73:`/?}6#B$Fu_". XD-XX@^ :q<6AS}s  !`GPWLm1" >  !XxbCj&T kx7`4nAH;Me, ,.01Oi#0 /~3"!/tuE 5hWZ&}$(gAe ?\ j )&Ma}902-5n)!spޕ``,G {&s Lc l 3 ^=IH* X^T,vHHN48 1   C%"i)=_};eGE7;A3Nr}+Y=;1TJX / 97%Z I?%/ UMiM X! -;x 5 ;e* x$"/4*ks!+Z%0%7< ":5(1= `?dLy-V%vV67U@d;7.l1w^ 2czc- "1] !{9 \Y*UTfA,!CD{mx[>&`j7fFu>L3_>s;$oM'$X(e:-&QA# - #P n !DJF])R" V`!ׯ9M*n= -9}]j9zy!!%s;'+ig?La2=nw '12'([8SX ?pR3'nBl\:6XJ(q0"Lhv0%EB j PK :zm 1&Kn%W6H=t( \(a9 .e6<A[9JfeVVw|fP)n[2K\v l9h,q\Tcr`Lgc z,?,,"Rxfj%0&q">{:vH\K#}/ ')d*%HR:CZ  g^$ _@ NrI6 Q b UBe "# |:L, V6Z7?X" 9'/34g7T}B/H4+!91?,:o':#x!&~EwG#q<W%~UGFD^L'=--^!N*W,"6x/0qp>')Y 7&>#07!%~&o)qW@;0j~-Dl[ `B7"CEvh  L):T D6K30_-f#]1Q <=*:![>6$3$='+PhL-FR%e$94 p<K RTj }v-? 9G3ey_h$''j37Vz5 [' 0$3 %b/R'c o z Z'? 2$@@"<%% r1?,K.%Y~z:JE=FC), 7&)>;H[&#Pf7n %4! $'%D=Pwa*,4D}*+2j}*q+ +-YykR+'2A,`<DF>f}AA큤ge%ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge ge 04d0d8cf62616894ec6e24f0951f63c62069864d588c29bee3411f82706e28919e817490c0f51a1fa95acc9342af2103acb1392b871fbe66753d98a7c898c6212d1915441126feba6c140c2fca3dd1c7a149885422e8fa4075a71e75ed99fe4c8f58c6601db4c2fc755d1af997a75b39288881bb17392de7eec16c4e5216d20efa903b15bb617840cdb69e3309a23c1f983689c439d289f1bd3da839ebbae0c0c4474c9a98b8e83b40a3d2a66c76cc7bb69de303409c27eb93a49e1418d08bfae96950346440ac9007f8f86f53a419d8994f18707ac35a8076f5fe5cdcf7c09aedec559180b5fd7ebe0c9be5a90c9b56653e4a4213b21162272c4736fa0572499b008ae75fe336982309a8c56a62fe38acb29fc609887376a06fd4f6a3ee07eed08918b932a7bd20d48b16d886908e825e40115ad9d55d55b5519a7fd7724f0304f2117d79504db3f4844eb4abef9a7caba63f10f06e0d0ddb7608ce1a7441eb9b7dfab4e17929cfc1ac9719d45690a17f249641952546aa85c1c2ff85788db3dc6ea902d69cdcbab52ff03406b0e21cf9e43523a3c8320e06f4f60b5fdf2420fee3a5461dfe9b6ca24291f7e1c9c12cde340d9c0fb704cd6c6a3e6f114965c1f1451cc94d7e33cc936a38a89f6f05d84fafa67c07522c9f907fca6eede8aff73a65abeebf622d8efd4a7525c5744962ec390d9e147b73fc6d3f0ea4d981c0245666b225218c7b5953c3bd2b3e33690531e3f295d91dff31e0ea56fbe5ce45212f0caf5823622b26d6290c8607d661088085b124f9f6673c2674d9bdbc70d5562d7cddf7961260d56be4f9e7ce38a33cf2ad98c0895c743b72102f3ca7b66d290fe53fc705c18f276c9139cad330627d51138144fc07bbea4332c6fe53423488b1a380255df90a95b3226183d4e9dc59cd744da54174cfb77f01f717f888793a96247953cf38c926e4471c3f9d16828c0db60b1a090ed8a8c4036fb36c223ba6b3f3e47796dccb3c8babb4027b4180a3c4775a9ccba241d548fc1f733156d541e7bcd0931164a18bb7f1d6d8b8d191fb1a62cb953d4dcead53f63fd7a2a61e91a455f79fdd9fbd7e3478028bddd59845e77320191d0d80c7cdf4a4046e70aee445cf759d13f7defbe8c31d4fc0c12c5a863de96b4e1c6aa7246dc5182168641084def5759120a8e8bb320e68d9157e1e3179a6bc54b4a700eae28fa78efc110f5e98c4b09a0ee25296c7e397d06ab590da44fbeb4c41924c41c9c0f41f4ad65ab5b38eecfd6192386794dbedb3694736680dc49f88e3dba386fff9a809ee5da7e4652905495f6597d0c1ddb091efae5dc35c7b88bd698f3e5efadec30b0827379c0e6e4f3d106469d21412395b57de7dbbcd5fbab9f7fd8f87932b67c0707aece12d034aa113c723d23aee465d6e06d711eae03245bdf6215fe8da73bfa6a5d1a56630523efa0bd93f7acb3792ee929ed54234bbcb5294e2f0980613eca2ecf849932f9be63e05a1732416521682acc1e5b836fa11a31246e71f39ef2fc518073fee369ab601556f1138d4d28af5c745b30b6fad16c684019c50c2a7954c35eee9b7e6252a787dc23efe2dc05a9ab1af30e5c6dad39ffc4b33bcf3745f1621b71cfe245cd845f162a28ca19dc40603b254376e6f761efa382068e73f0ddcf2b2092284a17c6c29dbb393bcb196e8f5bbf5cd10eca8c127ba503f029540c0112ef25dfe1fb1d6113fc914c4f630c19319590497818d55b34ade473267f64678d48d1ce58658d5221fcf9026f2584c1fb0dcd303a47d474deb7665c40243e59fdc5eae6b6bb7f166dcfb202ba31663c6a5abe0f0b28d2d3bfc95730cf501f8cf527a4a8e98fca8cd1b989961aeabe29dc635237be8034a7cab777482dbb3d37de5e995ea5fa5d2e12f714c4b2e7e672c80ef75d154d05089363b86b8822363a5e9a45ce5e0d438022ace156f00b27ffcbeb969d8c85da104b826392190ee746af62056c4a64f0ba442a3498d971b4f7c04c34d7ff80a39e8ae3543d367b1269f6b8387f3f96d11e13d9ba24aa93a9cecf84723b44e6df75f5f76ddb8e067045afcceea0187ef52494aed58f400357f18bc202fffc3b9d17aa87bc17ea548d1a1931b726097ed77ba6a509a4d03172965d1f2cd439d1dd0f17257ccc85a6677dbbca6d10885fcc85b519c16d09b38f36845b8c9d5a4cd7b3520d4347313a4d23c17d4cb2295ad0b01e6c15be306eb1e8965faba9ac6c78f2af756ae22e129f475a4740566442b30e89c3772a77f5e591dbe155a21d03a6799b1a54e6ae95b962f71c370d6d94de9857d44b81f5ebb8d6101c9e9c159f74b9f165c7dddc0d985cfa810dd965897d36253f0561440eaeadcd689e15cb512fb5a88abf35102f2083b75f01f5ffffb4caf845a257ee7d1d8448005094d041e40077accaa4fc46d3a6ade4d6e7997ef0e0a3055460eb66111ca2fd3c68337e4c3f0ce9c26b3ec4e0f2e4efcd309cd6e3174ee6b16a02eda462076ebdc7336fc02ba24286092c1a402d4fcaadcf3ad4865e27e49f02f92ec4cd2f965ac4b89eed890502664427419e66d0d2323149156684ad77723c74ee858670008ecf1b2b62aab209e496b24062dab9ff13455ff6a5b83b33868557d5f409bef384de5a2a9ff3906a7b9d733141c7153fedaa3c7c1160dc422b06cd2e8a6a567c29d5346956120355a925b47b2cc9a263e9a3c4e3f5d1fa4af14d5e7b05fa5051811625f4260a55a14d3617716216754d3dc2bbcc5cb129ba384db269a4ff2ced9960c64d90722ab307d9b56530b00bda084b77dfa877fbebf9eece4ca552ee4568b404177b0433c27483d24dc6ee67e456fb0c04ec071b32e3b846131ce20cf083f20276e252cdc4c66db5b8939848670a5909f1a676b3e332fa6dc87d56e0c0589fb004628b0c53a12d57800468a59cb1b522be83796915ba5fbf3405a13d1ca14e8238b3d2f779d6d45dd112406b9e50848d2a28a25c52116f74ef34f4b1720fd50241dfb3f1d4c3462637242ad4ab68a3c34661c3178c49464329aa3478784284d224370ef61b506d77e02aa82508810b98ad1fd93c9c819851fd9cc887201182a24008f3faf716750c3856aa7ab31c326222335e6f323dfe3538f9619111396eee7a9b88e444108c690eab5dc819aaf85fcbd09b7f08fbb07efcf162fdfd2daa8740c55d3309c9bdc37efb77fdd2269824cd96c8a79c3e559b8dc43d6612bf3d9ef1a8d8fcc7b7c9f9972fd35536e9b3ee781a55669faad56bfa5619d28f8d969f55367734d053d1774681f19495246f4a399f6bc2b4ab8f44f11cdf5e988924142af7186b01402327450bc191b4f48cd96ea8b74d64ace94e11c9584e9a9f1ef61988907c0dda9cfff08cdbd286e2de7c650015bd5f8857a80999db7b60fd5de2c27280693cb2dac55e43ad3c09b0eebef45d1de77ae40cc7c23fb74b28dfd179480fa1dce92099c5ebf545db0d99245110645d5632c5615f4fabe2ff4a552a442b216b5b1daf6cd0d3b27064641ab4ee41605be0eea62b56e59118ea10cc58e2a9a03d71b5786acced67f5c1147a3ef9f241b32d04973b1ba7e2457eea188f91185021a0e68d1a20f9c6e04894130c4880883f34692f9840054c5592e0a024cfbbe97022ade0947106891c995a6aa5e0be0b99a37ba4a999b4454cb822a07adc526284baa0a8f71eca64a58c4d5b25d350f7892c0c24b4b6690e477a8992ac47ad64e941610ebb24b3269b180890dfa97fb40d944483affd997d4402d8703bd499faa73586f5a93666f9fd334e6c815405c04d10e54fa2c8ba2a22414afb518ad6ce6bacce4d9f982e98a28e9c6b63265286ce58d9739ef98526d78f8ee7d151479ba7fb843d4ad1642f1db8a6373b66ef70de844fdd92ebc3b2473bc58c7cbf46eba11e24901de6f91d30f6be1d4d685a61396d6866b532d2e11e73d1031763203edd8d6215e803667b67f46e1b3b360e92325dd91982b6287e29ddf6b31dacc17fb83340b4ef358e59aab4d454d83c62880ad17e231f74d9362e220ff85476a710ca87c5231deadc4a8cc0ace02baab47aafc215c405dc517615ecba4cf5202eb40f00fd6e23037067e725142cad079c7e5fd4005eca34db9462dc37d23ffafcb2ee8b2381f7ec4a2ae87a9906b5aba6d816d037e71f9df937b018720e2ecdd7f678d7030f7c1ec5d8153b1856236626a984f35446338d1b8010ee60cf7fe837876ce8ac83a67e2a87168087ab4fb5f58e6b0a3c28854ff98e5d0630494fa0d1d13bdb15908284565f72ab315c5743634add6f4373c22649bcdaf6afd17964520bfad9a9397debf78420ab109925bbb8f686fa07af3eea0670224bf979977b1dfe7c3313862bcf14d7ceeff391678ad9b216ac577b747a8baaf6c2600aa054b8f8d53e4ade6298675c5be23518a0646781458c2f8490295c45e332ed26026ac1fc1cb3e1da577482c590f0f2e55eb43c4263a77f889c9f4cbca13b690e3b38557041d8936ff68dcc9c770540e8718ad20312e8a357b639e7501cde6643891acc62adf79429c9febd9cac23386db19aa431c465555e1defd4b0ba20badc3cd45ec44d80fc7daadcf3dacada443c13a0da96620b34070cb07fc62d1f7ef7a5eb23c6a92d404dc16d9b10f3287121cce0623b773b906b502cbbe5bebaa91d326f69ef9998b5c4130c393bce8edcbfc3044580cb6219c5a3250067a07e2082d0abd89c6ce18aeac9f96dafba707b876f337f4239df069bf59b5b89977f22e7c63f14d3e12a09b03894a8d976a81974a6d821dbb07ae23d1cce3dffc71dc04859a99de6e9c99463f2b0f70b6d407ac8d68bd1169bbdd70aece0aa3c01f36659a16b934b2691ab02a58d0b304fc11d69c2f8c1fe9e3ea44aa39d3ab1a01c7f925e300d8b19692006363a81960b4c2820215c88544f72a15b4d974507b004595142562b5a3a0e7ef483f3169c97f1eac72a5b3a68149bb7459778733a48967c41f0543d9c80f400e4443cfac7fc4fdaa341e826d01aaeaf660b009130b97e67e52350451f685d90cf91d4148c6f972faa3f9ae64b2c931a67808215ed196f21e6b6f72ca5b2bc6009f3b3baba9f75858e947b07d88c31a1d4743c7c53aa7f0a7d9d87a0ec1b1c1679fb0931b00c3b340b921dea0d3609b243d0e536a3bf45b5b8b4e1cdde1548bf9a4919e33c7d33a6c20379be6c41ea196e64619fdddda28b8a7d7603b2823256b88fb295aa404ff2b64ce5b41f1065102f7fad2b8d094c1f01b81de4462aeb15f5afce232dd782a699f9580afb0ee43c71205361b1f8fb0be52a4829a6c513d080e5defca1d08ab65b0d9f01496ce9098f40303d1a4a21e950acec62c2b229f6868c67b477f2f3286e01475b48eba051c8c221ab9c1d711db10917648a690d38b65fa01272eedd2f2de77877237cd98d91b772f7ea0693225e32985f40a9bee6eac9f5cfebf0e1ca1999e3647c7e3896ece4bbc4f8c230c0446b499ffb49cdca7b9df6b57eb631d0afd431a3f74e405fd1f0372d0a1d7ca7ee5601ae2ff9b6126c2560bdd5c17306d725cc730847bc3ec33f8e15ac06939d0abb2b5a58e39075cba5db1291e295c60fbc405290220ed6164857cad7afc54f1277d4a4120ac04af0d267da32b5ac6a68a1217f3966394109dcc96bef7900bee1eacc942116a2cf5831dacba350210bbac462f7f8e8332c5979e774e745d6b7bf68838c77bec4f5cd77b71eb417bd04a2891e52d3153e97259f98707a83a5e004ec90eb2d465f6b56959882928748996e8c57008d118455ad5dab1cc58ff7c6847bf2ff828a80469653e727d6b99ada812e6b97294558d10cc86bc55d2c7dab9ec59c9728b9353922ef379510ef0e4c32779561fb9663ece55f0352bacf4f08d8f94330e58f7f5ce6a830ceba4dc8a5081816a1f6677e3db7b38dcebe3ce7ed81346e6a8689f926a082bdeaa5def2860b8b7fbe769b165aeae8ec3eda324a07df46c911f39934892a5bbcf8ed2fb07e602fdb6718cf090e1fdf6058e68376581b78b9f53b157bf36bfb7d2a07e90e9ae6a55cc8924857446fe2a78c645254f7f9c54045cacd1669b20ac80171821e293b3a0091a973083ffa57f5de6ff6fd795f783e0ae33b38d4e713c30e8b1079f7c755c70d45da74b12fb8f13bffdb601da4de9d4d8c25048f55d8a5dc5687eb15e4a5c43222ef51cc9b40e1b64f856bd22dc97c62a7f84613176e5f9fbde0eede0ff110bb0b7fea674596ac111e6460c908e2eaa8349c71324157c8e82368604e4f3a5c807c73950a56b2e442a9a30e473ae87adfa859558d073a40184383bd19fbc016d3522c9dacd6794ac30bc1a0b25fa0ab9bb20579226460c1764c27909fad1f38d8c009888e0b8ebdfa49a9a8975674691fa41bb2f45f4e3488a75f51ea20942d1628b4b71da28b3724083b94e8210dad193a064012c5a2ad17398791d875ad5da96dabb64acc9fa89358805a2da7a68ed36567d2e94862514e59ee2c7adbd4928e454fc695f7a714b5f59b8d2cc87fe727d8a13a4c4f70670b928169002d397aade46e74ea1fafe19b029e907b1ae9884a71646c0b18ae672f80e32459cb16680b37d34231a65affcce2a3030d00618e495e340f513b260f42507bbb2c75e6d72b1b66c0d1115c510ef4d93dfcf806810ac1780718a1a06ce6a90a6d30aacf547ee114831bc7a24669b960305d6f033ca13da93d97d49bff3c5bec541ffc2c4f77b397815505b711c8c782227a780f98867f8b1fe1e91c001aa1d34aba0b756eb40b7838eb2781a531c898c78d799bbb1362d844996b7fc77940606571b9fc3a2e9fe650931e546dcd54acff9b90c77ecf9a1e32fffc4970271d5cb5ccd66075b4dcaeb3fd79813654f4a73166f85aa9d84caba008a47638162c55c5553068b2cd348a739703d837f8878c6927f016175c93ea427ed52dc48084b7f86033adcc0765f44ee561a5312f783a281e723ff10bfb33159c1463ba2ac3ef71d053fb68cc35a82478840510ffe8efda158a2440663c2027ee1a3682ee8ac4c582e5bad16e77c61538bbf614030fdd3c7faa01f0e1863250fbbf276be6820f28e59d02a200ef65b6ed93f1a46a4c9341c0a6a3612d15076a4a0b6ef9dbd8466c3da7e5ba683e7fc74c6d970d24c0c8476cdc6b6b1bb84891e99d19066677d70d834adc28e22aeccfdb7b24ae44bc09b98cd437611b40f560038d6af63d533580731047ea5b821a0734f512916a56b9014e0449f3f7bd4e921ff045bd46700c2dee95ee2b3794f86a0c7e399f4427de49fb94e5dcb7302de6efff99ce63137ed72b2ad2e93a918198e84829fa91387b89fdf71c73f334700f158ef2d58233c272f6e5c6642e73f6af38fe9422aae220f36ce515226d9eb7bbd8f223b44419becb1dc321df68925a7fc96f44eba7b3acea056c8ab029e4f6d6308c59a5370b453e42a3f51648bd0f349803af43c2fa70ca6ae71b17fb067df807b182e1ba6b5c9392b8752c266660c3cfcb034a219fbc2f0e6100b149cdc4914ce1c3f7c822078b3a297ea5b71d0f5dac9b92c173e3ea1b01248c0c0f83ed967839d758397719629292bf7aba0189ba57a0908eb0e41b713e54214790f11973f15602829f2c88d1292d419ac86cf2e53a860792fafdeefd0c793beb4d6173fc84b3e2249c9c0d90cf13b3ed8c315bb30e1bb008ec2bd50ca05dba3e6678b6384d3d08fb5429703acbf4048fc73995001a2c611e28ef61ac257e40ec78d8ed0b0fe78108065a9d8157a288ac065c2ec50faadc9e3550e1f102b681d44d8bffd44a929257c727055787b6dd6e9439313c53345fe64134507873eed05ca1802d3827536edf574949d239ce83c036907e62beeed9a17f869a2bebdff105ea4965a6d585db13bade087b4b72c32a01cb6670094a0d4e1350a8e20eb31e44224a7af9d80af68c91d247c32d65fed6e8de88527f0226870f281ead9edbdc1ccd9c129d0629fe5ea9361ea6893528a847e91b047ce774f3b4a0658eaed0af6dfc0eef9abe818ef8a1cdfe1c4c898e01d02479e9cdbd7bf52b1bc6fcc31389c817076b00223637e1122688854e9324a66ad6bd7b74144827ace3366703152c44830b16052c845b0870b3109720830ece9d903d87d599cfb832299d6745e53608099f665e0ab762afb16dcb24d5d48b98f1f0fbf9270d5c7f74894ba3e7c386294d44de32bbca8925235ea50d5e4ca9184f0423dd083dd78b45cab7707c1d65b4f597b7ee6c1e42fc096a54cd9b71d994347b4e73b25c2b86c27a62cce5926ec274c7072bfd7403938d467ad84df94f8c6d99e5dd928853a63034c73615888e77886f52d80b81005c3fc4e8cad76f0477b92992599e52cc363712e872ce94f32184a0d89003232640bcbb521e9b4734422097ed694a5f3502270d2dbd5cc5b20994d54e3edd797eebb9bd2d594f0d188b3b930270d6dcf89d537cc2ff87ae761a704f57b73499d380dac22e082439774a3ef3b9c05eac72c719016a9b1a03f2e28661e3a2108cfa03941bf34f0c7e91832af19be440efa5694c6f6ff0dc65f00305e832345a9d2b59f01a768cd55e18841b89d1f9255fb8003697662f549505e1f3c6590614b8d025b79aae8737c9f4f318383f3fa5a85cac79d3541dd259c118b35b7bc77cd90788dda8d306231746ef15c5f5441cb93f0c6add39e60bf653586c92c96e7dceaff539bbab119551d5ddaf609adc00e2888bbbe3585cb96cb3af5ae4936cdfc88a51e30b089a1ffb8a406acfce06c87770b10d5cabac62611e8a3d581a5f3f3317dfc6334b6b70b62d62be54abf9264b3d3b62420bdf0debca1c6cc20c1ac2fcb88b4463f0c19d94b3015cd8f4187104d18815decd1b4b5b3398b484349bc609a5bb7806194f718c109e92570a9861dea9c70210303fca44ec8ea1c61ebf7fc9b5d8a8e5641fe2ebd5beb507402f4b177cd86f3dcf378d81961f2eb9f6dd5d4d1f1977c1aeaddc8eb27606d8e553f8cba886f0bf15125ba7fd6b451fac2cfb3f34081139d32b684e4f804f8e5fca1351f8979d79ac6450e2e82c91da4fd6f66bc89df804522d100145deed2319f2b42a96dfc2c781178e46f2b81904cfa01713460f160ade7b2465bd1e6989691ab785498087fb1ced7762d346de1d145eff78be225b5b8abbf99b3f79ea477b39c765b03245cfd36ed9a09ed119bb3eaef33915cf8bf35b0aa454dc94a7542380682ffc4d74fd1fbc18610021c5a29cde23f2371cdb1774dc2a19419033dd656b1c56bd41b3f49e7fa5b9b2f4280859c337d7a1937fcf224c18504a393eacc4a7e040796c5d118b928dd09749f62c5f4c281d166ba162428b9cba9710852a31f6c0c59864b8da2a12801d61f4dddfd3312b71b044f87e2259ff9d23dd2266004a7d41f71bda1581c97807875434cfb8d0b7eb0020015dc371e2223cc3f936a1674214a1c94da3541b1cc918d883ba95b1759a1efc6ede159933d1191cc5e608c9b49602c6d3d620d28b94d058438673d2aa40068763555f878529c6af0b14116d71f05ef65465666626c05261ecfae1dc890fd0fff1de93e9057d75113cdf35ba5f08db56be234fe3f5386608ae61a8eb1624c41eb0c2a57543485ca06ceea2d42e36cb270602f8c41818565b7acd2b57ebc96047bc462d4dfa7841db23a49989ada8d4484b230044eed81a25ff79a8568af5abae4d032ed21f5efb2585137b90efffbe68d2dde67b052386b0fd5417929a67ecf9a7ae360f00c217642fb3056c1c35900e36c174d55f20541c0018e35350206f63c5b82fe42b1ad645eabd286df259d919c1f3666ad434c8a6c75921579782cddc16ff47dfce77ccd95d78491374c24006e8ca8b1f4b8eba7fcec35d55713859699e352f5cfeb439b9fbe5c3739dfb3e0bc8cc373e01c3c004cf8e0e8466d192f6650463c2efd7e59e245ff7975a7b32e98ad0f2473a14a245bfc4351f740a40aead9f3cf659a02910d9cc8b9588a65f69603e28a13f887f147c6d6f900cdf1bfacb7da01fa2231aedba822cb3d606cbdd89dd27881cadbb65ae1ce421fd2b3198d6d6ece855efe6c84bdf6d378046da4f9f86f0271d9bf5d0af7ce08cdf1c53c84a5f371b808c800bce1c94a264367ce3670a0ddac62d04a04eba6c7f94d03598ffd02653fb9b9e8a8a6c967d86a57014674a1cb3868fd520f87f5283650adbb5bb50f4e95e9de00e1c653267285c2798a96595502b5bb4e5b19335e9123a3364351f62fbff9cae2acc2213d00a5205529fc47809732318912a9c4cb3fde1fd713470db366164ae9c48a9eb829b80b7725cca30852ab2e7640d6df8dd4d7c881a425f118039f1eeb05d27ac9febf1578be9ac9930acddbec683c4f3e6f95323ad8525862fe19a9b7eff8b1a641f325099a90d3d3db8e430c0b171545ee30b8eb0e72db029529f676b64dba4fd083bb1694ce73e1f13057cf4bdc9e1e6715af73d36447b7768a92f0df19a8f76ba1168de51e8d4e0030d71154c86daaa15dc319bc1ebc219a78256c13ad92facfa9c3ef260ad549ac4cfb1815da8fb9e869426831a261c65e688f549e20bb100a0d8eb4106b8ed3f5a892d6df0e41308d0835ce3d17e0c75ed0a802a13c8d7fa74aff98ff33b7dc6a06193238bec60accb6bdf7cfce1c9895d8089b9e0e7a3b5a3e1e7cf8804acad5a1757e9f22d33cb57d4fe7ab91fbc33aa7882e95a97179334f8d7ca0b3c9215683a1f61228fcc21c1999a65ef91935921f9f49754c4a2b9ee12fd03bd1af31bff7cc644984e3789b5ffe801b0aaffcfafd69ae49daecd20725f5ca9c89a50b40d97a47180855a366be1eb10cad76968cfb9fad5e9d92b7cb2a2076ba797e0b45763e82e1506245491abf0f30eb49e43c8a11f9cfd3b33415e108f5436d9319ab11ea26101ce6478c7d09de6dff400726cc7d94ecb1b81b06b180f7ff4fc4e3b48354f7b9485472204d681274e72e3953db925f895a371cfecbffc5353832552ac85100d350ed8f2a398fc18776a50dc57561538050cd03708681727c633d921c516afca8fad638724ab80e6bc20f67478bc94cad09f2e3effceb1d35991d729bc64b62af219849713cef0eed192e1c5a128ab6c2e346dd1c7e668b335d0d89ede628d33f94661ffdf33b7ba97d055ad3b2c11f92440b495610c1b374a00861d1b86f0bf4361077a098fbfe03875b5a429a42b067a2da7e612a3106c2d362ba16a6244aebd12a6abaa88cd53842f4cabe115dab66243b8c89ae2e5e9246eb0698fa75050d5739d941de80a0d0f54f083e3b7f27b5ddc94abba4bcbd1e8022ebf2cc1593e6643ec8156fc377cfc2235538e6a9e1e1a02f137fba738a4feb79dee9476284e074946c0f0e00f0e04fbe5466a8d43a3c45510226e2ca18b85127fceb55040f462e7e6b2ae0627887db8c7f61ffa309ec18dd7dc36f7b13daa6361868d659f453fcf37c6ad9b2bf24a43334f124c558dcd9c84e8a0ae722bbc6c2172b16ad07c30dff28313ec78086949b64d1cef7e49fad12ee6ea099991a8348ad59f5ef8f7717b25e6837a018ebaaf26a552188014979bd864623f3ac0402d5ef753cb1dd8f6f1d2be25c282afca5c69db61460e0d45ea799fabfb5cc335ae4a7c8677b0b1650d6b1d3609d753ddb3862a20dda237b28cb4034d13311684153202af8fc5f91ba1fb381c31568327d89618f1fa32485165226f1b728339251bee77f358b7dcb9f00500c723ac174c13cb66275f5d416b428f4a31080f133c2ccbe348e136014cec316bcca1c3c0ba5bee9804bce199e81f12636c82cf1398fe3c4aa52675d9e2dc8c72990151452c8c1773c1de4e4debbdfd22f342ae1921c74e90b685234f655230016525df928d3adb153e97f9b9fa6d68f0d7d40e0b14db3e110a9bb44abb2173ded0e3cdabe723b360d40caf52764cabb724cf31c8ef27fdfd51ed83af63d7ed13c46df82667274eb8610a41f53fbf82faf91fcdd95717b77bdd5f9b5a41e61c24028b076322fd6846a00dfe2cbefa2b91f53fc0394a7ff28a849e714c43c9caf23495475aab7be158c809a0f0c3d39068f8aa75633d1f84ee4a53f7f73fca6495274e90c48801e12ccab516393926c558406d0332c3c46c86402c07dbfd26dc9f75e9730a23745a618a1da741eed96829681f0133ebdec6556619c00dcabcd5c9340420944f6280889f8bbb0a47fcf44be2f75863d5ec765ec5b784e2fafb7673fa8d6b383820d51425d3aae8766f9b764d90f2934e06663c9b7348a417c08e274c51a6f960a703cb1cefa3e09949b0c525bec3d482e2a9e5f417f56b22ca3cdcef39fdd9abd560032e0973d13ccc27eb0f60a2678811ab6097e0ec15b37e242c5bf4008741154a8a9a55ea6d11b2722dae46be1cd72849f016198ecce0a6ac4420341736fa53f27c821376a5de020800a4a13c52b3835b971b48fb7c2694f8fd3699983b61ae883b4c23da1a58357986aa12aa5200820d4bae139ee6e780cde672d428f3c87f3f71c0b208626ce460b2a2e4069bb979352546e295fc40e09980332445f966b7ba40423fc41803639cb0a01b012a58a85c08fb15e5b2b1d10d789086d1e8ff8750e5602a6e8d876ca5a1491751bcd8d3acb3965920c3eef548e0b49b4a4ccc04d3667b01db71accf4b37f1cf9a22d81776b37796c5506055cf4d43e6c64880b6ba953e0de07baa17e6559a591663354734503ca16077e0c383e8b6a20bbaa4fa8c66548cd8ae0e16b29710581c1b33a49ecfc70cb0de51a1343780d4d3c4d29057508a44a25566b35d6351784119158ed1d181fe630bbb2b0590d375624e49b92f3d615a66b640f489b204142abef37d42e1d5e071a3152dbda05fcb1d713edacf56cd6c3c03696c765adb72464364f2a1716f16590bad5fc4699ce3328ef9f7b043fde49584ffb196360efef300204160a73002ad806f57c53d31767facbd68005bc1bb44c7bc39f884a26e9664b4e8073243b80b063da7804efb382deed681fd03855e0083bdb9ee9eb992c1dab5215204b0aa192af9304521f3bef458b8e01967f89c4cc809e5d0e5948a80b98f0bd0ec960bc34617cd19554306ecf824d8e91ae70dc415d32f6a5d74e25c78d5572c3ecb179332ac751e3ee84662dba203b4191e4c2cb0fc4f88b621dd5fe78a919546781e5b2766a9f89575c2a5aa9c8776a04b7189b56d76c4e81a3b3bc82c0ca7f7951b287f1a1ec0fc015d94fccdaae0d4ba7e812c44296356a7e48c9cc985ac4f4c33cca21eb4a457a01f9e3d0a65514df271f0eb51364aa079b68d5536086334b03abb961603a728e553703064c6c12802089f9da1138abe475a53588fa078c89121f1384943b5919e0fb1462eb2247c51d8789cfdad31093a21355d2dde5ea80de192b7990e504c99c2b73096d43ed47ca584ee2416f82e98cb5018810a39673d77f6a430adcce16cdfefb988fc2bd888abffda038e4926b3876b6ee5491c38008937abaead136b56323eca89b32c1ebeb1131ee323fb4f83f35c2124f3f60dd8539f71bc3243b0ce5acd571b74fe959a937e7ae4a134781fc72e054af4d306c246ee66f081d1dc89d328d5edcbe1371f422e87e1d378fba2d8267ef4fd3ee72a961e1fc52eb1f7eb08870502f8bf087dd6549fb49ab9353b663c6c3be824c9c6b90db522044245c0fef1178668ce39ea96e166634b0e718939276fb4d2dc866805be99f07f1a821499a3623418faa143f8ac2339c0c98ddbbf2c614bffd921f1b8d1cc41f3b69e6595049cb748b64974e056c9a6048dc9d78cc83703b3454f7ec12bee6036451780c1549b0a8f2fe333e27761393fc0d2fdf9526feb208eb12ff96a7883394ecd60c2d593ef414502da525bc895e32f700387d94db2f27cff56bb4b87fe08f1265b1aec6cc164d2b6fffbcc280376e233b445eab33dca240f4a93cb15413f6857d81d428e6aacfc0d69d0895ad32ba7b77feccdbb277b5a571ccce713d77c11c1d89f98d70ad6c39db38b7afdc64a895a25401c4b911f05bae9ee0f21abf66a02ce076ba11dc1b09fbefd2e0c1e18fbeb8e685108ed0d30b764e405922713c42cfb8e107ab1e6a127043df976b24cbc7d9db75790853e258b579162095e9a7061b05825636158fad41738aba447a8a794387a427a88a082ee9e927365dbe9c185636ab0fbf51087059cac811da0268cba2a97676b434efb35d93ebd7c893bfff8f6bf3808d0565de8d0a4947cf5fe3077db1e68afc3e2b42d0d5a9c2ebd73b1e65c7f79ea859280caeaa6dccacdbfab38dcf7c84ee31fe1844c36ce6e78fa759724725b1bc676333d6b806dd4699ae8a1d87bd8d08ad678d47b0d8eef68e73b73d27afbd821871b894ae9b56d71c9075bdad73451996a4a4a4825d72b003ab2fb40dd19ee8f8e37127501b1dcf94092ae1abb6bab74b881534ba015d13a32630b59e212c993ec113f3112fe1024f85f3086152a2e0e04d348abc83e3a1df78894282b1334e1949bbe96d022ce20777d2e8c0a066fe03f9e68be49f0babc5ea8dbed87715244f9f83507ab39d27291b1f1e991f016eb3c93ca30015f54081337f981e4f307cc6073b805f9504adec0bab71cf534153d0d567008ef6b83c3404128294fa2be6ad03dfdf878387334056ea5838a5d9bbe037f08ebe4d653fec6018bc49081c8d8c3ccfc375affe01b34f0d8a7fa2392821985c6fec06bf8b794ad63af299d3a8ca439e383872efa1eab309cbf9512015fc7f800bb3f6eedb2801413826f01a60dc135da03e034638f467472468384e347a2e3325d23a5e550a0fc65383dfe7fd2c902b33bfc8b003b8d69c78abc20a82bd08178d923f8a7c79a0ada1adf824c200c30c2124b219ab44b6ff8670969fc54a8917f0f78793fd675f2a7d06fa36c8671ddd74bc411762b0b3ad8e2e44a8af4b587d5ccd236666a90ba11c31ad33993c15ed32643620bcd262807600f9724b3009acf46457c71789d98b05b20cac555a7be586beca03d2dbb7d70a6fdef7511ec6abe885908e7944dcdade62987bf1b73c25c5113d0f19f9287bc5768296c3e8f34843c046207041470d26570981c2c855a549f49dc907b28b13e146835265bd32123797ab08215fde00efae3e4ff6565f38eb3401f1e5db1f5233003edd803c5f6823c79e9509569a9521530cd237af6120d229b8a50117821e3f904d9b810600bbf74a4d153ac77f9bf6d7412bb04ae7436189c1dee147800d81e3015d0249e2cbdcc291c678b94623ba142eea848b17f0980979835ee13f0e42487f6048e71400530f022fd1dfb3c5e52be3db0fb30baf48540700b694b1b02e3da2bbf184e3af512522cf7e24e94c860c585202314cbaf679fffd393eaaa1661df45655c7bd1370b0a1dd060bb7a03c13469427b1615a1f87beaa0633219d43288b2153f2c0afd57e88eba2b13b3f11355b3ccb70b0ac6daf45de48373d383256a8c7770b03557cdecb743f7e9e37fabb96f7285ac37ff48de3bc1d31f4a9a3f6bb448df669ee049fd61fd6bab0079c0b22bd27d9d4fbc5b7f15f54f2a283b1f754d9e5e02f4e26994fd9b6edda02f21dcd541f91b26aa1dbb685d2c84e7169260633895cfe04367cd13ad4b5d73e26d33a004b89d7a7f7dea8b6053fe40d552f984491558d6130270390e3cbdaa8081c6e1e4d93241f49ba76b323bb34e313b91706b00b7768937e8772e35ef8ba4d59770d543ee585f5a601f7ab265dbe4ddb2c38b1a24ed77180087719d2d617f6255e2d690e67d7d08b67e033ebc15b94fe2fc686c318d2e8e227b51bf29d5d0de1d8d7b7b5f3b5b7701b9ae225b7652e7e2b2a6417315f599e02c3c5a33fece4d32f80d2a50a2eda507c00c8a88f39d07bb3e58bd7290e320c4395f5da121f8c59cf2516329e2982b9383363afe543abf0b438e9e018b57a782cce6fc47074e27752623f98fc89945f7013ca079eed791971acd1c3d618f44037155e36112deb53e2ff59eacc8f5a564b56eaffdbe4c2d2887b5e1e2fbeab17a4b63741556226e07dff835da3983503dc8669f99db6a128546e938fde71f1213d071b584fa6a4122252ae3675e34f651d95eb6802cbc37490a211f48f55883b0abbadf6748da3773f484953a798c620813aafeac96334b9d675208d48d655762fcfea4cb41819b020ebdff178b6b0e98a2caef89baafd10cb6c5ff2a9e079b9a7815acfa9606ac6d2727e3a571fe7a3a92d8b8a6fa98ba6ec3b7b00767d359ffeb5a9ac63192a6ed6b99b6794dd62cdbf9f5273b6971f2ed0312972b82cf178e8bdd96bae29fcab750c2fc345b8ee0ae5052259d8fd64633d78a5da4efda1fa3a30e9e9d4e7f093eead8eea7cf8f37e0598e7a8d4850040a554be6fb054ec6877bd9a939562a080b72ba1d0507cd1034bc1bff8c5aa56aa0f027db472ed49d6fed534dac4d53718315951a09fb566c3ab28386cf528f3c4d32bd85b6b835b06ff37d6cfca479e35b56e3b7a423768bb7b32bbb38443d06e557b54bedc4b57622c9c8015288789a28f26d45aba331de40a9d4707b0bb2abe1c7289c6dee33fed1c604c1e20c43370ed648425bd093cf96937ee089508d30770acae578e28c36db90aadfda7386c61c12c5dcc2bd7172226fbeb804e747a44d758fadb48be60c1dece91d1239a5af66bb1c839ab4c0a58337fad13b8b975b213457b84dd6191056d346ffbc359ac03085ba614d289733238cc18bc01744d8435b567a31bc7444a0c605b9810e2127b700f4e90e8e6bb8f3a6356e53b328dd417e511edc0550926cd32378904722e58c6d029a60fc64e80e5b6a0acbd99eb6fde13a32384534dc0d9909ae8d3280d8a8917689971b2577fc4935951fcfac0ac6e5c869c148622598e9de8ff0609ea5cb59444bb12a65cb5f32dfa2d550bb6790dfd26e38aa813f51ebb381e7fe1a644409465246f2e07983cdaf38e6df5abb6811607006f63bfb3d5c6956c7a2d5d0cf548e0c4a682685f1dcdf627ad02b74ca1c66358dad580edd65b93163867575d7ad92d36615606f9577f7ad49fca3fdd0b87686c38ed7b212105ba34e4de76b4cdd6df257b8ce233685c7c9643c356d84a4debd7b2d324fac28d622abd58bfe1b119318f9e257471877adcfa85b5c761c950ff9d4e1ae830e6634fa406df070269ab262d4facdd69c195f0cabe5a1169cd6ec4443712fe96e505487f81d4f7f867b9730521a7f06eb187be179e9b67652a28a73bd17bc2bb138d836703f7ac61f0b723b72bd97a5d43428e94983481405c49e81987046bda3bc0ad5b3581ca7d200b55e1e688d896280e8130c3d368d3911e5271895762f58545547cee5e06ce5f924ef74d8c7f5d3277290719a3f629a884cdf41e225b49f95addd7a1ddab25e322de01ba9a1ca7bab28a9e822cdb5790bb2b7253a57ffaab30c1265707b8b10fca3be5a719d4c6ff82b2fd13210b6c3d317c2725cd5f1c0d009a8b72b8ce787db8597949cf76cbfd0333c0d04c9cc6f772315a83ffd899a1cdbb93c11f31e730fa298d7ee587d9a3e7943b9cfc30c0501fc1e1b12eac9154e3bb870f50d9c9f4673faef301263defe58009c0c04da9c319e736e50bb0b20a24c4c912f8464ec82c11c66f7f507031571e1903ddd17c16f38f47efbbb366aa5f57f22e6a4caf09af5de7777750e5197d8afb54046585a3161cf20ff9e4c2519502101f43054dc7c740ba89e20051b6f6ec58097a18f08ac8a5b8f0fcd5b5bc6af8bfb2c61ca57d1f4ba0ae08c173bbd3e22c18771069c6b8006555a7a07d386dda81af07fa24e2783d2816b0db6394f95d50f05d3bb692d3c366d4eda5a230208be608a68391c155acdcf6095fe861cc3122f00e7c5ab87b9e315550014ef0902c506c2029af64fe88e38e21d1d7deaf7aff9a4a670e7227bdf00c7c978a61db414a9b986f3b95d732c192f00c11f77a09181b48aa618531b36633bc5840b38d349120575aa9ee17e0a9caac4fe6c40124f8c638c3ff26ace21afedc21ff57781cfaf5fded4e9115e0cb790b86fa2583f0b25d236d37621495b13e06849f3a743db0da8b24e3efcaf7adcafe28ae70a94e49b476632eaff5624174ec2d7db06e2e2dd1b84aa3253f7477b2be6fc3bf83a1dcf59329dde17eeda005dd3b1383d4bc6eb415027b009d440e0eb2d708e348d61b51c2116ad6d241218ec6df00dd9700e5ed066883a3fed4d61cf5061c30720117ef578137b0d230a22a2b27db98de9fca38716ee28f196efb9d762061c41a983549d7765b7e5ee1dec713baac449b7bc210d93d468fbfc0c90c1cfdd7a107335c5bd4effe324bf5059dad954ab906932425d137fc33614aebef4820aa96cb7b50e4b8e591497d0176e32a2b55e35b492719289de397482bb469a30f832353e44ed5789ecf491e4c039285fc17c531f276c90e050ac980f7703c53b1e8a1cc2d09bb2a52ff9995a6b96346576e2fbeea994e24a9aaeeb02f046046a59ef67ee21bc29dd7189bd19cc4e62d13b64dc413dff38afc3863b72a5b9b363efda94e32f0a603704242f3f2628ea6a16e1dadc72cb46d8bc9c7e21aff5ef4ed4e1a49bf1e75563284439b7340014650a31c2fa38b462e9c837b88020a827e609b5a7f83f442f0b3ba3f2d6d617be82f2bb5a9563416a4cb1964002385411e37f0a15792c116bdae3323ab502b5c58bd478dfc3568c18377aa9eac631182ac09416c6b792f5714eced66fe41f52649fde837dc06427fd494c791c4a502b698f9884b416e8730381f0126122a5beb0826773f06e765729f83adbeea2c765b37e041d71ac4a90176547e57dc50d592707cb1319bb05208f4041dc55097caf71e491264d67b869060611a6700e0cfafb2c000399211dea2b9f9b2efb35903f5b6beffb877e314a2c82a07d213cf0e9103bc5b1bc37fc07cc91019f72b02cac0455980bd21e3797d0db4c68f3dc8e88de8c80a63ebe147e3a641ef07c573289136945719c1cc176562e40fbb8218a19d53781718aefad8d22b77457b2f689c71cc26be2bd769d93c3db1b094d989c24b3cd82d393d129bc610a0e0661c55af6dc9faaf5de7438b04a230caf42fe3bab11366f5dab04f8d95713c144cc372962286f0958d8f8d8a01c4e8846bf6ade2c9d4fa01f1cdf26282dbfed96532e719e9fc71cbb94043a62a6d2e6048aedde14fdb10e089af65fbb3e1355b84fec1af7d56762027d54e87bfccd2a7c48a3b70d0bcde91108414e0d8f178c17c077c43191744199a8108af553d24c8e72b8f4aa40b178668e5b5abdf5f6c6023360da70b0681c3ed39c74dcea6b1622d53f6030e638ddcbd7e42ce652981c90316cc1575603147adfe3db89c080b3c19c990088fc2d9a8bd5ddaa99984c10f7c9a5f9988fbce28b0df3f6e4c9fee51e5384dd7445e3b7b6039bc706faab7d998987e9c4807f0606de640c2c221fd1206e06579927573d9267abe5221fd90d8db5cabd0da0143af227d98038cc64b6d52eb5956e64b7dff93efb1f86d5b34a2ea19137029f27561be779929dfa538d1a67a0db957075c999b3878bd2cef58d2cc5901028cc509a718f500a2c0c6bd4c510eeeec3a6abbac1e11bb90f8be0afb52335661a4e5a9ab877836a3b6fef0baadb1fc7a2dc3a508be9f6a59392f59570ec98c42a630e0fc2bf5e8e0562ac250f9e7a189068d8791834790452b13e05adef2cf3770ea8bf56ab733c32c50777d70c4762521965f661ad798573adde5ffd95955322529c4fceecf3b9bc473f7b0dd14cebaa5fdf440fae850993a34f3fe1f33acfd30ad1be32a0bbf407bcef2e9d73e67aaaa8715b41a99ac6898d80f2a8023afa1324c7204115c5d7ba0dc3e2a672ee7e2305760ca86e376f9247ed9987bc112a8e8672ccd081de92d93fd854e8242c2e3737c3445daf7b8cb662e9e93c415242342fbb49d491c0ce68a288c10c81a15c6d137370745fc7b3b0d738cd9e113b7bff529b66c2442900e61fc630761c97acf3576b158bf0d79019ea28665549a8deac330f4971c0fbd1423ae37298354521103ca8ff35031a5b3d7b4ad4f97792d34bcec1db0de0f46f93f0d88f32693f85a11585a201ff494f81d552c90376927386b51bdf470591747c0b2730efa3f0335da6e60fe6a468721d2a4e4a31bb2d5d5cf58bba79b52b8b34b4d1694535d84adc74fb60e83dca7069fb3e0e0a7be0306bd2e562acd65c5070463b60c1fca071239aae0ae266c1b31c18caffbf9dd343df5f36572df0ca8f2f77fb046844aa9aa63a1dca2fad54583aa78ac5809a49565932ca5870b9f29a471264d6e299f579117526212a3e7f70a5f55ccfd040241e5179dc3ca0d33fc576eb6e3e850f37e01060aacbb88d63a2768d410aa2328dcf6275ee54efd88bdbfc64b15ac5726e1e1aa1406ca0c533229afea055cf0202e74acb8f734e6c930b1d6342c2e39e13f9e8881b17846568d5c743566a97f53e918aed7913797257e842a1590548a742cb6cff12b3149bba626e11f65c1ed6167fb7d8b3fe115f238b9d31f4e5965ff151c68680759551bb8bc4719fb5deb33da72cbe11d16461570d5fb686c91fbfbf22f617bbec0c374f3c22b060f1a022bfcbab7ecd6a2a2c52965d9eccf8b3da05c5e2194d1d8a13fe048b5a52ed34cfb707706f17d364d7d446f7e40a36eb31261847118e91aceffeaff04a5249effea33ee6c31986544344f1a169b63eec5714f1ccd2db9e481045cf203042d5b9650bccc79d583695f8b2a6b755b759f81544fcba29201884b899eee5840cc6840b92b3af4d853cdfbd3cdcb6276d8273f649764fc56a36cfc498a2541dae5b6963a6db30a4e393b597ef7b9c54c0e9ce6a4a58ac5cae9ef7561a62e041c85d754f45b30597673df4f0e3b01b6ac3d5311420ce4d0b9d73a38bc83752462425b5c5b15625ef522995808c99640762acfc2106cd4fdd0ebe7336aaf3ac5b617a3fb2a307f7f793707f60aade4f8f5d4195857d6ae5a705260fb20e735b5e72d151a04677c484cc34f9a1544e2d07a40ce8da8c3d55c34cfbfc9ba23d5a0af1011d1a57dbcebf7c9e474d76bba8475e1f284df240117c202f31e3f27d77fc481b92fdff5078244847ad57a01c634b4ab10b476aa64eaba5980e2305e6dc96e71ab210085b15e82d57a5161c4b840f31b99eca8d116fbd38f08c6986716e8a5c5157f2a320cdc312d5a7e34d0b5b2c11bd3aacb99e7aadda3de84d4c34c3f03da9243ae96ba7193de1516820b5a48db0941e95f212bccf7a1a780ed1fde399b9396f59b11a07f4755883958e5e31fad8c15451f884c3a38323795aefd50777a1a79f544f32b38eb3d000a02e344052dffdb70d71abe4f760c9b6da5926c9344fe33a68f23c8b6e34855187da906eae55c4db684c4cf6854d88673907ade71566ca9548ee39362cc2eb082fe17f89baa6fd4819d6cfd7d16037d7dc9bab5ba907a5e3079cd421a3c327a64ab0bf6a125de3ef635b1536cdcf9a800ac03c55de6d8b12703474d5a6c6789d03a051d76441a9444fce51265037fdbe80df7ab48ae9c324e0026f5011abbcceac2583173295d7c4c005f805252a65dd2a1a731071496c9c2a959bc5b35b6665795392e91087876294dfbd31812236a1c6e0f10bfc229d96e2766c75e61c5967550bd8f234ae2c43e94796ad87287a162b5b920404e59d72a0490d3892f3cec89b3bfbfd1036e6e70bcdd549aa6508ba1984864a4c9229d7bd939350245e1931dda645ffe8e1f843e278192397bb1a95f4933c13c0e746fb2a504009e33e8f3c63a0528231a6f8a43a75d18527b22bf218e5a3a1d07527ba7c9b48f2e7f0061edb59a7e4addbbc5a246541cf46e693235bd87eabb046e46b0a9d1fe6fd047e5f8f2f115b6ac0de3d60f270f7aadf901d19387ab1970b6dc55ee8cf7a95cf5f7413b88ef579da0ddccb0238278ff4081b748b3208dce1c2bd0e7842ebc5e1b5b3eca13ab0400c95a81fa374cf75a41d44319bdbb07e58e41108c818c3be5100a6e41cebec5d3ec1f12f893cf9705dc1a3f90a48775616868c4cab6e58c9624dc7bdf26e6f98d2833982e7ae68f986fa4b2bdae8b0e6bb39a5427d8ea9e687c2fb84ace138921bb14a90ed1e2be4dfa455387eeeb27e96ac4eb727416101934373fa9a007e15d352b0ee12a020391d0f73949b21a6540b902a4e3775f58127f0fc2d28d2c1f62c1571f6e4f5c3daedb48ecc00000f281659e136c3bf0c3a073654049d3155562e1ddff8078d3473acade7dc246867d5a6d75a0053b9215dca32b351700152e58d18410e32267bf86b5d5f99ee41d59267880d9ae15a2e6d10c800c760a9e223d08f11a0d611ee74ac0b7c58b7f9d294a77b827c284bbe7dc517173fcd901dea3516ca4f91029543d14c8428b20825bdc36ffd8dd89948fb699c3e697fc466d1605faa4e3a8338c9d709e80779b1e6cd1107c18c24aee44411cad6373f641ff48e883952e48bee2f66f186300367156e39f1562ea9afc9a28f208db1a8b6f8cdfa516c4d5173fb64aab3ecdee0cec6befec0d2d18b2971ef3f39b45d6db69e318f1366dcbcfcbf66ac4daa2ef7779fe786977bf62586ee6b99282428376babc16af5bf87e1282ca2637594e20baba6a5548ba09c796373400af822efa5dadab9abe0fdfd78a3930ac74cbb19c8781495412f92fe403fff4d7fdd67a40b387ac3a5ab133632e3f2373c8bad5f63b2abcce413406ace00a327f50bc02a01146258301b8686276c5cb90d0dec6c9e0f60483157ba50e4e7494015945ae247c92f479db28dd7148904fcc54deed3d458f2ebc8c1510581c170c65a402ddf84629ad6981eacff0512309a5a21e91366ee085fb12d337061a8367938ddb20fda2920f063256c6b4f02192f5b91913b86599d51b93f5808a1596c8ba7af20c18791af94f129cfa3b82860a81dabb99c7a0cae8bb2b2d6a0ff412c8f7b3a961034cb8e601d7bb4a8d0b5a1840111e525267d61df0cf303d633817421e47455718fa9698fcf115bd46e8afcfc0cda3a05d5382f9f33331bf3a284185cc9d95675f423756b1c8fcd5c3da81bb413c2a89e85ae433429f39e76a2fe6e9378713dcfa32c2a2a86e8e6a966a8047ef54f64467957407c17c0d85095383dfeec63cc375cc52d38f3c5ba9a22be74e37386ed0d8195effb8eb659a952083087020b6ff880c360b23080c8a1a21b209851c4e2601b57429c4b099b96197672bd8fc2d9c66015e687fc8973904362b70417843a6190a76a9eb372bebc5cfbd82d853a2d9f0b44e6fa9deb374b813a78f374b9487f39976273682355017c7833103728519e1c3ac96001ee27f1c72deedeb93aa6d43300537ae8e76e152723e999479ac32db9d1b6e1ff5b7673f5612a37be1b37f28530b220a5d2a1a879792acefa5fc289540bd0f9b4b2d7934d2415dc4e89312857c8be921f822f4d2ec04dcaaafbc4e0a7c88927c941a464e6d8159d62554e7aa5b98fe7683489f6831c4facaf36fee5d286ce3f592516629aa3157a796b2dce0a0ef7c4c921921d3716725d0bbb0ed22c89112c1f6878ad0813b218c1a4f1a4ce8a7b0414f161004cc48d21d6a4b5e8fcadc859defb1b45e12f03c6892ffc7833fb52322f60c7a658a40ca8412bd834741f04058e124fd1335f32a145cc4956c7b6f2f1cb4f614fb83e243ba037bed99b0d05e79e9087703944b2c831ca484fd2d2fdd4c584d9e758091693051be64a08789b826d7d7b9de92ac5d761cbf35ded19d426dd884111510d18c8d5c8be150f80ea133c16c56772c3a9e676c6ee2c8d5a4d5008ad9ac06f51192987518e097d9b11e1026d6a17b0db0793adad79f28c303426f1ec7ca3af0d84f142a0777273e19cea0fd0e54b6e0f3044ce682100d56d9910fd0919d323e574a6d850fe04edd74d7331916402b4185bb5e15a439e90b063f4653977413d764756a7881bfe5ab7b22da5e9443ba27533a14d76eae78a4bbf62c1662961a0a2fe5752db83ce3d009615186d67c4315cec9b86270b0951288eee9dd2e54b2781b00f23ab404310a8e7afe6f95fd186d1dd6884dc7f414e0b9a035016b891569a0670ea42908a3c8904e6f319dafaa60771e92913e3f0d0c0ca0c3a8c40142d8b373e1590d106ae3eae8df24b00c21fbf75182b509a88e6e120c6598cba7d4749b1a25f7f5a6fb20142290ef98a7bf7c8f1fa17dbddd9fbe68b466ef00e0639af0e5c1bc9d94b46d3cc5de9e9331614a7655dec3965a26318a3987d1451cdf74ad35351caba91dc22f815fd3039be56bdd7db786b0ede5ed424765d6c1a14862124d77eafe0815e270500bba4ed6ee20d3bb0bd54e63d0a295bc5dcb6fbec2e82f112c9285e8daf2349459022a1c8c51ac1b2a4f7575f9e4b0c9a68c413d54c3addb971ddf4b46d1e3a427bcb60c72bc593d5dcdc1bee4511a3e7ff59f083ff8bc14ed00cdca48a0ada585ea844903ae35906b6e43ea180670b1b87ef768944da2aac9143fdfabb40ac2da5b3eac778c35c0dbec3401adb15db945ed811a1dd5d8de18f7347af91bca61230925f542975516ce223000c6ead12b65943ebbe77c156d928c85fb1e1069e045bdfc12ee83c4b2b8647ad821b412afd93d9219864dbb180c7ce4e3b84913c70e4cf898af3ff8ae8227e991586645f13460de9ec6027ec669c04073496071722c7662bd01cc2154b7ed6f9ab80d5dc1cb13f0ed0afb88b3c2bac5229a21fcdb3c53996586a584ba6d946d2ba4508dfb207c505cf3862a87c0081a4bfd448659fe8b3556d097e186c9eff7e3091311e40c339059079dc6d3bd2753291ce3efb82ead9c71cb78602bca113bc1181596bee910fab2d0b59cde3e626493913387ef4a7367b97a298a5addd7b787ef2f8e181a308f8e1bbb9c117efd7bfadf57d3833e7f5dbc52dc7ab4232a39df350f92ba14e800b74f0f504a26f1cd26bfe8967887eae3ddced2c54fc874f7abcf96fdb3e1e0771da5d7f3f9ed514fc300d9110e9a3f130ffd45c68019040a2bcbee715512d6e05f439ff385fb4a09fca4b361194ee4bb304b778f936f03b13ca8084d4ce51c77f615ccd647510e3733f47926c4e027d979e27ab268e78319eb5c3fc5d3cb90b2f66899845d0b8390ffd16a4b378e3042949c6f4ae9e57370fa66b5361516909451a641ef477ef2b1e5fb9d118fb43a571e69697f609a60788f24665b9d631a5eca0d03c394816d53546ba7633e37ff2392e4cecaf98678ad102d79694ae3e20374b041fbc91f4a9fd73da164edd60858d051f7faa6298c451d9493ad84f82d77e09d7641a3f43adf5106e6f369da1d32914b0ad3b5ba6ba2e25f8441b5d1568f6e51709a39d1e90ef99d30522ad9822e28dc3b7b402c33ad8154df5c4bd90cacd62dc89ed8706e7c14e4c245355ac98f1eba87de4d39ca1ef15ccabdaf58b5fb8d5d0caf811cc871b4bc8ff7c0e6fbcaa7792bd9837842a4731f63ee522a33186fb695db06d8dd4817d84420e0d38a56205d27d83e816e63bf5294658d24694af2addd90d907440505a817ea532ea60500a8fb456b2eb249da09d5c009dc16763c330e657a0d22e3b9902d29eeabdd3aff7cfa584aa6f87f4f0bd35976814e9238eeb69f23d4583ab1949b3be4557387089800b47ba378ab901c49c37596d06c7726f82aed3965033bd5c3148fa7e2af2e7c484843989ac8c0e3284e72b37e8d3612a7b10c179aa90315c8e90e58b4f044b97c35016c68d272f37391ad9b64168005df46d814a5e4b229fe2b10930ac63ea8d09cb276ecace003d74052185147b2f57d4399527514764b327dd9be2668059c2cf17dd418dca78c188ed174634f655a2a28844f5dcb3fcdc9e27296ffbd89803052b0043861219a71f0c434285d1b39c08867a7ceca3e6c02f6c64ab8eb665108d70ab90ab9e855d087994cd66350a37bb34319b0faec493b43b065dce1f2e61b27bb76da91f97aa3168881afef086422203b3fa424d866b93ebe3c973e216254221c4e4b5dd16f19b04b59e6178b7fe43d2169ddbc3807c806bf20e1047cc8d7d1e2104768e68a76a9e63e3b138458110fd581615b601c189133cf8d99ccf4e4dbcb1b6e547de943311644cea273a47deef3141bfeddb50a92d628599f099155efffa884cac0140c48a5fc351c01e9d7d35bf042ad6aef5a049f168ac295315ea07b2ce1c62be8f81efaf743b813eccf29ed8ae0c27d7bc1c660b1554c5ea7e47d8ed6ba881bf4e871bd7c2cca333fe3cee182244d44283c0d77306335c59a07416b59e62a32234eaa1f5bdbccd5f4ec7457dbacae434f64595331bf7fd5724889a3051ea44cecb5030db820d0661525b10268ab35652b95c6662a2b7611f50333f5562dac2e015ca96edd9444d2247b1f1914154468e279d8adfb400db18e589fee406b394abc4a0664abfb9291482ba4f6d80963a1beac42edda617915cd0c56cc9e97c1f05edb4a0eddd75dde9a96df1121498e1cb81dae7ff80bbbed928f213c6c926b0beb790fb241a8f872358e8dee4d656dbcb12d9cf061254dbae01eb6fba1f08fee31b62d820d162b83caf64789303c09bc3bb76a2935def276855a6543286f4a486c282204718a329e1b7511a293cde62d22bc724111923885b1db9b0f17e5b30b0860b7ad5ab32dceaac23a18838b8d9a77dd19ae59f402e2c30f39cea5196d3a48f92b2f6e44a3f0f4ded293c239c2fe42a84a871a997f659bae33740433c0add4639f6aef5ec9eb98080747fd9efdd43c4e35581965fec435e301a3ead34abb537be67c96c8d5937fe8d6e4d6781864d8a820f0ec81b51a054d301c48df080c20341ba0eef9359ff5b52c74d9bf2f0ef6cfe29aa0f0b0b19a23942162443736ef1396df327b923c1400228e2babe58850c61cc3ede74dfe66d108fdd8099fc6e489253b03a8f1d1e8887abf6437d5fce05e76fed17c925356949965a6c539625f869b01d149260c25a7b27703ae2d6f58edd2915b10246e5868962def308f43090f56242ca7f2d7334954e53dadb72f35c88051a28015a00fcb0d0ef89fc523208383bc910952ab7252c6e0376bbba4ab3c51068b06cd0a5122588f3e6aae9b9c931db3edbb0f860a2002237b4b8ba163352c775907597ef5f6124df3ed423f10ff3b9e50996f6b008e80e8e9b483d464a8af2af9ffa4df52f95e374073d12b536deb7217a2e1f3155ff62961d615d2ba573a7c88e62eea4944d831367ef1356390d2caa205b6655eb3fbde00865466717e16e69049f92cca1ba4efc21279235f1596d7ae39410d777e5360abe35c7044a198cd7845a2f55a7946fce73f5f2d5fbf292e4e203eaa45cecb3aeeee083f62216ab50fd9edee822e0ab19fa5ba8930b94952e55ce14ef41a1281ebb966d404b8b5b26f1d2018cd1672ffc0fbe3d67fd5559f970bec2458c1ae57d57c5c638d8dd7784723530f37893d8e5f9c5c5faf23b4cbc59e47a272590e7f23297c99a50cf5c962b5aca4023e2e5450d01e872e78a1fe8ba138653e6bc045f27300b9d8963d643961e97d5c88b4751019214f2552684103c7428d1e6374e10f6e9449831f4496cd3fd4595580d7f5575374896bf3b1f46c18bf044f2fea8b5aa2defd1bb221feebe21b2c260015997ffc86965c43b487b7672c8d6fd28435c635cdb37069c8cb1a226558b38759fabcadb7997c18228031547d8aab363346a8fac35f48b3162333649c67c63fb5929746c4ec364315dafd7b76faf8a565bdc438e24356d3caa61c02976ce9943958926b9efe09d4af4cbd0dc6540dfc3ec3b8bc76b44545b34273725634b0d81a19f24f042e6b9590fe69390fa4bf33d2f504e9df7950a4ad086fefd928a58935e711ee8f442dc037316d4610804c3eead2fdf4057c84a9f9b70630ac0ac801c83ceb548c42187dda5c475b4e06d71e89bd3abf6e3fdc0b94f4e76a2150c58b6ac1022ffb8629a93332f988801527a984764e988bebc83bbbcdd7317ac129f1953656b24aa5211ce45de63d816706b077cc45a89e4768513e40c09de834ad68f09b3d9c19d88f01b5ad98ad2039434af7894f9500fca0c00da526433d3a24216ee981bdf4882b9eec68f756c6b6e5e273419ed10ce9dd46371865b49a7c6934ed17ef3378256546449fb8c18f3f62043fcaf57b9cf6e9dfda7ee2c77f11d6b6bbfc7220dce4140146439e841d9a2c4d9a1e0beccadf7393138e764315bca7b232e90390f42cd2b86bdd0a361acdab97544fc910348a847cd3f5807f36451ce259535615dffba3ca811e2aef29f2280789e74d09f40f4136fd087c51158ec7686615266098ccb112ca3021305763324f3eacea9db772c99f8e5c395b2dd2c09e6ed8eae7208481d4285db8c8db219606e461d071772f94c0094b9618c55b1f81dfd6149d6167700b94e4a68a55c9284237b800fb5fc9bed95e6fcec454e28ed49b3659cc846d4e49eed1bfe6136349e3c688c24a582855f895fbc1999c0731738f6fbcced85c075d1867b832004407287ffd58b3d96a15f5d7e04850bc883c2d1f1e4fc4b9c20a00fbfb7202601b59426a9be3fed70e9e1b1267c1de73b598f6d181c16e576aed5809e40a2386e5f2d4f26f1c7a45dd5218ffcad5c7d8f504dcf6050ce71db0747e0fdb1fa6fe745d1f6efaaf0f3ff46c6757e032d5949de60fd152c236845c12edbeefcefb516e64f8997136415a23239c6d386f096dc17e2d01a14a3b7f47202650de3fb1a6248f20dc83337ead989baa086dea3a5441bc336d0f83e5913f639a7a9e89f050fea5f2ba31443a619b605253a0b49f0d7c8c4bc1c3ee70b274194aaae2a7f7b567a2df78d746605513e661d96ea0ec69d823542eb5655c34a640398ac8a5814b2b6f3f6250adc112e991d87a5e85c82dd938ad815b1ac0dd82458732f6d9f9416a1f6acf4883078c9e304c85f2590c3ad223556f973b020079e395ca3f451a0c9c739c7ecdab86adf094ccb2d53fe9ee7ae877da497e9d799f54b1a10934dc69a7364bdf1e8aca467992f96bd929ed351acacb569f7a928201393d8f6e42a45653de44ac796fb5b4a519596bae2fb781f7a6f52f688e02cb057e84b4a0448526642812f12a5d44fbb28f4dd030b1f53230e9093a44c2d706ba35db39cb86b0c0fd8f67ab388435042c183ad358ad8f48b1be066d8d056e1cd0a46e604e40a517e039f9245960990fc60d64059f5161fa6a736c643daa957fd90cd836da1459ca3156e29858a9dad42a709bc22684ab769e7afdf50eee20b3f60ddde3bf6dd4a10a2600004eff5577e26e78b74f3114d1e4716ea92d7570c11c337c22c69dbda8c3e8f1e5f75f813eb0ef0773c7dfc796a964e78cd760bc77e0b63b2639baf4b82a42c496b9103c0f85ca1ad7a9eb762017a859b5714ba3516f36b7923d6c0cc7ee56cfa2c2a80eb4ac863e57b3411e8c6bb1a74b466523f489eafd6dcea784f6015b8b87cbee688729186d9b5012e5cfd13df37b6597d87530900089ebd5431b2e47f1184eebeeb785ce278a75ad8f0f915442f89091cd3badbfe79c00ad7e8b75fd8c447919557f1186b1b72da41574878d7e0955534d2ad1fddb9bebc30bbf30fe82d5ef6df44c510a9b1f384e6a945ebb70941e74372f9471f31d531a73c2952987ef007421c8d5a6ecfe669155da7654fa3801787bba95750bb14a941e68ae193e6e3c73b1aa03b86b3ceb63f6a70b4399f57493e381cddd4cf58fb31e40ac3d1dd127465f19f7687b61bf5e9a4986cd1a45e8b5746f3d0ab2dfb43df0b423f65ddca58cc6764edd3866e8c9a397388c200d953d73a6b536ec66e5bcb5b7f3e45c57f5a5c8d1aebe3061143dc76d4a5e6220042a7f556b2f5489cb5bf3b6029271835e374a385eedb71369cba593c2c46d3d92028c80627179b47d07b177db9aa97079448c372a2e5b58029beab90394ab144f5908b24bc04dea107819858501fc7e5dc309adaacd61f8247e34d4a5f8850c628baba552ee542a41196fcea9628183867b2ef01ace5e85548f984b1d9edf5a4c118755dfc85f95cba0111ab89872f32e533f45f68839fb42918c74b35d33fe157f0ce80869f004a15da13ea8a6ba0d2eaa3afed2a3986f2250d8a77ef6ade25f581ab520008a4077b46e91de53d721e3b4304b5ef2ff609c26197c2efe5f90100ca45e8c47136e751498c6508af5befe63ed34b90b3416f28d8a3422b080d57b3843a3fe960c84da03d1035b6b446a02b7f6e03649aae9bf8ca149666a45d4e548c7adbb57671d03f2f035139a38e461ae282bace4e51d608fe3549d6f885d073f43adb0633c4e3dc9162308ee1bd83e608fe0567e4e400eb2edf44e2ab6816e1c12481bd13c51346ab82b9f46230c1a0205ea5d00d8c284fa2d47e1fc9533649ac707b9a818989e40e84563ddc5205c1ce1a51b011facc39a43e6ea1cf94d46344af25f798253fc3955168592c0683571d7dc79e2b2ae520d578d3937ebdb0508ff3395ce4c3a5cc025052b6cc973f45dfcce050ae6a880d4d044f0c4f6a513a06187125337afe037c894137644eecaf7a3f2b720e1e2f0c101dcff266e75ea22fdd616898d585be6eb01180b6d2286cd3b459f4ab22079cfffe9a9d1417d07b14061e33d865dd83e452c88198c4f877a8a1e272aff30b87f864f6f59a8a369e0759e22457b2eec30bcefc12d5052719dc7a34a36ea7cac047c2f2d900f38a29b417e3e9d6f0ae1d3bc27150b469e4e1c8a046833920e4ee93fab9734813859c9b914263dff9631b68811d700f79442564bf053b9683a1ad20df3c7acb63e9f3761766acd0575f2b35f84c1b6caafe50f1b5d13e26ce652588cd40089e5a65583d855d4a0aef9f29ad70738942b63592e14abb91ec909d46db3605d0344700a1a3c1ead17a828d48f3b59421586b87d9f0898b308d8ecd694040081f622b532585ccbcd79771012ab15bd30c37587f54d5e77c55abfbbadad9dc4882cbe04c29579848ab24140159fe3585026956dd2761a407caf72bceed9abf40abef53627f31d4ee5d9bd528e22319d3271b5d90aa11b635bcba307351bb1f05ef6f9e28f3cff5da22e7853341dd0195d2e0a64154b5a2fe16a1fde265c82de23cd60275fa179cd88ed84a11301614d3d8f490aa828ac69063ad7bd68dcc27eba763e1e21274787ca56ebbafd97be3dd27c41d5377427b1c24ba3bb0d2db1f628bda53061af9bb96f23eb37784654dde503917f1cb38daa8b043cc21c9c8056672e53dab1278d68e986c00115a688b340455b584ab858015c8efab522049df3b8fb34aab69ad13c466d4de6c4634777f273e21ac281b5b010d260ecafacf57b7179a079731d6ea30dc82a38a99505f412dc1505a2d118ee2df75e19c92898d28f086bcd3c1a020691b3b2eff93ab2d4962a8eb97408b023a45a4b781a3527ad8d0ec3de5445d5f4620d98f6edd8e4daafa6d0e8da0db6147633d7668291c7ef03164e1c9c6c6ecba03f79fd4c1fe7ed45cc1129ba5d9236a86e52a4ab48e60df3298f9efb14643d80a0c4bdc9ec7e814ee78704b3a036c8a36775c3f85d66e58f668a9cf51faa2692fec11697cac14bedbfa4a3ed315a960ba746931d211d3551c350d7b6d88849b4038b8870ea21018d15a6b329b02490721594e73d3d44021f530b812a1f3f9436914066775a957248102ec4881687835e4ab951d88f6f9380b14ad7163234686fd6c4a533160989eb1bd45726fa57f99a883335a95fa17152eefc6c2ffa8f3ba99c8df52c77e7f6b81eea162572213083c373af7199ef33580398b88618d4015e5de43bad741a5c43bfdb4ded87b48df6dd61ef6bd8b3f2e0baa74fc8759af7c0e2e3053a31530efb64c898b908ed1fbfd258674bb73e96789e0a606a6522bd24e180b13d61287009e2c568c3c8bb45199a098563a900ed59f1582c853b447c70cf4d17c7f258a5f74329edee2c72ee4d2ca703849a5bdb8d7ab7f582ac7558ea840f3e6b196e73cf9f798d61326a84605b7263408efcbc4b12d8c3b29b12e3b372187c7178f54bfb52a19a35e368670457e7997f57f363e5c2e2eb6a703dc728596695587dc14ad5b56f2cd343cfd3997755dd39170bcd7fa66bb700f7502f44e6236bc64bc3ab9f7ce5f07193439a81fb3608fc9180b096b45315e760285a630968f5dafdfffd422b2c6e41428888773e3cf53ffc233e70dbfe067477740219faf7b5b129f28ea892a49c354ae0ce0b5958f8fe701e67107800d7e580846c82e020c51ca9ab73a1a6eafd1e1b2b66a85d1f721e05a057b6a8e8e5e39703bc293bcac85265e1a00fea044b9874bceaea5e623d7bb9699fd53d75915959fa923fbf57e359305c43dea7e9c49e53aeaf644ac2885916bc1ef34da7ce4e232d86fa9bf88b63a6fc29c280065c1fec47c043c0efd9316d9c81f1bfbab6d606336c63f72e5f48d8280867ee22c30aede190583da64b1cba6c6a8c42fce88dfd8d73c436489092b576e63d406b78a7b0f3197d2eba44f19970d9c6661ab7dad32a32284b621de6e91ccadb6e118e992da7bd65ec88cd8190f0034458ecbec32100ed149817266377a96a447abefbff77e3aff0183872fbdb336611a45d8accfd45bee1ee23d016bc0f95f5709374c850bebbf186573f42aad39cebf86ec79441ec24f25c6d3d1bc0ee23fbbc439c898d88f70d780997773ebbcfc8b08bd486edaa4b67049e3c063982e9501fb2b656482dc5b604d824e6b0cde5cc8a2ca1996ae6d7ddddeb0f49264677bd24cdaa681f09fc7d051c2b57521a5f7760ad6c8b81a1c4dc26b764329013c4886debc4a49b9a4b64f45559042f3a0a0e8babab13ea2062b7654ec3fffe4235707f4cefb2827f57babd42c7f295d604b2a981906434ec4e8af606beba28e4cb14ec9a1a496e307e5fa0eb374373ca5a3f67815a91280bf243c1c854c4e49a823e827985ec1c25b432fbd6609d2bea20434996a821aaed5848222dd7f256ec0ec1d7cb14d459a4f42b3cb6be0425621b2000d027e70d443b02d4f6bcb0a3d9626e6bd618d91311a50f2c3c255db90ccf691dc2a0f1e502cabb01b4956f6e6e391783a2033015c673827b58978210f38c7d2576c0caa44cc3be3a046487ad8028489a70b6ba7938c9624f64797cc4596eff0a5687e5ca5ed8b7a20a969feec4fa2d7277d0590b8599f960023b11364ff8c35c688c7794e1066ff875d4e8a7bb3dbf15ad6c769d9a034a79ed9a98fc90f82d8a9aefa8d9933a34967b6156ae42adbb0b1ceb12f21c38475fd941c7ef337b865bbea1b9fdd7b3daa49189b65a4abd4578f1942c1dbae5620a5ac0028ecd76f5063e37358ec89cde5ed145f23ca867d1dc3bc56b4250aaacafbe4cf57e0c947d97dbae2888dae620bb683a3c6c919f724e85ab58494b6ff595ed13c15c8041a15d035dba6adf28b0c6b43cc7f00aea3dfa80c0ba07ae5d88102c88d6086a6f02d70557d64a927481b3bf638970f680bd7c436e44d6b666d77d3b2b26a20892b6157007347410827cd7339d77ced614468c9b1c8faa5def5263d359664c94c5346a28dcdaac8f432ad9cc2b3c7e12db48b83ba7e770bad8ff2f2b7137ed06717dc160ce3653a2e7f21ba5389a26536cccddf90d5442e4a7cc4c8c61755a678e6564b9c1cd9b85e0bbaed24f8537e51f48947b8fcb54a4dec35e34085ac8fd34018d3727c95e2fcde3bf3080385b349124ad80dd7d089caf4bc815dedf39aa5bea91a5a38f31513062102999ed97c42ab70176f1888f69d800453f745b794e9b5aea0fed8141ed89288096b3a13fb876d4afe5385267ffe363fc3824d49b8810b160cf722c0ac94b97cb8a8a63cf219703ae0bc2ecdc2248da674d644b9b5d3b7b68f3016f63e2183d109b01def3ee42c3e5fa3ba3dd7f38ae442152cceca66b40c02ea9680fe64992c165ebdfdeaae7ce0604b1bcc576f028c0c0786e340fad7a312b5f78d54269a423160da4a72a544db7ba28c054d5f47d52491f58661f24295308917cf376e317ac33c5a62d6a0e98234e7d2ca148bfe35a393619f5433040d5b7e8460f44ad962ace505fbd08557fb5b48c053fe88bc9c2bd49f8364f34d50f933ffb5fd2503d78b1f404972ab262bd26011f202808033a603f2718f76d26ec3762a32cfbbb0851a27bc34a4944ff4f0308115cf323eff6456834c0e64217c37536273c7f4e0bd9c3fe0c28b6fba437fa776bc6b2a4841a226b4055dfc80b203a9551b0d6320913fad90a6c790206011b8cdf377eff5af3e7ce54482db0aa023f262002c7ece2d279b37ca6f1c7a242b212fcb68423a0c115caedae1222d0ba2b349e7807b32a5fc621cd146a0e8aec6d054469c2e4d1162323a8aacb244cd487f308deee222902d86d33829b6825463d40ed8db2550661725389a108efd93098b6c2c1c1e34433fe8a61d4e48fc31263f5a18e4b738efb682bb6a30351ca5bc66ed1d0f84909292bd5af341862eaceee01cd95f31299caf75c6997c272cbe7260a6d2354068a2c18a2ffc9cc6b87f9bbbfc0e6f860d36595c8fc19ed8bdec865b0493353cd240c6431b4703e7c69a7a805d5d4bbf786af842f14d682f0f09d876e48ffd10268cb084048279858a80077a8ee3d3739c5532914550dc66fae78afe3415291c2fc2bcee0bf9ba46f179a0c1ce933705bffbf717796646a61c58543feeed3833c777d5b36793db685bfef6706623ecd8d6f8ce9806feb6f824128c9fb2fdfe29664a9388a52972f95ffcb89b0175dc1c4f8a3f484ddb150ef4b9bc3c7523d54f8a6bfd1aecb6982aee1922bc074274af25b72d851d9125c6748232f817723808d673035d3131877693222189b4bcddbfdaa92c75550bdb6d02ed6b6d6c66d5bac0012ef0461204b7233a7b26282f117c3d8b2d4f761300bdf081c39004222c1ec40962985f9b6b0a46c16657d795e997738fac21ae2ebdf17dea23245dab34f87aa9428cec1493fc9c1f7d8a33773711022df7e6919ec748eec65b9bdd278b3e677b572928a618e63781dce5328a2315754f0d626fb1af8a031eeb7f96ac00d944633a796eeb86fb987a4e4a8debb41ff44e6aef6882148e8046c0fbfd4c73006dc132275cbd24ed1d5ea2f301d9fd9ebff7a8e2ba9da60062eaa0eadedcbdacc73c743bc2ce04bfc5fcd72998e32c02986ba956b37e7bbf5fa1d92675cf8839eb1816ca664d2a9e2ca96d0b455494bacf2dec31978fffc0f86fdcd5da438339f3bc41fee4f470495ed04d95f32764365766dc8d57819b222be373678640b8fc7065b894211b355f1f876e1057155e40b24b77f6739aa58ef0fccf38646bd8aa8d0d5ff331352949646039adcbe19161daaf4877d7afe0c6164d2c86b0bd32deba97c62a17e3afd0743bd18a64ac092e27a576aa5a049cb5e96e916426cbebe3fa35f4addd9ed520a244ed19b86683ba5b0faa8e8c9cadaeebc15398262f9c4c63ffe128d6a7f790a3f2edb53c6ed4a4273dafe4f3ac5cd022f6032e41fc9dd3d56d8702b72863f85a1483f3f9fa5172494c38fd0caf2d98efd338b7e8d65d1c4870d098684cc1f3b6b69884dc8faa32145a45aca6760c9e8b356f6936ce2b7588ad594066ee713f5bf70596b7bf2e1a4ba5d3409ac9fc9d0f20a014112301419a4e9a95941163d26135bf363a3e872f9db30565f758b2e07b3d2fc74f25243f1ee92827089e6d9ea4c8cd14731fd83a2db8885238d9e6ab4a82c315a4bd2279057a9c76095052a74dca99b60e091efc74000c8635c78d8bd9a881e2cc9360222595fc3874dc968a4fb2ada7c033ec28dacf70e4fe0ae38baadb1e870c275b498b581ae20ffd654d4b82d2670965c1cf437bb86c02cc719710fcee526145254206307a2f154282d816802175f34a07755fcd0541eaae94a1d89677446f62d7677c5abb4f4304213c4b0af9ead80c9c22ef91511e5d54135a91150317a67c1fbd52735ba596b1a05ef2797149afe5bed72a0868815183bf25872ec119b9416727e8e536c5279a2b9618d91fc7390642a48b48874ddbb00537c6dd930be45222cd6b47140127d53fa3c8b3138d356a9b5aa68f1444588ae7ebfb5e6edf76cf97ec992d128a5ae7d07d800f78907ecb5793ce4022f0dbc38ae5a2a5311032471e55f1593e3e797eb8bac6c7e0da810eb1db747a8853fa40c14daa9e4be0a34c6bdbda96e8f5f60fb2a47ee07794dace4911061ead637df4716839088f07c1443b626674a5456d9f996e7150f98e89696c36c8a23ea0c59bd21f508b3af393e1181b2d4c3cb6d25412ac989af7c2f4f8217c79bb8661810cf71c28dd392d09ffc13452b924fef40eb92dd4612c4a1993d53440fafac059550d3bdf3bd958c7ce663e6c210d9637d5f4ded4ad22ccf6b4d63cda7e3a0284d54a2a56fbdfaf6e7146fae2cb4e7cdbd28bd37f641e02286d482e7d676100acafbc765ede059204138473f2e92e74db92a0739112c98c003b90302086839164410ccdd9fb927eb7cc2e3b8e9d45eabde6241feb5df92f64fd630673fd05883f120e89c47d7e7c57a237ed46b788d12fda34e1c7060783c033858cb7b15f8ff5118a7920dfa27a4ab11de3c0aade05fdfc6b088ca5da0e4416ab63f2210623475024825474bdd8425b569816a1beea75e47422d0ebd66542b68c74823c805c3aa0b624b9dccfbe0e60c02f585925cd0125d2d51df3685ecd25e1b9a44f7dddf3b1e6ca04e51a6d5c9ccbdc42f785ac8698bff6b57fa9438adcaf5659e558697116f399b512916d66fac8689286a028b5fd513b7fb98f118f9d6827d995f1f3605adbfec53ba318fde8c8c423d62b91f580e5aa53bc0b539712b85c6b1879b87762caebf23b0ed25af8c144a2cf0101002b4befd83b3eba30bde7fa838d3407d4d88ee097ee5a9d7befff38eed12b261d22521ffffa9d89ce57a4c2fe0748c43400eada5e9c7cbb83c4042435e4eef8ae80fdb47b5a095a5b1ea1daf8419a7cb9969dab0c19b966ae0fdecd638082744f6c01452e12e6a323f9e6bce3437fdb1eba86c76a2297e4058dcc7ffd31814e49fb84b8f2d53bf5a889acebf7e385afbb79ad3ad11eb83c5a16c78b635657395c05012727ed937ac2935d8e31816a82be67b780c7363d82bbb34576fdebd90ff09b3c2043ea70d213358a61656a5169fd6e4dd4fbdb4ede7415963cec397812b4117a25c5ed133ca048b0e61f65250be7c08572fc28ce0221cf31e60eff1b500a74b23d3eb730d16fd9a29b9d28891a1bbe7b2177567aafa9f6323797938a840de3e7475f897365f930a1b086bb960aba48e37dccfa95436be31206ff3545a0e3545c2910093a5a8589156fc568851a84955d60e7f738b987990368d8ca1828b12ba94204786a72df1c4742f234bfbbd3aeaf92b57488e9fc9fb4df2efa5fdd691ab135c45da80f170151a81f358f0724de2fdb2cafd5994737e3624ea274fbe0730a948fb2983614c9812d0c5f81cf9e41079e160ac4e91fd92d1a3045ce71c5b62fea0debc8b8d059188772cac742dbb750f5d72658e009ab6199f1ae1482a16e58e07b1863572534c012e0f12ef6adc45e4d19227d26249046aee3ca5a305740118b70d79ee036532deb07e44164d6d1c8d8167f81ece58614d0432f4d9e086c37ac0bd9e03ab11e50b6d34cc96581425d6905304f40a7c298241fa5e155510950ccb9c9f542b615f3296284038ab42e2460946724889990420a6e1f159bc92a74f0da089b00ad78393fbaf7ddb56136719dbd1b3e2b66c46864a5487872740ae1765e1952151fd9ecb866bf5a5be517aa464c3d7c49e15488ccc1a80b655e25b2922e2eb163c7923da0b925d8fad069388ecfedad8932f275c2f198dc13a540d89f33be0b9d8fb7c18c37e990e45fcddd8aae1ec83b8ab72e4358adf39b57209ac09c304566a9c4be0e2fc2a6ce29493de71ddedf7d2eec6b42260590ed53a28e5ce345ebc571d384b4a192629b3d692ec468f66bcfd0eaca72fb42a1b6651a8fce74b3fc5da8ae4c1503d6cde796f7ef8ec30eacb9818afd04d150c69613f6786f325eb9304083ce531ac3f12a582007d9ac46874a0022ee21ef44224880bacf9dfb4b7fc5a005448137011cc832ab1080286c48599f4251f500c9117b42cd79bacdc0522a10f93645b51fb16255527e1b55e27a2a294a528cb2e57360b0ce7baf3d825bc189351b7cc23e57d5791c445fa6e7484c08162fb980e45bc7b316e50eb36be0bf1533d40357ad8fddf07b10e5b40c176ed1e0ca78d7204448c17a0396a5ab8f70710cd90e4b801d392cb333228a3e8f43223cd0a769a284d2d8aec1d6a5d3c08fd5d01c1ab1477da5bf693ab1da1ff1f2bfb99327ca17b69b5b4529ef98029438fed41daa42a90252c5a9d24fd3721dd0c5abcabe170fe107cda4bdacb97b428a440cb6f28defdee54359714383fcf77d6f9dbc90f9b311905d9d81525c6cd73477f8b9aaef48e2d066e23f162f66f476ffa1937df980188cc02216b5917913b3f15d3181d2961f7d2f55b5d13c3e5605500eecf1bdcb488ae2874a5126a96f89203efde50d07ee2cb493953bc067420e76520c81283736526205313e27ba0a40e984a03733d9b11295503671900d2c25d3142d5dfb616af7bf70e67a542e1f0a04bd458e655a4bcf124bca5960fcab4c57e2f9e2acb57739eaccae00d4c6fefb90b97408184e411a9a9794851e953d5dec240c2dd31a5ba6efa82d3bdbefdebf54e6c94d2e13fe1aa8faa874a11a8a2681ae98ff54311dd2a7ac98a2a183ab9843d49dda30f9a051cbefe37b55245bebb3f7a65a001b4e6f1d585b25d0838b74c50a04af792bff78251c1111d60c1d05191b77964500925c8065037518189e9f39fd3a1ad058abf0a199faac9df4683cf699ef5442fc6e0c31a1cb3d5140e29966197218a28e30e64c968941e920e3c42bda3367e4e236ecb76559e9db2891d68b0102283beeb8c93b17fec882d9f80b1e63aa5e7d9deefae2018bb9f6154449296d73c3886257488f8407a9414310c5ea6336fe1016fab690eed9e868104063e9c7dae8b950ceec79795808accaaef2c2a367cda190d0d651aa4b4e5d3d423d1b3b58c10454184d115f26a238f9a9e212fe7ece9eed9c6457809b335675d7b2325ea96ebccc80a3f4e65d01940c852b6da2399c9b5124d2b5591d5e4339b694fedef3f56eddf6f13739c6ae005577f68db93636ec4aa57354b576a7c3e79cfdcd97538136f6bd226a1dcbf8ffc2d3d5174e1264875cb06b07a03cc0f78c46e943c8e9de1ccc0d681455fd6c0964377f9f1edc0803cfcc0a6fd565a4200b59d530f117f54893f4f69660479ff5ff2e6f2aba377743a2c209c2c1ace1759859c7da1e6bc358cda6f6c6f5a056036b87a643baddc49f1ecbe9746f3267609d1b7e993f28d86e61c502323bf40d6cc2c010c12d29e7e560ad738bb5de4e602d116b10be3d725fa7baf06c6ec729fbc371fd8d5c9f382ca9eb9595e7a66f652c5b8a3c4cbd04fdbd1e601c4c1b193c99050f275f8b0dbe277c52e2cc664efaef57a49164c3d797e08966edfe4f5d4f29170f9b9e7c113b4c12f10aeee9dc23e9d5f9914c9d40e290e085eb51f5ac10e823a8b95e34e1775140abe31b33b1077420983b7833df7ba4f65c0d2d8b422769a6547a857c183863b4f3b0c8b832ec2f1860011ff9fdb93284410845829de955b54c6dff128c8f896fc0029df342672c90f56208368623618fc952d4b3f4c78d8333f0b8d5d77a5aa0f4db09df8d674550ae2dbc5c46e7f5333faad3c01af6ffd734558e6e875041ac0f1a4292abdb6925ba4f51d70f19da70eb15e38a7583a6a787483730ee656b28b762e81b0624e1acbd149d551deab5cbffccc59d22edd0043959f98b9c18d7a2e7e878ac490deba26785894828a10e718adb3c068dc53fa94d76a9a9fa8c52986aff40ec80cec8c56745ab938ede57b78780f0204781d500f8589bfe73b1b4c6c46a7fab5e2a73861e397ea592498611a9d29171e8344ef2ef17a67f330660353ae5abe9ef58cc05a1685a1bc088f8a9e99738edac6b017949b1b381e036063a36f326d4ec39ac46ed4d74d3bee38eb25d3f45a1aeffc1d3657b8d36c4099fc18381b7fb58e1b5aafb03a474b039c4aab713b45fd5b1ca8a20f848666bb98e5c96d82b607ab6166a4234135cafeb73214e956055a4cb1e051a0b4ba4efbeb160189b43fa6f6d7939fa412003206719ecedbd1b751b3ac5445ad66f81bcf2ee59b05784b96794265b6a2b1c5a8fb3908176d1c6ebf29be5d97cc7ef1dc32f50ce71f57d68d48625812624dd93bff3f94e73448b174b20efee4908c9360c64342d190511120b02bc6c8a1f42af638022a28c3bd3fcbd19e231e50550c9292c72567d7c65affbfe8d438596f544ea36c55c0ef40ea8f890d1b93c801d1ec84606fd140ad1267be059562bc540b3fd622ecaca6450fc3cada67b4a7e3bf4ffb23db7490ece38e8f9e4088e937431df6f9d88d6f02b7fb5024b0ea901657acfe026480e44a7b74f125b15705beca82633c5ad06e5c9b49d9e1a4fe9e5dc2e3b0d44c16b2d1bb7ac6dc6c11248e01ecccf999dec4420543311bd38561258f5d4ed8859995638729d4122efbcd4bb68cf9de7d0794279af8ad5f15c0d4ee531996696012b7248ada6013476d49e66a05ad952e06113e269953b16247688bf059df3da2d1960b30008fd1a8d97da6424d30b03a1cdc94b3565a1cb1d4e1ca14b9681586a4faf0692fbdf3826ed40f43731199c2fff5a89bb6453988a3f89f9487cc1fac8c58c35432b1c6fcd3f44631969fe0306d989fb9a86c608635439d8f4dbf53497fd27304ba4cf1226e810f4f028c9f45b6b64e747ebb9fd6a30ddf0977247bff7178c50ac9e84f7dd8dafc09ce4f9395d80099b6ad0e464c602b8bd220118561ed639361b811d704e12c932fe8ae056c17cde2537b76abc9556fce33baae00090834c155d27e6f97145f371a6692e1f302223e8fae1ee1bda12d87cc5b8499a4498fc2dc85c0bb7c089f52758025ef9e4ef8207a3e99dcb80f5b2aa60ac3a9a415e314c4a7358bc0c4a211565a1f1d6a5fc1440862db74aa8413b0d5f5a247ca80cd15a58d5bc7ef0f4e84636983b84313b7b688d24c161ce37a84b4f10427c05fef9d2254a77c01e99e71c463d98615c3c9771e5464e3f422f68d9876c345f0980427d03b7990958eb56f2f847f4bbfd997ec7a180af71980c0dc28d3d50dd5d9308582dac0539922803e66065714e96ae0fb9ce42a8b4216046b4e73868473cf4ecc77fb499779aca2aff8899f5c66c3f1d1c1ca7dff31f7e45ffc72ef12cf2ca19e07faf4922b6d887ee1702d88c8f32d55d00e581f42c5b8899287116acacd5049232b063adb827f41f4468ec2495e969370cbe6d4470cef767b5d5eec19fda564b59827ac1f38411f2d0d068a46068c926ad857ebe6d021ae38717f5ce86343fabd1ba3349eaa55c5ea416797dcd4fa7e260d0dc04cada31a454b159ba0ed60f8cea59c67754666806214b37f9376923f65338eb7e43374bb9d1f709c03741832cd150a59fbc174a972a257a76ccc08c14b6cfc82f3e162fda1a28015a62c201f467fb11faca274d9d70e15ff995e9619352333d116fd4b287994df2454c00c408e4c0313ba5126f6feae35617a85f3b7c511db4896bcf6e66fce626820ff05b8c54651c4ba84235c1b76350bf026eb3de0706872b539b4905435a5f876d5a21941b643b53a6f390e27724a4a0286c1180df256a89049a506c8297afb019440816e55ffaeae04d7390ca37cc050a758ea732e682ee271c3c2acc0ac262401f68622f704ab1115a58c9bf71f4614bfcf927f787b14e22bd306f47681ce5d7ad2751089e9081a4f02c5e86280f471b5573fa422091e34d6803d5738d692bc2827bcc49742ad05588267ca91897ddc8af6e2d96112a4a9c2aa021acf53823ab067bf515229b912c25b5d4be0a0883a19f12fc28df304288ac2a30a03bb6c2df878e83d6026dc01cb495e1d33134a44a1de4cfe75cb5683dcc355aff2d539dd468dad64f726d1b74d9dc765ea3dde6841d9997ef9d238575a9bca4f2bd3c6d8e0cd617f27b8a88d9eb9409d4ec6df00fe1755145bdb893fc6d9a4e932c3d389ca25fb3224c7dccab2c15df99d3d6b6e339d22a03170ee73ad6847604dfdea14353446d5c34ef740d8c30874090425266e8436cfe2508c60388edcfe425f5d62a633b00a8173c64e6fc082cad67379add0d4a2ae19c23906dc62b627472170f47aa4143201c3ca385fefe1bb26746cfeaa30b945eeb475ab41a49ea2dc51db45a2ddf67d8992e083441feeb8bfe9659a09949e48f2c143b9956df5ea1f4999fd0a35a740c6b9eb332fc0524cba6acaf656cd490a176bd6db890c1ac92b752341275cafb1cb8a7b36c00ee7f36cd378bb6cdaf32c331d12f80601854ea610ae5ace878ddfde6c9646a75e83735f16b64f621d26232bcfbd83c80d3e2623f1b392e31da30640044d1ceb08700ec48be0a4b8fed6b1bd05ba450573046664274a5886543d215e919badb2034e0d21ef282a3fef2836995fd7dbe3ca642f54b13f86fd556f2e056c25dfafb26b897a742ab2d37f209c526bf6b9a266292074a6bcb1dfc9a82355af0f1d98a8fa7b7c4aaa311c3c82828b56ddd46cd5bef001f945a6d8cc871a285d81ffd205db9bcb1feeb435bfcf2c50b0fb07d6ab2e5915295580e9e16712b77c03eb733701023ed08d1e7bfdbf01bec7f6174523b22a75f7b547ca6a19902213e2946d5bb10c10e9b5f990756beb19449470b9dbecbed8c391b878937b7ecb38835059d0adade2cfcc313b19f1b4253fea95cef5abae16716050511ae86c87f0027a41e320924ffe0038c7e70b06690f8dfaa17cb2d065802cf31e3ebf6d24bbad3e258d537c8abe4d58bdb9f09447ebd63fe72aa235c3db9571853527910ef106976b30593be6b7ee653ce6af3c7de32d57ff2bdf40097392e46a873a9ce854df546e24ba7c22f1627f8cdb0d70d776f4f10002574354900ab7368116968768dbbf2e1c981240be4a54d7f00c238cbfc857d3f936b15fc8a88bd1e49ab1cdd097482dd5ee0162e647c53623133ede67f13e7fb5661923b82d938821112c41f5077e3542c58298397cf427ebefdb701586124498b38de6365bbb6d74a571a24733706a0a444badfcb922ffa0ba0c189e6f6ed64cc3bfd9e9666b3f4a7db0f89acd6048a064227000407a13e8da3b02854ca07141006d3f6a265064646becd097c60f8a30200ede2084aa4053fef6af74b6090f2463560ea5fe460fc6257429611897f26303dd986be59d11601fc5f55dd7dca37f4a09df7a028e277b5f690606fd36d66dea2a79d912839ae632b7fbf016f5e81d25eb3cb30cb1454d94c93f4b252f4f3ba9d467f9e5f9592b1c970a04932577a2a0ce1c82c2de4ed9f47ed3af04000e03c659ca656f1eb775cf16d63697a5fa2662da21fc5e94fc0ac34cee68e3e05b5308dde3cef4fb2286eed7ab234f3c0e393ac104ba23870e0a83698c4f588bee493f0c28b116ab7cb6b8cec3b01bbbb66fe1298f758a9ad01854f29587747d48909e1a9228dc418aaceb23d72385577e8845ae23b9c37a52c4a015f1c9e8fcd9f92c9a581dae514a2736efca8b174227248be57dea13bc7ec9a46c3177d47643376d227bb92f98f5c0cc3a168c321b55b040df44db6c20df7115acdcd0714ae1e1bcd82a4eb3f642ee6399014f6a73d0d49e7d1df01e27f9409c3cba8c718a802098a5b0e6ff87026e1e6a73877b043ea8d7f9be3051cfd31971668b135bc6573085d31d070a84186c5c9ed3b8176c47af67015fed82a38de7f3c929efc657370f2f93a0455045f2fbf429f2a56cc12a5112b7b6401f99fe7137b0c918da96c714bf49b5b967a5333cd3c8e39398243c4c3ff9c93489e053b1a392ae0a8d25b25ac9e417e4cb762df0f9fb4fab9e292bf4e1ef6fb414bbfb5b98459df62c6d847101eff43da73b40a8075bcb72ce6a1e433c366e3a3c5ef652276b07894b4834c76b871739f6c50aa17987fdedab2f6751c8d3e83cbaaeb926eb3cd03e88696ca410e2d66d92bc8d9f5c7c5983d63ce1b03e57cca31f6d60fcfd6a4ebd5a2aa3b4d73f0f13df5b051cd07eacd0bd38d5bd55dcde0abd7b17dee57b605fcf480a4a3170394be97083e05dcfd0ed7812da1996db5572622865ca304b6f75e1234b7fdd5d02a20c5b9dcd7339f24c3c7c5aa8b5b8d90e6bd6c12ba525bbb16b245d347873c63be5148573b836980fb0882ed07efe911fcbf5893ed3fed74c25b67674af4245afdbb863be993969243a624b0f4d39d35e98f3f21b09f7fe0fe08cb7af5fec591b5ed8908407a7cd7f0ea15e62ea75149458a91c8468075ff9ed3915dd9af2351f1d66751b07f79dc5b89be3cdf65ab79f05b1a1da6271032b5e6a2dbb56d3ee593f86675eb18645715d7175fdea08f2be41323f370648e028c37534152fd32db91503682f16b04d38845b204f679ac25a3aff5c0d98b53380bbc1ce5b87a2d70ff36cc546c230ded49d3c761851bd8db6fa720d948c10b82abbe723f15b4cc586816a812a538ad0484a5d0e5136b695c069e6c91d90fb5a9df71ccd289ca6d43b75a83e8c8ac76d3263b4f558fbc1cd5e46295ffc18fa09ee558e95eb48269ef79b267f13289b8013525977145c0d022875eb35d176482043baa1b7837c5661c688a0fa24252042be3c28262e02bfe07c1472939c3a747a26492679c96ccb03eb7e0dc3e9fdb5d5432c21d5414564142b9cc56417ab25027b9e6fa1922d8ec9c06eb32af71af22a2a47d9bc4cbe722fae336a0ea61f95862d1053fdbf98ffef50b8d98d0b327329b6eef72825fa39f7afeb84db4b4b4f18bc6cbdefac99682976b94723cb2d4a5a8e0bd0ce2f3eb3f8970b9689a1736ebb75de8a4a372c35b3668d917f6674d53f00c102d7f29c3ade3a7c599cac876ae34052f70c07e0a3a8cffc7dda260befe6120768a34427a024590c384a4694ef10ee1789a083967275057aa79fff9c44fa56fa0551daa02bdba448dd54085d9bf91af3f317044b9767bce1502cf2997da9fb56f3f82f0224fd1937503dbac0deb9a1c0670a52bbfa8ee2394cd187d8f73e1fe17e94cbb19fc56b78ef3ced3f6aa9e62aca1a79ff0f37555406f5a299c57ef71b86a5df1774ea27bd7cb654eb977628a8b445818213ce91746ec8cc3a7f4146e021bf038a1d1bf0a8877e6b65d8ad2d3b19ae340628d8fc02c6ae7c33932f63563e6eb075e5b52829ed9331f8962e8a1d1de3695ca0346fcca53bb2eeb4ae8d65dfbe5928bc6af3a8eef26e379826f80e45e31b9a31046249e689dfa352354d82f2772008298a2661d7650c1d473d21c1ef72aae8af5b46c8e045f090e111f54b33ecc6f4901d67c63b8c29343140f541a5e7c65bc3de55aba05163c03935fdec112878ed283c1984ce5adaa0c68daea856e698a2d972deeb178adc84d11445fd1c782c0dbbe77221495f1e3537b68ffd3d7987f6f1991512dc47f6c264ad0c60564629b54be7c3fec76c720e4bf084aa778f4b103a8b304a83b8820f3386b48552c8019a24a2f986fc357647fb6633c3ffc2a3ead45724755933ae6b3efe53a007c0525cf08a801088355c1276628ee4cc7b425eb50253d6264e4c2fc5a4a67d90ed9893a5519cec551412504dc59ee278485fa4e35d159f2aa5afde0cfa528ee110dfa58b58617bb97c09a673af0696b2e11124cd66963bff3c057ce35d37cd54f262e8e92a539b74ddcf2cc500b82b152affd584eba76211996a3f0c8378e71c697d2b41c4c129b47039d03d393d377af742f2a84d6bde864489de3cf2bda88eca70397dc9065fbb79896cdafc0c31b94144a38d1315dad62e14ad1c9ac1158a5452f9b49a9ac4b499732f9082e1787e7703d6a5441badd1b61d15e05a195b7647dd9245e9595d9484bbf47416982215f1ac7dcbb6427399943000acd5f6b0fea86b22ca9138b84a3da4bc7d4f19c8b830587c9c6a385f053970740a5cc1be025c2a9e26b3d6cd883c53c54af66221fc7bb518e966e836cf91d7e9695b28c9af5c8d0db34ca06f19596cde9d8079cbbbea73ef818c1e7e53d2265524a573119f692cf1ac30d559ed8827cce5c9b8832f3cdbaa586a6970a97f5ef9461d8dc4d76f9480cac9d1b4f8911c5853ebf637d61832f9c0dab16b94f137b56cdbc103653f3e20e07def492c9c18d5576b9a0854be424493b1706c3cb5f0cd57a26da83d08852fc28484e87317abab9a44e1d61489c503b43c024faab51fd20d119c023c147257df4990eb50ceaceacf0cc6f492537cc4730ee25ed8ef290b4db8945c469ba0ca6e960e1ad5fdabbeb98f79bcd1336b6b1273090bb0e4afd78499f8094caf3744c79e53183b218ae6d51d78bdfd5f8a2ca5be228baa0ed3b48c61432e65eea4f4ec822054212a9a07143bc925fc0785a96704cdf1b9dd9b60498318a590445f1291ccb684d6d798b5d7a0439b1ce0946eb460dc99017bc91af916e4c13e9b248292921ad49397cbbc82515793c42006cd041d41f85b2010cdf3d8738ef7c82a633892c83d670a3cf68871029464c6211e31223bbcf1b4c8d6a40d126f3738304923c392f989645f2e82b190eebd27448dbb216add4b3dea8524629128578714d488efc244d3bd09141c57d4567c13fb9a3510ca982e18e0871160485ffafeaa4d3e5a2a2de73e50ac41ae0300caeaf329645112f7d1db19c1453bc86c851dd044e99a6f650ab20e2af57115674f1f3e8516ccc72e2bfce7a46f7c67af6d0c23a6d345a833faf5f7e495356c079d7699ed6c14ed50c03e58e52dfe2858f7bc76098e182d54516072b22559949043fc64c320b0c1d4faf0f079ea187b236ce34c6a569a7626a2a0754a21ae1597477f55de28781a53457bfc592b4a5553ce19e3e672e22c36f47c6f0e64e79a5a5add265e80b87db7154181eab4a2d614133c7bb9ff096ac53af1aa13aed7caa0633f405249e24a52c80b420f88354834ded7b7d5f948ba1ab0ea3fc5569f029359ecc2b5f056106e1477b7d6f4e6d8b41019f34656ad87d5eff29a78c555ed5191b40eaf7564a53f4adf295a7c53a74ffe119761db9dcb87453bf7664b592c28c64f0ef85cdc3d597d3fdc3f9d650131edf4a344464088d60e94a17242f02c57ff926cab1f97c2e2812ba5a5ac0ca14e1c82e4c04c520dc520400643f0e814c74c25f8353662e1cc558bd78cb6d57cc420a5d7208125e08e25b8d62a9057e24ac3d7b7974bcc5ec775fb47aa691a5a2c0ba0a82a01f628502fa35ae2c81c70b7df0430ab26524239dea78e73ecf1a547fc82ec3abac4ac4a222479aa256b71f9e5d4e98536ed9bf2fac316a8a560aafb617423a43dbd7f55691640eb4bbd8befa867efc2b5197b68554f5fbf85e70774e4d703668ead5b044c7672b3806bcf275a0d3131bbefccf530fb06f91e733583124a58bab6511ed7ecef5da55c62a5d2d6f75eba6be9e4957d21a51abec156085e51d6e6fcb6c80cb3382772d56d052eb37faccdb0fe27708845db67381259fbe959b054f22475a19d5543211973e30aeb679bfbed5cab4cc6313e1002e6bbb6716398da8679dc557660b96f1aaadf1ac57f9cb49fb65a394d21412c47a1149af97f31147599dca822369b02b9502b1b9ac8702bcc9b68f875368da8ec59cabe1198229593739021fbb31070cdfeeb3d64e7bdb490c9bb89313ceb51017e6915f1cbf51b3d64895e1e9b1f4444f2ff400374aa6aace80354fb15d2b6a3201c14b7264e89d17dc91a177c43c38bfe08a98b5f0d5a035405edb6f602ebd06700100a770369c5f33e100b694fa388e4a90b74c7ce0e10cbe2a31971fd71b38c07ed5943badfb9aa595f0c3a8cbd0d997edaa79cd03275b614dadd0d87eea3e494f961d2acf9be6e35615f6e5385a8149d9ec35f46566810bfd381ff5dd356913b7ce567c157416aa0899419bab339aa2a588b10ecb5cdbb60be697ce3cdcd8d8e91add9b038db7e347041374f99361ac7c84f3e5848fd9ccd654772e3f11519be626caed549ba1ebee35461f746c32d35f78f8c2af872be7c20a7b74bc2e62b52c67f839291725088111653c50186d5087156a8b9aef1f92fdc6c58bf89856fce453b794f4057f4d254eba09906660aa609af3f7976c25fcb0724a40baea33d6cdf533dba38bef63bda149994c2f545363911eb2ad3f2bd49a59ace99f82c93de92ff0bbc054214594da89d748f899370a6312cc207921143749d307dd8675bb3b6b9213fd4e48296ac45a845e714f025278716bbad2b21d8c3bfc34fcdc00224312d43e23ef37a2ec04aaef153679a36a20f3e8d02ba836aa9865acbd0bb04a4c8e15203023b0a1e90d0bacc879816a44b3af6aaae58116bf8f0b60ac971a28eb10f38aa4652d70f56f11ee292543766d8c39bf71098b7065394df46912f2216f78bbbf26a7a223826db1ea6e9f41eede8f47557ad03afa9a3e643ac5a6f99cfb3f3912f1e6c5738676951a82b6b77e78be1ea7d33ef5ebc530f1ee45f256a6d893b6d50ca4367e938b09021e8f4cc1aecbc6446fa02338fdf8a729fed3b899b48bc7a7a2233ec39ba0bf941e5f8e65c1888b38595703b98277e0fbcfbf451005e2f2c49a99cefee2d097c676870355ee26e0b53c56354915195f4fc4ec91ea46789d1887765771b7564229244b5399dbd60e0c2604c97632f85f3d8b7c8d9e51586206c36aa8c7b81753961dfdb3999a4e3ab73ee48617528bb4dae47dd80c748f0aa07fb79cedda944ac59dbe5f48521e0fe4628ee8d1034d367c8e10175612df04978aa9a0afa7ba8cd972d869c6a7ff2a135320835c4ed4911e3319ffccd082dfec5f3334a4bb218e155497c3d72e71f5cc753943a991f5d682683c764aa6732800b858470038f0cc0e3176106bc04a25784ce8166e145e4aa60de88572223d73adf13a8c7331210603406bd934c3f2291b63460d90ed262acd40f63f77685e03d574f3ddf86abf295537f49f8fba311811c4b59f3e033667849c2270481233d5cc92f6953bda535f217b993862d74a7a24d32c52d9db0756232f6d2af701d9e183d5cf66d45061a10e0dfe047bfc01a4d5046a585401cb459402bd85892dce519ffce05237401f85c070209653696ac2127858aabf27eed8fffb60697c14556c1bd1f7ccc03153d529a3011d419edcbf7fb007cd278c9c9bea000937ad8f853bc144f9b2a6e116deb7dea8c0f79f8e6a1ad70ff1157e01cbe75b7ccce134fe0dfca1cdc1d0a34c798e68433fb5d6cda770750592a5babbec7e86bbe310c994fc8ab8be99c7b5a0dfb24de975b5d93eb700aaadeab041249f6dc055a2547aa892d409687e3c55aeb51c92c21785ac8558d6ad6648393ff66090c2ce4f3712b00c675552e2416c975681736b7b328cee10bdd824466d1d7c0686ccd48aa036283006fe5157e4ea75a56b8edd7b76975217256205995bc1685be56d2a645a9bb04cb6e68c9301ea613f5a5defb23f9aad29c9690c099ec1e17ffdb10127ce251af4382112f2388d4db9022074022e16e959b20e9c77f50b5ab1467c6c4ae59a94a38cd0eeed5eee8c7f30a5429ddb82547d4f1f2f910c3de7934cc084a67c657d8a5ab122183299417b22176ba31a8a5c25395b6f6fb44c7cf9f64351a4ced7a56b82093e72e3cbdcc8672c81ae5cee39f6e36ecf97cbb2e8f11b4641f32d191e938e636211fb2d36270e2eafddc4568b4717c110b97321c68d7efd7e9bcc653de866352094b92712fae88b17ce51f1ad7d4e67d9e6b6432104cd7a6ba37848811e695613555efe8cce3baf494783715bb00c6b2b77121cf61204cd956d48aee579879c84bb10db7bdcb54bddd2ce709ed5796c7c6d9d1eabb089862cd8256717ed19aec8f9baa4d43df28c88da252b9931b2432c16e7af5cd0ac7c889ae34863338dae0801ee5e6b962d68b426428c8c616b447777a9a7f45258d4b834fde667391a93edddc1a80fdb9a1fb868bdc86bffb66999815f8de6d2d44f62da1e00b21ba2f0a396656f07d6e29f898267015ef6fa6bbda9d2da7e9362053c9b914126d10d6832c9b9e3ade8b5b13a0c2699029d59b6216976397ae16bad18238fdd8dffe3e8d90ec634f47c2a51952f3e3471d39243e935cb710e82267e6dad50e4d04df70ae5600078191e4840a918d1cbee4cf364597b5a35e70e6de02ce5cf7748ee8fa2c0e61f167bca91100882a0d3d894774f27ffc4f2edaf5d5db147d3db06f6c590af8e115b482d3f034b236aa8432aeaa41e85a391a16a077a8a7108d588af520da75698baad7333e95ff99293b1400040106d8bd8ec24805d4e245adcde58eab972b4fc5484ba53b1e802987f6913779e946014de519c61976786adea562d4533cbfea2c61fc8b59b285421ce9bf690c3de7f162daba74b810c9a115e1ac8373f4185b017acc4f608b7f741b44e18cfb51a80408b7d5e9a7649aee9b4f6db152365f3e65af5a4bdf19e5d5129105eb72ea849d07c3d7b656d27edaf1fd0c75f3d61da7baef6f113863265e5744de96b786b77db611281f162e74f46dd4d754ff99f83db295e76e34a2518d1302cb5e2eb466e10b22e33fd621c574ac926bc38532416cd686cfa98c0e2f793763fafa15db9df4776fb4f6ba0e364c42a599bc72b3af20de0658ffe8e3536f148469200cc0f522f2705971d280f37896fdb1bed7c1bf4a4458f4ca8149c5309bbd1f5f7244597c5c4f18efaebf9715e29079617991c2e78e9035cdb5d3f3e18d62d40f7175e8ab023c32318eda6399c5f0d9f25729aa48901396ac421b0e8cbff0e40b77c7629ce982a4d157a430081bc230c8fda8c6924446254f54be5802988161b12121d63079a1754b61c098bff5ba5425d11180c87a0818034e53fba2c9cd4faa5f0b91d723ade2446a0892172316b4a4c33eab6d9dcc4edfa48d4e1f0d4e19aa74fc051318d97040802092ee3be5294b8ab9f6a20eb5b91c5d41ece4d3c268a3743590d4f13721f15e13aeb9be198dc6f238fb2fd9ffb2ad67b795c63eb9ab765ef932d3e24645cdb7380dd8a4651a31080f466a13d1183213e3d273afe291ecf30459de7678d8362e301cb1cdb35acad55f83da84d584839724ceea73027556b428852bfb8deac3d3c8f990da192b3bd6f1b2b7ccee0c114226f8b7bec2e0f19feff97961f0e8ae2dfb42330b80730d133a2be0d2e607853b6b8c67eb00aa69102cb16cceea63d40ada68786d2343799c55c0e6379f9066e84709722741172782cf017f5d56cc1007f2261d36776e5542e723fdc78dd982897401bc0da76d3ffc57fb23c420346748865c773ff30133536a4adf69468540995b1cc8773560aab075ddcc71bd39473f0fafbd8228bd57cf3e466df43a5da6b5d8b46915ac6379e1f3ccd00652edc6ece16abed6cd27d4c576a12caa4d82b6c968c4b061e71648416795442a533dfdb6a540a9b2a512b5dceb45cd45a6a627a91cf901cb43f60b67d09ed814c22169eb9f1c8ebfced21e4700d1f9972165e04fb5455a1575c23fe434379631b0215765e0e62516a6fbcbca0154891dd5dfed3a3fb6ac1d268b3b36b905a8458b153fba0e4c55b1dce9f7ebef4b71db158326f3359dc6dafe133a3030cb63e82bcd2d27c41771468834142b2e9061c6809da6669c964f2ca3c2cc6b2bd0fd90c53bc0c271eafa6e4dc32cabee2c0bc64547fd721e8974dd0bf041f6f9b54b0285f2b688c46fa99ba5cc4bb4a027d84299518a9ae8c8ac83734bddd96018cba1cf93aee0a03ca697ff8bf7f4bc85b878d4a5f96ddbf87a1d1f9bf42aaedf0f3064834f28e960aa2e928fd2b125251ec9dd647a9db7c06d30785784fc41e97b3c0fe9911f32fdb139431d0fda38975ac4f5a74ddf4760bd4afd8a49a466b6798305601d23c396175015dea408fd1afb2a6650c01ddb064131dda382db77a6207dd4c4a481c1913c23955d47998ab3c8d8e89765a4fdb8deb73af97ffd4f36554f8a2bb27d4182255aab7f4ea2787c5ce38655552e818c0d52b1bb81228e468d67be95276d17044240e06b752596a72743f454811291fbff6b080a25d2c23b84555f566de5d903729f794ff504131d1af673c622f1eb318cfeb913ce33f47d79139ea19950c76f994d783f54fc579acc9ff0144cb6caf4a5bf5959db8b22482b9c7a85b418106b8fe9d794416d56287536b89e7830ed14c05aaf8895eb0bb746104c27164521f152b99169b6288b4a75108545530683e7ac2b0c0e9bc077b1728a7e4973138f860129c977d0ce83ac84c769ac390d7af833c296b1d3ed1bf40515434b2e010619d163f89c0c3525ac8072f0a3a039ee625301044295b1f174d11f8b47c673942aad75c3be8c7e7b61648261391c02c4340c708b84abf6022c1a655a005df721d9dd17bd13ec6a5b79c2bc70210372e5bb4811bbef21011b30c00f03c133a64a26e617a1abb5bc4e0bab685676f8e0c235d71830234a52995992789514ec68d338ab6c67f17dda42b0731b87377a26732559b6b3e6dfa4a5acca4ac3e8c654cfde3fa12cf580cbfa0873d886585b364a2aa0bdf11457b06d8e28470d1b5f2ab7b1554a9fd455d2f37f7c2662c5612a7034273aad6e5115e56dc6d3052ba5255b482db4129b3eff0c786570edc9f08b51ddf68498fe6b6a6c4931dd10fbd3ec7c67b8ed18b379eb8b62949f62af7b2ca5239e7927783fe202f291740df7de5c5b93c31e9fb3fbae1b13c63c708d4a75ab64559a7d4a6b83d9477cadd7471e11d70af7a2b701704ffbcc1e33f5b202f3d25078d92f7ca6f4cced73ca5e62db3696b4334a88065e474cdaaae077dd0f6ccfcd9708aea634bbd92dbd965e2206cb612664e91594e7ca91964b1be4b2a40ba5adc57db85fbc338e3321c91aef1f276f7a00d85f9b941e51317a823898a759bd06ef3b5ad633f38044e27f8d85f7815bfbf63ffc87ed72e9d06ae7a3e423e533f71225abfa3ecef156b570d728d97fcb48b62d85c6b3af42a85942d48d5ee5b4d73450b317651fc31dd48f003bbdf48daac34b53a986162d9fb6ce30d4a6b710fb84c5a3aee3ee66a346d1384f70d5cc7368cbce6c1d7e32bcdb8e4259405a1bea5e8f6cc130be3d9eb8690b30a1d683e76943b2b5fc92fdeb6ec6a432afbb3383e2be8337e4ed874ed339e4c6c7d6eaba9f8cb0ed2ea3731a32429697256993d671df2a3cbfa9d0959bc2358565df5513917aa213ca8a945639cfd75ca6b9f6ecee51fe01c9284fb2752cb9ede744544d4d45af8ebd1cf3baf17ffae187a58bc44658754ee0a9da7789908f2a6ae30a230653399aa1b2708151970f6e6983b2c57872407e4de2b9482026c54f58c07237ddf2ce6b483cdb569b734a744323c417b391fcbfb29e0334e1e5b9fd4472e6bf9ddaad23f754763f3a8f45efb542dd3683486e5a1e9ea1095ec4e6a41322e4489c5928afc353705e6fa466dc5a368cd7754b4672bc89566839dc917c610ab26f81ed327eb64e47b3cd9c6c95a0b69d9d96b758e5f61f1fe4a7db6df817f55d7791110f5543d0e919451be5937aeb3474ce36e328f9bb9911ab945aff495fa0384d34daf3d27de4a82c6b52702156580551892fa3f3247743cb0c505af7892cc5d41835999178a318b26743f878cb0afcb50190a6c273e0f2847ca6585c2d0f40f980f1151a2ff86f0035670c08d939a184737a79f253c772253baf0c895b9a562422b5fb7725df1473422689555e6796c903eff89ac040614be5c82b3af436c753f6f861c59d2830da9fc70c207433e2d3b3e7c2ac33c310381de27b4e86e7599dba0a4df80fcff15445743dee6aa8cf92b6af512c7bb8b56fc88ba47b94a56254a2171e1486712c5b6eab580902b1199e975010b1a3ae723a86fd8651858e4b77bcad97fc1a3e14b526acae2fb796cbc53401552fd14d95a3c8f0c3e7f11f6a09c8127f009dacb09ae4027d6aaa47ae4dd8984ae1a22da04d72a7f2b581fc20706f9c363e1f8e6c324c5f5899e5523d570b7ce2b2c665a50514e0e2e8e249814ca6686bfcc77d1ed6bc3527d69a379ba16ee5c01d3bf100f48a64cb3693fe13be2ceb45270d22b920d7a14502821ae62acc4a99018d631e7f9bddb7fbfe7a7a61c5d89a55cd7f7f2bbb48db2a9c342b62af4045a36e9ddfb147fa0501fb85a41c107685280d2fa22bea5f3d0f4acf12ac62697520fbe0c21bae7a2339638f7af4ce672a58ea7307a4393da8feb601f0efe72392bdbbb128c7ebbd7a6f16432f1069de5418862ee47db2ae5de3389b62b644cfce55469d3b158cadbe7a914fc58c56dba03ea0a534ec7b589df800df31e41197f6d5d2e33798f40bc2ae957ac1d7dadff73a194fb9a94d3855551010ca022355defe82a1bf8d1d5f93e2d8abacbeb92a8ef0f2e83dd8166fa57860d1fb9fcab7807339010540ec9b69391c9dc6798e8cd1c67b43dce08b07b4740776d2df52d24f81be658ba1941a6ebf808dccddb2676c5b0b69bb4f45a989844efb6b13aaeec94771fa913cc1a2de6e058da829ba09333743a5217d5f920b64a8bfd46f0ac5dce4632258e6d874c75b7ce7da0e7c88d7fff9cd06b6bb07d4e886549c3fb0ebb21340d019fef02172916ca83f47db8760210e45f0536a98f5ed587093850f984e82963b4548rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpostgresql13-13.20-150600.14.5.2.src.rpmpostgresql-docs-implementationpostgresql13-docs     postgresql-docs-noarchrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)133.0.4-14.6.0-14.0-15.2-14.14.3gv@g;gg<}g4g*fV@f;i@f2.e@eqe@eKx@e@@e%@d,@c@clc,N@c pc@b@b|bV@b[@aza@aQ@a.a$@`ٹ``q`OL@`Gc@`/@`#_S__@_F@_mmax@suse.commax@suse.commax@suse.commax@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.comfvogt@suse.commax@suse.commax@suse.comaaronpuchert@alice-dsl.netmax@suse.comschwab@suse.demax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commrueckert@suse.demax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.comgmbr3@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.com- Upgrade to 13.20: * Improve behavior of libpq's quoting functions: The changes made for CVE-2025-1094 had one serious oversight: PQescapeLiteral() and PQescapeIdentifier() failed to honor their string length parameter, instead always reading to the input string's trailing null. This resulted in including unwanted text in the output, if the caller intended to truncate the string via the length parameter. With very bad luck it could cause a crash due to reading off the end of memory. In addition, modify all these quoting functions so that when invalid encoding is detected, an invalid sequence is substituted for just the first byte of the presumed character, not all of it. This reduces the risk of problems if a calling application performs additional processing on the quoted string. * Fix small memory leak in pg_createsubscriber. * https://www.postgresql.org/docs/release/13.20/- Upgrade to 13.19: * bsc#1237093, CVE-2025-1094: Harden PQescapeString and allied functions against invalidly-encoded input strings. * obsoletes postgresql-tzdata2025a.patch * https://www.postgresql.org/docs/release/13.19/ * https://www.postgresql.org/about/news/-3015/ - Disable LLVM JIT on loongarch64- Fix build, add postgresql-tzdata2025a.patch- Upgrade to 13.18: * Restore functionality of ALTER {ROLE|DATABASE} SET role. * Fix cases where a logical replication slot's restart_lsn could go backwards. * 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. * https://www.postgresql.org/about/news/p-2965/ * https://www.postgresql.org/docs/release/13.18/- Upgrade to 13.17: * 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/13.17/- Sync spec file from postgresql17.- Upgrade to 13.16 (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/13.16/- Upgrade to 13.15 (bsc#1224051): * Fix incompatibility with LLVM 18. * https://www.postgresql.org/docs/release/13.15/ - 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 13.14: * 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/13.14/- Update to 13.13: * 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/13/release-13-13.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.- Update to 13.12: * 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. * https://www.postgresql.org/docs/13/release-13-12.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 13.11: * 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/13/release-13-11.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 13.10: * CVE-2022-41862, bsc#1208102: memory leak in libpq * https://www.postgresql.org/about/news/2592/ * https://www.postgresql.org/docs/13/release-13-10.html - Bump latest_supported_llvm_ver to 15.- bsc#1205300: Update to 13.9: * https://www.postgresql.org/about/news/2543/ * https://www.postgresql.org/docs/13/release-13-9.html - Sync spec file with postgresql15.- Create mechanism to specify the latest supported LLVM version. Automatically pin to that version if the distribution has a newer unsupported default version.- Sync spec file with postgresql15.- Disable LLVM JIT on riscv64- Update to 13.8: * bsc#1202368, CVE-2022-2625: Extension scripts replace objects not belonging to the extension. * https://www.postgresql.org/docs/release/13.8/- Upgrade to 13.7: * bsc#1199475, CVE-2022-1552: Confine additional operations within "security restricted operation" sandboxes. * https://www.postgresql.org/docs/13/release-13-7.html- bsc#1198166: Pin to llvm13 until the next patchlevel update.- bsc#1195680: Upgrade to 13.6: * https://www.postgresql.org/docs/13/release-13-6.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 13.5: * 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/13/release-13-5.html- Stop building the mini and lib packages as they are now coming from postgresql14. - Let genlists skip non-existing binaries to avoid lots of version conditionals in the file lists. - Remove postgresql-testsuite-int8.sql.patch, because its purpose is unclear. This affects only the test subpackage.- bsc#1185952: fix build with llvm12 on s390x. 0001-jit-Workaround-potential-datalayout-mismatch-on-s390.patch - bsc#1179945: Re-enable icu for PostgreSQL 10.- Upgrade to version 13.4: https://www.postgresql.org/docs/13/release-13-4.html * CVE-2021-3677 (boo#1189748) The planner could create an incorrect plan in cases where two ProjectionPaths were stacked on top of each other. The only known way to trigger that situation involves parallel sort operations, but there may be other instances. The result would be crashes or incorrect query results. Disclosure of server memory contents is also possible.- bsc#1187751: Make the dependency of postgresqlXX-server-devel on llvm and clang optional (postgresql-llvm-optional.patch).- 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.htmlh04-ch1a 1740137807  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~13.20-150600.14.5.213.20-150600.14.5.2postgresql13htmlacronyms.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-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.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.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-partitioned-table.htmlcatalog-pg-policy.htmlcatalog-pg-proc.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.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-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.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-privileges.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-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-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.htmllog-shipping-alternative.htmllogfile-maintenance.htmllogical-replication-architecture.htmllogical-replication-config.htmllogical-replication-conflicts.htmllogical-replication-monitoring.htmllogical-replication-publication.htmllogical-replication-quick-setup.htmllogical-replication-restrictions.htmllogical-replication-security.htmllogical-replication-subscription.htmllogical-replication.htmllogicaldecoding-catalogs.htmllogicaldecoding-example.htmllogicaldecoding-explanation.htmllogicaldecoding-output-plugin.htmllogicaldecoding-sql.htmllogicaldecoding-synchronous.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.htmlnls-programmer.htmlnls-translator.htmlnls.htmlnon-durability.htmlnotation.htmloid2name.htmloverview.htmlpageinspect.htmlpagelayout.svgparallel-plans.htmlparallel-query.htmlparallel-safety.htmlparser-stage.htmlpasswordcheck.htmlperformance-tips.htmlperm-functions.htmlpgarchivecleanup.htmlpgbench.htmlpgbuffercache.htmlpgcrypto.htmlpgfreespacemap.htmlpgprewarm.htmlpgrowlocks.htmlpgstandby.htmlpgstatstatements.htmlpgstattuple.htmlpgtestfsync.htmlpgtesttiming.htmlpgtrgm.htmlpgupgrade.htmlpgvisibility.htmlpgwaldump.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.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-13-1.htmlrelease-13-10.htmlrelease-13-11.htmlrelease-13-12.htmlrelease-13-13.htmlrelease-13-14.htmlrelease-13-15.htmlrelease-13-16.htmlrelease-13-17.htmlrelease-13-18.htmlrelease-13-19.htmlrelease-13-2.htmlrelease-13-20.htmlrelease-13-3.htmlrelease-13-4.htmlrelease-13-5.htmlrelease-13-6.htmlrelease-13-7.htmlrelease-13-8.htmlrelease-13-9.htmlrelease-13.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-exec.htmlspi-spi-execp.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-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-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-config.htmlview-pg-cursors.htmlview-pg-file-settings.htmlview-pg-group.htmlview-pg-hba-file-rules.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.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.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.3pg13.gzSPI_commit_and_chain.3pg13.gzSPI_connect.3pg13.gzSPI_connect_ext.3pg13.gzSPI_copytuple.3pg13.gzSPI_cursor_close.3pg13.gzSPI_cursor_fetch.3pg13.gzSPI_cursor_find.3pg13.gzSPI_cursor_move.3pg13.gzSPI_cursor_open.3pg13.gzSPI_cursor_open_with_args.3pg13.gzSPI_cursor_open_with_paramlist.3pg13.gzSPI_exec.3pg13.gzSPI_execp.3pg13.gzSPI_execute.3pg13.gzSPI_execute_plan.3pg13.gzSPI_execute_plan_with_paramlist.3pg13.gzSPI_execute_with_args.3pg13.gzSPI_finish.3pg13.gzSPI_fname.3pg13.gzSPI_fnumber.3pg13.gzSPI_freeplan.3pg13.gzSPI_freetuple.3pg13.gzSPI_freetuptable.3pg13.gzSPI_getargcount.3pg13.gzSPI_getargtypeid.3pg13.gzSPI_getbinval.3pg13.gzSPI_getnspname.3pg13.gzSPI_getrelname.3pg13.gzSPI_gettype.3pg13.gzSPI_gettypeid.3pg13.gzSPI_getvalue.3pg13.gzSPI_is_cursor_plan.3pg13.gzSPI_keepplan.3pg13.gzSPI_modifytuple.3pg13.gzSPI_palloc.3pg13.gzSPI_pfree.3pg13.gzSPI_prepare.3pg13.gzSPI_prepare_cursor.3pg13.gzSPI_prepare_params.3pg13.gzSPI_register_relation.3pg13.gzSPI_register_trigger_data.3pg13.gzSPI_repalloc.3pg13.gzSPI_result_code_string.3pg13.gzSPI_returntuple.3pg13.gzSPI_rollback.3pg13.gzSPI_rollback_and_chain.3pg13.gzSPI_saveplan.3pg13.gzSPI_scroll_cursor_fetch.3pg13.gzSPI_scroll_cursor_move.3pg13.gzSPI_start_transaction.3pg13.gzSPI_unregister_relation.3pg13.gzdblink.3pg13.gzdblink_build_sql_delete.3pg13.gzdblink_build_sql_insert.3pg13.gzdblink_build_sql_update.3pg13.gzdblink_cancel_query.3pg13.gzdblink_close.3pg13.gzdblink_connect.3pg13.gzdblink_connect_u.3pg13.gzdblink_disconnect.3pg13.gzdblink_error_message.3pg13.gzdblink_exec.3pg13.gzdblink_fetch.3pg13.gzdblink_get_connections.3pg13.gzdblink_get_notify.3pg13.gzdblink_get_pkey.3pg13.gzdblink_get_result.3pg13.gzdblink_is_busy.3pg13.gzdblink_open.3pg13.gzdblink_send_query.3pg13.gz/usr/share/doc/packages//usr/share/doc/packages/postgresql13//usr/share/doc/packages/postgresql13/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:37490/SUSE_SLE-15-SP6_Update/0992116d6d68a1f5edfc2738b4abac58-postgresql13.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)vbrt\Igutf-808c46bce6114bed60e4577aa387cbe023026bd61f70b5582e5e1d6e5756f6685?P7zXZ !t/'b]"k%0#J:fVA 3sO)$oJ.0( IG94[uJd[}Rb.5?*`i0WйygK['a%b&PD+b_t33*Ը+aV~I>gR|KKaţg! U#Kq*]]!?gx‹c@1Wm#dEGv>Vf.stUo N T䰯W}v;P B>z?`+ k+-҄#'.ﰫ~G #0r -91+l÷?` W#dB47F[Goș8š=R?g I"bS=6jQ.wIh{$TXy{U蔩Fg[>3Aw{&D8*oHp{Q<*l2G=w ''ĭϔ;SM S+ּt.[tiT2t~T8 V10Я[1nVƒG P=v4:2iC#waQ:eH榠&yMH_<>EyOIr@sϹ1k] F~_IBUk)sWȥ! ؟UA7ˋoR \:́<H-֥fmC([@OJXQ5-5E|&M 7)^.)r"sV!\,G5%{L J}p#:Ű01ʹZ+z[f'f0)BFƑ0s 2!cnTCW=u`X:CI=!+Lr[ٍoǛFah9x3*]3ʨ Ͱvօi^㓫aX;n7h`N&>v|'] H` L08tcA+Ŷ2+?3 ztf?01b,x{< 2]xu@B}d?F8:\L#䭧Ǭp"ֻZ B6,LJy p[1w[9gO}`5; 5fe`IG#3MUAMk`nс*F0m~T#1s n~9l27bоBɅL_]Rzf28ALJvfeA0V_}k99J 33s2t2Daw%"4 a^h~[cpSgxv敁f2P9Q5S?7ْNf+}JErI]g4t\vFˎLp cFcmeHՅV?bN/R Ƙ? f=%1f,A?˗L͠)$LԳe<'z /|Ƭ7\2/]I=JGk-B$BeF}abAd3w\-q#x'jSmT7!5'KI3U@s <Н&ݎJ,Ԯ77 W\#A_1J`|{ٜ 4Lf9ܙށc807 HEO/?IbۡMY&~`4ފ*?i*N0sCO W 6^DK|zh)|ҾAu艙vsJR#Kz d1+!+YisdcdZH07Ϯұ0ӸSTyZTV1j(BNT7$k(`ZrUr yۀF &3֞z&e0Ss'kou{fP5fI;g3:T ,"`xeCx~ޱ3JnECsmLoGy}tzF#3Wfuq5 1vj̣M^땄Ml\~v/Mx_T:/x"Ht g 6ᲺHغ:Zz00<IN UiJlGJ.%#j؃*H/6_n ~0dq,%p*%9(ͺgy$)P@ŪlFhY#MNo*w,pI|7h DKՎc3g>a_ qa_I#1F\, a=)J$ v`Kz&bUW )sC>ӲI·+*A@r[ٛ:F쨠ί`P4Џ'3;uFT-yf6)% X2C/AYOXX.F?c-uqQ*טk?ĞRqh Hk"9|Hlbەr~ ?-q-J60d-3-^ᖞ{X&WޠaH JE)ɯ+h|U: s~ 7NY3' % }…:/n UI\"Y;gm\gr~ C.ZϑHFgAB&2SCk_{RG5>:%EērԺObD 'i+ 7=V(H[~`jb7WjAC[ M˰&q{7M"1'jpIn>1$W-KH2g90pўkaLSk<],և%U,<O}YZ>a[h:c ;_p3 -N X,@UŦ+JA T{hFCdJ3l?0kġw15hen b. Z>ٍ)c6_OޣWg x1N,I(Mq_+ =49% Л:Ҋ^ yclwǒ1A"15'u*0!ZDcPIQviy Cw/ GKT(s bbvdo(TF(3Cb̷Fa ǠtUYM ƄK S8F L_WďW$GB F%zas3-ıZ F)kg|y0l8H`5&4|JabrB}O?O%jpt&7p3esLpxEx 5g[Iٽnd,Ǽ03DKO;DE (J 'FOg”T_Կ;">Q΃zkE2ds1΁YlXެQ: gkܬWgw)4zbKtJarU >`}޲> F^j6Nf Qrk 97Z$]Y+2 MEH s{ ~HU/𘔂/sz|{\!k|/(Y*%b߁iQm7鼷9!5Ƅ[b!3wouWdss,ee>< EeY!db(Hc w8J*%"-R3`yBYGCr~O+svP gL+{.-tS{dC]9k`Kzl OK RO2~z 3={FWUe6Z12I!ؠ=&i"$ 7I]}!c 4Rp8zMilOaQ) sTۤ}o^SLy)K)s-PAl@_ԻhaA Y_W*k@/`yg5 iV @4w[_ rD#|/JPMbrgAx I0|ϳ mX<A/:޼f$Fv, @yl>C^fmPZฯ,% dX9bfwTF4kiD!%^4Ix3j㣼WZS gS*T>:AKEjn R72>6 F鑟PzHSC+,Xz"(@_?/.ֺjuP{gV]1Y?we bDEnny:-Bq>u̜vL9eVg;)yF~@=J8>YVnqf&.lk/m'(g']b?@ZZZrN/X Å&*}E =}vn P \Q} &R-ZThvCe΢*܄$!p08g^Fna/]'-R͹0tvL<0:@AkZmw )\hLOB2 Z&-UJ]ŢKIⱌ-"s)p1<rsԥgBFr5~x&JNK{V?(5qk`|dh~|$&a5WLTwL2 'I>Z %uP."vrksX0anËw[&9U/4!V|1O YZ