python-devel-2.7.18-150000.65.1<>,܉fJH/p9|$JPRq[W=1=ИDd2!t [2KY?& _|_[ w`N>6'@q9yY;db4w!l`W"zH2nM`=ד9ҷ]kB}_oց쓟/)?s#ءuYh|rn"փ|&Ə-,a>rx}@ѡ@ΕSb?G%u07"lqv30M0ao}{w >>D?Dd " d  (@FP  + 9 U s 6Y/{|P(8p9p:pF6GPH I:XAYA\B ]]^ЀbҝcFdefluv*wxy.PzD`DpDtDzDCpython-devel2.7.18150000.65.1Include Files and Libraries Mandatory for Building Python ModulesThe Python programming language's interpreter can be extended with dynamically loaded extensions and can be embedded in other programs. This package contains header files, a static library, and development tools for building Python modules, extending the Python interpreter or embedding Python in applications.fJH/h02-armsrv1\SUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Development/Languages/Pythonhttps://www.python.org/linuxaarch64 RyK  r7)= y Rw-N ~ {} j C  a7# *-E!\ !h..  U^a{  &p) V@/||7, 434:NNhngpgdm&++Ary!w. . R4 ZxFJg`DYSFd3ZFx$2>+esY F!+G`iHwsblqt{ 9!J^'.0-,DvpO-`(=sJngs5C13].COWpiCg~qqxu|;@uKx>L.0-,\|!M rviVwPE\=JM.lx<oi`(b}>dB4=J:u`<s`%zq$gia-y?J%, "-U>z__F?  q qTu b)   .D$$BDItItAMMZDuu>--9<<;1 yy>>]]NSS]D|zHH~   )R7vLL fz" 6!p!p))b.LxG# 2A!M!MN44 % %.7,,N4A4A   9EEii 9 9mʦ 1 1e6^^&0J0J[vv MNN55($$&h!!1,,)339> > 7{88.44  ATATˆˆN7PP NNpmo7o7EFtFt3 x xLQVQVMBMM .W/c/cpHpHMM _ _ww>rrZZ# L L,,>6 + +,>>"  P `ieie +22qp SS Q$:Q:Q++,Y <*{*{ X X,ttPTT>AA L@!@!&y88f?ssF E/4^4^`  99'%%,4*4*s g 7'Xf}f>( S//Q:!5%y%y40 55hh4&\..p:_:_gEEpYee!F##`+,?+l~("\!.J00BNN99ff ?44 w w_iChW,,wP1;;]33AAOO@&XRR ''Ƃf)B((=\ddJ!! !2!2??fd 43300JM/L9{TnTnC<<<< L Lblll||5K4'0'0 ** = aFYbX V V '''NCC1N-P|P|#l &N1E1Eu1c1I1I&n]]G of8RR k S e eLmYY*#B0707> mm |jj/R)QQ>E,E, o)rHrH1[77+.. b!!kңңdVU < < +D11Tkk|!5FF}}@@t ;:@@ %IIUmm//4u@a@a\c>dLdL-33"&& H#W## B__cQ%$$ A +,_0h0h$$A*r>>ib4b4UGGfhh_!T!T..-% K\\ FF_hhfww.( ( <df%f%a\ v M Mroo1=<=<JJ$&&,??^'?'?D,@@88<cWcWu ! !s JQQmdd=pH;H;zzH%%j}}LDDES@H@H/rrMSjSj2=%F%F2 8w8wLL$11 0 GIIoϊϊ9@]]]bbHTMTM vv"q"qrbiiN=HJJ@/FFdUU#'' YY %% 4++. ::BBi||n#mm4R88.(66%((`[[ 1!@M@M ^vvte0dJ((C  HQ?? 1L00UU - -'m8$}cggj0''&((xx0.X.Xf SSG[hh&y  =(LQLQQ`=G=GMxxg1Q{]] / ss; U!!0BNCQCQ*bCs\o{o{LE ( ee zlkvA큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤fJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEifJEcfJEifJEifJEifJEmfJEmfJEifJEifJEifJEifJEifJEifJEifJEifJEmfJEcfJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEdfH@fJEefJEefH@fJEefJEefJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfH@fJEefJEefJElfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJElfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfH@fJEefJEefJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfH@fJEefJEefH@fJEefJEgfJEcfJEcfJEcfJEcfH@fJEefJEefJEcfH@fJEefJEefJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefJEcfJEcfJEcfJEcfJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefJEcfH@fJEefJEefH@fJEefJEefJEcfJEcfJEcfH@fJEefJEefH@fJEefJEgfH@fJEefJEefJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefJEcfJEcfJEcfH@fJEefJEefJEcfH@fJEefJEgfH@fJEefJEefH@fJEefJEefJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefJEcfH@fJEefJEefJEcfH@fJEefJEgfJEcfJEcfJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefJElfH@fJEefJEefJEhfH@fJEefJEhfH@fJEefJEhfH@fJEefJEefJEcfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEhfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEhfH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEefJEefH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEhfH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffJEcfH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfJEcfH@fJEffJEffJEcfJEcfJEcfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEhfH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEhfH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEhfH@fJEffJEhfH@fJEffJEffH@fJEffJEffH@fJEffJEffJEcfJEcfJEcfJEcfH@fJEffJEffH@fJEffJEffH@fJEffJEffJEcfJEmfH@fJEffJEffH@fJEffJEffH@fJEffJEffH@fJEffJEffJEcfJEcfJEcfJEcfJEcfJEcfH@fJEffJEffJEc9164f631e6197e0b1ca25412ff41ba9d3afc4f44666f629390f0aabf3bdb5bd8079a16d5352e49c31cf6bb7a84b5a9204ff4b4028b6d359728d20bc4118d85e4832bc95ff40f396e7eacad29214ba29b6ae16052d998d26ad93a310efd08b11dd9d4d5516cf2afc0cc662d81dfc86a1000f57965e7283f53c9aed526471f269caa0552827e26ef59252085411b8c651e70cf6262ecb0501eb6561fc7fd00d04bf75dba02c80c2d26b3f10fee55df921de8f5ca0c62257b834c325fa840136150afbbf716c0d6d777ae4c4e30121b1cdb00c5f09f478bd815d45d87654ed232e8efdceb3795bbce2c3ececf01a8346146979b9d5fa19179bbe789bb7c2c85bed4c6acae380c0dd9ec59b149e5fb70bb6d83c133de3f3c33054d81196fc2bb618c46e6fb15817a52fc88555fda2de52df3b6d8a9f80da5d06e90d25fba8f5d8397d058fcf2994c3953589e112ba79524721ffe877b5e25bebee5367b04d071e64e7c53b55d0de55d67b42c5da4e12d6acf25196d8f480ff02c218c0764a3bdbb224f7c321a8603dcfcc36d68f2eb2d55b41d4ccec1097af5cf7c8a9bbe44f2c489c61c2545764d5aedbe18fe7dd84433ed0a3d9fa175a0cd7ebbe50b8a3026a9f8f66d6ff51633d8c3f9856cdb89c19419e61c5af975bd266748f0f90ffb6d66198accbe40cc6fba72954e610e9d328e2130ff9a312557f02bd02f58cfe89e9f19a7970e9a70902fb114af72e3da488a20ba4706ab0c03def86b41e4cba98023fb096750b39f403fe4db8822e002ccfd334b73bc33e3e9fb605b8642465c963543d8778994fc4d386a8e5a816e8edea8408356fa2aac52e57eb6b8bc3833a2cd27e77f11ef143b3ed720f5f88ab8689ba48798dc245207177b8b395ab4531e57a060a356ba5cbdaa119602f2169ec515275b28c7ac458478d9909dbec81e08a2cecacc47dda4576a2638072d6d8ef013bb82436570c81044eca7a45e16fef71e625c4575c44abcf6eb4ed592960b658d4e300c91c1c3113122ef4e9dd7e35b913e76e498087a200036f3558fb6360a1b0b69de9829a2289d80d6f4fa4261048b51293f598a54f0a475486de47ce7c313265a340fec53ef21de6aed96e77134a7a32244fe250db9995068fe74dce0e23fd70c12b03fd94751d98b773be8f64896b6ace0878969b499bcd9e3d243fd927cac1f3b88d18e37c28c1ac2e3fab0b96748c99ba6d1374f1e6ab20e461b26bf312a432a723941a6efd284f29713bd9bc353ce5e977daec97dfda37807b5a99f9016851a0c9f9360745e155f3b0a01447ed2965006db15ba8f238fce86f36ced022402f8c64f3db919549b29e0eb68993a8eb3a72b1d670f723d1292de3ed8ae06d3f424263fc9c86c44cc6dc72914fe42fd9939c8a4f50d12f0e6d7c544b83c25a5be14681e2479d13e2de9ff15c79280d45ff424362a48bd0f384adb9d6ac4f691422a0b42395c80a8a65f90ffb2e67f50e70f1e459596b02bb508feee4a880f4529a335e8d531051fe632a906cd548325116e6e35bb0575d58ae6392ee9f48c56ee48f90b0ea6be4f69ef4803d137e9a46b0e64f1c41a95e83bade0823678e9caeacd7c25f6f0681760f8adeaf6ddaa94f5f80822bbfd373ba6b5206780818c69037387dd2c3ea20dfb6689a7d3624e6124b1387307edb48ac3268a5c5d62fcdbd46e602034e8bfc15f5f4e26bc9891a18557cbbd13244987d352eefb59ccf5538573850b86b43767c4b21b5702dc62704fc440dc60158190855b27ab9a39cb3dc6238191045c86dd9cfa6d6509b34a98ec1301f9ac2d2c596352ac4cd533cb9893b62bb45f0757747050229c75eb03953283421f45fc335d3f9714fb5493d633e5d5360faecaec8a00a46580523cafe4316ce8d2706be2e15d07a6effca444ae52992dd07a8f2f4fdb82dbb4a49ec5a1095d441554746f55cefa572baae235f7329521526a71210c2b382c3b2fd536d232ecdf966c2744d6ce8ac2b891662b88339a99324e8dd105f7b3076830dfe7c8b43b0829933145595bf5b72d6db4f7a9de7f2ff5c7c86bc8fad901e16282b7b9d9ccd744d09e6f87eb08e00074094623685fcd5c77a0285a09874cd52b8d5bf58a4fe818280a686bc33f0f966a9df022f2d6133438ea020f5a59fa84a50d16e0eae870890522792b32e6631ba88049b83c93f881460155b59696714f183d4a89df26c18419b66c9ff14f230feccedfddcfcc1688c741bed1f3469989ec6784b74a1ad9b68e3bac2f928366a10f724237359e13dd97f7fe13f54e7ce184ffd3f92ba3d20bac6bf09bcefdbfd5fcc5bb175b599c634e0ac46c468d6d9a0b7279f39e72df40058774707f516bc712d2a2f436300e48a3154436fc67e472d0118a9f15816d2f8ab36bc2eaa9238da03bc0b217b5b921e9a59a321de9db393b4ce6a3af6d436e9fbe0f47b565da2a566f7be0888030440ee6af13fc539ac6dcc1b0478f555eb83d0419232cbcb738a3f856433040833a798174007cf5e3a81b46901a3c9281d3654043f84937eb974a5c9c520c7af403cb2147e663ce1ae5455683214bd2dc2a3d941502521f9bb3344682bbf8ad96b6a23cef405ce993e0863af605b8034c1c4f351ea44a47ae0197624a436f2d388d4b4f7b9f601b7140f8e17a3d643821931c41f74390b46a38f7ef37ee96b860cebe7ec943f6c5fcb87a18ed4080f147e3436a246f27507f4fe7d2ef94107227bec20ba67cfd893766e3efce537d2b11a5f87d76d19c4c70fa0d98945cfa8208a32ac267f80cdf296a3a573794feaaa83f012c48ba55783e5b0eee00eadfcc744aec046a363c054fe076aa2d53e662220bd7801ae74cbf306f971ebaeaa1b650dd6e05db575ad37f77dfddb8da9b52ad06966c916e8d2a777e3da039dc88c7af462106f3b4645fd848c93c4b57a3c70c7dc20d56250e8b73d7eafcb0d330099586f670b047e6bacc519dac61f706a284cd2ccccbac21c5aa2ce5ea1d05d04a4b5e5038e5d55c7fab260ab30e2c805275511e17eb590515dcaf02b38d38517b876101e4856f19263029cdfffa9e6a9773914c32e8319ccef143add699897e341aa5a57e52aff07bb07ce14fb817acc3b4e15a8f50286dac56c09392cc79f6d8a61178a90e5d40dbd378cf59bfb08350750d00d957b8ece608e6f7e268ff1796adcc87cc8cac058c014e20bb965634d0a30acd73617034f43c9327c59c58b9e7cb15d7652184ae7c5d08351bfefc3e750424d684b35a8b6e8bfecefee5030625a3dde2199ec8b94df6ec8812fbe69fa07ce7173e3ede8fc85a696ab871c55be78edfe69d4af6cfaac649352e14779d0828ab86d785ef90d3b633528c835ee1b3575ab3e55f5eb135c21697ce24e6160776c2e4f0a2e73ba749c2312d841cb7fbaeea7028671f79871d2efa3a0f052aca097b8389789451e82f944b365f6003c632e4fbf36b43800e315df6ace4ff5385fe6bdc799c025e911423cf1575628ef3fe60a51e624075e285a304afe3874afe019ad765f4310a503ff1789d244b4329572cf4dc3b6e68ff99cd5fa9d1a6ff7f4fe2ba17c080f32057148950372f50493abfc44c833cf14d885ff896d1c9024da3927cc64dc55fd7d1e2bc9bd2197777d61a9dbc99877c7859793e7298e2a7e418b0285c945bca29dbfbd30a4de6316f6a914a53318ab3a8d79697e396b51d2b9a3b87fafdb540298792a70676b340572ee217a6342c290f866ad094e1675627f5fe3db5d16bc3bbb0a9c0207bc039f104ec253c2e617999558f1f6376a723e5f4ed99a7360fa3491cd34498243a3c2c8c3c5ae8926303d2964d613da828b70119f8a13c1086902af921176e53c13e6ae972342fcae5cb832f09e0879619149a6bf816b1d896aaccb428fa8c3c6f41c9a43cc016f6b213d55888724295e14287a18f17675487a236a6ad31c63f9f68d67621acdf620491901dfe75581335b7eab6cb86589bd5cafdd5305928029be2f5944205e146d677e536aa546a2f1df8eb01e07e5710990dd563115cac98a5fc226fb9e785057c0cb174480da404c6748dc55a5dce8066504e8f4da01c16710f613d745a30aee769ecf2b8b6a9f066afed2a2b7aa7013987f6c19c5aa9d2cdc9a8e7fa24a36ee598eacee3bc6644e72061e777a1a2625198f9cf3d8607562353d0f9e0eb51119865df720ac14da9da3bcf03accfa87074c718d9fa9e59cbeb1732cc4d8342eddabef3f65d4ac6934067581a07b63bc214e02c15d54e53641c0fa83e4566b034b552f3e4a4850700a8a1e005ca0559f656c18042dc9f55f25d1da12c0547b1eeb672d500c5d52af83dd29e734b34f3f8cb4a8c2b9305b6e7f378214ecd13928f2671db2c7ee0f7b3786effca799678793f130051934877b77f4e61ca84ff13772f6de1960c4140fbe3c6f61acc5a4d22aed2083accd2cecd8cbe42184dcb4553b5a460ceb79a210f3f92adf3cf516747616fbe142306be804c8a7a6da49b85e0e1763d0aa4465f9fb686c8f71df59b0a9380bcd71d827b23494a0f676ef416255b3060a25ecd4454d74e9e367511ade697514e99033ea48b53efb6fc3fcbaf8f067b2098098ac628ea8109a7a5dac3f7d92e8570f835b1c4c9352782916ab472caf6542362411471661933965d3f03aa674c8ada3b5d73a2287d71e35bd8e4fa6d732724ba951dd27a836cdb388117cf81e78d9fa2a141cca1b14b0179733322e710067749a1b16fe9b7e9447a3e5bf312954eadfc9d2b2e7acfdb6f69c7ee4923037e42db0388d5cfb7e9447a3e5bf312954eadfc9d2b2e7acfdb6f69c7ee4923037e42db0388d5cf10f248762518a3b1c63c43978fbfc1f51c336e67aa329f78771efc76db5179d3ab07c96cd940cfddc53ae4f27b71509b59639e1b67b26bde1001218eed7a16a4ab07c96cd940cfddc53ae4f27b71509b59639e1b67b26bde1001218eed7a16a440f66249a4468201ebda3631ecd5b442b7902ee4c3b67e003b892111e6e13701f5231f8f9b65d12bc9314aa1bb99c87466fe273707c95faf7ef49a62e8a01ca5f5231f8f9b65d12bc9314aa1bb99c87466fe273707c95faf7ef49a62e8a01ca5f997d2f35944c0a54d14a0e5fad66623bc695163e4f157433cde66cf0f5b68514559920a8cb9ea62be33023d6dd183bea88bc20bad1b4caeb196decb9e5fb6e6cc925dc8ed7705c2bd444542091169073445d907f5cade9579da83e8d2568ad80c7b9ee51db4a46087da7530ade979f38e5de7a2e068b5a58cc9cc543aa8e394663c223c95e77edf64bf88b2fb3f9ab385866187630a4914c7c17ed7221c9f82802304af89c305a0d5feb8bf6ba9c7b3abfb6d5e620ba6d4f4d69277ef315e226b03ea1d93a88bf105909313e5661b5f35c281bece7485a9b997a621cd59f9ac2a4dc7a2a75969654a60ae333bdda0b53be979e0db035daa9780f202d9faea3dac87068283e5d1d92cfe4dfb2cc50d5ea5341d5ac0efadfa47db48595daafcfc93e79b29fca6d56488393712285db29e7e5a75c693f9be4008cde600b2b81700b5e6b23aea484f7a4312bf613b75417b78419056d4c9918b3a2cf6b5a616f6e75b7af05fa928568dc9dbf39845da83a48720e019214a0f250aa5e8de0ebec4bb64b1c3671c38f4657ff67b9508572bfc5aed3d0537d4428fa5607a5fda208e87975103191246d69aac4eb605cf6d84969b2054bee95dcccbe7824a99ae26e6fabb24009573f88b990c922fdc65adddec1312e30373dc635c6099912d4f836a4148c5caaada3258af45ae5e4220a749446170c0070dc4afe1ab2f1591be3b0acc47d548b1b17fed8909ed36e4f2b2ba7f05a2b7229af5db67e91c261fa66bab5147d548b1b17fed8909ed36e4f2b2ba7f05a2b7229af5db67e91c261fa66bab51d911b8fc82512a3c2d12b02283c0ae43f860dbcb140f3fe2ddfc7dfb7ce87985d5235a10719aa331371eb7cb7c94bab746760d862f2eedf3678a1be1a34ab36ed5235a10719aa331371eb7cb7c94bab746760d862f2eedf3678a1be1a34ab36effd93515dbe0bc61779aafb3cdf11e4c32d229e120139bfc38d3ea54b95a76e3cde5d3d019815d34906857c0c3aedc4ac4b0f1db18550078ce23b0e3517d8d520971b2d6f31c34618463d87b78f534264da0ed412f97d93523e328e2a0183213262a107916641c7f211ac5898c0177535cd0bdc5aa872cc6e883842694d8f52181a04af69c7f806ec39ab2cac5f0fa7fa8beb6802601105355fb3e606151405d516bb5b3c534faf4aa1d74eca204ede64060e98ac77adcb79d02c0ad50007c23db1c6b7c24ecb33eab8cdf14ce4ad5c0dd0ea56caef49af1399c7508897a4ec7a1d7eaeefd2e2a7b3f0814d36dac96b5208a278703ef1e1af4cbd41013dd5ead1dd371ec51b0bf2da49c5796c219238b6aa1ddef5631608c61518647cfc7b6fe56409312c0fdefb1f77dc7ee86bd131c5eb7a2b4a9885812b52828f7ecc485adc5494f05c6c6abe14547114bbccaf7c310c619101a6941b0c98db62e792ff780ad70f2947bc37792b02224b7658a62325b7e2517a01caf6085b95a6a760e0a28f12fbf6a8f91d2288f9fb0114b773bdd8cdcc93d1f50bc77c07e0f4158dd9f9bd495a1ef4858937cf0a4c46425ea0130ddb0d2ca7aa9988c048a98e11b6a1c1fc07a9a0fcae5448c3c670b462e4916eb1219d5c86bcc46acadc49024a924f3dcc07a9a0fcae5448c3c670b462e4916eb1219d5c86bcc46acadc49024a924f3dc8e147db754b00881a5ea8ea82eb944ce096ed6fc7345f5967a223490133c99a82d0a2fc18aec63afcc8b579b23ade273a2394b9875c35367690b6a293dcd7e6dc0e0773a79dceb622ef6410577c19c1e177fb2eb9c623a49340de3c9f1de25602d0a2fc18aec63afcc8b579b23ade273a2394b9875c35367690b6a293dcd7e6dc0e0773a79dceb622ef6410577c19c1e177fb2eb9c623a49340de3c9f1de25608e147db754b00881a5ea8ea82eb944ce096ed6fc7345f5967a223490133c99a83879632e778cb56dfc6df5b9d2f60c5e39c264338f6647f11568837f9d62e535ddeb8941fead731519744d145d83ecdf82480f1bb9af49144f7d8fdd0ef807bcb4f0b58a20fd68347ccb827e7a62c688e3710572b97ff19ad48a07b186af2ec743c21b213b1fc167b642af992768ac2249680e57247ff539999d9060094342d7d00f4861f1eb15bace0e9f19d9975f52b2b2153e6dc7111717965332f337187220f803a24c94538a7f05049a0e848cc3d6c5617253f7e9b3d5381cba4c898bbd175e984c0c7bd073f037b0aaa6df4d8aadacb6f1b8898484a567b5e70f5a5837c9aef9d40b86c56d54db8d1c6b229322d74b3f761c31809dd8a76cb9d1a9800821cb011018b58c87f2c824e08085d24f9379244bcde6fbb6b46da2f6431540c7c27282fd2ae5688be2831fd6c76aaffb7a7577026de0fd2bb8d41326dacb2e7aa6bbfb8ecb911d13581f7713391f8c0ceea1edd41537fdb300bbb4d62dd72e9bba0998b7a6a1b2fc45f847dbea1d2f9dc889104832b0042b5ebe335e677efd30094a6a62abf390c3376e5ed6515082bbcd70c2a6cb335a9f0378a1222d08f7d25bc47b4bc6d60577ca938da25b3ae68271de889b383b4cfbac55d8e41d47639097d18ce1d42da357521f5af5803816d3c4bade38950f69cff512a236f763585be4de892443028c3f230ab37e0c658f5bd0246b07147005580c2904b733ecf4fc3624859618c952810487e41736753cf32f4570dc6248fda1091771f56019a3f96e4ceb607215ff447544cb0d785493e1e855852f874af7c67d8e8afe859f539547112543abe89682d8ccd47e7fedb25447a4c5133f8db313772ab6ed87729371b91e1c1c38b7150cbc174a2f0c06bd1d60a411222d09e21927254b7a861039481fe0a36192ef7643adb06b14979e006c17834874e7df605d915e549e3025e8ae832d96c16368e74f1615d025cc296472cff2507b0f0824959ef98f86fd677637a6bbfb8ecb911d13581f7713391f8c0ceea1edd41537fdb300bbb4d62dd72e9b4fd472cf3011f3f9d3b072eac5592b4c58c7895ed2c41763590258ee8551ef7a78099b6154509ce59732b68a909ef7dc465724f68b184383ce2400642e6501d508255f32eea017d306e286d9e6db090a05d26f0088719b122209819b6f73396d175e984c0c7bd073f037b0aaa6df4d8aadacb6f1b8898484a567b5e70f5a5837972de213c408d10c381f44fec786787844141c7590506e001452e8e25f262be8a6bbfb8ecb911d13581f7713391f8c0ceea1edd41537fdb300bbb4d62dd72e9b73cdabebfb92b4eaf6b8af8442953da1041fa8141a0513279b8df215879d424621cb011018b58c87f2c824e08085d24f9379244bcde6fbb6b46da2f6431540c70bee94ba2d980eac331c16af1f6ea7583260dad3e592e5a263209aab26c821a9f2d72976b66ff817e2ba8e287ec3d8b7b906f8ce86999e1d4b5a39e0360e08d0bf1921bd52ff4b26903332b54a08d54ceb53985ba8861b47d683bd0e08bb43be021a49a4e06bc6306865fed9843e2ebfa64f8c72b676a9cbfb6622e8b553ea19021a49a4e06bc6306865fed9843e2ebfa64f8c72b676a9cbfb6622e8b553ea19069731c30b8e35c0e62e28fc43463f19f514afe86fa65bb1fad29574a3a3cb3b4d3e640fe915e6f5a91614823aa7ca22cd309bb267ad8221810f165aa2db4580c807ff5789d9236766419d5da5e6e2b07229a255f3bb5746169d3e1b00ddfc6addcc08bb707cbe715b44e5441d45e71758bb4d161e43cbcfd3959bd5396fd3df7ea4e03bc24630d2ce308498959d856506503097b8ff85294b741d38069b33097b0907453745ef5721d89c77fc1c48503474260b458f24127e1b3f0bfe11dbc30fbd0c5e6d4af56a44aeefe961bcf9b88f63deca8eedd20b9bd42c844cb6d78d72b4a13b865a333dcf9b94a3c88d25800227d5b0afecef97980b685f9d8504951c7fc4d444b9ec1a185e40af52cdc97e977fc49ae333b0edeb5701cf95137abac692bc9edd95ddb95eb276f7ac29d377c800604b42e8355bd0038ada34e2dbaea2c83c99f55ac75f9fbfe093b7a773b92b97afcedc1848b746eeb88b002f25563d89e98417c31c7f4324ecfa73869ad2bea9a1b054ef3b2141d72d211c30660e6f15c384c0cec9ae35bbe506a311ecaf9585d968aa9c8c0cfeaea0ee98ec0a02e5e0686c447f72bb899cd3029ae3c58dd9fc345b081dcb1c1d92f49ac56a4831cee50496acdf8ad1b3f391e0a4a1c67cd1c5094f2ffb557df36ded59e7bdf6bf661bcf31002feaf9f50f7b0af7055003a6c6af6ec63f15b6634050a8a5bef7c3a1a1b9814f201e36205b28d193be410d1e1d060c10eae4230d0e8fbcbbf9aa1dcc4a72257cf021435830acd2a8e13e486747eb89ee3a476d042f69a2624efd60c6072a99e1a24826a7735a87472a0870a32fb10b533eacf6b909d42466fa42b06d53a581e9ba0c68e451f754bb86356a54b9a254a05ed0ecb19311cf06ae14b9e2f8028ae57360453f4420aa9929309b5eb560385f9f1eedcb394acaa5ed456c88e00b2e5a3fe07c929e44dbacfe4ce4d307fc123a440236eeafa8a29e0f3b6eb432d733fea36a1ca38b050c0aed3fc8cf780206a198f2d6741951b70c419c4b6b66ed05e615f823a6cbd4633a5dce48aaa524448050785fdaf557d31bd376ea238cfefc431bebb1f99c17223a69420cf24f88ddf232a1a1f6648c5f3f1c51a42e0ac4f5126d44a09a1b1093ce50c1b353881ddd58ea77bdd0dd6e1b1ff86331cb97d361fe7ab33d459812b6c4ae6b8b73dfbf7d0e19ce924782df8bf7ce13d6977093e56073b06a482bc64ce9a1ae3764725af4dab446c785cf94eb726f8ec5292ac472f66d066fad9c92aff83f951b51fa9b732fb8b613004f4b69c703d1de7281e1de38c8ed0b130a0016f1a828a6362cbdb36f812463ca0fc73e052bfef9f8d822fa9ec724e24d662db842e9befa4742a3b6154f2620b16fea07ac63a044dfebbeef14582b843c4be9262f945b26a648f9ee05c760aedbb326540769cb421c84dbb36539ba8513d09712b1565d8cec5e3c256ea2ed82392cbcc585b05e8a9b3e3eaa38c0f38d6c228acffffaf4f9de94a3468a02ebda276ac8ead41e775382302887ece06584cbca85d26c544c702f526074dcbbecf370259c3410977c7973a73e836fead62939588d0f9f444221313744d6f8d6216bb985f380a907909b22bfc0922981385733f8b0d03f014bf4fe00c2f9245bede5f410f1ecde8028f13239aeeffe769931da3a5cf7836547671852fd882247caca75fa03f03fed70d93899331bae30756f0f4c6e1d3bafb4aff7926de35318985cb6baaed927137cdff0cfdae98b9c02bf166d5df5a402423d36e4f3c0f7b0bdcc2f5c22eaa4042a75e0a22a4966334afd394a7d21ded5956d79854f7739def6e0f7cdded4c4414cd477382c2f2ce4ed06219ecdc86064bcd75cfc348b7ce3bca88c68fc200e9f7e8cb3d94dc602a21c770294e592c1f475a861381808a1ef5da93f8c621a3dff792c2de8b9e2838c3b395d792593627bea153cc1cad6b312e26b7e3e3e903466c1967b5b0411ec142bd97c91173bafd1204f88197ac0e7a9a9b51548512ccf9e5f22faa54eaa4b6f7708c03edd8cd7aa1907258b85b7a5af40b632697562afbf4e78e74b4dd950002f5c00d57054ee442283801ecaa5358e379d2dad9e6dd99249b3d352fd1a1b5ecd92dab56a87164bcfb4021526c1774c4de1973704e73ca8c1152d7ba13b724d14e202bf862678ed77e8cb42d2a3174519275f386047ea2c4be6f076d3a2f7935563db48a25173c16f08ed51e4a06cf23778b1e76c815b0c74a147a32dbf085adcb2c98f8d0495374a644ec5963b5c9b014106bef3430cc242f6bac5fefbd51564b69dea624bbec1c898cd884f8c35282994970e51faab1ca26b21188f73bd2c8dd014962bd42dfde58ef043e29eb3661891697906f260e6c7829a6c1e3b60c23c0d8cb2a1402f1e764ce9964317325479fdd37e2633c8a6879a636b4c2fcff464cb73ead432b0c87b8a1a4657e242f6d8bb2398e9854cb8377b5b5d9b008e4cf93fff6fac16216025b67cec7bdc58a6d379fad8c1443d10da02840282ced7520a9c5fdbdc4a98164690e3fcd1acc6dfcb049d9a669ad4a70c6ad3254e8174e0d90c33b6f22cd3462e0691eae840d2a2b85d2e7446708b92f485e8d2b6170049da06c710b873ad6f79072f94b96800c71ad8a079695c72217b40d6d406efcf713faf7fb4d2faeaffd9eba44972d064efa0f9951c3fd2dc77f2c4a1d3de269327678d81f59ea754b48fac3f1e634d6df20db84e1bb844577868a457e2a6ae219d198b5ccfabfcb91761cda4e59d5656a8eff86f6fc1e466ece43055153bb303d3b9afbf682fd1f02023fbcde883442077b70877f1c4be22f2a4beff41d9a72d431cf3a03a4d7c8a31f38acd5cff3b88d510a18b16de234fe5f849d65b6955fd509de05d595b8e7b480db7b3f2207f0311743d656b85666518389a4274b3779a415b9248d1c95cbbe1741545301b2df8d6a91a81ae5026eee2a83b6e3deb022604a0b30f322da65619be2537ca2e314b652aa08dafd5cb79e04d5d6b8317016f5496179c181d3df1632d1fa8ea09ac68d3050502dc93dd17558ae1dcd938fa21de5be875c7246f8f83afcb0c1436d3b8f7633b7dcfe8bc7ef493cc69e4ea84685f78847047e6d5b2691ed4eb1b4f5ab7fbb714d82da6da542f2dbddce9f884aba2bcb07eb48d0145c07356976a193ce3033de7b5764264ec04c10f1aa0a9ef1ea3eb85f492bafab181f2030f0c9f699ab08f4f1d188d2d58317f463eabd81185a04297d8b00049972edd48ff3b58c4f55b786508c0c0e2fe3b70757b82c89cc1c972039f652991855a2a7418777c8764d98aa6e4ae6acd335f1440e38db9eca2a6dc67562abe68b2904e6872373858a1a112de99697d73bc5bf68f1b58545613263d354229c78ba1e112b5d363a9dd48f7f7937af770c9f3cacdc7757b71ff76e417eff3090f6982fe6f84ccd7231ab48393e17325fcfc818c43bc88779aca172a03563c67fd51040755080470270f3799045cf215b4818bab1ab24abeb5c400bbde16c77340aee4f4aadc04b14656129cbc18b3550737cfb595793f8b3ca1abb7c1486cf185596f26d29041ff27d58b3e8eb083ca8d97ddd16c9b0a6c90d2a5601e669e0da2e53b1b607db7b77bbcac959259eb5b08485fa0ae687caa7483986171b4e125df3e6cff12ab3a13e7c35c084df9ee9f8707fc71d2f09eaccd622b48ede9b2469f791a27f625fc885ab503d3081bf3ef7d2fb8b8dc78999dec76a18fa644e13e0caca97ac024afce7e9619d655d56e80fceb89cfac7ac6a0d2a7c7d2040ce97677c42003a2a238eaf430bf4bc7fd7d3ba98edb471aa80ff4f5be02b4bff14f86838f586f54ca1fca11897dd067307c4262764265a18ef70a007a49c97843ebfee20c34fd65afb6e034a356542fe62fc36749b38165bd0f771a96d5c89647a4321cf9d5e55abc78a17f6df903f4d3eb9e9ffb367a6226829a7d499c616f9eeca22b30dbbdec2eb4bad81af9892d72e647c3efd0590b338ba1fbab5b7c7003187863afd26eecc6299bddef78102ea8f79b93d4806f567e6b7c0ca9e18c91935e54685ff91951cdb880c72015267c3d27138e5ad7dff50c72591b21299498aa074621d9fe6b73c7989f15b65950ccde95746f41ade77fc75c3e896f295695552cb88af9c3c835b8c3deeec065fdc7e58559e062e8d8e549044b66ec1c4a3f9f131046549afa575f058b22e6b2c66127d6fe0b1017a2c09b07062377704094c3121b2501705fed04e0f62cb6a0a699c91c282ee8b93ff67b0840efbbf93be8baf1473ad4aba16a20f2aa7f3ee8158063f5c3ed18192426ea7d710d35d82b19e706aab294e41be8bff1519dde3e25ac32f692472fd262cbf66a0a09c0fa5a198ef6da04eb49763667beb25dc689d7c6071a7decf3f5f94656e44ddd46262651316ea763ae3199a9ea8c1d0453cc68f6e600247aa735ebe60dc4f1da7bebf2a92a2b70c325b6ee00f15dc64851420d6066698792566a46b64bc307d7c12dba35d0576c5dec446cc373bd425aa5674c16c82b6edd147a55d5ac3ebabd5989edce9023e18fdd378d1c001c2cc5d5907331680106ecec7d4912e00128362a9e65957a295a41cabc2e328c610cfa7937050e3e51f95e583708c5cafb8153ed204b5804dfdad1b3d7b08e8443ff92bb1816dc4f10a80404f2fd08b349a23357f3f44a972ba62a0df6835fb29b64b4b1f957c84a99c3fcc8d8fb04c605e688c4f3e5162192f27462c6833fc3a094bd33c79de5a2cf28ba3c36b33785f53a53d35bb9bb0eff3cb2b03720cc2f8eb1380aa42f58e67b78091d8549e6c582ca5aab38b6b11a5d32ff8edf0a5ea9eb2089064900c765feeb3465f4130c1d5eda1549257d26d90d2d205f72baf9ef3c2aeedad7f1b08bafffed4646e1785ff674736761ca487d630c202485d210717adb2dac2f3dcb33d69abf5b34ca46b282af5a68193d9f72737f1e74e013b48b5831e8ef87d0545b1ebb06693516af31c4202a1bcb0b89bf5b17b06e0dcc74ed3ed9210dcece625dcd6c2cabeb4f258667554c283e583b55f807615d496dab711aa48a7554e2238e18911923fc57b102cc06a72bc90b0b6bb3dfdada363da0931a766676c77d42ddb83ff21b3f8b762905ea0b1bd1cd2a8aefe7a02a73d445b6a0c004464d40a264c466df1836e993160809e7011c2864d118271342ec48275bf9106474e0b276f2bd36cda005de19c3bb28dc3eb4a62b652bf4e14048cd29ca5c368a6059a18c21ff1173553a3da9767bdecc7e4967dee4e1a2acfdeea55bc8515496b947a98309ba418ad8ea33ac1573f0ea00a51498ebe6de15186bb71e346fbf28f4777e9a72e7640bb5306173b2e9cbe14f38a52aa41578100674a24641faae82c136363a8e3a702af405806afa8ea9708a50d9176e39e17d21c7ed228e4ec4f0ae2411a2868c436ff3be024745f61f761bedb1ec6c389ec9529875fc136763baabf32f0f74e902097e0315178af2d3565ef80b85b0ed5a491cc96ccfff050b64c26b92f2da238f5045b47d13988a672885b2041461f85b5cf2988c9fc09dc6868ab9df865484f9c873e4b4675944f6e6199b4e493281bea8747ed979d5ec2637b5d2cb9d418441cd9495dbb0d2c841368e096af9ebe6a10049634ee14ff9a1dd06199dff0ccc73e8fb8fb82cb5ea5946871cb24c521b7947e587a3dceef06f1a26c773a3b442dff87d99d291dc391c740d75e61d2c6c195962d449a1add3d0f360895d70436610518cf6952628eeebc168c6645187e1915a64998d7b79fdd66371c161efc01c4d02f916a0050edfc4ab627a3a005dcf2c9eaffd996ac0982ce18ad5e135ef39dc65c0d69495984d5d8ed95b9cf6750cd3b0ee046dc018d0fa41b391521d23b854a10884abd6967b20f99cb0c19b75b6c84c78f9e75c381dea9b8a2b5264019b2fd0f6d737872f0bce2decb119d7440a408127c46ef60368a18b342c583f176612f58bbff4cc50c64dad8ff4002191acab817647e4361742254bc3295670df96cfbba29a5c35a53dd55b5e9c7428026370098b9afd67c64921ce78b7c6f193fe8612da3120de00a2d4cfdb9b174b45f1b619a8cd19e5e4b97508f5218ebed3bd7aec420cce393d5506efece94beda9001660b23f20c1b28217d0e4816da15ea5126aa475e01147f07a006c8deb5efdd03bc2626128503498d35238791c32b42542834568665a0003d25202b5127a3c53347d2bcce28ee47ad72e542d45629b5e23c4beaf46064d2515e665e0c81f2555f9b19e72cff8e9344e7f2ba25a77d9b87a5c9f58bf051089bef257c721ce64ae236c28ec6725c35e3b819c96ea206a9ce65c956769ceeb88c2ddf2d13e5b644cc0bebb4592fc1b2190bcf30b0e7560aee514e770e371ff9a496ad517d6af023b87a4330bbff11c25a5a7063e0df98ceb53631b5a9df92568273a478b5cb5906ac326f2e521c818272017e0222cffaa1f7da87c063f79a7b0ef307887609447eef3df0c1100691d577fd53bf010e3ab16287a90f104df99e132f8ab1afa6d26b8efc105a50c2093d91b3192a4d637907e04b41284f85d9be132f8ab1afa6d26b8efc105a50c2093d91b3192a4d637907e04b41284f85d9bc307773769274412d0d16951c2f6ee4ca1cf82eb9ae6b9d670ccb2ec93325a4c1d14540b17bb5845b2656561f742f5174dd3301db5b919e2ccced883b9b45b3d457a846bdec9c95471008e395848af5f317fea4017b6c0c7a02c98b16dcca9800d5216ca5f84c64bd63fae69edc59341ff18d8b4b84e81107efaa29b19877dfa4b93740cfc089c62d4a05001ba13d99209c9d6dda6b919f331a830046b91021b1ce7e4f76ea1ca631f8c7f6f111a79da0459abbdb3b7ffb75889016aa063f49b9f6ff59deff9a407d6d7f7f41759eef338bb6ebb5d3abae9180efe6c9589b34f1d8f94f8dc155cbe1133825c3a771ed8d7bb434d2164d8b91f56843a21a7e2a79bfde32d53cb9036bf776d436c500e96cfed3e5b309dd8725df961757e3677339bfde32d53cb9036bf776d436c500e96cfed3e5b309dd8725df961757e367733bf3d4121e5b50321cae64b2db42c66bc857e6b1d493a32550088f133210c2eed0e962b6512ff151ff28b980c6ac4f068384f1d1b097660babdad35af386beab3202ab1401732cb28563b01af899cd61bd86ab5039ebef9e2f547e72c1cfd5312202ab1401732cb28563b01af899cd61bd86ab5039ebef9e2f547e72c1cfd53124379d16b242e6dba8cb8edc8fc4c3c75220cbca5c66e87eb0a0bbac47d0f176c79fb464618bfc96071929c4fee798f065106b1cd2d3692fcb6b8d1ef46b83b9e410c26b109ce9d32d35c0e4bc6dc92a7579910ce706939a056323de5801a7a87edb421b4ee6cc8e9ffc0b719b31279ae4bb8821f52a19e8f32ad77d4aca3e51e0171178ae901e108f56305aff7e36268a690bc49933a24b1aaa587fda00f4d3b7151dc8ebdca81804c959266b14122bf74e62cab773dd8e2f37b379aac1052663c27b4cdc7089ddb410ddb81a5ccf42662972e07dfc44fc429d3056af6dd128e480ac039362a15a7738ba76dffe807fd03fa29f7edaa8eb21ca0057c44a1ee8ca7f21a2c5226b7d35ccac23780ae535921353b54bf7d7e61f1ad9b021167ba6c10e37c432b4b93a7d257fbb890636fa7f6f376321cca47d5919ea5b6adc75d3858ba5f2c20d320c3f5390ff9778e03d341957bd37c5d3cf0c3327976979f2e01f19a80d1c7d5d758dcea82276e73150454212a5136b19c5fc2727786132ddafdfd3864c058e3cddf5ce304faa4f47e6aa8b70fe1672836fd8ed7d1681821800fb8b271cc24a9aabc80e01b63cca18e01f912520a3a2acfc5ab7e5a71f97737b0ce8bec1805781ff302b4fb497d78faeda5c7a52708dddb017bb38dafee9a4252ce8bec1805781ff302b4fb497d78faeda5c7a52708dddb017bb38dafee9a4252623495d81e704b171c71b2ed37bb1acea14707c6f0c14bed506d8d720485c3850b8c01c046d3b39e2fbde661474630ded1efc6cda6d193ff1cafb428c0db32790b8c01c046d3b39e2fbde661474630ded1efc6cda6d193ff1cafb428c0db32797e550ad30f6ff556df93f030be176e61e7bff9c36102e78b3ac998cb5aa6cebf670274a3d55dff63dcd02921a191f5422354821f72b59a5e1b5ead2f1c8740c1670274a3d55dff63dcd02921a191f5422354821f72b59a5e1b5ead2f1c8740c1fb43c7e0b816103e7864c8bdc2740ca3d824f02d6c1b1715b0543adb4af31639cfd723672e8205a30f93aa14e24ef5b0264c41db367b50cfa0b6fcb83d881947064e0d469fac0350789cd5140ac8fe708638d72449a9b4013c047f19c783075c0ca5b36d5f70d242543a7456536a6c8bfd7c6f8bb643cc12039b9aa8141e913f6daff99c01b3c41a02db21fa5a5eae0ef5fb0cfcb6bd2e86b982174ac207445e1354d31d17166060e0b46e2d30856af4abb796b271b421b62df54a9cc4206567f20c4628ddcd060e43d56380d63437bf91f0f3732df8d2cd16c6255df9b268fef20c4628ddcd060e43d56380d63437bf91f0f3732df8d2cd16c6255df9b268fe39f465621751abddc0150408eb6eac1d589243075b3703e4ed995c57a89d1e881df9b82d4ad92155bb342d4f0fb2032c7d15ebd0e95985ec78536e9869a3b4741df9b82d4ad92155bb342d4f0fb2032c7d15ebd0e95985ec78536e9869a3b4743d08892d3beb18243767b7e1b01d8f69465d6cfbb73c00ea76343d5a7e763f5a945ff3d35c32a827b7f93ac93a442ce84e73c299491f34c77001d9f50bd2152d945ff3d35c32a827b7f93ac93a442ce84e73c299491f34c77001d9f50bd2152dd549944d99bc29220b4dd2d40cf83aca2043bbb219781acd24cf4ef692a1de7b8d16f98e43f02c8e6eb600ee8d3503f75172ec7d1941012231b65d73feb7d6d88d16f98e43f02c8e6eb600ee8d3503f75172ec7d1941012231b65d73feb7d6d836608f194c023f23a3e5213403e2acae5f7427d25f0be7ab0b0b9851f9439fd6794fe8aa65014be73ab2d861c98ed82042fcd47c8a55ebd8eb09aabcd18c63a736de30cb7b20ea1f641771fecf10543fe07e1c7ec1bde39608426637185b378636de30cb7b20ea1f641771fecf10543fe07e1c7ec1bde39608426637185b37862efa072a6ef536492c77c6fa4a5fd40a2efbfee65a12caa9d841db8d723b574986469db9fdfeccd7058e1b773b859797b807878d59590331b8b7f6dc6f0a9e6286469db9fdfeccd7058e1b773b859797b807878d59590331b8b7f6dc6f0a9e62b34d31d2e3c349a6b90c727f0b0ce5561837395749e3b7f8ce0a9075dd1201f43454585a198ffea4f78c67d58d1ebe89a0be1107612058e25ed4cb37964f2a71e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554c3a7e33c31b3e39b426fd6f2d44c2e554567a442ae377e249447bb064403328d5cb11449ddad60ae56e8e2b70f9a2ee6c40790a903fb2a9786682be1b8ad964d5cb11449ddad60ae56e8e2b70f9a2ee6c40790a903fb2a9786682be1b8ad9644a84711a85b496a367f0d9b1655f64a7d9edea4a3dacca2934d50e87349a12e063ebda0010d09040a4952342dcb403aa960b27a3a22516d640e982f516fa348d191e525c3207e6a86037a2c0b04640b3b21c4174efda1e5ad1c9d75c121b42dedbca9a068dcc8c2b6767877b5332d585130f31841d4e0aac3f58c447b79eecd12a329a0acb7c306da2d8390e18d6dc9b22394746e3ab4daf809a7fd6b259842a2a329a0acb7c306da2d8390e18d6dc9b22394746e3ab4daf809a7fd6b259842af28ce51867751a25568fb3d061897a8d64a72599cafc1a44466af6598e433bf16804502943a25ce6098851f6e4413e95c9eac5c3c0a548a6e3b1a2b47b489e990ad00b0ea5f1ff6aaa83b50c396940d7c8d6e5067f4442cc55d914c674e7b3f40ad00b0ea5f1ff6aaa83b50c396940d7c8d6e5067f4442cc55d914c674e7b3f43a3ba9d8e9f51623b17af2e994ceca95741923e0ad1552c33850253a9ff8ee89731749056019fa273ff1545c339090bcb1925eb6706f962f4d1b29edefd61823731749056019fa273ff1545c339090bcb1925eb6706f962f4d1b29edefd618233b53a72afee24ced415fdd9ddaf38f2815869c9fccac15812697da3f0e1aefe5464fff7321d4f1a44c39b40e2cf0b3391b0bacc57558c245ba3f534d0bda293a464fff7321d4f1a44c39b40e2cf0b3391b0bacc57558c245ba3f534d0bda293a9bdb5957fcfca442fc8ccffca04ee9548bc7021bdc35890afe0f4ebdf21b1e2f43c05657b31644693add35099ed8701dcdf7b318bd49ea12cb6cfa42d89d311343c05657b31644693add35099ed8701dcdf7b318bd49ea12cb6cfa42d89d31133b8bde048c0afb455b5fa5dddb8b3270b21241134ebef6f67b66a8d291d91732ebfa264344a1123a701131f2974ad5a047749d537752f34e24b36747e34e6a2debfa264344a1123a701131f2974ad5a047749d537752f34e24b36747e34e6a2db756b0cf0cbbb3dca7219c7e9ba139f7dd8aae546ac13909a2c08c55d8656638ce2909421055dfd251fb73e3aa43ccb8dedcd9aa0ff40a9ef8a3835271b13944990d0f909270c2fc2c6838806231156f6c84bf6abb7c30b123802d9146b508f90465a1637415c7fdbfa45bd430c53eccbb2fdd9b983a2e2808afb20247f45ab9974be69b278206bac53f1f39f1b750a00e0c4db5393a3d747c45011c7e67c62c974be69b278206bac53f1f39f1b750a00e0c4db5393a3d747c45011c7e67c62cd80f55ac66a2570c8a19d2b1dad7c057cf4c944d9c2f8adaf5bf6c8539881e137029ec1cc4084b1075d751c10a4912d23b00709d2aa84151ff66c7e5578493eda443ed7b40f3c2193c86cacb6021bd188b3d981b308f0332f113e4f13fde91fe6441ac75033396290de40f94310f71234d91cbf8e753a17db5f4d070384757e6b61ce17b00a1338fca815852eae64f7c819b9ed34a6f5c40ee189ff32312d8fcc297dd7580b60a98a41fbcd728b4105d72962cb05bb18bce41106299fa2a7fd1c297dd7580b60a98a41fbcd728b4105d72962cb05bb18bce41106299fa2a7fd12ee84550143db9ea9934707615afb5523c3c6bc3063d5d85631d6ec0e4493a541fdb8a8c8d4f6d22de52a04a39df682247356a8e2eeb49ded38aa26a3f5ef7101fdb8a8c8d4f6d22de52a04a39df682247356a8e2eeb49ded38aa26a3f5ef71085cc025dd0bbc6ec9955defaee2e30f87ed20fab115475bdbe6db2fefd5e0cf1e3ca4b9db924a24676731a0dff423f0322b432b5f177a27683f414f8447a8cab44dabdd6258068af9b101b182b0ecab71c4b5282da43cda0e9bfc15d49dd2a2c44dabdd6258068af9b101b182b0ecab71c4b5282da43cda0e9bfc15d49dd2a2cc86fb360619e4114fd71ac6000909d6da367e11bdb9fd77ee83769f17079066dbd699a589564813ab60549e9d237606bd4c330d524f3077dc07bc67a38a45d5abd699a589564813ab60549e9d237606bd4c330d524f3077dc07bc67a38a45d5ab220bb27e2a4395dc131ccd7bf9fbad0f3de0bde4138f724042b339fcb05ec51e72c147a12412362eea2ae710f91ab6773f1f4d7e10cf40844b884b8e8ece3d4e72c147a12412362eea2ae710f91ab6773f1f4d7e10cf40844b884b8e8ece3d41288e081801668f1b010c9c86dd316968a3cc9794fb2a7e7fd0e5d14ac17f32c41662d26a589bc4619fb729d74f4bb611e8f1dfbf77621c17fd40fd302a91a2a41662d26a589bc4619fb729d74f4bb611e8f1dfbf77621c17fd40fd302a91a2a3879632e778cb56dfc6df5b9d2f60c5e39c264338f6647f11568837f9d62e535db59dbb676f2df3bbab652c0091a09a82906f4cb7b29892af659c2ef00d14ea6f10297c9898a5b579609a53be5d9280bdd574883e9884e8b5022f1446edde51cf10297c9898a5b579609a53be5d9280bdd574883e9884e8b5022f1446edde51c72c499ffaeaa980692e80f376f9c3e001527792d6011815201d5cfcf6a1c4cd282fda661e4d220b7a0eef7d1167a86c5358a094ac8ae2c45fdbea01fb9b63db5326fe11f619d998020869bcf1fd841a2e04ae7af0560917569161a98735ee978c2767741b05c2095a28852994a1ab52c88687140b32ba825c08ba1c339a282ffee4c90b3e38f21c46787d33a153c6be9b2315e8d6713932f5f8c32e52250b6e64eb588a331dcb41cac7994a39a8c147d3d46b276c71a33b74f4305dd44164f7b7c371f54360f268521754635e89e0181dc07da4954f1d451a1a6784ff8dc05e207d4803ec8ff1ae3eb2267210d5369915f19a6a014d1b59f42fd67b8cf4f8bb1c65554cfb6d670e4639bfc55f5e0ff728c5f1861c3582a63bba98dbe0e340e2dc65554cfb6d670e4639bfc55f5e0ff728c5f1861c3582a63bba98dbe0e340e2d1b037a5a15f22118da8a0b236a69f14d8f40a7323a28e6e5f2f10cb381da2d64bfe1dd860275e4b4f712802501bb14264e79330ba6a3e73a59e074424878dcdabfe1dd860275e4b4f712802501bb14264e79330ba6a3e73a59e074424878dcdaed20b29303210540bd92b974c48db4541ce7c91321c9eb1849cc091b0b13a7f096c71882a462842a3d800b50b376021997d3caf869f78d8dc66e8358a33cbc5396c71882a462842a3d800b50b376021997d3caf869f78d8dc66e8358a33cbc538fe5ce586d82cf92c2bde6b054af00049dbda726a549f709d1ad0a2364d600bf5e62fe2b00adad808fc5ed96db87b46445f93316191e01408909e8390cdd0a995e62fe2b00adad808fc5ed96db87b46445f93316191e01408909e8390cdd0a999aef92dbc72a94fed02ff8e557c906141500a9e20caa14f3f861a9d90a8ebb425f454eae79216d212750e1cf3161803cb883ff5b87d76c14909a0aed3524759e7bc524f6b5bbb69e92c598a0b2992732bd67cf0579fef9286b8d064ddf7103d467d6c7514dde8156e657ba0f5cef14b1ee6a5fb6624c71ace879b511f45b3b5e3f38a4b2f5627cb14f7fe0199f58ff982a4be8294710b8b5731ef7bf43f85c954e6811b673fd7b71f6069c840b9f7358cbce0b5b44e18cb1a7eb4bdfaddd9dbb98fa5a63e6469381b5b5056c41e90fcb922ade3b7639e8a13261e217f4f29d4dc8f55f8b900bca3e172fd785bcf904f9fc4d73eaa22da93585cef9de37961469c8f55f8b900bca3e172fd785bcf904f9fc4d73eaa22da93585cef9de379614691e187c9a9e0da993bd129eb8c3d188966814075ff19fe949a56e0e253245f34550c6761ab93f57590cc2234d0f603f9d885b672e2ddbb12e6f17ce6bcd63afec940aba6fd50cd3202801c7e7e1f6f823a32e23d936c9f8164e79e5df82a8dcdb940aba6fd50cd3202801c7e7e1f6f823a32e23d936c9f8164e79e5df82a8dcdba3ece655a530d3e4a20b527835b59edd0526296a348d2fea3b6bc576bcdda1d4f829f1745af20af73ebbde5e4468d3af62a3b567e75eed81376c8641a372db09f829f1745af20af73ebbde5e4468d3af62a3b567e75eed81376c8641a372db09aa787af1b2df12a75c855c20271e96b29a5c972128b9fca1d1c2e01ad44b31fbc3f65fedac6480cd6f59fe320f9687b5862846290ca12c956d750bab3a236155c3f65fedac6480cd6f59fe320f9687b5862846290ca12c956d750bab3a23615582ab2571a2d34bf79a27177fafaf27173b03638606e1dab3a1b011ee70946d4f506889851ff4be29f10cc5c267e0f429120aff6977d29e2b1e67e92911581ee2506889851ff4be29f10cc5c267e0f429120aff6977d29e2b1e67e92911581ee253f35247c1ea879aef352b3372887c5fe71cb86d4a513c8d0a379c48baaf27ec93f10888ecf07aecccf2bb4e6f69640ad29f7eb8feda02ebda5042a86de7aa2293f10888ecf07aecccf2bb4e6f69640ad29f7eb8feda02ebda5042a86de7aa22e3686028c3337cfb9b244df2da1abdfaa28f7bdce4ea5ee2d3b52271523594e26e80db9192e9a64657766a51041f6b071213bbb160f9564046c8eca586a5ca926e80db9192e9a64657766a51041f6b071213bbb160f9564046c8eca586a5ca92e61b11f6f3dc9946b0e386182419871bb471cb5b5db58fc0129da3090430ca6d52afc0fdb42483b79feca8186ba20d21ef56c152a4bbcee7433fd20b81996eea52afc0fdb42483b79feca8186ba20d21ef56c152a4bbcee7433fd20b81996eea0b78c30c68d61705ec51bf9c016c7d253a79e8ad198507be7f6a1c7f66f3711692a87ed343d6bd841213392ad8f1ab028eec14efdb0ffc795284eac30948afae92a87ed343d6bd841213392ad8f1ab028eec14efdb0ffc795284eac30948afae7671639b66de4792ae8a6bd00e231a5788f5e79bb0d9309687dc58841afcf6a2a8373eeefb56cb10c7c2ab1beaca50637b8f8fda4edb23c49c05a652004fd943a8373eeefb56cb10c7c2ab1beaca50637b8f8fda4edb23c49c05a652004fd943c97c958f1e4f15e0bc7b3fa72053af27ba485c8f06cdfb85df03d02e70044c43dc7063c38d8d670b7de10f307fd4cfdd36cce1f532bde1f6667b86d213298669dc7063c38d8d670b7de10f307fd4cfdd36cce1f532bde1f6667b86d2132986691603419b97ed60e2e9766ecc3df7ceade5fe364c4f04d77bde2afe9d0ccd94f6b19872346220037a6cbaa7f853bfd4bfef2516b859ce9d1e511d2c8ddb296ca7b19872346220037a6cbaa7f853bfd4bfef2516b859ce9d1e511d2c8ddb296ca79d3fd18c7f48865fa829de9a3ed8c02d5a73e1c5561a3b2b5b2dd1b1432d9ecfe2dd4d01cd8f80f3db9574be9967ef485045f08f1cd8a334f32a458e318b5588e2dd4d01cd8f80f3db9574be9967ef485045f08f1cd8a334f32a458e318b5588f39afbe62575eebf10548d87c498a353f770546cb938008a6d95c5a318e0830cf9f9c72c2bef91b273fae4565537dd54add1c50de9167a8bab9102a6fb551cedf9f9c72c2bef91b273fae4565537dd54add1c50de9167a8bab9102a6fb551ced372f6cb72601b280e95e0fb6b31f4dc558a44119a76f31ba757e494aefed668324ba620a02cb5b454966edc6b42dec335aeec509ddea3dd6fbeeb088e1c763ad24ba620a02cb5b454966edc6b42dec335aeec509ddea3dd6fbeeb088e1c763adeb429f839a674a1363d5e75f543256cc0c16a9fe898e5f4e31cdf9391fedcacb4eb982834cd90849bbf9d0309e94aa34c51d3f88523d7c67971c0ca24c651c750932d352305e10157d4ee37c9cc97ad2fa050a7edfdb7979c7442ba87f0025cb390b1c7938fa9349cbe4470801483d0caec7aac28643b24bde0cca50ecec72bb15c0bc16f8dfd4c3f80ebfb966e1f26a2f0ac118a1e4762ed86622f5be110f4815c0bc16f8dfd4c3f80ebfb966e1f26a2f0ac118a1e4762ed86622f5be110f48c915260c38d4fb070cd145653c0b882edf5d2e26612f7425778caa810ceeb90218210ffcc34be558dc5273f583fc5e303f84cd4312955d7234c6dda729a4b68118210ffcc34be558dc5273f583fc5e303f84cd4312955d7234c6dda729a4b681b14fb4edb165320e1bcf9929a6fa67d48f28c8548caf410de1f29f479a725cf8071be1a2ec858d4ddee2e085cc2f207b93b63d2a0d3e287eabc74de32ba58c03071be1a2ec858d4ddee2e085cc2f207b93b63d2a0d3e287eabc74de32ba58c03c27a183dd9a191b7f314d6e18a72e44e6784a44382d9fd08d84a8021e3b1afcf6821208671727d981d8238c71be6ee5f9077c34baabef76f33aa86f119995e496821208671727d981d8238c71be6ee5f9077c34baabef76f33aa86f119995e49a1a0a09cf11f11a2d8e78e4e952b2b38588f7cfb675bcb2d8548f810d046e3a12704a43b8e885efa770df4b95f6967da69d2d30716986b6e68da2cf719990b282704a43b8e885efa770df4b95f6967da69d2d30716986b6e68da2cf719990b2830c7140cde98d6f32f0f9365a07045dcc19fdb28411e955870e3920af6cbe8f2956e347898548075f06d4d792ca305fe4b7d69d2233580e5325d83f26af7e45a956e347898548075f06d4d792ca305fe4b7d69d2233580e5325d83f26af7e45a5c7e3cc40fe0276eb63876d41bb02f772c13b97f9591d5866fad152ed9c645c47aa5a2ee3e32a672cbd255157fb2719ead15d8fd570988d018f1f7741350b4b77aa5a2ee3e32a672cbd255157fb2719ead15d8fd570988d018f1f7741350b4b7fd390fc38dad6c57404f690cc69c7e28dffee8bfb3e6adfec68e72652de2f085782b308dd84aa6feb8d07f504fe93f14521a38ae3405e58d8de987b7ae8ce201782b308dd84aa6feb8d07f504fe93f14521a38ae3405e58d8de987b7ae8ce20121815a9f86fe25d64c6b0f9e67c664bdaab171f4900229f5c3d81bdd69761730a21bf128006f84fb3cf69049764f8d6f59a53e26ca826925c696f5d6fed00105a21bf128006f84fb3cf69049764f8d6f59a53e26ca826925c696f5d6fed00105fab303836a54c1cbe797bc984b8c58c6579c23a73df1ccc1dcfd506df7a1c16101f9a9877ef7d102d438dca03f6aa44902bce48822f5481f5c449493013b08b901f9a9877ef7d102d438dca03f6aa44902bce48822f5481f5c449493013b08b98d18dd407f4f409f70b39dc7c9806c4c3dc71c9237c54bd916bc3de641bed1a5d7408bf300a90ca531b57c817c998e9f197b31e85c56b5e3f1915ffe1f189c876c902a889d8f84ce4e0a2c21dcf9a1df0ee7fde00032b3aa44f4927d36b2f66dedad629688dd40f6a870172831c8c192a004846242c2510bf080c1fd544843bd6d2deb42512933da1aa85219cffb0f3ef9ee36dcee8b612ca9449103b175597a6d2deb42512933da1aa85219cffb0f3ef9ee36dcee8b612ca9449103b175597aca8ffc1677dc229658982085d69909747d501a67813c1673e08bb556c5e3576237e11a424ce96b1c574602475c13ba1b013da766a0923d4e177377ad25f09d2237e11a424ce96b1c574602475c13ba1b013da766a0923d4e177377ad25f09d224038f603609b7f336ac0c5f8f8ee5c7b9bd4882f6cc3c70e02770b92a37b89df291ab4d6e2bafd3ca30b2ac8f5b3435ec4604d8bdb6ffc97e91d4c7dcecf2848291ab4d6e2bafd3ca30b2ac8f5b3435ec4604d8bdb6ffc97e91d4c7dcecf28483c833f13dcead86aa3dad2b640e2e57c336c3dafb27b3017a12e459da9b4b5fc6c695e145f45355fd5571808f57a71ad8371cc6d1ea0ec42433ce297ea977b0a6c695e145f45355fd5571808f57a71ad8371cc6d1ea0ec42433ce297ea977b0ad0a722d6f0bf73c27d18245c9e5464fd91062a96c1264aa14ab403593aafc2aa053aa5489b77539e48cb7d57df5815b4e8cea5ed7356ebb58e54f27c7d8d84c1053aa5489b77539e48cb7d57df5815b4e8cea5ed7356ebb58e54f27c7d8d84c1824b6599ce4729b884d91ecdd07e06a13fe6dceea10432d885ad3027cf780049f0fd63cd039eeae27ac5dffc21f9399d0f7f5fa01491dbdd2b532d735116dd94f0fd63cd039eeae27ac5dffc21f9399d0f7f5fa01491dbdd2b532d735116dd94a91c6c43a0fdfa6f527409f37b0ed6db6dfa4d1db74646508cb3c2c3afceee490f0088d0c03faf61703bd77ae07bd7751bfaf60eb3b206fe10d89c6c792cf0fb0f0088d0c03faf61703bd77ae07bd7751bfaf60eb3b206fe10d89c6c792cf0fb5bd1ef77f0acd1608725982a584a2435f176d5a35b992e307095a8e4112581e83a498ed5ca4e9044e2b4e8115f196af03727b26ddccdc35d7035b937721a8ce83a498ed5ca4e9044e2b4e8115f196af03727b26ddccdc35d7035b937721a8ce82fdba7011f83388eeddae3ad07c5e209bc8bc2edd9170c63e15faad8b167b33980d7514a5799dbded68deb51b3cd05d76f8cc9d9fb37737833017c93b7af459f80d7514a5799dbded68deb51b3cd05d76f8cc9d9fb37737833017c93b7af459fd19cb9183192641f8fc43784442f9fba2ea80acb0f7d0696f8dd191f8f61c1e8dc718d0b35af3d3b6634a65b816b40cf0055141352246806a426c5dbb38ee189dc718d0b35af3d3b6634a65b816b40cf0055141352246806a426c5dbb38ee18940845f0919bc83ca7972bd9d08b7b84ce2bbab50105810154b759cf942771ff85e7ca574c0be8ded5a247380c072637e7fd77834d4789344dd2f7f50af63e2135e7ca574c0be8ded5a247380c072637e7fd77834d4789344dd2f7f50af63e2130bcdd4c06e4f0d0e92e4413a036ac8344d7f7713fa256d3f88f0211a6af0d0d90451081fe47612192cfa641a3efad144d23f0e944a0377819c603eb31320b45a0451081fe47612192cfa641a3efad144d23f0e944a0377819c603eb31320b45a1bf68d35f12952cdd4d71d2c532267ed0503073df2f472a64c747d9efc109537be7919e542980d8b82044278bafe12b860052cf3e5ccdf706da28f84dbe07b70be7919e542980d8b82044278bafe12b860052cf3e5ccdf706da28f84dbe07b70941855a43d47c61e22b4d05f6b505b653595707e7d65bc2968a90ef8d6b180eb82e1963b7cf93e52fc5800f85ca6f9041deeb58e69ddeb9053727f7ca687f04282e1963b7cf93e52fc5800f85ca6f9041deeb58e69ddeb9053727f7ca687f042cfa8341e6de9c6b9ed6e5464723ba269785553447c9d6b004f32bf38c0a2ef8e3af6d59a1eaf784fd2d56cbf993e15789972e8698c53fb8474050add46f128573af6d59a1eaf784fd2d56cbf993e15789972e8698c53fb8474050add46f128574d11de2025244eaa9cb600ac3de0e733d47f34fe3124baeb6a5d6d0f8a961365a58ed49022a2c359470098b3ef87c9396cbad7e6f4d98a2a09bfed9219fe974ea58ed49022a2c359470098b3ef87c9396cbad7e6f4d98a2a09bfed9219fe974e8339b4f03c3829704f1ecb5f22a9ce1df894d0aa60d52c20432efa4edd951c0b36db860f7b4585b5b6bdc238f2167ec4e581a4a82497a87f5e1963b54bb2b46036db860f7b4585b5b6bdc238f2167ec4e581a4a82497a87f5e1963b54bb2b4601ceba6939f46233d276a608c9fc3840f38f23a4b689ffaa9075b5f59d5cc6e7792a75cdd867e7c1d3d943a09eff74eebb072d711114cc9267854787b7d45cba592a75cdd867e7c1d3d943a09eff74eebb072d711114cc9267854787b7d45cba584c3c250f51f97bd44cc14c87a5646fe9b3c31620173e18f31758b5a141dde4344dc0b8d52eed40d68a742a5220492b0f26b5328ddc54a73a4c754b40312cedf44dc0b8d52eed40d68a742a5220492b0f26b5328ddc54a73a4c754b40312cedf08f0a530a80085ca11af94728ba892492b9833e48a1ecd66a78d680beeab63235739e63947f1e102d0b9844b6422b0a435837982bceca0ee3ff2624c46261f955739e63947f1e102d0b9844b6422b0a435837982bceca0ee3ff2624c46261f95a7da4206dc12ec8f567303230acee8f532d256fa1839d9f51d89e11d1bb80d0627986de415643ef6ac995f8cf2386c640650d787938f32a67a03f10512263b9127986de415643ef6ac995f8cf2386c640650d787938f32a67a03f10512263b91bfb4c1af5f71e3b05922f18d1e4d13472328ee5afc90c3ad859648804715ac357af429a53a747d0fd98cfdc5f54324450126e5c96eb376e519006935df7b0b467af429a53a747d0fd98cfdc5f54324450126e5c96eb376e519006935df7b0b4623cf9f7618b6f92be2dd950a64ec6903c525b6eb2e688a5287d90bb886dada0e5f4d4d1ade6063ff4308f1e56ed859d3422c376cba5a2145307a245bf83843e95f4d4d1ade6063ff4308f1e56ed859d3422c376cba5a2145307a245bf83843e9e5759bcc4001fa9ae49edf85c0003b4967e21caad24c466888a33d88f63ed8b14376eb27c3e2b200cfce735409d373ef45488885f53821426f8c9e19cddfedc94376eb27c3e2b200cfce735409d373ef45488885f53821426f8c9e19cddfedc90aa8b5d826339fb55afc4b76126476a0a387d75a678da49ae63fb6cdbea138b06b228d8e243ffff98f865e6dc7c7705b17a9b40742938b8fce05762a6dbc79ec6b228d8e243ffff98f865e6dc7c7705b17a9b40742938b8fce05762a6dbc79ec1cb6f7e1cd145edea66c4def6f57f19b1f214e116459b263a5110115bf2ad29cdc6061dc0b0d8d72c154b982bc675f14c059f7c864a7e9c55871d54abc180027dc6061dc0b0d8d72c154b982bc675f14c059f7c864a7e9c55871d54abc180027a748272eec430c4460a3d605e064ec847a5c04ed08b0114b0acfa64d7b6a05011431c175a4627dd6ec7cdf920b2ac27fb59ccc06eb39a2f0fe8d7445aa6fd5771431c175a4627dd6ec7cdf920b2ac27fb59ccc06eb39a2f0fe8d7445aa6fd5776d425a5828d403c014e5a7295f19ded3f2040ca97d722d10fd33f4b7b4e07e483e10ab9c8dfc870fe960654573ee1de9da6067037f567413bd26a74bff00dc4b3e10ab9c8dfc870fe960654573ee1de9da6067037f567413bd26a74bff00dc4b4d4e36d4c8d76c7e0f762ad4b4add7bd25b2133333412a1e939d1034ce519543172c98651adba0c92559c0589a0ccf7079542a9ded3fed7ae3cabe5333158b6b172c98651adba0c92559c0589a0ccf7079542a9ded3fed7ae3cabe5333158b6b5562f5b0752b99be278f6b5211d5831d9a91c275e6a197dab10217f4ca704744f09ddff2293f42d0e7d8d72027e39c48a7b073de71a5fbffd362df2ffd5f5778f09ddff2293f42d0e7d8d72027e39c48a7b073de71a5fbffd362df2ffd5f5778c95e7d47fe0ad5604a9d884df5e04f5dc4184e7f1452677beb2492865fefc0d8616e00e5e68cfb57aaa65b813359e359f4032a08746f1fb16ee93e0662456846616e00e5e68cfb57aaa65b813359e359f4032a08746f1fb16ee93e0662456846516fb88555c8aab3423c6e6b8a3ca5b097bae30ddb47873565a99803f7a74e8e98b6676d739515d5d1ddd976a9ff640bc792a7ea9dc7c0966355cfc562d552a198b6676d739515d5d1ddd976a9ff640bc792a7ea9dc7c0966355cfc562d552a1c8057e31c398532402956e0b84dd9d63114ce3376be91a0a1f5e28d12a330f5c08e8a92ab5d0362c67d139338dc69e3bff6312157abb05d2339a4ab1814ed27c08e8a92ab5d0362c67d139338dc69e3bff6312157abb05d2339a4ab1814ed27c4a89c4cc9e9baddb4febec3f409dc531ae7fd176f3279338b7a1bf599bf83a66ff32cb9b456d718e4cdcb0eafa68abf5d469f7d7c54fd55850d307ab58e26bdeff32cb9b456d718e4cdcb0eafa68abf5d469f7d7c54fd55850d307ab58e26bde40005f7f0b4905ee36b7f13c8b634c01674cf4d5f185273c24423eacaeb9c5cdb0dac0548b856a32bd081e751c092d58c1dd6664f783c7df27a41f3f277f69e5b0dac0548b856a32bd081e751c092d58c1dd6664f783c7df27a41f3f277f69e57035643b7e84180fefc56eb2c20417c8ff91d5fa04531641542e36544afba630c9a75602b5bfb1297f9119b2e90555d03f59fa67be21d89483d6434f305c32f5c9a75602b5bfb1297f9119b2e90555d03f59fa67be21d89483d6434f305c32f575297235f5e61ebbd87d1f2904eb31f0dd9b2ec89bac08015dcf3e5195aa09438e8f8671903ada40bc9a5f5e6e107eb1af396df5028ccf4c56e039d3731268138e8f8671903ada40bc9a5f5e6e107eb1af396df5028ccf4c56e039d37312681361aea6e916de57a887b2b15685e9e9b4e6e154f1b9dc4c6fdc78dbc5f8aca46a086f40b8dc5b598ad5636ca718324e33d664d9d32d4a412b78b5202e15944161086f40b8dc5b598ad5636ca718324e33d664d9d32d4a412b78b5202e15944161df152260f5c27b474a5e9ba284421980b919db4e7ffbfa9887e2daa1a5c3c9536b15c193593e02f6b833694409ab6e9ed874d6f2cde8b1678c41b38ee75dc6206b15c193593e02f6b833694409ab6e9ed874d6f2cde8b1678c41b38ee75dc6208f3b7efe5445797ec575edb8d324648e841d8456ff866646d9cccbd911edddee36f6e8988b1271284089ff5d70ef33ed47a77cb1e15bcf6392870cd267c45b0536f6e8988b1271284089ff5d70ef33ed47a77cb1e15bcf6392870cd267c45b05fe91fcf7d6a5580366e16fc99b04b9630218d1f1733469c8828cd8ddb7540496ffb31c4df53304eebf31186845887c989feb29155c57fd2616a17507c8311d44ffb31c4df53304eebf31186845887c989feb29155c57fd2616a17507c8311d44fcbdb881e359508f77fd88d91bd8bfcc690a47b56d7db0ed8b487820d9fdbac1bddc965c452f04019dda66058e64a255927faf295d4bd300f39216c8078490c0bddc965c452f04019dda66058e64a255927faf295d4bd300f39216c8078490c08de7c067bf3126f9e07d689536d5227d25993742cb8d553ea155768273580a16cc6a2b2f6adaa42086286f51b9096d901d75f07ee42dbadfae030b19ad4e160ccc6a2b2f6adaa42086286f51b9096d901d75f07ee42dbadfae030b19ad4e160cc180d390a74638bc09f98cbb5b9ab643383f6aa7a9da73ead575bd49e6f053bb0168f660256385bfa4b553abb1cacce35d69e125fa8f28a5528b30dee7caa1bf0168f660256385bfa4b553abb1cacce35d69e125fa8f28a5528b30dee7caa1bfc139c26abd5525aa56b40a2a384a9ca3337917156d1f19528aea65cc40e6704207d762380a3197ca34149aa06cbdd5d1b4e5dfc76a084d39ce4fab1d610b97ce07d762380a3197ca34149aa06cbdd5d1b4e5dfc76a084d39ce4fab1d610b97cede100b9150fe21ae4d9c2d84c3331cba8a385d718b5cef7d69dfb258b0a9b26ea7158a87065a9847e9204d7fc60d662ea9eb7b4456f696f9977bec07a0986e25a7158a87065a9847e9204d7fc60d662ea9eb7b4456f696f9977bec07a0986e25c1709e7172ecf72628108247dd7f8d8e7046c712d504c2241b4eaed5d410d1142c66766f12b54144db997dfbaf6d65ab6f68b11155065d21342881a463e22dde2c66766f12b54144db997dfbaf6d65ab6f68b11155065d21342881a463e22ddedbd4a2a7b285601a0c775b381cf7599e15f6e1639c5692a7af63405bb8ff05e53fa4e39404fd2766f792e4e86a1d9ad370498264301ce13b6057f67205900bbb3fa4e39404fd2766f792e4e86a1d9ad370498264301ce13b6057f67205900bbbb2871c7ed2030751b16f4d8d7d88eec1c4bc86757cdb84fa62cad61ad53d736086bcd8a990cbfd59e3d50ca198e838fa6f64e8f5e1e342dedc1f6d5dcec956ca86bcd8a990cbfd59e3d50ca198e838fa6f64e8f5e1e342dedc1f6d5dcec956ca16a0c8a6e087ccecfdf3a98c69c9a8fe4115ef3176b6768f7e2211994efb3bd93a16953a82c8b407059d1d825595d7a456b5c465e856c16db5a23bc14a6c0b293a16953a82c8b407059d1d825595d7a456b5c465e856c16db5a23bc14a6c0b2972f7547459460573516f50340e94b552de1fec459b61075c7bb65c8e0fcd7f0c537d19a1d4014fd47ee8ede6bd97b4555771da96c26171cc92b1c9ff4ed5bc56537d19a1d4014fd47ee8ede6bd97b4555771da96c26171cc92b1c9ff4ed5bc56e36182febefbe22dfa7b62e120f80c0200d54e888e9945765ba36162631f4bf43909648c36c312fd19cbc3671f0e85d2961b59a6124b4f43d498a688293db8d73909648c36c312fd19cbc3671f0e85d2961b59a6124b4f43d498a688293db8d708d4e7613c64156e7c384e9ad9b47bad5b9f9888da464fabc3503e1bfa9afb47f49061861801a6fac340eb6ee624368d036603b052763f9ed212cd4a419ca2c1f49061861801a6fac340eb6ee624368d036603b052763f9ed212cd4a419ca2c1c06fc8d5f464020c466aaa623173913890c09a510494c9fdc03d1d2ec9ba104c12e8eff203f1e754c235f15ef0d21f9ea0cf8b07168bf96e4281a9071f7c802512e8eff203f1e754c235f15ef0d21f9ea0cf8b07168bf96e4281a9071f7c8025af6772bd0e44c2465743e54a1c5fb15f26d91dbb84bfd325475480ba0499d86a3ede5419062a328467b17cdc82759820be24269e04c60820ea0ab9b979ab76fc3ede5419062a328467b17cdc82759820be24269e04c60820ea0ab9b979ab76fc50c02775a32bde1742317b96110ec0195e6087a5eaaa3f841f86685287ba2676402e424e9b22366f1a8247fb184895bfd835c0ddb40bcd2013c4f8e1bb58e69d402e424e9b22366f1a8247fb184895bfd835c0ddb40bcd2013c4f8e1bb58e69d983ddb828a9d418c2f09a0de2d541884e70b479a6e600a0b2a31e086d2408a7ae85d1237bd0fbfd8bacf730f26547eb487b9e904ad9ba61b56062c87f1a283a3e85d1237bd0fbfd8bacf730f26547eb487b9e904ad9ba61b56062c87f1a283a303fbf70a239bf8844b9c5216e927b8eccdb33d72b14cd0ef2aaad278702b4fba395f86cbbb1412a351ada80b0ae5772d9248f92449dc38c6402d66d8d848d205395f86cbbb1412a351ada80b0ae5772d9248f92449dc38c6402d66d8d848d205bc495b780497f2a0071a73c7dc18530c22d4edba33393359f497f7bcf35ecd989d71d9833dfcb99987fa037e459fe5f0e8da37a740e81021ac4715e2af9878069d71d9833dfcb99987fa037e459fe5f0e8da37a740e81021ac4715e2af9878065a7cf910d572733cd731ab0fe7536daad11943b2580ef12d752267d754fd31cab6cd20cf1a2cd050e8c65ff93aac38226819726ca48766cfa67d57133b33722ab6cd20cf1a2cd050e8c65ff93aac38226819726ca48766cfa67d57133b33722a8c234c1d7910188ecb7ec3561d5de94758033884b304441acedf4a3bec6c74fd7372d0b4568620e2798f511b19fd987953870636bdc2e83f8bc71065346ab7927372d0b4568620e2798f511b19fd987953870636bdc2e83f8bc71065346ab792b5872615e65f4890c3a701ca3834890e6ddfe536ed44cbbcea7d6d7a163e350533897d85d0e771f368f4debba7c44b7068896b8ef73aa6d0e37a1182b008aeb833897d85d0e771f368f4debba7c44b7068896b8ef73aa6d0e37a1182b008aeb871680d0d610c8ce9cd1d52576853532b89fd3df6ec3e60c4c214985dc19b74805e2e6e9b9a9b998c487040747925700c0a94a64e4f40f82b7395a7fff51103125e2e6e9b9a9b998c487040747925700c0a94a64e4f40f82b7395a7fff5110312361d96cf6d84c3a162bd436d302d8f3b49bd3fc29ed52ae8b8c05fe3daf114e6d0372b815f8331f0dde8316852d697a1de165475558b93851b3113facf55dd17d0372b815f8331f0dde8316852d697a1de165475558b93851b3113facf55dd17e4de02f64f69701cb1b730fe98a5c3777deb0026b4007c94edce5cf4d323bc4cdcdf9d425c495ed530786f40eb3e8eeb9e1dc35151dfa427ba14573f61480835dcdf9d425c495ed530786f40eb3e8eeb9e1dc35151dfa427ba14573f61480835b32ef3b4ccf6de3679a94b3cf36de50106b941322c4242fd7df43a9f81a7b165ad3268946214c1eb1b996b1a8e84e472978fddbb312c3b4c04b562dcb9dddef32ef67926d79199be77dfa392cc3878378e5bc50a638d50ec50d29d4bf40a424478140672c975b25c45e18875fd25db5685d603e02a8b231324e4f56cdb599d5612bc112be4f08b51302dba1e0cf96a93c7a26206ee2392f8934c13102262b02712bc112be4f08b51302dba1e0cf96a93c7a26206ee2392f8934c13102262b0278b7aaa84b0634cb20dbbe39d7cb74d57eddf6afd8f6f1b0f61a8ff2b5f2045f856a78e5d5e97a9173bd57ca57740826d88d457f40210ad89e4dfdc5025faf66256a78e5d5e97a9173bd57ca57740826d88d457f40210ad89e4dfdc5025faf662f238411cac69c5d082f8f48a0b658f57f4c0ef4064c6cce399f39e192b1e159082a0e81c8b03ac8be9f753802d1a372e2ebe9068fb622abec9546ca4c3d2ec4dca73d964c3c9fe0c32696f435d7dea0cc3f2b5f3668fe6aa4db43a7e1e4f1263ade38e0d1d9c6efc6a75180966030ed6de1d25c6231d967bff9a59ac7c547a82dc03bf3424f9505ad271002b776ac153d76430e33873e230ec69d44fce267c92dc03bf3424f9505ad271002b776ac153d76430e33873e230ec69d44fce267c926acc4bc94879f81d79b92e07c15e02555bd3469050deeeeb652baa175322cf5034255a50ef7b3ba626f27e89a31fffa7f65993cc376d4e003f4dffb0540df10faa9372aef84cd552f9ba00678859ef36608f514cc1b5d936bdb918ec68c6c6cc18e9b6800cb6c4b7386ef2c1107fa7f28b1e1fb048226a3b2c33ee632d01742a03274392f4dc0d40cd4598ad95163ce2f29cec3f1272cfe493738681439193c8e7fcc5384d83f8124e4fd0c0cb9f90661e832c7bc0bf20e7d0d52af384ab7adcd18689aa960841c52343f5dee578588cce235cbeb252608ddf5e66ddc070307498b305e9d974b8a8b2e2d724b587f9993084c6fed4401a03d7375e01332b443598b305e9d974b8a8b2e2d724b587f9993084c6fed4401a03d7375e01332b443539cb932f8f5b4918befcd22b62d32033feac7ff6ad3f538c1a7ab10f8004900cbbc0dca1267eef47d7c456b0136db989b1467d658b9651c3a8014f5e9a84a661bbc0dca1267eef47d7c456b0136db989b1467d658b9651c3a8014f5e9a84a661a4c8d47d6cfe960b192cbd910dd125f9544f95e3d12b282067a6c7bd80fbd28992115b1485244f25ca4c2d825e35f272ac3d0508c2efa37b0dc12da05a09c25492115b1485244f25ca4c2d825e35f272ac3d0508c2efa37b0dc12da05a09c254bf65d8a68028ad4f468b0fe0913345f8c7698b4e094660fa570f82b2cf178ae3494ba16d7634d4e1a7d30cc175df2534453a45fc952fa9710dab21a868331f1d494ba16d7634d4e1a7d30cc175df2534453a45fc952fa9710dab21a868331f1d11224893850d5318135dae6f0b7d62121f72d1bd03224b6a881daf25ba34c3fb398dde446810ebbacd3a0d2cc65a2ea5f43253603e66e7387a8340999c051a69398dde446810ebbacd3a0d2cc65a2ea5f43253603e66e7387a8340999c051a6927e9a18579a6462199b6b12600965c7fd49ce5a78ba584ed35851830f31aa1d2b4aaf526fe83f58e9c951d4f7eaacec695bb5f979f0ff7f6343510207cd3d3e210e0ebbe8873f13b060d4407306553b324603f6665d82ccf55838828ef03965a10e0ebbe8873f13b060d4407306553b324603f6665d82ccf55838828ef03965aaa8e019765437e8b27d31f8a38ac6c3ef4f641a95ece5d5fbb94b0633362c5ec255c091579ecf98bfdff8712d0958cbbeb83350e590dda959153f875a17dc296054711e7da47fb7da1cc85043eebb39bf8fb761295c7a3f15d5c85aa932a7e2b5cb4da5be8b67c110e02b7e2726c6188e24d48a6410c9ba9b30c7169d89df32eda8ac17ebd422bc560db7f3b7cd96573ef32844be9dff0e889b64c4dc564d367da8ac17ebd422bc560db7f3b7cd96573ef32844be9dff0e889b64c4dc564d367daa60c76bc7b99f9b2a703a6ca66a8bbb58e51290e74bf2abbcb9ac5fc9c987d6c082926a05cba4a5366f32262d4f6991aec6d53ecddfce5470b689ae0872ce96c082926a05cba4a5366f32262d4f6991aec6d53ecddfce5470b689ae0872ce9b73c84b19fb7b13f4640b667ccf90afe393944c89d2da4f5916b52bbe457b02d8a19d9197b72d610458d1a910b3aed0d53180e92eb003fdaa1949b9f1e86944004524c4f02141477d4a4cf40ce715f79057283137a03e785ad337f0a69e804e3b96a13c4c6872b411677b028af6a3f771b5bfa0c0562715e6c27657667c2d9b09860c6acfdd0dce9a468c7753562322185899def341668dac24e179b5dd20d5391c874886460c6c12ce1ec5d0903942eea9281827b9fea9b7fafc1d402e6273b91c874886460c6c12ce1ec5d0903942eea9281827b9fea9b7fafc1d402e6273b2ac91b93be67539e4926f4fc0675217d4fd583829670980303b59b14200819164b36e1c0be47e895b4c0b0ccdd17dafb4b9ab2230fe72286b87b259469a7971f47a1b434cbba0b6b1bde5b98ca90b73bcd9a9755124e3997af345aae675706009fc5e29de0688cba4623a4d1e1b9397299343580a110dfd1b979543745a70beafa102ac86e4140badf9eb95cdf48f9d7c37c36727f43fdf82579ba155f956537fa102ac86e4140badf9eb95cdf48f9d7c37c36727f43fdf82579ba155f956537cfb96d46a9e90c6c981cd73891357291173247c2c078ccb2d8a55fc957b5842a20e39adb47ce9b201bb15ab72a88767d4148fcae66ad48145479e65e0fd220fc20e39adb47ce9b201bb15ab72a88767d4148fcae66ad48145479e65e0fd220fc4a02bdb3964a6f1e61e3d46885e5c75cd15e02e94be43cc29bab053625a8467564683dd90212e85b7316645a9ccf1ec91ca1be0d612668a95170db83c4e7f90d64683dd90212e85b7316645a9ccf1ec91ca1be0d612668a95170db83c4e7f90de47a3f2324b579cc980f007542c6ae316f010a2bba26c084b33d7f30b9c940f915e83d48b38f592997bfabf84dda07756e18a7d59b1e1b926d8c72fca8a188af15e83d48b38f592997bfabf84dda07756e18a7d59b1e1b926d8c72fca8a188afed75dc720f528ae8a6c05e6b71f6a6ca5575d3dc2113dda2b9cc26e20773df859b28d673a1bfe5a8323479c22864cbf2a505f6ffcb7fb69bcc78ebd86a36eebb9b28d673a1bfe5a8323479c22864cbf2a505f6ffcb7fb69bcc78ebd86a36eebb5814dd869ee87574a0a415777435e1c84814647a9c0bca53030944c8557cff04f9808439b2951de11a42aaed52c9be047a7540dfb72e0997c6239742d4366b5af9808439b2951de11a42aaed52c9be047a7540dfb72e0997c6239742d4366b5a2d232284e04741c2405caf56b6f6a0fdb5b29a5c43bb9851dd6d5613763d2934da6c2d660f66919e2a205c860e8258ae6e471f57b34c34e460f6b9ed33729f0eda6c2d660f66919e2a205c860e8258ae6e471f57b34c34e460f6b9ed33729f0ebd9a6d305c0b38cf451a1ad5af9d2716067a4cedaddfc65cf55c2281e4af7575bd9b95014e9b944ab13bad56c893bd714ad6c413c177ee0e333070d01965498ebd9b95014e9b944ab13bad56c893bd714ad6c413c177ee0e333070d01965498ed6523e8d14d4186ebc9ceff2908f6c222cbe476e9828996e4ea7ef9eeb18157e5862d1f7d3c05acfdb8bcd9bad0a5af332e7968e7f3b438c487edd6243bc1c0d5862d1f7d3c05acfdb8bcd9bad0a5af332e7968e7f3b438c487edd6243bc1c0d159054029a5429155e586a05ae939b312c0dfca29e308ac6088565485de793b0e67745b67b6efc20fdc2bb26fd7a5ed89566925d8099b922d2016dd23cec6c8ce67745b67b6efc20fdc2bb26fd7a5ed89566925d8099b922d2016dd23cec6c8c405f9b021a98ca2ad282474fa1a89e9549dd23140d3d92ab5b70be17000fe06d5ef5f3dd1258e4c95fe0ece37671f9d442b3d6bf9dc643f64e3b918005d375f35ef5f3dd1258e4c95fe0ece37671f9d442b3d6bf9dc643f64e3b918005d375f3fbf91fd151b6929ce6062d9835bd3f881288e6c05d3a8037d632869bf80fadf3035c3b8fb49a7225d1d87d567abe59f6edc9f3b482f93835ded96c9409bf5a4f035c3b8fb49a7225d1d87d567abe59f6edc9f3b482f93835ded96c9409bf5a4f4f854a2104fd72d6a475b1ac6b8ea603d74d260bae8400f7e23269938f4525edac89094248fe1e9ec751d7d1907275dd70ee7802aa784b5a3238db06f8d0f788ac89094248fe1e9ec751d7d1907275dd70ee7802aa784b5a3238db06f8d0f78857a9d13a499c47dffd07d8a6c6cb5977cc65983469459ae0799631144bb17226d3e877b0967dd292b6e2f79bcd645b75db7649e60adb0bed296cd748d1f44b8737f63024dd0cb97157f8cfaeb07bd9124160fa2184f3cf10c8d759c23da475d2da366a4ceef5f4ce9817c5139512fd496904f974be3fe0f24ae3909dc5b85b6499226ee8a89a3ffac381defd9b00e05b017e2f4f6ac2dd67782166125039941999226ee8a89a3ffac381defd9b00e05b017e2f4f6ac2dd677821661250399419eb69276053f6d37389e2acc2d611edb007bfb25c08755ec2e4529e1f41737cb832844abec824aa7ff5739780f3156a717f3b9686cacb4625c7a63ad7b75c2d5e32844abec824aa7ff5739780f3156a717f3b9686cacb4625c7a63ad7b75c2d5e4589ee6ef97bf6239cdd6d1220b3a1b5f50c7af0c54ea76f3cbd92b4d6e79663aece7330220fc4766c16c28893e6d794e8e1011d210aa0d81999b650b07da51deae09935fa803e801df37bfefb500ff75e42355420c03b1e3b1117834578283d956b5172e9b3aa604214e8e1539f74530b76029c07c0bbcf0666f700561463c1723333e2ec5f72b625a0a9297ed2b5e81f01c2ef263662259c45eb747a8cb6d4b1c86b9810299e1f433be8d1a573b2a71bec9069c18a3550ebe02e686eca518615448830d62e59edc049b0734108b28db3ede5b8f9657a1de82eea75e3838e1aed5a01eed10fc26893d353254b3d021c64920889b1ec56fbde7e2894a2c07b9713f4928e20b60d74268bb749ee11c98d700a77b7d40c96e9a0606bb471bbf88b82fe46dd4274c8f78878cc464a5ae3d0f1f7a7d719c90febd101973ca8c48be2a64b7bf54bca36bb9a230100df14a141114162a217bf0eac5ddcea28e8fb129fa64b7bf54bca36bb9a230100df14a141114162a217bf0eac5ddcea28e8fb129f1c76ca012ce9a2b2b9151c128d3d2ecc826ece7b5427bf7c0eb38365138dbf42639d878649066ca6f528f5ff6472750a6fce7a14cf5f58bdbf4e5edef69bae87639d878649066ca6f528f5ff6472750a6fce7a14cf5f58bdbf4e5edef69bae87db83858801c5aeee2a0b76c6b0ea6a3eb38d22f308287fdb93cbf0f1498c4d557587ee0e97dfa1c9ededee96851472e5d8e9eb8fca9abfafc92c751ec98c436e7587ee0e97dfa1c9ededee96851472e5d8e9eb8fca9abfafc92c751ec98c436ec148cc81627106b8060985effa8b727814d169392440fee59f5e4ee0f6a4b575aec8f1a3380490b92a550ef51b972aca24359c87a541661b937e42f048f27623aec8f1a3380490b92a550ef51b972aca24359c87a541661b937e42f048f27623d68baf40a37fedbd9fae952de0c90305b0b44fca3cb6bb4fa31de5792ccc4c2ff8057611b694e9a77ddb9747433801c8e35e2e2df62d718ea332c76de2c5001ff8057611b694e9a77ddb9747433801c8e35e2e2df62d718ea332c76de2c5001fb34f050d5a123e057b11a3494b433975977262167c43973608ea2fcd8ce90adf2efba831d850a12d8f9040e30b1b6eb5a971c5f7ee50113ff496cb07dec0bccf2efba831d850a12d8f9040e30b1b6eb5a971c5f7ee50113ff496cb07dec0bccf903e6ef254edba2c28f563c29769bf95489ed17902e3cd1e6f13b2ec075b7c5bcaa57b088897423ca3cd684390ddf0fcacc8c4ea19551d0e632a1150e0d15125caa57b088897423ca3cd684390ddf0fcacc8c4ea19551d0e632a1150e0d15125d1eb91abf747df193b9b89120149c0a9f1dce43bc07b660ba4f287e68e6699a7e667721663379b88934ebf21655a0c1bdf90637a27986eb16972a91843bdf04ae667721663379b88934ebf21655a0c1bdf90637a27986eb16972a91843bdf04a987954d72270acb506395d540e9de6f044aa903b71bd6a94bcceebe36b6f02f84ddbd6a52cc33b8a69e035eb1a94163f83b6597440b9e779589e78108cdda4f048c3339fe660159850d441c6519b76d9236483bac994f2267eb9b53aef33bb78344b2474f2c256216ad563649a17c6a9b11ec239e036fa471940dd0c80baea330cf30aeec199159f6ab893cf2eb99a7ef9834ab72aa86e882e6db49f964742f50cf30aeec199159f6ab893cf2eb99a7ef9834ab72aa86e882e6db49f964742f54590d04bee3fbfcc02899922313615333d4655045b345dee822fb7c1dd083f76c6a32d31b7ff8d5f0217eb3e50e5a3ae046fbbcb4d70a9cc4135bdf2d2798c181ecfc690e2aa611e2b1afecd2766b8d8fc48efbfd375507bb8a611a8055adb4623fb453a3f91117ccfc26d9c83d90398b88942838e74674bfdbbc6c4044b5882cf2f4c40cb0b09ef8353106d2dc7a50943d1d674b2323ce8662c1922dfab4599cf2f4c40cb0b09ef8353106d2dc7a50943d1d674b2323ce8662c1922dfab4599512cea435d9d5ace892b3c9ac2d4156ca15b590ca221e709806fa98b47056063462d97d597a5e49f3e1666f838177e3de45c6047894f3313466f68860de6f3fd462d97d597a5e49f3e1666f838177e3de45c6047894f3313466f68860de6f3fd691799861b96c765e7e5f5e581773204e7e773eb024a0fda0cb149598eac2b35174ec5618221e27169033054727d24f5db5568eba2fc0303073685dba55b2081174ec5618221e27169033054727d24f5db5568eba2fc0303073685dba55b20817441da993ceb5cc9e9813855b42071025f5fde39f5d37b7b466b9bd85eb06ec23f3b53f20ab1d1e0ef6ba8c60013c0774d4e28b299ec8cc68a314fc25e1f6b0d3f3b53f20ab1d1e0ef6ba8c60013c0774d4e28b299ec8cc68a314fc25e1f6b0d72ac0c3644075c05c676e8e75b62d303f689e0cd48aecb41d71f38a6d9c5b13ad0d81fb35becf1a37ba7aec785af5f597799c4acb937df4a4d3b05e7fec8e3b0d0d81fb35becf1a37ba7aec785af5f597799c4acb937df4a4d3b05e7fec8e3b00e9a34e3cb861d68c4eb2d1f204ee6eda6956846e5ab0fc737d88a95f0b2f8c49a2c23cb0ab23aadf311822a9f558d105350c9d3b1c5b6ba11b9a89d0bd6df029a2c23cb0ab23aadf311822a9f558d105350c9d3b1c5b6ba11b9a89d0bd6df026a5dff1e03e0cf5ef1500cf5cf3a4b314b9512e98f3bbd9f49697d4cf1159f5f3209ff21e08fc8752308ddd0c198cdf233904b27da092a8a95ed5d5dc9ef60063209ff21e08fc8752308ddd0c198cdf233904b27da092a8a95ed5d5dc9ef6006f18acfd00a58e9c6c9bb33c78c99f3365090e7159418a838f2dc75a3f6411861772b0824ca673920c99340cbc952df8e61372d47fa1a25ffcbaa0f83e6215399772b0824ca673920c99340cbc952df8e61372d47fa1a25ffcbaa0f83e62153993b4e7618851384ca594fbd19645f903bad824d91c983e634fb1d52cb6c6e83acd8e7390382df21ef06638a4a2514b6c74487a62947d14c79dd016d3116ca2489d8e7390382df21ef06638a4a2514b6c74487a62947d14c79dd016d3116ca24893babb5da98b9deefea2905e7053989c877e7f96d55a079de4e5e6a0ee7f80b7fcbbc2602168c733a207f14582530a0ac84098e360c7d74ef89aec1928ec553e82f85a64480e431adc9ddda98c514a4a2ef37dfd609e21a291c064dd904d4e8f46070f91b9bd9c71e360571cf15bb52944a9976b5c88d72b6cf74c9924cfea6a5d38b5461d7aa7dc95b9b0fea64378a219e8ae8220aa52316155a774284f557f5d38b5461d7aa7dc95b9b0fea64378a219e8ae8220aa52316155a774284f557f5c3ed3389cc936f1124ea464188f7ccc516918b0c6fc041d853c0ef0d958f4afc8deb8ddd1d1be5a8f317661350158a8af5ad20629a165b8fa986a8f296ec0fe78deb8ddd1d1be5a8f317661350158a8af5ad20629a165b8fa986a8f296ec0fe78112de0e27b29629dda0336ee497b07df3c8c8b9a57d5a756237e478d64f5e39316b6f4928889160b140e54f899f51c9a42f3c4f4c70e253ee2c20e531d8b5c1fc8646fdaca43d708cf2d3c6850979cc9a06939a5fd7de8f138f145159ff8d09af68af0862ffcdeace692410f88fbec107458cb044c7af0d568fbc3deb886a2cbc2dcc49f971f4500a746030354b7c8b62b7fb52ea0b671442830efc02bd8dc2bc2dcc49f971f4500a746030354b7c8b62b7fb52ea0b671442830efc02bd8dc272e522dc753316de0aaa447d1160c0cfe698fad75cd47bf1fbe03c81db669fa34b00e57b17f4bd02070689dad807de359fe67e7e7de20fc6e8656de6a1e5586c4b00e57b17f4bd02070689dad807de359fe67e7e7de20fc6e8656de6a1e5586c3ab78b6f2b9c45d03c356c02254340140a7ed5e2d1bbc5c0ab9d3cda949a7bff2b52ef6c184a7ebe36f62ab595f4a2d5b67d45a3057c3967946638afef32c3812b52ef6c184a7ebe36f62ab595f4a2d5b67d45a3057c3967946638afef32c3816fbc7bf41b1e14a25b3df33877193555b0a0a70ca70a4b6a9632b12ef130c9f5a958957a3dc99d8676ae9d62c958876dea1f52e4a08d5c9dcbb90ee144f99ad1a958957a3dc99d8676ae9d62c958876dea1f52e4a08d5c9dcbb90ee144f99ad12c2a04cc7e0673d46ac01b6492949b962f746fdfc51a4248a4a4be689b6888291a04a7f81e72dfdf58905b30a0950e943b8ef920f5e5d9e19d275b58736f77071a04a7f81e72dfdf58905b30a0950e943b8ef920f5e5d9e19d275b58736f77072f53d1512bf1c2de5454dd7a56b933eacbe8394de626b335869fcc243188bdce1dcbcb48a3896956671aaa8dac63bd979781acabab6c4d938e5aa6eab27778441dcbcb48a3896956671aaa8dac63bd979781acabab6c4d938e5aa6eab27778442656b171f59a625a381560ba8718aa14caa2386a968d156c0645a876738c4672940822fa5406240a1f39016e6ac0c6dda2862885880601acf3c9e4bcfb4ae00d940822fa5406240a1f39016e6ac0c6dda2862885880601acf3c9e4bcfb4ae00d8b0465d29d530670ede16d72b1f7a9e32b12f9ed804fed8395d0e172394fca1db46981e48c00ece57bc13efcdc9dfdfdcd6cd7805c0aa3ebf34ba2cc3296e65eb46981e48c00ece57bc13efcdc9dfdfdcd6cd7805c0aa3ebf34ba2cc3296e65e1d8a2b6f33539126d7e133323eb3d970f5fe77d2ed62c34e63e4113dd7de84bfd8fc6a8f1493c51d03c1b474b4c68f004264c15ccaf33a2d799e801c4b834773d8fc6a8f1493c51d03c1b474b4c68f004264c15ccaf33a2d799e801c4b8347733799c399122574caeb34634035501e9dddf8bd0980d849f911c6c33971dc7f5a95176168ce93582082aa3c6a93fcd2b6c8c7e35e653aae56020b5ef856f03fa78181992197dec3669e7f4d5119c0dd3a08b2122c69c579982c29c3a548f41b22f3d65566d9fa330b808db45f8323f13f626c492b9c939147cd68b4c274e26151ae4ae75b2cf945dceacfa884d71d3df484fe6fb9932ceabfb23ead72cd08b600ae4ae75b2cf945dceacfa884d71d3df484fe6fb9932ceabfb23ead72cd08b600bb2ddd0169e0fbb52e924b00811bededaac35c95b77f4b08563d91f5190b730513ee97ce1a6e34bdda1838b36004afc1eb20effc7019d667bd58323c5588852d13ee97ce1a6e34bdda1838b36004afc1eb20effc7019d667bd58323c5588852dcba0ab8d0867c5c14d7abb6e17fe366d112d23cabf3d32cb0b4af09037e495a692bb60f90477c8ac4ff26fcea831dd1120afd9ef38451475cf97a80928780af792bb60f90477c8ac4ff26fcea831dd1120afd9ef38451475cf97a80928780af7f2618de8bd9ed4b722bb501aaa738fe87242944ac04efa7e74a23d05343dd8c5a234908f67238d1c7fecb4cd08f6ad892d74f6a7a6d43eeab17136bbe4f20a854d51180d5bd32f6e0d25db67a666b901d815cb79bd561e8c811496fc267a6310f142b99b8ebcccdebaa589f1d88447ebf487f626bd1d853e8faa0d0e36a6e5d766a4216b26e6883973afe65106da6f0c01b98bb099f14d577b89efeca1a0d4e666a4216b26e6883973afe65106da6f0c01b98bb099f14d577b89efeca1a0d4e6aafb8e2315d625467c616af1ad3da3b0a635e788bc1d9728b0c3d4e9ea30fa4eb1add855d019085adf0ed9f3a4676e5ffa7c63d19e6e27883006de41648e891fb1add855d019085adf0ed9f3a4676e5ffa7c63d19e6e27883006de41648e891f61a13b9f59ab76d6566e680b70b4333ff354bcf73127a2720bf03e6bdc9dd0fa84bb6a42427685d74324c2f77fa4da92c1af725038cd68a40871f1d02f837cf984bb6a42427685d74324c2f77fa4da92c1af725038cd68a40871f1d02f837cf977231ee12e324157fe3ae2ec9d36904cc5e00ef3dd280c26184b499d573f2a9ac3522b0ccde4c05efa19f36477e6f5894fc6016859545e2bed46ef12435c287ac3522b0ccde4c05efa19f36477e6f5894fc6016859545e2bed46ef12435c287a56ba072ca4287b88caa6a3affc63126bfe4ff008a31c4bace3611df4e8d6384e8596d8b4de33d1d51b02badcebd6f676696a0ef63b3647be468e420a3d7073768596d8b4de33d1d51b02badcebd6f676696a0ef63b3647be468e420a3d707376ca4e4feb4780ad849768f23dc42c3a5324dc932c378c499c933789ec4c7d317094adabe1160f8697528474d8465bef52138f7743ab6cda5234b229447798b37294adabe1160f8697528474d8465bef52138f7743ab6cda5234b229447798b3724d05f78a395092ed1f0e27e52e2ad0328f91682c91efbcdf61e9857fe5defa0161acdede68a4af85cb4e307d200d0bf40ec2798ed1d842b176acb22abaa2c29861acdede68a4af85cb4e307d200d0bf40ec2798ed1d842b176acb22abaa2c298bf7814ec091dc8d1c531ff5b46a7d3bc5758efdc44e398a14745e238469846c1c0b29d99cae7adc8b0b39e60074578100b51ca8665be927be9a0f6f7a43e8b19c0b29d99cae7adc8b0b39e60074578100b51ca8665be927be9a0f6f7a43e8b19d938709ef68727ab3758932b102f5ac1ac76f59207a60936bfd5e885c94f6f89042cc00a07a40bd29fd0644db6e97f3840e9d6ccc3d2025a3d441ade38476d44042cc00a07a40bd29fd0644db6e97f3840e9d6ccc3d2025a3d441ade38476d4491d70dc4b47b5cd482c095f84c4aba62d6427ce670ff7205a58d14f09d62757afbfcd564350532bfa7f65a37215d964ccc77b8da89a44c49b2563c21ff5db5e0fbfcd564350532bfa7f65a37215d964ccc77b8da89a44c49b2563c21ff5db5e09620e08d69055a99a9bf592113ed0fe3558946be5218379e9e5d3392ee3d1da47c8787bd38a4832045c0a070e6132e0bedbb3c1033d8966a8cc18fdab58c83767c8787bd38a4832045c0a070e6132e0bedbb3c1033d8966a8cc18fdab58c83760c187c556c5c8d3f7291a5222c04cea3491fc19a05e507b9f62f99dc2c9b6ece8f26a41f8f006406513e499195d063338351f3d6102cc352bcb8b15aa84e12128f26a41f8f006406513e499195d063338351f3d6102cc352bcb8b15aa84e1212207bb73042211b479b1897a599460b022dcb6b47ea68c997dbeb69863aa0417680584d48cf4ada70c77b3a9c7b8a7df1a09a0ab2c074da02086a7ce36052d85580584d48cf4ada70c77b3a9c7b8a7df1a09a0ab2c074da02086a7ce36052d8556f3d6161a1fe6934eb5b0667079b608cc5c11e772e2977a16e52f33d6519c9eb2d6cff602be28645c7d21a49c0b135bbd3541e1e2e996f60d7eb984f80ba948169fc9ed78faa56ea11c2f70494e6486a4290b5f02ee335ba7f5128000a4defd15c328ebf1c04b29359f084e98a3e5c99e7d4938c680243c9fac58d74c3180d3c3d72ffba3091bc642e6530adf6803b177ab544659475b2ab8c126f3ce78b77af3d72ffba3091bc642e6530adf6803b177ab544659475b2ab8c126f3ce78b77af9b632738f8ffc536272d08149bf2b33b63cc55dd1652bf75e2a9b05d02b6ac561fe8c397c8afcdafb4087f228acb33c07b881ebfb36a3df3f5b395c21033ad781fe8c397c8afcdafb4087f228acb33c07b881ebfb36a3df3f5b395c21033ad78801ece6468756f8ab62451cf1fabe60df37d9b29fc14201b683f2d33cd0ddd700811b07447c69457f98f274d597a93e29b509438ab3dc883461edc125bf55a150811b07447c69457f98f274d597a93e29b509438ab3dc883461edc125bf55a15262fb6b09f6ba0d1fe9d13e5e8b832e27a4671406f6543b8ab8e6790eb6c18e7e020c770b191e5725c9ae81bf75ae5376a224d529b608d1dd389d5d0183b9db8e020c770b191e5725c9ae81bf75ae5376a224d529b608d1dd389d5d0183b9db8b4817dcdc68131f537cd836f01d55fb88f5ddd8b8be8658261031381dea8190754919032324e20504c8b17232fe325bf3d2c0817e584b317a159ad701bb23ad9eef653bfb9c5ba9ecbca7a88ba314dfe3b449194c270b9c963cdbcb16440956ff21cb7e5e29b5309fc0a232230d972c4c71a2b46c4e00a606d79cca47f30c7376b96f61134592b9486504c596af6adb904a76494a4e4360fd224caea718f39306b96f61134592b9486504c596af6adb904a76494a4e4360fd224caea718f3930d46891c0694b3c97c599d3727cd9957f13e29362d372e95c1e4aa5e283365276210a91a4837693863a0b0087872d3b4960e682b119b78cbdd19bb8f23d75f631210a91a4837693863a0b0087872d3b4960e682b119b78cbdd19bb8f23d75f631215eea7c5ffdec783d8cd83a50b92d24bd0fa3367c2f8c658ec64e401fb2ff271a808147938336aa64155168e01908b6f3eeb85974753bfb3635c87ea53ee45ec7ba172dc39363973119c28ce89ebf40d3f85a19bc1affcd0f87a5305dc28bef0347c9b9c3bc9db8c250c122a92138b942a3dc46ca35f43491d4222a84d97522e4e6803a63364a95f314d7c2d6024e0e84ef306a38ab15be5c6d0c0702dd37c2e4e6803a63364a95f314d7c2d6024e0e84ef306a38ab15be5c6d0c0702dd37c2a6da408e6d4806c6979439a547cb44928ad0d7e064aacb2e819ecf7a9021e3f4ea68d1ad46b61e292fe24bb48e9388fdf3a8be0c6c364f84b040953e17c97a06ea68d1ad46b61e292fe24bb48e9388fdf3a8be0c6c364f84b040953e17c97a067c6003770937ffe433470c600c41568fcc898d7fb31bc47d9122dd92ae58eebb38e773cd1dab2f01897298550b516a56157b0ddf4f941c4f273d1ed57bcac00ba0ca4e51f5a13622615ea92df5144b3a5392e5c7f4f0a88e4a8546ddd3f482dcb78e13723970a47880a572b5990908efe9ba208842f76145989d43a7d81150105cfb718f1ba244dce639aa22a4360a91c9d9b67156a1b72f903c83264efb9c8d5cfb718f1ba244dce639aa22a4360a91c9d9b67156a1b72f903c83264efb9c8dc00fe049bfa01c85fe53cfb726256c0f811f5fcb419c65a9a9a7e405946b997d1be6c4edce505acaa578cd6afe90671f2fda44f67e42598db9c1eca0c8c60dd51be6c4edce505acaa578cd6afe90671f2fda44f67e42598db9c1eca0c8c60dd5c1fb62f7fdfc2b1a7b3883d771bb938a405ba7ae7326a19ec0930e44a2453e656e6683e90f9c434624c6717e781974f5302f0b589243f7340e641b6510e820066e6683e90f9c434624c6717e781974f5302f0b589243f7340e641b6510e820063a9f40f0de3f8cf383067d60b81ef9f089822b8e7b53b579b6bb14fe444acc89b822995595d7c83b3ac3abcef97f0f64d3b566985a5b3688835a57df98f18c25b822995595d7c83b3ac3abcef97f0f64d3b566985a5b3688835a57df98f18c25fcd250498fcd5fba8b4c0c291ede8a038e63626578b5c51f3e47fa5751939bfafabffd7c55c48dc98b16e8513c97078c05df804e06e57553133adadc9d30d551fabffd7c55c48dc98b16e8513c97078c05df804e06e57553133adadc9d30d551ca15c296f5c4147946598f0358cb6a3dad14febecbc20a89ecbbcd20987941acffd4b8f5809c9267650dfef4a29da89440b5ec1a400bf40ab6c50a20b37359edffd4b8f5809c9267650dfef4a29da89440b5ec1a400bf40ab6c50a20b37359ed3c645ad68a5cc72ea722778376466388b5e1ca9efb83ce00f6dce2bd0eaecb65014302f70034fe2fd648412c51e0d32796e8a563e30c2f0a5567a8f6b5e451e7014302f70034fe2fd648412c51e0d32796e8a563e30c2f0a5567a8f6b5e451e77db4eb01ce36c6fee3cdab5c35ed85e52b8835f7e07fe4dfeacb14f4b5c5525f9c053ef8ff29749834313dd831ac4f650f346db42f4d08102d36fd86f1d692729c053ef8ff29749834313dd831ac4f650f346db42f4d08102d36fd86f1d692729f223de6983fea713cd3e9c851d38736e3ae0ca3aebcabc328456b90f7b9bdf3f8d8023d093e0b640c18ab183317a26563f51245e1dbd3034594f9ea4dc18989f8d8023d093e0b640c18ab183317a26563f51245e1dbd3034594f9ea4dc189897b7e102e734f322de3c7eec6513b3c2d2d2663dce9845c2470768718eaba63a0c21adb11ce4c2571319bd730b90effaa12fb95eaf70cb5bc2fbf5afcee9833d2c21adb11ce4c2571319bd730b90effaa12fb95eaf70cb5bc2fbf5afcee9833d285d23bf7b337d0dd6903e36b791f165c42fe3451107ea3f0a1ae1eb09aff1a724c8c0cad94a2e403937f31169ba679d36af7b525409365ab531bfb536bd61ad64c8c0cad94a2e403937f31169ba679d36af7b525409365ab531bfb536bd61ad6e74979808bdf00aed7c12fae8c878f49bc2735ca28b4a805b85a38e002b5453e9fc7daa3c32f2fed975c45058ffd05273b17615d76d429f15910f37877dfce07e5f3a244016c260aea4927a449b46512ea269f34a2dd66dbfe256a18b5d711acd640ba6c0109872688695a1c55194abf31f23096154e0dcf45b9578fc937a4032e84665ff7b085c69b560737d267a03b31d43b53f084f6970c9ba49cef436e5e2e84665ff7b085c69b560737d267a03b31d43b53f084f6970c9ba49cef436e5edef4788a8dde5bb7b2ee241341c7d5b49bec0d43c136aff945e46dcf12f103d0e34550d94934b5359953906b091daa5d44222c304fddacc6ed0ebfd184f4ae5de34550d94934b5359953906b091daa5d44222c304fddacc6ed0ebfd184f4ae5d26224a3742d7e3a18ea97317a796127642224060beee001d361ad22eb7ca4a1f0e48a1f6cea50b1737ed96100e11a868fbbcd5d5f6891b08dd34c18603b756020e48a1f6cea50b1737ed96100e11a868fbbcd5d5f6891b08dd34c18603b75602fe8ef8801879ce0732586faa4f92e0cad6e74e5a01e5d3442f77e7713b980731d27e7b3432b0395bcfe964ad337f73194b68beaeae90230ca40f8d70d41cc8cdd27e7b3432b0395bcfe964ad337f73194b68beaeae90230ca40f8d70d41cc8cd943070a8f245ca909f8128d94aff82559b5f9c10ca399eb774aa51b1a5dfb7ae5f36e984332a9203419fa95cb87e46a20981f9ab96445e1f858d6b9143eab2d65f36e984332a9203419fa95cb87e46a20981f9ab96445e1f858d6b9143eab2d65305a94e43fdd664d4b010a49ef6725b0f9e501c60824f976ce487685f007a1cdac7d8bb36493c9bd16477ad0d850c48ca32b2c1f6d4a7bdfab44c772d96c2fedac7d8bb36493c9bd16477ad0d850c48ca32b2c1f6d4a7bdfab44c772d96c2fe6c792e1d760c882abce1d588fd041d52050083122a3ee42a13f819f817f434535d69764bce7caf9ac514c8d24cb69b4126e2355d9bcf6c49aaba21c4a0e0fbbf5d69764bce7caf9ac514c8d24cb69b4126e2355d9bcf6c49aaba21c4a0e0fbbf4ca0f60c7f815f523b7974f613641a569f5a5cde0ddb6c8dc48338eead29dc49ca92769364d6ddb339ce616d32135e8d46afea9eafd82f0794f0cc98b425fc57ca92769364d6ddb339ce616d32135e8d46afea9eafd82f0794f0cc98b425fc57393a675aa5679bd726afd6f37dff1d57060653117d2c919aca8f5f2e424359e426e1ca7a290a89f6943fd444c734d0ae700613c097c206d45d4ed02f986ef22326e1ca7a290a89f6943fd444c734d0ae700613c097c206d45d4ed02f986ef223a079304cfb4eb97990a912907cd12a26f14417ff5d39cb0e9b08e6fdec6a8f915be6aa06de85b7da882b9058fe4c46d6eb6e05021080df408ca02e1e57a19b845be6aa06de85b7da882b9058fe4c46d6eb6e05021080df408ca02e1e57a19b84e2a8477a7f49da9a81d40d93b6df5ae736452a32d5d8283e6baa7e8a2d416fc9c370328a0f154c40e8546e10dc03c7ffbbb64b88f2ed60cb21409b102391c568c370328a0f154c40e8546e10dc03c7ffbbb64b88f2ed60cb21409b102391c56800db7970659a080505d9cf9814b13a25e77700826fe7cacae0391a826c2f33180ba8b31bad3aed0e9d56b8c9b4455490b12cb05ff220a9eceea18bd6dec831ea0ba8b31bad3aed0e9d56b8c9b4455490b12cb05ff220a9eceea18bd6dec831eabe8bc190d4ba569dad81867df3bec72691bbfd0b8d196d1eae5a9343f0a74337e7dda5a10c0ee0b73c56655208c8986491ebc4e371dd756e6f033821edce5cc1e7dda5a10c0ee0b73c56655208c8986491ebc4e371dd756e6f033821edce5cc11ee1bcffb899a41b68f0289c5d86fb9187e05d878ad48591f64da40c092ad6cf62c650e42fef7fcbe414e47ef1c3b0580ff1ea9890930de402b8eada11d03f7662c650e42fef7fcbe414e47ef1c3b0580ff1ea9890930de402b8eada11d03f76e9e9ce0be1f1d59bf210e15d0fdd606a5c746d35208226d6c3ab0e53684154d6f2379f5ce4f59d0fc3803a9953f73c19bcf916921a87360a5dd29f99392e5a46f2379f5ce4f59d0fc3803a9953f73c19bcf916921a87360a5dd29f99392e5a4685a6150cd21937e6ddb32b1c6f702fd92dbdb616584c6c4b7a2d6996ccc1f713828a1b5e9fe066bd49644b14de5e4ef8cc0e3a2560e14726f6dfcc2206413265828a1b5e9fe066bd49644b14de5e4ef8cc0e3a2560e14726f6dfcc2206413265d60e78acfcf1b699dd4621f7fe6801bee14d0647d1bd015e4e23286d0a05b3d3081b46e56553f7a8f57d7e68eacf369c32baed0bd4eda453a47041683c22fbbb7a006014777a1d5e6991e0ed03d2bddae20c0ec79c71ea77de6ec9cd04e62d4bc471f62f6d7cd18a7ece19e9bfcdecb7e189e2b96c3f7ac5a27a83c66b7ca6ef91dae6e366fabb46cf49ffd3486deb96eb40ce153aee9971e9ea1d74e09ceaa891dae6e366fabb46cf49ffd3486deb96eb40ce153aee9971e9ea1d74e09ceaa8cfe1f0fbade23f2f34199fde78a47b87bc086d2242d8fa73ade3062256931efc65b85d3169efabff3b27371708e8e55f82a729b50725168cada99edbfb01ddcd65b85d3169efabff3b27371708e8e55f82a729b50725168cada99edbfb01ddcd506df1a2e4e7afc1412e071ad21bd6299157e35c9b14d17e44c53e3b963afe2ab0e1db6fa52277a255b8e3356bd71db671bd49f17af2b69256d2d8c8a3485d7ab0e1db6fa52277a255b8e3356bd71db671bd49f17af2b69256d2d8c8a3485d7adb7406b4bcb8d3e64594d2c770ebad117adb1122324805130055847b10bc752e3ea414ce7428f0bfb7d5f907ad9616c7cd2af871b2b16aa043468a19df52eba03ea414ce7428f0bfb7d5f907ad9616c7cd2af871b2b16aa043468a19df52eba078d100e196977a9d966a1527894e2d688cc49aff88fae4d025d1d882094eca8fe363db56e6984e1667c4fabadcfe27114b209b65da01a963a54f8dfcbcde032dab51ac5ac54e7b94384b7371ff19920be02ecfcb376cff103a7061bca3d3bc9813f9a6b96f172cbc234cf2a16d5792f829a2642c6c546bcdbeaac6e0e9c4c27426989e18cd200a4fc5424e5cec3ef73c03ca487b91fd33fd921ceb6fbcf2ea2405a879ff6075c6b38bc3454c3e4091732358838507b19fbbab07ffc590504be2d2b7e355c3ee9d26b8bd7533475144f6427afe61477658d8c7be342266f963f3b7815279ea6bd467f81db5c8ff825e7973894f5c4e8da7dd5d6d5df751d80449b7815279ea6bd467f81db5c8ff825e7973894f5c4e8da7dd5d6d5df751d80449596c7714d5b08bb2a0274afd37ce7b4c369f608fed10d19dde2460210b582b73c46995d1c684f0fca62ff0a5ef128d5f27eb28fc90d102fadbb4528f2fe05f0dc46995d1c684f0fca62ff0a5ef128d5f27eb28fc90d102fadbb4528f2fe05f0d60cc12ddecb7ae7b40ec8f491171ea3cdecdc1f1ece0121db2841f4c3c0fe7b1cc97c4706de47b261271cfed75bb480fca7a9621b5f3ff24d97e7034d21347ffcc97c4706de47b261271cfed75bb480fca7a9621b5f3ff24d97e7034d21347ff1e5d55ece402895534f80b2aafeb3b17755d3033c9fb70c40fb0cce6eeabe9d0003c5104f2e2155f12f06f38ec1512e44ddb72d73628848d616bdab08a813216003c5104f2e2155f12f06f38ec1512e44ddb72d73628848d616bdab08a81321620ef43ce97aa940a4c26d2e8b9c28fcdb67460f5c5be89d4b19994242541b42e7b55372c07d76f1f31491ee165017f5fd69700d1f3944a015f4d8705245ec1497b55372c07d76f1f31491ee165017f5fd69700d1f3944a015f4d8705245ec149d189facb11f8a0cbda120cdba62328da589e6e4385e52f9b4032fa262446bba8eab2878b5b74855537b6bd2147b1b01e96302d4dccafa37872ecd8eb4b12f083eab2878b5b74855537b6bd2147b1b01e96302d4dccafa37872ecd8eb4b12f08312b936259f098f2675b1a2a757f5e97597669bfd3aec7d70905e3414564294e9d039a2c324e95a311864d7b4f71574dc999555da0598400626a88190bd54f13ed039a2c324e95a311864d7b4f71574dc999555da0598400626a88190bd54f13eeb85add9f92ff3455662a32136cf09703ebd7a8ab3e0542927a4c4c97623bbf11102babfe4561cfb240dfd22db09fc962d23c4427fd2ff5ce5d7b133292bb9cb1102babfe4561cfb240dfd22db09fc962d23c4427fd2ff5ce5d7b133292bb9cba37825ca347d0eb62fcfda8582992cf3a5acc314b816400882a545db172c85a58890723affbdad1289a9529e8be2d08eca1804d13d72ccee951e55a79d4825088890723affbdad1289a9529e8be2d08eca1804d13d72ccee951e55a79d482508fcec1c983d31e831efaf7e6ed4209a0e21f1a6a5a1145229ac2251d1d7e086ef801a06f97379b0e070adc7387fcef5bc1b5649a6593910b47959d6e00fcc6303801a06f97379b0e070adc7387fcef5bc1b5649a6593910b47959d6e00fcc6303f568c6ae1fcbf97f7437cb48ed3cd5ed4182eb5e6c485d3f965293e1258f9c5d0567d631f062ec6a52a51448fca8a767ef409e27131c6ba49ca5092f18346fa50567d631f062ec6a52a51448fca8a767ef409e27131c6ba49ca5092f18346fa50d9dd767d4e6b78d6cc97cc9e82e4f7a34146ee2511ae1bcd006a4928568b16e52b6ec099b319ec6452fecc52abef42acfd6344b4c5d5bd603f7fab82912c70752b6ec099b319ec6452fecc52abef42acfd6344b4c5d5bd603f7fab82912c707acc274cc10bdc8fdc0ec7a132dd5ebe27fb4c6b5c9b0a258f2172914b152a44c847e03dcc3623d6e5c528a03ab26ae2581f1baaeac499c90819a1dbaf5d5f31a847e03dcc3623d6e5c528a03ab26ae2581f1baaeac499c90819a1dbaf5d5f31a993c019f188e2ab6336a0c4ae078f78a2a7522b1cba4d1b36bc8b88194140b969e4ca0012330a1d73409c498c749307eadc144539497c6ba744fc41d7bc4edda9e4ca0012330a1d73409c498c749307eadc144539497c6ba744fc41d7bc4edda143288bbe6bb35d70f47a5f8e7edfd993c2e5b90274ec033c4c75f9b3bc78e32f9d8297916079b3650cb499133070a223f4ec099a369cf57daf9bfd0c3a19669f9d8297916079b3650cb499133070a223f4ec099a369cf57daf9bfd0c3a19669c4d7c203668581f511f04514711a1c620e2f6bfaadb706f66125ecb99b724d6cc5c43fb713e5a5d0ee6631dce15064b953378887822d172c0651f414dab79952c5c43fb713e5a5d0ee6631dce15064b953378887822d172c0651f414dab79952f4e794184f8a11842f410cabd14b364899c0765efb7c6bfe1f620c4bfd24e7ce18b668c6f75055a1cd5d3e5f2c901ebee586ac14fc25d420e6d90a4ed451904c18b668c6f75055a1cd5d3e5f2c901ebee586ac14fc25d420e6d90a4ed451904cdaa455d5fb3a96602f0904568d5f942b397464f2d7aeca8b3cd0b1c5a8f98d049abd682a10c69c8c7a0504574b2f8b884c0b0427413aa8ab83d5627d58eeefa19abd682a10c69c8c7a0504574b2f8b884c0b0427413aa8ab83d5627d58eeefa199f7e0363242c2656b3f19c2be8bfbbeb705ce9d8c75b453fb4d3d7305cf6004d7d7e9b6da3d45c9e30dbb640fcaa9bf183f9e62a8e10450902238369615c0f1d7d7e9b6da3d45c9e30dbb640fcaa9bf183f9e62a8e10450902238369615c0f11a29508426812937d26ce8efd4e6a2c57b616098f9966a27f9af6af4d11d20a7736ed22e4b80f4e69026caa67a3a988d2b4ed398da681359d87a20a8bedd782b736ed22e4b80f4e69026caa67a3a988d2b4ed398da681359d87a20a8bedd782b982c9c44f4bf0ef94c81f2b53315af7ce0993d3bb50e9bb3fe711e0f26a3900fa1415eb17438ea3454fc248060e51821723cf6bf827cbff9ba555870e6fa36bba1415eb17438ea3454fc248060e51821723cf6bf827cbff9ba555870e6fa36bba9f40d04e475bb452d445f5634523f8aabd91573718ae8187b056472063be3576f5e26a040ac6ac13b16b96d02d9c0cf5433055c6a9a77e1176f3be07a1b9aef6f5e26a040ac6ac13b16b96d02d9c0cf5433055c6a9a77e1176f3be07a1b9aef804f3a031c1783679719935cbfd9063f9a0393847055b8aeee2337378fb79835de606b4fe2aa72c950eb2c8b664d49a998c1b714b25e1ce11b1f6aa45317d03fde606b4fe2aa72c950eb2c8b664d49a998c1b714b25e1ce11b1f6aa45317d03faecf6ce0c0366f7306a94544f12d1759a84c208ff103406b9e82ce277ebf683f6ef9f0c95bedf99e8134161b6bbf674d7633534e80b4de6ee8f5d5ee2d5e004d6ef9f0c95bedf99e8134161b6bbf674d7633534e80b4de6ee8f5d5ee2d5e004d3fdc856cdd6883429f2f25d0d0c276b334154b4f855ddba3c1b9a51868e158c1d1ba17d93f8f216397b87bae4e16e35294814c9b5fb9789fa0935110f68d7b6fd1ba17d93f8f216397b87bae4e16e35294814c9b5fb9789fa0935110f68d7b6fd0629f8ffbc7b16c150de28a2ef9f57e3def51ee642844b24826340c21936de1689e393326c14b2b0e5c9f644b158950fe21d130eaad24f19667a0c891d0474a689e393326c14b2b0e5c9f644b158950fe21d130eaad24f19667a0c891d0474a8af7391305a2da76fba388cd3145ea1b3cf1d01ced3835743e07abaf9c789bfc16bcbb494861db4c4cc3c06c3bc22cc90c0da3917a74c69e14569b7ed76b9c3816bcbb494861db4c4cc3c06c3bc22cc90c0da3917a74c69e14569b7ed76b9c38701248590b0ef2151702cc926a5643b3e360c2ac9323aabdf3e81556d62df14f2b91a432aa792d2be7c811dbfb03e2676a754db46da18c2283050d34849766062b91a432aa792d2be7c811dbfb03e2676a754db46da18c2283050d348497660636544ab337df310ff8cead337a002a8331500bbc3901f2b007561de5cc9a273e601f42bebc5bb28568a989bf44b4d506e8e5d313a255cedd08e147c5128c7805601f42bebc5bb28568a989bf44b4d506e8e5d313a255cedd08e147c5128c7805c5a63d447f21c833ae0da70f8f719a3c3a1b3abdf2428bd8083e24271ae2ff6c98d0e477892ff2f1fcd12f736800f25baefe60833b13148dd6753023e4818f9a98d0e477892ff2f1fcd12f736800f25baefe60833b13148dd6753023e4818f9add3943eb360ed222fb8f7bdef31bc033e0cd79a3d927084eef9c697c9ae23c6d9658b5f35ca6e2a9361db49d1118f5c2e2250265c6a8d4a29603583d2ae080e49658b5f35ca6e2a9361db49d1118f5c2e2250265c6a8d4a29603583d2ae080e4b2825ea72f2a03499b073412114d8b13331548b52cd50c51c470a2c49a75f9db5a885335a126bc8fcd525896ad4405e8187e6fdb9ddbf2f511a56af15419d8205a885335a126bc8fcd525896ad4405e8187e6fdb9ddbf2f511a56af15419d82015326d40cb8b596266c1844b34d4e38dbd745d6ef5b13eafd998712b82f2c61c00b8ca2ffcd83cc11daedbb085f1c28426834c6bcc37eedf875a39d504051fab00b8ca2ffcd83cc11daedbb085f1c28426834c6bcc37eedf875a39d504051fab7b26ae55b657b6acb833424b7665230309df476f9622e85058f409943b8b80a024cc4f1c8a43d1750466aa5fe3b4b5736588b22c26e8c8516f4d0150e422f1fb75ad2b415a5df1b1d0a121bb5835a26c4fda2b33eb544cda1ee3333600cca7afe4adadedc4e88d8d267d3925521ee3c198f62a3e3045e4ed623e5c87da36b31e2ecc4ebd969cfabd1cd3665b1d72a8981a16145dc1f4f7a5be8764059a5d0fd92ecc4ebd969cfabd1cd3665b1d72a8981a16145dc1f4f7a5be8764059a5d0fd95a353b7d19ae329dc39d3da6bb069a1da1a8308046e427bd7a549bc5b76219ea60132aff1e27fa9dfc58ced7e0171f4f29ca46414f468cb3bdd49c915345d96360132aff1e27fa9dfc58ced7e0171f4f29ca46414f468cb3bdd49c915345d963dd80e87c9efe674fcfaffb1b618df39c65203eb9c797be197836004273fa455559f529a2fc0c5e1982834aa5c81d0b8e2125afbb67ee306756b2ec0bc9b832bc59f529a2fc0c5e1982834aa5c81d0b8e2125afbb67ee306756b2ec0bc9b832bc65e49d441ddfbe86d1fff3b1a282922f4e07f5e6b2a1b7de267f569918760867d41c86b9a5ed72cf8c79c321e24786ebf1380b5ffff82d08370d65c4c193e093d41c86b9a5ed72cf8c79c321e24786ebf1380b5ffff82d08370d65c4c193e093180150ab3978a5bbcbf2865ad89a0c1321311476265639e80cddf62869c4b8d8ccf73f836fd3a729a09f61ec5392b8c9cc8545f6f1ebd7a8e9e845ecaa48b428ccf73f836fd3a729a09f61ec5392b8c9cc8545f6f1ebd7a8e9e845ecaa48b428b973042479c329c201cc87836a24e5568ee1dcbe741d6b45ada1cd11aec8aaf354925d2f221794e5959f4c50182e5434cd270181acd3ed2f5893dc43489c65b654925d2f221794e5959f4c50182e5434cd270181acd3ed2f5893dc43489c65b6a4c758b519ca93c0fb91d9a1814f840a23dd4e5e627c1c2e30ad982293a4d8fc139390e12bcb75211af42e8734fd1bdbcf465ae316354dd7b54800c46334c004139390e12bcb75211af42e8734fd1bdbcf465ae316354dd7b54800c46334c004e4006446a570f3f42ab816522bc72669f84c95d61fbdffa1317b53678e1ccf228509fa47b67b55a48f60c29f84eacf5a2178175e10a4e73c99ae2a9ba11c8f618509fa47b67b55a48f60c29f84eacf5a2178175e10a4e73c99ae2a9ba11c8f619072ee06661189504acb6bf295480177c1dd1a7d44ff20cb713629988a4295f74a0e7400f6338f0df1258d87b26dd0861f67e29e435c1b8ae14d258a2bcfe0d94a0e7400f6338f0df1258d87b26dd0861f67e29e435c1b8ae14d258a2bcfe0d966c84926284d2d1f4f37a8bb3b43a66b8b6009d36980e8b6f8f2d652d40a4cca88600d8fa3f044d46141723669b078e011b3cd76248e36d0223b805f44a8fcdd88600d8fa3f044d46141723669b078e011b3cd76248e36d0223b805f44a8fcdd6560e341ed77f740579a35f80bcf2bbdc511faa59a8bfec235821d05b815531f74e8116e879eaca3fc44111851647dfcc553b957dbca3928fb5263ed8d08f90f74e8116e879eaca3fc44111851647dfcc553b957dbca3928fb5263ed8d08f90f15c398426ddb0c2d85b234b24a588f9e96fd9f1ea4c139e4bfdb66ea852b61823da3414785ddfe7320eb1150f7557153f5304e2c13d0fcfea180cc105d90e6fb3da3414785ddfe7320eb1150f7557153f5304e2c13d0fcfea180cc105d90e6fba85cd43e69df6735f7fd9634939de891b9c87fead51730bb413ef97b9c9c952ec916e73c347abf20924f9d2d0b178c6ee9fdce3d6ad09c80692dd995b5ca942ac916e73c347abf20924f9d2d0b178c6ee9fdce3d6ad09c80692dd995b5ca942af5ab2d240273ec7018f29b76744f53f1a4a5705d30202a9039c8646629680aeef8b7ea26b576302f206203107dd0c93e3efafb98b519bfdbd38c481d61ccdb88f8b7ea26b576302f206203107dd0c93e3efafb98b519bfdbd38c481d61ccdb88ef7c9321f199320e086079c9f764a65c7190ebd0597fc3b36a2fad682046d476d4d4b9870d7937342666842d7f21091e91ccafb22b830c83405f0351b7277ef5d4d4b9870d7937342666842d7f21091e91ccafb22b830c83405f0351b7277ef510650bc71415cc963528505a4eff2c98095aa8c57ed661a0bee1bdb7a01b1402250f4198e2097c21c9f43394efa94b99f63c677cbfe99736a0c78f9059b01694250f4198e2097c21c9f43394efa94b99f63c677cbfe99736a0c78f9059b016944513bd466e148b8a133e28cf5074d557f9840fcf475108d710d58bc3eb9e4c50781974f2991a97e44c87f2673e628a5812f8f8bb1f4e606f5f6984a12847d0c0781974f2991a97e44c87f2673e628a5812f8f8bb1f4e606f5f6984a12847d0c09dd6a1cdba476f92309e836b0ec4f375bdbed4fddf67e6f4c0ebc7e0a87abb5dab62d53264b7a5bec9350b33c7f3abe862c46604ddee5110292df25bd81f3d26ab62d53264b7a5bec9350b33c7f3abe862c46604ddee5110292df25bd81f3d26a0e172458723d3ef67433a86a336dd34555f0c0460525dfcec90427ddfd08e19ee78a84f1f07313be09b64e5ddaa53b69bd50d7fadba7eda2df6d44971836d666570bb0798164279efc9bfc9da3435b07d16811820fa3cdce81738394a56a26d0cac790cac0fe262c36d94be3a10946384576f5ab534b135f0a3084e5f3e662ce1b3969e44ca60d5958d999b778db51791a9230df8df7e7118fb96093ed23f7ce1b3969e44ca60d5958d999b778db51791a9230df8df7e7118fb96093ed23f7c48c96b9ee40f1479a028ed9670b66bc3cfa7ffc10f0bc348bb964975d5a917f284e122ddbb6776050e790a360de4b076a68dad8a49c72eadd9020666ee07956884e122ddbb6776050e790a360de4b076a68dad8a49c72eadd9020666ee079568376db4cf8539ad3256a0ff2cb9c7dbb25a3ddc0014814136cf6b0c3b13fdd4e1035208c409a99736ae841a6f9aeed42267c908bd4978c96bfa75a1fd494dea9f035208c409a99736ae841a6f9aeed42267c908bd4978c96bfa75a1fd494dea9f5c3df0b0957edcedb30947fe7275ab161e7a206b41fc32d4d5ebcfa9e7a73fe5dcf3413b55b3782e5febe41d26ec4a990a7fd06acc1ed891b40e8b2505bde4a4dcf3413b55b3782e5febe41d26ec4a990a7fd06acc1ed891b40e8b2505bde4a43fdf844288f27f7b18c8ceda75714207aed20fabf532127bf300fc290a49127f3cb60c5bade2fffd6e08719ebf1958385b1149cea8d05825fac86589195d235a3cb60c5bade2fffd6e08719ebf1958385b1149cea8d05825fac86589195d235a08309481dbf409dc5a218e6eabf2cb2d6b37d680494130a04bd2a84b50b52ab12ac6a80045911970200bd51e667ea39ebdfb65ad1e25e01790d8a39fc2e0c0362ac6a80045911970200bd51e667ea39ebdfb65ad1e25e01790d8a39fc2e0c036a961d4de1fc1021c97a00e3ecf159239440b746f00c95ae1b6d1b497590b9296ba308b99e7bfc0a8beedf246a3793db9eeba9b8618f6a92941c1935f6041ead5ba308b99e7bfc0a8beedf246a3793db9eeba9b8618f6a92941c1935f6041ead5276d8efcd1fa00da8cb0f41a78b5fd4976c77a776b0615f7753a3719cfd394afd825b1230fc9aac1acb6b6cb766e9017569719bb7b79906581c4e4660b0fe713d825b1230fc9aac1acb6b6cb766e9017569719bb7b79906581c4e4660b0fe713d4a1c09687d31042a05d0b0003d50841bad0cd1068d3f85ee42fe3849583bd57cae891fde1a63f85da57d0662f6a6e3f406d366ee5358fdc9443985ac3eb8c21cae891fde1a63f85da57d0662f6a6e3f406d366ee5358fdc9443985ac3eb8c2179c1715909603177d7799356d21557add7117884fa6e47a06c84884894a73549db25af824a0a1ab3672dcda571ae6fee8a1aba9783745e11c4e5bc6ef8abb88adb25af824a0a1ab3672dcda571ae6fee8a1aba9783745e11c4e5bc6ef8abb88a79b408b2b831b0c1a76809d9f919bde5fc366cc65889cf64710e5518eea7acbd8b1ff261af4ee4fcaac0b36e0d38b0c3ed42bb768520569121b41b40496311f38b1ff261af4ee4fcaac0b36e0d38b0c3ed42bb768520569121b41b40496311f3fccdd10de78b4223cbeb71d288d8ad530c75b99cb590d4ea068204f328217a68092d04d8382a31a2f6252147935a8b537851bc9907d142fc9270ca2df462931b092d04d8382a31a2f6252147935a8b537851bc9907d142fc9270ca2df462931bd91f3f8da496cce3a3ec42a3a722ceee3e9e37f0315ee6e9311a5e7c8d9f8f7ae5edb47ab640c17682469b51015324ab14033528e098d724b7058c2d79ec1ea0e5edb47ab640c17682469b51015324ab14033528e098d724b7058c2d79ec1ea09957bdbe760ce2b232c65961c2a042a5a8c5e20632bc60a247ca2dfb3b5b5999fc27ca8767a5344188b1ef76adeca8ac246fee9da6564c4318c0e53e4c999933fc27ca8767a5344188b1ef76adeca8ac246fee9da6564c4318c0e53e4c9999331fc4497b515de787b0610133cf99512239af3cf44c4e968ac19f1aafb11964c4c5711d913587703c06562df20632d6954d4dd770e49f2633a0c116babf0c03c4c5711d913587703c06562df20632d6954d4dd770e49f2633a0c116babf0c03c4f39eb732acf50f0e0b0d653731f0231d214f9ef353d7315392922e4cfacdfa6b410baa37eee2caf993ac56fbb44a0ef0873cd45789d6b8a5e50c41ecb0c7e32a410baa37eee2caf993ac56fbb44a0ef0873cd45789d6b8a5e50c41ecb0c7e32a5d29bb140d8dfa95f274883c593bb68d1ec875d4bc3f656a0be899076446a95fbfd30adfad7675262b97637a45e958f62fe077d5c228233e54d3e9e149029dfdbfd30adfad7675262b97637a45e958f62fe077d5c228233e54d3e9e149029dfd3b075b93eaba5de200aa68fe37a3e8eec0967d2e4c27a77b837ad30aa887067c64e3612e0f4922901881a337f9c374a011c4c9bab3427cdaf23b471e6b898fb864e3612e0f4922901881a337f9c374a011c4c9bab3427cdaf23b471e6b898fb87d683325d35a31ca326e430c0476563393804bef92475b6cbf0fc8ab4fd730d63da773cb54ec3cbb355f076269bdba8f90a8f01ac32780b738df48dcf3cad8873da773cb54ec3cbb355f076269bdba8f90a8f01ac32780b738df48dcf3cad887e3807fc51214d35c0089dacf3a69b7e0d4d978df162f635639e5f813e5263f8bc08031c543e0d3bb75f2988f613f5a4e2863fafb63ba8a2ed442b3a04e5568e8c08031c543e0d3bb75f2988f613f5a4e2863fafb63ba8a2ed442b3a04e5568e8bee46b807e6809566874e09b00609ecfb913318735365526c653e7c9e78a787670b66e82218a5df0efcfbb087aaf0c6b5106ea52651bad2c72a7312d340298037e018ae5954eae44e24f1220acba9f7b6b981c7b94f754d6f4e505ceb64ffc9c51c1b52b832a4a91d27ec5330ee00e865d6a01cbb2b59def9e403a64acf42a74beb03e10044ed9ea3241d1323e3d4508cc84e9463a2c59350a05030677994ca6beb03e10044ed9ea3241d1323e3d4508cc84e9463a2c59350a05030677994ca6f2fffb7f8ccc0ca9350499765158d67d74fd674bc0eb6c2f0953ded0194c058b949a90ffe39ee001f58b2ad5fcc9bffabc456c1155d2392468ed91c1682a3837949a90ffe39ee001f58b2ad5fcc9bffabc456c1155d2392468ed91c1682a383725fdc57c2ed724278753bfd25d361f2f2f8727dede1784ff512a72f382656343e9c2bbf1a92997afec7f1a0186903012425d40599f9a520aab77fe7999712a92e9c2bbf1a92997afec7f1a0186903012425d40599f9a520aab77fe7999712a92d7bbd3978f889074d620bb849e021bf06e4bc8a7cd10e054ffd726c79ab8ac49bbc1336877f0d1b6d54aa50587e3a90e9e364f5ba48b088253a2c0ca29140863bbc1336877f0d1b6d54aa50587e3a90e9e364f5ba48b088253a2c0ca29140863d22c7884424f3c5a2cd2c074ed2d43a55c6cc5a90fee76785e443d7cadeaf0e362d38b19a617bf4d4254cf612b5bb9eabf6d388a68ac430ffd4bcee642e25a1a62d38b19a617bf4d4254cf612b5bb9eabf6d388a68ac430ffd4bcee642e25a1a32daa41ffaec698b966924a4cb2fdeab3f5874a73538b769481dfd31d396f2a74bd261b32708e304ac7334c153fe299fa4303eb20a9888659b3487b346cade2d4bd261b32708e304ac7334c153fe299fa4303eb20a9888659b3487b346cade2d96d5b30876b20c41125837e13f8725d2d7efedde3e655673edcc1fc98b8bdaa6b781df319516eb4a2d9b5bfefd7f2722c825c3482a21678821ff1fdd3d813f4eb781df319516eb4a2d9b5bfefd7f2722c825c3482a21678821ff1fdd3d813f4e6e901bd4e493590b96317bdd8555294f790ab3565b7d0f3b37d2fa69ebc2e96e14b536f8e7c6b513ce6a2c572a4ca36012e50e444069a103c2225e5074332fc314b536f8e7c6b513ce6a2c572a4ca36012e50e444069a103c2225e5074332fc3af82a1099884370e24bf55b9cb91de797ff753000ee59138b66199291cf32d9128483b547f03229bddb77dc18d60d0f44dff7064cdb5694fb72684c84cfe559e28483b547f03229bddb77dc18d60d0f44dff7064cdb5694fb72684c84cfe559e57ae9272acf3ee3b62332f456bbc3e6e6857d2abef41cd95c48440e4466f53ca5dc41ce2fbff6bff37124eae688ee0e3b06404b50b1a0f1adb4c026aca196cb15dc41ce2fbff6bff37124eae688ee0e3b06404b50b1a0f1adb4c026aca196cb1388499f6288e71a9a0b3691491c35e67caa3a497e8ff48d59b4a1b43748ed23cc31ccdf0008060b9a03da96206865de2949b997b273df4095abba42f5cd3ad20c31ccdf0008060b9a03da96206865de2949b997b273df4095abba42f5cd3ad203395dfb1cc9b32e1abe34227572cc4a8bee00484182a4178d1f6a04391a8a617d5f3fb5bb1c6bc3343535a1976221ba709f798be2335393b27719174f98403dad5f3fb5bb1c6bc3343535a1976221ba709f798be2335393b27719174f98403da2ef3de063dd1ab8d73dd8fd8f2608a26f8328c67e95c5469ef9f4c8b47fa60cf57002e3a76dc3c842dbe976012f2983bcdde78e6dab147554e446792978aef4557002e3a76dc3c842dbe976012f2983bcdde78e6dab147554e446792978aef450d8a81a2269b3b54b459d758187a0f7125284b482a680820379ee3c510cf9f93ef1845d6e53da8c5723ae27a6c1f5053f14c6040c59d435a1f62dd3d150dfae4ef1845d6e53da8c5723ae27a6c1f5053f14c6040c59d435a1f62dd3d150dfae4db529fbce3f56b6a90f1dc533707f6f6da7844d1f7b0a80702042617d6061090ea8474b2b454052f7e01c43f2415f6d531ee7e7b229dea631d9d4fb261068602ea8474b2b454052f7e01c43f2415f6d531ee7e7b229dea631d9d4fb2610686025b7ec58e8c6d933b1c0f09abf0ce806e8e6611352347b719b42f020bddd4cae3f5b32f8239e5d5916f2928e7e63d090e4ed31014e95f1a54ff94051e8e288563f5b32f8239e5d5916f2928e7e63d090e4ed31014e95f1a54ff94051e8e288563f027ab95caf3f2fe6e00c467ec518705f09fe75df8e2d134978a7433455dfb4eb4c7cc98b1f1a4977cae636c6be8bae2d746667aeaa920a5be33a3f91c38756fb4c7cc98b1f1a4977cae636c6be8bae2d746667aeaa920a5be33a3f91c38756f5f0fd027d7ed2d6458c3d5273646df6a283ceb282f3c7a10cdbf74d64a2671528d888a44a15ca8ef1a2e66d77b792940eaad22fdf04df3d5bf33302bf838608a8d888a44a15ca8ef1a2e66d77b792940eaad22fdf04df3d5bf33302bf838608a04acc1aecf350f9d1ee89760c4102aad0c3d913e87928d985295271f6b7fd04673f069264239ea006e8c383e2a08c3168176c6b771b1c1e676f74b53d6ef2fe573f069264239ea006e8c383e2a08c3168176c6b771b1c1e676f74b53d6ef2fe50a78234ad042d2798edc46f852692eaa72da802269028b89b7b2a45b2361339bfdd4a58e9e505a57a1aa7f2a18b4f74eb307bb022c471845bb652fd3f404790bfdd4a58e9e505a57a1aa7f2a18b4f74eb307bb022c471845bb652fd3f404790b99b9895bcd7e42e2895222560c8c22b4ca1d6d7ee7f56e88ff183c4f984c0269f32edf83861464659ce6b1091d96f33703459434134262d1b1289ff904fc3b67f32edf83861464659ce6b1091d96f33703459434134262d1b1289ff904fc3b67dd147d53e605adb49b67911a5f40c703dd21fa3c6191017e595b50aae68eda61deb968fc7e23ead6460daff40f2b67a789fb49384b1546344ff3426e53a86fdf6268c779c2d83bc16ec14e3dddaf885f7456c4944aecd8352c9affb68d890e5d253b848db7ffed9369fe831ec2977352f39ec6436a41ee3a18da9b73729095c4cffc91eba221fe206a1919891e2adcc73125d428744680de90e886473ca2ebe9cffc91eba221fe206a1919891e2adcc73125d428744680de90e886473ca2ebe901b8011e4f93b0d6b6902e81b095da389aa19dcb3e7779dbb11c55b820d5df953d7666ba4dd49f0ade26013377f55b33c70f62dbdd498db1e8e9688ff02a5bc13d7666ba4dd49f0ade26013377f55b33c70f62dbdd498db1e8e9688ff02a5bc17129f41c65b809675ddf1fc1f01f6e0971c6c77966721ef01a153bb748d9e6953d6d63a46ff5ea256011ab52c2d3ccbffce4ed5cc3981a6c8a287704eb7efbfa3d6d63a46ff5ea256011ab52c2d3ccbffce4ed5cc3981a6c8a287704eb7efbfae972a4c65beec0e487454f9c84291d567cdd0b523ebac01b94653f785056c9e3c743c94dd9cfdbc549224f6815b920dc09f72d22d4ce8e92d7fed3f024e53c23c743c94dd9cfdbc549224f6815b920dc09f72d22d4ce8e92d7fed3f024e53c234439b8c4a58a4432a0abcc52648a2c1a08d1720a6d301c5310d1a0586a59b0dff524b8ab3edf6391100cc4e36ad6da4478605c387b29a453a50374517f79de88f524b8ab3edf6391100cc4e36ad6da4478605c387b29a453a50374517f79de882d8c7f298390283528a2395751f0570ed090b0e845ebe3af1aa23daef8e026fe3bd8d8d207d58c51f2d233b38591a895f5a72302e2c3787e33e1f4807147cb813bd8d8d207d58c51f2d233b38591a895f5a72302e2c3787e33e1f4807147cb81491172f02c08e68472027131ad17f6722dd1aa83023e8dbb0dbed864463e975727eab75e10c0f4096b2c9988f7cc399ff05857a6b15283f30bddb04a827b8e8427eab75e10c0f4096b2c9988f7cc399ff05857a6b15283f30bddb04a827b8e84707ac117a078da08190c4c5e27e1a3c28763b98b280f08c07e98e3c45d89867e50f9c49301ad07e9b317d15d92f21865483aa4d82035904f3e6419ddb2b8415050f9c49301ad07e9b317d15d92f21865483aa4d82035904f3e6419ddb2b8415060702b9a49156c0eb20361e7d398997fdf6b7385f1394dbfc2a5e7f04d5ecb951f9870d406c7f33cc67551beff3e5f40ee7d50cafbf77ff835f33fcdde90e8e21f9870d406c7f33cc67551beff3e5f40ee7d50cafbf77ff835f33fcdde90e8e21e351960480bd1b76e7ac33ae1b7d86fd1ec80edb3e0d3f303783f1ee1a9005144ce1a1af6d0258da7c2f8d56f8a28a23bf05ce1c4f6b1b1f863c36eb7f0f19744ce1a1af6d0258da7c2f8d56f8a28a23bf05ce1c4f6b1b1f863c36eb7f0f197d313a9bac527b4bdd7d0f7a6a24a85da625c6dbbaaa8c3539743237728587ba8156e5e719b2995e86faf0ebbd3dbcb9d7ddecd6a1ace3a1689ccd01ea67ae386156e5e719b2995e86faf0ebbd3dbcb9d7ddecd6a1ace3a1689ccd01ea67ae3865b383c2e5e3ffb8fcb8678c6863c03ece1db5be915af84403b428f15ddbf169252e1b2a42320183d4d114aa978ad1c5c887c2e4981e296348757e86a358b38b352e1b2a42320183d4d114aa978ad1c5c887c2e4981e296348757e86a358b38b3f1fd62ac9f37efa70df8c5e141088f23773e6724ab5d6c359e61dccb911d408f5803b8ce137f361a2240b83e2f51e614f5acca38cf7d98d1411951cb070f33e87c564f93d3d124a601e17241f870533ee78203283fdfa330728a0fca88229f1c61f2d3a98f9244f275da75c3dd483bd4f581424b0054a1207a79057e9dfda7d515137045fdef2129a0e348ea98ca24e4310365fefd1c9a202cc95ab8e836334515137045fdef2129a0e348ea98ca24e4310365fefd1c9a202cc95ab8e8363345e0535f066457bdb699dfabe531ac26e037a12c51628e30bc61831375027720e18a251128e2306004bc9f63c91a1c23dfd9d7382a2ff3d81815db1cba612223a38a251128e2306004bc9f63c91a1c23dfd9d7382a2ff3d81815db1cba612223a33fd4ac10fcccdaf6b359f7c43d2784aa9d81860880f4471641a6581976168c676f0e2bfb44032b710c8da5ac6f568220c45f6e164cccb8cdc5cd0d041507644d6f0e2bfb44032b710c8da5ac6f568220c45f6e164cccb8cdc5cd0d041507644dcda6b19be53b7f455fd77488c41c73f9405ed7652c70a433dd42ec8f081c2532d796971342c4ca9801aa96b7155d0309f991f32ea7447eb48ea864461d3cf4b8d796971342c4ca9801aa96b7155d0309f991f32ea7447eb48ea864461d3cf4b87c25628bb6b1f6cd3a4356ea824cb669be7ac3e128f237d16320ca2856b2005478af0496c4644111c0769f8b6edc9de2b9d21400017f106b8c252c418883b39f78af0496c4644111c0769f8b6edc9de2b9d21400017f106b8c252c418883b39f4a9f5aab5b9110932ff16c02b7b69a9013a4aa56706ed2d100a07cb4e7bdf170142269366dcdf2960a406559bcedbcf84f0cffb9146d2913d2b2ca2e702bc6b6142269366dcdf2960a406559bcedbcf84f0cffb9146d2913d2b2ca2e702bc6b6229dc5b6b3ef33d9b1383b4927ccab1be56586a02bc6472417ec1c07630d2d3b04e041c5f6ea780f3b22510529dcc89002dd0eae9e9f4db390b22f4ec9b1e16d04e041c5f6ea780f3b22510529dcc89002dd0eae9e9f4db390b22f4ec9b1e16d9a53395858ce9105d8ce48c82eb5c1b7d003f162ba2c5bfdd18536c84e4640c0b988299f9684fada7a72470025203140a40b8d1e2b60c8e44d240627cf30e89cb988299f9684fada7a72470025203140a40b8d1e2b60c8e44d240627cf30e89c2e0603063a1b6733bc7036df47d298530334666be0eff648b584d4530a9d11630ae3de85461078a57e9f801c718547bbdb0a23a1280d212c70b077d0fdfc1c2f0ae3de85461078a57e9f801c718547bbdb0a23a1280d212c70b077d0fdfc1c2f3b79c5d1bb4373d0d38846b56c3353f176f5cd20b31e5ca02ebd5f5f4bfa8cf8ac1566a2ff94baaa85bcce27f8bcf5ad6ce5ebc6ddc03566312f92b14900a1fdac1566a2ff94baaa85bcce27f8bcf5ad6ce5ebc6ddc03566312f92b14900a1fdae2517bba728a41f2aca5dde27072f2ae9361ac082c4bcb1c62d70b3012b01c98bd48e628f3308baf7efc44438daadbd70d9f0b21b880e7be7adf1d7c8cf17888bd48e628f3308baf7efc44438daadbd70d9f0b21b880e7be7adf1d7c8cf17883627ebd051927d6e3fc2cd668c565074162cafb5946c26ceae3c50079bb0442b3487bc748a40727869871ac411870700291620b0567bf51844ab9cbbf51e09c83487bc748a40727869871ac411870700291620b0567bf51844ab9cbbf51e09c81ccb5d8c5ac2d52f4cfc846d48bfd1e1f5906de7b42ce13104ddb221d8c84994d1b21952b8d484b101b530925a61375f2ccefcf006a25c8a54ea4b2ebb7e4893d1b21952b8d484b101b530925a61375f2ccefcf006a25c8a54ea4b2ebb7e489339d063c1f063e652b2dc7dfc735222ef6e877d49f3355a6b20cfa57d5f633ba82f34dce7699faa2ea90b25b2a8369ad3c91ce2f202959210df589c89c61b54fb2f34dce7699faa2ea90b25b2a8369ad3c91ce2f202959210df589c89c61b54fb99e879485ecf9854e48028b247cfe6ef7cb93cc1460a10759dfe42fc65ef59649e62ab5420e1980976a76926db3191e7f1559b15b26676b232c80fa793a894ba9e62ab5420e1980976a76926db3191e7f1559b15b26676b232c80fa793a894baf89fe6c8c1422c4ce6cca9a21f9b43270febec39959de08c1d79f814cc8a47dc652e61de0c887a26fa18f685b08b2e7e6795fa4fc8d669934466e576494f649f652e61de0c887a26fa18f685b08b2e7e6795fa4fc8d669934466e576494f649fca827887c7c3cff5df916f04877f5a3a4b72816afe32feb5fb13ef599f0d7d6093637aec1fe49da693dc4ed7349c562f46866babdc0e5ed28b7a10d040432ecd93637aec1fe49da693dc4ed7349c562f46866babdc0e5ed28b7a10d040432ecd857242bae2d39aba93d8fea3c49b7089c0563171b632a291258bb28c152e413c1687476c072c16d58d5de566177412722a0b1225417bcc90cc06cc07f51dc2821687476c072c16d58d5de566177412722a0b1225417bcc90cc06cc07f51dc282f9fe2d8780782513ee395565ba5cad1d9ed02e5214e72f7c97e2102ade1513c1fe82954f0060d2666ba7523ae31acafb7d481317f871ae3fc7588e8bd91af855fe82954f0060d2666ba7523ae31acafb7d481317f871ae3fc7588e8bd91af855ba4bb1013af882bacc31b916d13955f6562a80a95ead2da950bfd5101436db955555f882124f11dff904eb3f27d9e991172bcee54dada8a5775cf492fe8dfe3d5555f882124f11dff904eb3f27d9e991172bcee54dada8a5775cf492fe8dfe3d33b7c1222cd9308cd59b3c3153405b0736159599bd7ccbfb56a5f3ce461eb163c851c10e8d3196593fc91e86aa2d761f902de2b8cc9ceff2aed1bbd1ce8cedfec851c10e8d3196593fc91e86aa2d761f902de2b8cc9ceff2aed1bbd1ce8cedfeaf8222afdc2fedaf7ebe09c2a70e8c09b46ee793dd37aeb58cd959c49fb1829e80b434a761168ac58330abe78c86ba443daa01e5f0ae05d21042e4c714af2c50b84872f6d36646b3cbd0905f2fdfd4aead2b67f10709f293d644c31904865465e1e46806f42b93bbc3306cd2e61f2ae1b4b87a194eef03cce575025f8a017ebc3dd9bf406d3b41908a4564adefae8e87b96a36860c08687097dc13696da19bb33dd9bf406d3b41908a4564adefae8e87b96a36860c08687097dc13696da19bb3f39f44a4679cd1caf07bde0c7cc764062945cc30376532b030814a8d1c0687bd42011dee692d750b1389e65505574a9b8fdd135f00611a2ed5f9e9ceb68b2c4342011dee692d750b1389e65505574a9b8fdd135f00611a2ed5f9e9ceb68b2c43e0a5c4c2deecd7a9181e90bacc1eaccc714170b151cb1cf4ad0f91af7451e8997a57ffdd14e1315de269488b56db308a004bbcc3537424ab3c40bef9a25e3e997a57ffdd14e1315de269488b56db308a004bbcc3537424ab3c40bef9a25e3e999bc27afebdf8dc26c3976bee2d33e5e48cf2dae3ec873b056cee8d06a26a0bb38594b6a9295d48bef36db2d91ce0b3213f5e7cc05d614e5e141ea11bfeca727e8594b6a9295d48bef36db2d91ce0b3213f5e7cc05d614e5e141ea11bfeca727e9a0fbb55004015fadc5e7c52d1a2ed4f6dc2f5cced59f99f402a0fc2e46619f2042e86f8f14c225e236955c3d4b21a99230e9e56d2ef66d7fb4e43138061b8b0042e86f8f14c225e236955c3d4b21a99230e9e56d2ef66d7fb4e43138061b8b0c4c89797d36a3129f28e9454de441753f98aac05ffeadf6c3a39f8a3fb13d2387482ad252b4db805957a359fc1c77ce10c78780b784144f280be21b9ed87620d8cb1a2570485595e8b4cdf58dec815784fc88af59d89d91d264446bd91ae32c99284745e711edf665156e6bdff491c049197ec048f07ce00385723989dc8510755e750aae98444bc2e310af43552b2f3b7de381a93f8187711d2659b41809b8655e750aae98444bc2e310af43552b2f3b7de381a93f8187711d2659b41809b864cba08848306d919e5ba23639f0468378f2f4992482094524aa5df9338066bea69ffe40ec37dd44a4c0dd1bdb057079c8950a641adfa5353bc137b213c583be069ffe40ec37dd44a4c0dd1bdb057079c8950a641adfa5353bc137b213c583be0745f484d75b9d0991e62ecd8f195e63e87bcc768bb514761931df49d3967770581577b456b7ccc7d50d8a6fdfa508dde30f6c5a357be3117b0d712969d37f11581577b456b7ccc7d50d8a6fdfa508dde30f6c5a357be3117b0d712969d37f11573366016cc72764f68f3aa34b6092d547258adbb4013d105cc08309c450a06d91b4906f8dc5e1b2bf9367cddbc17e5edc17cdd78f61d6e3881578964224535c51b4906f8dc5e1b2bf9367cddbc17e5edc17cdd78f61d6e3881578964224535c59b8285183531187b894388d321eb368a96879cf425cf285e9d213c6bddecd45caa32a271535cea41e2e6126d16339d06ca2631cb01be63358ba29f8f546bb996aa32a271535cea41e2e6126d16339d06ca2631cb01be63358ba29f8f546bb996bd9077a729996c6ba123fc3d80b5e766124205bbc47bbe5de3dd9ba87c3fe6b83e288b582a7588569654fc250513c1b09ea95dd63d8eb6ba1ecd754e01752d4c3e288b582a7588569654fc250513c1b09ea95dd63d8eb6ba1ecd754e01752d4c577f44c5548efedade27ed61c80b7b453b0807d94c477585497cebecd563dc96c3dca291ba264a7aead9418cc157d0318cb3df75203bc645a2b07419c8941380c3dca291ba264a7aead9418cc157d0318cb3df75203bc645a2b07419c89413804b7ffd754b12f882c30c366b60c5ee301b80379206d4e89a19c03424298ca6b9a1ffaf5a0ee012f1d65c5fe4454b12095c433668ceed6ee4b4bec038d3148dfea1ffaf5a0ee012f1d65c5fe4454b12095c433668ceed6ee4b4bec038d3148dfe9b88243d0b985a0679aa8c6e7d620e244e9ad68efffcf0f98461e7c4c4c1e2e3f000c2cc1f07c9a11de7308de5436e90b6c8ed680c346f8647f09fdddd6778a6f000c2cc1f07c9a11de7308de5436e90b6c8ed680c346f8647f09fdddd6778a64eb152a3e36ea71df4221ce06a04f54470604c799153375a6c159700f7298f6cb9e2a52f592f275cb8b4c4a545a297407b16c5cb5c5880443d1b6d1bd084ea84b9e2a52f592f275cb8b4c4a545a297407b16c5cb5c5880443d1b6d1bd084ea84b307a453da7044c3ca573bde840cb06bd29cb65e01f9d503850d07865f4f83fbdd54e1587d2e8b2eef1b10b9bc77b6a0936bbd2674fb7669f96d9e049e0a94f7141ea7dca0da51b67ca69583d21cdf0e5d3582693aa59adf62a34fb2b8c5bbd1a926399c1c04c0be696cb2433b8b8c5994513007fa255b135bef7cc7f3cd943eddc436d39b06d0ec216a8bc6a4a1be92ace94ce9eb98cc49463fc5cede7856936670c82630b98943e57fe9e4d137ee3a8f9ed0e341df9d7cdf9f07d3602893074097667ead7d69e4f774f0da1d169f6b0eebe5f978f051f217d7d874df38e8d4fcde4e697b2383aa0b1adc5ff1f12eb19ac78f85b7a30e8fba44106708b9ee28e693523eca10c1cd395d5db253c247c9e16936843b3a81fa136b6c9520683d6e6c86e661ba9e3348a41470b6fd9760034bcf4125dad4a18c1c90877f999c56d6d0440ad5e657378af11eefa2e1e7a3f0c08ec928e73787ce5902bac48751e266d0440ad5e657378af11eefa2e1e7a3f0c08ec928e73787ce5902bac48751e26624bd3ee133d8f4329460ae773f86c31761c92529de074cb647c47ae2209bda361f2457242a68af706e00a8f5d0ec7ae0da3cd6853271a5e9c1199461e55240121f2457242a68af706e00a8f5d0ec7ae0da3cd6853271a5e9c1199461e5524012405f638c0ad21c894768b9fa7f2053c1383082546a3f22fd3da17b0bcd12b9820d73e99c765c5a0c0a967d1f91e836ccade9921dc8be6b1eb159739e94d3dcf80d73e99c765c5a0c0a967d1f91e836ccade9921dc8be6b1eb159739e94d3dcf86d83665108631f3d98f70877e54175c654f046a8e31696166cf49dab491d766904ae0201d3ec9a7bcd3450f7e3be99d35f167af4f9a3b6b2d4b116c1853a82a304ae0201d3ec9a7bcd3450f7e3be99d35f167af4f9a3b6b2d4b116c1853a82a34f32f5e5a82e6302b3f9118421a5d677d0d67d3a2fee344bc19c6093b961e889ea9aabfae0098663896f71967fd6c85fa95b35ca280afa9a894bc9b5643573d9ea9aabfae0098663896f71967fd6c85fa95b35ca280afa9a894bc9b5643573d9f1b7624b689fc06e5f54e2762da9140306688cc5d75137a6596186031c59995361dfec2796e9d0049f762dd1a78b77a8bb8f798d88e0aa5ed0705529f4aef04461dfec2796e9d0049f762dd1a78b77a8bb8f798d88e0aa5ed0705529f4aef044037456edcb78c05f4e0e142c4d1a846d740e775b638383e227b60e06afd6c6696070530ccb51dabf6456ae5162812134311abd0025e207a6f348a290420eb88f6070530ccb51dabf6456ae5162812134311abd0025e207a6f348a290420eb88f8128613707c1926a9e05772a6a3af0b32d67665f04ba8e9193488fde2e2c9651ceea6bbb6ee53d3320ae6b00faa1600be4106acdac4d54da5e49a57deb17be66ceea6bbb6ee53d3320ae6b00faa1600be4106acdac4d54da5e49a57deb17be66536180fb621803c2606b2d96276cf777276fb421f653798fd6173ccdef659ef1253561691409044d0743c580de8919374eaefdef990e2f908cd5af48d517df3f253561691409044d0743c580de8919374eaefdef990e2f908cd5af48d517df3f0c6e58e310f78802fd09f854c6f433b4decc3b07c8a28e1df2d76db718bbf553d7fdb09e19493a5d46a336fe96a65bc22259c14ffc3c1018f38d7f3bc522bc9bd7fdb09e19493a5d46a336fe96a65bc22259c14ffc3c1018f38d7f3bc522bc9b9d1b69236bf74e002591883dd3e02e33d18747bea25b6869abda3de25031c4655ea3e4e00643bee8c5a38ec8926b8963cfa83822af2338b3a4196ea7a4aebc4a58106f1647f015cdb4d04b1fcfabaaf97f47dec5bc0e9649d184b46e4584baecb342fb5926095802e45c435cb17045c012002f077d92dccfcd747f53e46370ab218dc92d5a8c1a4531c871049aebcc0d2b2ed015d48c61ccdbca72fdd02203f3218dc92d5a8c1a4531c871049aebcc0d2b2ed015d48c61ccdbca72fdd02203f3bf45872bf8522d21220aa017d4aa9f75e754fba005bdd1e7bf71d9db2e46247696d8e2ed6c90edfa7df86378c7bbf649d709e8fc9dded9c6671aaec557fb116196d8e2ed6c90edfa7df86378c7bbf649d709e8fc9dded9c6671aaec557fb1161ebd8846683f70bec3bc6ce5e7238965a1ed26bc2b1f58edc4ad194b0bde9488a7b0f6155697b8baed47fc3d0babd0d9062835dfb91a6369f4111bd47b5b447af7b0f6155697b8baed47fc3d0babd0d9062835dfb91a6369f4111bd47b5b447afb68cff174b248dfd11a90ac38de757c6f102a42627b6242202022c7069e42700c7b3b10d044a4b9dcdcaa3b84d667af3592ea50fff508697f5ab051958c97c23c7b3b10d044a4b9dcdcaa3b84d667af3592ea50fff508697f5ab051958c97c237aaa7af08b12d0df319a6aa368beb0b37fd846634fcba335b0584a6ee1e66ede254fdbd84bc83788495051897f26f36460c9e416b5af491472aac005e8f91d25254fdbd84bc83788495051897f26f36460c9e416b5af491472aac005e8f91d258f965c3ad3a196847010cc41632bb82b2db2f0531f96bf634ad2efc2b281244bebca4aeb7005cc858c4c6c91399d352e9d238d9d97b4828aa4c9e4dd63784ddbebca4aeb7005cc858c4c6c91399d352e9d238d9d97b4828aa4c9e4dd63784ddb58b4ac34a9fe736f02f539184c2040e202efef69407481c381d62698829d5c8669814fab25f76482348d6919e1331c96e874883f39bdbd7c81dc554a08b6447d69814fab25f76482348d6919e1331c96e874883f39bdbd7c81dc554a08b6447d59c511baa81c7991d56d7c46dc1a5ad2c8931dd940876d4e0b11edf16057bf3be96789aff0b58e9aa2f26422b464e86fcb9c5d83519536ad486911fa89853b0be96789aff0b58e9aa2f26422b464e86fcb9c5d83519536ad486911fa89853b0b1aaf4d05fb5b22720924f9bc0285b08236934339a10cb12ef59d6f6f932ea5e83232585045c47d6a68f9306091ea2a178998898fccb2366927edd1cea6d2871c3232585045c47d6a68f9306091ea2a178998898fccb2366927edd1cea6d2871cc1624cb7f727adab7a6841b9ad35e82542c98d5ca7b719b06d7b350497a0c8e14f7be91c9c0fcfbab2b637a32d00f35756fe6530ccb3534b6a3c3b64f9d712684f7be91c9c0fcfbab2b637a32d00f35756fe6530ccb3534b6a3c3b64f9d71268306184dcc4544bd19beddcf8398081727544499c4ea0db48997887832ff743076a0ce53ab18b39ac7fa468fd9cb8395e0220a65313567a10b0b1bc98fadf01af6a0ce53ab18b39ac7fa468fd9cb8395e0220a65313567a10b0b1bc98fadf01af76ce669b2d482275dbc25cab23ee434291d85643f126982dab8540178f7b43ca2f0b2aedfc015087b6d74534ddec6708ad03a5ebc858bb86ae3104b5ea20cb1f2f0b2aedfc015087b6d74534ddec6708ad03a5ebc858bb86ae3104b5ea20cb1fe3e7dcf5786986019821abc6d0610a4d17d777120af03219fe45b4765b6ba18385959b61bc0dcc346e422a6292a8c68ece69f8d8476778d0705fb49715ded39e85959b61bc0dcc346e422a6292a8c68ece69f8d8476778d0705fb49715ded39e707465c8ddf0edbe2743e1b868cf23b797978f4b49dfa104fff7362535e8d423e84c97594674fef309f07a6ee8508fc98e05e9ac800ab342acae6afb517d4250e84c97594674fef309f07a6ee8508fc98e05e9ac800ab342acae6afb517d425008e6dae5b10fbb576629840325c04640bed5ebc3679efbb73420e3d321432d93f7e2833e29e51d9f6ab02de43e71cfa0afc3e48a11e83d0cc190a4935ff58f91f7e2833e29e51d9f6ab02de43e71cfa0afc3e48a11e83d0cc190a4935ff58f917a9dffefcbf926b79bccf2f97938e9a2a8cbc698a7d1aaf016969a5856a2cdab0db56f905c2688f89ec55c3fdc8d42347412abe7a83f09913856907169b53db60db56f905c2688f89ec55c3fdc8d42347412abe7a83f09913856907169b53db65aec8ca9410514f51c5b44d75083476e1a483a07fdaa010514d0abe517d21ac22bb0c729251542caa095c68594ea3766eac8dea3d810a4a39ce5752a16296ac62bb0c729251542caa095c68594ea3766eac8dea3d810a4a39ce5752a16296ac65354f81927b017153187360013d6cb414566927fd671b9a3651186f0ad4f014298b158e9d60d9f1a0b2cb979591559f8d62a384cb66270c4289b924964ef292ddef98e876aaf13904f8d9e3b65fe031da7310b3c84844a88e027d98ee088280ecc75015e6749c28dad05de33dcb04635608e43c0bb2d68c38f77164ec263f18b770aae1c26308fbdbbca34b60a7b48d7689742f6b18b1cbaed3b9b10e550c4059a99bcc35520738e45722bd31e4bbb921d8a3266ef9f2da6c8950a0cd66ba79ba7a59144ceba97ecabbac5c5104d977a4d3983760a3f016653fb7e0d76d3d1d2798150b62f378a23c69b922b9da511436a7828cd0b58c366f5cd30e6a05d34ff798150b62f378a23c69b922b9da511436a7828cd0b58c366f5cd30e6a05d34ff398ecd119b0a18fec465d583847fc56ed5c3bee6f1d9f3685944ea790fe2cc41e754b204913d1c4a332dfff36397b66c7626845f778c2c923542816f18fd1617e754b204913d1c4a332dfff36397b66c7626845f778c2c923542816f18fd1617163598acb8a637d0d8cc928d5ae66d9a814d3916f91114b34658f7328b7fcaa9eeac65fbd3b0181e66018191f3f95fd34c5ca9aef8399d88e4c03a984a5d304eeeac65fbd3b0181e66018191f3f95fd34c5ca9aef8399d88e4c03a984a5d304edee4124aa11516e7dcd9baf53c0d3bab33707975028b667238b98e4247375e23fddefc9e69867af8d935d1561584fac694db18495517f5b4c7c4ea6ce3f330b4725001dd71279f51d6b6456c408d416974e8aac9e6a98475506715db0bc80ba9ee98df7691fdab030d39a237f6c6131341459b8de8605782f3730811b8239fc9f104f5d68c3ab8309a8381982f64f7f840ff3cd28abfcafeaf12bf3afada35ab8b9bff7f97a159e1cbdd2fbf985be5773bfc00b1c8e0e64d8b6a28e830a853558b9bff7f97a159e1cbdd2fbf985be5773bfc00b1c8e0e64d8b6a28e830a853556678b08752b37db6f814e73eaaf15b5b2870abbceec25cfd88ee0a91df5f976151ac1bfdd5af6564e46669c6f8b788401495e22e1e613710179e954114b7af0851ac1bfdd5af6564e46669c6f8b788401495e22e1e613710179e954114b7af08c9eb1b30a52546d96481831c9de616bf2de5b3f03334e2346f9390b354bf20631e2a2abea6371dbd322e84e0efafd91027820e06ff80de4cac8b5a3397d84c231e2a2abea6371dbd322e84e0efafd91027820e06ff80de4cac8b5a3397d84c23488565b025c9798490e71b306e8807bbe104c6d8261ee6efeabcdbed76a38cac59b771ca779dd36fbad406d9f8a406c0877bc588d17742df39e5d68daa40f17ef59b9d9467a1988b38f64f01af9d413ec9daca8eb886b0c1822a6149fffdf069f59b9d9467a1988b38f64f01af9d413ec9daca8eb886b0c1822a6149fffdf06928c96e551b734847c72fc13bf627f73e698245e9eccc787aa03b7ba6215d12af058e7ff7b3aec5d26767176ac159ce0b26b8dd6792d62faeb68550ad385442fe058e7ff7b3aec5d26767176ac159ce0b26b8dd6792d62faeb68550ad385442fed2fee24a21d474e0d41f0b2c823abba8992357862031e92b39af0d03d16123e5b7682b27d9aa355c26d76983a08ee13e3b2f4c77a5efbaa6b684b163fee66f36b7682b27d9aa355c26d76983a08ee13e3b2f4c77a5efbaa6b684b163fee66f364a9e6ce96f4040f71201b08f987dac853b1dab442e7599bf3951b309d81c98f33c30e11afe54994678828ffe2cfb234e2ec51537a2e98794267e600e999737a53c30e11afe54994678828ffe2cfb234e2ec51537a2e98794267e600e999737a59152fc90d3c84314239b59356c452c7d88b88fe8fa96f2f123d25437728bb82efd605526a1004b662620292c1d808ed696b5cc61d9c5748121fd10807123998124b3c8e971a76d61cbf6a1bc9f9806c2b8e651a3aae2978c21a5654e98a3ff339e9d7525d14bf7361d0dbf63325537bdd019c67d7dc265431266c1c13877b1f639de99c00960b9356996859dfbc79b3ebec6aa1d3e821a1b4bf1b80168e78b70f72f6cbd7dbf731c6b18b91364803144febf51d44c3cf515c500dff961dbbdfce8a9fd097743a027adf3a9671e8ace518b99327e09d0e520d340d19d2d19e9afe8a9fd097743a027adf3a9671e8ace518b99327e09d0e520d340d19d2d19e9af19cb87050b0fb410da3b88df752c2e1bdaeec77ac052b04febef31a68823cfcbpython2-configpython2.7-configpython2.7libpython2.7.so.1.0python2.pcpython-2.7.pc../../libpython2.7.sorootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-base-2.7.18-150000.65.1.src.rpmpkgconfig(python)pkgconfig(python-2.7)pkgconfig(python2)python-develpython-devel(aarch-64)python-testsuitepython2-develpython2-testsuite@@@@@@     /bin/sh/usr/bin/pkg-config/usr/bin/python/usr/bin/python2/usr/bin/python2.7glibc-develpythonpython(abi)python-baserpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.7.182.72.7.18-150000.65.13.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1fH@f?]fh@e,e @eedeeeRd˖dD@dq@du@dtdm@dxdc>@cӼc0c|ck@c pcbbb@b@b@ba@a@a(@aim@aI@a'@a#aj@a`t`8`_T^J^@^@^>^>^;^8 @^.^g@^ @]f@]@]]]d@]d@]@]z@]V]y@]9]1]\t@\\7\7\\J@\J@\C@\2[[#@[6@[@[ @[Za@Z@ZxG@ZtRZp^@Z CVE-2021-3737-fix-HTTP-client-infinite-line-reading-after-a-HTTP-100-Continue.patch (boo#1189241, CVE-2021-3737)- Renamed patch for assigned CVE: * bpo43075-fix-ReDoS-in-request.patch -> CVE-2021-3733-fix-ReDoS-in-request.patch (boo#1189287, CVE-2021-3733) - Fix python-doc build (bpo#35293): * sphinx-update-removed-function.patch - Update documentation formatting for Sphinx 3.0 (bpo#40204).- Add bpo43075-fix-ReDoS-in-request.patch which fixes ReDoS in request (bpo#43075, boo#1189287). - Add missing security announcement to bpo44022-fix-http-client-infinite-line-reading-after-a-HTTP-100-Continue.patch.- Add bpo44022-fix-http-client-infinite-line-reading-after-a-HTTP-100-Continue.patch which fixes http client infinite line reading (DoS) after a http 100 (bpo#44022, boo#1189241).- Modify Lib/ensurepip/__init__.py to contain the same version numbers as are in reality the ones in the bundled wheels (bsc#1187668).- Add CVE-2021-23336-only-amp-as-query-sep.patch which forbids use of semicolon as a query string separator (bpo#42967, bsc#1182379, CVE-2021-23336).- Add CVE-2021-3177-buf_ovrfl_PyCArg_repr.patch fixing bsc#1181126 (CVE-2021-3177) buffer overflow in PyCArg_repr in _ctypes/callproc.c, which may lead to remote code execution.- (bsc#1180125) We really don't Require python-rpm-macros package. Unnecessary dependency.- Add patch configure_PYTHON_FOR_REGEN.patch which makes configure.ac to consider the correct version of PYTHON_FO_REGEN (bsc#1078326).- Use python3-Sphinx on anything more recent than SLE-15 (inclusive).- Update to 2.7.18, final release of Python 2. Ever.: - Newline characters have been escaped when performing uu encoding to prevent them from overflowing into to content section of the encoded file. This prevents malicious or accidental modification of data during the decoding process. - Fixes a ReDoS vulnerability in `http.cookiejar`. Patch by Ben Caller. - Fixed line numbers and column offsets for AST nodes for calls without arguments in decorators. - bsc#1155094 (CVE-2019-18348) Disallow control characters in hostnames in http.client. Such potentially malicious header injection URLs now cause a InvalidURL to be raised. - Fix urllib.urlretrieve failing on subsequent ftp transfers from the same host. - Fix problems identified by GCC's -Wstringop-truncation warning. - AddRefActCtx() was needlessly being checked for failure in PC/dl_nt.c. - Prevent failure of test_relative_path in test_py_compile on macOS Catalina. - Fixed possible leak in `PyArg_Parse` and similar functions for format units "es#" and "et#" when the macro `PY_SSIZE_T_CLEAN` is not defined. - Remove upstreamed patches: - CVE-2019-18348-CRLF_injection_via_host_part.patch - python-2.7.14-CVE-2017-1000158.patch - CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch - CVE-2018-1061-DOS-via-regexp-difflib.patch - CVE-2019-10160-netloc-port-regression.patch - CVE-2019-16056-email-parse-addr.patch- Add CVE-2019-9674-zip-bomb.patch to improve documentation warning about dangers of zip-bombs and other security problems with zipfile library. (bsc#1162825 CVE-2019-9674)- Change to Requires: libpython%{so_version} == %{version}-%{release} to python-base to keep both packages always synchronized (add %{so_version}) (bsc#1162224).- Add CVE-2020-8492-urllib-ReDoS.patch fixing the security bug "Python urrlib allowed an HTTP server to conduct Regular Expression Denial of Service (ReDoS)" (bsc#1162367)- Provide python-testsuite from devel subkg to ease py2->py3 dependencies- Add python-2.7.17-switch-off-failing-SSL-tests.patch to switch off tests coliding with the combination of modern Python and ancient OpenSSL on SLE-12.- libnsl is required only on more recent SLEs and openSUSE, older glibc supported NIS on its own.- Add provides in gdbm subpackage to provide dbm symbols. This allows us to use %%{python_module dbm} as a dependency and have it properly resolved for both python2 and python3- Drop appstream-glib BuildRequires and no longer call appstream-util validate-relax: eliminate a build cycle between as-glib and python. The only thing would would gain by calling as-uril is catching if upstream breaks the appdata.xml file in a future release. Considering py2 is dying, chances for a new release, let alone one breaking the xml file, are slim.- Unify packages among openSUSE:Factory and SLE versions. (bsc#1159035) ; add missing records to this changelog. - Add idle.desktop and idle.appdata.xml to provide IDLE in menus (bsc#1153830)- Add python2_split_startup Provide to make it possible to conflict older packages by shared-python-startup.- Move /etc/pythonstart script to shared-python-startup package.- Add bpo-36576-skip_tests_for_OpenSSL-111.patch (originally from bpo#36576) skipping tests failing with OpenSSL 1.1.1. Fixes bsc#1149792- Add adapted-from-F00251-change-user-install-location.patch fixing pip/distutils to install into /usr/local.- Update to 2.7.17: - a bug fix release in the Python 2.7.x series. It is expected to be the penultimate release for Python 2.7. - Removed patches included upstream: - CVE-2018-20852-cookie-domain-check.patch - CVE-2019-16935-xmlrpc-doc-server_title.patch - CVE-2019-9636-netloc-no-decompose-characters.patch - CVE-2019-9947-no-ctrl-char-http.patch - CVE-2019-9948-avoid_local-file.patch - python-2.7.14-CVE-2018-1000030-1.patch - python-2.7.14-CVE-2018-1000030-2.patch - Renamed remove-static-libpython.diff and python-bsddb6.diff to remove-static-libpython.patch and python-bsddb6.patch to unify filenames.- Add CVE-2019-16935-xmlrpc-doc-server_title.patch fixing bsc#1153238 (aka CVE-2019-16935) fixing a reflected XSS in python/Lib/DocXMLRPCServer.py- Add bpo36302-sort-module-sources.patch (boo#1041090)- Add CVE-2019-16056-email-parse-addr.patch fixing the email module wrongly parses email addresses [bsc#1149955, CVE-2019-16056]- boo#1141853 (CVE-2018-20852) add CVE-2018-20852-cookie-domain-check.patch fixing http.cookiejar.DefaultPolicy.domain_return_ok which did not correctly validate the domain: it could be tricked into sending cookies to the wrong server.- Skip test_urllib2_localnet that randomly fails in OBS- bsc#1138459: add CVE-2019-10160-netloc-port-regression.patch which fixes regression introduced by the previous patch. (CVE-2019-10160) Upstream gh#python/cpython#13812- Set _lto_cflags to nil as it will prevent to propage LTO for Python modules that are built in a separate package.- bsc#1130840 (CVE-2019-9947): add CVE-2019-9947-no-ctrl-char-http.patch Address the issue by disallowing URL paths with embedded whitespace or control characters through into the underlying http client request. Such potentially malicious header injection URLs now cause a ValueError to be raised.- bsc#1130847 (CVE-2019-9948) add CVE-2019-9948-avoid_local-file.patch removing unnecessary (and potentially harmful) URL scheme local-file://.- bsc#1129346: add CVE-2019-9636-netloc-no-decompose-characters.patch Characters in the netloc attribute that decompose under NFKC normalization (as used by the IDNA encoding) into any of ``/``, ``?``, ``#``, ``@``, or ``:`` will raise a ValueError. If the URL is decomposed before parsing, or is not a Unicode string, no error will be raised (CVE-2019-9636). Upstream commits e37ef41 and 507bd8c.- (bsc#1111793) Update to 2.7.16: * bugfix-only release: complete list of changes on https://github.com/python/cpython/blob/2.7/Misc/NEWS.d/2.7.16rc1.rst * Removed openssl-111.patch and CVE-2018-1000802-shutil_use_subprocess_no_spawn.patch which are fully included in the tarball. * Updated patches to apply cleanly: CVE-2019-5010-null-defer-x509-cert-DOS.patch bpo36160-init-sysconfig_vars.patch do-not-use-non-ascii-in-test_ssl.patch openssl-111-middlebox-compat.patch openssl-111-ssl_options.patch python-2.5.1-sqlite.patch python-2.6-gettext-plurals.patch python-2.7-dirs.patch python-2.7.2-fix_date_time_compiler.patch python-2.7.4-canonicalize2.patch python-2.7.5-multilib.patch python-2.7.9-ssl_ca_path.patch python-bsddb6.diff remove-static-libpython.patch * Update python-2.7.5-multilib.patch to pass with new platlib regime.- bsc#1109847 (CVE-2018-14647): add CVE-2018-14647_XML_SetHashSalt-in_elementtree.patch fixing bpo-34623.- bsc#1073748: add bpo-29347-dereferencing-undefined-pointers.patch PyWeakref_NewProxy@Objects/weakrefobject.c creates new isntance of PyWeakReference struct and does not intialize wr_prev and wr_next of new isntance. These pointers can have garbage and point to random memory locations. Python should not crash while destroying the isntance created in the same interpreter function. As per my understanding, both wr_prev and wr_next of PyWeakReference instance should be initialized to NULL to avoid segfault.- bsc#1122191: add CVE-2019-5010-null-defer-x509-cert-DOS.patch fixing bpo-35746 (CVE-2019-5010). An exploitable denial-of-service vulnerability exists in the X509 certificate parser of Python.org Python 2.7.11 / 3.7.2. A specially crafted X509 certificate can cause a NULL pointer dereference, resulting in a denial of service. An attacker can initiate or accept TLS connections using crafted certificates to trigger this vulnerability.- Use upstream-recommended %{_rpmconfigdir}/macros.d directory for the rpm macros.- Add patch openssl-111.patch to work with openssl-1.1.1 (bsc#1113755)- Apply "CVE-2018-1000802-shutil_use_subprocess_no_spawn.patch" which converts shutil._call_external_zip to use subprocess rather than distutils.spawn. [bsc#1109663, CVE-2018-1000802]- Apply "CVE-2018-1061-DOS-via-regexp-difflib.patch" to prevent low-grade poplib REDOS (CVE-2018-1060) and to prevent difflib REDOS (CVE-2018-1061). Prior to this patch mail server's timestamp was susceptible to catastrophic backtracking on long evil response from the server. Also, it was susceptible to catastrophic backtracking, which was a potential DOS vector. [bsc#1088004 and bsc#1088009, CVE-2018-1061 and CVE-2018-1060]- Apply "CVE-2017-18207.patch" to add a check to Lib/wave.py that verifies that at least one channel is provided. Prior to this check, attackers could cause a denial of service (divide-by-zero error and application crash) via a crafted wav format audio file. [bsc#1083507, CVE-2017-18207]- Apply "python-sorted_tar.patch" (bsc#1086001, boo#1081750) sort tarfile output directory listing- update to 2.7.15 * dozens of bugfixes, see NEWS for details - removed obsolete patches: * python-ncurses-6.0-accessors.patch * python-fix-shebang.patch * gcc8-miscompilation-fix.patch - add patch from upstream: * do-not-use-non-ascii-in-test_ssl.patch- Add gcc8-miscompilation-fix.patch (boo#1084650).- Apply "python-2.7.14-CVE-2017-1000158.patch" to prevent integer overflows in PyString_DecodeEscape that could have resulted in heap-based buffer overflow attacks and possible arbitrary code execution. [bsc#1068664, CVE-2017-1000158]- exclude test_socket & test_subprocess for PowerPC boo#1078485 (same ref as previous change)- Add python-skip_random_failing_tests.patch bypass boo#1078485 and exclude many tests for PowerPC- Add patch python-fix-shebang.patch to fix bsc#1078326- exclude test_regrtest for s390, where it does not segfault as it should (fixes bsc#1073269) - fix segfault while creating weakref - bsc#1073748, bpo#29347 (this is actually fixed by the 2.7.14 update; mentioning this for purposes of bugfix tracking)- update to 2.7.14 * dozens of bugfixes, see NEWS for details * fixed possible integer overflow in PyString_DecodeEscape (CVE-2017-1000158, bsc#1068664) * fixed segfaults with dict mutated during search * fixed possible free-after-use problems with buffer objects with custom indexing * fixed urllib.splithost to correctly parse fragments (bpo-30500) - drop upstreamed python-2.7.13-overflow_check.patch - drop unneeded python-2.7.12-makeopcode.patch - drop upstreamed 0001-2.7-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3094.patch - Apply "python-2.7.14-CVE-2018-1000030-1.patch" and "python-2.7.14-CVE-2018-1000030-2.patch" to remedy a bug that would crash the Python interpreter when multiple threads used the same I/O stream concurrently. This issue is not classified as a security vulnerability due to the fact that an attacker must be able to run code, however in some situations -- such as function as a service -- this vulnerability can potentially be used by an attacker to violate a trust boundary. [bsc#1079300, CVE-2018-1000030]- Call python2 instead of python in macros- Fix test broken with OpenSSL 1.1 (bsc#1042670) * add 0001-2.7-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-3094.patch- drop SUSE_ASNEEDED=0 as it is not needed anymore- Add libnsl-devel build requires for glibc obsoleting libnsl- obsolete/provide python-argparse and provide python2-argparse, because the argparse module is available from python 2.7 up- SLE package update (bsc#1027282) - refresh python-2.7.5-multilib.patch - dropped upstreamed patches: python-fix-short-dh.patch python-2.7.7-mhlib-linkcount.patch python-2.7-urllib2-localnet-ssl.patch CVE-2016-0772-smtplib-starttls.patch CVE-2016-5699-http-header-injection.patch CVE-2016-5636-zipimporter-overflow.patch python-2.7-httpoxy.patch - Add python-ncurses-6.0-accessors.patch: Fix build with NCurses 6.0 and OPAQUE_WINDOW set to 1. (dimstar@opensuse.org)- Add reproducible.patch to allow reproducible builds of various python packages like python-amqp Upstream: https://github.com/python/cpython/pull/296- update to 2.7.13 * dozens of bugfixes, see NEWS for details * updated cipher lists for openssl wrapper, support openssl >= 1.1.0 * properly fix HTTPoxy (CVE-2016-1000110) * profile-opt build now applies PGO to modules as well - update python-2.7.10-overflow_check.patch with python-2.7.13-overflow_check.patch, incorporating upstream changes (bnc#964182) - add "-fwrapv" to optflags explicitly because upstream code still relies on it in many places- provide python2-* symbols, for support of new packages built as python2-foo - rename macros.python to macros.python2 accordingly - require python-rpm-macros package, drop macro definitions from macros.python2- initial packaging of `python27` side-by-side variant (fate#321075, bsc#997436) - renamed `python` to `python27` in package names and requires - removed Provides and Obsoletes clauses - dropped SLE12-only patch python-2.7.9-sles-disable-verification-by-default.patch, companion sle_tls_checks_policy.py file and the python-strict-tls-checks subpackage - dropped profile files - removed /usr/bin/python and /usr/bin/python2, along with other unversioned aliases - rewrote macros file to enable stand-alone packages depending on py2.7 - re-included downloaded version of HTML documentation- update to 2.7.12 * dozens of bugfixes, see NEWS for details * fixes multiple security issues: CVE-2016-0772 TLS stripping attack on smtplib (bsc#984751) CVE-2016-5636 zipimporter heap overflow (bsc#985177) CVE-2016-5699 httplib header injection (bsc#985348) (this one is actually fixed since 2.7.10) - removed upstreamed python-2.7.7-mhlib-linkcount.patch - refreshed multilib patch - python-2.7.12-makeopcode.patch - run newly-built python interpreter to make opcodes, in order not to require pre-built python - update LD_LIBRARY_PATH to use $PWD instead of "." because the test process escapes to its own directory - modify shebang-fixing scriptlet to ignore makeopcodetargets.py- CVE-2016-0772-smtplib-starttls.patch: smtplib vulnerability opens startTLS stripping attack (CVE-2016-0772, bsc#984751) - CVE-2016-5636-zipimporter-overflow.patch: heap overflow when importing malformed zip files (CVE-2016-5636, bsc#985177) - CVE-2016-5699-http-header-injection.patch: incorrect validation of HTTP headers allow header injection (CVE-2016-5699, bsc#985348) - python-2.7-httpoxy.patch: HTTPoxy vulnerability in urllib, fixed by disregarding HTTP_PROXY when REQUEST_METHOD is also set (CVE-2016-1000110, bsc#989523)- Add python-2.7.10-overflow_check.patch to fix broken overflow checks. [bnc#964182]- copy strict-tls-checks subpackage from SLE to retain future compatibility (not built in openSUSE) - do this properly to fix bnc#945401 - update SLE check to exclude Leap which also has version 1315, just to be sure- Add python-ncurses-6.0-accessors.patch: Fix build with NCurses 6.0 and OPAQUE_WINDOW set to 1.- add missing ssl.pyc and ssl.pyo to package - implement python-strict-tls-checks subpackage * when present, Python will perform TLS certificate checking by default. it is possible to remove the package to turn off the checks for compatibility with legacy scripts. * as discussed in fate#318300 * this is not built for openSUSE, but retained here in case we want to build the package for a SLE system- python-fix-short-dh.patch: Bump DH parameters to 2048 bit to fix logjam security issue. bsc#935856- add __python2 compatibility macro (used by Fedora) (fate#318838)- update to 2.7.10 - removed obsolete python-2.7-urllib2-localnet-ssl.patch- Reenable test_posix on aarch64- python-2.7.4-aarch64.patch: Remove obsolete patch - python-2.7-libffi-aarch64.patch: Fix argument passing in libffi for aarch64- update to 2.7.9 * contains full backport of ssl module from Python 3.4 (PEP466) * HTTPS certificate validation enabled by default (PEP476) * SSLv3 disabled by default (bnc#901715) * backported ensurepip module (PEP477) * fixes several missing CVEs from last release: CVE-2013-1752, CVE-2013-1753 * dozens of minor bugfixes - dropped upstreamed patches: python-2.7.6-poplib.patch, smtplib_maxline-2.7.patch, xmlrpc_gzip_27.patch - dropped patch python-2.7.3-ssl_ca_path.patch because we don't need it with ssl module from Python 3 - libffi was upgraded upstream, seems to contain our changes, so dropping libffi-ppc64le.diff as well - python-2.7-urllib2-localnet-ssl.patch - properly remove unconditional "import ssl" from test_urllib2_localnet that caused it to fail without ssl- skip test_thread in qemu_linux_user modeh02-armsrv1 1716144175  !"#$%&'()*+,-./0123456789:;<=>?@CDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefijmnopqrstuvwxyy{||~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeffhijklmnopprsttvwxyz{|}~      "##%&&())+,-.//122455788:;;=>>@AACDDFGGIJJLMNOPPRSSUVVXYY[\\^__abbdeeghhjkkmnnpqqsttvwwyzz|}}      !"#$%&'((*++-..0113446788:;<=>>@AACDEFGHHJKLMNNPQQSTTVWWYZZ\]]_``bcceffhiikllnooqrrtuvwxxz{{}~     !"##%&&())+,,./0122455789:;;=>>@ABCDDFGGIJJLMMOPPRSSUVVXYY[\\^__abbdefghhjkkmnnpqqsttvwwyzz|}}      !""$%%'((*++-..0113446779::<==?@@BCCEFFHIJKLLNOOQRRTUUWXXZ[[]^^`aacddfggijjlmmopprssuvvxyy{||~      !!#$$&'')**,--/00234566899;<<>??ABBDEFGHHJKKMNNPQQSTTVWWYZZ\]]_``bccefghijklmnooqrrtuuwxxz{{}~~2.72.72.72.7.18-150000.65.12.7.18-150000.65.12.7.182.7.182.7.18     python-configpython2-configpython2.7-configpythonpython2.7Python-ast.hPython.habstract.hasdl.hast.hbitset.hboolobject.hbufferobject.hbytearrayobject.hbytes_methods.hbytesobject.hcStringIO.hcellobject.hceval.hclassobject.hcobject.hcode.hcodecs.hcompile.hcomplexobject.hdatetime.hdescrobject.hdictobject.hdtoa.henumobject.herrcode.heval.hfileobject.hfloatobject.hframeobject.hfuncobject.hgenobject.hgraminit.hgrammar.himport.hintobject.hintrcheck.hiterobject.hlistobject.hlongintrepr.hlongobject.hmarshal.hmemoryobject.hmetagrammar.hmethodobject.hmodsupport.hmoduleobject.hnode.hobject.hobjimpl.hopcode.hosdefs.hparsetok.hpatchlevel.hpgen.hpgenheaders.hpy_curses.hpyarena.hpycapsule.hpyctype.hpydebug.hpyerrors.hpyexpat.hpyfpe.hpygetopt.hpymacconfig.hpymactoolbox.hpymath.hpymem.hpyport.hpystate.hpystrcmp.hpystrtod.hpythonrun.hpythread.hrangeobject.hsetobject.hsliceobject.hstringobject.hstructmember.hstructseq.hsymtable.hsysmodule.htimefuncs.htoken.htraceback.htupleobject.hucnhash.hunicodeobject.hwarnings.hweakrefobject.hlibpython2.7.sopython-2.7.pcpython.pcpython2.pcMakefile.preMakefile.pre.inSetup.configSetup.localconfig.cconfig.c.ininstall-shlibpython2.7.somakesetuppython.otest185test.dbSine-1000Hz-300ms.aif__init__.py__init__.pyc__init__.pyo__main__.py__main__.pyc__main__.pyo_mock_backport.py_mock_backport.pyc_mock_backport.pyoallsans.pemaudiodatapluck-pcm16.aiffpluck-pcm16.aupluck-pcm16.wavpluck-pcm24.aiffpluck-pcm24.wavpluck-pcm32.aiffpluck-pcm32.aupluck-pcm32.wavpluck-pcm8.aiffpluck-pcm8.aupluck-pcm8.wavpluck-ulaw.aifcpluck-ulaw.auaudiotest.auaudiotests.pyaudiotests.pycaudiotests.pyoautotest.pyautotest.pycautotest.pyobad_coding.pybad_coding2.pybad_coding3.pybadcert.pembadkey.pembadsyntax_future3.pybadsyntax_future4.pybadsyntax_future5.pybadsyntax_future6.pybadsyntax_future7.pybadsyntax_future8.pybadsyntax_future9.pybadsyntax_nocaret.pybisect_cmd.pybisect_cmd.pycbisect_cmd.pyocapath0e4015b9.04e1295a3.05ed36f99.06e88d7b8.099d0fa06.0ce7b8643.0efa5f9c3.0cfgparser.1cjkencodingsbig5-utf8.txtbig5.txtbig5hkscs-utf8.txtbig5hkscs.txtcp949-utf8.txtcp949.txteuc_jisx0213-utf8.txteuc_jisx0213.txteuc_jp-utf8.txteuc_jp.txteuc_kr-utf8.txteuc_kr.txtgb18030-utf8.txtgb18030.txtgb2312-utf8.txtgb2312.txtgbk-utf8.txtgbk.txthz-utf8.txthz.txtiso2022_jp-utf8.txtiso2022_jp.txtiso2022_kr-utf8.txtiso2022_kr.txtjohab-utf8.txtjohab.txtshift_jis-utf8.txtshift_jis.txtshift_jisx0213-utf8.txtshift_jisx0213.txtcmath_testcases.txtcurses_tests.pycurses_tests.pyccurses_tests.pyodataREADMEdecimaltestdataabs.decTestadd.decTestand.decTestbase.decTestclamp.decTestclass.decTestcompare.decTestcomparetotal.decTestcomparetotmag.decTestcopy.decTestcopyabs.decTestcopynegate.decTestcopysign.decTestddAbs.decTestddAdd.decTestddAnd.decTestddBase.decTestddCanonical.decTestddClass.decTestddCompare.decTestddCompareSig.decTestddCompareTotal.decTestddCompareTotalMag.decTestddCopy.decTestddCopyAbs.decTestddCopyNegate.decTestddCopySign.decTestddDivide.decTestddDivideInt.decTestddEncode.decTestddFMA.decTestddInvert.decTestddLogB.decTestddMax.decTestddMaxMag.decTestddMin.decTestddMinMag.decTestddMinus.decTestddMultiply.decTestddNextMinus.decTestddNextPlus.decTestddNextToward.decTestddOr.decTestddPlus.decTestddQuantize.decTestddReduce.decTestddRemainder.decTestddRemainderNear.decTestddRotate.decTestddSameQuantum.decTestddScaleB.decTestddShift.decTestddSubtract.decTestddToIntegral.decTestddXor.decTestdecDouble.decTestdecQuad.decTestdecSingle.decTestdivide.decTestdivideint.decTestdqAbs.decTestdqAdd.decTestdqAnd.decTestdqBase.decTestdqCanonical.decTestdqClass.decTestdqCompare.decTestdqCompareSig.decTestdqCompareTotal.decTestdqCompareTotalMag.decTestdqCopy.decTestdqCopyAbs.decTestdqCopyNegate.decTestdqCopySign.decTestdqDivide.decTestdqDivideInt.decTestdqEncode.decTestdqFMA.decTestdqInvert.decTestdqLogB.decTestdqMax.decTestdqMaxMag.decTestdqMin.decTestdqMinMag.decTestdqMinus.decTestdqMultiply.decTestdqNextMinus.decTestdqNextPlus.decTestdqNextToward.decTestdqOr.decTestdqPlus.decTestdqQuantize.decTestdqReduce.decTestdqRemainder.decTestdqRemainderNear.decTestdqRotate.decTestdqSameQuantum.decTestdqScaleB.decTestdqShift.decTestdqSubtract.decTestdqToIntegral.decTestdqXor.decTestdsBase.decTestdsEncode.decTestexp.decTestextra.decTestfma.decTestinexact.decTestinvert.decTestln.decTestlog10.decTestlogb.decTestmax.decTestmaxmag.decTestmin.decTestminmag.decTestminus.decTestmultiply.decTestnextminus.decTestnextplus.decTestnexttoward.decTestor.decTestplus.decTestpower.decTestpowersqrt.decTestquantize.decTestrandomBound32.decTestrandoms.decTestreduce.decTestremainder.decTestremainderNear.decTestrescale.decTestrotate.decTestrounding.decTestsamequantum.decTestscaleb.decTestshift.decTestsquareroot.decTestsubtract.decTesttestall.decTesttointegral.decTesttointegralx.decTestxor.decTestdoctest_aliases.pydoctest_aliases.pycdoctest_aliases.pyodouble_const.pydouble_const.pycdouble_const.pyoempty.vbsexception_hierarchy.txtffdh3072.pemfloating_points.txtfork_wait.pyfork_wait.pycfork_wait.pyoformatfloat_testcases.txtgdb_sample.pygdb_sample.pycgdb_sample.pyogreyrgb.uueieee754.txtimghdrdatapython.bmppython.gifpython.jpgpython.pbmpython.pgmpython.pngpython.ppmpython.raspython.sgipython.tiffpython.xbminfinite_reload.pyinfinite_reload.pycinfinite_reload.pyoinspect_fodder.pyinspect_fodder.pycinspect_fodder.pyoinspect_fodder2.pyinspect_fodder2.pycinspect_fodder2.pyokeycert.passwd.pemkeycert.pemkeycert2.pemkeycert3.pemkeycert4.pemlist_tests.pylist_tests.pyclist_tests.pyolock_tests.pylock_tests.pyclock_tests.pyomake_ssl_certs.pymake_ssl_certs.pycmake_ssl_certs.pyomapping_tests.pymapping_tests.pycmapping_tests.pyomath_testcases.txtmp_fork_bomb.pymp_fork_bomb.pycmp_fork_bomb.pyomultibytecodec_support.pymultibytecodec_support.pycmultibytecodec_support.pyonokia.pemnullbytecert.pemnullcert.pemoutstanding_bugs.pyoutstanding_bugs.pycoutstanding_bugs.pyopickletester.pypickletester.pycpickletester.pyoprofilee.pyprofilee.pycprofilee.pyopycacert.pempyclbr_input.pypyclbr_input.pycpyclbr_input.pyopydoc_mod.pypydoc_mod.pycpydoc_mod.pyopydocfodder.pypydocfodder.pycpydocfodder.pyopystone.pypystone.pycpystone.pyopythoninfo.pypythoninfo.pycpythoninfo.pyorandv2_32.pckrandv2_64.pckrandv3.pckre_tests.pyre_tests.pycre_tests.pyorecursion.tarregrtest.pyregrtest.pycregrtest.pyorelimport.pyrelimport.pycrelimport.pyoreperf.pyreperf.pycreperf.pyorevocation.crlsample_doctest.pysample_doctest.pycsample_doctest.pyosample_doctest_no_docstrings.pysample_doctest_no_docstrings.pycsample_doctest_no_docstrings.pyosample_doctest_no_doctests.pysample_doctest_no_doctests.pycsample_doctest_no_doctests.pyoscript_helper.pyscript_helper.pycscript_helper.pyoselfsigned_pythontestdotnet.pemseq_tests.pyseq_tests.pycseq_tests.pyosgml_input.htmlsortperf.pysortperf.pycsortperf.pyossl_cert.pemssl_key.passwd.pemssl_key.pemssl_servers.pyssl_servers.pycssl_servers.pyossltests.pyssltests.pycssltests.pyostring_tests.pystring_tests.pycstring_tests.pyosubprocessdatasigchild_ignore.pysigchild_ignore.pycsigchild_ignore.pyosupport__init__.py__init__.pyc__init__.pyoscript_helper.pyscript_helper.pycscript_helper.pyosymlink_support.pysymlink_support.pycsymlink_support.pyotalos-2019-0758.pemtest_MimeWriter.pytest_MimeWriter.pyctest_MimeWriter.pyotest_SimpleHTTPServer.pytest_SimpleHTTPServer.pyctest_SimpleHTTPServer.pyotest_StringIO.pytest_StringIO.pyctest_StringIO.pyotest___all__.pytest___all__.pyctest___all__.pyotest___future__.pytest___future__.pyctest___future__.pyotest__locale.pytest__locale.pyctest__locale.pyotest__osx_support.pytest__osx_support.pyctest__osx_support.pyotest_abc.pytest_abc.pyctest_abc.pyotest_abstract_numbers.pytest_abstract_numbers.pyctest_abstract_numbers.pyotest_aepack.pytest_aepack.pyctest_aepack.pyotest_aifc.pytest_aifc.pyctest_aifc.pyotest_al.pytest_al.pyctest_al.pyotest_anydbm.pytest_anydbm.pyctest_anydbm.pyotest_applesingle.pytest_applesingle.pyctest_applesingle.pyotest_argparse.pytest_argparse.pyctest_argparse.pyotest_array.pytest_array.pyctest_array.pyotest_ascii_formatd.pytest_ascii_formatd.pyctest_ascii_formatd.pyotest_ast.pytest_ast.pyctest_ast.pyotest_asynchat.pytest_asynchat.pyctest_asynchat.pyotest_asyncore.pytest_asyncore.pyctest_asyncore.pyotest_atexit.pytest_atexit.pyctest_atexit.pyotest_audioop.pytest_audioop.pyctest_audioop.pyotest_augassign.pytest_augassign.pyctest_augassign.pyotest_base64.pytest_base64.pyctest_base64.pyotest_bastion.pytest_bastion.pyctest_bastion.pyotest_bdb.pytest_bdb.pyctest_bdb.pyotest_bigaddrspace.pytest_bigaddrspace.pyctest_bigaddrspace.pyotest_bigmem.pytest_bigmem.pyctest_bigmem.pyotest_binascii.pytest_binascii.pyctest_binascii.pyotest_binhex.pytest_binhex.pyctest_binhex.pyotest_binop.pytest_binop.pyctest_binop.pyotest_bisect.pytest_bisect.pyctest_bisect.pyotest_bool.pytest_bool.pyctest_bool.pyotest_bsddb.pytest_bsddb.pyctest_bsddb.pyotest_bsddb185.pytest_bsddb185.pyctest_bsddb185.pyotest_bsddb3.pytest_bsddb3.pyctest_bsddb3.pyotest_buffer.pytest_buffer.pyctest_buffer.pyotest_bufio.pytest_bufio.pyctest_bufio.pyotest_builtin.pytest_builtin.pyctest_builtin.pyotest_bytes.pytest_bytes.pyctest_bytes.pyotest_bz2.pytest_bz2.pyctest_bz2.pyotest_calendar.pytest_calendar.pyctest_calendar.pyotest_call.pytest_call.pyctest_call.pyotest_capi.pytest_capi.pyctest_capi.pyotest_cd.pytest_cd.pyctest_cd.pyotest_cfgparser.pytest_cfgparser.pyctest_cfgparser.pyotest_cgi.pytest_cgi.pyctest_cgi.pyotest_charmapcodec.pytest_charmapcodec.pyctest_charmapcodec.pyotest_cl.pytest_cl.pyctest_cl.pyotest_class.pytest_class.pyctest_class.pyotest_cmath.pytest_cmath.pyctest_cmath.pyotest_cmd.pytest_cmd.pyctest_cmd.pyotest_cmd_line.pytest_cmd_line.pyctest_cmd_line.pyotest_cmd_line_script.pytest_cmd_line_script.pyctest_cmd_line_script.pyotest_code.pytest_code.pyctest_code.pyotest_codeccallbacks.pytest_codeccallbacks.pyctest_codeccallbacks.pyotest_codecencodings_cn.pytest_codecencodings_cn.pyctest_codecencodings_cn.pyotest_codecencodings_hk.pytest_codecencodings_hk.pyctest_codecencodings_hk.pyotest_codecencodings_iso2022.pytest_codecencodings_iso2022.pyctest_codecencodings_iso2022.pyotest_codecencodings_jp.pytest_codecencodings_jp.pyctest_codecencodings_jp.pyotest_codecencodings_kr.pytest_codecencodings_kr.pyctest_codecencodings_kr.pyotest_codecencodings_tw.pytest_codecencodings_tw.pyctest_codecencodings_tw.pyotest_codecmaps_cn.pytest_codecmaps_cn.pyctest_codecmaps_cn.pyotest_codecmaps_hk.pytest_codecmaps_hk.pyctest_codecmaps_hk.pyotest_codecmaps_jp.pytest_codecmaps_jp.pyctest_codecmaps_jp.pyotest_codecmaps_kr.pytest_codecmaps_kr.pyctest_codecmaps_kr.pyotest_codecmaps_tw.pytest_codecmaps_tw.pyctest_codecmaps_tw.pyotest_codecs.pytest_codecs.pyctest_codecs.pyotest_codeop.pytest_codeop.pyctest_codeop.pyotest_coercion.pytest_coercion.pyctest_coercion.pyotest_collections.pytest_collections.pyctest_collections.pyotest_colorsys.pytest_colorsys.pyctest_colorsys.pyotest_commands.pytest_commands.pyctest_commands.pyotest_compare.pytest_compare.pyctest_compare.pyotest_compile.pytest_compile.pyctest_compile.pyotest_compileall.pytest_compileall.pyctest_compileall.pyotest_compiler.pytest_compiler.pyctest_compiler.pyotest_complex.pytest_complex.pyctest_complex.pyotest_complex_args.pytest_complex_args.pyctest_complex_args.pyotest_contains.pytest_contains.pyctest_contains.pyotest_contextlib.pytest_contextlib.pyctest_contextlib.pyotest_cookie.pytest_cookie.pyctest_cookie.pyotest_cookielib.pytest_cookielib.pyctest_cookielib.pyotest_copy.pytest_copy.pyctest_copy.pyotest_copy_reg.pytest_copy_reg.pyctest_copy_reg.pyotest_cpickle.pytest_cpickle.pyctest_cpickle.pyotest_cprofile.pytest_cprofile.pyctest_cprofile.pyotest_crypt.pytest_crypt.pyctest_crypt.pyotest_csv.pytest_csv.pyctest_csv.pyotest_ctypes.pytest_ctypes.pyctest_ctypes.pyotest_curses.pytest_curses.pyctest_curses.pyotest_datetime.pytest_datetime.pyctest_datetime.pyotest_dbm.pytest_dbm.pyctest_dbm.pyotest_decimal.pytest_decimal.pyctest_decimal.pyotest_decorators.pytest_decorators.pyctest_decorators.pyotest_defaultdict.pytest_defaultdict.pyctest_defaultdict.pyotest_deque.pytest_deque.pyctest_deque.pyotest_descr.pytest_descr.pyctest_descr.pyotest_descrtut.pytest_descrtut.pyctest_descrtut.pyotest_dict.pytest_dict.pyctest_dict.pyotest_dictcomps.pytest_dictcomps.pyctest_dictcomps.pyotest_dictviews.pytest_dictviews.pyctest_dictviews.pyotest_difflib.pytest_difflib.pyctest_difflib.pyotest_difflib_expect.htmltest_dircache.pytest_dircache.pyctest_dircache.pyotest_dis.pytest_dis.pyctest_dis.pyotest_distutils.pytest_distutils.pyctest_distutils.pyotest_dl.pytest_dl.pyctest_dl.pyotest_doctest.pytest_doctest.pyctest_doctest.pyotest_doctest.txttest_doctest2.pytest_doctest2.pyctest_doctest2.pyotest_doctest2.txttest_doctest3.txttest_doctest4.txttest_docxmlrpc.pytest_docxmlrpc.pyctest_docxmlrpc.pyotest_dumbdbm.pytest_dumbdbm.pyctest_dumbdbm.pyotest_dummy_thread.pytest_dummy_thread.pyctest_dummy_thread.pyotest_dummy_threading.pytest_dummy_threading.pyctest_dummy_threading.pyotest_email.pytest_email.pyctest_email.pyotest_email_codecs.pytest_email_codecs.pyctest_email_codecs.pyotest_email_renamed.pytest_email_renamed.pyctest_email_renamed.pyotest_ensurepip.pytest_ensurepip.pyctest_ensurepip.pyotest_enumerate.pytest_enumerate.pyctest_enumerate.pyotest_eof.pytest_eof.pyctest_eof.pyotest_epoll.pytest_epoll.pyctest_epoll.pyotest_errno.pytest_errno.pyctest_errno.pyotest_exception_variations.pytest_exception_variations.pyctest_exception_variations.pyotest_exceptions.pytest_exceptions.pyctest_exceptions.pyotest_extcall.pytest_extcall.pyctest_extcall.pyotest_fcntl.pytest_fcntl.pyctest_fcntl.pyotest_file.pytest_file.pyctest_file.pyotest_file2k.pytest_file2k.pyctest_file2k.pyotest_file_eintr.pytest_file_eintr.pyctest_file_eintr.pyotest_filecmp.pytest_filecmp.pyctest_filecmp.pyotest_fileinput.pytest_fileinput.pyctest_fileinput.pyotest_fileio.pytest_fileio.pyctest_fileio.pyotest_float.pytest_float.pyctest_float.pyotest_fnmatch.pytest_fnmatch.pyctest_fnmatch.pyotest_fork1.pytest_fork1.pyctest_fork1.pyotest_format.pytest_format.pyctest_format.pyotest_fpformat.pytest_fpformat.pyctest_fpformat.pyotest_fractions.pytest_fractions.pyctest_fractions.pyotest_frozen.pytest_frozen.pyctest_frozen.pyotest_ftplib.pytest_ftplib.pyctest_ftplib.pyotest_funcattrs.pytest_funcattrs.pyctest_funcattrs.pyotest_functools.pytest_functools.pyctest_functools.pyotest_future.pytest_future.pyctest_future.pyotest_future1.pytest_future1.pyctest_future1.pyotest_future2.pytest_future2.pyctest_future2.pyotest_future3.pytest_future3.pyctest_future3.pyotest_future4.pytest_future4.pyctest_future4.pyotest_future5.pytest_future5.pyctest_future5.pyotest_future_builtins.pytest_future_builtins.pyctest_future_builtins.pyotest_gc.pytest_gc.pyctest_gc.pyotest_gdb.pytest_gdb.pyctest_gdb.pyotest_gdbm.pytest_gdbm.pyctest_gdbm.pyotest_generators.pytest_generators.pyctest_generators.pyotest_genericpath.pytest_genericpath.pyctest_genericpath.pyotest_genexps.pytest_genexps.pyctest_genexps.pyotest_getargs.pytest_getargs.pyctest_getargs.pyotest_getargs2.pytest_getargs2.pyctest_getargs2.pyotest_getopt.pytest_getopt.pyctest_getopt.pyotest_gettext.pytest_gettext.pyctest_gettext.pyotest_gl.pytest_gl.pyctest_gl.pyotest_glob.pytest_glob.pyctest_glob.pyotest_global.pytest_global.pyctest_global.pyotest_grammar.pytest_grammar.pyctest_grammar.pyotest_grp.pytest_grp.pyctest_grp.pyotest_gzip.pytest_gzip.pyctest_gzip.pyotest_hash.pytest_hash.pyctest_hash.pyotest_hashlib.pytest_hashlib.pyctest_hashlib.pyotest_heapq.pytest_heapq.pyctest_heapq.pyotest_hmac.pytest_hmac.pyctest_hmac.pyotest_hotshot.pytest_hotshot.pyctest_hotshot.pyotest_htmllib.pytest_htmllib.pyctest_htmllib.pyotest_htmlparser.pytest_htmlparser.pyctest_htmlparser.pyotest_httplib.pytest_httplib.pyctest_httplib.pyotest_httpservers.pytest_httpservers.pyctest_httpservers.pyotest_idle.pytest_idle.pyctest_idle.pyotest_imageop.pytest_imageop.pyctest_imageop.pyotest_imaplib.pytest_imaplib.pyctest_imaplib.pyotest_imgfile.pytest_imgfile.pyctest_imgfile.pyotest_imghdr.pytest_imghdr.pyctest_imghdr.pyotest_imp.pytest_imp.pyctest_imp.pyotest_import.pytest_import.pyctest_import.pyotest_import_magic.pytest_import_magic.pyctest_import_magic.pyotest_importhooks.pytest_importhooks.pyctest_importhooks.pyotest_importlib.pytest_importlib.pyctest_importlib.pyotest_index.pytest_index.pyctest_index.pyotest_inspect.pytest_inspect.pyctest_inspect.pyotest_int.pytest_int.pyctest_int.pyotest_int_literal.pytest_int_literal.pyctest_int_literal.pyotest_io.pytest_io.pyctest_io.pyotest_ioctl.pytest_ioctl.pyctest_ioctl.pyotest_isinstance.pytest_isinstance.pyctest_isinstance.pyotest_iter.pytest_iter.pyctest_iter.pyotest_iterlen.pytest_iterlen.pyctest_iterlen.pyotest_itertools.pytest_itertools.pyctest_itertools.pyotest_json.pytest_json.pyctest_json.pyotest_kqueue.pytest_kqueue.pyctest_kqueue.pyotest_largefile.pytest_largefile.pyctest_largefile.pyotest_lib2to3.pytest_lib2to3.pyctest_lib2to3.pyotest_linecache.pytest_linecache.pyctest_linecache.pyotest_linuxaudiodev.pytest_linuxaudiodev.pyctest_linuxaudiodev.pyotest_list.pytest_list.pyctest_list.pyotest_locale.pytest_locale.pyctest_locale.pyotest_logging.pytest_logging.pyctest_logging.pyotest_long.pytest_long.pyctest_long.pyotest_long_future.pytest_long_future.pyctest_long_future.pyotest_longexp.pytest_longexp.pyctest_longexp.pyotest_macos.pytest_macos.pyctest_macos.pyotest_macostools.pytest_macostools.pyctest_macostools.pyotest_macpath.pytest_macpath.pyctest_macpath.pyotest_macurl2path.pytest_macurl2path.pyctest_macurl2path.pyotest_mailbox.pytest_mailbox.pyctest_mailbox.pyotest_marshal.pytest_marshal.pyctest_marshal.pyotest_math.pytest_math.pyctest_math.pyotest_md5.pytest_md5.pyctest_md5.pyotest_memoryio.pytest_memoryio.pyctest_memoryio.pyotest_memoryview.pytest_memoryview.pyctest_memoryview.pyotest_mhlib.pytest_mhlib.pyctest_mhlib.pyotest_mimetools.pytest_mimetools.pyctest_mimetools.pyotest_mimetypes.pytest_mimetypes.pyctest_mimetypes.pyotest_minidom.pytest_minidom.pyctest_minidom.pyotest_mmap.pytest_mmap.pyctest_mmap.pyotest_module.pytest_module.pyctest_module.pyotest_modulefinder.pytest_modulefinder.pyctest_modulefinder.pyotest_msilib.pytest_msilib.pyctest_msilib.pyotest_multibytecodec.pytest_multibytecodec.pyctest_multibytecodec.pyotest_multifile.pytest_multifile.pyctest_multifile.pyotest_multiprocessing.pytest_multiprocessing.pyctest_multiprocessing.pyotest_mutants.pytest_mutants.pyctest_mutants.pyotest_mutex.pytest_mutex.pyctest_mutex.pyotest_netrc.pytest_netrc.pyctest_netrc.pyotest_new.pytest_new.pyctest_new.pyotest_nis.pytest_nis.pyctest_nis.pyotest_nntplib.pytest_nntplib.pyctest_nntplib.pyotest_normalization.pytest_normalization.pyctest_normalization.pyotest_ntpath.pytest_ntpath.pyctest_ntpath.pyotest_old_mailbox.pytest_old_mailbox.pyctest_old_mailbox.pyotest_opcodes.pytest_opcodes.pyctest_opcodes.pyotest_openpty.pytest_openpty.pyctest_openpty.pyotest_operator.pytest_operator.pyctest_operator.pyotest_optparse.pytest_optparse.pyctest_optparse.pyotest_ordered_dict.pytest_ordered_dict.pyctest_ordered_dict.pyotest_os.pytest_os.pyctest_os.pyotest_ossaudiodev.pytest_ossaudiodev.pyctest_ossaudiodev.pyotest_parser.pytest_parser.pyctest_parser.pyotest_pdb.pytest_pdb.pyctest_pdb.pyotest_peepholer.pytest_peepholer.pyctest_peepholer.pyotest_pep247.pytest_pep247.pyctest_pep247.pyotest_pep277.pytest_pep277.pyctest_pep277.pyotest_pep352.pytest_pep352.pyctest_pep352.pyotest_pickle.pytest_pickle.pyctest_pickle.pyotest_pickletools.pytest_pickletools.pyctest_pickletools.pyotest_pipes.pytest_pipes.pyctest_pipes.pyotest_pkg.pytest_pkg.pyctest_pkg.pyotest_pkgimport.pytest_pkgimport.pyctest_pkgimport.pyotest_pkgutil.pytest_pkgutil.pyctest_pkgutil.pyotest_platform.pytest_platform.pyctest_platform.pyotest_plistlib.pytest_plistlib.pyctest_plistlib.pyotest_poll.pytest_poll.pyctest_poll.pyotest_popen.pytest_popen.pyctest_popen.pyotest_popen2.pytest_popen2.pyctest_popen2.pyotest_poplib.pytest_poplib.pyctest_poplib.pyotest_posix.pytest_posix.pyctest_posix.pyotest_posixpath.pytest_posixpath.pyctest_posixpath.pyotest_pow.pytest_pow.pyctest_pow.pyotest_pprint.pytest_pprint.pyctest_pprint.pyotest_print.pytest_print.pyctest_print.pyotest_profile.pytest_profile.pyctest_profile.pyotest_property.pytest_property.pyctest_property.pyotest_pstats.pytest_pstats.pyctest_pstats.pyotest_pty.pytest_pty.pyctest_pty.pyotest_pwd.pytest_pwd.pyctest_pwd.pyotest_py3kwarn.pytest_py3kwarn.pyctest_py3kwarn.pyotest_py_compile.pytest_py_compile.pyctest_py_compile.pyotest_pyclbr.pytest_pyclbr.pyctest_pyclbr.pyotest_pydoc.pytest_pydoc.pyctest_pydoc.pyotest_pyexpat.pytest_pyexpat.pyctest_pyexpat.pyotest_queue.pytest_queue.pyctest_queue.pyotest_quopri.pytest_quopri.pyctest_quopri.pyotest_random.pytest_random.pyctest_random.pyotest_re.pytest_re.pyctest_re.pyotest_readline.pytest_readline.pyctest_readline.pyotest_regrtest.pytest_regrtest.pyctest_regrtest.pyotest_repr.pytest_repr.pyctest_repr.pyotest_resource.pytest_resource.pyctest_resource.pyotest_rfc822.pytest_rfc822.pyctest_rfc822.pyotest_richcmp.pytest_richcmp.pyctest_richcmp.pyotest_rlcompleter.pytest_rlcompleter.pyctest_rlcompleter.pyotest_robotparser.pytest_robotparser.pyctest_robotparser.pyotest_runpy.pytest_runpy.pyctest_runpy.pyotest_sax.pytest_sax.pyctest_sax.pyotest_scope.pytest_scope.pyctest_scope.pyotest_scriptpackages.pytest_scriptpackages.pyctest_scriptpackages.pyotest_select.pytest_select.pyctest_select.pyotest_set.pytest_set.pyctest_set.pyotest_setcomps.pytest_setcomps.pyctest_setcomps.pyotest_sets.pytest_sets.pyctest_sets.pyotest_sgmllib.pytest_sgmllib.pyctest_sgmllib.pyotest_sha.pytest_sha.pyctest_sha.pyotest_shelve.pytest_shelve.pyctest_shelve.pyotest_shlex.pytest_shlex.pyctest_shlex.pyotest_shutil.pytest_shutil.pyctest_shutil.pyotest_signal.pytest_signal.pyctest_signal.pyotest_site.pytest_site.pyctest_site.pyotest_slice.pytest_slice.pyctest_slice.pyotest_smtplib.pytest_smtplib.pyctest_smtplib.pyotest_smtpnet.pytest_smtpnet.pyctest_smtpnet.pyotest_socket.pytest_socket.pyctest_socket.pyotest_socketserver.pytest_socketserver.pyctest_socketserver.pyotest_softspace.pytest_softspace.pyctest_softspace.pyotest_sort.pytest_sort.pyctest_sort.pyotest_source_encoding.pytest_source_encoding.pyctest_source_encoding.pyotest_spwd.pytest_spwd.pyctest_spwd.pyotest_sqlite.pytest_sqlite.pyctest_sqlite.pyotest_ssl.pytest_ssl.pyctest_ssl.pyotest_startfile.pytest_startfile.pyctest_startfile.pyotest_stat.pytest_stat.pyctest_stat.pyotest_str.pytest_str.pyctest_str.pyotest_strftime.pytest_strftime.pyctest_strftime.pyotest_string.pytest_string.pyctest_string.pyotest_stringprep.pytest_stringprep.pyctest_stringprep.pyotest_strop.pytest_strop.pyctest_strop.pyotest_strptime.pytest_strptime.pyctest_strptime.pyotest_strtod.pytest_strtod.pyctest_strtod.pyotest_struct.pytest_struct.pyctest_struct.pyotest_structmembers.pytest_structmembers.pyctest_structmembers.pyotest_structseq.pytest_structseq.pyctest_structseq.pyotest_subprocess.pytest_subprocess.pyctest_subprocess.pyotest_sunau.pytest_sunau.pyctest_sunau.pyotest_sunaudiodev.pytest_sunaudiodev.pyctest_sunaudiodev.pyotest_sundry.pytest_sundry.pyctest_sundry.pyotest_support.pytest_support.pyctest_support.pyotest_symtable.pytest_symtable.pyctest_symtable.pyotest_syntax.pytest_syntax.pyctest_syntax.pyotest_sys.pytest_sys.pyctest_sys.pyotest_sys_setprofile.pytest_sys_setprofile.pyctest_sys_setprofile.pyotest_sys_settrace.pytest_sys_settrace.pyctest_sys_settrace.pyotest_sysconfig.pytest_sysconfig.pyctest_sysconfig.pyotest_tarfile.pytest_tarfile.pyctest_tarfile.pyotest_tcl.pytest_tcl.pyctest_tcl.pyotest_telnetlib.pytest_telnetlib.pyctest_telnetlib.pyotest_tempfile.pytest_tempfile.pyctest_tempfile.pyotest_test_support.pytest_test_support.pyctest_test_support.pyotest_textwrap.pytest_textwrap.pyctest_textwrap.pyotest_thread.pytest_thread.pyctest_thread.pyotest_threaded_import.pytest_threaded_import.pyctest_threaded_import.pyotest_threadedtempfile.pytest_threadedtempfile.pyctest_threadedtempfile.pyotest_threading.pytest_threading.pyctest_threading.pyotest_threading_local.pytest_threading_local.pyctest_threading_local.pyotest_threadsignals.pytest_threadsignals.pyctest_threadsignals.pyotest_time.pytest_time.pyctest_time.pyotest_timeit.pytest_timeit.pyctest_timeit.pyotest_timeout.pytest_timeout.pyctest_timeout.pyotest_tk.pytest_tk.pyctest_tk.pyotest_tokenize.pytest_tokenize.pyctest_tokenize.pyotest_tools.pytest_tools.pyctest_tools.pyotest_trace.pytest_trace.pyctest_trace.pyotest_traceback.pytest_traceback.pyctest_traceback.pyotest_transformer.pytest_transformer.pyctest_transformer.pyotest_ttk_guionly.pytest_ttk_guionly.pyctest_ttk_guionly.pyotest_ttk_textonly.pytest_ttk_textonly.pyctest_ttk_textonly.pyotest_tuple.pytest_tuple.pyctest_tuple.pyotest_turtle.pytest_turtle.pyctest_turtle.pyotest_typechecks.pytest_typechecks.pyctest_typechecks.pyotest_types.pytest_types.pyctest_types.pyotest_ucn.pytest_ucn.pyctest_ucn.pyotest_unary.pytest_unary.pyctest_unary.pyotest_undocumented_details.pytest_undocumented_details.pyctest_undocumented_details.pyotest_unicode.pytest_unicode.pyctest_unicode.pyotest_unicode_file.pytest_unicode_file.pyctest_unicode_file.pyotest_unicodedata.pytest_unicodedata.pyctest_unicodedata.pyotest_unittest.pytest_unittest.pyctest_unittest.pyotest_univnewlines.pytest_univnewlines.pyctest_univnewlines.pyotest_univnewlines2k.pytest_univnewlines2k.pyctest_univnewlines2k.pyotest_unpack.pytest_unpack.pyctest_unpack.pyotest_urllib.pytest_urllib.pyctest_urllib.pyotest_urllib2.pytest_urllib2.pyctest_urllib2.pyotest_urllib2_localnet.pytest_urllib2_localnet.pyctest_urllib2_localnet.pyotest_urllib2net.pytest_urllib2net.pyctest_urllib2net.pyotest_urllibnet.pytest_urllibnet.pyctest_urllibnet.pyotest_urlparse.pytest_urlparse.pyctest_urlparse.pyotest_userdict.pytest_userdict.pyctest_userdict.pyotest_userlist.pytest_userlist.pyctest_userlist.pyotest_userstring.pytest_userstring.pyctest_userstring.pyotest_uu.pytest_uu.pyctest_uu.pyotest_uuid.pytest_uuid.pyctest_uuid.pyotest_wait3.pytest_wait3.pyctest_wait3.pyotest_wait4.pytest_wait4.pyctest_wait4.pyotest_warnings.pytest_warnings.pyctest_warnings.pyotest_wave.pytest_wave.pyctest_wave.pyotest_weakref.pytest_weakref.pyctest_weakref.pyotest_weakset.pytest_weakset.pyctest_weakset.pyotest_whichdb.pytest_whichdb.pyctest_whichdb.pyotest_winreg.pytest_winreg.pyctest_winreg.pyotest_winsound.pytest_winsound.pyctest_winsound.pyotest_with.pytest_with.pyctest_with.pyotest_wsgiref.pytest_wsgiref.pyctest_wsgiref.pyotest_xdrlib.pytest_xdrlib.pyctest_xdrlib.pyotest_xml_etree.pytest_xml_etree.pyctest_xml_etree.pyotest_xml_etree_c.pytest_xml_etree_c.pyctest_xml_etree_c.pyotest_xmllib.pytest_xmllib.pyctest_xmllib.pyotest_xmlrpc.pytest_xmlrpc.pyctest_xmlrpc.pyotest_xpickle.pytest_xpickle.pyctest_xpickle.pyotest_xrange.pytest_xrange.pyctest_xrange.pyotest_zipfile.pytest_zipfile.pyctest_zipfile.pyotest_zipfile64.pytest_zipfile64.pyctest_zipfile64.pyotest_zipimport.pytest_zipimport.pyctest_zipimport.pyotest_zipimport_support.pytest_zipimport_support.pyctest_zipimport_support.pyotest_zlib.pytest_zlib.pyctest_zlib.pyotestall.pytestall.pyctestall.pyotestcodec.pytestcodec.pyctestcodec.pyotestimg.uuetestimgr.uuetestrgb.uuetesttar.tartf_inherit_check.pytf_inherit_check.pyctf_inherit_check.pyothreaded_import_hangers.pythreaded_import_hangers.pycthreaded_import_hangers.pyotime_hashlib.pytime_hashlib.pyctime_hashlib.pyotokenize_tests.txttracedmodules__init__.py__init__.pyc__init__.pyotestmod.pytestmod.pyctestmod.pyowarning_tests.pywarning_tests.pycwarning_tests.pyowin_console_handler.pywin_console_handler.pycwin_console_handler.pyoxmltestdataexpat224_utf8_bug.xmlsimple-ns.xmlsimple.xmltest.xmltest.xml.outxmltests.pyxmltests.pycxmltests.pyozipdir.zip/usr/bin//usr/include//usr/include/python2.7//usr/lib64//usr/lib64/pkgconfig//usr/lib64/python2.7/config//usr/lib64/python2.7//usr/lib64/python2.7/test//usr/lib64/python2.7/test/audiodata//usr/lib64/python2.7/test/capath//usr/lib64/python2.7/test/cjkencodings//usr/lib64/python2.7/test/data//usr/lib64/python2.7/test/decimaltestdata//usr/lib64/python2.7/test/imghdrdata//usr/lib64/python2.7/test/subprocessdata//usr/lib64/python2.7/test/support//usr/lib64/python2.7/test/tracedmodules//usr/lib64/python2.7/test/xmltestdata/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:33823/SUSE_SLE-15_Update/164169f13ca09cc2b12724b106293c24-python-base.SUSE_SLE-15_Updatedrpmxz5aarch64-suse-linux                                                     !                         "                       "                                          #      #               $                                                                                                            #                                                                       "                 #           #        "  "                                                                                          %       &''(( )Python script, ASCII text executabledirectoryC source, ASCII textASCII textpkgconfig filemakefile script, ASCII text, with very long linesmakefile script, ASCII textPOSIX shell script, ASCII text executableELF 64-bit LSB relocatable, ARM aarch64, version 1 (SYSV), with debug_info, not strippedBerkeley DB 1.85 (Hash, version 2, big-endian)python 2.7 byte-compiledUTF-8 Unicode (with BOM) textUTF-8 Unicode textISO-8859 textNon-ISO extended-ASCII textASCII text, with escape sequencesNon-ISO extended-ASCII text, with LF, NEL line terminatorsASCII text, with very long linesASCII text, with no line terminatorsuuencoded or xxencoded, ASCII textGIF image data, version 89a, 16 x 16JPEG image data, JFIF standard 1.01, resolution (DPI), density 1x1, segment length 16, baseline, precision 8, 16x16, frames 3Netpbm image data, size = 16 x 16, rawbits, bitmapNetpbm image data, size = 16 x 16, rawbits, greymapPNG image data, 16 x 16, 8-bit colormap, non-interlacedNetpbm image data, size = 16 x 16, rawbits, pixmapSun raster image data, 16 x 16, 32-bit, RGB, no colormapSGI image data, RLE, 3-D, 16 x 16, 4 channelsTIFF image data, little-endian, direntries=17, height=16, bps=1242, compression=none, PhotometricIntepretation=RGB, name=python.tiff, orientation=upper-left, width=16emptyPython script, UTF-8 Unicode text executabletar archiveHTML document, ISO-8859 textPython script, ASCII text executable, with very long linesPython script, ISO-8859 text executableHTML document, ASCII text, with very long linesPOSIX tar archiveUTF-8 Unicode text, with very long lines, with CRLF line terminatorsexported SGML document, ASCII textXML 1.0 document, ISO-8859 textgzip ERROR: Stdin has more than one entry--rest ignored (Zip archive data, at least v1.0 to extract Zip archive data, at least v1.0 to extract)  !"#$&'(*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeghijklnoprstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~RPRPRPRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRK 0vf'O[]utf-8f3aca64c794b15ae9e4d7c548811d59f6aa35a2e349ff3110fa332e8054205b7? 7zXZ !t/~_]"k%Ia ]i$늈}hKO{ow @Yn2U;n ]Sf]_S\G +=ި[fX`y"8Y1I.9smI 0lٗ#aC7ahfG t{yvmάO?jh"xc!ë#q:'p(TP1㆖!]ܖD[PYBd_t~8f!1ﴃYMr':\Bt).wvQ G) $y"tO r Yr 2ȴ%Z_2kD$WOx|!F 7B|;ζcUh#RcKfHy>&˞̠wgBHݳEoEUR=:A}+]}dH.XΈ7xo&e/ɋu#:Kmk:5#,RGK籃! jí=H@bʮ(2FքȦSW)ƞrp@J LɈ`ᑣQ ~K*>Khoomi9򰋅i[z8 "&eA_quҗL.uJu(+ G_A"jƬΠ ʼǎ*Vy~}͗6p9oȚG|2Dbu]NjvxEo% TW >/m1hp($^.S#UYg-S9nRU#q[cOy# ㆥ ,eI~&D7;?* g;C!{|zQ(#. j5"t1Gkm8g[KSv TQ1ɭ/Dnp3ڳoeT$Wy>ѿ惢EoR,@ɵUxA9|cW$KU20=a#b5Y*\g.7(>t' a'MA07y&BLGR{Ӭ爬-]Ivp -lؘKtvscZ?\z#z,ٺ `k1b`12c`'?nS6\As?7Q62EJ`c4/zP_A+wZEW[PZL :FHƽ^Y,+6>4XU83<ܱ<1,׭NA$ǒ]a mIJ]Uj f?i-S& _u^o:Qvď+R[:R;1\'EP sg\v17]X@irOGW>+sӑY q5"g-B]+1 xjDK8OyDH}ИpaslTg3AҰU=w΢8JٜTիpsYERܫ6: 4\ IЃ1@1A*ve]٦.Xhh j<>JJ!.S;IqObɊ :WS:1N] b%Ou.).Nt'ɥgJϳ߰㕣+&᧑K$'-=gQd0&tBf_N'fR,BHc{@wl5XKQf=*-5ƼG%y ʹ6"LR|lwUAeiQp… l"M>0|=_(=PB1ƗVcStwؾ*_sZeQx\ {~?$"qRq!d-噡Y+IIS(ϫ 5Z^΅ǜ3PO" Og]6|)?nl0M6svҵHt3i[Ձ^(E >],?&f?!`OGMWd~8 ?CsqZmxg VR`g6wZ6MnRE~ZC2vO!>w5u=?vƏزb S/&tĨ*sZ/{T&9pq &PM>;)[Al|N`)xlܑvnA˹Kz]Ij~D1Kz' 6xD];v6cvsAYaUlF{{(`d-$aJ]ED+P9d`.Wdm;?z(#`g%LXuOP܂PF\r:sdY4+/p eL@>( W0 I5u#bS\]eR֪O˕Z۞wH$'b2V8${O],'YĻ Gq=$@w eaЃu73 t(P'ɱ'\4 Z>'>L3d6t2j &X;&$FY̦][倦z0?w$'*4!uk!{vr;S1̴v#bߦ8g[pؓ +@Ѫٖ:ت#%) $7Um=M doosOIC5YI`^n?٤2B +]+M٠l "qRVar=H}~k> ok`#T)a-p[Rzhz-^/=*E 9ڬdw/t9ԓk=\$u1ƹԝISS)6Ċ)'X~Z'_RH r9[$p JH=]iNʪK<,jdjF|wQMQ-۪D_lW^"mrvm'sf5v8ۊ `#=uԁM4`4=ªÏ%Rqźź|'/XP{ 1ѓ}m% P觏Mt}c$Ӧ(e`ctzVFrzf9 qU<'fshOiL ucI+:^b =,܁{,27#PW|JWXL)9>*Yy=_pC&Z:3k_XP_:WXHad1l[RgKA,X4gKN1 3klح++h큶&fܕJ8W#u9KƝҔehelءizaxP>0TDy<<"`Ul(s886]ezJ b>}  bNP5?PgA}:>RmhkޟIuZ_Jx+0e/:|tEh舓`ϸ\ko"^7}ץ4.etF Aw6Il?ϧ5o LKG)4kv?]*]_tuYsbw#`uةGLZ%@ _%ஆl u )G=܈#AE[zk]d,O `dmB]]kM&3M\|b_=őT=$BG'ST7sD,"CNOD?F/t(AfE($qn]ZLrL7hOȍj'@_1T.3n[-,E0o<}mvtGədpO}NU+yW(kpPv6o2'w NJ8+z aE+tʛ( !#g׮}PcEIK2Ow8i`cp%{O/ Yp}{hO)hSH1馌OFfȾq2)y.S\sQ@Q4PHt=jF*mEbXa2B#ԁM%$X-#}mrhsc!sj߁gJC*:˜W}փ~ݭnY2(_}- =I/$];Au|ܔZ\k?)$A)V `yeu˘VBjȱ Y5\rAۊK 89ܔjf!pd`ODۡ a:帱 E}Z(uXO&Qv~s ){oeqq%ύ#,EE&8<X]S/oW60 bM3 KG؛PdfC u!ZSk\ :>ls6UO d$d& J^̸8a˚ߑik\\c=r4z_UHjHv 9Wt%u"&}7)ʂ/ J b\/s a02}`nYZubVf|쾒":dsK}b_TN\y)"j's,76[ަx܈ߌ",pƖPJcmLJr$u_%R-tfoPlLZM$>:Ϛhl3\Η@kr}k9Jc%cyIeOgt/QY z^:`6"{PgfPGnWW\6S P6ڷdcyHaj#BJU ہ;m:uUAMҘrb}=&<ߗW"3êP? ?;_uybX\ZIM+_aon̉Cy7{%C=\j"EzJ@Fo}4sxB"܇ 0xu)en;CH f!Cӯ{v I}K*z\dKǣDyY?;ܳl&G2C_lZ $f)TkĴN` LE9} :0 F!?`C1 EĊ$B\TͱEB LnlX1,h ̙NɚZ Ie}ZE"p̞LpzBqxfkS|oԣ\ 衙eLӦY\6Aễ{H1йJ׹[NVW:P/n_Hy w{-(T_6QJutF~f_H|㟇r!s#H[/Ҭf.I*lQciGv,"'Gd@)ԛsC+SFE[VT&"h"+w@d^]OƆTVayu{/vozF„M,@z>O\d[L!n4?C@4T/)*ٲ{ }R}Z9l̾5vȻ}9ؐ"`Qj :5e Q8z߸563m3Q:\=tɗ N~UsPe XL߄lJO[j5.wOHrc~0[H1Cwl$(VX0W/Blw=#+oi7g ?a/NDCśk!%;⨷:#>dzmQNjH tU w˖=[e.! z`]4EkmNyZPܝx۞Su=?F\,ċqUslR4[ CK-Wwx>%SoVLb=TLc#s^ W/BY(tL=o0j1nB>ni+2:=P0w*P|Vx%_9CM^z0P5,'Ʋ*\{`_ٝO&._6,"e-󲓢+Ğc9;n04:A/Q>mJKu o@(c c`LܲCxDuJ|h: %8ts%iKVȆK +A3q@rMN[tmvzt\ulDojO>z(+GGD\p"UP@!$B._8>!D+%i8''tuX1#/ȚWҁ:JNB\A"aq}}Z! U#f5h)-aH%`,[:2jC% Y@*X&k!j[# tږڌ٨^.aҞ3.S|UjbȆ/$ɒ/j~~nēQ3yL=uEZ?)փ;.j pI̅?ML8 t{A=:\x]iGy@#ϟ%q+j߄[zf@ȦlOԦt辋xBuhS-:-;_S)IjEKա򿓥㽇cݶ*`'PaI:C&S+5"u^PbS3Gi-[3 CvB0:6Bq}F ީȁS3{i 7@V]>%oI<7c R3:x7&9˶oGۆ)A(q{i={ZTj$M/ڇ#CmRՖcxjYDmV'eu_ f'V+ a-^83zn-+٦g"ֶ ;܍CXp~Zqܴvk7l#a^L1jͽ} OXX0"Jtm YfvKo=%F=7OsUToHegz*,9;\ .6 RZn 8♄$ *,Ayl߼xIu\d|, Ћa|V5XIu7%Ŋ/j=c"kSI'U*Y0}Tuz-V5NjIv]JfSP;?O!]"~(ќ z<"ͯlH )Y~wxZKF K\>C/lIؙ^"`C*fL+="N+GͣMkaG@wȅd8yL4ONGR,f >ȏc66Vu}G,mȝ'nйB~Ң]c\|6fv^NnʨvA*^4A/WR|Y2K"nN*cӥFJ'mC£sf9zDHw#+ʍ^H%9POj!v 3aelf-a8{,sk=mD)S=0X;bW]@iXFD_Emv5MCEce<ӆ٤]zqUY1xKΰj>ʱ#LܯL&;/KX+§ O܏ǥ9|ٗb!dDƃW bdT{ e*ݑ*)z8/)aIdP9Sb.6weN|[5I\už#Si /Ò{4.E͉0R >WAS$f %74T߄n=wϹ>zO!k48gd&տm0OlyGΰ?%t,E sŊw{S[|"cԮZhFB֨(2R_mH\`zVhPEf&ԞG RŤc8=~&뫒CM-X^(8-Hu qM,SsRg ک~ Lk' JxXPJ+Eܶ -^&VRG&jp\a9WnZfU'KTXgß%~0OXҨzr1S.Y*^ZR+2JKs]H z5"J #t{;o57e}˥>O'9]JV +&s XDDv6:LISLd2znq*fI8h6n;Y?ݹ.t;3d4yoX|HGbf@|s-M{c(k,Ռg!09d$,XMhhFB3͢8k$_2hѼD(-C\Uu*KADj@`y#rpr JHmrM회)U;&vYe[`i 5)=enqNj(4K6 qyGIUH[ r =Ҵ[+Bџ]8kѠ%kfB{1YYv|'|q y#1V@EʠBGmoL"y ^F)Pǯ;U uI=y1Ԕ+/[FA*i\wf1WK713msC>WP]:ts//{ҊcPfeYyDT-|Ccc"nIrG=rv46+Fe Q g900rf LO˓3Xg6]_0\a9ŇZHa@HOswD2\ Kx~ _s^:W|9Oe:SsUx@.]P;3Vv(wjv`2,[U].z?/w1 Kh&НQ(6˒(n2Jc;" pؾeF ߎle @ͦB+00yH`Otc yܠ/CM< q*␪ԹU@сc0lЎ)X;! V*0W&L K>"s-6QsϑY|`2ؑҋڸu+;YR_jJ K{oXZ͚km!I0O]dpCIq&Z# 1yg؜M0}átwQ, @ ؁ J/9:\LG2E ~Vp#B oX?m g{ըŒq1e֊Ebl/T"( Rˀ2L)Ė* c󯵔MtZ͖?m6Ny|n> } aeB-XigVRBM߁X>n,ztA ݉t=ARqerV_zֈl:Z;8p<>2 N&LDRrOePW}0d+ 7T`F}_x/2g.sQ=xF Q,KŬ2?V2qq^5\M'#[/Z|c{zOV/ry?o*w uR|ƅ/rl]&Oc0m{@$h _]p 85 I`T/'?Jqa,}5Q WFg/%杯Ϻ㧮*ڐ)%z~6hf <ET,ϴb9пJƻdb5dgYlӡ"p;04ϭ+{yD-gr&I j2o\ =&A:JV .ˢ]9+a!9p#!}|xT(490Z>+=I/V,C*_?E(zp'j2rSDg+QNlBZ1ao9e4#vl0c>NEw+5bk]fI ~N]/ed>p1 gwfΰCfEQ]w.z x'&t5{JR6(я*ps֯=QTp=c c\j^'RR!׫Pq$(V:h$o3Mlj}g[Sy6AQfU^ ҺOf$/%)'}^!]"T T&*#X9&޳Qwj# 3@ ۪:XCP/TF %O4K @4l،7e "LVck j_JzkML uR(wFȂLHSͼ/fK\s} ]5Lnet):M܍M4s_)QBr@2D7 <',~NEbe&J#+j@>tůQé~-Rf.XCMƟ O7oЯF!}{2Fw& xK ;}M!9RIXϟ3j苖{|v hw\ dq .Rշf\4+&|W `3wR4NӢ$v'L1ef݁G)6 {o^ '5BEһn`O\4c)}KW6@Nm@L̒4эw2ן&8 J'%r[S^2ub0X!y5'w>&lR}Wd hIR.}pR=bVn}Q(G.4op'/'tVf\Kef*{Y ߻&'1 ^+g*Vo-g(zY'-QveVÛ ڂ&}$xt]nR}X-URvzFAW@_9,Pڞ6?`cQю v$ɉ&11jG\U<ٮLn$[.ĉd8 5WJoXv+Uv{ZOH絃͙rIV)6_cRR>ͩ2v N-־郥ߦAw/umvV댡= 1Ietd3C}D cX( puy>M}8PFgå *O3Wd\N,g͐"T&WәENUՏ$wtKS₊j)Эx<jA&q}$ 6w EeӋF8JiĊf3h3lm>\ɔ>{Ո  5|:]־ K1<͘ŌA)`ӣUĊ b bO7*SuڈO0}`K=膊.~Q//NA!*c<./A™/b+ME~e-㏡sR3LkJ-e~7 5%HN5ZF' KymJ` g*_h0&r<OtI7'x 〠}XGN<.xq!qPq5B?m?XyL%K6w35r;^9ͼ0(X5-S]-Fx- ;Slp Jc˚qpF 9M}}MO⊛k<9nDv`[\.T3ɌfzǮ )UPѲf}JrtbCm+WӔ)w?O&Pg:u5V!m^6tyD7}ET҈HAԬm(8jS"Tk@ī*# {0:wII` W-vk̥@ URpvmM9lw`@\^jJdh|؟2/ڳ.}Dl=WEBhmUuԹDEKMu&ŴF^|J'NgvuN+xZv^C;xyW45#XoO9aK-A.SB_PtGBkr9m> Oni4wdI"V o ,&+`M'oz:i~C{zvpaof,Z[! .LC k %|}T31&1h:'R3Y~. OwdKj:=l$JqފIOˊ_zih"1?.+а$()P̯/"M݊l h[cR$uRJpU qDIRk3KP`BHH).4~܌βAƑ1C'6D @P0()^YK(K3liw%R6 UZmMYg/W4D6|'H󄔣06zoDsrnME;b.TA=_qF|ƁG+ANSE x41n(zƗ|y^}Dٔb6G%葰/-{VtP9a8@+9}^d(/)Ȫ SydRJBg!*/A6QD$\X 00e]Eda.,RNf7s; @`X}Vu"5\ܕޑ]g?wҎ͔OJ.^|+&e{6|x92{i_ihu8l^r B 8T+6ٽ CYa~C{Bxp3<F H6=`|}!o /rڍniLňHuJuF럩>.sɓaTg^rVB#0JUL;=[ ye&lY"Ն&:6s<#$ ϶{FUBxjnX_q8C62,ɞy;,eu&R6̘4׬bP Lo:K%lwb;<sV;N z۽cwK,JL4Y-El76\B"M+NaSU)oalQg+'LW$~q6sX n  ;ϋ{Ġ1ƹ6^ufa&ԟZ7)K5 Ժ;x(Q3/V:"EjS4ASNQl1ŏe_W1i0nCRRBtL r4HQ㵘w{P&*OXQ]?{2? 6;-as u"Z\Lϖr NJX=Awzwy!E^S:{E/"8;x1>) γSbf1/A2c(bP|"]ZF[r5+~716o̦u܁$?N#6{ُnT d+lq> =jJԊ_pwՙ_%F.uؘ"(dL$}NF6OϙZgla? "/d^X|ϚKIyom'Ah}F nϚ>Fe.<>ο"EJW,pH˔/s\hK?5̞ Cd0'hߞ)ueUNNel3N =dbiBýM>Mhm',X6.S fDiWRHw𗘞X(US)SLjg]zKX}c%|JWHᗒ5:B{I]]I``P%ɪ 3;99` U6zc+t'l:Zd P* DT.B맣΋I7';.}:SژqK/uTJ_v37`mnwȪkԁco~0fqr`Oe_CO3+d/wgHVḀ'l!۝WN+ɑ8ԮT\ _2^exjk>eyD|N;h1]f˓ߧڋK"==+Bs$YoJ& @fvʾvK4. 02\j=鉎2dǂ Ьnp :gG9{ =Ilalݚ:VSsc '{R?ꤼRVu(":"&hq瓧'w_Ȫ.5<<ڼÝQZV*#2!i*|XiCJ WL}Ɍw BH(ʜvGr!Tt 6wQ测wH(a6?Hj9G 4Z oA%Xqʤ^E; %ף* (|풄 ~7 dN[znūH H^T &,DH0`ܧmk0L&AM}k21«T>a+H#q]gnIE"ZO UZ6ng k}PResǎ,:]t9[co$XTWipb(U6u|XWZJ,|5Vk'S})Z:{J816t6Nr] VWH:<錆jO{ǯ ޭWM$GWMPӒ 6{H PxC-;/2CDVZ?zU<_У ӉmX9ԸE݉_m¸Q5x~# ?4Y#t&:2#r7CgyUb̢z;M10Èa>k]78Pe7 ]"}?C.إ9 T$Udd^- HUq#i;B_+\d2g6%}28b^D6T^M3'Kٯn ;3yߍq t x{.^/Y(v7(e$.t?_昆}<Q.fȅےY/#MJz**;l1bn1vFgˠ)8s0FA-ēn AGU3AڐvbI%Trwo.gYU8V#qO!oj0 &7Br7S?.B|e:|iҏ75Wa`sVPLϋnZ:?&V1ђ'd)*/ HgSWHIHiqyaE&#:~ULYN^h/&_" J I c'tbruqZL p$O-,)`dջ- BUj?u#BW~ 3M^6:gW7n^ uBLj-5$lI?"F5"Lkp#x?f.ui6TOyk.f@/[u3Zr*qYOٽ31ԇ4!g ~(ﴵee璛n cYՊm? ^ 2p֢.ROI̘@!/%'1,(]haNFzş# Z/a6K07rj)Cp3Pة,fOޠq(/njUf6*ݫ$sLN :3WXXn뇉0^2Arj*m%(3m0]jX\V".pݢY)+>0 (캛` QUĿm{B oٽ p\^)q?S;S ٣#~`- `2B?RŒ4P+0vMbg.B*ҭ@Dc0D;g:-i_=u>ZPK:>Rz͞2LzMRnY7&7FUV\'W7!nĻ̌@jK~^Wm*#8Xnp_֞r_.Z=XJԆAl c77!hr wRl UD~q.SieB_=;"A&B5QQ"ow\M+,.Nf?Ћ!(2ɉ qK^*c $9GHx'+}G6' ;c7힬H.V)?݊GGb^.(8zWE..Iը=Ss6hصyu~%Zـދ ّS{ƈQCq̽GyjC~ # EH*U_8&Qvr 4,3ju\G IcރNB.O?Yxs,N6 YZ