snapd-devel-2.39.2-1.el7>t  DH`p]j/5,dQ`k|Y_Vrk xhz:W+K<D%CzØiB.?楱%j>4tfV_̩Ɩ%[QRՠ.tI4Ci1c"yQH.DBQy/DܶN09NJ.RBu'lO f240u.mˬ^R4\LJ웨Hj$u샢IXLQdEED§ <U,Vh@ 1ğs>"iҮYTSP-ia-osNSȗSOAXjn0\ ZWa sT1Rl"Dg.+" |(wGXſP2 AB>Ŀzs6'jwoQwETFXS ѯ;@=|¢ 8}ɽnS&rN@u{E4e1cf9ef6a10d92028b2408e71347fbe25e6a17b!.]j/5,d d)/OO"x=i+dGy G-bca {K6LdqM;&8&E@d2ȗB diZR*cF82B&Pp0CNmZI7G]O-udXZ**g'2;ag"6%% n4i=<9z KOCkwN v&#ZrBX!oie d8NwN>hT?=."0] V6t*LBb0Sw" M y iFhDZFʚ.ʷ! ˷'*$o՗)Ɇ&Vֵb ?,DamRg2Py<:)!=?T$oO`ELQQp47SV>4+Uxo5BH}ɳ29?P Xв&|'YGX5fc2Ӑ-se.c)h>99?)d  7  +MS\d (h 5l Ot 6 Ҹ J--Gaa$a(a8a9c:vGfH$I,XY\]Œ^ #bU>dUeUfUlUtUupvwxCsnapd-devel2.39.21.el7Development files for snapdThis package contains library source intended for building other packages which use import path with github.com/snapcore/snapd prefix.]vbuildvm-05.phx2.fedoraproject.orgB{Fedora ProjectFedora ProjectGPLv3Fedora ProjectUnspecifiedhttps://github.com/snapcore/snapdlinuxnoarchp |7f : Tn xp}9vi&UX19l^ > nfejW ^*%(/c !|h+.&J Sjm(+!P!^;3S%}$4kKa&>  9   - )q"L?B 4 =*nD1*!2-5# 1 H|7^ 5}e i  >icQ3 D_+}sa97Da [ e :!}&8 e'3w cAx :q&|/? #B_& H\ {89G7 <_G_ BjA! "<EGH%3N Pg 13!@ +] l ) ] ~pZ ? =$  zT$uy'I8   uc 6.r598i` 9.y Of P nb& <l[ Q  +<w  Cfmb #@A q -=h4Fs R$oD(lk /n P "&J(tXX fl LBFeq @ , 8.<   "3"6 Z '7! . 3   T Kp <^ (~K   [2}] O #3i 0<YN3uM   :]wKX  _ ZAK i&XC:^ |[)T!L T% H @' y]C $q# .  B %&B j f,E +   c!\Gq  B W~ *%A  2 n? qz~S Z vV|&p 5  9 /  S < -Y{ MA) N AYx !\" [\$*#E[1!Hk Q< Dr  @w [`'P $KEHi6 WdV89ay u(g m"Y@ hNO+  1 Nx vJ% Q` ~F  sWeVk5 F=9k%5 =0S !1;<3  I /" !S  $#~>Z fG *_/# &.1S_3Q'*)i K yk    c    *sQ6\9;'3u % &DHJc F 6|/_$0N <,8( q 6HQ&A " 2> (p]2L+cA ! "D(3 Qc* ~!Wb( og2._3VR7XDb  u !-h GQ,< +aZ 0F+XZKG 'IT*R 3,), =#7 O; Տ.5L U=Cz0^S8,61XYGu 3 z;yr /) c07e m  ;&? C vYrd ~  W,%= 9 Z g9A;]9 , /U "?'MG'e i)5s&>`[B|"0CYZ `)e+S&  5Y &dNn!' MHQ ! KN }!- _  X# SHzr , W L{-/ z Nzn<  3 ^  vF cI ) 2EiE # !ai0e } =L $4!ZGS$'4 1M'&=3n ,f Hd[?]+ ydi5&hU#*?;2;=;x ZSV,_nT &?H[ @ [ "{5""RT`jL  .R5wx vu&5872RLN/ .T7EVT#UZ)>K 0" l mH0i44mR2D25RHx!2|+E Q42ea ,$q;vO(O'y SKA큤AAA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤]q\d]_]g]d\d\d\d\d\d\d\d]a\d\d]d\d\d\d\d\d\d]d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]d\d\d\d\d]d\d\d\d\d]d\d\d\d\d\d\d]d\d\d\d]_]_\d\d\d]d\d\d]d\d\d\d\d\d\d\d]d\d\d\d\d]d\d\d\d]`\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]c\d\d\d\d]c\d\d\d]c]c\d\d\d]c\d\d\d\d\d]c\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]c]J]J]J]J]b\d]J]J]c\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]c\d\d]c\d\d\d\d\d]c\d\d\d]]a\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]g\d\d\d]a\d\d\d]`\d\d\d]g\d\d\d]d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]g\d\d]g\d\d]d\d\d\d\d]g]f\d\d\d\d\d\d\d\d\d\d]e\d\d\d]f\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]e\d\d\d\d\d\d\d\d\d]f\d\d\d\d\d\d]e\d\d\d\d\d\d\d]f\d\d\d\d\d\d\d]f\d\d\d\d\d\d\d\d]f\d\d\d\d\d\d\d\d\d]g\d\d\d\d\d\d\d\d\d\d\d]d\d\d\d\d\d\d\d]d\d\d\d\d\d\d]e\d\d]d\d\d]d\d\d]d\d\d\d]`\d\d]d\d]g\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]g\d\d\d]g\d\d\d\d\d\d\d]g\d\d\d\d\d\d\d]g\d]g\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]a]`\d\d\d\d\d]`\d\d\d]`\d\d\d\d]`]`\d\d\d\d\d]`\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]`\d\d]`\d\d]a\d\d\d\d]a\d\d\d\d\d\d\d\d\d]`\d\d]`\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]`\d\d\d\d]`\d\d\d\d\d\d\d\d\d]`\d\d\d\d\d\d]`\d\d\d\d\d]`\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]a\d]`]`\d\d\d\d\d\d\d\d\d\d\d\d]a\d\d\d\d\d\d]a\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]`\d\d\d]`\d\d\d\d\d\d\d\d\d\d\d\d\d]`\d\d\d]b\d\d\d]_\d\d\d\d\d]_\d]d\d\d\d\d\d\d\d\d\d]d\d\d]_\d\d\d\d\d\d\d\d\d\d\d]`\d\d\d\d\d\d\d\d]b\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]b\d\d\d]b\d\d\d\d\d\d\d\d\d]b\d\d]b\d\d]b\d\d]b\d\d\d\d\d\d\d\d\d]d\d\d\d\d\d\d]b\d\d\d\d\d\d\d\d\d\d\d\d\d]b\d\d\d\d]g]g\d\d\d\d\d\d\d\d\d\d\d\d\d]g\d\d]g\d\d\d\d\d\d\d]_\d\d\d\d\d\d\d]\d]d]d\d]d\d\d\d\d\d]d\d\d]d\d\d\d]d\d]d\d]d\d]d\d]d\d]d\d]d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d]g\d\d]d\d\d\d\d\d]a\d\d\d\d\d]d\d\d\d\d\d\d\d\d\d]d\d\d\d\d\d\d]b[[[]bYEYEYEYEYEYEYEYEYEYEYEYEYEYEYEYE]bYEYEYEYEYEYEYEYEYEYEYEYEYEYEYEYYEYE]bW{W{]bY@BY@BY@BY@B]bY@BW{[ō;[ō;Y@BW{[ō;[ō;[ō;Y@B[ō;W{[ō;Y@BY@B[ō;[ō;[ō;[ō;[ō;[ō;[ō;]b[}{[}{]b[[[[]b[[[]bW{]bZZ]b\dX=;/X=;/X=;/X=;/]lX=;/X=;/X=;/]l]lX=;/X=;/X=;/]bZh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/Zh/]bZ:]aWu]aWu]aWuWu]aWu]aWu]aWuWuWuWuWuWuWu\d\d\d\dWu\dWuWuWuWuWu]aWu]a\d\d\d\d\d\d]aWu\dWuWuWu]aWuWuY@CY@C\dWuWuWuWuWuWu]a\d\dWuWuWu\d\d]aY@DY@DY@D]aY@E[T[TY@EW{Y@EW{]aW{W{W{W{]a\dXcXcXcXc]aXcXcXcXcXcXcXcXc]bX3X3X3X3X3]aXO3XO3XO3]aWvWvWv]aZZZZY@GZZZZZZZW{]d\d\d\d\d\d\d\d\d\d\d]d\d\d]d\d\d\d]q\d051033959db56a240c065b8f341d7a6028a28f4ba4919895e1ecf5bf65dec9f848f3701addf66143e79d5fe86105dc105e51ac86d986d686eb4fde96147e3e31e0e0ca544d91dec35b073e31b48ef786ed552d866c467c51db69ad3ea28ec6f69f54e72ffd47d112645313d6a89eb73c21ada1ef6054ffcd6e5e571954daa095f364ee020d414691a297f5820a44d85930b43921f5e7d05d68c3e3dcded5f9c49fd5a490873c57aaedb21e56a7bab48253e70939d3110abaed37336c848182d36b24d7dfc697c2c239663346cc4014f1eae4b173b3397f99c385cd4fec9a9cce59d2bb2f8c9875933627f11478ced16af4c2dfef02366318bf51d197cd5e5de33bcb0c560606f7810199a899fc1e3e42717e8aa51b7e49417864643cffac12cfe0c433469f7195f304b8c3340d8576a21f5ca17e510ecffa9bf72df237ce522464ae4c92ca93ac3b10fbacebdd0909d1c3a91b692fdb37a0e09384971b41c3441c2170c0c244a2ea2617e5071152ae7bc7400f661e6f60d89514e2780e38127d7a436fcb7b04c330876f75dc77ab4218e67537e1addb4ed4f7890220b796b295c6fc368ae8489028a4c21d16ad1e12ab8df4d4b057d86a20c58cebf14cdc4b725e69f57204b692842f6dc32d6321a7f07fcfa22b607eee183f1fe30a6f4b241de490905e13f80a90003cffae46b45454c833b9b265b0b3f8168d8a82cf8b57b62a6bfbccf0a39db44043d32baad28cc19e93fe1cf2eb231531bb8bd46026e5816687c5ddceb535994674f664664df5c474acd701da1929772fb5d25a562bc70b346b8a69fc0cdc129835b5afcce3380ea3236c912b857fd564dc26da9870f28ada60ec4105e970cba28bef2796211eb0b73d5f03340614cf90c1b8502558cb308219eca3baa51cf5d7853ad3df2f0c5d3069be68e25558a1eaea429757cdcce9a5abc1a06083da50e98b2ed0a9775b480f2b8a9416c5019563e29bd47d03920754d329d41ad6e5d98f800045e880944e16835e43d11b95924987b410113d02761f3a18fdc52ecf139db17c077f0cb8503c3eab7c9a923c763239915a076cb096da39829e782c3ee89177f62248ee42c51c5cda2c406c2006ec6cc255b3c13d439bfbb1f8d61bd5fcabbf1234e44673daf7eaf70d8b4c3aa2d39e684781a0f155912788d3c1fe5595efb9577ba0a2d0a59660b48d4a0f51e4f8e67e0a512aeb7f5dc9f23dbf760f9a7a0f2afa8ca0831fc38471d86fd28249e46a6adfda254a76fcfc43aa926b7a983ad67a3d8e86f7dcb4f2a9534709254d535cd2f8d1d51adaa4382ffe42209eb065d5a911cf5d76d8d826d5cfe05e8863ea2984accf758086897259e5f3a6c28658b71b4e0cd9ee569f6b21749f999d7f2f248b8a3d3a6dad5766bd869cf28bded71434a3db86597ee3d35632f589e7276a57ae53cca0c68d38f1ac41e0f039b1969dff34a919a2ff9312c0064cf8775457a360fb05e55ba1261cc8a236851b1342f09c23336a2f15359812a83654e7fe66c81bf353d2117b2d231c87375ef14650ce158ddc8c2f6cb5d1edd3c739b3d68cdf089dfe0dc4667429bf06a47b017f38d3e29b350745077c929fac0a2bea1bf01cd31063624f252f76db6652d4f0451c576f5497154a56ba83a37235a61d2b1c8d8b73229a83419ac3982bf69357f2d5784fe4ee7fbcd382c2c87adf2437a347fdc100db83e6b2212303e605686c6c7feacc2c8924ebaf2f206d26f63ef816e951a2010110a0d5e367930d974ecf201c9d026f5c688a79929b71c62e165fa712d952ed45f0a664128e3c62e6ee141b9d3d66e678b6c2223f2b332bea463d21203bf4e7dff8dff7f48ccbf355bda66f3480312446f5602a9a3d0426c2f21a292fee96d3e75b61eee38a81e401d50cf1a81a9420b3e72d85c801fe6246dd6ba6caed5a3654e4b99fd4cfb3b660de8b750822f80ac388a056e9abd74aca46ac8ecb1828ecf3d26b4409011766554abede24d7266da8432156655d585a3ed1519ebed351d3abe7f51e80502aba86d84ee1eb1284dfaa75ff3660a3f34ede7f6ef346dfadd3d5be48915c4fe82b2fac181530c31db8bbb0fa726a986544035167532331d55e97c5ea701e90d870e854fa4f332f7bfc9235ed5c01597682aa8253540fcfe9a3800c7ea7fe83b296a402860db7204d858a1cff3d07ee9109cae92a582ae5c3e72259323505b8a00e0e3aa60a1dc2e3ef0ba98e076f826edafc82cc637492df4c3e3ec7663e5cba3f916853ce76dade7a056fb064266d467f2820922a4a2d84b22be7c7917870225831c83aad68e8ca406711551e68629dc3090439f1e98036eb9e4de789cd3b4ccbd2114ae2e91e67390d6acc064546d94c4c8dd52374ebb72506d5a368b369944eee59d74e561b48ef9940b463514cce67e083a827785d3e7ac3c11eb3d999b9a7699d6ea06ce806f63dca3a898276420797e176992af2949bf283b480fba7627b8a0a27100d3338c29f135a13cde45f5c4f50c218dc28d13242f7f802cd2a7cb8d40ec1152cf20ed9252a7d3c549dd617064d26233fbce4019b03e2b9d4fd172350b0a8b2ea583c7e5c7fa0f09fa5b20c6115db2de53af6e8b3c72326e810262466f624b77662297ad946160a8007d6075225642542f4e5a6993210ede435fcc0b7aab15756d6a3d609c754060ef88d3016b4223580160a91140e2627d1c5cc09bc907fed465d88bdffbe1e62330bf3ea87bfba20bbff2db031672d960a9126f6602cb9a126e8c2957bdbfe491f5911415a94832914879e73cd794a90e2679d10d9cb72167bcbc39b5401a7cab68163938ffacdd912c1a93d211494187da23702493946198d3b6031432b86e5e69efce94e4f8a47f7c2a3451f0693e7e66681ccad4057fcd6952e324218bfce0aad75008a4a3599193e684e89963c496ecb5f00d3a501891d08a9604ff3986423dce272f0bc14d201138f2eb9d5317a96a8a76c0982d1801a7fd06ee95278332e3e79354384c40045d6514d3905bdb8243587d55e596e1a63ea65a21e64b2b6a93d24d4a036379162529c2f907571f18360227ecdef282d650504c88a3db808980c895aa5cc3c906c554083c020e53955be5afe309c95eca83051dc1fc51888899cf4d1d6f81751238f813359bc386ad9b5ac48caa8f9a1d0894e0875c00eb2ac6f56475d2c6fef088d0395055d3439375126eb298dd44d8503822851376038fa3aa7764a3662709dcb68f1485f5297aec85e851e56e9074887a48c5b565a6b68f53665a876d9fbcff3e9d50f6a104df707230d6ed14f9914e7c51523aa4dc8a8197188e1261a13530df58fa79c8251abad096c3211e2ebcd13f508a010ae99c88add3b04e6f39c9b13d8cddac10dfb3afc3a376824d0a5806aa7e7cfac63ac87a83c75a7b2590b1e7159d8e184065384999e0a2b228a2d29cbeab17bb6be874ce3ee39fb683068e6bc6919d5db577a1df40536aac0c0cb96ced047f30539a757ea20302397cd6a46c5b9c73458409976a7e632294dd77728c840a8c2bb1969c83faa073aecb676acfdf66f7adfcdde448aaa62eb39e47de878ba34c27d660f87e5c8ee4110e4805021db5d2eaca98279dc9e7420f8dbe4ae1b5633c38c63f4d177dba83a9ffab2ff2d48fbc00d16a6e94466a032938da8504a7e909adea8a3df52c8ede7c72ccd1eeed07c4f6b355332cfb9c8b97e88e0f0b18baf46273226b71861ab3f924887e862a29a0834b7932afb78713a6af8a9ee68f7ff9ba98e4d0704748f1cf2b9cb75bef94f666a68ad6007112155353bd78854a29d7296e8c05a5642c0f13ab717cf4def98c1daf9572e12173f9024469a7e16501112d609288e71ea1cc5a879e64c0fb55addc821c450c46e23070ee4bef9e0192085fef9a99819d67e3a581159d827fd4659a23491b1699872e852564dc3c6b2190a9a63a1c11e3096142faab27066024c2ecdd724ff05cc01372e31afe86f6b9585eb426ddb4d0ed38ff25fdbaf3e7426aef1e7b4eeece237041b0b0fa8a51dac49271353fc9be1301efde5dbae2d9d973a1c000835e003dde2b163060f68c7c31cb2b810b241ea8c211c708a2a204d2a4035794e0ccb571f013ae85d136eed7758a00c37b3d35108e767ccdfeba8d0fca8eb91c2042391897c6f1efd310fbc6af3d99913e84be7acad589f8510acc74134fd0fd010773943a41a901285ac00fc81bad6d9b3865786607650b1f3178c3385104fc3daf7763ff099276ebdd572461a7975873f655563bef3852744179ecbadf38bbbdcd50744e533ca64a6f4363f75f9dcc8b8014999f77787443b66e15f3b0cccfe283af2dc125dec1569c8d845a42bea68bb7120779441422300ddfb68ac641269cb7554a617aebcc3149b431fee8419587c87e3b1ffe00b75ef2d8ea6a298e33d6149c9fa0ba33d007f83617806fe5f48b1c4ec8e711bef01c91f53ea2cdf9aa552672cd63fb0aef79c53bee97ada6b19f7046194966ab42cb9de63fd1dbd28f608b73a952cc1145d126a2fe37c42810ee245f3ac4ca081aa0bba82a209cd90a858a58e5bf6ef59cf8bf7f7541f77dd259f3639e0833ac2ef692c23355513fda1ec2b5e9bac159c9df4b1d135235da27d1b5a957cae5df06a32ff489187769fb28b4174e9db7ebfdcc51d58397ff5517fa94aff7b0f22ab9be8a81d1b3a5a34a4ef0fee7b82ef740cf6fcf4efb4b3f4c32bf036c3ba2edcba0c6e589f5a9798129535a190e0ee7ec25affb847df0c68d0cb75c6530afe68acce6b18255fa9635043bb7f074028d211477b34cd9aded22df27e55f6a09066854937e6929218ee9e59ff800ced177e45892e885f56dcf38136402cbefa18044e011c41581f909e54e5e0b452cb325664fdd0e0f66a06eacd35e0b65522478b32a2ff0446d0f8f9ca0c3ee05e31d261b25fdfdd644e09038fe57486a4eb6e2adcf751081e40212b31cef58b8f1943538b3c8085a35e15686159bbbafe7f48ce5bb842ad629c8b07b74530f8860695536e1f492227d89b5049ae0b0d45c242e1c5bf384b101718a89d47f7233a92f1f1b6e584ad997d653d667dea7fea5079d89d8ac36650b166df2154ed4a4bd3e9e836d00afab68dc10301ebedb495362dfbd344e286eaad88b93a982ba5e002539b34e5e4600432d013a2ce0c7aadc798ded366dfe0c53fff050a9e1730e44e9cc8d67c8b479fc2357e3425e5e46a01e294826f625ef3872f46b5c092889ac71c7e373c3541108293b80c9452fbd39b97df3d65855f4910ed17c0d2d86e9ee8bee30763c324e3d2e2512f3ac1535217f1df16b1f2545219e41157923b67d8ffb75430d9d02502fd305b0f085cef2db820dbe41e5441c6fd3c7e2ef8f9aac1e5f2f2d2860e743698d11a86466922d138860ba70a3e3b8a81c60429d0ae5fcd39db44d408d0426072b8b5e175f55ef6ec53daa181d8762aa40709fea361ba5be510a28766ce6203ec21932bc8472f3b0ab6b9cf6292bcb8b8059d3ccf3b6d1b324bb14f54209b0cc39347d47ed37d85edee6512c258f2f476b049737366aa18d48985ce8135e14bde3878928cf3e8f2160e4721e4e23bfd619a05ab97461713ad3f1a94585cb05cde008ccc9076d900262ee2bf8695c4389bd01c33ab3f7ea61d71348ae9e83677bf9d76ad74e4d5e13dd7800b515441b4eb719daac76c91631ff92d4b2d586dff0c4c0e67437351cf4ce5c7ef3ee6d3a66d91b8b07835ae645810dd4aac951be2f0e61b94bc27d447a4c286f40c0e4036b522e0c41c90c3f79fd80e7a0f31a1b913f048adfbef65949927763c7a142858b74bddcc44f2d7e84087077d101b1bd52b887ad723a35bf748cf9a2ffdd7b50cbfb579562268ac4b8e6206f97fb885300415c6cd3ab0cb0e0cd772ee065355ea645f01d43d0308d78b0d945eda3d32f8b5a18b4776b667b86abd5b52a30f035338ec666b3d572a26fd12c75b4ae1d5ba7ef0087f98cfa7dd31781f35fb0dbbd93276408e4318bb6ca4eb97a225d2e6d61f8df59abdbcc50fbe2307eae9debe12c56924f838fa056c906f4d78df8d7bda33a85160e359d86be8ae190623412b1ef1a191d323964c191f463d02b1d968a8bc6ce74245584fe6615c89f16975d4e37f6dc652e414647eb10d6fd5d9dc818086f460f7cdf8b0ad27744c15cb1eca58d227867f53d4537114506be2adcafbd6d21e1df1d061c3a2b64162fe71ccf1d8099a504fbb90fd8d0edca967cc63a13a21761b84c83722416fb84dc49fac807b1c9879af663ff813d3dfa3f9c978c56dac794a5da5f222134c569b157e59051f6b40ed36e419631ff2c493a3a0d987c8350518f0bcc363e4bb5b161b4066744ce308a3a24fa2b72a589b3988fc495b102668fa7a466339da4da91f59d5089cba40af3989ab58859842aca015bf08c8f2a731fecac890ece0146dbed35b371e6321458bdc92b4c73a28ca0402bd0663834513ac7e88db71895043769ece518be974968f05c4782ea10a815f5385de030985e70b434cc741545a58761c682ecd10b4f4fba1c0a9b602f1434ba3a646926d27b475c4fe2f06888b72554da8991d085f821a996ab81a03346a787ed5a483d54980a0488133a1f993a4c90fa68845ff9380e7a29451f97da26afb3800872059be0376981167adbc0399dea676ae5d5ebc8abc042127b725a425e5b751bf26a7739e5bc52da51a8080f30234ebaf3c6988a13bffa12404d0e9715d966b0836ac5806ba49b22e0292a8be948801fb60200a856c1475d39edb2f3b25faaeb4c52a5422d697a31c4c0d1e22452b8b1c15facfba547103b5c4081bfc049d7618dfa8da3e5a10c14099d144f44af071d348e25b69358f8aaa9f638cc2c7425c68e64ff62753a62726ff49881d1b3645a8cec1b6e7a2d0ca9bb8f90009c626327b2991c5af35f4bce789fefaf62ba47c4953742c49a19423ef34b2b6321a355a2f2d73891a3bb54a49405f377b7044974abbb0da5b1733be718d8763b216698134378845e5b412cb9a42f84bf68c1aeb5dff0b160dcd1e71e394a7b62e4fe3f81e7265b5df1cfe781bb1a41d69298f04c48241a521ebb15af18d8837b12ae3c93c027a71ffe0eac53c5ef19471fce585899eb879b33b459c902d7c742748c75b89851a9d17576e8a0d24abcc6d522c1b0f24da734c8c9eca9bb8f90009c626327b2991c5af35f4bce789fefaf62ba47c4953742c49a194a21b34e3c7c2dc8900ef8bca379226c7e089b81574d688324e3c76357564e2a1f939429263d7bf8b19fc8c1e9bdcae5a542d0e9dc8321dff173fc17b168e688dd26fe3388449251d4909f4354d5efe27020dca53a4b4592011c0a3d955778be59e376ab98604783bc07314a038312e64f9784d02f9c86c904ddf2f33d77f3a667d866e51b5cabe2a55a52a8dd673682fc6179da01ba20c5af942f2444440b573f1e03cc6f81abf45c3977f0b9ff0caf4f9f93daca8b0e34f07f78fb16e57fa77d84c831de7c1fed543bcc4132f913396acf10494d0ebede64daf1a1096bfb8c2885a6e108965edbc9f3f627e75c90c3b01d9d34cf70921a3338286308214f197b84bc8c08d5624508802fc320c3ddbad3a933aaeba62427be47558b42c2112e4a8a26726d49f460a5e17670e1eb0843415bf2f73d5b93ac426dc475e89a69f6511cf01c029b1959f92a90cd3e38815ca9088d66d1279d90711d5f5e2b697c0479da71e6072e4a4c4b5e959a0df16de4f51cbc2e3204c5349b6f8e9194504fa24c3a8705dc8326871eb365f595dabd9cc098fbd51f5d592fcaf959e53557153e91de4bb7090d41ee7f238b31171443e210c301a0b5052ddea77e635cb2e39a57fde379ffc536debc6a003ef6d776e035263808c0912b419eba190d72be83eb2c3d83d223a8358c7e1fdef17a69876d9fd21512105784d04792055b7fe29ff1fc6dcde26c6c7d08272dc8a3c3b551b41f7be3ba80aa775e78e11b4ab493f8d179af8deb0d6a9aab2d59ddb673d4dd43efcbc77ce6e30e0b02c932362f7c721e3b14673c0c1178a6f8d6fd2b02de4bdf22d675c00a671a41b8436e827fb98380fe82e8842af61d45b40c3a557f5550ea9dec2389ced6cda355b2dc34683ccbff658ea0349e7a89dcbdda131daa2c24e7ef8d56c76853bbf2d666580b7e03b7a28fec86ca754570b3b405bc7f62904f0d5261d6d5bb0318d5a9fb9e55c76edd6ad1fd2fa9ddd384a96e15093a2e721c89a4ada42dbc74c177ddc94d284a090c7a4f575d18b03a19cbdd58ad72bffe084f351df7fcebf66159449cdc5ca732be32ba8438898a6828cf4f55b87e795ab710b61a47e88074c54215b67ab7c302ae564e6d38dbba4022ce78ef6992f469bbff5fd2e16b4fa9aecef1f59c845a6fa97445a9429cb5f3334894ba2e2b642d2dbbd67bc62b0b68dbba8322179d5de6bc24d336fc40d5e2c96165e11fe781e501e06cf5439cba99378302cb298a50d1eb3deee42baec006d5917405f7539f89a30dfe742a925f40ef6f25ab75ccc48c904be6c1c3e2b4724cd3c33dfdc881f0e4b0fe34cc188364718b4e4588b32471a84e8613cbf65e32e83b6788ace3057a8831654f4ee8c397fbdd20371da6db06aac2d963a646f59a40af4fbc48e9dead542cc7c2573ef9742074d93040302e1f13cb665ab25c2c0d78e86e0840873df5990c23df371c0943cdc33fece8ac93a0f55cf604a7f6b3083438e4fec31c9c70ca4168a90419ce0c4cf1bd64bc8486dd7582ad5a2c61230042fcdd1bc7ab113458fdeed0e365c8c1faaa78d7436091a12ac298bf39b98db13db22562ddeef733e45809427cbd871599a113935a5d78dcaff5a40a8c95f9376119f84f16a257e45e0ee6174513a3f2b2ee34e7fdc50c4c697141e6f2552791ef7b52bea0ee191e1a7bb8b41734a8230244f80b3d66756711f216e85f7e7fdc410c1910bb53bada7a4536584151dfc5b878bf75fc3a8b0370909046cb91577cb4f3b491cd2c943b62bcb23ea2cbc1b62b913e5f4e4dcb6b49ded7e47ae40d129e165c6d1bf169962fe9f228fd65e1ad21dadc468dec32ba14665d337b37bed114a54a716861a0074ba22f5cbd10953b6a32d25aca61535c513dc2fabcd26845bfdb60aa0a1ce01344035fd52ff5bc11d4547ce568b0d9d56de9997355896a5cfc726261bd59d4dd4c9c5c643033b32b8d4d0eb10e9bfdf7fd0bb7f66c38d0a41493981f8e2bd1de5e51300e3240befd402c3a080f815c69a323f69e6d2fc7254a1fe8d8fb90080113246b5f1fd11dc52075d9a18c5c5079eb3f3fe7be7afd0d75d29f71a15bc6a677250cc7f5b116596b902393337d01804f73b67224c360a83b147db97007ce8aaa1199f6c9943813cc9d57af4982d3a7dfd269aeb2546909fb586dfb62657622c8ef4b57d21a85c4ac75172f12e729c2f307db1196c7a765b6c579fb2673f1b93edbc050902d9880ae70041d94f9d317e4b38174094889d313012877bc37ef08511b69b1f0a099ec145f7857b1413afb715e8a9ddbf65e9ed34c0bc3e121660b9ec3789c56a9f88b33ab922c7d7d38729fa429cb35a131288819777f4507e742d8ac9fcd76502275c39fbf9d8ca1adae35741cd00580b4274330b0429042fddb3b3b372e19e7a7974da5e0d0bc0fda39376d54d96e100a579b2b27462ca0ae2050a3022a1c9c9c3f78e2f9ca49d3734e5c48be0fbe4c2d2fed2753f406deccec210a3d0b52ec07289d49bb64e3a7c2aa4e44f9e12dcbf4c157d7dd634fde866cf978590f6cf85275165bd8d4caa3dc6072a4ceacd966a612ffd5e0caa0896389abd404070b5a286ee038bf98beed1e37128185a8fb01607f567c836f24ae97b8e5a461860f3278fe8d099e8b7fc8354dac2239fa42fbfc789c62662921557f5743edd93df2f606080d0e555765e584cadc267b4d116b47b23b88cb655c6d838d50cfba666d2076d934193008a180d12940efb23db5154e3cd327391ec8832425dc802c4111d8162625b478720a1c6613095853710bc5d7db09c47a9681f607c8210e0df82f065736ceff07ae3a24041a643b80bb3e935f47029cfea3eb7084d8b334f8f9264f038b717a9d240dd411a69de6568a5369d259a180f36d946fc082d14b4d82510c95f6a9b2a26f8a259a8ffb543a24421a7ab2f555d80c15b9ebd078a59acf0c418f0a365e392f4a0d787ac102c361ecf9cfbd77fa2a36d61f894430d9595dea673db145fe7dcfdad6b9de9960e1087fa11d501cf3e367437af15c0bc1b714c4bcc0934a2aea294de92f46657e98eb476b6fec85b4ea380f5a80493dab425b773f934dfe188a5c14e60ace76d593b09be1007841068ba3d909c434a6a885619bf3a69e92b80222693edbd01c5a3076384ff24fad106753a98fd04ef0d47779c412eafeed17847757dd6c25505c0a7c819955e2e7a2d3a5ec7299129353f67edbf916f31836f25a992dc1e041be26cec729d5fa87625eccb3d02266de328bbfbbcd0dcdc1ad9de1e9c137491ad92f7d5c867367b6ed4b4a6d6605d77e2836c2d8ca71d3d142fe0e602266a468b5182c89ab51b10ac16ead6562e40a9bd8674d83d7c83d89f63d49d800710aa59544f4ed00a3b603900e286a904226f04207807b10de4f8a49ba80e4a06d3c165d1a5e1b35a4af99ac831efc1862e9790abdfb36d1619dcbad934ee2997cc03c9cf8037cb62bd77cd057dd856f7822f8689fa9f01dfb4216ad28885fad0f151c73c8052a2979f9c7efb6c053ea05cf902932da48fc52f67c8218ec8bd8c3dd3071e7d5ebadffddd380918c76b4a205a323e1532fa9514c32d0e5fed6ec791d3c9d892464d80b60ec1ed2f73415629186ad586fa6e4ec0268a8815597a6597ac208836f81703d3245601cee7c37967aec071828e892f406f6e06e2239002887aaa649a0ce9b618cb6524e5ac0589f801223fd5de8ce2f94c62f625255369ff08e100fca8c7ff7b9db1f2dfc4f80564dbed83e9a7bcad8efc13e2d70c0155f7ebd038a9bc3903f18a06c495be6b25356e3d56970970df93c7e182357f954a17afb0ce2e624f5eb9a1814cf3d40fe6ef5f7f5270dff3682b9bbce639e6ba27add2cee39719aa8b42d7d1a457ffb1b86b2e5e67cc164198030936145a97cd91470a373d9e0d5d981ca8f635a5cf6bb85dcd327a99ae52145838ce91a01d2dc872dc9c895e3cc00d114165ebcdc5ce7f4ddb46e5f05e1e56b186a4ba2f6a371482dbfc210bde4ba45f4e93a0857d0ebe25a0c317ae1b9c71ce89a900261e79a0a9f8a6c8e510e42abb54131c63a62aa08a2a19f457e8b576708132f2255de8e6183d9990352fdfb3d44cdaf901d49b19d038ee1d2d1fd746d1e1a28e24b60a3d8e944588dc929184a555e22c7c102392369f95fe2e1f14d2d3835b7a3d22ea15f1ee7bf39d8de3e2f1661d4ee9a0529863129f18750f1f16bb5d90621028e373625dd5d68225242cf78acb066a5a510990dd2c773f51c6eceb1754d9636eb375f9e37a0e34b24443a9720430af01f2bf29213ff39ffe94f37b50d8ba0f73da7fa7704896e2e08fd758ef29cc84b3c3e00c3c35186d72daadce02e25ca0567f446c578dcd5b41264c14ada7708385df95932b0cbfebd2a7408c16f72f089dbe81f0a39ad9f6486d3a425a5411ac50cbfb6bd43ebc8369808266698e276b8641cfe4e2922235b6104f8c4539574cc397b1215f51ba7d608df9440e75a4f1e5643f7533c1bcd93dbd35bca276781c9a9ec53a692faf7474a4cb8ca36d236c52ec5815d21947ed6cb025fdf9dbc095fccf3fe140a4ee42be6ac91921421cd45a1f413d556798a01cce68bf8870155cba2e0a277a5ed883ebc9bddda851cf89d210d0bc75031b77987117691c2a73bce16f7a71ef45bfd659ae31b663a98e257bb739fb7148d260784f55499555bd00354949f98927c368a1cea262590f159273cbebf11f1bec719e3b1f2111984de377c1ece15e7dd7d44079373cd682a491d7b399fdb9ca5d12eabe65743d29666942ace3ed02bbe25433b059d09b2d2fea210898624a8e7960daad628941b73ffd9a06571584efc8c3cb630bff31a773b2fe71889fb48caa247f7227c891b8cbd550a6a1b005cdb395ba6c90e1fabee1f3a12ce07704d404e423a1745176de58003a8e57e306214a0183098e7d8ac82abf5a9a15bb626bbcb942d87f66a185a13739ecfaa6384d0556b7f953f577a4220fd27fb92270b230e54d254cfa3e7f6fac7a0d42fad8c2e99669ff9a891b5d1eee0d36d4132b9a673eddb3e333d81e5d27573b3c11e8756f8cc6d7dc29d63f8ea151303e5094f14f7dcfa390896882f22afab5f4c9007e25f66be0ac4905cf74aba10f8aa9c23ec35afeed4f4bc60b819d6f5a8eb4ed9694be10fbd95d6dcb5ac2d2f17242c128d1e180338a382f34089830a1e8581c38cc79b56f0e92491bb215ce36e6f7c1397da4e58e69d16f98ccf5dc249d286a6e3b87242566a96371e7ff62b1481b297e76e6574dd38c72b43e375d5ab2bce80f10b1d152bfa2ab420a1b13cd2b07563d30d7bbba3bfe4df191fdfe9caba1b21a854b62969ea5999ef10a2d328264be33a92586b366172899b6e0d6a930009551b781b4a95611e6acf33db85548d81b359cb528ae2966ea5a55b0a422b1ff754797da62a5637521ca073e46d5805ab2a7f350d589065ba78bc9e7369b241df77eab99142b30b1f81f25ca148773f5665630184e99caa061fba731abf6a3d8a79343b91e90e96b3de67934f87d4e5b6a9bf21d43e16f1df86ecb2b2f5c780609331a5921ea8cd8d2cc7f247a1c426c29ff4e73d10a5a8b155f91ae8716709a4527e098d86b8f1461ad6fe300ee379037d7cb5c8398e4b12d82522057e8ce399688c7e2d8d3b81e6bcf48c933667e65b5551a07dbc31484cf04f90348893c8b5d59d243c657e06429ab126e674367f40bceadcf112b4ce7ee7485398555ffc87a4fb606b83a379f1d662db731ab4bd07e75424e27c25945bc3c14b1270bfddfbc899dbee65f566cb397fe7702ccfeb47e715eb24ce01740ffbf4211f21d81c9ea3b97fcb1bb8857d95712ff48ec5be531c713754dd21739e174ec89acfc65fe8644d58b05270a890fb2ae60fd602efc9a1fa08a147fdf70c84796ddfec51c1cd03c8cf97ec4f721528fe42ef01973906d9c332d3aa92506d3290cb7523a5d3f85396518fe418be4898908f3a8741cf5f9071bf8e6b712e2eec768e3b51a3790205517a6e6ac4ea563d9ecde25d2284a7cb3f40919b5b76772e0be028d81775f30b4909b807d03f0bc6ed941561e2719faf09ea5b75a14a4d2c95f63271b86dde2eabd96bd1a28c79e7ca328d99d9b3df6db8f899ff03887062954d33ba76e42288974f07f546c8cf6cce29b5e4a4fa2caa14eeb91669b0b68061180c2d5f5001b933b92ca7f42fea267d5786ca67d398817eaa7a80db49c48c12a7d9cea25db7b4369e73c468e26c7bd9dbafd380d810b9cb7af27805d00fd17abc1ca9d5e4210d698db4dfda858a24599aff29646e3f6582fffcdff85a69ea6bba061d3c29e78d540718f9e633d1c0b64506d3eb1151854e0ee7b9c0ac5f741c1f491f4b0d7b94b32249678227e4e697ae71eec17d6378a2c19d51a3ae5463ab1b776e913d60fcba1caabf68963ba0faef2668bc33367b3f8961fe78204434b530dff58bfafb6362737a29182a050c768be804355704647acfc452b8c9898cb2915943e036b9b245d5e917f2f179f5851626aad268d1c4bb955b520ff8813ed9ca306485762effbe79e76321ebc392dda9dee508ca7608970804f126d946f3d129587171bf1381540d04e5d0ba321b6a64f8794a389ebcd5680731f341b1df39d7682225e44a9cb2091cec6cecc8cbe4b6bd418f4cab4e4f177f84ead09314c623cf15a6e2e194c5bc297e7157f891c3ebe7e6fe0cbe07760203bd6d8a678b0161819371aa0d6a5223fb8477d3ca7967e04cec8eae34ebd8d87dff7989ab6675c751e7dba76c7af9b9660916e1655dba6ebc6fa3eec81db70190d36cf0e5790ce3e654305d949ea7c62589a5f0e979e0e779bee15b86b9789a2495b91d3053f5a78286dbb185944d2e9245714dd02a606f23215450413848d98c400d5e079fbee8cd9ca51297b6c7e10cb01cc4f7cda0debe051e2e6eb80e25185db4396c8daa41a89a0620bb1aa3b0820d9fd1bf01680d0578598a9c3aed9075e63eed5e424d51dc31442c8a863eb339e5950f8ee2ff9a45a1e7ac9828e9dd9b799e21654d18f6ac055879b0915cfa786d2ada04ab6efd4df9a6fdaded3414ddb01991a16b831bb763fb1724a329bb8f89f4668b9b8efbf9fa3e9faac3df232278f2d42120ba20cf724a737118239d7c2da84e3d6c7fbd6be0b30216519947f7c06f549216e4641af8de4d5518c821aafad9eb3d3668b0b2334f9605eda9512d2104562935e4f236b6e04564f8efe0063dc20b00a2fd983cde5091f62a2517d5e46ddecb952b64f2402e59b295b58fe894b7e2a77b5bd474de576f280fe6fc5353db43905c867a526a57292ce59ad666274f238847109cd186cf5a2de1f7e0d20c379aabf5c3a94b3e097daf9b50cb9bca31c47c04faa566805d51ff4189a6dff1c6f976421667e0c878c10be9a40142b25e3f81ee99354403a687190bf602d6b0d9d2f60434fcb6670ce7d682f32f97678f8204120de0c4ce44bb108b0b180708a0142eb85beced3f591cc0b4fde1c2b25002ddd0435ef0631b44dfaf1566f9ad99c64fc14e3f0e8a523f1c2aa928aa0ece8cf2a313ec38b5b0c70d757045daa7ec2461f517d960a7319dee0d02e3be74d6c43fc3c763ca33ad659e6a7b84a1a6543a4a114ec338f60b193ed1b7592cbab014539d178964ef70f773547b20ee218aeaaabb493f08cd1e3037f57229b8422332730f3a001a63d6282debb2df1434143d5a32053241cbd9d91a7b2c77604b27f6310c65b8ae9a6ebf2fa16bc0977b9fdac5f13ce1eb690314dde69c0094b8f9ecf00d91e2c28ea2fdb4ca1522ae2374398fa5a11769d15b3dd3fa2d063e36c92185a41ab107eac0b4ed385918edc4e2ba120643d1be09aaed4c2b700ae3eabd9a5b97aa9b75a3ed50cd3d3fac532973c3ed42b1fb991e3289021c4b1c23ec315a0700fa7cc95cabb65a547a4cd1358bfa01ebcf2f07d9ab757b0d9a29dc5f55d4ad2314f3e2d06e2abcb75a44b68600f781de5945229956041df21991af968df773f24f92b8e1b80c3e50bc836a00e177a2e03f1a08af3a8b655b00794f998bbc78cb55f0bec287ea192e2ef9b81c966c7a09e466aafc2c00092958497cae183856ccf0988d33ef7ed7e937fd1229d1b1fbcdef7c4cdf31bf2237573ef6d842a0df5443924653ecae304f588cefcbdc2a6ce2bc8cf396ca81718bcde0682412028400b73b419598d3d7bb8715d755da049b446771529df659fc9440165631901c735fb75021f2084f5bf4e6c3e9d9894c2c9b8f1cbef74674726fa03a644a127d8c985cb5e0b2a503fce54ba7fd13e6b93478f56a66879b0eb293f1192f7d42d64beb7d71c819cc35588f9a9e357a10b4c1988d91ec50fead8aa552488349ea3766788ff5afa5ebc2566b996f626d347bcd5786cf7d75850756aab62f68619dd916e7ade1d89cf726bd4bb3d5011a43da312335fbaa65a70f43e8de9a106af303524686f2d7c5d2d3d4f90936c16d441304650e4788b5f36f141ae51c457ce2ecb395deebc3e801ea16ba6e189dcb0007bf96ffbb52b44b1838c0fa0bebcefefeae406f532ffbe986640c7d884ca1178a1417b8aaf315a1034dada2bb2ff52f32f1ba9e4d5567fffc883b28114d843740a75695401dd6ce7c74c13b451fa8f718570a219f3501e815258752c38c1a2f91c43cb95ef447c5472b1a5b7ac77bebd54472a6276bd57a7777c3f0a8810ad548410c18be657b70da92ea5c9fc5c85cf97f705a5c8408496360722c83ac0c876d7ed2076af0a49c15d7ebe013af18779132f50d94056c7cb37e85b128c933241ae1a1ce453cc1f68694dbfa5df7623f7b19df6c7783c069749791b9183c88ce1a1c9178031010c4293d710c0c4da085a6387a34d2c3cdc248e1ea47e27a6033bfd6b04eca57249903c385c1c47aeccac4261c94ac14ce5fcbe0df37716b47a2c50ff356bbbf9c57738037a12a50d4852a47361349e39267e7c5b8b9580406a5aa259d47fb9dfc8b08e0efbe9fe8a25cd9d0fca9025820738dd44085c8073c35cde61553cc4fc208039bdf2f63cea345451a667f366e5a089bad6e10d2aa980d6e393a82f47e6b9a5e243f67092877230dd4e3be3f955fb96518f9671dfa9efea07054e13a35e31380d0e48da25aa54ab0bd5aceb9cc544a6ecd9427fd47069a20b0ab4f891686f5b2915893fb6894c12048e62ec2fecbdc1c9936473473557f13efb6667ffdef132656caaa23346049bc28eb7c7d2a23550aa0fab47f1b91ee561ece62fa5932e456e4608b7c0547f2ad4e19a92276d0bd3a4945e3ec1a8f01a027599da3abff6e43c03810898a1239a5f3a81213a923f2ec39c1dd047dc1157c9a29ce73f3d6feec4a501deb9426a6ad4235ba33d384f0432108deb11cb023b6805b55bc37950c64a026b604fd75ee740cbac10ef2eb55cea5e3510a4a79496d43a28853236abbe4038ed5f9fd9d5bd41e2d0223be5b4179403c2adc9478b3b2b674ce718a77a0936a7dc22681ab4a923cfc2ec30f6bfb30494b68ba37768c73749018942ca38f8f6664353fd493a44e770d006a962469457b8984f185cda1276869be5d905b4814995b80345a1d5e6b2dac0f93786d560f2290b522febcda3d2e1fb9d7c95630493d674d9b03efcaabafc3924d3c2ad7d22ed7fab6510bd4a2d483a424fb4e45104e8accc6ff9b7aa3299ff50685898b12cb3dd07cfa030def8a272d8d55ef7d082e0d7d9e8bfa2df5472de8d2b719e9e4017b8cb8276794d74063b7fb01e35e8605b4a3f79a7f36fe5e4bcc4182c99e08badca3343eab5b70ae2385f114277e82275ed6f9bf03d80e4dd1073c7a74ae4a3542ea98e2a4cd1403b84e24fc9c5c333569bc0aebaa07f933687254b7317e415b2f542b78686b83ff19a8aed5f8f193e4ba0d27dd6f53e604aed8f0bc93032d2b702745d331639da848e0f293dcf4540c0b96ff6b684ae0340e9b3b535ccb0a89cc0ea38ded28af554fbcf0956f6c9920cc135c449bc105be0e97830c4de1c3fc2a55bfaa9de5c9d0e269238d72ebda9018b7805b30a074a1aa2a66c3505944442130a1a89ee1de7b65a3fc8da83fe154a92920d25d966ecdf3e536133e328c2dcdc4d7d6c10a97aca81ff572ee43006b1539dbe6f061fefce690a7ef852677111659036ba49e3a27f28b531b298c611dd13a714fe4938358ab7805db9e91f8e6f5deebf2fd6d00050d14554c5e74b7de1787824baadd3b1e4c9876c346873b2e9768455d8e8efc03b410cea2827f8d6624ed1cf45a79c2d484ed74064d07c97e1fdfd12508a5dc3a403fe6c1f284e68b479def0cb76c35f5a536df5e0112bdc5bdab91ec39735f1912288b684ef6f66f6443a47956b1c4aeaaba1d021a201cc1ce309caa91732b61ae65e96f7b2563185f4eb93e05ad28e3257c51b4df82b9c7dc0e7704e1c310ede6e73c29eba1fd833aba5e0ccd8f35f7350df62ad95de10be53e761a5c686bc5ab471f1f52b6e1b7d25baad4d80241590c307dd65f86f0e7f0591a256b58cdaee80be5ec728ef218adc80cee472fe7c05468a712bf7f28868ac64e19fe21321fc39c0d1270f3a3a9a30b945ced0022d7736c5690c452b4deda4302fc2980277a045f31c5b734daf8ad18b90a4ccf4d3c47ae96ebed19fdd2541774b6d5d4ea5b1469d731cd001d33acd99187d7710c956eae7ce1263350080f952c9a6a1a72f169c9a2b4e410b4b91810f1b0fdb6fda716cc471c2a23cb9bdcef6e2827e13ef40d2453a140753e96d0c9d5b755a86dbb741630a4f4c8769655669971ba1ac886e81bf1aa1d070adbe51f468db7bb56dace1f464ff6620684c94ba5738d995a34db185ae332a64963618eeefa0877ce555916887ea8b91acdc5401a97b74beba3ab85df47dd8ff8c9c9bc8dbe36af32ba7db1df455dfab6588550d6c354941532907084efca7ef6b75053d5b7403abc456ca3b5e7935dca82958041cc7971a1260f4f6260dff527871b7b2f7868d010966a41d3ce104c7ba8f19290bcd974cb4f747a985aa82dc25b25deb6aa8cad9685ba31a6406aba0f2a3ca831da36a64fd260684be8209605cdd5bba8314bdea217db970e00c31e686de0ddfa5cd3a4f8cd734193db54e588a7902c34a216bc696220e762400d44a8d5b7bd2ffdafae6a4489f5f68cd68f9318620abfeaebafe9b75a17ed01ff92e08fc12380ddd67f2d0afca0d123ffa6b4e89b0eb7ee3b2abd081a0fb3322e670e2cd086190649e6fb2da7490fd73891ee9db75c3791c1d4f77f5551532c027552f1a138e32ba11f6e920f3a397bbe7d750e2793e2ca32bbf312e4c100abc567e07b9751a299fe3c1223303067f57ad4b5e32e0b3bb599bff208437249599cb893d1525e9568b539b61790a0bcff5642a255f94fa5b934b882e11b7afcee0f91e46c3d94e96a146320de37f720bcc9a306874e8fb4eef8136498ff1a102daa7763ade827c42101debb5d26f699d67466565a43db3ab080cc200b1b08596124cdfc3ef72c9ab0e3376e7535e02d92a22901b95b62a32a3752dd4795485d1ce84fcc344e5f401c442e1795a49acfab57fbec85c68d337dff048ccedb50cafee9695b1971a653a91a6401c425eddcbd7c5a802eb6e435a7ae076f5c9d40c6e201edabb905a279b8c9d5e05c7d34b95fddd25897f6e1988ed85168b6db9a66b96522803505bf10e296053f833db168edb517ce2710815055851fccefe8720d6fa5d9982a6d388b9ee6e41e1cd495b00c0b8a8b2153c76e9ce6375b69033511de024e14630e10e7fedb710c161ee1fbf986c770f7f84270eb9f9f1842ef25ed84bf006e4dd736f76c809018c1d234f60902ed30067723bc7c6c51dc73d89e898f88c5bba7f51178d576b1483b1d4ef5dfc15a9a4531bbdb9e5cf09165d6ff35e28967678805ac013d857c7faffbc2b707f9538a18fa63417da29b81048e0eee2523361e683d2f09541cbcdcabf4199f2d9308d5588e43a027f936d0797c500e9fbb9e2b76129534ca6f2675f02dea6ecb5b4a2c1f45acbcaf639032773afa5b5c8a0c2bea40503a2356ad99b855f938795ba8c70be5afed047730948e04cf7ad20dceefe48c0314c2b2ac6ce79dd5ed5f4a982deb3583a78bf7466c67dc117523ed761b3de1af4f5644d7460a4dd8a3d0e4a2ecfbb45c812e79a0a2a27e786e63c9564cbd0d78b0d41fb7e3a7c1f403cb7b64c3f1b53958907fad754976846395aa8a56fb3aba6d208478aa8bb67037e9cbcc0cb321fc0ea235898b3bc0d47f47c084a484ab9e542614dfd70093141332ee1eeca3bcfc5a60ecd87ccd4ac605961ec8b1679080c159978376c376429141c531a107a84da2eca60987e77a62b26fae4b080e64e8496d5b78178a3d5a5659b7f10e7e22e9c13d9cbb6cc875862db3c37c67c6caa5385c1f40617aa00f2bd7f066088f26d72562bb19f1a2f87915ca49ba33f25d1e6e3080b51439c87a0f984dd85b2abfb5b0d8db90ef1232824300a6bcb54c13a38ab8b23539e0b9aaf9a875aba5dba859e75e816b6532b00317c49343e554db78b046cd572a6bb84f7aa3faad1478b7d15213152d48ec58c5569e2c450163f137eb1203a633fd953b2e31929448912859c96c47eb1286ac4c1fc82ec2ccbe2623204b36281e1a4097163ee24ec43d7139dcfab3d64a0ff9827f017a644711a200489969e995734adf258d8b01ea0624ac5584225233ef0b743a463b1bbb87e8e4210c64fa08135fcaba8cf4e85b4c7c9a2961cd6dd007d8ba87018ab6114936efa3faad846ac110cb97b2b8df44db2c64c24f3aefa99264b2199faffdb172f2b7129beb50530bbb1eec1237d89ef4d5b3e574126334641ac323fea776b7d8c603915b5835407391b4adbad0bf723e59fa8998ac393e12bd25969fdbfd5ae50f5e89529e28e3e6276ccf0432ea681f33011eefbcdee9654ae2fe7d3a4e565c6b38615d7d606acc8415e4f94ca49057e850afb2c8f78644b0a0905f7a2e4a296e24b028458afdcae87c546140054dc8b16abb10c8872682f26e3d93b0d2d8b50ca78be6bd002fe6e8ae4748fabbc9752d6a6ea625db018b9e3a872c0135b0f9bfca286bc7e1532a7095c7a6bed0463c6eb4204eed69b736852cb74719e400637ff92ea0a6e9beff96444091ff057ec9b76c677bdb4cc21a22543aea0611d609890e06e354bff38f4b32ba0f316775d2e817adc701c09225ae8c6ab9c32663bf1162616fe03d3f40e77e05e7f395c3b6d220893ffaa29ded2286d0ee29fad1c1d7dab69c455d2dfd5f645426ffa5c893c6c17a202e6ed706d2d3cecb7b8b009b36106d1dc228a83dc15cfbb1c7baed84d1214e39881a077479e9749ae5357b96989ee114d870b63ebe07e34a67609728285c59451080bc9cf403a28495d5dde38b9eb4bdc9e1b552c03dd661253714fe128163a8acffea882587ee6305411e8c821bcd4bdd610b550ac77fa8aeea306bfcf2bdb4e14e7ad9b7cf28d6979c6ed21af1d36c133859139dcb7a0fe9b773ded8ad995a830cfa89c298a1fddb5126ad6b8f901e48572d25d9bc91cc239f75a9afdb1831fa5418ce088f371b347468d3bd80eb79920e262ec75830e412e3b05247e70019d78bf4a3551083a78b2591d60dc8341161485704bca41e5886259fb73365019d107f89abad0838925dc15b585cdab2d2a69c6f1aed54aa83315d13b467147c8afefcc726fd9452e7d01f41dba7ddfc03543c62b5ef363da22bb4bcef60e7ec334d5621d4eeeb9439f6296712d9854507e92042a08ac53a557925339c82f7922543606560a43278d27a058e7044f1ebde0deb9f6bf1093d926bd87f66268e989764d7f32ea80e0b8ee83012db5b3e343c7a456f1f94a1c7ad7864f4a0bdb6cae76c3ba1b47320fef96a7bdfb5ab3954abaf878fcd7d0b2e09d4bda187305c43c618b1d2d989d17ce71d5118d599030dd94cab549d738e433e964bc2987779b2ceebeccb3fb891f01ec0ee6412e6cd8e5553b20be368c108a2174883f7e6a0d0dbb0cee21a8b151ea83e865881149db176c3bfbb523a5585a22333aa5e99ce764d3ba2c04ca121e75ccfbf9c59a034a929f1c73051bd94879b5849cb709a094af72302620a532da95be3cac589a491cf5aa0ea09ce59dfd235276661f84c26a1fb2fd227f4699431a83e9240b77885e75a2d1b153f4d5279400291b92f41efc3d9eb70d2f53f2c10f51b1527d683c88298f14e3d22a756645451b60a6495c1faa53dfdd21fe69ec876df19f56ef749138b9ce17d2ac898e7602307dbc42a3eb3ba523ba3f961fd6ffc596e269bbd615274f7843354b9a6bf23a330c0d2133662aefdccbd631fcec44a082b0b02595310dcb8707b248c74605dd1431f5690e8232f602dfde795f51a3b8a2274fa9a5702e8b4074ed1548cadad6ce5319fbdcb72b35313b5919971f1e53b64de0fdf2aacd4f4cb8f037990a34c865adb7cddbd05c8b2494bec30c7ca38433988228ba50aa396e7b86839db361b66d6bc450b80f8528197a4fc9f0be32020dbe0861f082d10ef1da384603ca2646bd8db1e95ad4cdd1638995bc0caf9cc008b0acd1d27b92181fec6f538bcddb086bdfbbefd876a0781e284eb17615a48287da953e177f86492e094edd665e26e7633c2d1192a350b0810df9d00c8b86fb536afe95886ecbb9ada35d8a77981287434bdf71bab77d17d2b16b19228b80025f77f4e407c156d70fc0c008ecc6dd89fe2adc5e1d78fc5cbb9d584f09a2f33174d43d6c82c1bac347ef52d8a68199652a22d69724bc16373582ec00529b4ccd626b5b20d4dcec09642407d7cda977b3436a8c4403c22303d2d44f1d05a8b300d610081c208004394a73fb4fe609305d4989be3b49dde716f41f4249d9407cab449a88443db6e64213493ab4944522d3e942d9a2c476b146544d6f310d488076d86a6f6641c84c0ff8b4704a45f3f1829ccb31fc945e7c807bc229b599ea1b876e33740e6b055395c975a310554d9fc43eb79655c28605318dcbae8d1b44c9dd41f3181154dcb7db56aa075f4817f75d8971a0fd132a1bd739336fef5a5059776444e0baefe61520c72cf93c69951e3a1e1e64e0e919c1697b2aab621ab6889938e73fe05dbf970e8aaee144c295f34abd6d3f84562aacc88750b90123ee9fba7e9e150641ce1970116294b549512535e25b1e183e4295557b430e5627efa4e3f40b4f274a6082589d31da58260125b8aa7a38f8bb8008bb7977bb9dd963b0f8e40a6d120cac11945ddf40db415e701fa0a4bdd5250191d4aaaa19eb214189b25eeb9b7ffb46827ac2c38a877c555808eea572eed2d3a28b9c402f3b0dcedbfd75ee3f2a27d234f907c1d2503c078b21521828d3bec3d45fd3d482df8dff0809524c0f5cd5d23abc83e5b67d3cc7444e5d2124d8ad5d96f6d38cd3be6db5b13f01ed765d3454958e005b84f2cd0cb2ceec47b154ecd2ff8c6d906ba334fcbe241253eca4a13b4e2466ffc61336835fc35f9de9f796f823f896cfeb06b53d1d629036cd9b99b7e45146b131756589c84eb752c9e63329670dc8927c38645b466a3d9f1fe4773316e09ed55812a7a5df56540dba948bf9916df43b078f6f238401052eb3d711f2ffbf9f750316344dc2dc0434e77865b0902ec08b4aaf35ce1f597d1235e3b29c57cd8f7cef7359ca4fe03f4879e6630f9c2475fce0a4b8c39e9f7e76a791c204d978c99f91a025d92e6d2e262ceecd680a8d3c9735567f20a6928ca42227ad874abea85d65f6ce5ed2f455e3a6c743fb0cc51347e686756f490aaace56e2ec2cf5a399c15087a7b9fedbbf345808a2ff97a6653cf4bbbc2e77204ac8429f305694f979626ca072ccac7d50aac7fcdc1f0ef21e61779eb7ee54a3a08584f2003103468c61e8013575fbd1a9e4b74331200a2470476c47184fea51d69ac932c1fa32f5e4b0fa294a665aac45734a10104de4e975deae91dd5205190050fd3ccd93b4b9fbb457a2a0f3ff47d8de73b7d94db36649b2470c2c46f185d05530012c63b537cf952c236fbd9ed62827d8291fe977121d191b56142e4b8fd55d00f0468fcc26b2bed5c49dae5557e1f054d992ef2ddc4457645fab15f5936681843128d0efaa2ade4ea119445a82c454a07a0123ac63ff42a7bff1b2cf999b50a4b48a0a1b0c8973e5a60a3653c71373bc261626811110951badc867c371851cd6a4fbc3c4663b74d217037531bf262880cf54032cbe77956eabeeaf2362d32ab82f03ce8061b54c395e9c61be383c334e503bfe029549a9a43e977c09d514fccec17f48d138a6e1e654bfbbeaf04f33c36feeb15e05133a06c918acf79da3727f91193600f51a5e17e7d0a1a5a82a0294796e4aff27e1cf47e333fdd74f48353d41a14821df2a567105977a0cd7d370f974d1d82749da345210af32bea83678f6cc4f373ed3ecf88136bb6c179863a3845350ff1b4f2467a2c9cadf7fb69df7773e4a10fe1694f061c2182f3f31719e2c4785243a630419eef07697ae9222db6e3c535614952bb0f1bcb6821ae814713561f905c28368a19cdfd6192437c9065c487f23fc4731b2b3fe817de145dc59e116bb4052878ef886778190a2ffdb56194463fab7572f102f5aebc8bc9b19966b13eb75e2347917d03e55e7c604627c9bcea0b5ab9f4d3170d7bb07ff71d5ea6bd5aa23e1840edc2461500f4e8f48d01b04017158a910f1958d4378588b3b06a0e226725dffe2fb4dfb93a0afc65101610a8ff5e9104bd56fdd33095d33ecf16d2737a57b223fd3079ae3da3d89c377a20c919903c1affd0d64d920b4b47ff70cab2bc2fab7b6ef9e06a3cfa0a95b5c552f7756d5c14de8e2d2318cd80ad3f9f64dc42af1996f9b55e9232d3325dfeb8b4a50aa6143a41b2b8e290c7c28920df9156fe3ebab6e847ea451316175349bfa6f38ee30953e869d800892d5cf507fb1b73654a8d5647cff4452596b440ef0554d80d111a1834dbc094392bf559263c1ef44a4e931ac92605a4bd4d3066f32d95f944aa402b21fc49a68b9ecd7071933d4353e465c7540094fe6ec7bdec45da37deba7edda562e63d87620f4af92e92d7a703560a18167e7ea787ccdadd4a8d4b4f65a46558aebffaa04e70064a4149f62549dd09f60750052b0ef0df010841ac30b06398f6063e803aed8973aef536efdcce79ea9c360e58a87ef6827c8f4a3a128b34005ad01d2c8e3e4e11280ce28923a12e08e55a423bb5c00a3c2d11756384bdb61530ae52f270d54b1fb76a3cc5fd37caf025a420422ef0a0b74c0e2ae241aa9307139561313e2ddb41242ac2ca4696fa75556082dd22034965a5ba1c9bd2a22aa200bc3685e25daf37ded02b6ed604ae1bf4a12d8261b8b3f2d31e3ff4e69843ad4db3efd132e3eacedd0752a6557692a797d5ce6a5dbb346717500cd82ed2ced9dceb697bef04eb433b7b1025ade2122f4b2b9f7968447f63bdd9941c4f1a5edc21b1f515190850faf88aa1021f93b3fb8e935976768143faf3ad01696c7a52fd0d2ccc538fd84519b5b64536ff8bef1a6192cc7ee05dbbc2f0011645a428cb6d81c3bd8f51d2e16243e928e36902454f389a8e6e0400817fd2fca6880da8047ba60d115f1b08911b71a30e5f65bff96fe930cc2e8b172462e6b0400e0ff3fb62d23d650be5df464216672f5f633df69512959cd0390a591d69bc6c2617934ecf1c6f2ceaba66c28f1e070e8de112ad7e026646034089b86dcd195b7421dd2764dc84acd0875aed7bf60bba810b64ff02150645e76409efeb213b3b0fc6b9582ecb49d0e28fde6ab9992b5387e7b54ab42a0c86963930ea23d207c769ad95afb392bb6fedfb3d8449851ffa0c741e6309a87b902fbc88b6a45320f2ee2a2e568e0c80cd038b8a4f0ae15c818dc9f70d1dde19ccdbd91cb38de55c78fb77f4ddba051920051fb621d45884684024150ae3b53de16ba3d7bea95d0f2af1437778acf25ba4e1f38c601483ed5520354df8016d5e7eb3501d51d470521703f0177f6bcd26b94215b5029cfd0cb1592d65024331a74b1ada3305a624921de33b284a23d3f0dfd56ed6cb105a2e9d733350ea9b31a07ae38cb6fa9af99a8c25ba04985966cf45b83fbe427c9f66fc587d6ea40a310804e8e6198411d0d2b638788aba8736735d256ef443a77b881c2efb73cd0638351f1c779c741a912ce7cee664330bc538cb63bdabe68aac6182bf0315c99901844837c073dc1c30f16e965ede43926f369747534f6ad72c7253cb44f218d412aff56171874d944d3e0af735309758c1fbdfa5024efe2fc71ec0bd5b7b7a159def4cbed7719e6e05b14573efa9172bd04604c9eebf45f82861c5f416c3dc687136ba7c92006283176d111dadeed0320509c37ebc893de2d897ee4e37c49bd5e65c4fcd0f8a859c3f1f6f827aa80c7f08bd0ae2af2d6625ee47030df7a03eac19fd31d5b4ef0d3df7e8aff2e98011ab1bdf54bf057b03bd42dad2448a75384963ead9c67d6d7b253c9cd8d1e375fb8fc9a6b90d5275370f4a64680a69554b9e0e52f5ab9811a51714169c8fa5b623c51fc7083627cd0ea6476fbd93a5e295b8b810759cfc9e0e0fa42a642eef795f28802008a505ef54f2fb4b58e5c96266b7debee2cc67b06945ef4d05c8021ae9dc78a39e022f16da6cdc559f42ddf75c28586e9758e38216b2e002fb956f8a8a2a3ecb26df3b4e4c7977f2345a31be0d798a5142f09baa66b01e855b4188bf88453bc69bb9a2c33156da74ed4b1ee442d3ef43e186499626a7f4bd7646fe448b34f5a0b8466ea548ffe874dc0a2b5714f0618431ebedc6fa628bf334713545d1371d0ee983288a11bebcc0b0cf2eb46cff30df4e0068fee64d52694c35c714cd0b2203f528b1e67cddd63ae1d9103b94efbf4b39bdd3eceef1039aa92bab73bbeebce2343d974053fcf8ee5a450dec29ee0a3dbfb1eadee133cd36b2ef458f745bafb3dc231dbe36afce1abe9162beba0f15f30e5f0b64a9af523c99eebe188af416ec3d67d383bd63fc93518fdcc11634d239eb9a5e9ddb6d4fc6c3f25d14714f1af2ae40ca85b5a140cff1c4e24164324a7aacaed102d786abddd7b56de5b219f6691e2d29bdb0fef2d3ac11d1f9e160b34600d08e5be4865c2e6ab4c3287be073316e3801fdae4606ca470747cb63ddcdbd29eb809c7777698929cb1c3d99ddc39359901369c6cbb50c3bfe0a3fc74a6ac5c26fa425fd560bb86ddda9aded72f91fa0039eecd60729967c92df002f6220a86efba1449228061ed7f44de58fe337adaf2c8b89b4da673792ccc50292a89108756e24edeee15be0c4911326b6ea5fb2c527a554b2d56e05c3898618ea2ab2da23f63d53e0ea8f8efc1721cbfb694e71271918e040c83d822318aec57ffcd3bcefe211b3fbc51868b758f93223ac4c8e9ecf03ce03431b7ec314f768681d6255ecbfd5c9f15c6de2b26161b883c23357a80165509e769d1c87123e856ba23868ee055b2249afaf23917d1f83aa7c4150f8a993d48f8ee38b34175a6d4ec233460439aaa8c0e0f4dcacc48893b333f2dfcc2098b693b9d4835520c48b45c1b2365777c4ab81758556429e69d6fee4850086e25148cf42e41b79928309fae91e09a913ef6aebd19f20b5c35944e505873eaaa8716d53250116a3e3397189204c953ae657c20dd1547e051a1c3c302fa49f51087bbfc163cfebcf4f28ce174afe7bb1206eca8e3299b25845e848b2e69a598b21db98ff4572cd0973d43bbd6ece24e789cc7d02ebcfb9ad409df7bf83da140003ed3268026195d8c20b6678ba7f35a0ff5b0c98e0bb27d979aee1c3f5c556babbeba9be5dceba4f1030604e4e404a4dd232f3ab6183fd47da312aa02f99535debb154838dda7e9827cd54868f8a28d6d8b413f802d35153bea2e91d5cd19460f227325c8ddf4febfa3f7701eee2d5d177d85acbce070d321432b1e3103f74abeb4297a939f41193aaa141969c31bd5e5db4d31afde306af6c654d12bfd32a3062d04fac3d9800a4dd5ba455829e5677f08af15dc8c12321813954bbfa5913c53fb97689f8778795af48a913d52ebd1fe485bcbaadb2ff0183fd55337d25e388ea895ef9ec62c93d5f235c1dc02cf44321ec7bea60f91c475956df4ec773d295c660334acdc115d0fba4b79fe6da20e87dcc9c87783ab1d0172962817638c7107182b7393e62776cd69a59e4620465bd84989ebd8b5d35615ea2a9e9d9da527c0c3d35b9608ac0d35490f283bcc495c3bef871b4a6a8a020d21485caa58f4da48266b8c66a19c6b40129ad9dcd1c301804110b614a4c71524b0bc5750fefde6ed92057ab5fba669b17bc944bbb2b296a0df6a7c9a30e38103b1a2623a5610b9da9cfd03ff3b2aa8bf646ed992b03d3b01765a07a853947c7e6140cc3150117b2b5f7e60671f1128181656315fac7a230e1389619f5b2eb95ffd2e7319d688760ff08dbb6cfe4bd550139ab3a70c22575c360eb2886e33cd35038ee0279b900375369ac7094a27323a7b50495a0a4c7a1556de086c1533baf5aae68af6d2d17743e9822b63c8100b46ec7bf3debad6aedcc302d55cab11298eaad47ff16896c6eab8e589286544d680264dd0810d941d2c59ccc2898e6249ce72edf140793ea8628a1383f5c339247f2c0d629284e8559315d682278abedcd434751585dd206ecae9f9b41d82e401ad37e697ecf0f2b8f9dd10c0004673fc9b545082b9b8655112500431fd2f58c210e0772a9e4c4c242fef7bdcb498fcf86f6f15915eb2e5543fa973e75fb6ea8ebe1cd2e237ce991aa70d195c6f8f6f46ec10a54d55cb1fca647ed5ce559ffdd894bb6e7ae88b05f2e7cca0ddb6ceb6c04ef31cbc65fc97a8c4ae98a576a6767e043fd823c0ded30544899733da9fab80e945765c26351857abc8fb6404d9ce66815d23bf8e91d9a55a428598318cf2b1f533d40b646122211bcefd1c9a897e5ddcc47bba5e6a1f9886cb217e8fffe424ff0ec6b55ee8eacd2a3e6b3e611c122c5e3ce8a6338ad1453bf1a602fb4ba678c37746ed98c5ffcc4813d088f4f375c1bf4217399a19742cb1f430bf0c216a056087a930d4a289657a527d9bc48e9ad0f52114a82a186a9a764bfdedd13241cffe900205e71439966a5059f312df6eb876daae9979d59056e0aeb55aeeff17ad3fbc2af3ba0aee9f949e2ffdb313c75d9433dd085d4ea019f2d68e7d1e25eaaea7de14649839896ad919c1a4ec1a6cc2595e6b254351ab544ce9ec18f369a30196097cfdb490f9a272f526e74983aaceef7d83e9e68fde8d70d75400bd177f0ecffea4bd5653cb77ffc822a96d20d615f74cbd62cb8d960acdd2314b296f355f4ced0f0f860d233ff6342cac951f8fff7ede77a2a457820be894a59f2df72e572f2911fc4668f7ffd65e73113e6dd0248cd2c48705debdb0ee5a4f2e7ace99695a81222ed54395b308ba4f59276a47d610c7d6a1bc53e47152c1b5cd3e9ae76380dabe758f2ea3805d2fef42c178babe33d76565abef5fc41d41af2af70d18212546f893e5f697595caf932bb7c689c2a07e0e81d05b17e720c6a86a5ce8509d149a2e75025348b7dbb55b5b4dfe4af377ea9cec66d64e2852a054909a806d331cc972a6424893f70a1a4b3189516e697239518f0e14c5b1098bb3e39185ab3cc86fb83a01d2e9d87d5564803c40d2df03474fc00d7360e8022ed37f4c1c8ff5273af5c94fb81b4d7af9bc219686691e8ddaff9ac696c3c52d787e8d814795f0f1e41b4f70c289e601b62a9002ebd5eb63549261d3d4c74e8a652ca24851c7081b666dd04a094f0eca21e7b7cd43f1d92329a8bfd6bceedc1daa2539f716c6b4c97649f67d09ee6539d892030bb57858a9a4da8cfa904c08107d8cc3d2d3ae0b3cb9aa06e1f356eaabfba21a2b8edff3c826093fb6c8623d090f0e43577b326229b0a751bd222ca76bb594ad7293c2406daba8f5e28b7b2f687f3ab912ec7c0338ab9a75871b0b74cf7763de687375a690828447cd4f05ac00ddf7d826f5e4a91304737f29c176ed1298aaa3742fc09f9afe7bad4773d975f81cb432b0f74ed6e30151448b8f4f5e9479e3081148edcd63fcffd00ae82adad346744356de6664a40e48a39ac9711e017a5cb563c32a0897607bd396ffdc1d28923c21d70f5afaed56a19aeb595dd783a2c57c4ab38e86b668a327114b5494738650a694abfa3ee484ac235ec671f2d8b7f4d169342d980f9ff22a8af52bffc72997818b5489df276c7e05be1bb449e242407614c92fc034722a99823f2165037820f64e150e645ee5449e9cbb7594e693579726be048d7290c7f7ae7302029f27c5e4a9397c2276a13ee7781623bf9399569c4fa26981e1e803706ce27abcc8b130740e7dda6d60276097ae7f6424711ab26a78ccd7469fde425858dd7a365af936785cc95ea797a0a83a78d01d90504a896fa7803cbb6704680bcd9dc576a112d8722cb93d97a0d64728a4069b239aab7fcbf2b7e825eb03818913f3a7c22818439f5da11697a8b635eadba6b6f1e2cb30b68d4935230bf89d84b8e2718f8cc63df8ea135c0b6a139ab55e374b4d81a9c1c4f23484b45f7925c934dfa0a129f3d52730c63d98c6ff4d9223e9ad3e0da729f7d5cf1f6b2539d3164bc43c834bd71f171cde80812e6f3893b665e1f7df3f72bcc5ebfb07f18fc9e1f5f0e4b84a23e51e902206e4e8666bdf84e7b7947883d176d79daebe5a2fb91314a5e52ba419ee73997e708eb3108eb4bac655230c77fc9f81d8d9aa8a4c333eb34a3ddf0bbb65f3168bdc731c3a935278694d9a8aeee8d62c3a1846b1f9786f287bdb7b02d46ba5fa84f6b06398091d2062845e1b532718d7444d730a0529f7b0c5059f67472fa8f5b27fc3e94a94debfd687fae52d79fc9342861460354bc2470397074072c7cc4dc7d2f6f4b44404c90d44947f754fb25023194bed0049d669d205ddd320bdf1fd21db0aa2d27643b8bb965878a5e38bd05c6c4b6f3eb6a1f245454d5c0b3cd24d0967f4039f462afc25b5c1d857a60495f63e915522f38617e9ada9fffdc5d636bed5ad7edc990b1719a754dd5c8b90094b26a9e33cafee5a050cbeb4606dcd46c62aba95de4039d8bae5c44c155daf06bdfb96405276cc14d9d5843f11d564338c39e1a86182a6fb125b33db7db088a0961b623c120dd24fe68efe3210b7ad05a9a58efe8bc6e5195c4a0ae08e658ab23acb32f12ae3e48bb04972b80155269f24bae3302172ec8663c40683ccb720236b969233cc9c634228df9d17acb38853e404da86904a06cf50d212678bfe406847ca371c9118b1c4f693d79825b5d15cd1e7f8b5b199c37b032422bc4b97b6beed4fbc71a6ee53d72a158849457e91523057e58cd83b2ad353ba2d3ea346522cd0afbea4637271470c66265ba8e0ec4cfe5e6e494736511e5a300381e67d273bfad0b69b21e3db45b0d5470a273e19ded863709f0bab49369bbb164b2bf89386c52800cadca8149324f90bea48f417caf2aadaf663e208ebc148e31d98eb81c5fefed5d5b0201beb80366c0a8321dbe4de6db9a3fcc77de422df40a682769a72a35f22a49356bcaaad7a760c4e636b7283371a77eee292f8e8688b8100e3ca49c38cf3ba012286ef8fe55b2e008080595b7236ded3babc4d57f2874e5c7e5f8a7d7eadc7672dfed868990feaff704ebb809a0e1d11d9e2931d26ef54d02438fd0f5be63c578eab79883ecdf31cd80f80a86789c88f812252eaeae94f7bbe5046bc21d73c4d468e07175e2d0c66518dbd5821f61a6ad140fd2ff1ce6f53dd358d6dbf2d4324f763b263d4f190cee598bb22bcc7332f1cf20e6393d78765a561f145ec931755adabec433bca47b685a14842807b9cba7ab9f0a89f46bb9e0f188b05d4bad961fcc967636676a7b66e9c0825e1b55711cd90f64bfc3f3dba8e77bcfdf9bc6d099429ade396b294d45b5699ef4bf10d9000cd47a79a300f52744724de49c84e5cf39cd01466f79dd225dff4c5b314a1219f086a1f1b8f896a13cb532f1d6947e7e19ca0dcff6600a5b78a65fbcdfded7cef64007aaa21a01907b8a43ce4f69e79748ce0d8657e9201fbfef526fcdacffd47218ac97cdc64830446065d759fe3528c487680fbe9da83f34f0af75cac0ac9de3a9facc287e1b31353054c5bec0b590c0e692239231b4f3a3d1efb14ef0cdc7b97234b5d29fe58e53532ebb7745ab62c42e348028ba07f30f93c6f3d10ef8f07b4c51a6f6a85e05e47505cd714af1e667126b5a8584fb640ab8d92061f147da114f6ddb6c57e0e9f5158564a99522459abd22547161bbfdef72949afa89bbfec629ed243e4b72ff9ac8efa6fe342955791220f53bf405c7a3a9769f557ef468cb3cb50aeb929595c7770dcf3e3cb3919abc687ad2cf01ce6edfce1fefb42ed426aaafa8ec9b2b56114f91c59b168e9f44cf81bec5e14ecab248c5b7a1aecdb30ab48d01fbd47e458d80b1fcbc0d237a94ddd3a25420fcafb358db20ac135a337cc4ea5cf82a9cc32fb7dd1c643460bfc6a6a66b6ac834d1d14d2569f25c3b72c1efe825004c0af0162cbb628a8f79518f3173e02666bb5fa8983b56b80970d29cd8987f34268f999c91b3d361f0879ad93c2e81b2f298504f43c99ccfe5f22924cc9928f648bc51c47b23889d6827e954f70db1eb0ab240d8aca77e60e93defa616f5038d1f5b9e8bf7ecbc4d9bd5352247a68d53cc114d3dad1914fdf54bf5e45ed03768146ead859d1e3e0d4afc438de441cdd2cc203a74372907d976dabee4672adcea4f3540aa649ad3a546de10ef87bc1291c6772c3ab13ba4783bcca6c365c7e80e851d389a6a3a8a75ebc6fb9a2dc3661d7796ab75fb5fad5b758f368153c9883a67d6479a0e08b5979b4de5281e4c326b3b2af0b31da4bfd89c733a0413a50f1a6468d7303927ca01378996660b4dcc616c61a8ccd9b434ff10cda3c6862516cc202fc43d006c82139b726d82ea15ac8baea7f4c00eb1976dcd23335661bb92065aaa1afef03a5b988bee85943f653cce8615b64f0b2f8ca58a1d3cfb01e68a1594876c73cf29ae7320abc15d9bee8969dc46b19c1e819609be8aa39fdf166189bcc9c9494bd16a1aa750595beb727c8b54d269f6cd0282e47bcba935e9d47231d6e2d87b4fda4299732979bff9faa2709d032f48bb04710a552ad4b6be083a442fe357ed9a73dac8339da787ef1ddfb3fa4877be80a6e8c57e37681861c4282b363b68339ea2c8dd5c615e55df5b121824eae90bd13391eec8f02f8785d35d5815302e73ff643a20e564b7f3ad43a7c12e688aab9c3bbcfd088c4d5d29aca5a769cec4bb4afd46a349ba1b64ea6e996c1743c0a9549f3dd5f253a70a1f5f49e54ce1e74254500473639e2a62d3d80d82d9acdfe66f75436217a0bbff7bb7f20f867ac1b45bdcc81c9d6fea5c186a0a210a02194f7b93ba60444e1176a482270d11aa89b4a33d1ab7980987fa3005f8b871a621d5539f5dfefc8e6846e85516beafcc9d65e39ad956f383699d33f807e61bb154c25aa0bb77a407e90463b44dff4978eac23f6f587084bee0941b718039c9a391607a2751171820dc422aa2c950e2ec012577e497b0aa4c9799326db2773752968f270bc9009d55a34eb9ef47e1aa0e2751296712c9063ec2074cbfa99b9c6241d67a86cfd9da546fcdc7ac088837430caadc1350d1ece755a367de48b263a6374483dca6bde179aba0cdd86548388fa89ceec95a8047614d9314ee8522ce52c8d953a90de790bcd89cc693c43aa9484456125784a43a99169048c5992755de21e815cb5de386d59960be8e40a11e33ec7aac81df0725f99edef311b5e989fed71104166d5474ede83c8688715099a58fc715beb588f26cb48678965d8228018bf136c7641e19278a1ab5c01f0163617ee6d7af35565dcdf1881b60c9e967b6592aa7de5052922e54f22a9ead42e013177cddc9d169149104abbc32dc1b74cb9bdbfe98e514a5091a23f13def5e57bd80dcd39bd797811fe3c1722e82dc3220d1a9f3ecc9f0509f585d9367a85b950151bce36f252ed22be42a976ebe92af15cfe76eed5b51bd6daf4de58091a8fc1212be2243684fa8042e181837f1864fd9821611220eb0ae5e87c98b824c2b9f7fb51cc6dd459a12589fc6bb79ac6192dfb84cb63adfd2e99b2f9be7c116b1e069d9d42d3c2160b4992dffa8e04b0c54574e096054829c27fdc13ec429e55e28566a621964bc36686b007b8ef4e593f626b0039f28dd23ad15cabb8bf1fb3594c372181fcb6183d6d6c92c562495fdf0818fa0768179f23dc3b76937e6f56176b68afae28b23605bd643f3673fe10ce8c8eed20aa113a8289931b6b81b43cfccdff77a1b09b571cc1974c6640b357d3e9433a3cfa1ab92b9f4dc2629eab15418c585542dde8ae84b2eec6e9295f3cfb9a4558199eb0fac3894eb6d06d35715e2990ad26b5f7cd81a251e7d3c9ff3f0029f43d0a59169dc0454b617542812f6ded444ff845f0865cc2c35aa13fbde6bd05461001a1561fb8c55dc5a5236d4accf528eef1161c2e034f1b37dc59b3ee0f538bba1b841b12fdc1e2484faa5ce25ff7d7808cd9a1e233586d059ac1d8bde49528836b9a339e80b5f8ff7f22aa4c232bab782d812f03bb0600b2c9a9abe9dcb2123f9ac2fcec3bdaef4b52adaa63eb3107cccc32a1ceed5c2ed20e9298694a11a4c2b644423836c04559880f9098647dd9f6d4e9864e7ee6761445b8a2d7829b79c19490962e381ad64b0d7a48c9eccc363988928a225df087e9fc138633a3a81857c21ff551af4f12f92c4405bc11feb9523aee769e6932b4d1728bd045f565c07806204839074c25b1616049b7325db7cafe0a8a0fd9801b918ec502c06b9469f9aec449e7e0a8cbd5c2f1ec3bf57bc899c6834acc3e3e756c163a52d08f84436fed857e05fb0fc91733100d1c882bca7b3842cbea44577094bc2aaa16facafa3200df4ca57ae40af0e29c2fb86232c49153e4139c124b9508624e3643d0b556919fcbb9a36b8a11f1f19f200d30eadb8e0bcf1f345ce0c869e997957397fcde8c40aa4780cc32985a3d77290737c726fdf47e0b60db03447da26641ca6b2e26cae0a494d760e8f9081440907d951ea6002ec724e268f061db791d35a81efdae1fcfe8e66c27cca46586547a5d4a00570910e8c2bfc2cbc91d20e40b54b8636547ff636db563dbe8b96bad14b0cb563cc95f786313c25b6f9cd04656f15ff0a6b63837579756511ec749249925e95c399c649eb835e258c6f2ea9882b6422d060e4f4b3643061d3e7883b098c8a50b6e8f00f82a54605665fc2073421e885585044689e94337c87b0120117e2e995a3fed49082c16d1ffad7f0dfc7bc13d44e5940f9b525591108d581a4a9eba7fecab21991dd92414572d5ce3051beb8b8601a0db054baa0f81bb0ee973d50951da82be4b486ef1e8d717d202580374da8ea1088521dc07806876ea23f38fe0fd2a1204a152f3cb5df876657eb2a4fd5dd4bb2792b243b566710a8531a9e58511d2e3317a6b920f081976be97ff2c0d6923fe1943f98e9cfd0101818aa9b3055aca338618b188d569547ad7f350904fe7300e28f2e65994e9218a5798ee5d2d1a457e7c7c67144998144be656308bc843f179166aaab423d83eb6ef1338405a560fec93f8a40a745e9841dd51b0d0ba47ddceb66a1b933fbebc8d22fb1591cece69ba847691116a68c7a50411f7ed23b4a0b55dbae08489089772382cd7e89eacb6af2c5c1512e27b356c00b499b3e1f1ab44a2f27dcd4827cddbfd5348856c1a8e28c7bc1ee2fce55082bc77a238ce2f2012ce0d938dc2ca0210d6246aa42262d0e829e958be78a801731e7ecdc12e7a0db054e9740219fd987b0d4febbdb3031a517d3d8b364b6167d0fd4a5c6cd3cce7a09025b21808514df371ebc8e9fcd2435d7db246a549a1e0aad0df3743ad3a6ba9b8954035cf676fda06f0b29d2892a65f05af6fe298587e24c9fbee98dba800fd0975c9b9d48bcb7e8480edc2e3147e44b4161d76e5afd076ddaa1e0ae7979485d0d1f78c0066dfc177643c345f6ddda9888a2148d956db4e634f8f67500c9618209ac8ae9951d609811e89e7cdd37e8f8b6b7c7e17ed02bc9e27ef5ddf7f964ac66532e95030dcdd9272f1e191ea15f6dac530d4c399c8bf2d23546f525d926d33f416abc622969025b4af326089685ffdd3f342a6c60e6cf9a9975cc1d6fb3f6026d675936b7f13c67237ea7695db38427135eac33d7f122df0297a5200ce4d531c2c82d7dc74b91a3805119a7c0751a3aa1bb23c3aecb97cb1215f495735589289e18eb9fa136f8f7cb532839be6de5478dc0a44aee2efd0fabbdd83c3e1245fc7d59b8acbb35f4af4655ebc914c07cc7d657d42f54bf47af66bb6269a2b045e6e0ff12a8bc55fa26884b36dcfafe6136f387a3d3771cdcd90b19ea84db4086eb9c20da7b11f3e935be95cc71be5da992a1206e515e95c2bc5dcaa68956e8c338f51fc948407c8708524cf22cca06c9fbf585c950b8690aa6ff2c9bb3097f507f5586c609068a6b30f15a15467ea4fe720443cce7eb4179efc72cec12de705cd66dd591ab65454f3d2c2fde3730d81a0d76164c71ad1f2757163b9cfc7213ce9ceea921f446f48a2dea71600c7071d985c3a8818d93377b822f73268b915906a84309f1b7be20d2071640e68b34bc06e069189f329c0ef75e4ff8f6fcf4dfdbb7b0d44243af518ec7f25f5f6ad3d0bfc9c01ac8918c9d3866d94de30990e946937942f8e0ae5df03825f26f4213fd847d78e7a9c42869fa450d4beab8e48f53fd69c9bb2e6bf034553fc3abd36c4e8db2dde38be5f90f8c27034696c92dfded28d8bd94a377dfbd23a3c9a8a6b1b5e57319d54bd6f072febff550b3ce0270c23f57d15a1b8ec157ed4bc63631eab22f84f58b17dc08c662fb7f2de6761cc106030452838bc9b8cfad363141e7c7c063d6b4a54e4461af233cb9105973a75ea685b0cb495962e1a468bb483aae3fd0be7624d5b6aa4cad9b4f989a2bc1ebb64d3a5539652b1aff393cca3781fb76f66da82106c384e577514c402a540c424558f08c77432004022d8af77387886964a1f77157e454893366cd2e3e82e57a9d97701d02cd28dcbf84f3dc65f51b9234e703efc8db9bff74fd0f72338afa7b60c0e3ba4fa2be2827560c12c091a9c463e24bb3bc5e4ac3fc35e38f86d68972ffedaf0fac87132afee4c398e2067ab3ade99fdd8f172b0af348daaa67dce4b95be95532e06d69a6a6b2d2dc03b067188230a5d0a617c53f12de902f8020822e18bc6a305f6f3285d42dea20c9a74149b7a79e6aecf4b979b946e7fb1096b0b5c6ffd4d2ec1664cd8bc4f173e57c3bf79478be17a734f852e38eddb67b849843f3e114a5513c378bdca3f25689ba90b0e4971be776c498df7b47d848b87cc7b28dba7c7a8dfdc1e78381aa232f08794cb5b7d5307c1615a3a23a982ea3148c9c539631f548ad59dc92dbeee4b1550f07103a507537e0c9663fd75903887944b5e601e30819d3d0c783a128feb2a620b19199471f5dd812959ceceeb44a5d480581afd21af1b67536470e9d535f9f0cc15d16f58bf9aebd4ab3dce4b579745cb2f89ba42861cd50988cea2cdee54fe7a02e3ea6bd19b5f3905b7c9709bae3cedbedd1c4c1f4f206b85905d9349939fde19214b6feac8bb702eecc64597118d9143107a34013593d88f64b880adefad0ab6dd4916b4951ea6f936b5d25d7c5005b019b91d37b1d01db19a522fda7b19c4dd0770934835c776e466fe52ad88b9a2c3adb6483aed744770185aaab6778c500284fce29b49c227c2b45e260b333c50c1c7f51a7f36e2a13b9f9828b37b2aec7b10e78c8d9fb267d568861150ba4a6e7da4188d9fdaf36e226d5069a0fac223d2e2f211101de8fb9d217f25eb68fd576c2daf8964792c9331357c4cab8372287b002a8546c56c36aa546a97baae48c814d03b1aa8636e9626aa4be20f186a6d26779e4800b9125a37ad6a2cabe98b38078b47f781185d20a351d3b53780451355f4cc40b239902682caf655309f9e48e06034c7ce9628962c9ae90ad91024c1a3552e5f800380e14211266982e32a67318add62cfdb61f1af88eeaaff41494121bd42d0701d2507d83e715acf82e32a019c83fae051b4360a9efb39b4dc6a5afa6dcd060482ce529a0bfcc2168f8134cbbc289982e6df9d235f4cdb1125561f5c8638a48dca03d0578e12482d5b00e7ff454e9488da04960cb2e76e63882d70b3cd7f0a994f80d9cc7ac2c7efaaf6b69692a1dc1a26093e42d9e4328bcec484d0b7b92988ffb30d5d12ff1b70ea60a849ff9be7bd81e5f75f89362d4eca46f0d45baa2cdf5d4c5a4158ae1d478cda4b74f03388e9529d192839d436d1ecc5b5c36ad573dae2a3bbcfccbac16837add749ba957d4fde43a901d58ead8ffe1e8aee1971d494d17595ec86efd2ae15198d4b4a1c25005116ead4f57b0d9033facc19ce8ce2d2d7a243af2c3b6656d397a35f75fceb3dbf8a77bbe942612f9c5e30d37fca51d1454a1fcd7da9ba356f545573621c6f8a666eaceffff414b8cfa5be21823de488e6c3b683b5a5034489937538b5c04dc388d9376e7f107a797e5be5d8373f26a005223cfe2c4d435ba01e7fae674f69d2267862f8e7f35810ce69ff88cf725daed203ad1d792c70a0354e72b57ba5010f0aa17ef0de1c0c2fe2e70827181476e318b83fe40cd9a64275109111a91ba5427492aa7add02326e2dc34105cf39a1e80421bfae89932d97216544f9019f2e51b26e02d6163d42f2f5ca25cb48582544fae17453bf81187e28d8b23ae449dfd305a7056f830d61dcb39c175cbe3cca8238f692b5385a2ee7c7cbed6bc45abd11616eb129409be3095263bb0816ab23ab711000829486749c3bfb8b4f6883885c9745803b5cc52b1d67e6b945fcd358c550d1a71a700ccd40105f3ec347829ccecaef746ac44eae69c8040d5154a9d255a481bb9559161d818b003e8ece0ea46daa19cf7a4087d6c0e7488ed1de2ba7396afccd520e0e51b16d425cfd87a4bfdaa0950c7410853f62fbc1b3b612f52583568f30298ddaac11a64c3c5bd145fd22e909d03fdd068db4ed8aa4042b65949b2d2ac43fc5aa1f3d40bd5c6196988b38b5d819f036a69773adb56220ae561797648145a0031c89680a019e7d85c9053b0c92235b8dc45660105b3b6537aec4104bdd887d8d1a549697d43df5dba5e9f84b25a6354021bb08205147a934cd034c23373d67f008604766a77911890a0f75484289695ca99f7ef7aa18b5acd1f0b43445214ccf5a182e017680f7abc68483c3259c6f9087f02ac32d809b95a5eca0bd5021ce97d0243dc716dacdb11b87b710ff395ec56bc05233042af0e413437aafb1ef987077ada7644025243ed153cf70bfee40fd1e78af84bf671aaa449bf383a15c76862e1dc31928ff077e4536c922ed7f020dca97563bf56be149bc2fabb5fd00c83c72b5424240d7c3ed7b6379bd884cfbbeba5563f3c05e0b076bd019b800e0cbe30061ab2eaa51c98739a579bb264e897f14eec40079774bc54d7c79e0f99e6fe1650d8195ef7486051f8a63c0a08d55cdca457b4f7c625fa22af590525087f64dbc289e9044a6322a964d28d695e2c6b8eb8ea31faafbadf3076c7657561dfe9847a6f48d6d1b0b941c1086cb620baa832bba006f50e578db34dc3d4df2769032c036104102707b2f08eb20299fe7c67963a691a1c32c76db31fbd11b7450013c86b0f685c3a6337ceebe1466b8349c8655cf28ddf2f6e19c60fc870283144ef1b66d268c718b0fca873151cde9ece44251d789155711065c7180a79834613e53277a58a2254d2f335b008d8b77c8360f0eeb21df046071673ab427166d5b177b046c3221d172abad3f6309ffcdae09fb8382bf5b5c8ddd6fe1fe0b477bbbc8c1f00b80c97db6f9990c9ec9083a89c092deaa15e34bcdf56db771135b62851ffd9affa17008e0fe2f69555268e591634f3fb69004a2accc2430537fa9cb2c43ed286408ab4edf8a25c3c2ff25a2c88989fcf436ef55036adb947a6573a6d72673d2016c55d0225365099084df3c7c4651ea1e4407cfa5fd249979b946f52f9d38318b6fed8fb21ddf026cacaf5a91edda380f290a97ea5e31b6e7d61f3484bc09c40806b1825a21bcfcd81d31ab6734a9da2dbbd6803c5e4b52b9566533270953f6b2484f6d304f553dcee214c90b2a87e30d72ca8bd52a1ab7729cdea3ceda64833feef469896918baa3cef2ff1904a2bbccf6f2441960499a340e6e53f912895735cb9e7d0d215f78929e1f0105c1faa6a44db7b531a754cd527530dbfcb7ed459fc3f33cc9bec4a39d51d268d619bcbc866b0da5576856bfea2a50054e1cc3ea794a2002e25100ae231b530f5d0399e96bed9be5ba1768d225c9d5294df702e3a8724741ff12497b093fc0787220af37195883fd835e60b09df25f67c46fe398b9b89c778cc8b2fd20c05a51b061fda00eb8af9aa52adc0d051323711b699b818a0d90495f2ee0820523adeb23e9a797e616dd924a6ab95acbdf1cebc2469536c28eab11cc1611d174235a8c8f5149a9f18f7cd9043598750ff37e54a42fc2205a69b67a517d4b4e7a8adcca98280634b92715b0cc62a0adff14497c99492a3c35149b640385f084ddd0de8194604fbee9e5040171ca374833dbffdb7b0c8195da9949ce9e211de75fe95150a1ab2b0e8bad0fec74261e6d3d50630aae9893bbe5714e6cb86a38b6370798e3a3a1fd8fae3548981da5ce277114583544a7d883f246e6a630c8451f22c8d5792a114a1e3faf4ae8819e0008c5980c366fe829392905b2e1028509aa91bab3c07e2f68082342d6abc458b8830f26562c7486532b8b74f7aaf642426c79a1799a3737431e9d96de6e7f9d659eb9d2f3ac3e91785add63c9e399f9c4b01ea9418b1a555c8f94bd7f3bfd1f65428d7f5dc7ec5228098fd3426057f0b0f7ec8d05d60f9d62d2aba543546d99710166caea936c51819fb0fee2f6f84ff69d197dd3002c0e6599ad1af4ee4985b0d8717a05d1e90607d642619cb63ae73662d978a4bbed07c73995a1fd91b6c985e0ef072314de552aa01ea1586b61405f90b227788d8b2327b4514f5f63bdf7dba5bf75245de12785731f02712bcf944b1c3b1002278fe92855d5f3e251329bde24da75cff1e1818e0a7f7666778b96d4c7ea91be878273868d3e8f2e0560304261168540f7998cfa6a3bff0c62295d624f8f7bb68f5d3830a9b1c946ff03f3f5748d1ed41cce0e6622d80a2b1ce942f19f2df883ca6ee64341cbfda44aada231462e17712ab776f4316198a317f54c550462b54e2271f18e4e74c0f3beef928b9feb8f2ddbaf95a54524f5b0ecc36417bfdce9ba2e249bdca758b648c1d41d6a504818058e5abd115d3b67e3e4881d3ce1428e8b05f494f18970e1ccad9489868e4081dad88479b3ef68bfc9c3e3cee98a648486b4ccda3a93963be9937e1967b76fa580fb8629839c2ae5d78d3c832bc0abf4a9cf7df6b23446b9055852214445f27dddf754759239aaa84a9245e75967919794c85e0f64deb6817ec9c659dc9dcb68b2994d8fbf060d2bd704ce785d9205980a7b38d92e1f05b5dcf5e50c70ab124f5cb0fd6ab792568903b593609eff04e3f81df31fafab67af163e64c6b742665ea87223d84027ad080a64a3315c36093635513d06d0b8a5400ccc758d0a3c1b2b6a4e3276a00a75e6cfd9e0cc4ba845944ed51ec39cd43d4dba3a7412abe54e333c1285a95a086e84fa0244f33bbf831dc7c55708f2c527d87c6b8ff0aeb9e6c143b82bcf933690ab55d235778028cb943f95bde3fc548b2a976075064b926364f636d61b195b5b42d1b9df983d5280795653d6f2572e96728ded369d4f4e372ab7cad2d4136a177a48270b780769b5300ce1ee9876e89d6e34f1f1115f714a33069f00360a36531de2b21f98bd5b038c01ea1f78d7c197de602a8eb15f7eeb3fed8c175b5a250607f4269f06e85ac6c31dda70bd7ed94cdce986ac78a826549370c0bd22e17202e877581bf205e8ea206d5d18502dd8bf77ca17632b81f60175819615d2b026c2fca6f3f55d19732be37c436b148e328f2a1138292092534db82e5fdc56a9c601aed7fc568e870356e2499389188674b46ede986ab5bc7ce11c07c2094f1f5c8875e33962f7d1520f5a9e31a588813855c606c825ee8d34325de8042f6df417c494999fe26c046573801d41d2ea612945580376196a8f046041b933b5874377cd443da72eb0f6f15798b6839a97a70201bcca5eba7b6205fb28ffe9f21cbab6afb14acad7bcca04c42e401fa191321fb04fe3ba132cb9d27695a21cd17207a2a64791981bf103f3fa24f2fb9b590e2cbedfafa2c45b1c35dfe534eae7dab869cba2fd6fa42d37307a70ecf8691eec1f79adc2f837fc6d154d45543f68b16de30e630d65598df6f24dd009f8afebf16ebfc6e5366faa8b2a87ca7f6dea94ceabc75acc06c1f6158168a3a60b2b994cc33de28593327f6f0305838569a5fbe43f9bd05e3155c67b9766e799d8c66434ca1734da1b12c0564451c3f3c3cd1f418c27d2e759cbb656791a9b3d3eb31c71b60569c50ecccf47d5741688016e2bffd16a6dfb98b5fc36b4845a77055fb1e781ee11bba20279ec481c21c874c9b28f323a8107ab8eb3ed0e2c5df83cc420c3132f2926e01f41403dc8f6ca6265b18c2cdfdf246bd93f29a57b3776e981f7443f12daa86dcf62b3f92f8a8cf1ece48ba9de48522773018fd8d96809d9295baf3c080d41cca1be84492be2cef651eb158e2c2a22e53a0d74914328f3caa3e5d4c11f20a380e46ee384cae141f4904ecf023d4677744aacba4ef25cf612fb3dc485ecdc2fa709b5af3ebaf7fabd67b92159bbdb3521a2349b8e0aafa214923cf285c83983c26be9efd11827ca35722775975c4a09e41f0294b9668b4dcf2b305a5a3f3bc7c02bb8eb17bd584fea7d9ebab100a7ffe78911bef058cfc2cc889f5af0cf38494e1fd2f64eb109c9f4ed0e8bad0973327b2c264a494e102fa0bad6279cd51ea30465673e1c501eb35c2838af21835014a6f3f3e4f4319de8b689477fc32b0684f40983a8c6ecc97eda0f495761586cc32f6677ae04793b19347d638a996726d3ac65fa76d3c6916da17fedc8c826b54208c7ce8be55ae0ce711796e3c4d9cf0d654cd22a3aa8e84831a3dbabfff7a02116d0f64c8d0d2dd7a61ac7a56a712735935be01348bab515e30d93f1b32bc73fecd35ce641faf30c5444109c8bb7d3a880f20bed24f41fac44b114ddba4832eab4245bbc06a6b5438e3cca001879ddc83faf61976b80f7d84074bbf2d8a590e5df2c0db5006a1da5ba9bcb147ef9d80517229d292b6031c093fb189556f15b7915158253dd384da1054664eb7a6146390a455ece37a2bff9e8ed011b847cc866e29962c73b2f3d55fd68776ad9b8829447e56381def7354190894a1c836f082bd7013cf8950c429aa4558933fd79407acccf849501af0046ac4f567e8db2267e2f1ded6b4c74316e926ba7f8a5863007fa1ed1aa0673f1d6d92d174a9ddaa43dcda2acb0ac28074c269ed4e7f537439478aae1afada226f987b3672192a2730ce198943e7a1491f75ac56367d3e6adc86bc557a6f078ea14417177786f690bb8be11e6c135a54970c799c1bf3bf8e5fa8b13a983a92ed7f59182a89333d497c6d909073c166aaf760eb9ec2bef900655ebeeb0e042dd0af83093418ecdcefccc3eef87002d7286b5cffc69b3ee5e1428bd2aed39e67231271709bea2783fe59c7411d4e5d83587c42523ae2444913ec9ee1f9b945bc2c27fba0171b34706eab81151a024dea83bc046eae09a3f00441f2a6c7d55a7de8dce3490b7e99125c34afb30ade89864112e7ad37851b20801202100d45f7bd65166c039180a6c75f94e4fbd0048086ab2c04f3a55f3b61d09e0d411fc72f7a4beddfb89b37c71928f3abaee48a171dec9392eb10703357e436c3a1892da68d8129efb5de82d1203f634927ddfee0f491f3c896e1ad07fc6c66a41e2a71b138b89654a4305984881526af6ef191b07ba1e20f1ce4a100701d40389cd1fb6c26bb2d99ae5b009991a7bcfafb80a21d8095f1c80ddd660e2cef2bfa72a6588921b7d69b0dad369b6149b985b09870f4e370d24437526425d6a65db2f8a2b3e384c74a973d3374a79051ed7375436266ffe67c7d52f6846abf322bd32a1f463707e315202b744d7661a35c331e5c4f485bebc42d604e7059936cad791fa6416a9ea708c902b350f3f568212bbd17dea8255d689dfa44a026a6ac145e76b54ec1771fecfae3a0a8eb6d28574bc729b8b87c06c9849cd45d56eec0fe61580f9b6b769ccd715513eedde9c9ce7117cf0bea9835b7c44099755fb9bbb46306ab0e8ddde6181c44132944fcefa632604ad415d662343f5d29cd7f33f62835766395b295dbe10c160b421953fb15d99f7be7c510f3cc379c4d42cab59748e1c12fef8fd2e1f42008f4ff171f29aa7d62dfaacb7c2ff388ee53d9ce56052edddd39b0436170631e0b35e95357eab218dfff037baee4fc69e816f2d5b17a631b4a8daa4b15eb9c5b594f6df9cbc52616bdc45f97531a24d13f1d58f2ff96ae409153e831865c0e79cd8964aecb52d3f7fd423a3a99f05b6fbff8516ac040954c0a9a987699d2effb1a84432399bc2d1a618bc477213760517502c42c1682ac59acad4c52807f2335632f621e29579e1a368ae69598d028544d2988c56cb9408ab002989a0f22e0dedc89262ed50baf0d1cf8a4c10395abff8e122cde40595683f3701823f8dd5a37c56261a2bd8836489a77e73d655c4b79fce8ff26e36ffbb4e350b67c0948be19029a602a7ffd9fe004a781d12cec150a26e342e78047f859e61bf1e78c5581e662a0e3b298e662a5cdd6a76d2cc56e9df5702d10414d4ab9bad97d76ef94c50a671d2afecc7e7578688a2bfe754cdb1c1ca98af24023be73f93d2d544a8cb2dd2d3f332107d069cbf75872469859f89d09438757dae141a0ffbe6dbbe87abf4fc45ec3cee21ccb6962812f88f203e8abc423410899e404adbc718635b23d846f0bbe4f0321c420c574d11357b4284ef145cbc7bcc3f27ad2b5e7b4003e8cb9914ca6ee9ce01e56556991bf9591d904ed224116d7e0b72f1e1892b95ffb38c52eb86088c9db2c2099e0a83a55ae75fd46258f06ddc699eaba30a87495c7ab121e2ea2eeb2d42e6f455526f7303054c602a1c733f35b0639c98c97b1911ddc583ccece9e37b47b5f0b8037a7eff1242330f963a2f462ed469bf6a7f3b9224131cae86582bbb8de5cc3daae1d2910cb00f8ec1eb3ffeed8e1705af57129f8a7a057ff53147ac2024059194ecf62e1048aa24322985df64867f0b95bc517b2eb099ed91212faec50285bf1dfe95af0955b7d1136eaeb18c9bced914fc4caf7601a5fd3ee0101e8a5aa80e8fe7ea8a45932c4ea2e5af9d58d6eeeb001f945434f240b2472ee7ad7d783a044a20ea3a670a2820abb3475041d88d407bdaa136ef08a6709931819ab7541549f33a2ac7bef477bcd147738b02af305807ab3eb8c3dcdcdaad5b859083e7af9406894c8a77ceede09ec17a6eb496b879b42010d841440ce79a5c79ee0e57003a67bf927ac2061c5ddb044a4786e371bdc9cb736434c76d945aa1632475ba6ca535865cd034cd52dc5f3288a11f4c0ea1ca6c10794b4fa6cb818a8071c5c4f82c09925a8c58e429931b13380a98faa247bfbe1b09c8a9e52a427c7e8f33590415f2011cd6f341a305678663100bf43e47fc3c99311542dd28fa689b875d11395c9faae4453badbacc81572d3c82512aa95ecb75a28bc2837c4c32ef107e2700511da2b6064654639cfcdd243274347d66102ac410820f3f6e4d30c91d268a0e620606bc3e0d3bec9e8dc5a29d16c4e009caba592698d4e110cd8f69a1fffb5689041c6aa0cc271fab3fb3a0ea12a229567466f2c1f1d5b81e7b3e8af4650a20112cb8a1e61a6d4c6ff6ae023f63324a922fa045ce5cf46c332f554086b2a738e6ae068ba9b69c332d5459b70c3da164ca8e0a9b10cf0152399711e82e1addfc5def94b06b6b176322bafd9940926ca88d60bc6d7f58cb573783c9e56bfe4fd62cc7c4b6f8ef361ebb0d91cbe7e2c53ab21e791ac14a413755b673349024e7db08351769ab8fc7b5b48a3aa1909745817b2b30d8938c69acfd11b1b3053e4dad0397a0d6eb1ee940a73450f75d40be4d2c93b223e08fa7bf33aa56f1df2a9e4b91abb2339126054bfbbff8bd75d205851994832c69385b8e79539343cb1d538282b1d583ac492bc320b5adcc7d8489d2fff9accd75785353e47273037636e27ffe58d6400d3f23d4962b243affa628fc34fd74ed42645716e8ab1aac165ec63c71ed972117bd85d700e3b432337e1d3f003d001e5092c8cb8cd97d22590505f6cf309c5ea87ea162a558ea9326ce5b71bdbe3c220f824f737af7363c3246f5ab30da8013cee5e868d9b5e8d62c25896f26f1d655e8c37d4ed884e29d5b42df2e65ee92f20a9dae4ddb0a022ce37e2b55ed3687f2ebe1c2852452609041b182f6eddd7e00c59c82da92f96377d909e4c4bfc4eebb4b180e0d6c6579ce8d8896e1b24ea69bc0064016f3958a258387ebf7f7a7c456085fe0832e8c3869c08b946181c0809370c0cf856a335edce7be26f660943c02e4b5ef6f647b174c08f874a13001037b47bc830ff8b0aba4a85ef931313951fe2c70605651fc6a6c56322077726522519b41879146a70df3e2a498ef8ee9ae3fc01affaad3fbafe23b30f9046b6274d2a8d45c98702c15bdedcd6d39dc4423c82f33994910679db42000996435b1a3f46e4aa77a32ed280e70a7432597f5bea6e3c178cc6fe4df81f39e06acf4ebe3b3bd50ffd5df7fdc1675161793eee31b242147951882e2d88bfafdf81b63450938e29d8fcfb24f2d0633c53e624cf249f8374900cd6f9bc77f1aca47d0489d15dd2b125e7e71676aef3491c1c8593e4f7cdac19887776ea20b4210516797c21280303ea10fa28388c07405982f534afd981bf93967c0a2fab6c2a9333613c048129b419ed575e986207c62843807f025d5d9f2875091357bc1e97601834f9651a2a28195ceb364b2361e57ba169339119808ed1d718ec300b82673491428dfe1759535fa6fd0ca34274535247a72f7429db5b71ab305c0c8d8c547237eb0b088169c03415c465382bf638051c26f02fe8ca0f6873cca24d3d3ae023a91fa11bc03fbf32504dd5ef40a25a9e8829d0194409029293c008a2828c05722bb1f3e17e256c985a6ad0043f6a8ae078342da81cea443e882ba61151b7e32605c69bb2970fd19eccb4def68feb7d4e74520cd2e5b65f8ae991c9b9ecf10db63bbf12f735b4cff7ebb01c45e1f7a4d92a682d99086cbee5e7ae20557975866bc4baff63b61d2d0df75cc95f97c0584efbc69d897dfa384396794db26639c767c547d74f6727322f46edb8983fe09b2a62cca3b132e2415d66f121fdd7e3b4a1dad34e9a6cd5a2e8b3b48f6812a6028626a5ed88fde0ee1e765709f223767df642721c23201c96f6cc0e4d5635c9ead45004c41f4c9377c0302ab1f64db4301741b437b0bb4b229c6a4d0f8e6177ab410ac972cc81ebd9cc6543cbbd7e62502d609ccc4838fb907e23f3bd0b54afd1dac522fa1831e3caa748e6a7509b04cacb36e489f3f62864d1c1ac27f170ab768deac425fbf1519bd5051cd63560b00cb4bcebe3fc1fbc9fa4725aac8ed4d0e2300b42d9ae659dd7ac409b81ecf3c6abdddaf0dc47cf4d05a2588ceb29b3c12ab5aa42d99f5bc6f03421f871f80ea8c145cf81a795245eeb8293d64b07f0e529c1873b3351d624474ba585eed316b40328a5823fc34f7b816689e42666017bcc298d9f44eb68e1cd95db92813df7a54756fbbc6585d3ba35365997c0a93752e234064ccb44476798d0e040b1dfe22f75f92a22f2706c509c0c992c18556db6bbd56165f225745ca076a093db963b2129bba90dec84f81a006b02aa2d9873709ab728264f45079a98b3fe71c2a83d543ed690cb76d38b3a0c52f7c60dac28671c82d86ade928635ce1a7fab6fb5196baef5606f38be893634af4810c43b9e57f589b215ca05b6942ddfc0ec8a76790c12c719af44869fe695dbe4669dd98bc6b9f9aa0009e72ed874e7f7c4618b3bda9a8035e35f471dd96742c6560b8b8cfa9f72d9eee22e6ce0064a5bf6b61e43f18a795779670810da08e32ec6ee2daf5095496ba4a039a2a7ce009d1a5070f03b1524bbfa334bda524688b63cc93fcb98e99d13f11886bd08994c79f38e4d773ff112c65edfc5e4995dc70af13b38c2fae102be0dd883249f6782b1488cd7ee6c34647a8468c5ae05c3f4ae2ef6f858eb43630fffc577aff10a8bd6ea08d6284bce97ca46b3c85c352d24cb71956c977172d83e25776b52884e81ed16c91fb1f674f152264ca2b5d68303441216a3cac22fa9438ec046ff7c2fb860acf6f8d31b04ca868b6083a2898f68f5d6019d8148c3bedf3b59bcfb080c360d11c5f52cb3dd5b5043591d549fb6b3d8c49938db7d4bc7d9b20655b5e792b72f97e4a284cd0335f1c8c8ae7c72faafeb4ffe9fb6d44dd73204f4b86c3ecc35492539a30a1de236bed0104209b6c38991b34803d3dd852449e6a83d439e0b9b52b5469591dcf6d652d250f6f00425c4ef3b12a9e411299cafd760b67775d270e85be15dda8c29c672e10624f6b8a3653864fd44b1fa715dfa42544e006e5f5bff087ed06ea2dd430deb7df358dbe84e203357f0ab423aacfbefc4001b6b25c0c83c8d20f781108e9d45d87166efd650c3b958f5e0f6de78d211e1a5c79c996bccf666166a5d645359012530166ab05bcec3b8a862152ae35e53a6e691886ca0fca581d17fa574e6ff57e230719fbd6946dcdb546cf10dcff5bb6bf00ffd4c18e490dd849ada274dfcc30ce726ee5f46fd1b276a5065c7f41b486084f459a373a0b5ffd379f8f5c8c77307c6f70591ed4c1dd66d734403429e3c9d89b6891aa67b3080e8576cedc36af50e891ee64a3ae3d1d2c4e338fd0703f1659a47754d72b758f5f091c1c50a5e5fd74cbea30611a7c6c039a8766e3f3bcad551b87d91610206a7ce35b37aa0ea901b703b804f93a6c91865006ff33bbc2d8e3c8fc794021ef7899f6ec4f78992884849b25ed0e10c59e406af89b9689d236318d37563bbbf5b36f7473b3069762728a9d19849cc38844b5cc00d276d41337b4709175eb426358d85597ee8cda5dcc9bf1898d6f3d782ff4130567ad7facd4d9a66238f4dec6dcce1bd48c20d87abde3ef710943adffef38fdbcd0b90c8d9decea52b10daa042bd5e126f2d968a2f082a126bc54985503f9312687a0e474df1dd83a7ff66815245b4692ed532d15dc5e992d6241794e67c8f52cf57d20663eb2bc0e6c5e2102eeceffa66545fe50ed72325349cc0b0848f492435b49519bf6be707e48503bad1e22b3ef62260eef9349e003c49df4a1f5b9fc5cecbfb95fb163096c0a3c98d67745fed776526282a35dad7773eb12de08835fcf6d3e09ee64b1a19a5e096c978d2e0900f268fbcc1acb440347139d4db50166668e3ff18daccc94c0ad4354a60394bcbf1dcebcf8af486688cd847d842fb88b084ac19f45c190fe289222e0dcf78cd0c22978c0929af108f13c66dcffc1f72c8774ae2fa342f7026a088dd9098b3ed925b6ebb4bb818ccedb722a464b58734fc9bbfe3cd6cb759d58e3831a94470eb87d1b830fcc61ada97ce1049bc3fd099078fddb50ef4676869aece57287c90e6cf5744c833083e556ecf57b6e24c4527ea0e9c59e5bcb309356fe116d19a0809c882bb317ebdb69709ade440313da74d07af0a4fb80c924da8ba74d83d0f64ba186f0f30a0b023ca55af57bca56c4120379c2fd5c44c92ce853aa2d1a825dcef3021b20e29ea1dd1bca2f3259d8187c364153874092eb9f28bcf41ec40627c3ecd5af09f7b6f09ff49250ae1e5d7d69b82a493061007680386b76011f060c32a68315f4c6ff0ea79d77be8edbec722444aaaa3f8a5d77d0e3b97cf27d33c65485684b32e69b9d4b742aa0fb490fa926cc3314275887dd73a409f8a95b8aa3aedab63565c7f9cf0a0d3af3791fb1f3d8936b500f14acc249e9abe3038fdc5f16dbf590589e7675c0211a01311fe0eae1b6971527373df06574a539585264ca296d787597b655c94a5f431c1819052878acd47656053a7e3c6fe1e9f0a7387b154b2b835aa0acbde79f786616e608cddc33b4d5a92a2650e491e7119bb7cea3ead85cb4eb9352e941911dce9b3ae76c8a2043dadaea6d2848ecd95789506c3c8089b275a9d3c2efc42d371bf137fcc99372d18b9ab5f39e76b9580b35772f14515e70d3ac529ec578f13b593b05f3250ac1b2e70f01d904cacd39170cbd8201e2d04ca94ac50fae990adb9f7fa130180ba060a3ff6743992477bcfdb0c32b6090134ceef586cbb01c0606920f6673b0cc52ac2d7e5c4db71aae2ec7b970b4184c286c45f9d67e7c2cd793d34c7798ed8610fca6e6538d9ae94531745512f3b7ad291f1d9dacecaa555e8b459d8a72678c58d36e921c9c59b7d984800202fbd5b84f052d3212a49d4df555a01096b49799875625b178485ac20241d9c291358c911c42ce85243ac8f6666d70294015cbed8f3c6d5c500ebbab396ce620cd9abfc9e43daa32b6fdd8c8b32a53d7790a8f2d05aafde4336030456b1dad6cc1aae985eb9cb86bfd3c5d56daf4298d9cca29e8165fe4359c91c92381b30eae2727ec86613f8b6130853637c0f1f58fb75ed90857c9dd0a1a5a53d98d34c87a65bbbe33664deebaecc3752d6d1f7410ca899d8e5739a8fa28d28b908af647258d72dd200d78b431b359adb94503ec5e927901159384c7f98b280a610dcbc4e2a9bd6d1a9f81f59abfbfeb05cd06bc493a5969f96dd862eb56820eeadb11622e8635835ea12864d56ef78f1bbe552078490654058275c3566a27b9bb175584e746c15e4164895b26f69051586389204f9f12fe361e5b17d7203b43e38010533abf703d8c48e3feaf74fab6f97f6fbc906528baa76ce517e33b56d150552417d7ac58766312998ef11b43203e684a42e89408baf0921b68dba204a8f5eb2b16d566da6460306a681d373d36c2c4d740209de66264d9d5e9f11445ff8ef67eaef50ebdb8ecd4fc9626322e43554b1eba7b6b803267d706b4b0e0a70e8a546436ae35a282612b214d51f54b1d2778c570e7403389a25ab1be58bb7924ee187f85b7dd18ab9658bbbec3026b036cf90349297f645e9e5d0be3a67efc00af6db5b74d6baba0a055f7ece048241b0fb33af375b4d64940fa4a2e9b2012938687e66a014a891bbcd025a93e8ef5ef6ea56220994045f122e65bc6b744645d026186b2c0a0ed7abaef81b6059d5a64c27b7551262b1ed9b50e3e11d33e2ecaf95afc9c24d1af0f76c7fd0bc28e9362bf282d306d5ade0ea8bff375cd45f761978ba7f50cc2feb026d0eca3a0d69fecc1aeed91ae89c2a2df5297ab309c97bcb239dca962eed3f621eec8abae3e271ef9bbbf751fc94d724677677b20f53c5dae5d6b3862bab336b231abae2471bd9833f6f231e1c6c629dc60681c90823b2deff236e92d061e4290bc47fd845021f6e41572762a23f965cc92d79176175b11355dc0fcdd6a4165ef24dfa5c03fb80edb14cc2dbb1b333d2ecbbb5789db82cdf1422ee0662a817a20cef0526c23eb5f26d08b547de78dfed0e323d52647ffb87939101137eef2de0c8983fd353455921c3b01c157557e10fcb4584c836c6c7ad9f4e3efd538ce4b03b0bfaa5e055767abf708d28bfc673a0efef57e02f5793fcadbc744b093431cb147643a7d1756bc9146f68b92517c5cb1dafa40c30bbac091eba3023c87dc038782593d660c78596077c4b9dff5e8a249d7891e9cb0a55e32046ebb2cbcff209b2e14b894de5eb32b9b11f52b3fff3b9d8e5e9d6ed54ab4da74f1f5d451985166d44def619e4e067543572e41fc11f3fcedb05a00dcfd5c46a8faf2596f980bf0dad5f88870aa017bbbb2783b689d1d003c21aa831ff6c5b9212e97f9a57be3ba111ebed29b4fb074fa1ee68e724b2e57d06b959bb53ed6cd374671f41f3d36b5dd0f554be2d16a5641f8eeb87b39fa6d7d60c33ccc75e2a071c8d2880a7efc595cb2afdeab2c7a1034e6bb135f954782f37cc9e89995aa35d3fc7fc256bff13b8aab3db7c7dc3b2180c24a14b83a7e83dad57576af9b6d4f78e644b8ab6b3095addaeee781f177f582d1954584f2bcf736e83ac320093d94151781abdcf49b9899acb20657358e08d2ae35e73109e1a18abe387e6833bef9280ac411cbfb8a94c36fefc520a1c649607b90dd7c1bc5e551a488092cf75c64081cd53d6dce1e5aae763bdd7be53fe0e2c3edf904fee8253791461239c53ad9d708a68f09576f2f1c34b68f4bb3952847478767b090d156ef54febc94869cf646cbb97bec08fc6a674f800afce5e0ed169fdb53736979caa69d9c1fab63449ee59a64501cd1d073aa18bd248aded80c89aa8b5649cd01c7d12b968e80c9e106dfc263add9e2724200a59b5158cbd20832f4c18829b8c13c9910f4d35c592311de6891cd26e1768c6b75f6ec43730f4050f6e728d36f410cc38020d9e8ed195ea4d7590bed9bce7d517071c7adfabbb93e8a0091f79b84de97bc7b618a4454adf5666796f11ee553b4d1fb654c5688844ae0b72615ca6848a7b7db7c3755c3c9836fb0597ab522ba24e96c26f8d1b4c903d0610c1046c5ff77e47d92cb6f25f50f5d7239b45ad35817723c86b4e14c18f39683fd8310f2bc9b2ea94611738e2afe74eebd90988d6f74d5f379d75fee9d4228f155506a54eda513309f2167a5ab5dd3f523b6851fe5224408e670b64bb8c48cc1a58fb5f96f48bde6b1c9a0d51fff756cd56e0f651a475133e7d2dd2faaac2e3f71fa45d425bd58f0a9e81ef701d5fbcb3b17042f7cd645fcadc8ee7e2c0cadf602386ab25c02a0d981d36406439f912c5d0abaff8efad09b2eaab7fa864aa6d5a91ff25d80fa32e78c5373542662521c1492488655a77ec5743ddf85af63492f09eac99a6ec49fb3507bc2ba8b1685185ca1dc968bee283340cd2e0b13fc7d9dd76c6642b27a13867363266c280b4d1792c43067b387d5a1c0aac7aeff978348c812c90dc0cfb18bd8764b4f8797c0a7689464df1f2727a95dccf5b23c1c2279bd5c506bf8bceb9f62b721faeeee1599e8a618627fdca7e2274bcafec36950b23029e8ce3829934e6aa13649d0fa3a0775c2408e520ae22f56ed5143c0199944f0ef46200d11ee0b1b590bb318587eea5eaf599850a7ffa992e68a8ea8a1b4a15679662390528c803e6c8a2bf7a66e60b38b436c9a41745c285796e70c0c1aed1c25b7753d4e2d792d077e6b435b1e3812e9f2bc377eaeaff448128891d512577f7c3e9751d205be54f7c7b45ec22746c8bf3501bc2414488cb570b52dae6bd3cb2eb0888a972703202c9104ca6f8e3f36ed84e3c9d9d6f0db5f85113ec1924b18a7a661e795fd6bd5cfc61b90cda70048152c6abc9091c1ec7d93cab0763e31e387799d77da8ad005a53b2f9879592a0bb53904f9f2959e0e112249c42e420a734420d5e0579068814e47e3edfe47391321475a1e496818419faae6cc07553df5334c54614e64fce938697f7c3087980385fbaf4715830aeea12ec77d1767c9df49c4d2f4198de173b0c76b752d535725b901edd3f3e08adb564a481d5ada44bb8f036793d998d2988f8a81bc5f4ba9da67ecee4da7e52f0ae5caa238a9c47646e93851249315bc9b094190d8a1d1d0671ce44c55e3f2a33c4114c352efb0957c40d69411730ee58567a21c6b356cb3676c1d75a6cfd1ccdd5a6b9b59a4af38be31b18404a4c90ede8ced1f29f8a3d10fdd809993e78dd4209cd5656209c94645e9d9251ae0698a779b09660ca16c951a3b669b7e03fce0712b6051a8f251c458a0e53fd10f354faa527190912eba20872496da7f4d312e2c9ac48557094ae9312471938188df3897c94eccb028f993669f497b030f1b8f333ba1d54761620487df40b1ab251e0a0e3dcdc07e560b16d8682bcc0e39eb8dc5357777466459dc0acea4299f4d7eb05a11b850a2932be4439b0b63edf1193537fc80090e486c77b69b361d551076d5fec095b0941f5841679da4d088f59501024073f2bae303fc7f0b89380e44c4a21d18b6511879fbda9cd7c7e956435f265adce7584a9ecf9f06c3b7e5415c88adc8f270a62249d9a9ed296d8088d23da3ed8a990868b924c1c6a48c89c15bdae2592fbba75e1bf222243a58896d9f67e3e89590a27cae9e28b4c54ae2d9b6bcce1d85e9908f9170f268c00c7fc4e1e87a82391c214bd1fbbd9bec843e49e3a3fbc553af26f938b6780c8a650163aadcde3e38c5e744656ed49522f7601c6b51dec8578efe42c00d22906ac790ba9f759fe4a30924a9cef3965203cdeeb3188b6ae332c715328fa6a6c2c350028a2ee6c4c6bdbbb76fe2221bcf568968d179ed7bd23f2952746264c2892d25a613bad2ad725461bec71aa0c6d52381624ff8c9a007b2737074b7bf6fdea37a8083d10b1ae583e14393183394d934b51104ca73ee5a4dab7a3b62a8932e3f7525701792d3b07df103c3a6b4edf0a76123cf1fdb5f4817d1dd994b2063644b2cacbb18b0de377de912991eb14e18f535e3cb5ac3e6df30c6a17d5478f26e0b54264850d0d0a7161479f2f43c993977a7df6b51a45ef29ae2f0bf995cf31a5b42bc81bd18d4f21d3d8741a3b1dbff36d4d4d72eeb88cf2b54473ffbdeaf4dc340cf2bbfaa5991321b0df2dc93bde6235625e12bd829caf2d1af0517ee2c8d79ad59078cb44234b49cca25c145461ea29ca27bc4b05ff90bb80149ab3396b260fc41f54b5e33855d1813bc23e604010d82e7c6c084fd1ebe4ab0d96d5ed33cf3852b67f793e1eedb97fb5d114bcd25a2fa395777c7798a4d9d02eb116a297139e240bf243b2ae149d1014c1e9e5646db2fc5b307d06ea7a7d43a7f0ff9a7cf5a685cdf3db20504093fcd40c4d2d2160a3c8ed7603010388b6ed7a290938b287224246ab66dda70bcd579ffe753cc3f4cef3932ea608d885e765040d8c8c1c485bb0db9a82db18678077cfd1f8992062b8e3b1ec1783e71299bd0b5aa6f1d02e6cf7b904f7fa8ab8f1945ab9fe51d46f8b5db4d7049911bbb08caa062f6c05086eb46558fca7cd0a6833895f7cea4b6810b884de38e1937d7f6d498495ed283a46087afdba10509741b179d39d8bd0022b22b3ebce426ac00a4f378aa13b99028e342a815b03e2a9cc6ddf6757c152317f62cbb9a60e0a29b643f3cdf7d04e200dfea65707076847d5d763fc38d75861e8595de0fb9db056e3d40649210a88c78f64857ab963feb44766ec941959b96e381636498d4853604e8f3144720cdb248ee3e5da7acafd9aa6f77bcc3c2e1a405a9a3f442bf2e0c1b26933db4b1994340f0e885978e31efe67ce9069bd0a5b01bcbdfde63bdf6f7d54a87643429493bff961d8962051c099f675fb22f40ce21ac28219fd32b5c49c07b276502c60624938b5a90fbb7b4291e1b88fd6b423804f0469ca0c22deaf8429a247ebbd6e574dd4b9970868d0cc36d8470893a46e3d037d6c07b23fdcd70ffa6fa370c9c9286ceb0d88a60e7f553ae9b3303334d0d23163c3270b17074dffcdcb0c8616b562ad02ad4f95b8313a9d948bb1f52e04cef35f3c06df3eae1b6271589c3938bd24d6742b8f3dcd673e14d1add58a30cd5d9fb2a44567a54efa64940f65a4a8a25394a60c4fefdc2dabe6e0b9aaa6477c157d1772b309e0c1914cfa9218348f5263a8d7bf5888af3e5c5643011fe862e0f4ab7f17f036db642bfa86a41fcb696f1f7053f5ed0aa844107d0130ba99bc38ed0197b22dfad03594dc43b724bf68f7d1d38d51f1baebdc0786410397743c41d5653ea7267dcd0c77532dc851df028e93a23bdd1dde42e30c4c71ebd52b5eb905d45eb34a22ee977c2f6d2052ac4bbc60e5e9a1a72c7eac4a2994c688714be697b919a9dd54a889a5cf213d8f5a513094b176ecd675605b55912b8e2636c287af7b04b1721e81dcfb635eac44e91a6147a97d3d1f8a59a077c38b0ed5771fa18ffa3c8a85657e780b78bf853f7bf1a582d3eb053f8d444193e6d10c5a94b88af49c2f08a10b098cc4ee9322afe5030370e7e4aece6479b9e2d35b22ac2e74fb8b310e44e6bffde04cf5034cb131f791930304c665a9e8e78e562dea33ed76a92a26f555f7c0b9a47de5e45cbf99fce091b51a29b27e648e4891350b298d55bc1702a215f254238e088c6a403c4e23f841c9bb89c4c0da1d11b6cc86b05c555319a9f7a07aa8effb720cfbb299af3c4f79d380d30b961ee9caaaf052bebcdf313d68710e02747bae9e7577ddc55e7f1b6d5c8c14f3329ad628c830b645da09c64da9aee05123c08e544e926e586d6a0fdb1db640fe55cffb533493ad7a6db0a7fabcb600fd2e8ccefe8f096f7a775b6aa1748f04fe743d8d5463a5854a64e4056267b2ea5596f781bdd16777ca548cca02869d2fd4a1878c3e8b02c0d0726d622720d061d4c644abbd7b4007dedef4483974e90c414d1d1c3e4acb4738dffa99dbc0d62e38766e997102b2517262936dd586b56bd4a4b5f6197349aa98e0be4ab7f8c1e5b4ed711305f7450f8133d79a35ed84e59d4d1948221e65487c19deccc1a6f7532a4758e5aa99dae527b9c1d1553f964cd15d419a1ae347f1e3dd584253079213eba2aa831acab281ac8bcdead7755d0b3607eb5d0da4b7a28c8c1d505c74f940f961711a8fc48ff98cfd18abd8b4686fa7232372fcd0191cf4c207b6c9849f26ea9037f577e88a793d6f0b2fdeb2d2e79ebb7f1e32cddeadc5ebcd220b2ef9d39dced543931315c0bdc7d32fa6d99bbf2ca49a56303004695279ef60ec6ad659bef6c99aed5b1deb1e7c1b40a5b2a8e600be1da8235daa373269b2ddab7221b4e68576d04695d9100fc6a18465eab7bfc608477eeac2aece1c0ab1c9113e3dc97f0a3720193fcbe98698f492d4398d358ac0128152ce9ff5e308e79b0ee7e1db3835fbbdf98e51cda4956ecacdd8d5ae3266843c1039f8e93204b2c4b7a0d9fae1112789e938a28ad96642539f5f9e405b086ecc8d912e3f014dec00ff65dd118fe36f4fe07c0701bda9c45188858b003f006123f8e15b7944aaacbf061307b3a7d154978a7f775a497cc31f9ad351802e9397bc5254bd95d018a2a8d38e66b1646e5be4c7c0cb94c7c9c79adac737fdb0256bcdc4e8f201185f2c299f007e460a01df86440dc74377e4da15242ab73797b6c82dafd1e047b4e068d02f52a1c0b07414e96975889d35253653f1f00fd1b5955648ad6190b8f2532b1a5aabab2a427ef4fa86f87d0b843ec6861ba3236c4b02db45ec1a06fafd3fb97d43d527b95a29aaede92eb05b6720327f8e099ce722824d6c79ac8d6a464a36072a235942146d38fcb0e8b0c5dfca31c2ec4370b166fa27d8b04ef0fc8adfccd6bb0931bdfb49727b9211b6bbd5c755a027cc7ae8fd6433f5e4702a6746f09b71ec1cbb4742055f794cf077d88bbfc9e2b286aff23627a2350c9709e70f72450cdf5f0035604e614d341a7bb1c2d3083bf420745c5fffe8f3a36c1dad8290c1c9a811c37710c55f727eb5ad75d6109df99c28335458ce4677a83a058e534db7eb6770bc3f76744c56ea3baebdfd6871753b073a5d55bc6c1d22e180ed33fafdc24c19d3b3ead5f35535994f56277940f13680e7b49d800ad3249f458d523b2501bd006caef6e367c970ad08998f9b4f916025eeb6f65cb696438d8ed1f6ca552588d53c88e24e8477174e3d566c158174530934213396ec6b78d165c7e53637b316df54dace1b376a756d9730fe40bec9e950dcb9ed44600ae93b1eac111399d76cd58e6965b490085ec345c8974bab9a3f02bcf3f2715a8202d13b9ff94e33bc902fae7b62eee0839eb93e7b33eaf897f3b2543e8195686df85d5c884f58421af08b7dcf4152d5d29e9fb7461c0cc1d86457ee56509641ff7b595628bc803c6c4aa3cd950264afa56a0956281ba75a48da216c05cc688c850190107cc18dd1db541fca01f00f33d4aaa8c3d694dcb2e368e6fc4e4cfb62e37b0a8abd6c0278aeb1d7b106c0b5b41440e9e90875efb839719e508cb6a5cc4fce8729b47bb2a24c60d2b14765dc95151206f45b1fff83e4dcd5cbbf92ed8dab8a23ced23804fb11c5c9c4153194c58cdd3ce78098b0d5d6226bbbc172d5959266c68077535c6538bb28156e0d567ce5e499228160316a6adf0f3d09eca5edad65b21ba2ae0180114a589754c57a02127091da59659d87e5ae99afdddda863fd077eb473a279b96a5d067d31077fc3d76033d265bb5466ca358a8eb62e63b8ff94de2e5b1a67f7445c8fa1b899bf58a615145a4c0d37ca8649782a6d47ddb7faa37c49ecfc1a8fe2dc47ef011bd98a581ccf4b90052f023a72d6bf7bbddc17147f2f1361d74ff28f9760eadadb14bcb692fa71dca14f245fe633349919b1d17972a7f64e83ceec05da6ed68d2b85c14cd9fa2f5735dd3644f73391b91aa9e2c36def28cc428440ae25c09aef929994803e8e86ce3bd3e171d7a64e70898c4d6d64447f6625a83758b59fcf6d1719be1c9c4d9c25528bc778b1c9519447dbdae8a9809e2fbaa39339f4b90d91bb59cc70018af5d7e94d6ca7fe8c5bb5101d0a6ae1d24e9bc63b4235ca85e997b064d60fe59911f45dc1d525d98e5ef61d579fcc07844a69558db577db0c818b78c071bf5ef27a158072912bd841f56200a9fb1325dc7d3ae6a11e60aed21d927edabe7c81f0a5ca70a662577108334f22de9b27674f9e67614dff6a4eaf283f5b939636d917b33c218e1c294b6d91ed76dba94e60c655955668a38de7a62c770f2a4f21d62205d7da660cf5ddf64b362436aaa0c58dc86c5cc8cfebf99625a127fc90774adfe5b62488e14f0bf6973783df65a23093aa5e245352860386581c38c3da6a188bbce56f688990a4ebef40c54a908410ca3e682208c158e27c456932a73edb99587e3ff4c38fbc92b45e0587f2637006205755c11dd8423c94f75c363f3708ee31ff3cf9246b7cd25e35aaaf9a5a320dd909f8c6478b9e837e9d3ed9095cd407b163828a300285d623462480805d5ebffbb0ec984e45d754f35253f61b7e90106ef8a9051ad5de0a848af805bf65e21e6c5a12011f00250e470e5e15ea766c6464d6614256389dfb950711983f5189cfd89d9c3283f69ce922462cd975ff5790be4bb18fa05c8e48f7e8e1fe46e8b98a70b463e9f0096072c724875c809c25808f0e8a25a932dc79aa64a8cc85c948d93282cc3b250f3beacd14e5584306a09f4abad70b2c522cc12a8fa522b91046688bbb60a4f792144dd673d12651287855565b35568977afbdfd3c4f64d35e7c07de53ed753fa0e497855ad286ed72d0c58f8fa4aef998bd1ad1bb7591b7c5dd6607d6d5c06fd500a8ea164a948104c51cf6a65c9cf144807cd91fb7f1d21d09ac5648b607f9d9b5dd1a368ea3161ff629400af9f29f336a407eace61c52ab406141dfaafb577587eaf86aba34df6d98be6ac0a7b54124210c437bece52a62d633eb4eaef4125ae1b6a4eba98eabf7d306070d5a1cc5b706fba28950763f0f3f7a36f0cabbbea64c6abce292cb3c6702b62b8ed15302669535f363b07572d4295f9d3502b6cf73ff765126225b60398f477f64c11d6fb93e192761999ea9fd794853720448309019605df6f26ef097d00f0825bec1851d8376cd10ead00f9dfab124a0f3ca6cfaa48e10df715a3040df45c0ff31d54e7705e57cde66d32e3f8c712cb9c46c83a89a6900dc487b068c95e070bcc41465ef49f4716d4a1755cb3ea7b3540551f226d8bd4b85ba1230afb09b86f5d9cb22f3c45d6f4807f64e24e65a5b20be2da15c9f0117b9a30b5b9caab56f2728d54701567fa42cfe1ddc79275935fa703489944a6784e57f4e8b3b468698907c466a0e9d9643884c9a4738456e781b95e52d2994f6018cb8c7b14cb6105ff9e3497895583adf716819d182711e6df7d870592e1bc74ab684b2d474c6ab85615dd89d55dffb3ebe39790576ccd3d79485c0156fdc6086182befa347300ae0d4a2cd81a17d7566eb7edb3c43d3931b820b052a9f74428e46ca5fb702776497b0fe79200516d16a294a44c8448f549373be55c2e8b8e66ba85aac91c7d07f0ef1cdc18d3610e9b89f6ab61a1a16d31e165ed73644910ca888e93682cc60b215e41fc6f946f85285a043f17951f671851fd229bfbcbda48ea64f451b0aee72c8b021c0dcdf4c9a8640b4c229083e12d472630f6a41a1614c8856483702e344b6381e352ff93258efa965d83a1dcbb04aa27f9fbcfed4fb96020cf99b0540ad71b023ec18843289546eb9614a8eb20b1e08479a79e3b2c827e8ed47ef8cb31fb72b0e6b1d8019274ad6c18c0d877dcce30785f964998ccca0e1e9c6a10fba72ce744fb8f4762e39db2ae53d1a25a18c120fa2990e9e7bea823d04ff9d0af0a863e9799d84e4de94c582072dc277870463d7c8a9062d637c0ce3a377271f062957b00458954cf6ce228c6ee6326c5662e2cd4489de382d88d819dd107a4f19961aa0ae492baee325f262f95b9eacaff4e9fb02032ae409dad119483cf4725281a1de4489365072acb89f4642b314347ec9aaed7a435198a585540e6533e7fb37b44e7c2af015eadea77baaedbccb8c37fe9bfc9b2f3279ba11149c69302e2a609f3167c29f5826089dbd2da31300a4430a91fdc2a59b7fc2afc3ecd723bb2905b4ce0e03bff9f335dc09e45b7dcc4a2fa4cda2728007140facfb1fb9ccf7934d4bda8130a139bac59170bfbe2f27f55ef634d56a6f88586c234e66db3a5cfc857d149120ca9b10c8a57bdc03de4bc4c03a8e8b1f92d8bf555a55413e40618b453ea31395988f7177fe0005eee5f4c96563b2034f12d86871a11f4d1ae734e227fc80516040371e7cad7af732bb178bf1706de172ecba15d90fbdee1f07b31905afee5d2e3cae03d459e975379e721a8ba1eb9057dc15a861a9fa7dab33a4da445f3bd47f39ad053f1fbbf1437de45e0b63a8ff972e83b7f1cd2199a51a69129cdeb637079a749620ed0a9fc148ca3a4920966fc12b42a7d30a50c002a76ff2d07a2bb3d514b0059c1fe4bb26c115639b52d5524567056c3bc72704450775e1b0fe75460ca94a8502587bce6931f0af4369a8b07d1fc0188272bae9c38ea496535ce060fe215a92d53c333228d6cab56e35fe1da3244987a77823536db2ff80c51fee03021f7ecc8eac5fbf45fefaae624b3815c96b97a96d8658086657be72652eb602973394e66eea8b8ce5713448e415e19ab1cbd3decafd6ce9e03b7ba0e9a30561cc0805a62116177fb55454023d4c74f0bc07bd02321c3e04c729c5df2ad6f561cc0805a62116177fb55454023d4c74f0bc07bd02321c3e04c729c5df2ad6f5d4bc3260532b17732fd8e6f3f9cd82af9bdfe3da6b45467f059a2be9e8154a2833acc865b220487a3fcecf81056d1586c2391582760f49af69d54c7b18ec797d92869b880897f2820c9cf1de6709eea2a353009728acc5c915d1eea2a39411c9baf96e508af9521a082829746d806dcef1517d8950d8d065e6b7007058695104a3b480e831b86755d36b525c84477c16720f4b84edebd20472c0e31f9ed3735d3d3bea67c55fa327c3a500ba043bc4db62e0f2a606fff87ce88b4c3fb1dfb0c3872f5c81b246cb92baaf5b0abbc0728553c675688d4331c60006cd933d7f879a7db427e05f005ff55d8ebc448c43fab66bedf3bc7779c3042a3bfc28f6ab1bd7587a0cba0d136d78158565df25c07194f8e7051197aaa75ddcac37bd7150858424afd552a51a06acd3a5f0c88344a358bf3043caf0f93ce8a08e86f4689e5a94862cfa4aa97439c9570526005c6d991788304d2f5e313e6a3391c8cfd494f3cf046f710c271fc0a0c2f0a2d14a3569e00877465ba344d30a8cf17d5b2edd9eb47363bedd895658b3b7e710e4f2f91597c5159028b30c4ba7b44008ba3fbee3781d378dfeda1c70089e81648b07fd143104105dc247cda808856b0cd3b4d8ceec20190d8f5ea43ab7f0be55e62e05686f805c81401ce1aca0c7af9af28ba5175f7af3edbbb7dd78257528c3c4925474b647d37d128f4c63cf31c80659895cec5636aa6791ea1bc733e21ae08c23d689f8523d365c9019e0c12943ce120b91295712d57e33d793fc71acaaea339d815945f5681a059edc852fc60042f0094b534d61ca2c431796b04fd1a29f5e67699dbaa54a36f6f456dc304d60553266b5ebcacfcf7fb2692489b6727cc031946ce83c88c512ff1539f6414a87d1e8f0b07aca2439f6958f15728c6a403a37300a30add4cf0e87e1916bf83252f13ad54f74a256233c70e28260f60e3caa3651ec9ce128cb31ef03f8734733581bcda1d78a4d06af2853246712352483cd5e2b8cfcc2ddaeaa5d0faa239e66dc2adc5f2d6830802f6561d964b01a28b9193dad06b512911ead139339dfd42056c67410ceaa1defca4fd3b15bd86d2d2a03252f3c764265d6ec9c83180c4aba8cce74db623dc3ab65c65b9df0b7a82670fb4bbc2edde84f7d6bf21ae52a1bb12e79dcffc14560b69691951955ae88d80584bd7eb905226a64bf0fc65752ee644a75b48ecada19a77e14f77a27e7120364c53eb7db45d1aad822329cb1345fec970a1e54f3b73fb8dee9444a0e497320d1596d4b8c9f6c0d67b983a4e9d7348e278c6a559d5961195a9a2424104a184749d463dcc6d1a9b4f00939d31a71483490e4d741252af6f7bb3548e1ddb3d54f33e943f76dc0fb66512d2552690e73855ab02f7b6a2118673214639104bf163033a50a9fdfc6f455e49886f59da1132ff1618ca2ee33de933622a292a5cbaa33abf7d06e18bd41bc2eb1b122fa71f2b246853a3ae34f16b12cf1b46ca789a6e673a83524d41bd25bd270d7e5abdc6447f039f3ae4851ff28901e97565f83eb11c59e11ebdc4eef614e280a84330a2339e85643f3e9264f27e4965f2a0945939c950fc6af9bf4764d5b30b9ac8e986afd269ae9e6c28a30f761a9a1e5c4925951c73e2862464bab54611032733bd1d30825cddcbcefd0c97f83c5a3d76122baf10694abd6800ad5de280b484bd4e9b1766061ad72269cb7c5d8c831c1800ea0c617bfb1fd7333e1178ca89796ad091e0d69afd524f400ee12656d74de94b5aabc100d07f010528009ff3079c62b98ebca49c4bfa4cff07ed54a499022a6b53abc16e4fbceb7883817f34ac8deb2e6507516e1791a5d04091fdea151f156f171df348c8cb4fdd91fc3aee33969cfae3b753c23b1dc874fdcdbb16f7ab62bd0677df99740b3f72be6832b8c53145b84cdc847fa1636fa657b545509c88e300281ceb5b0184a3fa7c511b2b8467803c51467de3b4f12e9f70e9213e087e18d62a7662f26264800b8c810a07a4da659add0ee39a2b29ed4e171b6884cd6a3a466c759762b486d5986ff57bcdc7d166d2635db005bc3059f3ee920edfef739614e07aca0a86de0d242387347fde08701edaae8a44dd76ad3ff822529e60392f80995c0bee79f80c57748b20a8e27c57d5a3387e1dcf38d013053910f8faf31d923e0c72ca07f5ff6d8d1dfd09da3333221d885d7bc9b4aa7e672e47c52d0a7db2f7fbdc4448ebaaf63cb99d1cc98de3effba55314d35863a95af50b3b5760f300933970059244f9fd7df2ee5367bb1be554a3119883d3a4f0dc4943ca0edf20ba1fbf4ff00edbe396a2bc52ab9825811b855293ec22717b70f8e5bdfe926b7c230ba7b0175fb719505204f918f0f0dd2cd1d16da7fe5bf2fafdeba634e85e088430b0f77b69271999e076d7594466069e220a9736a565264f5d1c9671fdf1f7d23a517935e8f10f018ff212e757237bc3405d2a26e00435e4e15da9fa06a7dab609c8c21fb8b4971342c9ab6d1bd74a427368662614541673a45b9ffc769cfdd72110409301f4527e553eb9c404a924c4a1fae2715c8a501901d9569cec4d101b80380d499673a132d70107d2a086e3db3154e18b5008f190c9f8cffa3cc6a911bb0ddcb7f049d809cc261faae54867be7d8e6e64427dc6a70e82fe4b49470f5acf62c2f07cda6657fe9c2b57a09f03bb604fc903c88f291b96a59ddd01915d7260b1e26fd652ce29879a39cfaa87afde06e65754d7ec1717b65e0fd8dfacab800486c9462e47239a339544b43ea664a0ccfffa281508767a230abab0bd9e9c8ed3a61c2688fabc3eb2bc6115fc78b15697c5910bb216d9d9d638c858ded461c70503618732ae095d7b2556b98dc944cba9e4be7c07e8691258fd0a9accd953604b2b85dd564ded34c5626658f8a5f9f3ebf259da5a40a3f1817b6e8563e5158943f5d78e3309950df7c30686e0f9aba1d0c6d796b57eddce2257ce003fa9e28d852dc7a9a93f85c69458441c776a3f0fb95022e6577cd78143db40139b827614cd8bb240ae503e1797c5bcbec2a1d1ca6bb46bf15b0a3a51cc81f8283212bebbb5076965b6c33408ceab50581f47315c9a4c434d2d0f39f130e842b8c549478787a05960afd8bd54bbba65e325dd21b5c99e1da60c304008ddd11bed871814eb28a9d23fee5ef376087220a62f44b8f67a01943ebc585ec103f77bdeadf64a260550bcb071f4531d762752166bc6cebcefe11b0ad3d7827460b9e82b01b3eae374b7cf4fb9752890deeb151801897d37e1d5fb0e0bb4173380340231827cfdb513127ef9c38a23d8fe77f60c0318390ecf90af0c4306d505e7d839652ce4526e33a399342345df02a235dcd95acb234debcadb0ff0b6e533749daa4dd6af718994542b35c4cdc555da6349a3c7d589e68079f33720799d0f82fc3b7bafbded5b824b3b9c5d4c4d6730958cbeb9ae9cd2dde2132d670d2cc3f48836304ed61a9065c40792cd8bcacbd6c8923ff0dd1531e1ecd3a77f879ea23c7aa624ee81675e4bccfcc2267d38492afa6e0a816b62b0a57a9385e5cc0628a33fbd7f78e23e6d37c52e5f5e6dc0271fda88c0eaeb605268e41a9fe772f71f5015e77ada13caacc371c96937a975e30140ce74325b94845dda6532651de29a4b41ec057aba6e6edf870509c09936a5c65504b34b73a258a8fc391105c23c937fc07776bcc13bc4857cb78b556927f0156d689a3c9ae19ffc73a2ace8e2c9e416a42f09b740b24ca9c98325329b6274513e5e4ce748e93ee1535dd43cba5647fc447eded8497747dda2be986be1b8f8b8cb6ea36a738cd86d2d066085e60fdc7416ee7f769b3c4e93baf985bba2c40f1278af26012a5896d08ce6136cbc248a686fafe65ececa14976e9c56be0f085661b80a92ddbe0f0b934ae5a60f412dd312fdd6875931abb011a3814ef095e5c30ae63667f25fb8db7ef6798a8d92f1a4761ef93b9dc3d0641bbd442378602428314535692187774443ad621ef3d752404a1acb9b8e190fa60f2bfd81a680641cf065135b455fdccfabe8fefbb3d271110568fd0f9dee52b16af92058ebbc3e0ebd1b5fbadb97f95ca79e12d232280348dae34d9003a1de2860ed6abcb921ec9287568e723aecb5be646db1d7485795b218524b4af2e4ccbd7d6071a672a1993a755a2cd79a46414d970f5ed48545ae67f57c0819bb4b318dafbc448d3dd49c86276dd04521330f56c7f2b6108d4720bf3a4928b5d1d2b0e15d13b57635b7f664ef039b1af917e773a5f86ed46e539943101846d38991ff233a85f2a8da940ec108dfd3a3decf1acdbd2ff2339e3eef9611854fbcc60d2baa61a05a487f72371a1e1d640cfc0d212880cd160812c1c996a75ca6a1e1e7291bf1de92c06fa3da4b281f3f58d73d3fc387752610f6ee7fd573caddf6ed47f89290af24340175b3dc02fc8de356faa5bb6dd2221ed3335692de4522a55cf79d0d74a39a98db997f9160b9941e1d26226175db8c9f0a7f99dfce885b975dfda1ce58645b32d1868065752ef2ad2edeae0461a01bea913251919948f05fd31ac7ad7beabae4e6788e50a704bb03e44bbea92dd95f8dbc504b060655eda9a0d069afe9ab6c5add5c85f3a349cced0942de4701f13225c5b19ee512a0ac6eada13972e2b80f960e34f746e7eae6fb79f53d87bacc6407848a9fdd4489fc72f72418513a80728418276b95800a80917e6c40a0702df69abd7f8e16de7c874a1622e2206a54a9e8919ff644b2e59435a85674ce6d7b4b751242b91eaba7d5e3d2f1194de5e242d4d3b9730dcea5b688a7d0a3cecddf7570cbe367faee2fa51c15e906895f21a9055bab4571573a68091b795335a814f0d4ba87403658b5c5dcc4daa4fd28c8eb94181dcd60854c0c33a5dc24636addbacb1b48080afd90f04ae82e32d40ddcef7183f8d8076b18d8d46a372d8b16201a0e750b637eed345cbaf623f72074a6fbc185fb9118daa435387a928b155a07aef36774ab182c708a51760d355acf49de4703d1f1654251f972e609fe3366fddb5616aa51782c39acf62cd504a40ad5849e223b51e2b54c3bdefb55155e621c830f3ac386149558234ed7920c6934f05a9a5975ece6a5348de0b16cf97b6a4e54e810bf0d51086d4351e47b0889285fd31cfa76fe375f2d04a906de95ca032fcbeed3428b1f65943af178c8420baf054600a8e1832dbc3426817f717596e5502b141e438ca2ce207ee9571c2df7253c1b92db6aca364ae782fb99246a60ce95099245f51211d7a1e9b9a1dfac4a7e35228feb13334f1757e9360c2ab2505cc53c8ed2fdd45184fcab0d75ccc598cc1198b07405d8b0ad9f055b30ffcd1685aa4068f5d7a6a68178f2801e3725bb753c3f6ae089f7ec49066d72af5c14e7ab487fb2cb70b166192b82a4fdec34100297dc522d2fcd2ae61418530ddcfccbac6c863d1a279f2a41748ae91952715b8aabf3d8aa481e8061ebf7d2aa017c91e6d885bc16eaf43d3f8a54102bb13577cf0955133efc7b36e80b3376a67d564d000b7ae3fad0933eb5db4e41cfe88f747f8da7bcee943ab1e96cc33fc7d6a4b64cc2ac9902a0b3429568ca782bd29c03d67a91c69439d04238390829f9f27520fd1fa2f0f208049e599d99e68049942f1e676dcd7f993222d9274d1fcc9b541bb46c729993d320a485c4cc34b5c7bafc41496d132cd0cede8a37862196d61e4f032884b6dfd3f8597b69dd002fd057894a61545c8d1144f1baa1d9607870269208fcebd10d7a5de44afbdc6dffbce4d3bddd5a872b8396b0a31eaded2cdd394f8728dec515d2620f7ac9d4383ff41d2278b39242ebb350b4081e42e360a3b9aeca4b50b34d6d5d8e4c3996da5a8d86504a6dd2d1d38cd92fda5a06eedb4af4ce201cfe7c338899df73c46816f21e39a76697c4caccc8534cdbbdba930896786cdb7762d29867f38a5c39d8d4fff27902b81865123e21420a9fac6fbd4733ff4d9d4a503a7d9cdd10d7cd95922853745c61386e46b53176cef40dfedc08b8f8dafce836b7b668fdf31c946b4767dc9d3a4da86036b89238345201caff3902f88c3291555e885b29fd86c1be7b800d02721a3f27a634f3ccad541006d4a2e44e15e7b5cae8e5e61b8132fd4ac7b406ff5df2ec57174c84c3d280d8f4c28d127e13691d00c783c1b62ecaa7379974c374c5f50a86da4202cf53e88a9922a4202a3a8e9228202a3608f3259c6925c903e180c31c67d119ae7bad03a7d6c4a2b5a481685732015e03df244b51cab9e5e3c883b2d70d84b1fc2e0f87ed6347ac2bd68dafddbb56b4b4fa39eb4ccfe9349a2f9274ee2d2747499fe5a9cfdde9599f67f87e2ddceb44d2cbbbf6e1360c199725cfa6caa8766409e9b8d5ecf8b3cde879d430dd43ee17c4009df856cd003ebccb4b0698a90e1d2a0fe00e9d281a7dc29dd4edca9b38a1dd75daf37d02eac215e9cb6862f95dd21552d913d3ffaf773fa49a81455fa745ae5606e890da981082da8a6f0560a031247c52799665b9ec17f56f4a2bacd8f541a36c1b60b3f134a9d0d8edfd464b0cf62c93e785e5a328880fb3c82027a7a848fe8715d543ec146268d743bb1e78878c7f60cf0511c919a732d26a0588a035942b4bae8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootsnapd-2.39.2-1.el7.src.rpmbundled(golang(github.com/cheggaaa/pb))bundled(golang(github.com/coreos/go-systemd/activation))bundled(golang(github.com/godbus/dbus))bundled(golang(github.com/godbus/dbus/introspect))bundled(golang(github.com/gorilla/mux))bundled(golang(github.com/jessevdk/go-flags))bundled(golang(github.com/juju/ratelimit))bundled(golang(github.com/kr/pretty))bundled(golang(github.com/kr/text))bundled(golang(github.com/mvo5/goconfigparser))bundled(golang(github.com/mvo5/libseccomp-golang))bundled(golang(github.com/ojii/gettext.go))bundled(golang(github.com/snapcore/bolt))bundled(golang(golang.org/x/crypto/openpgp/armor))bundled(golang(golang.org/x/crypto/openpgp/packet))bundled(golang(golang.org/x/crypto/sha3))bundled(golang(golang.org/x/crypto/ssh/terminal))bundled(golang(gopkg.in/check.v1))bundled(golang(gopkg.in/macaroon.v1))bundled(golang(gopkg.in/mgo.v2/bson))bundled(golang(gopkg.in/retry.v1))bundled(golang(gopkg.in/tomb.v2))bundled(golang(gopkg.in/yaml.v2))golang(github.com/snapcore/snapd/advisor)golang(github.com/snapcore/snapd/arch)golang(github.com/snapcore/snapd/asserts)golang(github.com/snapcore/snapd/asserts/assertstest)golang(github.com/snapcore/snapd/asserts/signtool)golang(github.com/snapcore/snapd/asserts/snapasserts)golang(github.com/snapcore/snapd/asserts/sysdb)golang(github.com/snapcore/snapd/asserts/systestkeys)golang(github.com/snapcore/snapd/boot)golang(github.com/snapcore/snapd/boot/boottest)golang(github.com/snapcore/snapd/bootloader)golang(github.com/snapcore/snapd/bootloader/androidbootenv)golang(github.com/snapcore/snapd/bootloader/grubenv)golang(github.com/snapcore/snapd/bootloader/ubootenv)golang(github.com/snapcore/snapd/client)golang(github.com/snapcore/snapd/cmd)golang(github.com/snapcore/snapd/cmd/cmdutil)golang(github.com/snapcore/snapd/cmd/snap-seccomp/syscalls)golang(github.com/snapcore/snapd/cmd/snaplock)golang(github.com/snapcore/snapd/daemon)golang(github.com/snapcore/snapd/dirs)golang(github.com/snapcore/snapd/errtracker)golang(github.com/snapcore/snapd/features)golang(github.com/snapcore/snapd/gadget)golang(github.com/snapcore/snapd/httputil)golang(github.com/snapcore/snapd/i18n)golang(github.com/snapcore/snapd/image)golang(github.com/snapcore/snapd/interfaces)golang(github.com/snapcore/snapd/interfaces/apparmor)golang(github.com/snapcore/snapd/interfaces/backends)golang(github.com/snapcore/snapd/interfaces/builtin)golang(github.com/snapcore/snapd/interfaces/dbus)golang(github.com/snapcore/snapd/interfaces/hotplug)golang(github.com/snapcore/snapd/interfaces/ifacetest)golang(github.com/snapcore/snapd/interfaces/kmod)golang(github.com/snapcore/snapd/interfaces/mount)golang(github.com/snapcore/snapd/interfaces/policy)golang(github.com/snapcore/snapd/interfaces/seccomp)golang(github.com/snapcore/snapd/interfaces/systemd)golang(github.com/snapcore/snapd/interfaces/udev)golang(github.com/snapcore/snapd/interfaces/utils)golang(github.com/snapcore/snapd/jsonutil)golang(github.com/snapcore/snapd/jsonutil/safejson)golang(github.com/snapcore/snapd/logger)golang(github.com/snapcore/snapd/metautil)golang(github.com/snapcore/snapd/netutil)golang(github.com/snapcore/snapd/osutil)golang(github.com/snapcore/snapd/osutil/squashfs)golang(github.com/snapcore/snapd/osutil/strace)golang(github.com/snapcore/snapd/osutil/sys)golang(github.com/snapcore/snapd/osutil/udev/crawler)golang(github.com/snapcore/snapd/osutil/udev/netlink)golang(github.com/snapcore/snapd/overlord)golang(github.com/snapcore/snapd/overlord/assertstate)golang(github.com/snapcore/snapd/overlord/auth)golang(github.com/snapcore/snapd/overlord/cmdstate)golang(github.com/snapcore/snapd/overlord/configstate)golang(github.com/snapcore/snapd/overlord/configstate/config)golang(github.com/snapcore/snapd/overlord/configstate/configcore)golang(github.com/snapcore/snapd/overlord/configstate/proxyconf)golang(github.com/snapcore/snapd/overlord/configstate/settings)golang(github.com/snapcore/snapd/overlord/devicestate)golang(github.com/snapcore/snapd/overlord/devicestate/devicestatetest)golang(github.com/snapcore/snapd/overlord/hookstate)golang(github.com/snapcore/snapd/overlord/hookstate/ctlcmd)golang(github.com/snapcore/snapd/overlord/hookstate/hooktest)golang(github.com/snapcore/snapd/overlord/ifacestate)golang(github.com/snapcore/snapd/overlord/ifacestate/ifacerepo)golang(github.com/snapcore/snapd/overlord/ifacestate/udevmonitor)golang(github.com/snapcore/snapd/overlord/patch)golang(github.com/snapcore/snapd/overlord/servicestate)golang(github.com/snapcore/snapd/overlord/snapshotstate)golang(github.com/snapcore/snapd/overlord/snapshotstate/backend)golang(github.com/snapcore/snapd/overlord/snapstate)golang(github.com/snapcore/snapd/overlord/snapstate/backend)golang(github.com/snapcore/snapd/overlord/standby)golang(github.com/snapcore/snapd/overlord/state)golang(github.com/snapcore/snapd/overlord/storecontext)golang(github.com/snapcore/snapd/polkit)golang(github.com/snapcore/snapd/progress)golang(github.com/snapcore/snapd/progress/progresstest)golang(github.com/snapcore/snapd/release)golang(github.com/snapcore/snapd/sandbox/seccomp)golang(github.com/snapcore/snapd/sanity)golang(github.com/snapcore/snapd/selinux)golang(github.com/snapcore/snapd/snap)golang(github.com/snapcore/snapd/snap/naming)golang(github.com/snapcore/snapd/snap/pack)golang(github.com/snapcore/snapd/snap/snapdir)golang(github.com/snapcore/snapd/snap/snapenv)golang(github.com/snapcore/snapd/snap/snaptest)golang(github.com/snapcore/snapd/snap/squashfs)golang(github.com/snapcore/snapd/spdx)golang(github.com/snapcore/snapd/store)golang(github.com/snapcore/snapd/store/storetest)golang(github.com/snapcore/snapd/strutil)golang(github.com/snapcore/snapd/strutil/quantity)golang(github.com/snapcore/snapd/strutil/shlex)golang(github.com/snapcore/snapd/systemd)golang(github.com/snapcore/snapd/tests/lib/fakestore/refresh)golang(github.com/snapcore/snapd/tests/lib/fakestore/store)golang(github.com/snapcore/snapd/testutil)golang(github.com/snapcore/snapd/timeout)golang(github.com/snapcore/snapd/timeutil)golang(github.com/snapcore/snapd/timings)golang(github.com/snapcore/snapd/userd)golang(github.com/snapcore/snapd/userd/ui)golang(github.com/snapcore/snapd/wrappers)golang(github.com/snapcore/snapd/x11)golang(github.com/snapcore/snapd/xdgopenproxy)snapd-devel     rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0.4-14.0-15.2-14.11.3]@\\\]@\t@\!\-@\@\C@\|\|\w@\w@\v{\k\j@\Z@\Z@\V\P@@\?\@\@[[H[H[@[v[@[^[ā@[R@[R@[["@[D[z@[[ @[P}@[M@[I[?Y[,[+@[oZ@ZZZZԐ@ZJ@ZZZZZx@ZZ=Zw@Z1@ZZ Z}@ZyZiZ7Z6\@Zr@Zr@Z@ZC@YZ@YZ@Y@Y@Y@YYY@YYYܶ@Y@Y˒YY)@Y4Y@@YYYY3Y3Y3YYYJYJY@YyY&@Y!@Y;@Y#@X@X@Xߖ@XDX@XۡXƉXX`@XWu@W:W@W@W@W@W@W@W@W@W@W@Wm Wc@W_WZNeal Gompa - 2.39.2-1Maciej Borzecki - 2.39.1-2Michael Vogt Neal Gompa - 2.39.1-1Michael Vogt Neal Gompa - 2.39-1Michael Vogt Robert-André Mauchin - 2.38-3Neal Gompa - 2.38-2Neal Gompa - 2.38-1Michael Vogt Neal Gompa - 2.37.4-2Zygmunt Bazyli Krynicki - 2.37.4-1Michael Vogt Zygmunt Bazyli Krynicki - 2.37.3-1Michael Vogt Neal Gompa - 2.37.2-1Michael Vogt Fedora Release Engineering - 2.36.3-2Michael Vogt Michael Vogt Neal Gompa - 2.36.3-1Michael Vogt Michael Vogt Neal Gompa - 2.36-4Neal Gompa - 2.36-3Neal Gompa - 2.36-2Michael Vogt Neal Gompa - 2.36-1Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.35-1Michael Vogt Michael Vogt Michael Vogt Michael Vogt Fedora Release Engineering - 2.33.1-2Michael Vogt Neal Gompa - 2.33.1-1Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.32.4-1Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.31.1-2Neal Gompa - 2.31.1-1Michael Vogt Fedora Release Engineering - 2.30-2Michael Vogt Neal Gompa - 2.30-1Michael Vogt Neal Gompa - 2.29.4-3Neal Gompa - 2.29.4-2Neal Gompa - 2.29.4-1Michael Vogt Michael Vogt Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.28.5-2Neal Gompa - 2.28.5-1Michael Vogt Neal Gompa - 2.28.4-1Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.28.1-1Michael Vogt Michael Vogt Neal Gompa - 2.27.6-1Michael Vogt Neal Gompa - 2.27.5-1Michael Vogt Michael Vogt Michael Vogt Neal Gompa - 2.27.2-2Neal Gompa - 2.27.2-1Michael Vogt Neal Gompa - 2.27.1-1Michael Vogt Neal Gompa - 2.27-1Michael Vogt Fedora Release Engineering - 2.26.3-5Fedora Release Engineering - 2.26.3-4Neal Gompa - 2.26.3-3Neal Gompa - 2.26.3-2Neal Gompa - 2.26.3-1Neal Gompa - 2.25-1Neal Gompa - 2.24-1Neal Gompa - 2.23.6-4Neal Gompa - 2.23.6-3Neal Gompa - 2.23.6-2Neal Gompa - 2.23.6-1Neal Gompa - 2.23.5-1Neal Gompa - 2.23.1-1Fedora Release Engineering - 2.16-2Zygmunt Krynicki - 2.16-1Neal Gompa - 2.14-2Zygmunt Krynicki - 2.14-1Zygmunt Krynicki - 2.13-1Zygmunt Krynicki - 2.12-2Zygmunt Krynicki - 2.12-1Zygmunt Krynicki - 2.11-8Zygmunt Krynicki - 2.11-7Zygmunt Krynicki - 2.11-6Zygmunt Krynicki - 2.11-5Zygmunt Krynicki - 2.11-4Zygmunt Krynicki - 2.11-3Zygmunt Krynicki - 2.11-2Zygmunt Krynicki - 2.11-1Zygmunt Krynicki - 2.0.9-2Zygmunt Krynicki - 2.0.9Zygmunt Krynicki - 2.0.8.1Zygmunt Krynicki - 2.0.8- Release 2.39.2 to Fedora (RH#1717448) - Drop patch included in this release- Fix SELinux policy to allow running hooks and services from snaps with bases and classic snaps - Bump SELinux policy version- New upstream release 2.39.2 - debian: rework how we run autopkgtests - interfaces/docker-support: add overlayfs accesses for ubuntu core - data/selinux: permit init_t to remount snappy_snap_t - strutil/shlex: fix ineffassign - packaging: fix build-depends on powerpc- Release 2.39.1 to Fedora (RH#1715505) - Backport SELinux policy fixes for systemd unit mount namespacing (RH#1708991)- New upstream release 2.39.1 - spread: enable Fedora 30 - cmd/snap-confine, data/selinux: cherry pick Fedora 30 fixes - tests/unit/spread-shellcheck: temporary workaround for SC2251 - packaging: build empty package on powerpc - interfaces: special-case "snapd" in sanitizeSlotReservedForOS* helper - cmd/snap: mangle descriptions that have indent > terminal width - cmd/snap-confine: unshare per-user mount ns once - tests: avoid adding spaces to the base snaps names - systemd: workaround systemctl show quirks on older systemd versions- Release 2.39 to Fedora (RH#1699087) - Enable basic SELinux integration - Fix changelog entry to fix build for EPEL 7 - Exclude bash and POSIX sh shebangs from mangling (LP:1824158) - Drop some old pre Fedora 28 logic- New upstream release 2.39 - overlord/ifacestate: update static attributes of "content" interface - data/selinux: tweak the policy for runuser and s-c, interpret audit entries - snapshotstate: disable automatic snapshots on core for now - overlord/corecfg: make expiration of automatic snapshots configurable - snapstate: auto-install snapd when needed - interfaces: add support for the snapd snap in the dbus backend - overlord/snapstate: tweak autorefresh logic if network is not available - interfaces/apparmor: allow running /usr/bin/od - osutil,cmdutil: move CommandFromCore and make it use the snapd snap (if available) - daemon: also verify snap instructions for multi-snap requests - data/selinux: allow snap-confine to mount on top of bin - data/selinux: auto transition /var/snap to snappy_var_t - cmd: add `snap debug validate-seed ` cmd - interfaces/builtin/desktop: fonconfig v6/v7 cache handling on Fedora - interfaces/builtin/intel_mei: fix /dev/mei* AppArmor pattern - tests: make snap-connections test work on boards with snaps pre- installed - tests: check for /snap/core16/current in core16-provided-by-core - tests: run livepatch test on 18.04 as well - devicestate: deal correctly with the "required" flag on Remodel - snapstate,state: add TaskSet.AddAllWithEdges() and use in doUpdate - snapstate: add new NoReRefresh flag and use in Remodel() - many: allow core as a fallback for core16 - snapcraft: build static fontconfig in the snapd snap - cmd/snap-confine: remove unused sc_open_snap_{update,discard}_ns - data/selinux: allow snapd to execute runuser under snappy_t - spread, tests: do not leave mislabeled files in restorecon test, attempt to catch similar files - interfaces: cleanup internal tool lookup in system-key - many: move auth.AuthContext to store.DeviceAndAuthContext, the implemention to a separate storecontext packageThis: - overlord/devicestate: measurements around ensure and related tasks - cmd: tweak internal tool lookup to accept more possible locations - overlord/snapstate,snapshotstate: create snapshot on snap removal - tests: run smoke tests on (almost) pristine systems - tests: system disable ssh for config defaults in gadget - cmd/debug: integrate new task timings with "snap debug timings" - tests/upgrade/basic, packaging/fedoar: restore SELinux context of /var/cache/fontconfig, patch pre-2.39 mount units - image: simplify prefer local logic and fixes - tests/main/selinux-lxd: make sure LXD from snaps works cleanly with enforcing SELinux - tests: deny ioctl - TIOCSTI with garbage in high bits - overlord: factor out mocking of device service and gadget w. prepare-device for registration tests - data/selinux, tests/main/selinux-clean: fine tune the policy, make sure that no denials are raised - cmd/libsnap,osutil: fix parsing of mountinfo - ubuntu: disable -buildmode=pie on armhf to fix memory issue - overlord/snapstate: inhibit refresh for up to a week - cmd/snap-confine: prevent cwd restore permission bypass - overlord/ifacestate: introduce HotplugKey type use short key in change summaries - many: make Remodel() download everything first before installing - tests: fixes discovered debugging refresh-app-awareness - overlord/snapstate: track time of postponed refreshes - snap-confine: set rootfs_dir in sc_invocation struct - tests: run create-user on core devices - boot: add flag file "meta/force-kernel-extraction" - tests: add regression test for systemctl race fix - overlord/snapshotstate: helpers for snapshot expirations - overlord,tests: perform soft refresh check in doInstall - tests: enable tests that write /etc/{hostname,timezone} on core18 - overlord/ifacestate: implement String() method of HotplugDeviceInfo for better logs/messages - cmd/snap-confine: move ubuntu-core fallback checks - testutil: fix MockCmd for shellcheck 0.5 - snap, gadget: move gadget read/validation into separate package, tweak naming - tests: split travis spread execution in 2 jobs for ubuntu and non ubuntu systems - testutil: make mocked command work with shellcheck from snaps - packaging/fedora, tests/upgrade/basic: patch existing mount units with SELinux context on upgrade - metautil, snap: extract yaml value normalization to a helper package - tests: use apt via eatmydata - dirs,overlord/snapstate: add Soft and Hard refresh checks - cmd/snap-confine: allow using tools from snapd snap - cmd,interfaces: replace local helpers with cmd.InternalToolPath - tweak: fix "make hack" on Fedora - snap: add validation of gadget.yaml - cmd/snap-update-ns: refactor of profile application - cmd/snap,client,daemon,store: layout and sanity tweaks for find/search options - tests: add workaround for missing cache reset on older snapd - interfaces: deal with the snapd snap correctly for apparmor 2.13 - release-tools: add debian-package-builder - tests: enable opensuse 15 and add force-resolution installing packages - timings: AddTag helper - testutil: run mocked commands through shellcheck - overlord/snapshotstate: support auto flag - client, daemon, store: search by common-id - tests: all the systems for google backend with 6 workers - interfaces: hotplug nested vm test, updated serial-port interface for hotplug. - sanity: use proper SELinux context when mounting squashfs - cmd/libsnap: neuter variables in cleanup functions - interfaces/adb-support: account for hubs on sysfs path - interfaces/seccomp: regenerate changed profiles only - snap: reject layouts to /lib/{firmware,modules} - cmd/snap-confine, packaging: support SELinux - selinux, systemd: support mount contexts for snap images - interfaces/builtin/opengl: allow access to Tegra X1 - cmd/snap: make 'snap warnings' output yamlish - tests: add check to detect a broken snap on reset - interfaces: add one-plus devices to adb-support - cmd: prevent umask from breaking snap-run chain - tests/lib/pkgdb: allow downgrade when installing packages in openSUSE - cmd/snap-confine: use fixed private tmp directory - snap: tweak parsing errors of gadget updates - overlord/ifacemgr: basic measurements - spread: refresh metadata on openSUSE - cmd/snap-confine: pass sc_invocation instead of numerous args around - snap/gadget: introduce volume update info - partition,bootloader: rename 'partition' package to 'bootloader' - interfaces/builtin: add dev/pts/ptmx access to docker_support - tests: restore sbuild test - strutil: make SplitUnit public, allow negative numbers - overlord/snapstate,: retry less for auto-stuff - interfaces/builtin: add add exec "/" to docker-support - cmd/snap: fix regression of snap saved command - cmd/libsnap: rename C enum for feature flag - cmd: typedef mountinfo structures - tests/main/remodel: clean up before reverting the state - cmd/snap-confine: umount scratch dir using UMOUNT_NOFOLLOW - timings: add new helpers, Measurer interface and DurationThreshold - cmd/snap-seccomp: version-info subcommand - errortracker: fix panic in Report if db cannot be opened - sandbox/seccomp: a helper package wrapping calls to snap-seccomp - many: add /v2/model API, `snap remodel` CLI and spread test - tests: enable opensuse tumbleweed back - overlord/snapstate, store: set a header when auto-refreshing - data/selinux, tests: refactor SELinux policy, add minimal tests - spread: restore SELinux context when we mess with system files - daemon/api: filter connections with hotplug-gone=true - daemon: support returning assertion information as JSON with the "json" query parameter - cmd/snap: hide 'interfaces' command, show deprecation notice - timings: base API for recording timings in state - cmd/snap-confine: drop unused dependency on libseccomp - interfaces/apparmor: factor out test boilerplate - daemon: extract assertions api endpoint implementation into api_asserts.go - spread.yaml: bump delta reference - cmd/snap-confine: track per-app and per-hook processes - cmd/snap-confine: make sc_args helpers const-correct - daemon: move a function that was between an other struct and its methods - overlord/snapstate: fix restoring of "old-current" revision config in undoLinkSnap - cmd/snap, client, daemon, ifacestate: show a leading attribute of a connection - cmd/snap-confine: call sc_should_use_normal_mode once - cmd/snap-confine: populate enter_non_classic_execution_environment - daemon: allow downloading snaps blobs via .../file - cmd/snap-confine: introduce sc_invocation - devicestate: add initial Remodel support - snap: remove obsolete license-* fields in the yaml - cmd/libsnap: add cgroup-pids-support module - overlord/snapstate/backend: make LinkSnap clean up more - snapstate: only keep 2 snaps on classic - ctlcmd/tests: tests tweaks (followup to #6322)- Rebuilt for fix in golang-github-seccomp-libseccomp-golang- Readd snapd-login-service Provides for gnome-software for F29 and older- Release 2.38 to Fedora (RH#1691296) - Switch to officially released main source tarball - Drop obsolete snapd-login-service Provides- New upstream release 2.38 - overlord/snapstate,: retry less for auto-stuff - cmd/snap: fix regression of snap saved command - interfaces/builtin: add dev/pts/ptmx access to docker_support - overlord/snapstate, store: set a header when auto-refreshing - interfaces/builtin: add add exec "/" to docker-support - cmd/snap, client, daemon, ifacestate: show a leading attribute of a connection - interface: avahi-observe: Fixing socket permissions on 4.15 kernels - tests: check that apt works before using it - apparmor: support AppArmor 2.13 - snapstate: restart into the snapd snap on classic - overlord/snapstate: during refresh, re-refresh on epoch bump - cmd, daemon: split out the common bits of mapLocal and mapRemote - cmd/snap-confine: chown private /tmp to root.root - cmd/snap-confine: drop uid from random /tmp name - overlord/hookstate: apply pending transaction changes onto temporary configuration for snapctl get - cmd/snap: `snap connections` command - interfaces/greengrass_support: update accesses for GGC 1.8 - cmd/snap, daemon: make the connectivity check use GET - interfaces/builtin,/udev: add spec support to disable udev + device cgroup and use it for greengrass - interfaces/intel-mei: small follow up tweaks - ifacestate/tests: fix/improve udev mon test - interfaces: add multipass-support interface - tests/main/high-user-handling: fix the test for Go 1.12 - interfaces: add new intel-mei interface - systemd: decrease the checker counter before unlocking otherwise we can get spurious panics - daemon/tests: fix race in the disconnect conflict test - cmd/snap-confine: allow moving tasks to pids cgroup - tests: enable opensuse tumbleweed on spread - cmd/snap: fix `snap services` completion - ifacestate/hotplug: integration with udev monitor - packaging: build snapctl as a static binary - packaging/opensuse: move most logic to snapd.mk - overlord: fix ensure before slowness on Retry - overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core - daemon, client, cmd/snap: debug GETs ask aspects, not actions - tests/main/desktop-portal-*: fix handling of python dependencies - interfaces/wayland: allow wayland server snaps function on classic too - daemon, client, cmd/snap: snap debug base-declaration - tests: run tests on opensuse leap 15.0 instead of 42.3 - cmd/snap: fix error messages for snapshots commands if ID is not uint - interfaces/seccomp: increase filter precision - interfaces/network-manager: no peer label check for hostname1 - tests: add a tests for xdg-desktop-portal integration - tests: not checking 'tracking channel' after refresh core on nested execution - tests: remove snapweb from tests - snap, wrappers: support StartTimeout - wrappers: Add an X-SnapInstanceName field to desktop files - cmd/snap: produce better output for help on subcommands - tests/main/nfs-support: use archive mode for creating fstab backup - many: collect time each task runs and display it with `snap debug timings ` - tests: add attribution to helper script - daemon: make ucrednetGet not loop - squashfs: unset SOURCE_DATE_EPOCH in the TestBuildDate test - features,cmd/libsnap: add new feature "refresh-app-awareness" - overlord: fix random typos - interfaces/seccomp: generate global seccomp profile - daemon/api: fix error case for disconnect conflict - overlord/snapstate: add some randomness to the catalog refresh - tests: disable trusty-proposed for now - tests: fix upgrade-from-2.15 with kernel 4.15 - interfaces/apparmor: allow sending and receiving signals from ourselves - tests: split the test interfaces-many in 2 and remove snaps on restore - tests: use snap which takes 15 seconds to install on retryable- error test - packaging: avoid race in snapd.postinst - overlord/snapstate: discard mount namespace when undoing 1st link snap - cmd/snap-confine: allow writes to /var/lib/** - tests: stop catalog-update test for now - tests/main/auto-refresh-private: make sure to actually download with the expired macaroon - many: save media info when installing, show it when listing - userd: handle help urls which requires prepending XDG_DATA_DIRS - tests: fix NFS home mocking - tests: improve snaps-system-env test - tests: pre-cache core on core18 systems - interfaces/hotplug: renamed RequestedSlotSpec to ProposedSlot, removed Specification - debian: ensure leftover usr.lib.snapd.snap-confine is gone - image,cmd/snap,tests: introduce support for modern prepare-image --snap [=] - overlord/ifacestate: tweak logic for generating unique slot names - packaging: import debian salsa packaging work, add sbuild test and use in spead - overlord/ifacestate: hotplug-add-slot handler - image,cmd/snap: simplify --classic-arch to --arch, expose prepare-image - tests: run test snap as user in the smoke test - cmd/snap: tweak man output to have no doubled up .TP lines - cmd/snap, overlord/snapstate: silently ignore classic flag when a snap is strictly confined - snap-confine: remove special handling of /var/lib/jenkins - cmd/snap-confine: handle death of helper process - packaging: disable systemd environment generator on 18.04 - snap-confine: fix classic snaps for users with /var/lib/* homedirs - tests/prepare: prevent console-conf from running - image: bootstrapToRootDir => setupSeed - image,cmd/snap,tests: introduce prepare-image --classic - tests: update smoke/sandbox test for armhf - client, daemon: introduce helper for querying snapd API for the list of slot/plug connections - cmd/snap-confine: refactor and cleanup of seccomp loading - snapstate, snap: allow update/switch requests with risk only channel to DTRT - interfaces: add network-manager-observe interface - snap-confine: increase locking timeout to 30s - snap-confine: fix incorrect "sanity timeout 3s" message - snap-confine: provide proper error message on sc_sanity_timeout - snapd,state: improve error message on state reading failure - interfaces/apparmor: deny inet/inet6 in snap-update-ns profile - snap: fix reexec from the snapd snap for classic snaps - snap: fix hook autodiscovery for parallel installed snaps - overlord/snapstate: format the refresh time for the log - cmd/snap-confine: add special case for Jenkins - snapcraft.yaml: fix XBuildDeb PATH for go-1.10 - overlord/snapstate: validate instance names early - overlord/ifacestate: handler for hotplug-update-slot tasks - polkit: cast pid to uint32 to keep polkit happy for now - snap/naming: move various name validation helpers to separate package - tests: iterate getting journal logs to support delay on boards on daemon-notify test - cmd/snap: fix typo in cmd_wait.go - snap/channel: improve channel parsing - daemon, polkit: pid_t is signed - daemon: introduce /v2/connections snapd API endpoint - cmd/snap: small refactor of cmd_info's channel handling - overlord/snapstate: use an ad-hoc error when no results - cmd/snap: wrap "summary" better - tests: workaround missing go dependencies in debian-9 - daemon: try to tidy up the icon stuff a little - interfaces: add display-control interface - snapcraft.yaml: fix snap building in launchpad - tests: update fedora 29 workers to speed up the whole testing time - interfaces: add u2f-devices interface and allow reading udev +power_supply:* in hardware-observe - cmd/snap-update-ns: save errno from strtoul - tests: interfaces tests normalization - many: cleanup golang.org/x/net/context - tests: add spread test for system dbus interface - tests: remove -o pipefail - interfaces: add block-devices interface - spread: enable upgrade suite on fedora - tests/main/searching: video section got renamed to photo-and-video - interfaces/home: use dac_read_search instead of dac_override with 'read: all' - snap: really run the RunSuite - interfaces/camera: allow reading vendor/etc info from /run/udev/data/+usb:* - interfaces/dbus: be less strict about alternations for well-known names - interfaces/home: allow dac_override with 'read: all' - interfaces/pulseaudio: allow reading subdirectories of /etc/pulse - interfaces/system-observe: allow read on /proc/locks - run-checks: ensure we use go-1.10 if available - tests: get test-snapd-dbus-{provider,consumer} from the beta channel - interfaces/apparmor: mock presence of overlayfs root - spread: increase default kill-timeout to 30min - tests: simplify interfaces-contacts-service test - packaging/ubuntu: build with golang 1.10 - ifacestate/tests: extra test for hotplug-connect handler - packaging: make sure that /var/lib/snapd/lib/glvnd is accounted for - overlord/snapstate/backend: call fontconfig helpers from the new 'current' - kvm: load required kernel modules if necessary - cmd/snap: use a fake user for 'run' tests - tests: update systems for google sru backend - tests: fix install-snaps test by changing the snap info regex - interfaces: helpers for sorting plug/slot/connection refs - tests: moving core-snap-refresh-on-core test from main to nested suite - tests: fix daemon-notify test checking denials considering all the log lines - tests: skip lp-1802591 on "official" images - tests: fix listing tests to match "snap list --unicode=never" - debian: fix silly typo in the spread test invocation - interface: raw-usb: Adding ttyACM ttyACA permissions - tests: fix enable-disable-unit-gpio test on external boards - overlord/ifacestate: helper API to obtain the state of connections - tests: define new "tests/smoke" suite and use that for autopkgtests - cmd/snap-update-ns: explicitly check for return value from parse_arg_u - interfaces/builtin/opengl: allow access to NVIDIA VDPAU library - tests: auto-clean the test directory - cmd/snap: further tweak messaging; add a test - overlord/ifacestate: handler for hotplug-connect task - cmd/snap-confine: join freezer only after setting up user mount - cmd/snap-confine: don't preemptively create .mnt files - cmd/snap-update-ns: manually implement isspace - cmd/snap-update-ns: let the go parser know we are parsing -u - cmd/snap-discard-ns: fix name of user fstab files - snapshotstate: don't task.Log without the lock - tests: exclude some more slow tests from runs in autopkgtest - many: remove .user-fstab files from /run/snapd/ns - cmd/libsnap: pass --from-snap-confine when calling snap-update-ns as user - cmd/snap-update-ns: make freezer mockable - cmd/snap-update-ns: move XDG code to dedicated file - osutil: add helper for loading fstab from string - cmd/snap-update-ns: move existing code around, renaming some functions - overlord/configstate/configcore: support - and _ in cloud init field names - * cmd/snap-confine: use makedev instead of MKDEV - tests: review/fix the autopkgtest failures in disco - overlord: drop old v1 store api support from managers test - tests: new test for snapshots with more than 1 user- Fix accidentally corrupted changelog merge- Release 2.37.4 to Fedora (RH#1683795) - Fix RPM macro in changelog (rpmlint) - Fix non-break space in changelog (rpmlint)- New upstream release 2.37.4 - squashfs: unset SOURCE_DATE_EPOCH in the TestBuildDate test - overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core - tests: fix upgrade-from-2.15 with kernel 4.15 - interfaces/seccomp: increase filter precision - tests: remove snapweb from tests- Release 2.37.3 to Fedora (RH#1678603)- New upstream release 2.37.3 - interfaces/seccomp: generate global seccomp profile - overlord/snapstate: add some randomness to the catalog refresh - tests: add upgrade test from 2.15.2ubuntu1 -> current snapd - snap-confine: fix fallback to ubuntu-core - packaging: avoid race in snapd.postinst - overlord/snapstate: discard mount namespace when undoing 1st link snap - cmd/snap-confine: allow writes to /var/lib/** again - tests: stop catalog-update/apt-hooks test until the catlog refresh is randomized - debian: ensure leftover usr.lib.snapd.snap-confine is gone- Release 2.37.2 to Fedora (RH#1667460)- New upstream release 2.37.2 - cmd/snap, overlord/snapstate: silently ignore classic flag when a snap is strictly confined - snap-confine: remove special handling of /var/lib/jenkins - cmd/snap-confine: handle death of helper process gracefully - snap-confine: fix classic snaps for users with /var/lib/* homedirs like jenkins/postgres - packaging: disable systemd environment generator on 18.04 - tests: update smoke/sandbox test for armhf - cmd/snap-confine: refactor and cleanup of seccomp loading - snap-confine: increase locking timeout to 30s - snap-confine: fix incorrect "sanity timeout 3s" message - snap: fix hook autodiscovery for parallel installed snaps - tests: iterate getting journal logs to support delay on boards on daemon-notify test - interfaces/apparmor: deny inet/inet6 in snap-update-ns profile - interfaces: add u2f-devices interface- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild- New upstream release 2.37.1 - cmd/snap-confine: add special case for Jenkins - tests: workaround missing go dependencies in debian-9 - daemon, polkit: pid_t is signed - interfaces: add display-control interface - interfaces: add block-devices interface - tests/main/searching: video section got renamed to photo-and-video - interfaces/camera: allow reading vendor/etc info from /run/udev/data/+usb - interfaces/dbus: be less strict about alternations for well-known names - interfaces/home: allow dac_read_search with 'read: all' - interfaces/pulseaudio: allow reading subdirectories of /etc/pulse - interfaces/system-observe: allow read on /proc/locks - tests: get test-snapd-dbus-{provider,consumer} from the beta channel - interfaces/apparmor: mock presence of overlayfs root - packaging/{fedora,opensuse,ubuntu}: add /var/lib/snapd/lib/glvnd- New upstream release 2.37 - snapd: fix race in TestSanityFailGoesIntoDegradedMode test - cmd: fix snap-device-helper to deal correctly with hooks - tests: various fixes for external backend - interface: raw-usb: Adding ttyACM[0-9]* as many serial devices have device node /dev/ttyACM[0-9] - tests: fix enable-disable-unit-gpio test on external boards - tests: define new "tests/smoke" suite and use that for autopkgtests - interfaces/builtin/opengl: allow access to NVIDIA VDPAU library - snapshotstate: don't task.Log without the lock - overlord/configstate/configcore: support - and _ in cloud init field names - cmd/snap-confine: use makedev instead of MKDEV - tests: review/fix the autopkgtest failures in disco - systemd: allow only a single daemon-reload at the same time - cmd/snap: only auto-enable unicode to a tty - cmd/snap: right-align revision and size in info's channel map - dirs, interfaces/builtin/desktop: system fontconfig cache path is different on Fedora - tests: fix "No space left on device" issue on amazon-linux - store: undo workaround for timezone-less released-at - store, snap, cmd/snap: channels have released-at - snap-confine: fix incorrect use "src" var in mount-support.c - release: support probing SELinux state - release-tools: display self-help - interface: add new `{personal,system}-files` interface - snap: give Epoch an Equal method - many: remove unused interface code - interfaces/many: use 'unsafe' with docker-support change_profile rules - run-checks: stop running HEAD of staticcheck - release: use sync.Once around lazy intialized state - overlord/ifacestate: include interface name in the hotplug- disconnect task summary - spread: show free space in debug output - cmd/snap: attempt to restore SELinux context of snap user directories - image: do not write empty etc/cloud - tests: skip snapd snap on reset for core systems - cmd/snap-discard-ns: fix umount(2) typo - overlord/ifacestate: hotplug-remove-slot task handler - overlord/ifacestate: handler for hotplug-disconnect task - ifacestate/hotplug: updateDevice helper - tests: reset snapd state on tests restore - interfaces: return security setup errors - overlord: make InstallMany work like UpdateMany, issuing a single request to get candidates - systemd/systemd.go: add missing tests for systemd.IsActive - overlord/ifacestate: addHotplugSeqWaitTask helper - cmd/snap-confine: refactor call to snap-update-ns --user-mounts - tests: new backend used to run upgrade test suite - travis: short circuit failures in static and unit tests travis job - cmd: automatically fix localized