python-base-2.7.18-150000.111.1<>,݄ip9|h1{nbB6]&A f"wNS2\@pLdOl wF_D*`ѽ8U{Hń`X x7{[^w~\+ r6#?I\m.̖1b%:\CNtϙ¾`??w&E6R"T@hN-v4Nx1# wD ^XH]J 6y0c2Hqŀݾ)-Z"ԭA9Eoְ9˹Ԙ~\5p- T.ۤjkhSi>k8IY>As ?rd " B 'D\bl% 7v I$ l  3$f$GHd!H!L,!(L8L9N:WBHFfGȀHI8XY0Z[\];^/bcgdefluv`Ywx'4yJ zrrrrrCpython-base2.7.18150000.111.1Python Interpreter base packagePython is an interpreted, object-oriented programming language, and is often compared to Tcl, Perl, Scheme, or Java. You can find an overview of Python in the documentation and tutorials included in the python-doc (HTML) or python-doc-pdf (PDF) packages. This package contains all of stand-alone Python files, minus binary modules that would pull in extra dependencies.ih02-armsrv1SUSE Linux Enterprise 15SUSE LLC Python-2.0https://www.suse.com/Development/Languages/Pythonhttps://www.python.org/linuxaarch64N hHj ZU-U-p3!+ + lbb}b}lY^I^I*''fG761R!$$=JJdYOYO]^^),,%%<%::::mF@}}HdRdRJ--P;D;DA]N3N3\%%vv< g \o.22-="j"jQII!!.,!,!TJJ9j/AD44D<O~O~  (<<$ TK AShh 44y""'j7{7{ @ *I&A&A&2b2b jRR**MM  Z ZD * * f1::UU&& ?FFqff> $/))'!--!'$7  6 6G F FK T T/DD5oo v v uB\\$$ m 2 s s99cc) !!CCb{{Af((cTT' :]KFAA611Lwwy]].R9DDt:))P~KNKN?,,}}(vv 3J11sGNGN  . . B  p p.?''H}A8A8X& #;ppEG&a&a l lÁ.++ *F..^^1** ySS\UDuDu!D33),'{'O8jj<##+5((  MMssUUwN==cc   ^p__WW u /@@ \bb  G G=ABAB'^""!   0    F (("!!DG992 8 8$!P!P q  PP Z o o A .0$+$+5mG<8282,((FE#ZZB  ( 8 8? 6E6E>44P ++,8))X7 6 > >xpp00 { ] ]\\%xx *`""m n. krtSJxf3B|GB,0 9#0'jUU  B B  r rt U6/V/VB:"B"B C $ 4A + +6 49 9 941 + +6v P P51 M M5 P P4& ] ]5 R R1 e e3 O O5> W W54 U U0 I I4A + +5~ y 9: c c1 i ityIZ    :\ 23 36 ( (**** &Q.. %//%//1GG%//-??4x R R6 a a1/ 4 d d6T v v4 a a5 c c5\ R R4! Y Y5@ R R3 S S+Q  3, Z Z, y y4d R R6 h h6 Z Z  sll8 6A 5 S K""X  6(bb%t%%588 :?JJ|__WvLL{{ YvFF *  JT;;Gw88 n _  F2EOUOUJ*S|S|b /d=%/$Y{|}[Kkyv M ) ) & &__K::I-JyJyCJJ.r8S8SRb%b% ""eZe& =X++~ 93$3#ofzz R$H9H9:.._JJe,}!!9v847T" C87!k^X@V<%%"0,,~~L!!g)+)*''8V jjb^^SR4R4Fw11 s(O66b҆3e6dYdY#k%n$\$\OJJQQ\ 2P]P] \0@@=dLL@ #A#244C7-8-8.''!X@H?QhXaaff4L%%viiI Nkk4~dhdh4o4e4e  N\\|E|EgCC+I"c"cJjAAE > }v`v`U]J;IMo10t33wRR2 llT,OO011488ORX~~CFGGw  . -Y_EAEA,G 7 7e--iZrZrL[OxOxC/A. x1// F " " jDK88qtYX,--o%%.  4,p+#{<< k &Q)*)*2 tt.4z4z%''7EEœœ((JpSS!7-7-@Lqqp%%/2<<D)%VKDD[%&&ZZZ%941INM9@9@9ZON 3J>n?~<mn[[ii9AA&&1hh˨JNN10 A큤AA큤A큤큤큤큤큤A큤A큤A큤A큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤A큤A큤A큤A큤A큤A큤큤A큤A큤A큤A큤큤A큤A큤A큤A큤큤A큤큤A큤A큤큤A큤큤큤큤A큤큤A큤큤큤큤큤큤큤A큤A큤큤큤A큤A큤iiiiiiiiiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiiiq@iiiq@iiiq@iiiiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiiiiiiiiiiiiiiiiiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiq@iiiiiiiiib6e75f63e060df544a70c81090b735c6b75ff54c0909bc0b73795a5df123e5239d943bf866647c63e37e080d8eb8edcb4548f0bb52418e632270fa14dc49d005c1efcaed655b6eac5170eeb516f60fcec5c843ab802661d4be93d9f0501a18bb76f5242ab6624845884a3b6d3eb3aed2516a86d784b0608d59b783affefd35ee51ecdc20d7797f6ea6cf594e9f8c19fb693946dcf2dba4790858a3efc0376496ceaaf7cd14b4c562afda623435604a43480088cf253cccd88dcef446bb397052e7ab750b588be6ea3dc3d5538bcd15478ffa4d75f742cb57d82b375d699ed670e7ab750b588be6ea3dc3d5538bcd15478ffa4d75f742cb57d82b375d699ed67073b2e79138e2b07c07d6cb0fa2ff907693d7b46dd72012b74c573e54ea8b1219698afc75c4d5d8d490661d40dacc10b8ab11476ce6dc316a6cb4b158088aafab698afc75c4d5d8d490661d40dacc10b8ab11476ce6dc316a6cb4b158088aafab793c7c54a6abf5c70204ac44572e3007caa2ce1505cc3268d6edce47a68b2db985c5b1bd21696268ee8384f778b04a02b611e4921e251faa78db86e8326fdff385c5b1bd21696268ee8384f778b04a02b611e4921e251faa78db86e8326fdff36c61509f657410accda466d60982bdcd117ca42ae296f816da7ba920c4fb2c75b57b661d1a4715062469acea5c4b432e9ab39a4c8b273744c4dabf58b0917bcdb57b661d1a4715062469acea5c4b432e9ab39a4c8b273744c4dabf58b0917bcd575d3691ef6380d32a412415d019d04f2781160926e84cffc841d2c30cb4a6e9c704035e78fc253ae5db65d8673d1f86369ed5a05c3c664508f5e4cc0e7555d6c704035e78fc253ae5db65d8673d1f86369ed5a05c3c664508f5e4cc0e7555d697174e25e547c68771b8ba39288a86d9bf8049a8abc132a29b689d91a32e517a909a2091d25e2abaf973454cf45a79633476e5fe23297e71f6972fd05588385fbdc6c1283ec9da4759ec288340e6d904c385aafee9817480b9b7f74a701fb34049eb6b913252d0573f6036778d02d4ed5d82cc5bd034223db0174bcf46953a370e4be90cebe51a9e60c20924eec494e00814e4966a4958054a011a0b08d511fb1efa68b5ba0a2ed1a56a31822de0776853950f3cf4ed61c100a96dce15720b2ede4d1f2d2ad5ad0cfd1657a106476b31cb5db5ef9d1ff842b237c0c81f0c8a236098e6af67cb75af8032b3806179bbdf2660fef02b04f0c128531e99039980de07cb268b96fa16fc232416e8745aebf47c14e41db3bb596bda2cd4ea3d446c0a07cb268b96fa16fc232416e8745aebf47c14e41db3bb596bda2cd4ea3d446c0a5121f740b7c1fba2bf6d85b132b0bbe075af3ea049ab5c556cceabbb2255e83d7adb1c72931202b30f1240488351bf4fe32469f86ed4ebc048359e7bb76eee7f7adb1c72931202b30f1240488351bf4fe32469f86ed4ebc048359e7bb76eee7fcf914f3c5b61a1d816c3eb60bd8be3f85e3be2d5d3331886bd2f7cc02ec18e98106390f68baafc23ca25ccfac2d806681b6e72b370f1b328665266fa94b5242e106390f68baafc23ca25ccfac2d806681b6e72b370f1b328665266fa94b5242edee67e3f49846eea34adb8e1506ae604c9793021f98e443920632595bbb021a63a37c0d9648e8a57af6f7886bf753b36d87460269f7b071c9258aa816138f4cf3a37c0d9648e8a57af6f7886bf753b36d87460269f7b071c9258aa816138f4cfc3afa02532db1d714279f401960317ca502f5ce4501fc48181948708aa992aed8027d133a47ed436d38211cd3fe2f8fd09be8b2e32921fbc47c20a8d77abbe968027d133a47ed436d38211cd3fe2f8fd09be8b2e32921fbc47c20a8d77abbe963651caafb4e466212909dd8fdd6e2973c093014d482e56f7ac3acd3b5f6c1bf823cf653ec14cc20d01b5ad91f1e61a67f52515f70c696bde7c5c33af1bcb4d5523cf653ec14cc20d01b5ad91f1e61a67f52515f70c696bde7c5c33af1bcb4d553b2e4bcd7b923f1004314bdd5a72cc3dd02e77a458a88fb0069d315246c5c13b19028e17d921921d72bb11b694afef0eb97c63575a451ef992383a5624d9eea019028e17d921921d72bb11b694afef0eb97c63575a451ef992383a5624d9eea041d85a8b8439fece96803e6a082641b2590a3b5c47ac1df4fb285265276a84e7d96a4b1d7b71792d34ed5eda9d2cf11ce68edac2dc0558cabd6eb152426798bed96a4b1d7b71792d34ed5eda9d2cf11ce68edac2dc0558cabd6eb152426798be4dfd512e93ac96bc9c8976c26a15eecdc40eadae590ac7833f865ca742950537cfaa06cd04dc8b75e16886e190deab390eff690be4a9a8e3c41947667221ebdccfaa06cd04dc8b75e16886e190deab390eff690be4a9a8e3c41947667221ebdceeb6ee2a223d403531b6572484183396b5c2f1e2a95e8dafeceafe74f774bfd1c21de988204a51030abcadf3e57f1b132da58ce0985bd77f399b3cfffc871fc6c21de988204a51030abcadf3e57f1b132da58ce0985bd77f399b3cfffc871fc62847785e7071572664c9f841b6e9a4d6109d5ff066762dbe6c61ff3dc468368c0b5fa8bb42031df7777dd2e268f7cc71afd056685a3fae1bfce66df366ee87067b12bbdfbadaa53a0d376f69605083793fdd4e7dc15f7ab73ac5dbbd1475032e1cdf9043119985c026885bfcdc71b2a36929c537090b2fa94ce4708a503d01b2997deb9084e00def173e64fd380b9f3fa7c54f8d0e82d28419cd7a56f2daee5c997deb9084e00def173e64fd380b9f3fa7c54f8d0e82d28419cd7a56f2daee5c586d9bf9b42fadd32feb1fba80613bcbfb4180dbcd6f03af678b5a6deb9d6a7bb59d8a274a71478cce34273fc7b20172c90777f3ed0dba75351f683149f920f5b59d8a274a71478cce34273fc7b20172c90777f3ed0dba75351f683149f920f552651836f992339ce7b422e9cec1272be8760c6aa0fd4cd4ef0a6da7c0839fda22f0232dc9026f2e463c4156d512c5a3a92ec77c1b378c79b59feb8d4c638a8022f0232dc9026f2e463c4156d512c5a3a92ec77c1b378c79b59feb8d4c638a805cb7d081febcac9ef53f603ccac552650fa67a38c1608469b71b0f4327954667bc0e5b1370f7f51982392fb76e4ebaab9be5a1e015eb3de59050ae20856c0849bc0e5b1370f7f51982392fb76e4ebaab9be5a1e015eb3de59050ae20856c08494ff4b20322c6c217df905dbe7f25ce2478b24f93afde9d4f33dfdeec311e1bb8be1a791a960b4af82db9a628a59be7fda8f15232230ad889a1f3273ebdf7ae96be1a791a960b4af82db9a628a59be7fda8f15232230ad889a1f3273ebdf7ae96e990ff081444aa9482baeae0d106003d9be1e702fd2fa7aef60161665bc98e61914ad17b95a4fb9c6ba86c16da66e77d18c337e31854d387ef8f51abd7930be1914ad17b95a4fb9c6ba86c16da66e77d18c337e31854d387ef8f51abd7930be128a2e852df296f630de769fad9903ee4a5ec0322a2f8c1c2c459e31bb86f436e411911980ceaaf59a07821ef7f4f250d62a808ce126ba37379925935bed09797411911980ceaaf59a07821ef7f4f250d62a808ce126ba37379925935bed097979cdfe79ce0ee722e5a24a8d9c75f0020556baeab33dd44e5a5ec17f45a2f70565892cf71c84de50b8a5354af00c2844956254028151d47c2b31bd8f4f183e6af5892cf71c84de50b8a5354af00c2844956254028151d47c2b31bd8f4f183e6af8829970dfa784824940d2bdb1ceaaa4fad4a1902803a7ad78128e30d1125bba95f8081386a8cac2276432a450d38fbb1f3988263ed2c7a2a89fd2036b7d44f5f5f8081386a8cac2276432a450d38fbb1f3988263ed2c7a2a89fd2036b7d44f5f625ee550a5d3d9fdb4250a9aa7f85901f0a3a38051b5b0d01925fbe58ffe62503f8f6096b92bb3e7681633452618f96846a98847eea44dbb3aea7104570838a0c01ce0ef24d4af85082bce04073e3b92fe6c588bf04c064dc9e6b299e6e3b8fd130c7c4daeed799979a19b96ffe152f853215d53a7f14bfcf794f4758fd1aa3692a0edc2bb72820c69f6a3daf9f5a4406f5fb484b981cbb15b43a24f2a557fa192a0edc2bb72820c69f6a3daf9f5a4406f5fb484b981cbb15b43a24f2a557fa1cf07bf61b37c47624e714e6644beca14a4227052fa7c33a30b61eae627939e398d5e2f467a60b83b79d7469c7ab09df7e7fb155e7a59ee7e00bea67fafa0bbf58d5e2f467a60b83b79d7469c7ab09df7e7fb155e7a59ee7e00bea67fafa0bbf56caad91cd1133078d1eff9bb1b04316ff4d657cb2b7d5676ecc9980f129824f6b6cc33f824d3ab3eb4349bee2a7266114520dd9dd736a80fe17153d08f3e1e3db6cc33f824d3ab3eb4349bee2a7266114520dd9dd736a80fe17153d08f3e1e3d0eb76f4345caae667757841dd82fe73bb686b1d1d528b7739890c24762a29a1a9c386d3eb6a02e9e5dfcfa3abc5cb5a1b7837e4af64c779e1154d8b6111cc2b5df3b324414d37b99ae8b2e3ec1ab9aaee1a6f0798a2ba4edb0c6454958faad11724b370737c840ea3618bddb22c40377fcc3aef1a1598c0c4c0e3a5ad18f0025d69ab42a9d14399455a0af0cce847be422a5d03e94e281eeb710123ec35ca307d69ab42a9d14399455a0af0cce847be422a5d03e94e281eeb710123ec35ca307f8a9f085ba131f5aa9bd91014efa2b876566bbf0dfe5cdb7f8870c8b95934665662f65a5df3487daecf816e68645409d3ec0855745d4300220a70007b9c35e9c662f65a5df3487daecf816e68645409d3ec0855745d4300220a70007b9c35e9ccad25bf532f91a6aaa59e784766d37c1d30bc13d868a95d3d70b69330cbc2f68fa7d980ece5413e532a8fdfeb304d3465cca12cbd49b89ac27215d152d3f681cfa7d980ece5413e532a8fdfeb304d3465cca12cbd49b89ac27215d152d3f681cac476aaa925a24a3ff364ee7eb2575d0893a455a9a6ffd13b27ec9c55b9f4e244761e738d0ca00492f899f5938fec5a9540fd1ac0ffcd0101497fa68372435354761e738d0ca00492f899f5938fec5a9540fd1ac0ffcd0101497fa68372435354eb7c82b62d4bd03d0ea3d5231738c0a73cbb07f012d43c7495aaa6962de86e857d4edbb67ce539d573ade0caab7a1b77a1261433d7d4f86bcdc5c16dac3314f57d4edbb67ce539d573ade0caab7a1b77a1261433d7d4f86bcdc5c16dac3314ff9c237938e21eed2f2e0b8a66ebbfbd3014850f9ebf0337e5a9f65f9dd2224625d384727c5dd05175a2bbd878527a6705941295af0d0f77e8d4f621439ed09c05d384727c5dd05175a2bbd878527a6705941295af0d0f77e8d4f621439ed09c0858ea7563b091f74080b5633c061ef857e0c2472fba7121b69018fbf7c1f7255e84374218d7d1d24c6db75031baf58d84edb9ab69cdd9e26208117a4cdeb8b9ae84374218d7d1d24c6db75031baf58d84edb9ab69cdd9e26208117a4cdeb8b9a53f3122499ab1ca33047e696ae9b328e5fc5aacc0dc37aa127a19071a66178a477af2b8fe3ade69dd566237ea326d9073fab91bb5d8007231d99acae41abab2377af2b8fe3ade69dd566237ea326d9073fab91bb5d8007231d99acae41abab23c743dca30b4809474e1c5e5774922c25bdebfca0fdd3e9888964dfb6fcf5f2ad391f9cf98faf9509c14f91494313a028fa28365608bff0ca57ee4759110dd5ef391f9cf98faf9509c14f91494313a028fa28365608bff0ca57ee4759110dd5ef6e621b45ba889a6005aabdda92da3b1a724f119ea2115e431a29cbd3f0f565ddbdd524d07d5bf323eeb7fa99286a4859267b94f00fef6bcad8bbaa282088b4a9bdd524d07d5bf323eeb7fa99286a4859267b94f00fef6bcad8bbaa282088b4a978516ea2085c0523ed5803fa4517712c088bf8552d1b2c8b11230854c789378a9b23c569e9676636e246df1999c8ec8f98866d4daa3c7e0461bf6a9adc1846b69b23c569e9676636e246df1999c8ec8f98866d4daa3c7e0461bf6a9adc1846b60b43955a56c1c13ecb946371b2b49b45074613c79519e4714442498c97d5acff0a98d3e44499ee251c675ae86d5e5e2ce8be1cb1a61616d172be285b3ec93d290a98d3e44499ee251c675ae86d5e5e2ce8be1cb1a61616d172be285b3ec93d29cb8f59afba9579ea69e0332b3c4332c347497318a890729ab1afe67af7c4025a299672ca9f1911417b4935fee1335dd4d6ec26e4fff9c760423d74e328ae7d78299672ca9f1911417b4935fee1335dd4d6ec26e4fff9c760423d74e328ae7d788d575087b9ddf52ce06f68d772503595663607fb4f3c93dedcf90efc8fd3dd6dd3b5d87346f5bf9b09834e3a41fa4ee8f0287b33336406cd839b1bc9de62db80d3b5d87346f5bf9b09834e3a41fa4ee8f0287b33336406cd839b1bc9de62db80c9ee763519aebe2735dd13185b51a75268f10b36b4dae0983f3a761b21d7ee33ae2c483cc2519518497ee90d00b0bfd69ea9b26aab55571812ceffecb5692c5aae2c483cc2519518497ee90d00b0bfd69ea9b26aab55571812ceffecb5692c5a6aa873adc1b0375f560a119720024aff47cddfc7be6289ad40a2d6d6da55c0a7d927a18eeddbefa73c67d987d3286cd40f92d7e8e11d8453e052922090a45c72d927a18eeddbefa73c67d987d3286cd40f92d7e8e11d8453e052922090a45c72d1117756af053b3a1080525a53b6031f61b4161eaa24d85d032f3b5dda49bfbfa6019361ca0b23fe33511c2967c069803a482df91a6eec0e5bbcc4da661f725ba6019361ca0b23fe33511c2967c069803a482df91a6eec0e5bbcc4da661f725b94c8cdab2bccf2fd1bc1ed725d1ffc75cae86f4bc621dba1a5534639999fd9f3bbe48c83a625b02e3aa064089f29fdf01772af8f5e3fd5c21631d89c1e278abbbbe48c83a625b02e3aa064089f29fdf01772af8f5e3fd5c21631d89c1e278abb735a95e3b509db8cd8481e70fc5c832fc970bfb3d9cac3e53112f70f4e06a4c62c129fe52b245d74bfcc6662ba02b958bfec2e67203c6241e9b072e94b46656b8e4dfeff2b2a9c7b95a24b12239ba7ce6e64f32ea7739948c940c12a77e1fccb611d0435e7ab14854ccc3bf73ae8f61553c3d9b424a8efb33860cf76e1d4a00d88f65ef4b5d9cb939d167ec41999b0d8dd571d9b900790e2d30e54ad515c7c8488f65ef4b5d9cb939d167ec41999b0d8dd571d9b900790e2d30e54ad515c7c84163a99c59d251e2b3cf55157955bf6daf2f92224e08900fbae0978bb79b603758a3b7ff0efa32e6166905da818f14ae49e8514d0ec23b4aa69d95a7cf0b4a6e58a3b7ff0efa32e6166905da818f14ae49e8514d0ec23b4aa69d95a7cf0b4a6e5f249021da0e91694d5442d908bd9a20486089d667c7013d271f05e0cfd0b7d95e0f3bc7824978417979bb00fede3532b4334851ae8866de991c9abe3b2646d4ae0f3bc7824978417979bb00fede3532b4334851ae8866de991c9abe3b2646d4a7ba93f8ac2bbb3f5b51922ec1f9652c636f70cde39c3a801edcc79d099a628791afb41a8b917a23c66a4b0c68caec43d3c70e63a6aacad4c36e6440f645c23151afb41a8b917a23c66a4b0c68caec43d3c70e63a6aacad4c36e6440f645c231587f0f6e73cd7b6f609e5b95e37cabd2b66ea7dae0627f4c05d8a634585ed1a68f5643609a397d09735cb54d78aeff471173e6301a5639d71ec474bc02fdedc18f5643609a397d09735cb54d78aeff471173e6301a5639d71ec474bc02fdedc18774917626a5bdcfc019fe686132c41a30683edb6da68d9759d25ef6463ac33c447660e169b90bcd8386794dd8bcd68d4dcdad00d9e3a1b22e851a6e0f6f5d18647660e169b90bcd8386794dd8bcd68d4dcdad00d9e3a1b22e851a6e0f6f5d1864ee311878152ac73e61230639f418fcf8db85ef7ba7d26338f6516561fc26080b8dc72038fb5c7b1a0ccd0b4344b7177a0df509cd2f2ae015516bd15f52bed6eb8dc72038fb5c7b1a0ccd0b4344b7177a0df509cd2f2ae015516bd15f52bed6e4674afb148f43d72e7b58372800a29486eaab2e73c5929a88ac8550c112cec93d89010c7dfef44f6b6710007f42aeb6acf38b488680ee1b46c03ad8fa7dfacced89010c7dfef44f6b6710007f42aeb6acf38b488680ee1b46c03ad8fa7dfacce7d9772d7dbea73caa677946d0ef47f54843c7b346a80bea532e3c9e945382ee8282caaa3c9f9b4c1017492a60a90b0e4d1d6fc5b2d93ef4f9c847567e0759f6d51328d73275d90912e1aeedbbeb57ee0550fc81ea1cfdac38cd317bfca27c312ea996f9b949558ab83954628d183ae55d1a4d0509147690634483069a6ccfbf6731983abde913b97e796bcdd4b8dc4ad6ab8c5a38c592119a92aa7ceaacdf40d627351a4b85cb66d0351df32e5c203edd7854647c6d23dcfbee771d914213a0ef6ae8a236973ade89b59356d553671e7de187af9174b5d9ab40ab587e852840b10177e82b7218750bb56301eb4aa9d60f76f6d3fef5ef877fedf3408a3de0a89224214929881383a60ac94be8c56908a837dd5a6ac4204679aef32679ea05510d6462cce87bd39a421ea0fc3c318bb35a4188d4913ba99a433b40e146aa861e26d083d5b6390c51a33310040c7f307367165c04c0a47200caf9a3a2ba4bb14306d083d5b6390c51a33310040c7f307367165c04c0a47200caf9a3a2ba4bb14307c9c0922f6684ee32dacf1caddfdd2fde6316698f0e76179b204734ffb15e757d5baa1a2183e547136e62f5e45276a95a61965a3480a75085c03374a13b5ce0d69f8c6a0216f5ed6727ac73e1a1cf025ffb74f5851b796761207d435c682f1b8b36e4b5270a83ef3f01948266541acb9ddad8983c3f992e576328805c1f9ea2aff4b02efbab626f34cd873ffaeb04098cf48315ce1a81a8c06f022922f9e6e3cff4b02efbab626f34cd873ffaeb04098cf48315ce1a81a8c06f022922f9e6e3c9611d7cb975caca0a5687cd7f1b45022f7050b64f10bbca01295cc14e750810ede136e66353ac52ec41281704dc291df0e93b7b2332c18b5337f185678f16be4433b64c54072879c5ab99ccfe3a4d37ce655dee9e1b311e883b618cee2cec935f403b9e129f56207a1998d29ebc7e0185b5d72531f0106aefa877e94b8e41772f403b9e129f56207a1998d29ebc7e0185b5d72531f0106aefa877e94b8e417727059e04f257fd494adff2c811d6c80a9376a118c934b254af908954a22e28a895d6733dc57b4977650fda01af22d2dbee46080ca25f6a55a5e78891fadf2d60d3ad83e859300871c88eb85e24756c14300fe252b976b5bf2fc4300d16b7468fe721cf015de568d090011579dff169746b18278950e044d8979adc6e048de715a7fa3b80c8591d7257a42ffcaa1915a1356b6257c770f97e37dbec377aed5ac81095981fcc114394c8ce0ef6f7e037abd06a459507268ce2b9d6216905181549e57995b050c660ec0e6fd58b4f93dea770a4f2e9f90ffbd622d26a534e108a19aa074dcc9dad31631ab4c867f813a1cf7763ea93ef701570239ba114202f0429b15761a88b0a7935bb337f97b8b09ff555647d409aa54d91cdc2a9da23ca9b884f08bc05549fe99d66d0a0d2e55be1cdf98b66121afade2942367fdeee21c3c3a4623fce3a8eb798c340856b68ab9ba91726b0d6a8ad3d13948eda6956b9a57e64623fce3a8eb798c340856b68ab9ba91726b0d6a8ad3d13948eda6956b9a57e61108a5cedabd761b635dd596bab5a6061e94491c8e800e9adb756eb780f9fcba73db283ed7709459bd57b7d149af85de75c51d9f5b8287e34ca853337bbab0c473db283ed7709459bd57b7d149af85de75c51d9f5b8287e34ca853337bbab0c40142d5e83f855cf0f7e9e7ae2c17c57a0f6eb9a68a5faf88185da6efdc80343a7f6bac6bbba2beb37567d8debf95e121f932ac894e4f9c7991f359ce913fb1407f6bac6bbba2beb37567d8debf95e121f932ac894e4f9c7991f359ce913fb140dc29d1da83b6a0a09a41647e4111eee878ed079c2d6b54a98fd6d8b88dd581f21e77c01eec8f167ed10b754f153c0c743c8e5196ae9c81dffc08f129ab56dbfd28c26bb0fee1865439650621531b88ec54b08574295c88435b37a67b08ee474828c26bb0fee1865439650621531b88ec54b08574295c88435b37a67b08ee47480989f3bebd397f21940c950eca6612042d1fda400b948d19a5c30db0ae5aa0ac2b166fd86fe8eaf065178e4ab4e4362fa99f6d04b82f228ea296e218cdf6f35f2b4ae8b6a42edd138a231bc9f4489f85919fea261e87d58a642f68cc76ba04f717de9f3d36c6ccbd97ed4ca15a908ad06663a84aa5d485714b202db7fe8e171a59c96090ae989d749335fa71abaa6e6856891451fbf1b291b16d7626853cb7be166a9c2e4cfdc2d86b84b538e95bad017be1a44aafe724928593879b6a2401cea9f6faacdb1aa00ac2f68043cd445171de9639a732b861bd5e64090a2865ab237497fbdbb98afca4ac455e3a057c59bcdebaf1280e25c94741dc301f05cb53e5bf15187b7ea40c0255f14095e1091c13953c2efd98d96b409debc67669defc5620d0b0a87c141dfbf72871772cd95427fa6437a321156443398e51e69c706de9bdc6adf6db13033b110461b54758b60fe1f6e0c67f11eea8502c0ad3cd0ec33861c79478717cf7a7c3a6619483890a08cf55cde5f4dc04729e8d75760a1b04d696d99c3d1931671476a4e7dcfba06bd3a2d2c7ff40c464a05d5c7a531edb807196d99c3d1931671476a4e7dcfba06bd3a2d2c7ff40c464a05d5c7a531edb807151cfc190f1745f6895ee3e5297d25ce01d2a6a3516e0633dfad9a8cada65499a07f0ea719b8b6416433e4d9916fe8945910eb009f353727c28c3866549f13dcd07f0ea719b8b6416433e4d9916fe8945910eb009f353727c28c3866549f13dcd178a899a7be090cda0df1bc1e80b1dcd5ef78246630f1358a1fbaaf10a2fe137fb59f731183f167e19414b7023ae39dec6453d32e81b81aa77fde4debb2ef093fb59f731183f167e19414b7023ae39dec6453d32e81b81aa77fde4debb2ef093b326d68cbb2d299cd4192a82beadbd23f44ff1b8ff745ab93a62a9b2e271043f26d90435f8fe6af52f8dabb0e47e4e89eb1a9e0e6c239f123adab7181465d60f26d90435f8fe6af52f8dabb0e47e4e89eb1a9e0e6c239f123adab7181465d60fb746a1c03613a27d1fb3a81d0daae34ed5e8ecbc29ba292a80de6a1968f63844446cc108242d3ad911cffc6505b1b5fc10ca3839a1455a4a03ac9ce38049cfe1446cc108242d3ad911cffc6505b1b5fc10ca3839a1455a4a03ac9ce38049cfe1962c38c356a389eca37121de7a957d5b8633a2c5f8208a941f11d7e167d8cfe8d3052249ccaa8ac17029200fc0d307b291022fda64d24c95abc3838e876693b7d3052249ccaa8ac17029200fc0d307b291022fda64d24c95abc3838e876693b7feff9e15ce16c160b1a9613a80b3bb6dab2a8ddc916be5f6af14c0868ebacce57436e634268418686237cd540ff33ae57d664a4b215a0e71cada2dcb63e6d4b37436e634268418686237cd540ff33ae57d664a4b215a0e71cada2dcb63e6d4b3ef524477b11b4a70122b54d9bfb729e8e527102c5b10e4189d6910710d1d4bc1d12522cb329766e5cd99e9d6edb8a399dcbe0c68fe1c5794ecb1e659ca0931c8d12522cb329766e5cd99e9d6edb8a399dcbe0c68fe1c5794ecb1e659ca0931c806a28693eaabcc08742f69100b1664172aefe4044ce38eedf500576de89c724b2cde1d34ed5035f5fa7506e80d0bd8b1226db3fdf9ff1493a5eca1ea07b5877f2cde1d34ed5035f5fa7506e80d0bd8b1226db3fdf9ff1493a5eca1ea07b5877f1bea50c90655bf9ac49b8736faf1fbf2fc4ed04b0e3f25a3cf82a20b3343c7134d3abe6ef8f817fc453b6045829badc0a4aad19da5526dbfd6037a9cd213c0c64d3abe6ef8f817fc453b6045829badc0a4aad19da5526dbfd6037a9cd213c0c630ea52c65d188782e41365a1faff15f325c75a3db567df8ffab821235f5efab12f42a72cf3c133871e4dda3cfb32b2bd75b700f8d839b57aa5228c63ff54c4f32f42a72cf3c133871e4dda3cfb32b2bd75b700f8d839b57aa5228c63ff54c4f38966db23bdde5bde4c05dbed7958ee6e740881aecb52932f93dccb54aff7eaab1dd903f40561b751312f66691e154d1a82434f54f0b91dd32301125e792995691dd903f40561b751312f66691e154d1a82434f54f0b91dd32301125e79299569a9d63858e3a481b3dabe85219aaea117a98eb0f8aa6271d16a5195cc071117ce9dd3c88d2337ed0df992ea936007ed18bd8ef2af618d596fdad2238dc7f9c36a9dd3c88d2337ed0df992ea936007ed18bd8ef2af618d596fdad2238dc7f9c36a90df922b1ebfa25185ccf01b3d22b82365986e4f45cae5499700e7ce54a4f695b6143fad0316202a1db696af9337c279730bf5309887a5402ef46304a4c29a94b6143fad0316202a1db696af9337c279730bf5309887a5402ef46304a4c29a9473b1c8ec2f338dc4acb4a4b4ac7ddff115d342587d9ac7f831dc97258ddc814e493f54bca7024265b4901a29818d2651eac72e10c499048d09b661732e9d232a493f54bca7024265b4901a29818d2651eac72e10c499048d09b661732e9d232a5c1065cb489eebe60aa10ec4ad0e62841aa8b9fe23c1172365c7795d745949b24d2ea69c41df0192ffd892eb62802cae93bb423b810a7b647bfd265d873fa79c4d2ea69c41df0192ffd892eb62802cae93bb423b810a7b647bfd265d873fa79c0caab665bedf046b90c37b5d67ef6e05add8b672f84d994ac8424fcb7318f762585c1823077ccb65081a907eebf41b419800effc667f7eb6bf5cb948ac348792585c1823077ccb65081a907eebf41b419800effc667f7eb6bf5cb948ac3487923117a48829f407321e129ef3dd17041cd6f07e21d7b86affd31a3f5dfd4c885288c454306a8c9d1e4c05f5cba81bf6191366a417154c20afd226069fe9ead7eb88c454306a8c9d1e4c05f5cba81bf6191366a417154c20afd226069fe9ead7ebc3845545f498809eaae465844a04442e4856d588214ea47251d9b1e0566ca36f6a1c4113eb3b537297b1c74ffe304102ba9da032d2f1a322dfebd00c671b57aa6a1c4113eb3b537297b1c74ffe304102ba9da032d2f1a322dfebd00c671b57aa6ee4fb4a4c85f98912a72016eab17a2da1ace6fd7c6d2e14bdea7cea301258824e4bc7b56ad0be96e894efcf440e0d8dc0f0209db8019319aa7f006ec071635b4e4bc7b56ad0be96e894efcf440e0d8dc0f0209db8019319aa7f006ec071635bf0b01438d6f102c67de868144b76acc12dd88ea8eb3d3194078486a4cc55392c10b65300ff11c90af7e7835be9d8eeb34b2ee9c0cb31835dfffc862912d9590510b65300ff11c90af7e7835be9d8eeb34b2ee9c0cb31835dfffc862912d95905b0b88dbd250cd437a8d3c7462f9b4f4e3106de208f70543797aee40a6cf0fc6f5a78823dbaa6819f815b65243cc643d56342a14ea50f97cabd4d5ccc2d9013fd5a78823dbaa6819f815b65243cc643d56342a14ea50f97cabd4d5ccc2d9013fdea383266a92861f94a88660a8dd83cff460313a1a015aa7dff27d6d0a6e860e45221c548215d73eb3dee36352654d021546a774e97b4bd2b34aaeeef5d319ca15221c548215d73eb3dee36352654d021546a774e97b4bd2b34aaeeef5d319ca15eaf9c93c732459a679d8a4fcedbf439557a8aeb37d7804cb0b965b66779d6c67ff92c298ea2fc7d8e065555d4b319e3ce19bf0dbafaf28a7ad5730e82d7a24f7ff92c298ea2fc7d8e065555d4b319e3ce19bf0dbafaf28a7ad5730e82d7a24f42b30949e0b4fef4a92309e2f2c60b8e713e8a6e7507ff269068ca15b2d189bdf26aafaa4fcf011f80e540185b3b86052b552baecf5471d4837c56ced305bcaaf26aafaa4fcf011f80e540185b3b86052b552baecf5471d4837c56ced305bcaa7b26bbb005b1fb727b0300c4c72fcfb7f6279b7c24d70775f32666ef460e6c40e434e5e785beb433d8f57a898dbe25edfaf46d445f9dbb967993ddc40762f4a4e434e5e785beb433d8f57a898dbe25edfaf46d445f9dbb967993ddc40762f4a497a367c56366cc7755066b7dc37c507c18b3cf49759a98837b6cc85e84fabcb2305a865c987215b99249c287ade144c76d81d05dca3d4d81ec5b50af3bcba6d5305a865c987215b99249c287ade144c76d81d05dca3d4d81ec5b50af3bcba6d5dee6d095e70940fdaa9a37a6e3d9bec3f0d661eba4a160b215b57e440726555abadaeebed0c547904e2e45a93d308e29507510188a7b70efcb31d29915a11b1fbadaeebed0c547904e2e45a93d308e29507510188a7b70efcb31d29915a11b1f99d2f2afc35c6eff8dce58cc0e74bd91f75428b34220c9801c13b8b1b37eee0c0abeedbb6ffd18492e60a3f1d99501bd7dfb14820120d6d9d6ee7c19d9e24f6c0abeedbb6ffd18492e60a3f1d99501bd7dfb14820120d6d9d6ee7c19d9e24f6c31765636ba30b749567795b46efb80d84d78f08a7868fdeea6abd4d84e1b6ff025eb30d5aeb341cf655dc6b94d6a14b3a072292275b8b1b314679e87daae7b2925eb30d5aeb341cf655dc6b94d6a14b3a072292275b8b1b314679e87daae7b2942790bc91f93977e6d90f98cd12c27638bf03ef3940458f72981cf94b9571707ba0e7a86574ecfd9ea2c1ea01bb42bda7e249bb66252809acdc8cdd2a6338a5eba0e7a86574ecfd9ea2c1ea01bb42bda7e249bb66252809acdc8cdd2a6338a5effe4403fd3397d5258d0058de46f01e0abdcf0f274280af88653a0b2bd5f582dd0ce1284b68498cb9fd73102cedeb749f3a7c3c298c27e880f3b2aa28bf6f4ecd0ce1284b68498cb9fd73102cedeb749f3a7c3c298c27e880f3b2aa28bf6f4ec188dfe380e93c2fc037ed8828f9ed62409f96cad42c81dda6c42ee672f991c6130be4a0cdc8de6cad507b3c6016dfd5211ddd6a1c11085ae49aefffb50c309dc93c7095070585ee8533038ff9e9f11c3d97739663c78310f9c372a09c4b940393a76d2498731fc817695de73da149f453d61af2bc11b9a33073be381486a79106419ff146b78d8c6c4414ca180b03fead48e47eadb910c8c12c3a394d716459151c35b5e0b5d1e695bace138312d05f2cd467e7d14ec74af966c7f6ba379b886a91f8b8018058da97ff91689d01aa09b4afdbe189ebb4a6631e3b9a68430f0b76db3d53da02ec02a1c94c2aaf8a500cb0b1e23943ddfa2ad843e2a53e38e7bbb6db3d53da02ec02a1c94c2aaf8a500cb0b1e23943ddfa2ad843e2a53e38e7bbb30aa81e95856c0926da79e55b5549957b169dd3821c539ba137487f10973c6e78638b0a3dcebae43da08bfb174c199ed8c0897bab3ed2b8cdef3fb7dcab5b7218638b0a3dcebae43da08bfb174c199ed8c0897bab3ed2b8cdef3fb7dcab5b7216a2356d5d49879ce98fc81712ac30be58e7ef3fe7cbcee841f88b148ce3e77c91bf8ba66e3cc3136b31154c6b9e31519ff5c6feff6b0446088d7df7b1ecb1df21bf8ba66e3cc3136b31154c6b9e31519ff5c6feff6b0446088d7df7b1ecb1df27808e1e724239dfe8151971328e39d44b5bd06e4cd4672db1a82ed5bb16409b21497fe5ec9999f1c63bffacd2597b45d096e0d34b46aa93bebd1971e2ec1ebfc1497fe5ec9999f1c63bffacd2597b45d096e0d34b46aa93bebd1971e2ec1ebfcdf18ef5ef17e57149b402a6988b67ac3d1bc5e166930344770b58b50168d937f90e5c0676bc8a74431a59ff430c76b837f1b99604d1fad17be36a68a6ee1d5fe90e5c0676bc8a74431a59ff430c76b837f1b99604d1fad17be36a68a6ee1d5fe4d78d3565c85990fecb1af882759e6309c63f803b9b03253d5935df78514e76318ef8648f21154f9d304012c2a2c0caa78657f856c95cb872a1379232372cb5018ef8648f21154f9d304012c2a2c0caa78657f856c95cb872a1379232372cb50b5c115c725ef260fa7516b2fda36bf9ac127d9f65652e18601de00b4e475a3e7fb8e589c0e4d35cb16c1025edb848c6612edb95e6e8d91e7c32a2e80b7b69e70fb8e589c0e4d35cb16c1025edb848c6612edb95e6e8d91e7c32a2e80b7b69e70a378d69efdd28b41c1aeff4dddbc709cf2b4d7dd58119f609a6670511414da499ef1191b6493d82c3e5bf29baffd59d2fc8801e2c1a24fbcf69a686dfd7adc249ef1191b6493d82c3e5bf29baffd59d2fc8801e2c1a24fbcf69a686dfd7adc24bdbade67ecc5683546d806c0cbb90d8f5509b794eae3d90a61ce4d599f6d194e24bcb501d06f4e92ec3f08e6155059098a97e9c8bbe7cb335f8d3f805a63576524bcb501d06f4e92ec3f08e6155059098a97e9c8bbe7cb335f8d3f805a6357654670f657657a998258fecbd30a7056197615ed675d6171ac0f9ab09b251f918f8c29168f78b538cbf8a47b3b1ff8552726142183ae11cbd1b8d62f863f986e088c29168f78b538cbf8a47b3b1ff8552726142183ae11cbd1b8d62f863f986e0842e69f54ebd21bbad418f805c8bf79e2b5370f497b894bf4a0daee51ea75814202be86ff8c80d92c2cb5f74ff29b2062344a575e917a04bbff9efd50aec2ffd002be86ff8c80d92c2cb5f74ff29b2062344a575e917a04bbff9efd50aec2ffd0084f2e142050e9350e10d2483aa328fbb7673b4f0eba1050abd97e01b444d46fa475979344405bb57124c3c3edc9bec8ca588ce40f4315cd7b7b6ccef8018d48a475979344405bb57124c3c3edc9bec8ca588ce40f4315cd7b7b6ccef8018d4819fff6b9e861e036a0b43ac5949f4dd601358362197c26c2f72546ef71d6be675d3f4ef2f4c9afd09211013951808d76358e2fcf8cf0a61d6933ae01b7e046315d3f4ef2f4c9afd09211013951808d76358e2fcf8cf0a61d6933ae01b7e046314f4407c67d76547ea85832802593bff7ef1022ce998d5e4e9ffe7bd70df4d1a7c594904815c564478ac19d4119095616ed3de9441aa91a5bd95dd8ee9c98777cc594904815c564478ac19d4119095616ed3de9441aa91a5bd95dd8ee9c98777cb44f06b2fade5651f40ce2cbd7238e61478da691fde20928b9df48ecf2200af09f32492e0d9c088d411f2a02280d92f6e01bbc228789dd1fc02304c63b7db062af9ed3b682153dabacd354720d4432a2e9cc34cab75914c272e5ebc67892ae2dc7d463aa0ee94baa8aab42a1e7c53a9b5547110fffd1a85c30acc0a952bcb2163177b50e62cddfd323a6eae810275fcd861abf98dc9c0aba7e44f68acf7ce4103177b50e62cddfd323a6eae810275fcd861abf98dc9c0aba7e44f68acf7ce4108360be37037b04c649ad746e35d75a692abab20155349be736540a58cd5724ba1a78aa6b5818e752c2418fe57b5058879297d9ca1c26fb6e450e81ab4bb6788b1a78aa6b5818e752c2418fe57b5058879297d9ca1c26fb6e450e81ab4bb6788b08c8edf59972aa8ddf454eb84bdcbaa1641f7eab904b3d66d6e7c533f68e1255fa05c66d6fa1102c98c66432e6bb365e77003415b97e7077ba69f01611dfe3d4fa05c66d6fa1102c98c66432e6bb365e77003415b97e7077ba69f01611dfe3d453cf0c626ef3bd2c89ce5c6258fbcd1cd77121060858ff8aecb015d0f6f6dda63855433fc6719ee6c3b41fefd5864c5ada715d4bb6b7cf396c2a19c7cf2eaa533855433fc6719ee6c3b41fefd5864c5ada715d4bb6b7cf396c2a19c7cf2eaa537f59b7344d3ff3a9d2c2f6044cf282ac64d0f99e78a8c100cd0a5f40e4ace979180378b7ba8b4f4d9b9e31739e2fda538b3f53ce14da848d45cf9a8c737c3a6a180378b7ba8b4f4d9b9e31739e2fda538b3f53ce14da848d45cf9a8c737c3a6a5c806f350ef30537729b226ab6f87c62c21a9e5bd07e6213d7efe437ed53d54af66ed50e1c94e4f2882613e0d4dd23bae0dead919c15d5017c7ba15a4d795695f66ed50e1c94e4f2882613e0d4dd23bae0dead919c15d5017c7ba15a4d795695fde452f8341094eb5f7e795ccc95108e7308c07420b7f69a430ee7bd33a7d9fb2209ec3823d7ea0efec38bddc303c5a8cfcccbb3c50ebf74a707d6de01f53d4d2209ec3823d7ea0efec38bddc303c5a8cfcccbb3c50ebf74a707d6de01f53d4db42115cc685dc817f889e3df963e519a177acb77b3e79266d93725503322b88d3e93011c5afff195b666c77b1a9f88ccc2fd597c0e0260b5744157e816a2fe9bc4525eadb6905a7f53d915ab709276fd14cef67b3eab4d60576cfddb54489af005de12e4c68ca1f936301be852b83d9e95a7a654007fe89e953bddbf060d590d919ed2d2da87d590d5d0f96d6b02ad3110fcb3240a19ef9c089ad5df18a7327a919ed2d2da87d590d5d0f96d6b02ad3110fcb3240a19ef9c089ad5df18a7327a7b6335156c1960b36e76ca28ce99304203b233317d81ab106294b8b03135c1a044b2aee313789effd99a6e3d30332671cdd89136dc965978f08ff4713cbe21b444b2aee313789effd99a6e3d30332671cdd89136dc965978f08ff4713cbe21b47c8dd7dc035b7050c051056ddb91023a0ec92e6582a0987de13953551eca27596e2c4b7ba17bd010296d63aab23e13145c3da3552700bd09032489db88eee0afbfd95b9fbec1c2643806f981dedcc446873d7ee3f2bc6294484605df82ac27a7bfd95b9fbec1c2643806f981dedcc446873d7ee3f2bc6294484605df82ac27a79a7c6f4d7f02d0d8482095424528a671564276f1aca57cd76bf24b82779e37fdbb95b32fc5d92e651a09b7d65cb2eb65ab2635dd281dd94397ef91f90e780a94bb95b32fc5d92e651a09b7d65cb2eb65ab2635dd281dd94397ef91f90e780a94cba7643da8e8d916a5f8e594a2e154451f54a02004b434e592609b6accb52e1d03b2fac35d9e4f968ce3b47c45aef73e1b849a703195f4ad411b578a5e7cdc9903b2fac35d9e4f968ce3b47c45aef73e1b849a703195f4ad411b578a5e7cdc992d1f0018113f26ffe7016cf6bd95a3fb9c448173c20ea55d79fab495ccbb165939cba0beb84bb89f2cd144d8a7d992851194b69425e6ee5780b3369641b5f8082c5efa1bfcc3cb53476c28faa286abe5d691c9897a22b811d94dec3f791d1885826ae4e800316cf4600ee7ba52c08a4878a4dcdf3a1a7fec12de62b11d075c8bce22788630a3c7fabd8cd352686de4d7ef0a3e6ba882bab12ee2b786b504930ace22788630a3c7fabd8cd352686de4d7ef0a3e6ba882bab12ee2b786b504930ad51344f50fc3f214ba9c10eb2224cc293bfaa6be5af623066a2e428ad4ecd748594d7956dc9655caaaf718f3308bb3b14c242da0a135909c16c50de6acc0e81d594d7956dc9655caaaf718f3308bb3b14c242da0a135909c16c50de6acc0e81df430c8c1dab71339df0406221a66a05cfd0c14202887842f298db4768f556311f6753a5cf59e13e0dc52ecd8f9a3412256757955e7e09e9e6c7b3a2523613aa0f6753a5cf59e13e0dc52ecd8f9a3412256757955e7e09e9e6c7b3a2523613aa0ae3a8e15d79f4914d483eecea86e088a9097fe726ead7d01fbdbda274a6cb002118a8ddc1056e3ee126739ed4a1093a49f5ca8153a5dafc8bad575fc6d5f77a0118a8ddc1056e3ee126739ed4a1093a49f5ca8153a5dafc8bad575fc6d5f77a0986ccc4966682c6340a866d838cc3d77880c26c40e6eaabf0279c7eefb1d3a146967c942678cd98fff2e01920d91f5a3a7726b5f3d7ee3f72a7a802d35e18ff09fbaa62d3df39b6d3f527f10bcddadab8e2a23394a346e403b30a96760f01044facd57babb050a808018e527d864a6db0564bfba790a9042a5a72e5d670d2b2e0f25d080e6b64eff177ee38229499810008e314877b0a0cdabba72f007913460bd1b9250e7f07c1f343eea3e9151a70652ee0084abcc3d88461a7759c29e8335b4c2dd5c8b50f9882fdb017dc9da43d452965eef5db1fe7bfd83d5c76d826c109ed37122995012ef79bc334ec7c1670fb7fc31f15ba7b49a266d22da4c676d462b0b40cbb8bcba206118488641acac5c0043fb6bc9c25bf814898605120f5de48d2052475f55286bb2e0d3532e52327697fa8b5e4ef10d74c383823b38d1556b588c4bf75391bd185484fa64ada4551aa64c051fba65bf41058236b552ffb4d4588c4bf75391bd185484fa64ada4551aa64c051fba65bf41058236b552ffb4d44145c22f4f76c9d4859801b654471e7c700fe3ca68f5159e0cf4db7a6f21c6190119947be1717c9895e51579c3ce521ad938708769cf9e55f415b0709aa95b450119947be1717c9895e51579c3ce521ad938708769cf9e55f415b0709aa95b45458990b478afaa6fb2850ce25d19bf0e4581d82b741f28ef9b0c06892ff3e8a31771ce3a369388a942279a58cba04dc146a8f15415e3af38447d96c7e848bb611771ce3a369388a942279a58cba04dc146a8f15415e3af38447d96c7e848bb61095477a3f814ae6f56145b61fe7a7cbdbe81eabc2808cd117f0dc2007cd26c49ae58791dbba443ae0bb749331e721f8606e62fb8de1f4f74ff81745fbcb156ac994cce34c7703b9af4f396c1b3e6e910b188fc1bfa8bded96ec79b97fe65bd0c0dcceab1918e1f6c8fa2a06c6b5cd7277ac9485ee32d6ebd98f0610912b19af08f58e9eec8f85ffa0cb6fbf751cab77bc2697aac39c74e12ee006178463cddbe8f58e9eec8f85ffa0cb6fbf751cab77bc2697aac39c74e12ee006178463cddbe1f4fd950dae36e1bce1228e31274347e04529301c7fe040a35c78103af050e9d1b31a18d4331e216fe2171cc2e70eeb330a83fec16d94c4d80d15be446f8162b1b31a18d4331e216fe2171cc2e70eeb330a83fec16d94c4d80d15be446f8162bd5aee271f49eff571192ac9836f3a91542feeebacd0066ba01c7ef716b83c5c9f641f6ad124f22472cbe2db712d5696b6a485f4cdb13d098a86c7307e3b6eba5f641f6ad124f22472cbe2db712d5696b6a485f4cdb13d098a86c7307e3b6eba5d6b40d33b0b40929cea54c3831d33b8a2f4cddb88e397b2606102ee5cd41d88f6f33507b898dfe0b0b3997a7cac6dc8d80ceafc670ad17eb3f19dd45a2296aee66bb4bd381d30ca87b79ea7fc068a1df95162677db1fc1b6524a4e661a53c9a666bb4bd381d30ca87b79ea7fc068a1df95162677db1fc1b6524a4e661a53c9a61a6ab3459f82f8ecf3417c718b0594a2fade7d7111588a97d93a246fd1736a16582d2f4586d0a17136326e048fd4ccf04f4b3fe17c7a8af8c7e497feeb79fd8b582d2f4586d0a17136326e048fd4ccf04f4b3fe17c7a8af8c7e497feeb79fd8b65a936041ac7fc509e1b74e5c5a4d4e20993fbdb63de44211a05bde9ca229984af1e91dcd60ad69465fd809f1f168b3980115c9fb08c5325f79f8cff6169b429af1e91dcd60ad69465fd809f1f168b3980115c9fb08c5325f79f8cff6169b429a28914730431822f6e39f4e13d5525cd9ae0d8ee1e71d81118d78fbfb321a25082078ed86b80ae8a477a790d7308be297e85c2c52d862733130b063e41082fa682078ed86b80ae8a477a790d7308be297e85c2c52d862733130b063e41082fa676beb6773d5ec964c85e60c131de5ab7104bb3f48394315ff59416826fbc4b3095f235fa0f429194c1fd14f5f02fa272272c06495d0a37328ad4a587b1eb2f8195f235fa0f429194c1fd14f5f02fa272272c06495d0a37328ad4a587b1eb2f81cbaeeae4200413100bffece8a3fb21b1b72044098f9daf5fe6a8a66ca49d358c9f88e9174868dc65d3dcb301a6858ee5837f90cc9a4f21b914c52e5e591767549f88e9174868dc65d3dcb301a6858ee5837f90cc9a4f21b914c52e5e591767544345a48283639b4f73b0628313a67cb8f8976cf898e99908e66b46439792a2d1fc5c3ea81e4f11644f65cde2f52f2fd78e510957952257a3d27a615630259270fc5c3ea81e4f11644f65cde2f52f2fd78e510957952257a3d27a61563025927017df745e121e2253e5e8b26c8f19acb1abca1cb43ac8c7bea91e9f9441039bfea687372783796d8ca380d127926de543a2e5797707b53ffd94a2a51041df063ca687372783796d8ca380d127926de543a2e5797707b53ffd94a2a51041df063c787efd52ab653fee7a009a94425e9341ae0dbe2f46bef2d831844c7aaa945300df441703e38a768e4f9ba0e6a5dff0cd1a419b56a36ebffda20b689aec6285addf441703e38a768e4f9ba0e6a5dff0cd1a419b56a36ebffda20b689aec6285adce7e2f5c3508ff2c604ad6fb868416ee6717cdee2344c3837d5847f7c384830aa4213c6483bb07779f27783c02a52147a29fa45de3dbac43f333f69d28e8789fa4213c6483bb07779f27783c02a52147a29fa45de3dbac43f333f69d28e8789fdfec78dfa1bbe536f4deec5b5568a22ddb09620a344b60276d418ba95c6f3e68ba1865c18b37a8e2ae08e0f787d98c00daeb9f286dea585742dbc5b2ba2c7977ba1865c18b37a8e2ae08e0f787d98c00daeb9f286dea585742dbc5b2ba2c7977ec71c70b61d3c06e3c5253a4d10c228ffb6d8ef3cdaa5f0149d719621e4b9e0f89364b51ce980cefcd834baea21873ff48d9af7e20cba8f63af90ed12d3f04f689364b51ce980cefcd834baea21873ff48d9af7e20cba8f63af90ed12d3f04f6412c3223894455c1d0bc1ae98153b100b5ad8fad1ebd3b35435b488acf4a8c5ed672fdc07d75a0e587b18aace14846c94770666ad7feba2426de4f3dc3acae8cd672fdc07d75a0e587b18aace14846c94770666ad7feba2426de4f3dc3acae8c6542fc09b037c62e950cb34144f363f9b9aed8f33bbc117bb3c6f5202932516f4696c054c4e9e993298d7966baab9d56df6643af30f3e00d3597b2a52eb6d1d14696c054c4e9e993298d7966baab9d56df6643af30f3e00d3597b2a52eb6d1d1420fbd41496b3f792b46037944c10e9e9e377e24343412723bbd603c6dd6d63c2a6a5bc2092cd233a04981a7232412d0047c633697c54df91bd1776b34b12b942a6a5bc2092cd233a04981a7232412d0047c633697c54df91bd1776b34b12b940c495e5958befa4a521d735cc46d7ddd88369ef3b2f6311f2c6ca8f92323ead93d35468736f56a4d09b8b22647e7249b95333005b65e3117536f285853bd1b3f3d35468736f56a4d09b8b22647e7249b95333005b65e3117536f285853bd1b3fb780afd82558632cec0424d7ffcc9978b4cd1b72473a18ac425436274d8690606b8bf32aec1fe009c003b6d97f4fb030eb5a21fc465a47bb83ea068d8f68cf9a6b8bf32aec1fe009c003b6d97f4fb030eb5a21fc465a47bb83ea068d8f68cf9a3152f2e3833fe4606cf83d8e2bd752fa8fe54089827de08e1478f82e9a08905dba24adc3fae4ed94e6aa5faec289034306d8bd9d6763c9813c376652bcf5f482ba24adc3fae4ed94e6aa5faec289034306d8bd9d6763c9813c376652bcf5f482b85d7905e9cbe6b2f9aed3ea10aafc01c0b802bf96344ea0410c0284a8df416505bb92891282da962fa007df358d678f9981e735f7dda1eb6b027571cd8068fb05bb92891282da962fa007df358d678f9981e735f7dda1eb6b027571cd8068fb46e5f1abac185e2fa0fc88250e348bb9c469eb35278c766f81963cd5789ebf88851720471e5eadeb03e62cd88c1893ebfceba5e28166edef4f6cbc84e47277a45625ddba3a6885f1814a2056c1b99babf4810539e2727a17e924b0b5722a22377892f322b3ead23d150385c01f9279f2bad8c426822bb1b01fc3a07fc09061ffb005165ba9a83b0a031bfc330236cac4de5ead24c6cc6af9d21add46e7ba9be9978fd92cfee304305f12c9788b085050766a01c5ed2b78656d352e7c341cdd74b94acb8b68e7be965c885621429834f96516827b57f9f84cc6984061d2a3ccb60b14755c22a4100d79092b2ae541a63dbb84a98137e33bdda714d1e5ca49ee0b0b14755c22a4100d79092b2ae541a63dbb84a98137e33bdda714d1e5ca49ee0b7765b2bd7b4bbf95381880165e4c6476b7391933e1df6db3b40c0a45fe2c719f289df8cb18707176c5495be37d978fa414b0513ed8486363e93c56a1c96a4e93289df8cb18707176c5495be37d978fa414b0513ed8486363e93c56a1c96a4e930c2dc4d766213f77817672e6593bfc1ef33e799e89f5d5cf84f8ee31618ec15d9b35ef90edb8c30f99e1af03463db43789fde28d746894f837b70902aa8135d69b35ef90edb8c30f99e1af03463db43789fde28d746894f837b70902aa8135d69264d124a55c151e5cf08bb28669259be400099a0ee4bcf1821bfc0c8de47b8dd45cb3c53f833aea7a7b971a1f7113356d76362ea012a82864464f0c674f7bf0dafb5f7e8fbc5b41505e8374795fd6a11bbcd2283f9c1c302c42d2ee3708ddb30caca0d0a74f742092ca1ad8c014a906a863adf2855471d6c127c04a2c719e0afc2900a876489961ed9c95f97ae327cf39517afd57bc8c31413fa92136bd0236fc2900a876489961ed9c95f97ae327cf39517afd57bc8c31413fa92136bd0236dcca06dae79fbc935a9fe6de959c115067de091c27355c74aec921e5c053e681b7107eaf6998498f027cf35fab81ac0aba97af43f6c543252f91ed26ffa4d3a7b7107eaf6998498f027cf35fab81ac0aba97af43f6c543252f91ed26ffa4d3a7915479a475ad4e679a7fdd638cba5fdfbe02c13a216637d8eebe1ed5706bd57e61be5e237ebc7e4e957b9093a5958477da63f34abf84174231cc917a6d52315061be5e237ebc7e4e957b9093a5958477da63f34abf84174231cc917a6d523150ff839230cf999711c05b9ee030a7e843376aa51190971fd597643508cea7dc748d357186ed8b01b2906a59f6fc8cdba19db7563a3f1e5aa3add88f8c92aba0c90779bc062916389fb881065ffaef8e7f171651fcf7ed9a8a880d2c6ced6c4d400779bc062916389fb881065ffaef8e7f171651fcf7ed9a8a880d2c6ced6c4d401a766ccac6850b0424118733e2b086803921e0829f98ad0719be671a5da4263c815127dbb9509e86a23b28504fb3ed6314af77647ac3df8cec523045d4080f541e5fba0f2d45c0613596ad5d2bab54e2d6a49e93057275b32d42e205b9963f30fdc3f8ee62d252eabcfd4822a1593541862e21e8306e1c7ef7b5e68be848e716498b393b3091acceef5e058e2e9fbb44871e28e9c5be7be7c8b02cab0b843cf291066e578c06442a0f9a78335121106bface349844028f3772d0de2a1e20892991066e578c06442a0f9a78335121106bface349844028f3772d0de2a1e2089299483cbdab32a79e3af2c8833cb3d8c30acee4c5f395be5f5f511ab13d84c030054660fffd7a850bb204a1622d3cbb6bc885b9a54bf7140b561a973b49da8237d54660fffd7a850bb204a1622d3cbb6bc885b9a54bf7140b561a973b49da8237d81fa43670c614873d3ab0274ea6248402a6ebe5eb20752c03ef7587f885334013711982f57dbfcd1efbba9e3fc7edb375c91dea6022cfb3ba2bdf70d3f5855213711982f57dbfcd1efbba9e3fc7edb375c91dea6022cfb3ba2bdf70d3f58552159d40a853b895b5a1bdf7a12e74158b03e9253c50501761d260dcaa57362d1d1b391ac7ab59052ad9dccd2f4a0d6ba7b382a70af519fb5be0b3f62fcc5a43f74b391ac7ab59052ad9dccd2f4a0d6ba7b382a70af519fb5be0b3f62fcc5a43f74299cbe75470801dc9b11cb916251d6920e89e59f0ed178b69bf6f9a511c0111795633d5faa249aa2edcee56f1b68477aec1ce4aa8ef2a9ea0fdaf80ad646669195633d5faa249aa2edcee56f1b68477aec1ce4aa8ef2a9ea0fdaf80ad64666910aaaba2415853327cd75e88109fc75655bb0e036722fa430d8b755a6b6b6a152c3eaa1dd2db4d9943c5711ee3f714f62d70d5a959b1bcf525627ed0e940d8241c3eaa1dd2db4d9943c5711ee3f714f62d70d5a959b1bcf525627ed0e940d8241efb362f275b69d6e2634d3e70cdd44c94d0195e34fcd6fa8cc25fa6696df5d8118226c381887967e04dc5367c0dc8475e1b1c5ed93df7223d7818c106a7b96bf18226c381887967e04dc5367c0dc8475e1b1c5ed93df7223d7818c106a7b96bf57e878a9ee3004a4f840134a5f481a6a6ad070389706773bcd59fb14f280614603afdd06c7f521958d63eba5ce27e60ac27cb828151f58ef5d297c006d13c9c203afdd06c7f521958d63eba5ce27e60ac27cb828151f58ef5d297c006d13c9c2c30fb53c3f847eea8fe672ffa93e0718f42e0804250deef67693d6f1ad73d4b16fe798245d11dae353d12e39635e654041d9fe5189a8ea0d462a43845a6327716fe798245d11dae353d12e39635e654041d9fe5189a8ea0d462a43845a632771ecd169092abc9f6d876869f2e43d490cc8252c9527ffaf755f76287ab8908d4bd9295bd09ee1ba82c8649b40c39bbae940c56b0e9d4fe60e6fa9bc09503d6e05d9295bd09ee1ba82c8649b40c39bbae940c56b0e9d4fe60e6fa9bc09503d6e05ee56a683245105f5f7a7d5d630fa0c0ca657fff9278020d73d0f605050576d5c28f879764b0e9c74c639970914271ca9ed0e086618fb896bd6b8aa0267dc501128f879764b0e9c74c639970914271ca9ed0e086618fb896bd6b8aa0267dc5011686bc334b0277b540237e5897d3e4d5d2bdf1426e6b921a9ea016bdfbaca98b9ced820ddd27622490a5cb43609e81035ee4a5c37259bd80a5be0f910bcbd30b3ced820ddd27622490a5cb43609e81035ee4a5c37259bd80a5be0f910bcbd30b394096bde7ce583d679b0558c5185f76be914462f4c0cdb5d8e17eeb4f0140cb7fb8f2b4cb05455bce55fc0482b033d2da0d69e8db15c5a6d5578bfefb277d2e7fb8f2b4cb05455bce55fc0482b033d2da0d69e8db15c5a6d5578bfefb277d2e7927f580ca59bd418450d1a20e779dfa50a9685a71463554dade9aeb0e574eac956f42e9e89d04267fe1819b605c6275ef1326a391de9eaf3c78237df60252ea156f42e9e89d04267fe1819b605c6275ef1326a391de9eaf3c78237df60252ea1e0d259581a0539c35158bf0971733adb544cbb4041f090e9f8e8ed1ac68d2a9220e6f867d5f2fd19b3c8cbf05b7833f12542d0ff32f9f8bcd71fa36141b30e2120e6f867d5f2fd19b3c8cbf05b7833f12542d0ff32f9f8bcd71fa36141b30e218580cdbf87d13bd5cfa12ab0dd7cd831195baefa064827d19df45ba70eb791333f662acf5407901c64749e0c3e637798e8570af7ba48050f411e85326de32a3a3f662acf5407901c64749e0c3e637798e8570af7ba48050f411e85326de32a3aef31a3969613fb23bb1ba2db7466034de58ea92e2d9afb37d933aa8634ddb19cf257f669a32a6fa6600d6731f49dbec2a5773b2e6f8206e0f5170c591a76e482f257f669a32a6fa6600d6731f49dbec2a5773b2e6f8206e0f5170c591a76e482db1a7724282fa3dc6a129b250dbf180c9ea4923e43960257d6e65283c44eded427a65bd9c193dd1e6b800c7eab96730064997590a538fd9b8b5a67612970d4dc27a65bd9c193dd1e6b800c7eab96730064997590a538fd9b8b5a67612970d4dc623473924699a8e70c57816c37f74c904000c719f055dbc4e180303bc429bc224ce62c524ba08d711b368ebe7397e4f177ed737d0fb3d05a676c65f3b86c5d5e4ce62c524ba08d711b368ebe7397e4f177ed737d0fb3d05a676c65f3b86c5d5e4d68c9e168b0fe0961b1fb1a94322bd0610cc87d5c08304a6aaf4465ca90568ac1b1fe354e688b47d153cf935d1452ab56eb0f18575efee7e9918430b1ec815ec1b1fe354e688b47d153cf935d1452ab56eb0f18575efee7e9918430b1ec815e65b0b31f58fe19d54cf4522dd7420bc252212ef7f8d3192c0b93e395da1add2abf47e3dfee9c420f50344f5678cdbdca82844df400ad8c1ef3d073cee275b36ebf47e3dfee9c420f50344f5678cdbdca82844df400ad8c1ef3d073cee275b36e70ef1bc0d275c5ef4cdad118a2301745931d511f5aaa3b565720b1b2de52e2f2603352ad95fcc8190b8d4b9c9c9590b0eea9d3952ba9228253391fdbad7309d3603352ad95fcc8190b8d4b9c9c9590b0eea9d3952ba9228253391fdbad7309d3464b19961586f324a56ec7708962cd07c9b42cac74a9448cbddad4d12c03ea04bb20ffa9790f31feadbfb4398ecf30a154292623cf3651dd9148910c4f4df5b0bb20ffa9790f31feadbfb4398ecf30a154292623cf3651dd9148910c4f4df5b0b18063e50473ac8cc908eab318da94dd1be37c3569ee3b7541c23ace555273d505cae2cb009ea72a377c98f10a4e7997349df2d23eaea487f5c68dad822f980205cae2cb009ea72a377c98f10a4e7997349df2d23eaea487f5c68dad822f9802d42b83d770c0ea6cb5dbb23b04264cf6e59a543977a1cabb4207bc5e9348a2e5ad54238e8ec70f0cd536543344453455f77435097409389c26eb845ed380d3bead54238e8ec70f0cd536543344453455f77435097409389c26eb845ed380d3be1cee0c6f26615041546b6f2b4e955c0087814c96df78f7cf2be0d5941051f96a2d3c2eeb24626202d36abed4f8148e9dd16e89ec8c0a5a740dd76acb7b2eb7852d3c2eeb24626202d36abed4f8148e9dd16e89ec8c0a5a740dd76acb7b2eb7854325145e6a9151713fcc4e57624aaebf734f79603227a04518a4c72aebd440f5705aa4bc222b246a4e90efbfccc4d45d3681c73d3a7a359854393aa5f1bde625705aa4bc222b246a4e90efbfccc4d45d3681c73d3a7a359854393aa5f1bde6253c5e931143b5f86f8bb000355277eaaf2101401289da763f34533c395bd8ab35416f779d2deaf10dd28c6b4722cb955733ff1b82e635ffcb19112e9a4ed60cc2416f779d2deaf10dd28c6b4722cb955733ff1b82e635ffcb19112e9a4ed60cc24e7144bb2d9151cd79dbd139c9f9db9eaf6a512464ae96597f2ea36842f3231850682a75309cbc8aff50eb4940451a08c9725e5a3564f8b6c89cbba675fa162350682a75309cbc8aff50eb4940451a08c9725e5a3564f8b6c89cbba675fa16232231f3190ac19f751f999a69ab3d6514278c28bddc961eafa651dd7c8b27093f0e2c9d68834f23dc9c69d4f049bb411bf3062346648e39805e8719e18d295b850e2c9d68834f23dc9c69d4f049bb411bf3062346648e39805e8719e18d295b85bcfa36bd68812bc78fd0691bc7f7d8639e71d9b023ee592814bc31322c9da1b4ae3f41d1892cd3bbb8b67322cf0418c9c633d716815d2de7e751168cebaa6fa1ae3f41d1892cd3bbb8b67322cf0418c9c633d716815d2de7e751168cebaa6fa147d4756d89dd229144f740e87ac6cd1c924f05dda6262094e413021126544c1cb0880f2e3ee7ed6fab4e19922bc4e5bf62c9ec86cf4ac936a94fda2e7d0cae04b0880f2e3ee7ed6fab4e19922bc4e5bf62c9ec86cf4ac936a94fda2e7d0cae04809925cff6f7cf159d5a1946270939ddaddecf6672d925a785f80f934f1f5bdc053c3ba1964d7bf4483a20562f1844952a0ffb3a93a5ef0f8bd0fe0081f00ed9053c3ba1964d7bf4483a20562f1844952a0ffb3a93a5ef0f8bd0fe0081f00ed909cc3a1da6160e8de1b8a2c6dcb802e82ed09f7c192683d47e64efbb4904cefd58c9a266e38e52f276744823efe563f84826d2a37f6f91c14f1b44d7875341a958c9a266e38e52f276744823efe563f84826d2a37f6f91c14f1b44d7875341a973f6b882c44190cdd2eb9342009f5a8c8e5696fe4f6829f4380d48acc11b061b5f72c457e57e01565e2530f8538adcdf166ff020c9a0c6c104f272bfd57673f45f72c457e57e01565e2530f8538adcdf166ff020c9a0c6c104f272bfd57673f40c606f5d41db4d1a76742aba510b1cdf8759d6fdc8ac7d7ed1dc192d90c21eda36812942a3c7fe6d3019a632a695a2aef03e3a12641711316f5518029528a63e36812942a3c7fe6d3019a632a695a2aef03e3a12641711316f5518029528a63ee80d9a51dd983355032dd3c7f3e3ac39fa54fbfb05e721a84e1aa42fe9de1e6ea7ca3a20a7c74ccedead9109e3924df2532362323c583382f63e9c9cc51931a0a7ca3a20a7c74ccedead9109e3924df2532362323c583382f63e9c9cc51931a01cf6a70c035ed34000bf0b7367e088740235fb509e3d41b42ed921d87384bd5b1fd715620136d9c017447d421c7f23cbd145e501ce2b1b5eae59433adfc167cf1fd715620136d9c017447d421c7f23cbd145e501ce2b1b5eae59433adfc167cfa8dcb0a12c654a46bfc1fbd276d09bcd79c3068071256aaa7215b2f2ef152b4ea0ec03d19af39a02f3e10f479ec85ce417c5bd59551d12728869645c313ff8f5a0ec03d19af39a02f3e10f479ec85ce417c5bd59551d12728869645c313ff8f5cf6b891dcc4def5700b7b12fb0d02f43eec53a997016cd97714c91e59499b8bf7b1a0ae99ad6b7fc2e099d08654dd77695d9a494af4d1e42cc17a70beb58dad77b1a0ae99ad6b7fc2e099d08654dd77695d9a494af4d1e42cc17a70beb58dad7849dec8efdc9b4ecdf51fc6072fc04b65e77c522857cde93bb7abfae66a279b23c425bb4025b81949275125fbc2fa8ce491d7bafeb9dc9ebbe87a45b1468852b3c425bb4025b81949275125fbc2fa8ce491d7bafeb9dc9ebbe87a45b1468852bd2c57b266118fc383c05e5a943c50d01d6ea9289b34f0f466fc801047f87e54f9625dadf6ad15b04b2e70f3930af64ab8863958c4eb9002f32942c4d9a21216c04554f7918e28c8de00252d4314e073c38cd958592dde5fbd347259bc2f8927904554f7918e28c8de00252d4314e073c38cd958592dde5fbd347259bc2f89279e5c44d743b9c5e37fa60f22855fa9fe7dde4eaa3067355e2f254e72196153735666f025b44a4624a910ab14fa58571631151a699776403d0757aa86ff5be2e49666f025b44a4624a910ab14fa58571631151a699776403d0757aa86ff5be2e4963b5e5545aeb4978d44fbbf479387afc05fe1e14d6904b7281e88e4ebfbb2848dd094508b2fa7da46396e841d25cdc328bb7a63fc487312b178cb79bc8c6a7c5dd094508b2fa7da46396e841d25cdc328bb7a63fc487312b178cb79bc8c6a7c55dccdd461d4746d64b39e1877e923bbe09184a0333ad303815829c86d70cc336fc9c24ec2e5d6d4f496790d1c861659532e9b5c3c8e5b49ce08da532d6e7d4bdfc9c24ec2e5d6d4f496790d1c861659532e9b5c3c8e5b49ce08da532d6e7d4bdbd2541c3f3a60ae8c986911ef5b000c8ddcdbac9b2304670cdd380cc27da223958414e38190553251f8ad6b39356928f431ae83e9966156694d4c7449ed501ff58414e38190553251f8ad6b39356928f431ae83e9966156694d4c7449ed501ff8edb98939ba0ee1f4ed853ce69c6b7aa74adf32ef946e2f7be24b4e282f04faf046be1dbac9977faf3ea1806350022fc1b82ab8780d93912938fa46f87dff55e1edca42a5e55a4fd9179f99111f0fab471ee350bc2a50b0d2af8ca14233378352c2be1bd69d4ef7d8854b705cc844a325946fd79b610d1a32de36d08b786e881e4b1f81daf600d4d988cc15251131967a3c35312b79aaa461a73dd0b96b174bfe4b1f81daf600d4d988cc15251131967a3c35312b79aaa461a73dd0b96b174bf20c9b833b56438184419c81c871b4c7597c612b31fa9d841e23d537afc2702a76fc1e0625bc95cf4169585a549bb7dd75be39d29e8a8105636d5f19fd349a9286fc1e0625bc95cf4169585a549bb7dd75be39d29e8a8105636d5f19fd349a9280e88d2eb004c881bbc3a6748209a8776ce8439a440663bba5b8021baf5719dc90017319d156b6206a6623d7bf4897f5c0fda5671c025b74f55b9f2a9a25304860017319d156b6206a6623d7bf4897f5c0fda5671c025b74f55b9f2a9a25304865adcbe88e722ced55addf230db8a91b33721ad0eeac836c272fdc595a139392d0c161393510314cb387c400bab5105624bfded0bec8df59452a4b07ea09567ee0c161393510314cb387c400bab5105624bfded0bec8df59452a4b07ea09567ee1bea3cc580e6e710c3ec0350300df8f1eba0d7d02bd66f810ae7d7564aa8439c52c1af5919f11676bfd1f659dbab5186594a7364cba3cf1c21f723a70c93bb3f52c1af5919f11676bfd1f659dbab5186594a7364cba3cf1c21f723a70c93bb3f48a23b656a9fecd077d7e9ffa467f6ca75138f17555fc53522083cf070996bbb913794bad7c497a1c74bc1f09d1f9232e89856c3d5ba032bd82cca9e38b601da913794bad7c497a1c74bc1f09d1f9232e89856c3d5ba032bd82cca9e38b601da31e23b6d8d8701ffa19c597b99f1e796b85778e3cc496c18cf021908c93307f638669068798fb92117806b1ad94d76a1477bbea1498fb394a7b9502ba0463b2edeb704fdc1175f0d5b6128e192d6f09cb1f212bb280a952bb50d25f00e9afd7b8acbcad156d55a15590a31ae0cbe970eb4d1c9380beb2d49f490ca02e780c6e98b5fb28caf7a71bc6ed893d9d6bc5c387b1a68337ee9e40d0b1512e3b5d25ea98b5fb28caf7a71bc6ed893d9d6bc5c387b1a68337ee9e40d0b1512e3b5d25ea9bc8f54ede2a56cff4907703a600cfcfb6aa1c2db52ef34612a0f34e4184d62cc0e42651ea9cc4e4d3c01c0df15c8e392bf50d3fabf87e3b79ff228e8e811ebca0e42651ea9cc4e4d3c01c0df15c8e392bf50d3fabf87e3b79ff228e8e811ebca32a5576acb5063acb16527450662891a6f91d285f86e11d38d8a2ad66fea50401e51f5f947ae0698081ab595dfbd69c895076a263cc3c8cb9267b42e2898b553361674e4a47bc85e67b5f0fbfb0a62f13915ddd7afbfc30b257c649776adb377697d5bd2c287b792bff7874983f016994c3a70c5235ee26a23d8e85d70413048d1bb583e8a20fa158a7d463a7a73d1f92de5ed722bf5df355bda449a0220ac2cd1bb583e8a20fa158a7d463a7a73d1f92de5ed722bf5df355bda449a0220ac2c260ff3aaa788d25753a70f411cc1300f2cf2af253f99745b7383f0034670aa816590b088bdc7314f71b73a885b8f65edacb901660676c28b526b2b42db202153e3719db2e711d1d0097a47690706df7045103dad839f913af2dee3c1a4755ef3b01fb5ca7005de0cecda676ebbfef83fe38e8f59b83324ccab81403cc85f978acea95d39e3ac63a59144e1af33af36400f6f6233cf7561dd2b318d58d9179520cea95d39e3ac63a59144e1af33af36400f6f6233cf7561dd2b318d58d91795207a1b7af3b53092772b6a0a7ea815e55606d23495204ad2aefaefcdc1f379a909ea6d3680cc9a0de1269960cee6ae0464d80d526abdfea94b8ac4442505edeb4cea6d3680cc9a0de1269960cee6ae0464d80d526abdfea94b8ac4442505edeb4ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c6b498da286d11ef61a7f233682931242f6bde3d6a96cb91e749fd8c77625e1ac6b498da286d11ef61a7f233682931242f6bde3d6a96cb91e749fd8c77625e1aa6dc1ebb1039357c837fbe6a85901fac79fe5f616860e605060b925fcd86c3de87d3971bad4a68b6019c5f050b2dcced681a1cf59c0210b066c1737871434eab87d3971bad4a68b6019c5f050b2dcced681a1cf59c0210b066c1737871434eab3497256fb5e2a28638c58e9088e1511f0fa95780089290aaa9a297d0cffeb2a8baee72b148edea5e90af53571da94811cf5130acdfa4fb5f5f9e6922f8c51dbfbaee72b148edea5e90af53571da94811cf5130acdfa4fb5f5f9e6922f8c51dbf49f9cd0027827f8ddf534755b98c7fc027e9d11ce32b755d2f943a53d8f8c6d8151759fd15175793f8cd5e1881be12b3a1037f1ffe5fa05769c32935dc44b1de151759fd15175793f8cd5e1881be12b3a1037f1ffe5fa05769c32935dc44b1de5da32fdc3cdc67c9a55893e785a704c79a4cefb4d309acb5ce23f1fee154d44f7d5c7b2c4008a6aa2edebe8707731b59a988004bf5e3ceff82cd26b5b59a105a7d5c7b2c4008a6aa2edebe8707731b59a988004bf5e3ceff82cd26b5b59a105aa73dd0f297a5d7005bf426c6b5203bd4a83e8d5f1c98164013708a870d5c58a51b758ae45732da8419167f9e44fae52c6f28d87247a09dabf34e22a7f9d94ca61b758ae45732da8419167f9e44fae52c6f28d87247a09dabf34e22a7f9d94ca641c094ed453a4ead9a87b40de4fd83cbd899a5bda493bcef26bee2f7dcb6c6a2a63183ca7e562e074b965c921219b7305505fc60a77be431417ad30bb9b56ebea63183ca7e562e074b965c921219b7305505fc60a77be431417ad30bb9b56ebe1f6fdedb5ba3e0a698bf33d77e329fc4cf2ab4305474b6ae23c1bc0f99daaf7a1059f3fd93ae904d56551e6a8548eb36ff84a1916200eb56a7c66a4d26ba52da1059f3fd93ae904d56551e6a8548eb36ff84a1916200eb56a7c66a4d26ba52daee11541a4e39649e6b19affadca9d11344a5749073c99185280b5d82de7b1752a0d81efd3d0755652bd7e5d27f4e81c8527bdd858d2d5a3efc74dc404093f98ba0d81efd3d0755652bd7e5d27f4e81c8527bdd858d2d5a3efc74dc404093f98b2424eaba48ed3e597025a2f87eab6c7b5b70f1b2571bf472eaebf81519c8e30a2315700ed9d703e66ad65aca1a1a04f04f5b75689565bb1a1e04f81cdbe29e382315700ed9d703e66ad65aca1a1a04f04f5b75689565bb1a1e04f81cdbe29e3806e4de5dcc05e0d1bdb91d83e40e69aeaad8c315b84c6fac86939f2ed8c2e5c254d462757f3257bdb49865de930b64dffef99a6ede35505a806e6d06a93a502254d462757f3257bdb49865de930b64dffef99a6ede35505a806e6d06a93a5022e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855a305c04c29d90f3dcc741b6f6c8911d291395b93f6b618c85120c545cfa2badaa305c04c29d90f3dcc741b6f6c8911d291395b93f6b618c85120c545cfa2badaf590cbc7c830731b68b55ca1b1ea11818b5afa3566537440a17017296578dae9bb24009573f88b990c922fdc65adddec1312e30373dc635c6099912d4f836a41c15a3a17f6b65e9c51c58ed3a79d12bc517f867321ed118e5dc7b5c3a1ed7d4b05d5e533f5e590d9ee2c7692d26dc87ccbf381f4831cca3362baf596691a55bbe34151ed8e0c5f0ea996f1128834b15f41f5e2081a41dca2ba7f2f307c331f49a8a24bcd720323185063761b53731cd6dcc5583fc0fd7ffd972137f345b1d738845bca9a59de1959c1501cbc1f2c90fa9ab73a38653175fe94073c012fa555b1e37878c53cc8e9dd57011ade6e7d453b625aa37440c00c7bb84d484ef3a191a78358092b45c8631df6466a2e4dc23278263b2dd2ba5765e99caba47c304dd3b5059d10fe3330345fa0e329dcbdada393f7cc6b5f1c2c6ffdb6f4ee8db729aec7b58cb939edcf9cc5e03b4d2ab71f49f3a24c25d0343f22d63e28b40f2df750676a79bee20d649c20b4551ef667f78ce536140f5de3f2d80f58bb5e2b3dc0841e7ac917c8e4309742c3571b8c3c8d97361ab6b838f7cd5bda498a410d9d6d9fc7e8d8354c698aea6133dfdffe5eb3123025dd780e2f4fc11da66bfe7519eebd2935db31be057846ad8355c60dc3c33c046795008ef682cea012ff452dde5a70256538070d2455c077280a8b537f23e3e3a7362074ba2630567d7f951f11fa113d81a2f5fdaf0a506502fd4cac0ccc0c5e7ccc02330150b75d3d7fd4bde0e3c95e7ae75c40dedaec93954cf18770ea1a2535c85d34d6e3dd7e755f426fd8cdf07bfbb4ae9e31ddd26e43b7c051041bb3d9d6bebd418a858da67268920bc672afb9f647152e43fe5e381c71ccd9da9bbd843a854761f8fe60bc6c17b7c0e24e0106f5b4867e0b9c0357e14f488bb45585eccdf47f62b7ff914a0fae73f48cc307c8a5a8f44410fb1085689eaad5a24914e940b0488e0ff2cc3191b972e625522a9eaa9e77f6297e6007745040e9b6a2c2be3880e25206594582e0cd09ef482ee27a395794cdc34731bce3ea1ff032b1c8bcbc275779325999641c052b771a28d8f94367f6ef8398e92de819ccd8e4938c819c2b24aa08f06cdcc0266bb0ec37eb08cd0dcfaeb8dc99c4ea418b80bf6c13d4aea912fc699aa3b30ddaf938bdb62e04b67ede3fedf08cc4fd20c2cccdea46f2791f95e0ab991d8cf6c7c66ec81e23c3b6cbf713954d89eb8389b63343d6b8fd261dc6cb652a0aaf93be5d801ed0b24e2ec77fcaf57682b2b8aee8c678c999f197456534d0b1d1d886976dd6794fa6e33d33f36e79c3406c72aeac084df89c84d522fc9953ec3fbb31e8c90f53f87b21c82275d275dc73870a4c8bc4962c1462cb477c6a6323788c591003ab421973d4fe19e3503f22da78a9920c4831a4fa121410ff76430dc10fdd81144ddbdddb014398e2153afe488f1d629b4192a2da8a743b10ed55f3e26ed662bd9e2718d789c9d406692ba3573699a2e1f58713cc2e5a65792df472217aaaf8402dd0c29356b41254e201645eeca3d0c9ca84ba7726c8c21b3796c04cbb9e20d8a2b51ee894cc35e6cc84c00eb7d5e2bdf9ceb8977eb94c2bcc1630ea93c6c4b82381406dadf1efcd32a4b669ed5eed317926a11646c05922fc49b815568ef2c3858d5bec273e4d25cc162e76fd6c5cc50ba26dfc4e71aedbc34f08ac850efbf934ab3c7ab179e4cb253305c42e22d5631bed2d57e795a70d0356d0c04e3ac395ab73051c5298b9ee99d099269d838a12b6fa3b0af725565418ec1fedd8a522acccc0df88de0107d3183911047ec758a69bec7e24edba03838c00331c5004208d850bd577475b3f5e5eaab13ca96387dd517a8864c25fcbbbc0dffd0f8580f07b30ec8e1dffd59f6e422b9ad6163924bc1fb70ae8b697a11282d5b32b02708b40cb9a7d82eef95478516949ab993d14634219a6f62a4470f46ccbdf434d9a2c5526fb0263e9e2305d3cd3097ff4fa587d2c2becfeb700d3d340eef0f3b701ff78b0f0ec898c045797ff45987136a2a5712f8f8310710e0944e4b4547bab2dc99933edd1bc9a67f41bd0b0ac605c5431ad8c658c0c8e3c5d766eac8fbb81d51132f9fb818bfcb98e4e0c90037146f2b5d3cbb9e43cb419f36385cfd7a4567fd509ef00ec53cbd92e941be30507b7dd5976f4223f9d01998f1e73262e900e0ed002b0f53dc4b7856407cfd213dbc91e3d2cd996b7559369b09e48134c71269da49a8f74f7a64f36ee04cbc9de7de6c76c44945196728153a8c4dc02e73195f1cfac9099503aea9f6e4a5c340bd747fd54533d9e1683164fb5bbd72acd57c71792376ec489751238eae5ede073bfb7afb89391cfb704647b6d73c4ed32c97c644d93cf66b5f4448c7883dcc3a4eb86dd43df4a5f837de4788a000f0285810c04d0475f3fe14dcc8c7883dcc3a4eb86dd43df4a5f837de4788a000f0285810c04d0475f3fe14dcc38eae5ede073bfb7afb89391cfb704647b6d73c4ed32c97c644d93cf66b5f4441f4d58dc1036092d4f09b44304da04d32a9b77b75587c0f29b02c2e9817209681f4d58dc1036092d4f09b44304da04d32a9b77b75587c0f29b02c2e981720968af58524bb8a85bb981d13aa17283b3f3a6652cefc38e2a68e61a694d5f36c89d2f0b8f918131a2a0cb8d90a7d27e0f40b9d02c8ee8e2add36e516bc21b65ab29a57b60a7497c097b085fff21072c63c1f6b4ad07c1921fde96738e5531f514133d1b1501c592a1a10391fbc6332988e0d3950a28bda46148f8c8bdcd0f401011fcc5990a91f872699db23db02147f63201b6396e6f4af6e3a2152cbd0aa0220afcc5990a91f872699db23db02147f63201b6396e6f4af6e3a2152cbd0aa0220a61557d1c6e03a00b3c0fc68ae5a2994991259cfd94f718301bbd45a4388c42a4d6ac6fb63bc2bec8b7782a91d3d4a2075b4d6ee617b7e687dde55827f41b471ed6ac6fb63bc2bec8b7782a91d3d4a2075b4d6ee617b7e687dde55827f41b471eaa6898ce3b7bf005a4d7f8e113b557323c8f20219d08f6cae1d94a70fef5a76848e50e9686b6b605e1652cf9458741b961d74547f2cfab28c95df1fb02cf7a5948e50e9686b6b605e1652cf9458741b961d74547f2cfab28c95df1fb02cf7a5914801be3caa7077d1d3d3abc0088b67ce1bb5150c8a9b33c59233193d3f8832c7b6585af5550aa2c0c1b3ff181b357116280b22561a964aaeaec68147f4d75237b6585af5550aa2c0c1b3ff181b357116280b22561a964aaeaec68147f4d7523578aa1173f7cc60dad2895071287fe6182bd14787b3fbf47a6c7983dfe3675e30e4a846bb7408d690cbbd2f08be193c4cc93edc7dedc0be9d6e5691764e624c50e4a846bb7408d690cbbd2f08be193c4cc93edc7dedc0be9d6e5691764e624c5a5b89582673fa9f0b445a380ca2cc78a17358ae850701a5a115fed15287ec10fda709bb993a670b3d8d7db3d10142f1ce7f1135e75ef6f5a09ecbbd06ce8b6af0935efa10c4d92b462ef1913f946d18c1c406e544428072f25dbd5c5aeae733e98fac6f86a20dd05da197e2058176ebfd47edee7074c3248f5f48fe0fb672d7c256c3680a4e5dcdccaf43c8c279f17983ccae9de745a6219532a149c916eb63c256c3680a4e5dcdccaf43c8c279f17983ccae9de745a6219532a149c916eb63c21d051a00fb5c6a86ba187e0c50e811d659ce00991fd5f5b408f71ebb2ef0f1696acb69385a01dcd45ae791d582add84298d22ac6ef75974eff1d746e24c22d696acb69385a01dcd45ae791d582add84298d22ac6ef75974eff1d746e24c22d6a3e8a9724d384fb37c32be6504594003f62e1d664cc6d3417fbe5a97e928e51b4a7dc7c4104e7f125b9ceebdb6f430aab48a297c5677b68ec460953cc2cd75c8e808ef8f1bf1c542006af9cc6604f90640b457e3302c0d00972f1585841f39191b8b5fdb36ce3becc62a6115ed904a17083949ec8aaef5a80f7078cec232f43b8419bab1177959951dc6f54d8e05e3ba52c68783822184535703ea6460812e448419bab1177959951dc6f54d8e05e3ba52c68783822184535703ea6460812e448290a19a8a2fb70a95aeb4650cc85a46660fa624b7110abd0f130b69b9781cc80c3d8b0e5fc799ae4d2ea49eab50e03d5df7f2659dd50ce6cecbb0c621af6c9a0c3d8b0e5fc799ae4d2ea49eab50e03d5df7f2659dd50ce6cecbb0c621af6c9aa910142d209b1ee807ec1a869444f4339e90fd4b1af54800ed363cbc5925eed6b68254143c45a3965f1fe0a7c09ad985feb3b53b5b1564e42add4ae7959efab8b68254143c45a3965f1fe0a7c09ad985feb3b53b5b1564e42add4ae7959efab8b841b2274eb45b3ebab493f4cd7461c8e9fb87776b3d9cffa2cd6a161f2c4e40c945643e6d524fe62cec6ad6cda283e97ec3c8f55898e663cf54f259ec8c96c3c945643e6d524fe62cec6ad6cda283e97ec3c8f55898e663cf54f259ec8c96c3b59bd47fb671307cdc4e4324589480a1bc42b6b182963462bc43ef61f08eb90cddc0df87f126264bb7a84217ddcacfe4509fef23ee1b0cd83ca01f55cc51d138ddc0df87f126264bb7a84217ddcacfe4509fef23ee1b0cd83ca01f55cc51d1382b508dc6938cfe6394ab268997efee5dd37622d060ba0515185ef7243da21f11e2a5548a409cb91547725c07b5bd2ae87636e5e7b27cbecffacdca6e3c2ed81ce2a5548a409cb91547725c07b5bd2ae87636e5e7b27cbecffacdca6e3c2ed81c2940720faa6c3d2aa7e1369181c09c08761ff3684beb173eb8816c87a0bfd9106ae3f7225a932c57b510cf099d25ec7fcf0791e815c34d9d59cdd666b94273ab6ae3f7225a932c57b510cf099d25ec7fcf0791e815c34d9d59cdd666b94273ab3f5b30397913f3a6e4aaa9e44430298e840bf019352a1822daa4eb7f711ec5028ba8445c6206b50d3a5d1f846a305c789a930fb97c8bda5b0c92f49f18dd4b6c8ba8445c6206b50d3a5d1f846a305c789a930fb97c8bda5b0c92f49f18dd4b6c98dd936626849c20cbcde39570e34eff09bfbf4525f8925e2daaa6f555c72bf83e307cd6f02efe00b05431159d32317dab9d2607a624a5c00a6279e8328008553e307cd6f02efe00b05431159d32317dab9d2607a624a5c00a6279e832800855544c30f06ba341239d97cc7c621666724eea534ca94e7de1becde552fcd14376e4fd93db2a7dd0845c52f90b2b1c55bca70369e0f09e7d2a320929496bf82772e4fd93db2a7dd0845c52f90b2b1c55bca70369e0f09e7d2a320929496bf8277256510eef0f8254b4613a1deedb812638f0b90600fc6b654fff9ed249593fc8b7276b4ecc9c1814d8556e72a3e20d1114081d98f9d74332c490be009d2eb6e8d2276b4ecc9c1814d8556e72a3e20d1114081d98f9d74332c490be009d2eb6e8d2285f605e33dc658015df0f22bc226863774b5f1dc40e1b3309c8f52d004a3c579dd492c18c15ee740c5bb15bf27dce6217dae4d1f19616f08ee7128b489eeb4d9dd492c18c15ee740c5bb15bf27dce6217dae4d1f19616f08ee7128b489eeb4d1ac02c27169b99dcc2a8d3f4a524a952a16cfd66f09709d2003e2f062d14fdefcc011d1dfcb3cd809de38b382c954f12bf30527c1b06319a3645b1664c60ace7cc011d1dfcb3cd809de38b382c954f12bf30527c1b06319a3645b1664c60ace795f6861334dda3b0847452c625580365af4bd2d1aa301ea7929785bac455a46fbf123c69761d3f5f077b0f1cd7de25a1b99a44e6214f1c4b7276d47fae186874bf123c69761d3f5f077b0f1cd7de25a1b99a44e6214f1c4b7276d47fae186874de21f31cc564e411cfd7a179da84ecb03d4e2ae6c247c9b93843cbdbdd01479e39a15aa9921ae115b19a78f59a7c9d4a88bdd3d950d9bdd9a795aee3bf44b23739a15aa9921ae115b19a78f59a7c9d4a88bdd3d950d9bdd9a795aee3bf44b237e0655ab7eba1a8d099062ab915b5aacc2b554deed041c1856f12b1618560a216ad437c14f2231bb67c4af4180b6140d9f93584628029368b38c28e3142d0be98ad437c14f2231bb67c4af4180b6140d9f93584628029368b38c28e3142d0be98ae60148c62ac2a82fecd132c7a7f10b7cbd23d096fe0d6c3c848eba3cd08e4d05aa7719c7b2ad2ac0e449122f1e8ce5165a78f8275d6745a5cd966d067ef28335aa7719c7b2ad2ac0e449122f1e8ce5165a78f8275d6745a5cd966d067ef28336d5f7b4d96820985c7ecb7ab5e547304523a65549c963abd7211cd39dfc8506cfbe74f987d46d34297598a9af38316405709663c8b524e79bc748ca1416fcf3bfbe74f987d46d34297598a9af38316405709663c8b524e79bc748ca1416fcf3bbe0de58e2e7798388e5e102e7a483ec05242291231474bcf55a75b1f8d5ef64b62cc25a23f05f1adbbc75ed6225284499ad813b7dc9af07001616e7a9c7d428f62cc25a23f05f1adbbc75ed6225284499ad813b7dc9af07001616e7a9c7d428f6530c73983a6f6a9e9a60ff0ee123208256db4dc18276127d9bbc465dba91837292e6c282781759b8ec4ce0916e0ef27a244ea5958855683e6b179f22f316ba5292e6c282781759b8ec4ce0916e0ef27a244ea5958855683e6b179f22f316ba5a493ce09c6d98721ee182630afed100c8a198bddf76846bbc60d1958da6e5265710ab8910e184b30c65d429aa01458430756698b508ec179bffd4a7be61fcbd3710ab8910e184b30c65d429aa01458430756698b508ec179bffd4a7be61fcbd3325b5c52de5958ddc77a8d98f8b125065339fd6fa1981838fc10d5f45aba54bc7c2ee3c7dd95573087f5250317e38cabcd7d07651734a63a2fae60c87ad614d57c2ee3c7dd95573087f5250317e38cabcd7d07651734a63a2fae60c87ad614d51cc822c6b6883b714c9b671b440ded6772dc3386003d5f87d00a14b073946eee6f7bf80d438be5d809946d93d3e8031f28787e33c379b50e2980417e3f80612c6f7bf80d438be5d809946d93d3e8031f28787e33c379b50e2980417e3f80612c7d917063f36c04950580572f6d57e15ffd7abc3f075418a512fcad8997e129432c51368e5f838bb2209397ad8f65d2a7eaba7e44ffcd12a783323e7102c0f9ab2c51368e5f838bb2209397ad8f65d2a7eaba7e44ffcd12a783323e7102c0f9abfd13a9959f1e938243f61791acba5075fa53143baef8d4f6489c4baf105cef18fc9fa97d57a4b3674a04c3b08a04177df6490685e3b13a071e31e99bc2679140fc9fa97d57a4b3674a04c3b08a04177df6490685e3b13a071e31e99bc26791404ffc83c6c490a21783aef12b976c685fed48ba80506e1d64d2cc2ad11dd8af26d97cfc88194bc7730ca69877b5c5b6f847ac6816d2106dee1460bf8ffcffe8e1d97cfc88194bc7730ca69877b5c5b6f847ac6816d2106dee1460bf8ffcffe8e1bba74fbeb7e58f5bbd1cd05db0f6677f688a3f7e1547f0e4b2de1680ebd382c00587c60571311b4166bfada38cbd8c6fc89b6c186c97cb777ef7f994a0976c530587c60571311b4166bfada38cbd8c6fc89b6c186c97cb777ef7f994a0976c531a2bc182bbeead93d11ce2c94e6f7cf3483c920b9a120c56c11703a1d3ba6fd13df2eed5bc9d298b98ade1b7bcacdad55c3f840c00c7df1d368c10ea735219803df2eed5bc9d298b98ade1b7bcacdad55c3f840c00c7df1d368c10ea735219807a55fab6e781549c606b77b811e434dc8bf9b533499ae1091afb2d9806859a0c74e056b0e3e68733c3ec0a5c85edcd51a39d4b2114457b822b67491834ddd57c74e056b0e3e68733c3ec0a5c85edcd51a39d4b2114457b822b67491834ddd57c9b18de3d84bc516bfd8116f1e8702a77e040010d8f0ebf14158731789d75efca33cdb30580477e44b25851196719feaf4cdbc2f7498bf961c7b8dfaedc6f448e33cdb30580477e44b25851196719feaf4cdbc2f7498bf961c7b8dfaedc6f448e399a796ba0614073b5e1d81bf9f2c08a06169a4ec95b834d44a2418cfa838e4f35f52a81b7825add9fc720f54177662fff52a7b2a8f37edd25ae779f163f2de835f52a81b7825add9fc720f54177662fff52a7b2a8f37edd25ae779f163f2de8bf61ee3917761bf8f5e7b5767916ca5ff7bbb34191b774f5099098bd33d4485289840648503e6a79c1513c4be4feb188fabd894bbbb008543db91924e0988d8789840648503e6a79c1513c4be4feb188fabd894bbbb008543db91924e0988d87a4cc77c96f8b1e9b05b941adb8a89eb3d3bb3a4f2953f1a10c608a54cdfa43f36d150fc0a179504c4b9888e18e9520e2ff30ae88e6d5247e45456563abceeed26d150fc0a179504c4b9888e18e9520e2ff30ae88e6d5247e45456563abceeed2f2b1b96921a40cc0de96d768443f23368e72f9a8dd0bc8b99fe1716f7edac16923f9d0a62bb6c786dc0614080ccd91bd268a6bb5e1aed36820449362a2b647f223f9d0a62bb6c786dc0614080ccd91bd268a6bb5e1aed36820449362a2b647f23b302f33ab9b1026dcea31a8521d7100eb70599c2658b83f058af7a8de709afd2e1823d823d2270b406737f4c4ee6c3f3220281f1a965291ce44e3595a7a79ac2e1823d823d2270b406737f4c4ee6c3f3220281f1a965291ce44e3595a7a79ac06462a132b57621254c3142e3d94a1b95c5a03653244f280f5348033385a2e61d8c87fd0bec0640387c06bed0551d442a72ee69a479df5994f8c504e2904954bd8c87fd0bec0640387c06bed0551d442a72ee69a479df5994f8c504e2904954b99748e28113d2d49f5d666b49b78accd2c6e10a7852f7dd6dece9b5b71aa83c475d6adfb941576aefd21bed44b9991383837c516b4a151fc81d743eb2d12b1f575d6adfb941576aefd21bed44b9991383837c516b4a151fc81d743eb2d12b1f5950a7d29467ce0590b4a1137830d43d88d8f20e4035dcaaa8b2a5c3c3f1de9627e5cdfa59bcf7238220ef9aff10b2fb41e261458741768645306efc7d7a043fa7e5cdfa59bcf7238220ef9aff10b2fb41e261458741768645306efc7d7a043fa27811178b450731fc955b1247656a605d04e5ee98e0d585e4596b94b703a27f6125b9cdcc515a82ff3bf178be74acfd04c8d05255bdd926a641bc107c1165d4f125b9cdcc515a82ff3bf178be74acfd04c8d05255bdd926a641bc107c1165d4f9fa426cd9f17629f6320700ed18baa94839304cf1bcabbee7edb501747dc055d74a882571d705f4419f8d85d1024ba6b49706f72622b03d15f9ccc78df3fbdf474a882571d705f4419f8d85d1024ba6b49706f72622b03d15f9ccc78df3fbdf4e28315910da20218dae8b7d5becd81de1e283dfd8b0415a4980d67065de73a0b27a997bbb0c2011d69710b516b9daf9b02f974ce715052e69f248943ecf9026627a997bbb0c2011d69710b516b9daf9b02f974ce715052e69f248943ecf90266b453a439787b0efa031e43416a7d852a6be705c985e1200693eb96d87ea79cdc321751c258b2ba698bf07b7378e43e482282ba522ed0ac5b1075506faed2731a321751c258b2ba698bf07b7378e43e482282ba522ed0ac5b1075506faed2731a633a1a5504bfad04b1ec9c96d44d4ebb3bb99066a218318e7d67d866e20887a6206268fcacb45805d56214a1660adbbc056c06006c4ffc8dc570108bc61ddbc5206268fcacb45805d56214a1660adbbc056c06006c4ffc8dc570108bc61ddbc56c10b4dc49bc63724e539137ede6936304fcca1c97c28d16d89f381e1084952168f13baf31d95f6ca49c70f476608141eb054dc4455d9f6dac854aef29b8e29e68f13baf31d95f6ca49c70f476608141eb054dc4455d9f6dac854aef29b8e29e3d2d567d8d079b78f3f3b566ed52ad2f38af61bf832b7dc28858b0039a032d6bae5fe932c9ffa157a040cd7eb8f7e81fee45d1e3e4cfbd3a8a837bdb79ba50c1ae5fe932c9ffa157a040cd7eb8f7e81fee45d1e3e4cfbd3a8a837bdb79ba50c1eff9b8cbc9ad2ef2e10e96afa83d3db1f775ea044aed275b7a35574ae0d8645bec15d38eab03ff2777b80670b06ebc1ebbc8f18e024de044c89a126fbb8ee898ec15d38eab03ff2777b80670b06ebc1ebbc8f18e024de044c89a126fbb8ee8983b4a4eb91704ffcad50a912a1fa3045f4828ddf53b9f248c29dc8a89985d1d2e0698809528f248630480d0cfefe3c7758eb4dec2b1219c3d89ef1f884bc916054e3a77dd605556b2920ade783c3ddb9db619e591f441bebbed2f48254e82b492918f407f9cca3ff1218a3dd639a3a6f4f942c98b3c6ddd57bafde2c76e1b3eb5217632d457cb0ecc46aa1f9b5378bedca0253596c9c509a392f1714d8c4d8257217632d457cb0ecc46aa1f9b5378bedca0253596c9c509a392f1714d8c4d8257025a9531e3046e52d3e039c0be04f9a5a74651d7683a13c7c7ebd4c7dfb5996aa614cdb85b4a3399b5d69259fc1f57f81799b7134cbcc55b35e497ffb9097471a614cdb85b4a3399b5d69259fc1f57f81799b7134cbcc55b35e497ffb9097471097ab101e41f63e2042334e780a7307bcabdc859fcc2e54f2bdd2f0e38165269c6168f285eedbe0eceeba641cc6aab0476f80a7dbe0d4a6ccb5a8801504617e4c6168f285eedbe0eceeba641cc6aab0476f80a7dbe0d4a6ccb5a8801504617e4461a0e7f72eccb8b29f351c4e7926cfbda58e0edd6d0770bd82e0b36c5febe7724f30dfb63723821666b2bc6c97ddb6e180971a0767f10af3eeb42192b0a3e5424f30dfb63723821666b2bc6c97ddb6e180971a0767f10af3eeb42192b0a3e5463bacad13a979a5519fcaa4f1e1e07b2c7415005167fac3a689408c7d886fabda15b52fa45cb2a305848bbb61cb17277a28e0ee4d3215bc1a35de709ed11a14fa15b52fa45cb2a305848bbb61cb17277a28e0ee4d3215bc1a35de709ed11a14f5d4248181548b0fc89a9f5ee9cf52ebecb235708ba87d47896ad14130884ef9fae658f3c7fe024ea121d97cb9e8e73ab01dd25a829436f1487390142917056a7ae658f3c7fe024ea121d97cb9e8e73ab01dd25a829436f1487390142917056a7b4d1468bcd608b46f38cb0c6ef115510dcf9aa0f71e590792f407efc6e16516480015730da3096bf658fadad90775d8f64d58e0e41272c79725f58a220dbf8bd80015730da3096bf658fadad90775d8f64d58e0e41272c79725f58a220dbf8bd3aceaa5661909de14e2861d864443b8472460ce39b99cce5c6965346d47aa5ac014909bf7636fe47d3d5763285e7ceb837b23b106dd8ae98342d080b75ebd333014909bf7636fe47d3d5763285e7ceb837b23b106dd8ae98342d080b75ebd333f4c9ed8f3031995faa224bcb10153d2b6144944477d1f27d1a6cc4a879fac34c7f4153be9868215a2b3821643dd20c213f6948917237e0e46cc50ce594123d637f4153be9868215a2b3821643dd20c213f6948917237e0e46cc50ce594123d631c86362e17944f0bcf68db02f4995bdeea605867795fff7ab4079073f96705e4e7715fca62dcc24e16d74436ca94ae3535f538ba3495507604c1015a604c8c06e7715fca62dcc24e16d74436ca94ae3535f538ba3495507604c1015a604c8c0632b0a3dc6fe4132909cd52cddfc29709346f16ef12c6a37d9a30d0349e6f4adcd8342bcf2649c645f7e4f786373d60ee879aec3d0c030a45929b504eab12f5a4d8342bcf2649c645f7e4f786373d60ee879aec3d0c030a45929b504eab12f5a4569fdb6d85fc676fd93126b7e7c378eee8cb88a261f7ab7681567ef580d5e0c4a0202dd04178bee61f705383a342efa5aaaa4cb53ea9f1606b5e1ea93a675838a0202dd04178bee61f705383a342efa5aaaa4cb53ea9f1606b5e1ea93a675838b57b880414fd04cd9ccb8eb1247501f978f50a06cee29fe36d0869ca2beea699081cb761996bd63284cee99975e516a246bfac617f7e6dd5912e35ed628dfed6081cb761996bd63284cee99975e516a246bfac617f7e6dd5912e35ed628dfed6e5028ef1859f4646e8af4edf6fdca1dede5fb157ec6fd8f403c805a2acf19446fa52f7da77225b8b1e988834d558f5ae887bb876fc5ade281d4f01bb80eacf91fa52f7da77225b8b1e988834d558f5ae887bb876fc5ade281d4f01bb80eacf916d01dc2ed5c6edd3f1d5bd49300913d93b352ddc76db8ea22ebfc2df01b4836a99b55a2474284e43824ac97ffe53fc3aea0cd8f6d47a87dc07257d87b19bc03299b55a2474284e43824ac97ffe53fc3aea0cd8f6d47a87dc07257d87b19bc0321726cfab74cd3fd2479a446f17cef6bd292e23a3609e868d380016571525e31a826ac3a02183992563dd05df129ab2990feddc9efa2045444f4cee927be3b598826ac3a02183992563dd05df129ab2990feddc9efa2045444f4cee927be3b5986aa4ff6d741aeff23942c95d7f10353d2b89bfcd27f28ed4c324238d5feb635f415aa8f8db22e45b23d7ce262454d61026bab19f52cff49a014927902d2d9453415aa8f8db22e45b23d7ce262454d61026bab19f52cff49a014927902d2d9453a707d3ce66f64b6118ddaf95fb53b920f1528470c0422e8b7ffb64666c80e3a7e8cec7952460ee15e7e28d2577b7fec08858f12402c772f89f196721566408d2e8cec7952460ee15e7e28d2577b7fec08858f12402c772f89f196721566408d2f8eb3ec1620a928caadc7668922144ae33b0a0e3a09cb0654ab5aa5f72ce6708a2313936fe76156c28ef82f719121dbc4712116d3fd15b90e121a0fa5800d26ea2313936fe76156c28ef82f719121dbc4712116d3fd15b90e121a0fa5800d26e1a1eef78128ee7b3f9f1664bd6f3f4984bcefab433a19131b4b3fdd20a827710e0ab4127c32dd0b863d4f9b42e36b2015c5658fd024d74ce1a03b4b368431e23e0ab4127c32dd0b863d4f9b42e36b2015c5658fd024d74ce1a03b4b368431e23ebe1a662e03a2f4be48cc6a571fd1f287c380bfbb88a91a4b28aaeb15e12bbf4477f04bb59cb4338e4d57857526e4f0beade14632c39cb6d369c5458e60637a3477f04bb59cb4338e4d57857526e4f0beade14632c39cb6d369c5458e60637a3acdabe63e0aeceb742dbd2d59b56dcf32a5412960120826ef6489804e04aa071bdc0f994dad9d51ddf31dc53ac168154603cfd8940cb2944476c6e0413e0018fbdc0f994dad9d51ddf31dc53ac168154603cfd8940cb2944476c6e0413e0018fc25a5b7be0030f45f4ed61141cdad22e0338f61a7dbbdd96989e35509a163e0cddb8f0b72581aa5f154f18f4609f7b5785ff9fb1cf929ca6acebac88a181d818ddb8f0b72581aa5f154f18f4609f7b5785ff9fb1cf929ca6acebac88a181d818aff31c0b21350b3b44960f92e79167ae3bb28095d501217ecba63b61d3438841952196bf10547555902f552fd4695d9fa311a3ca709480f5667f91c32656a0d7952196bf10547555902f552fd4695d9fa311a3ca709480f5667f91c32656a0d7ce2c575f2b90cb4ddb68e4c4a576fb774e2c6ea98c132fa30093c66f31834b763bb6aef2115d8b59c554049c182cf1414be7be04362135cd56b4b0fa4966f1013bb6aef2115d8b59c554049c182cf1414be7be04362135cd56b4b0fa4966f1019586615917afd3d848c1c4328656603b2834af6115f2aec932fccc935e1a60fb1720da93eb1f1d8a629d657962e6fcc3eafdaac44e4c970ec5d257497add7bad1720da93eb1f1d8a629d657962e6fcc3eafdaac44e4c970ec5d257497add7bad9286902b27f9d4caad26d71262210a16ea3474d6ad0dc4d25c9319f7cc3d70c3e8b854fee33c84154c7e1d4edfd3c2620a50302866b2a59b03a857c57a9573a4e8b854fee33c84154c7e1d4edfd3c2620a50302866b2a59b03a857c57a9573a40755d15cbf184b7a733d7628ac8821d095668769c4d4c4633ec62c3f83aed85d99ca809d26fbcb72c39307ca5beb0566072531f2d15a11dbf548c3fe75e1bb7699ca809d26fbcb72c39307ca5beb0566072531f2d15a11dbf548c3fe75e1bb76b75503e532a27c636477396c855209ff5f3036536d2a4bede0a576c89382b60c7f17f0ecd80bad00299dffec882487310c98af85d2aad4baed555aeb50552bcb7f17f0ecd80bad00299dffec882487310c98af85d2aad4baed555aeb50552bcb48e45dc6a03fbfab99b4dd531ca63e44d8227e4e40b6f47af72909391c3ff35b602155c1c0a1b7fe70ffe34f422a6d82ca2d2fb1946a4ac7a44d8ddf1da182b3602155c1c0a1b7fe70ffe34f422a6d82ca2d2fb1946a4ac7a44d8ddf1da182b3931a2c2d5dc86643e2809f591a15ad0dbd35eda3797536a839aff853375ac24598c273f54d1b66785eae2686de626327fb7e4283904e39b2e98a841ae0cabfa098c273f54d1b66785eae2686de626327fb7e4283904e39b2e98a841ae0cabfa0ac4429cdaa55276df26c16c980238d9b23498e53446b7a5835a6223f1029219aed7f8874bf1d3960666e4ee9cc38c028bc6b99654de640f92707ab9a69f7c05aed7f8874bf1d3960666e4ee9cc38c028bc6b99654de640f92707ab9a69f7c05a21c8a411564dce7074f1f28d2be9216b3d971c1fbfdf302b66c026e60144f477fa3d0a7856cc3067f877458193651d93931f400e5b6754dcb46f23eff8f2da4ffa3d0a7856cc3067f877458193651d93931f400e5b6754dcb46f23eff8f2da4fe4ce2b5c3e397dee48fcc29ddcba88c04a4dbbbe826dda621e31ea4bea551c1f62e5263bab3a84afdf96bbf73f27967d4e04f56d4fba73efc5685836bf156d6462e5263bab3a84afdf96bbf73f27967d4e04f56d4fba73efc5685836bf156d6455d93dba8ba64492c9bc5f7ca58c1b9b6198fc8505f7a6d63f344846e8b54c3bd88e53061abd52ed920a49108b5899d0dfadb515a3355a7bc2e27cb1a4d35a04d88e53061abd52ed920a49108b5899d0dfadb515a3355a7bc2e27cb1a4d35a04385bd2f3acb4edf0e6a7e62fbf11302890984c706b444f4b49ebb507b930022e80056babb140461b543b7d39da5cc705ba04c247da72a28eba5dda929c1d99e280056babb140461b543b7d39da5cc705ba04c247da72a28eba5dda929c1d99e2e0370f57830107a24e3d7f24b7ab2ced3c0917c7d240a354cc14353abb802b919e6ed30fecacaf1df6f4d09fe67c12e04c6a707c11f0b2c532c2413eb2a9cc4b9e6ed30fecacaf1df6f4d09fe67c12e04c6a707c11f0b2c532c2413eb2a9cc4ba82bfd2fa6fc156c443e4c77e32e6d2aec3d418008f6d060c5883617e52141a5240c0a1de69b29484ec7359a3aa90bf4591156da4c25bada8f1daa053feabd7c240c0a1de69b29484ec7359a3aa90bf4591156da4c25bada8f1daa053feabd7cd9e9fd0cfe46d13a79e5adeb96388f48dc652cf3ab3f8abb5962c7562550dbfdefc760ad20888226615bc74728e39990ec6b2bf754865fae1ca012f26a6e3e6aefc760ad20888226615bc74728e39990ec6b2bf754865fae1ca012f26a6e3e6a68eb54f7581af172c5c2db01aa47ad72e343db1f189970fbf84572b4bddcd3826c62811d1a4fcb816fcc37a8ddc623ca97f7b4c5a062aca62dca810464647adc6c62811d1a4fcb816fcc37a8ddc623ca97f7b4c5a062aca62dca810464647adcf6ed445ed537c9f856d8defe8b56505727737d0dc9348d0a877abedab4bdd8642732f822eb29ee5ff86d5efd54ee98f41afa0ab67d697959b9afec641edbfdda2732f822eb29ee5ff86d5efd54ee98f41afa0ab67d697959b9afec641edbfddaff5425eba1182fee7a6831baf22dfcf5ffcc2fe2e6b16d06ea88109b0f34bdb2d2caa4e60a1f0cf99a797d1ceecd8b48e2f133c0e68175a82109a0825008c581d2caa4e60a1f0cf99a797d1ceecd8b48e2f133c0e68175a82109a0825008c58168e787dabc411459550d561855d26cef39d422a2b53f8521c7ff1e2d0adac38e8895b2a19aac97c9ef912e95ae1c9d4ed9d19ab3bb09bd5ff54824d33a13fc9c8895b2a19aac97c9ef912e95ae1c9d4ed9d19ab3bb09bd5ff54824d33a13fc9c486423f2ee0c0eca79dcd2c8936ed813879b08f386d9f400901b7a621ea21238561dcb9e2ac6e3a5a2225a1e9c9858fafcb816a845653d0a58a81fa5a278dfec561dcb9e2ac6e3a5a2225a1e9c9858fafcb816a845653d0a58a81fa5a278dfecfb52c857b66741b5f6964c0e3755386f5f457037bf855f45ff9c0dc04c4ed40151d299121762d36612f9c243a2b345d5adc4368643273872508a847cb93cee00286431a5769aa166643d7e1385322d101fdb1b55c47318368c4454d8a31e8e75d61709ea224423c790d23069fe8ffb8551461e94a787bc5417a263e95f408c68e6171f924378c92bf5eed8af6d1bef9b6e35b4d37f2f744208e1b7630e29c8f6e6171f924378c92bf5eed8af6d1bef9b6e35b4d37f2f744208e1b7630e29c8f66c0645ec1c8d95c3e962a469e8073a03f830557f4548fbbd07d08ce9899fd6258376095bd03e28c7ef2a362766f74b16d8db0d56a9f4b19632886805f511262e8376095bd03e28c7ef2a362766f74b16d8db0d56a9f4b19632886805f511262ead4ac50ebf58294304e412cc0f1b12980988dd6edc414e4110029c0a1abbe96635a9ef096a4d2948555c7e6ae04c7cbef524ef1b14cf864214402f0ec53737f535a9ef096a4d2948555c7e6ae04c7cbef524ef1b14cf864214402f0ec53737f5d21c5930f21063ea78fea3b0f76dfb8fd92858d2a4a200064a52126a43dd1a994c2b1b71f227f55044a95fcdfc232329e8a5afc47f0b71abe9507593831228da4c2b1b71f227f55044a95fcdfc232329e8a5afc47f0b71abe9507593831228da2c8d0b93bb36edf31c1236b1b4d1c0008553868bd2fc9137570115b96b834f2e081f242cbd1a63e0631eb9f58453cc4b3db356c82cc3502ab86d375fe9bd61ce081f242cbd1a63e0631eb9f58453cc4b3db356c82cc3502ab86d375fe9bd61ce17196b37a189636d89f622e34395dd04faf4f5fffd85abe3a772fbe48b383eb668ebde642e95d8c546ee20a635cd2b0dd50d53b6ad3c06afadb93c7539a7351068ebde642e95d8c546ee20a635cd2b0dd50d53b6ad3c06afadb93c7539a73510c1786537ad2f6f02c30a0e795cb97af049efc7317045253dfd5e4366cf88f69b6f0293ad96fde53f74f3a5cb1d0c631da5b906ecf95eca946343b11ee954ba946f0293ad96fde53f74f3a5cb1d0c631da5b906ecf95eca946343b11ee954ba9485bba5c5e1007cd8c1ade5c0214bcc825396d2bbd02054e62a9f162104748b6436b62ba3f68bc31712c8254fb4c7eda056a221c820d20e4e4d3411320280667c36b62ba3f68bc31712c8254fb4c7eda056a221c820d20e4e4d3411320280667c17d59827cb8c05405d86b00bc6949316d179395e3556b3de90d1e94cf7d67c936b1cf8fd8824b0b63d605f7fa4b1c4337f7f3e77f45f522c36951f33fa6a9fcf6b1cf8fd8824b0b63d605f7fa4b1c4337f7f3e77f45f522c36951f33fa6a9fcf5230e071c3cdd02ed01e12376549e30de0ea9a5b6a1879f549ad24b919b23bfb2ba5aa6cc5bc7e817e3dcb291401fa1aad1227d59375cc880e6d613c4797a41c2ba5aa6cc5bc7e817e3dcb291401fa1aad1227d59375cc880e6d613c4797a41c3fcbfcfd65ff556cfaa3830cf5bd780d2a9c16ce22e62582a68edfde63cf4752b0c22555c158fec40f5dbd923e3facc238f42c660010f7bf2756e035d96327aeb0c22555c158fec40f5dbd923e3facc238f42c660010f7bf2756e035d96327ae3357196f3fa52433326a6626880e34964e00c5570aee50e9a0a0a7c6d86f6e4f107a4e3b47086e14cc89930c731d012156abbb0498dccd6bbd3f846dbdbcae04107a4e3b47086e14cc89930c731d012156abbb0498dccd6bbd3f846dbdbcae043aedaf3eb49769282daef1eaedfd4fa1c31fe5eebeff67fe2307c89dc2e2fd805cc1cfa6b69331aec5da6350a3430313e83ff67bcff115f767668b9d6e5a24485cc1cfa6b69331aec5da6350a3430313e83ff67bcff115f767668b9d6e5a2448b6c89889d61b0f8ef373c6f09530e80f16622a5d290dea678d90c72f909f2b1c3261a5a8bd1677b603933f80d80ef4eb12020a4ae44b37d2d0e1afc7e4d1498f3261a5a8bd1677b603933f80d80ef4eb12020a4ae44b37d2d0e1afc7e4d1498fcbba20e1f6d0879c7c4293446c371a9f79e7c90bf3c78a77a9b8fc72b18915ddf78e3625456ebae4ec3609ef5b3032f2c40fe3fea30a3b80207b79a08dbf50b8f78e3625456ebae4ec3609ef5b3032f2c40fe3fea30a3b80207b79a08dbf50b89134b91047d85b442898d59effe23e7e0cf4167ca341ae31119a731dbf880a7b368cc60fd3b63cfdd3ac7848a099227ebf56394d26563d2896c5798b31515d79368cc60fd3b63cfdd3ac7848a099227ebf56394d26563d2896c5798b31515d799ff32314f4f1fa074f206bbf7fdb851504e5313128636d73b4bf75b886e4a87d51e7542b197f9a6836bb7d53b503da9a58f55dbb1441a524438e9096f13d549051e7542b197f9a6836bb7d53b503da9a58f55dbb1441a524438e9096f13d5490ba0cac060269583523ca9506473a755203037c57d466a11aa89a30a5f6756f3d04eaddbef972135fbbb1e272a667d46dc8a8ed852d7ffb4fd77cceb4f7b2837e04eaddbef972135fbbb1e272a667d46dc8a8ed852d7ffb4fd77cceb4f7b2837e90f7d924c5fb7f018cd089a2d0a3a986c50243be15f9a7d54dbcbdd56dc2182aaf278aed375d8098a8a808f21097dc133b8c9890eefe1e8d47a80179495e4fafaf278aed375d8098a8a808f21097dc133b8c9890eefe1e8d47a80179495e4faf457e70c94d1aaa3b5b95a8258ae63af14c9fa8892b4466cdfc5f7def5b0aa0badc9418776b5c1211002b2d88b5c6ab5a645cde24806e60c34fd50e8a91483365d3d761bddffe0901b8d9494e86cca79ea7bb06e13d17308b9c6ef6aaff69c565fb47e50bb91f7c153828f2cfcea0ce81e5b3e27808b421edce167c5ebd6947380c4e0e757d871a12dacfa0fdc3b0bdb42eac5690d92597d56cb2d9a6c2715f55dc6cce9b697cf3df1eb95e7216056820827e0f4815944889a385929bd7f7b40f933161b864eb25c936e0ce09ad557f6db0af4d2fe3873af588e88ba123ae7cf8727afc2f15171dc93d3a2775266d726b6c663fe70f95e927a923e0127e7dae9f727afc2f15171dc93d3a2775266d726b6c663fe70f95e927a923e0127e7dae9fee735f518d0fc4dfec81f7aa3da1e052372ed4202c0da4eddd2587840beaecd7f5cd256bc63ab9cef5ea704af0762278384ef7d0109c7687fe4ee5f5fb12f8b5f5cd256bc63ab9cef5ea704af0762278384ef7d0109c7687fe4ee5f5fb12f8b5efeac019a4ce6a12d79d94404b9554e06c26a7b315ea20fcd385ca0210c03440f716573de68cdf12e9f73ed25f2b6719e4121f95f32c4d69fa52861388c865133a6e95d01c45e2e47c05df3c81073b895c97c1eb0e5b90ab175d6d9263fc81f206ad5ec2acd7b0055930cf0798ed16426820e50e424c6e63f29acfd3f8c876c406ad5ec2acd7b0055930cf0798ed16426820e50e424c6e63f29acfd3f8c876c4cee13633101e901a780feb48dfa7948b6cb008ea3d762fcf60382c84ca1ee06641fef94eaee6b784b08c1781c1588455fbc0472ab73e42f5a87f8c8af8f8b5f041fef94eaee6b784b08c1781c1588455fbc0472ab73e42f5a87f8c8af8f8b5f0619e2961dae5a641dce9adda0537f6b8e42a3511d66568ce1876b031053b0e79b4319829498ea2c86d66e358d08cb7a310698b7b06baafe605f3b7100f32e93bb4319829498ea2c86d66e358d08cb7a310698b7b06baafe605f3b7100f32e93bb9e5aef190fa5037320321273be3a2b5107979659b97c9cd8f1cd1e1cb30fcdfbf91453c477ecae9ba975f7187d3490c9826afff59269733c0d621ab4d810b31bf91453c477ecae9ba975f7187d3490c9826afff59269733c0d621ab4d810b31630033febf3db1fc51db17c1b2693ddecc8451ff30cc6b7186258aa456f3b4e4f2d619afbba427a55f292e7ffeba79c40a21ffef0a6112d3536e9b1d241b131bf2d619afbba427a55f292e7ffeba79c40a21ffef0a6112d3536e9b1d241b131bd67ddcb94700cef2439f11b0552eeac2a52c7264b985172c42aca8ffa2d0b61a8369477f6fe52d557dbe7bc92854d355aac2580792a63cca3eed1cc37eef089c8369477f6fe52d557dbe7bc92854d355aac2580792a63cca3eed1cc37eef089c92ae42c7539ea860aef4c698b13f4d219b518cd01b2bb6787c8e62f1c79e259e0206e6ead9ad75c38c24c513b4c72462488121f4c8f9c05a63abe40b95f532b70206e6ead9ad75c38c24c513b4c72462488121f4c8f9c05a63abe40b95f532b705932ad19e6d037171b9915c2d9ea62fb66d6bc68abf697eb074b822737947166efe7378ce10530db5d1f4a34e8ef2650d3e9b78365931b5dcae395b8af929156efe7378ce10530db5d1f4a34e8ef2650d3e9b78365931b5dcae395b8af92915382802ef1ced2b68f5381192075d080bfe9dd5cb3a09cb9eff5f79396e3c9bddf4c9783dfff38edc90876057bef82efbb641183cd36796f383e74fa590265d2df4c9783dfff38edc90876057bef82efbb641183cd36796f383e74fa590265d2d5aef62be9e2742e682bd7c27bbbd30318d9706ee7a8cbfbafd5d39cefd6b0377e17045d61970c74fd00f1acba63b02b2277afa46f6a8b4c7eda649db5de23627e17045d61970c74fd00f1acba63b02b2277afa46f6a8b4c7eda649db5de236277305db912ba9be369833aa1216ddec735e533a69cee9045e2d51282a54cc5a402e9e397d0812115749130bb66a3e202dab13413b652ace9ee99e65b490593a4df7da257a88c592c3a435a6517bedf769396478865c431274aafaece4e656b4ac5254230869b89ba5c9444180287021446ff050766f0401eb45e4a10efbf855c3559a6c92d61297a98141ba0017790b1f4d5d88e16d527e12df6a1d5591c9e0a4559a6c92d61297a98141ba0017790b1f4d5d88e16d527e12df6a1d5591c9e0a442a3d0ab59a8037583a5531a98e672df24ae1160f009fb3043811ce5c4cb9f0fc9daecc655c6388b6859860a70b3d1df67a051163bc6d5a358db5e16396f8694c9daecc655c6388b6859860a70b3d1df67a051163bc6d5a358db5e16396f86948095dd0885b5edec0430c576730d965246cc40512954db67967cdba4a275396a921cc1d176061fe05d93746ee30d30b5b95d5c159864bcc2c093ed6138c0115d921cc1d176061fe05d93746ee30d30b5b95d5c159864bcc2c093ed6138c0115d5f06f4afcfd3083ca9929c3d1396529da449ca7a204cadf036e78fa8b75b35b346edf33ebb8019605a2186df5ab0e30a4db2a76307406e779b2bc768ca0b0cd846edf33ebb8019605a2186df5ab0e30a4db2a76307406e779b2bc768ca0b0cd88aa8f5858227b3f827890cef5ec164b6c13a1ace025414681fa43d49a49a38bbec39a61c11faead11b6098f3a4bd40b13f6b3b83c7b6924d02ece546a23aa5d6ec39a61c11faead11b6098f3a4bd40b13f6b3b83c7b6924d02ece546a23aa5d6ebd9f897dc677944315c4613cc033278c6d9ec1d78541581ed1c2f0089e8ca107e0719158fec70ff51a799f757e84fdf88e3b86e25bb933c1cbd233fe228f2c47e0719158fec70ff51a799f757e84fdf88e3b86e25bb933c1cbd233fe228f2c463014e86607f52c044bc1394fb0deb18e00f650e1f6eb41caaead62f39f814c1e6afca31b4df75f301f2d72763318aef355c55169dcf0cfb02f93d0d27e106ffe6afca31b4df75f301f2d72763318aef355c55169dcf0cfb02f93d0d27e106ff8fa8bd9814ab18ac698c00b076277f686fc66be3ca5d4aee3d7ae08e388c7a63b9bc6c79318f41815730234e27148de13228f829854ca87941ba461459f078cfb9bc6c79318f41815730234e27148de13228f829854ca87941ba461459f078cf30ffc9f90ff0a39833f17c5d102a2e974de9985d39ad8c28d5ab7abe9734c8290a723df5ff94e0825f5fc4a4d069b046b07c3457e862561c9a8c8fa58bdcfe530a723df5ff94e0825f5fc4a4d069b046b07c3457e862561c9a8c8fa58bdcfe537143248621b97d934a8b32e898fe1146d525b0ff609ee2b2e78610b7692efa64c0de892a4106b65a7efb8907edac7f0766b77f25d69bdc89593d252add7ae960d74cf2bac90203773a2519196bc95c311d3d12ad7995b35490a989de2281dce66d732275d25135a56e7b445d7750df37b9ce8610cf07f3dc233c0044c9065dfa9c3011a50128fea4a18e4e5b6aaa274619f907f6d16f7ff317fedf2d4bb596bf9c3011a50128fea4a18e4e5b6aaa274619f907f6d16f7ff317fedf2d4bb596bf4fbe0b81745f53d845ecb8d78066e853ab0460cf5a3ba22beff623ba569ccc5ddf9e84b9fbb3416e408935b613662e2158e44f73f442145e7d80332a6e3706cbdf9e84b9fbb3416e408935b613662e2158e44f73f442145e7d80332a6e3706cb43b9b10d6c29b2d21f148fdb37d15a59d299431109d81fe1333387497f437fbb5927124538a14ef2db72d297c3798215390ee9eb796b8a25074d8884358b9ee95927124538a14ef2db72d297c3798215390ee9eb796b8a25074d8884358b9ee9ba90be3fe87bc3c8cd98f80a3c59434df11cbda89674ed9ffb4352a846d80e336fcae01a4660e77774a718e904255cc15a02a372341ebd9300573d12f36120483ee6c938dbf52f7e8179b05cffd236476d341f20edb4345570006e7ab86cee51dcb18c267f41a837ec18644bd8311ef6c02e1290d68561a8c556b53d16aa5eaf383a784ff7ea1a6463549235c9211ccafd90e674c5e3c53ac72a4844e6082f84383a784ff7ea1a6463549235c9211ccafd90e674c5e3c53ac72a4844e6082f84cc66de43ba28c3b6bce428d0d3dc3eb7638d754de2705500ef73c30fdc42ed17e054405628ad49382716ded4cd981406a48d52b39e8bdcb5e75c15636c2a6ce80bd42f9dd9e8f7cb6ece6fdafc9e25496f442b6b4c9372b8fedfc1c06bb061f89b0d07cbcc301575215e31a6880e1fe0e55b27c3080ab2fda91f0b52316f5005d47a42e81b695d0e2ec16e2d65bbfb5ef689773702a4595ba3da8a727c5a2d41d47a42e81b695d0e2ec16e2d65bbfb5ef689773702a4595ba3da8a727c5a2d41dcc664ce7ef2bc74c3770043f1a745a8bc2f6880d5ab653ff6a6c8890edc859fe4508ce2dfffd439fddc9a8888831d856f651f6d27bfad0735d957388a5cca13e4508ce2dfffd439fddc9a8888831d856f651f6d27bfad0735d957388a5cca130be63bf8d706def51c095e558eddcddc623a350c428720afab209f893b3dd8516643d20986712401aa728e9c68c0bb1a999c25afe0ed0a4a06fd1d84a189b2d15afcba47558f15c65c726ea4a2bf9db430bb8c3186d6dbaad4868fc61da543a1b30f8c26218e05fdfd57df513a603d906568634d704016ef0e017c81440c01b6b47c6bf78d1e58550063403202868b3d98fba8d7098c99913cb42721a5ce5b10b47c6bf78d1e58550063403202868b3d98fba8d7098c99913cb42721a5ce5b106510604cd756764f4cb8f65f2747f8e77cbec104709ba68844f048377e01ac8d9e1882fb18ebb21e1da98a2f35db5991ad99dcaaa01feaafdad308f39269a5439e1882fb18ebb21e1da98a2f35db5991ad99dcaaa01feaafdad308f39269a543fcbc850164551136ec7b8927627e9990ca908de26b7c7ad632843c9bfbccafd55e877b3891c6aa8a53182a37b46ad4b3546e349cb3a0fc18fdbc1b49f62ff12e26817e607f8c80d02444a2f49598a2074ad077790b1c5090d03d0f9c15c7801e18d9cde951da7aa69eb05f4251a6aa56d61e23c41b5507298753fbc86e9762a6f3026928b6746af955e5fbf1744e87f30002a739fd19bd24e079a065c8d9aa9df3026928b6746af955e5fbf1744e87f30002a739fd19bd24e079a065c8d9aa9dc9348da34b84d7c349a2ce270d56b638fe0c321f166372f50202fcf5474787f1c17ebd42ed4f9c0d222de9d6cfff8b688d1f38cf8e9ff91105f5e26ed9779455c17ebd42ed4f9c0d222de9d6cfff8b688d1f38cf8e9ff91105f5e26ed9779455c6c05152b92f9d8ecf1d6d8b937a8cc6ee202015ba48d569e77f51dc36d58126469d89ec877cc1df6f7dc3200cff6435901f5a9f7cdfee3a7f8032a9b8d36f80469d89ec877cc1df6f7dc3200cff6435901f5a9f7cdfee3a7f8032a9b8d36f80e581b57721541d107525339494d9ad32504037008e64cd2dd1140ee75a0b7a423c1bd29d2a37c687f661c4aaea24bf9c86754faac12b58030bcd2a9026692b403c1bd29d2a37c687f661c4aaea24bf9c86754faac12b58030bcd2a9026692b407857b46edb72c324d7fae8256481277a55ad2828ab329b6030ab5dfdf5d719e9f2c1897e746a2df83bad1c911564b94895ecd70e6ae67d60cef59a10ef06a777f2c1897e746a2df83bad1c911564b94895ecd70e6ae67d60cef59a10ef06a777cd8c432d5ea569a60f89964be9d7dca702bfa47006e42dcbb37d7fc757452f00556d3cb1eeb5ef845843e89e84eebfdbe93c76b4f0fe66a5bba872c2ec5991b5556d3cb1eeb5ef845843e89e84eebfdbe93c76b4f0fe66a5bba872c2ec5991b52f0698f40f31282a93fe61a57e532ce7e1e3fe502440c4ac0ca88c20f5543ac59a2db7293d52bd0b2ee95508270500fe84df46d030d53a5202e239be646276919a2db7293d52bd0b2ee95508270500fe84df46d030d53a5202e239be64627691795c3da3bb65328040fbd994b1c231a4db9ae19de546de5c46c93ebc15eaf498472bcfe50c18eb1d24245abd32c34b7d8cb5a371017e9e0ddceca6972356caf1472bcfe50c18eb1d24245abd32c34b7d8cb5a371017e9e0ddceca6972356caf1c8577197ef701ede7cb3f75bed8241f46ce23fbddfe14ff91173a3856d41377c1393f43d4b562521891f0ce32b12ad0c91f3451cc4e1cc14c38db23b1f68fb501393f43d4b562521891f0ce32b12ad0c91f3451cc4e1cc14c38db23b1f68fb50074601a2ad94b62e9d3a6d7083f038f86aeab14b876033181f7f14c2ffb15e6dfb0fd7722a733d976ff94a521fd1103cb27c2deedd6bd4b4022073e7fa8c3937fb0fd7722a733d976ff94a521fd1103cb27c2deedd6bd4b4022073e7fa8c3937d6fbd6489852f0921f2bc567262bcd70a9b3f530392d4c85aeaf9e3c5d6ad12dc350e2b7c371362d98d720592509568ff92ee2fad16dbd6d1611f65099a63880c350e2b7c371362d98d720592509568ff92ee2fad16dbd6d1611f65099a63880d06a866aa9130195b49076d238fc12238d45ef87160968a7c393954a39186fd74e7241b5839cb9e16796347bbe5fe03b66929f44675f44981affa26891e6a01f4e7241b5839cb9e16796347bbe5fe03b66929f44675f44981affa26891e6a01f5a91870735143b475273250e0795dc18c16bdc8dfbe606cc367040edc8945384a087c9d8d10c63a67e8ded38bec57dd89e455b667121681c395e5848de7ef7d3a087c9d8d10c63a67e8ded38bec57dd89e455b667121681c395e5848de7ef7d310d1220892bbc149276aeb85fca3d8e56a837a266cc608763ba1293f8f8d4dad349ed13fb4645bfb504c2b4ef31d4514b8d36f498b6dd08f111722b46690b6f8349ed13fb4645bfb504c2b4ef31d4514b8d36f498b6dd08f111722b46690b6f8b7795007d8ce9ea6952f164a959e2ac8f2343fc753a96ee3b1ea39f03e8b67af56fdcb341ba7243f251b4124f2de114ba9c7946b08591c3e95cceb2f214b3bef56fdcb341ba7243f251b4124f2de114ba9c7946b08591c3e95cceb2f214b3befa52d7241272cf23524254a02a5a555e70ceaa016b7b7e16dc2c3f34f6b8dd084e5e24d164e09475ca9726077a2e460b40290e8f4439c3f01876d706494b97f1ce5e24d164e09475ca9726077a2e460b40290e8f4439c3f01876d706494b97f1c0e4e561b374c55c5ab19420fe1eed1a3e0546c5f0e698a57aeacdacdba8bd9c24d452ad2e8f9f491c2eb96c8e01dfc9a79db93d2cc7081618a6c04f1ae39bbef4d452ad2e8f9f491c2eb96c8e01dfc9a79db93d2cc7081618a6c04f1ae39bbef7ad6f949d22369c42d11e3b5669166bf09cdb217b718d43cde46d71bd26684eef9dc059391f1be2a878dcf692975d61639485912f46b46959e17854efb2ae671f9dc059391f1be2a878dcf692975d61639485912f46b46959e17854efb2ae671b524dad764c4116d1f633df38167f4aa22bfbafc1bbc8000903baf9e5790c732fc16ff6b26b20918e039be07e5dad9680c6ca5334e656222445c638ffa45dd2ffc16ff6b26b20918e039be07e5dad9680c6ca5334e656222445c638ffa45dd2f1a1bd5cee0b5c12a74013daeaacdad9fb22b3d425d239ec98cc329a9d96c14fc561c1b2bcddb351d01fd4efdb84a785e69ebb4da34745ff5dfef82ae68c29374561c1b2bcddb351d01fd4efdb84a785e69ebb4da34745ff5dfef82ae68c293744063c9f643fc8e35459eee5b99c76ecbe3438226a0fbb113073b4b390dd48f44ed961055634936bfc5d6be07eb9ca0930fac29d677912bccf87304d917d1a2e4ed961055634936bfc5d6be07eb9ca0930fac29d677912bccf87304d917d1a2e4a6fdf233344a7e1282a2cd4e1ac5552994fb5bcb572243472d3ada53ecf6457951d1137b777395c7ed7c642ea7220a4a90e961beb5453d703cd2871bc0c7d6e151d1137b777395c7ed7c642ea7220a4a90e961beb5453d703cd2871bc0c7d6e1f5374c060fbaabaff6ea85117fafd8fc35ee46883cf01636d2c5788e9b94066c11f1764c8a304bc696568bbba7acd6d5be93c65aa6f1b1acf4f284a267e8230b11f1764c8a304bc696568bbba7acd6d5be93c65aa6f1b1acf4f284a267e8230beb3a49277e01c18d20656b4f512c41eeee2ab8d491677abe7cc1d34c27a5569b149eba04a3a2682567633dcfac7bb5dc249a8df69e9a0d45fadbd5abfbc3e0f1149eba04a3a2682567633dcfac7bb5dc249a8df69e9a0d45fadbd5abfbc3e0f12f765cbebebb2488f668731033722124ac0a9677eafdbe97e5b2e679572d6bf124e1f755b9f1d554c17b05af67133a2f322532d2e6665bd1cfa995c2f672505f534fb698381b671ba878c1ddd3ea43e1b4d789ecc2b61fb8d83e4b9ddcaf770698f1552f6f56d4c03394a8266f4ee1ec05a16348a76137dc63c44d686a986b74dbed1cece06ad61ca47b8dfc7da9b0c3c2a906b2d9b85df2614d7d567507f6ebe06bbed71999dabf10f0231fd99894f3179230e0e001ec774f8c845443ae0e9467a38f072c2e0f704a1c9ed35412c9bbd9d3850a7566725e805f4f3ebe376b83a73e7e2eee9d8e757c27bc1bbf28130971d2fbd760a5102cd783ae9bab1792b16406f18534e75052f4af918c18739361489d8b9cb8b42541f30b26cd71e2debac5633ba10c74cbc9b4a9db2ea889ff0e0fee02ede0eb188b768cce315d9329087c2672724514b0c428dee4317dbb237e3e3edd9beebc17d265f4549c4c8e68022dbf780a845672936f5c0815a0df813eeaea4afb9393e89963b8240284e0a2af56cd11cb2e66b845d4ded0424c2f89b17180b8aa7cf1a80492a57689d2bea41c37916a93f26c2f91bac6fe7d5060c090f4040c88346151f8221e6532a044c41e2991581012b824fdfe07050125cb7bc837f611c287387c6ec5910f44106d516dfd4bd87073e5cce2f0f20e8dc7e34540d18ce0527dc298b9758a92c1d75f93636bc952416bac9d69e3569d7889a6b971f37b017032a867e8ab0674d4013fb3774cfe0f79467608c5ba2ac2ce45deac2bbcce467edc2543c20376f12a6e566137e04c7c716a26bd9f647046dcf77b591f13a10c54f10dabe851d6d7889e18a6402f0c51fd0e8e579e8b86518b71abffec8a6bf24f72df9cb416924db685e9dcd1ed87b833d75bf1eddcf778c83a4e5ff2663d522d1d4b46a9a8bfd36b748c1be8f56e01f214ee39149d619e776c2c08e2565bbdeb92c2d4eb925beb0bfa37b150767f821f94139f6933b0bc62422000e71b07399b7086bae1b3529ddab8f7d12487895f661b9946135f20cf902a904c1468e623440d5e59e4df655104c0b68cda0b0f68e0e98920d72b0768860219f4f09cc19e01ace017d69a937232f5c4600b356d2a7c31fe40b7035cd6de6f0322a4750bff20b6bceb50d8d5e92628d2441b0b9e97e7abe22f07b814c9caf9a6ea6b5944e6cd72898866e8a031ea8571937680ea01c4871547ed6e07f48fdf8822ecf60b4761bc2278204687b5060dcec0b39c40b7f279304c49dfb7e0891af35790bcfe8ac099a457dd21598f7eaf66078bafa0aef6fef227a395765871532ba78af9afe7a0c60c72bb576ed4c82b5bf830b4fd8ccc4c697ca7971cf1843cffeea344556e7b77c05296dbeb1e98c97711d67044a9f246db893263ef924d733921d63b72a45e0bc7531d91afa1358d664c52e6a451d5ee815d4802d9060f3bc455cb80c32f0cc68c47cdde285a71d818c09ddc0c7ac2a32a4027f6d3d735047fd281ce197b931a8837f8ad5f5b1772c0baf970fc00b44df4c6c990e6c5aa84bd3ae455e694fd4dbf8b01a1f2f9688bd2c5f002ab5f3ec38157cb4265ff5ffb7ef96aeeeb5a4cdfe266f7594c2c579c508ec8607d7ea74d7b28c7db817598cf1967e8e9ffd93d1f7d4727292c4bfbde148fc8c6f3b3102ab5666f5b06e883efce9db1b0ab66d4119a08216739200d911b0dbfd248dfac7fd6dab1ef421b84a4e6a5e5d6251613ecb34f9e3e64f8547ff7e9dc185099ae1347cae09791d38a4acb6526bd79c02de4494185fa6b901e57b16a503253b19ebe4ff0fd0c19e0040153405aef1174db64bba698f0b36207f9a41c7beee039c78b32ebf6b40c7eff7fca4f3b1f465b142abf7a30b9bb620314e47a3087f1fd763623d0cb5345177ca62ec568c706bde9bc92a90faef54e5f75c3ca05875bb38ab69467152084ead9a45df1ba57222ebd392cdb99e18f0a98c2e8a1746982588ffc6f9fb19bb321ceda6873bfc7e07c609c5ec16ffc9eb25ccaf4fb22ce46db419fd01b0bb5c8339007f43181ae1c7de62f2547e2672bb6b615f0839c38d186f15bef84190788185250957bb2c6be3b78503421789283ac7527af1696170220304864924129067e37eacaf8278afa96b66f6f411950b19babd65424521c57695f57a56091502fc6beb29e9ec68ddba0b65c32fc3a48bcc1c0469f743ac009a3e9b68fbe75bfa2de95d06a4e41cf5429a0444e0516ccd52adddf750ff56497cab872fc234320d22c5da3e7e6388d3bcb92e3d3f0ab4226a4b4d086a969ecc5506b6ffeeabc8b506f3e61233cc0f368dd70618e13e362c894745389182522308ad8bb4b33befde198f70bb74607f9678ff59c86aad5fcd8b4e304acf810531f0096fd0e7b4a111065694e0a3de7f39e900ee362d53b4425d0987efd3e1f724b6b3ac0bfa37a22ca4498b7da0048904c780b86f9c9687caac9101ecb98a594fc411ee3f4eecb5d273461751bd7ca74d8f41341f62f4b162c547c02b281952a3edd0983f8ec32deb9a83e7b851769690b89a243a0cca92515aaeae8abdebc77179c13c0e323bf3b0f865b5e8ea218c40b9e056946548d590c1078488ac17417224751b066d97e8107e9838286bd5184a2ece1644951f6ede8fa3160ed23407da3f884a43a1de91d2377d118f5df0b238d1a62c3c9389f9b74981f8fcaededae5bdfddedf6924ed453e07d2a5ab7cb9d1dc7cc550ab355cb0de061705c9951ee5ba5db3b6722a0e2fbe2560ebc1c883e72328ef9c3b4da1c7c5d1cc649bce3ba3648277040cbefd390d06d3c49e630c480d48f42edd98e66b3247260d9cf6ac8204cfd372ee45f79cb744ed0565bc8d486716115a546f48477c0719b8a6bb95c3d23e5cf07100c603af3ac72d9010f0f1144e6895272fd7989421f89c31d175c3d23e5cf07100c603af3ac72d9010f0f1144e6895272fd7989421f89c31d17c7b09f90e66dea194ad63dc02c6425dff977d16f1f21a157b7475905c219a707d4669b915110882bef31d5c44785b3e59667ba017d9f9c2016262008fd237921d4669b915110882bef31d5c44785b3e59667ba017d9f9c2016262008fd237921166856e9e03be03f90e94aa6ff6f9cb053ed6af5f00c27e2f26a0967b7c7826abe83ccef157548acaa6ce62caa132a2412aa085f9ab4011a405c17c0fa9a02e7be83ccef157548acaa6ce62caa132a2412aa085f9ab4011a405c17c0fa9a02e7480236ed8f7b407967a66936a7971547b096c1bb3f3ebd22cefda0346b1a48095e0822c4641046ddd0f1da4b1ff31584e4db3af9533f8f7de1ead1a01e3382eb5e0822c4641046ddd0f1da4b1ff31584e4db3af9533f8f7de1ead1a01e3382ebdee9cb259f380ac646e425e2894245ce2c81677b13f0383898062c10619d7a6f0b2012b3dfb2f75b878d936b41c755ec88677272edae78e7bb8f7735407c5bbc0b2012b3dfb2f75b878d936b41c755ec88677272edae78e7bb8f7735407c5bbc1eb1365e99ef32efe290700d0c13e9f4221bf3f1458700e3740f5f6901848df64ee272a1871ce39209a8790a3e3a78d20bb9adedeb029809fc5f27799e338ba44ee272a1871ce39209a8790a3e3a78d20bb9adedeb029809fc5f27799e338ba4836cdb388117cf81e78d9fa2a141cca1b14b0179733322e710067749a1b16fe9f1ae944334662204cc2f90ef72f6aceb011a7b9f547d6727e2d8cb41645699dff1ae944334662204cc2f90ef72f6aceb011a7b9f547d6727e2d8cb41645699dfc1a08feb3ab9c154efeec2e83ad04ca349fb17775e771f2aa2018aac5be8973829cb9c455be98e14751fa0a37ee199d025bbe0df4d35ad9965933ef2c7813ade0df8d53248ad83108fcde2ffa300dda8c5d4837ec0dce70492e22155a717e64b4c77972812cb5ec0a72afbce3e1d618c27ef7b239329c5c952c2bcbe77dba5dd7a1c26dfe2ca2deac4fbc144ea1fde7eecea8c9287a2c5a8d60230b2a3f8361b7a1c26dfe2ca2deac4fbc144ea1fde7eecea8c9287a2c5a8d60230b2a3f8361b02f3669268dac3d1ebfd116cb120725a309ab7df8df5c9897149d3e08f60c5237ba42fd16fa1e3cf2164255282613161582db1bf0952713a8c1ccf9ccb4d6fb87ba42fd16fa1e3cf2164255282613161582db1bf0952713a8c1ccf9ccb4d6fb8b1510e631db2a32434e2ff174538abab299498b8cfaa83b1905f9af88eff631010d31d9fb96f6bb51ba8b196eb8a982b2041d623c2df4cc8ef2e8b09b70e575110d31d9fb96f6bb51ba8b196eb8a982b2041d623c2df4cc8ef2e8b09b70e5751b1a55010903b5342be407c8b355ff12fe76a9750798ff004967348635587c03e8d7c0e96995208047ef2fbc3bd2f12ca342e1b5ac8aeb2d051f60ea9a31dda4ef4353e351bd941e44dbe6c8b538a4f3ff32e0e4fa3be06bf46f4691eef4411e456be10d8866e71d9a77a47ea00bb612ac7506844316ce7eb425b707284b177a5d8e91706ed1f58b7eab7c234148857d40e0098f4630f151ba56567263a45f00cd8e91706ed1f58b7eab7c234148857d40e0098f4630f151ba56567263a45f00c43a9c5c485b19a39650a1e27d109187c377dcf54adf5160df248006ac06a2f3a4658f2020d299ed05cc50b5431d206d29a6d034c2d738f69a3b41da88fb4f261f4f95a5496a82bb65b06121609ff4f8bf95345773e8958a332ecef97b58244e08d62882c8fd2693e2d65445eb914fb403aace59f89bc768ac2235f287ce329267a52f3a05e508fb89eb97f14654a69456dcbf854894c972ca8c61cb67847f5780192ed6669a5ae89312d25548797ad600115950853d9b315dc221fd318306c89311545cf2ba070ca15e648d7d83e422644e5b7d7bf9a7a43742b425a38fd6e8f72286163820bddb7f54ea78f600a070d106fe161ad7f529ecb9667e97526c66672286163820bddb7f54ea78f600a070d106fe161ad7f529ecb9667e97526c666d500e8eba14937867dd7bf146a38ab2073ba0f0d9328b4774efd1218d07cb09a3ca8066ec401ad4da092ce8db4274de67c74b202fecf6031c820369ba98baeed3ca8066ec401ad4da092ce8db4274de67c74b202fecf6031c820369ba98baeedf01c872ef5c57cec08884b5cb174643d35c4b13ec624a1ac62e06dc8db12fddce3ac708e6df10bcca56d8bfe20a7f2fe450e601eddf30a5ecdbfb8feafe42fcde3ac708e6df10bcca56d8bfe20a7f2fe450e601eddf30a5ecdbfb8feafe42fcdbaba8cafb48dd9181a0e1f7b0f20b585ce2925e8f347e00b87407a256bb1666337d8fbd7703271c1779628a2319eff3477510160d17684d1e96dd3b3482adb6137d8fbd7703271c1779628a2319eff3477510160d17684d1e96dd3b3482adb617da7b4dd82f207282a704694896854ee8023b743b097886d3b887bf643301bc6d06ae8c1e6f3b2f7566e3e9bf472ab28c685db2ff8cb26f1d1eb0da0dd030b43d06ae8c1e6f3b2f7566e3e9bf472ab28c685db2ff8cb26f1d1eb0da0dd030b4338e0f8279265f3201011ec9f96c2d4d64eda98f69c61634ec5dfc1701b6c8120c6d000f4b0faded0451835b659f2f4f4e931a23bf41c7fcb6892379001301c8ab57568dcc29801d03ab9c19cb9c65303b8893f6d42bebf7fc3215b44564667164b7c174d8f45ed73846ca0db15b7143450ac3be5e89bd77001992bbef38e0509aca6f9f262690c47f2e15782fc02eebfdb346d86ae1712c9648c3c7b952b5651f9c6f05961cc39075ced0857e4a9374031b919c9f8a757a6f01c65e8de4962115482e872f36319f289c47a4ee455246829ab793210839d730b4616bf0d4cbde440f781d686d87c600756332d355ecc4e93f44727ad643c82831588bddd58d50340f781d686d87c600756332d355ecc4e93f44727ad643c82831588bddd58d50321ab5dd32a0e5bbdd07ee1607f55af77ae601c280c86353f7cf000f3c02d5ef0191d31daf1d5e618941b796e5f846d50c18968a7e1e81b7cdb4383e18d350983191d31daf1d5e618941b796e5f846d50c18968a7e1e81b7cdb4383e18d350983b6f3c628839ffe7fd72569dd6ca2210e18edae3e180002747ea011b76b7ec0efd7a99341aace7eafd391cec24c620b6ca0b22bad7bd19f1ef210beb1f26ec57fd7a99341aace7eafd391cec24c620b6ca0b22bad7bd19f1ef210beb1f26ec57fac59070562396b4578e5d6346f8fffac017c5a4883e4ebc46a4e8a47af229318604414297cc7fb525c2fb41f94b247e6f6e5ca63c143c9e5a463e406ff17f2cc604414297cc7fb525c2fb41f94b247e6f6e5ca63c143c9e5a463e406ff17f2cc99d9426ba65a3b233ec0fd550d1d5900bdcbf52e48277a3af6726dc1863152457bea0302859cdfc8c210be1a90535453df8cfd15167e6bc1acaed0381d126b3e7bea0302859cdfc8c210be1a90535453df8cfd15167e6bc1acaed0381d126b3e9b4e34639f2a9dd24ae35bf7c73857a1f6c435cf6f674530ef93075c56fd16c8b6c856eaee4c412c725686423f20ec672f1eed982b1ebf3e0357a01b0090355db6c856eaee4c412c725686423f20ec672f1eed982b1ebf3e0357a01b0090355d5dd62af84d36d3d69658f54046091225ed1f7caed32b089841ae191ac61d4ac2b9851bd2686619d0d9a27a5b6e3199b47af89aad75f92f416801208199eb3b77b9851bd2686619d0d9a27a5b6e3199b47af89aad75f92f416801208199eb3b77c62017467bde0b74e2621954cd14891b1e0cf4834593f0bc686682806f135e8d385d13fa958be06a1aba9e2200b6c7ededd87cb08a9b629cd313bdcef4846171b530fbf6a228dc625db9f6804f9af7262f56142962882a8e77638d03045cd2a1667ff587fd75ce246e41cd3e9089342723d375c7589342500cc56fd8314dcbcfc05f635efd678d05c87047bbd7b2c76d1327cff065d09d82a7e82347feadc6e6c05f635efd678d05c87047bbd7b2c76d1327cff065d09d82a7e82347feadc6e6ec4b7d6b75921fe75d194badf438194806c53a2817ac0739d83c246104f4569f64f708e49fbf0102691e5cb96eb1f7404bdd31d6779f7850750a0f3e216cdb5d64f708e49fbf0102691e5cb96eb1f7404bdd31d6779f7850750a0f3e216cdb5dff2ea62046a81f9f341fd3ab79c80d5092fd94d66b3f001aac67cda5ef16b1498afa7b7a4d72224c8d47d2ff57e31cf380eb8e929283b752ac8c77888a68f5fc887e0d0735abc926675e5b561c0675e1adb1fba80efe58dbc8981047730c71b764470ead5f6f634e5ce28e90dcd248d85f4ed9167143ba9455cc620c68e6c79e3384dfbd4038ce318f80822ed4c594bddf839ed0dab977e0ee41d54fd2653eb63384dfbd4038ce318f80822ed4c594bddf839ed0dab977e0ee41d54fd2653eb61d1c0f6a308e5a33c32ea543cebc40abac39a949a19ceb83dfef432ee484b8fd795a81936e31c5c25cf9e88d762fde072492e81bb873b3911869b0b925f457b2795a81936e31c5c25cf9e88d762fde072492e81bb873b3911869b0b925f457b292fb3fc61ed8c48fb4ab42abfe16829f4a73892ed2a0c95ee3f04da375c85f19fca5da936ad93729f021260f80e91c746b748f52a4ddf2db6af5427a1ade9dc7c853c7e6d39253fe8cc8048d55d20aa991c529c8699f98c7456c839c358da34c657d1fdd8eef6bc6f94727b017f31dde6c03c6ca0ccec1b788e22643ea4ea399e795edea2d3669e41b83c3d005ed738cd8177567b893e0ec9f4e04b89edc0616e795edea2d3669e41b83c3d005ed738cd8177567b893e0ec9f4e04b89edc0616799e1e289d62acd56e1ff7b3862ee3c1240bf7a01f1cb29973896abeb9fba620a9bda2d7958be75c9aac90e351ba2f4f9565540b58fec9d272dd7851e5441031a9bda2d7958be75c9aac90e351ba2f4f9565540b58fec9d272dd7851e544103179309a7715513e1fe25d6b9b370b001499493be36d902c991bab105ed97c7f8cab47205bc0bf7f8fe741eb24aa06f1ff36954db3bb6ed5125082b35eb77e1231ab47205bc0bf7f8fe741eb24aa06f1ff36954db3bb6ed5125082b35eb77e1231b14965f2cec24207a419da9f09f9772a323e7e60b17727b0de5801eb328f228bbac9d98592245b5eb8abfae38cece05504a754a8cfe058e1f1ff374df2e6ef30bac9d98592245b5eb8abfae38cece05504a754a8cfe058e1f1ff374df2e6ef30dd42478db9ced744f7145eef727eb730c77983d85cbc472dfa8bb8e9dd6aa9bbe8480e96af56c5d75891bfea7a073f46592de3046ffb70945198298979dfba9fb1387a16b673bef04414660e66957c53a7a3b3ad7e7de2dbe30e2599b45a19ae9091e8ae7d5ba3f20f1ef7a1977fbaa761462308165cd9a8e34df2ffd6fe011aba0a1b2783bb70161dfe0efb220d6f995675c751588fe77e66bdeffc33574bf7ba0a1b2783bb70161dfe0efb220d6f995675c751588fe77e66bdeffc33574bf7b05078f11aa5fa7377500845e5747d1bde7b85bc6dd498e43cd43b0d6109287add43c76d7335b1c39f6512bcf831615412820a253e63676ceb63c883ddc6a2b5dd43c76d7335b1c39f6512bcf831615412820a253e63676ceb63c883ddc6a2b55ac32542f83d4cb8ba3271c16229c051df7e9f2e32f58c19cff4409c7728930816273253869bea447e60865e889036715c8f0ab6b1678b9edd0caae0cc5aa8fe16273253869bea447e60865e889036715c8f0ab6b1678b9edd0caae0cc5aa8fedfb6997ff503a574034105036d7e4a0c4d1d3880819f4ecb04f2abc213b8edf88ad86a7db975463d720fe26ad28d1f491d93e252e969279df304ead651d8aa3f8ad86a7db975463d720fe26ad28d1f491d93e252e969279df304ead651d8aa3faf8f0c25c617c7583c2d13e44121c6270b4593b79f0dafc17bd456c6c8139c6cd579c55c58f43e1ba81532b9198fd4c86b7f5d6ca140fb792020df446a4b80e7d579c55c58f43e1ba81532b9198fd4c86b7f5d6ca140fb792020df446a4b80e7ff79aeb053fb4f0c5ce8e744965995ff148406f1283cc1fc03f96f0721bceb586fc26580ea50bf500bc920b7490361d514b9028fc9c19f7d2b235c8ef31dc2526fc26580ea50bf500bc920b7490361d514b9028fc9c19f7d2b235c8ef31dc252b285bda220b0cfe7bb107db807ca4d1df360ed0ffe7e969e1942ca94cb9783ee77f5677bd220ba9e6f0f870f650f926d5d523799207c5d3f9d223003a07b8ae177f5677bd220ba9e6f0f870f650f926d5d523799207c5d3f9d223003a07b8ae17589adc739a5578f88cabb76c48199b261be8b02bf4c7c6590a14ed0b76f16f5b5efceb00d12b02ab8cc4b50452b041ec03296286dca0f69250528eb881ebeb1b5efceb00d12b02ab8cc4b50452b041ec03296286dca0f69250528eb881ebeb14973f9d59a90549977a7986e4ad360ffd3617a5fbc50f55c7ed5978fbe4ddbb4c06b257e5bf25c8f493fd26c592e2d5b40e9ec23b9d49fd100401b85f2c475c0c06b257e5bf25c8f493fd26c592e2d5b40e9ec23b9d49fd100401b85f2c475c06c1f152628e47eb5e7c05da42fead492c53026e4ae0e1358e0761d04f94d2dc729abff6ccab7308f23e7299379c9ea83af8815cfd22ab4837e7ed529e472ce4429abff6ccab7308f23e7299379c9ea83af8815cfd22ab4837e7ed529e472ce441bba8e97b04ab9b4a542cce0a5fc74d844665e58881df7a66b760329ff8fb7f678fb88f87870cbd0d48ac72a3ad048da57b4bdc5ba9bb82d7e554bd739d7f0e978fb88f87870cbd0d48ac72a3ad048da57b4bdc5ba9bb82d7e554bd739d7f0e97e4eb7b4e26ea4bdc22b0974cd3c6c7ed3d2e0c4e4c0533aed754cb035e996e99c0f52481ab91717bb3eda86f6df7c81d9839d7576cc691f25224222e0f7ad969c0f52481ab91717bb3eda86f6df7c81d9839d7576cc691f25224222e0f7ad96476b5a2b2b5400a69a33f0482c4e3842e5af5ae46f08c87144ec345dcc623e04a01cdcfd10d6c55abb9f58f26f0ae3fc03b3e8e8bf8f753e340392063b4c72a5a01cdcfd10d6c55abb9f58f26f0ae3fc03b3e8e8bf8f753e340392063b4c72a548bac29bbe1c97fe1b9266142fde731f8208cd8e35c321556c8ad0fb67ac62966f6e201fd9e30d00e7d8a08b7a15f57d508cbf466eb20c15ef9be5a56f18e3636f6e201fd9e30d00e7d8a08b7a15f57d508cbf466eb20c15ef9be5a56f18e363bf1f8ee3b6a1172c7558e7becf782610250b52606f7593c8613a84ef8f4a7624d187e67de448d17185a78b95a23308814992c055571e02eaed07b9b8ca9e5ad1d187e67de448d17185a78b95a23308814992c055571e02eaed07b9b8ca9e5ad16c76e1988f390dde6d30ef4a6d83cf90da0c5d52d7d89fe700df004a2edb1f667dbd5e93b059e17e337e30dfb78586b7ea737238afbf426c58cbe138795a8e997dbd5e93b059e17e337e30dfb78586b7ea737238afbf426c58cbe138795a8e996df35bbc31a6c77217ca8e294897975e8c1713fd19de5cb4db126dcd5c65f6e06453d35b244f6aa8c9cfad43a7f3685b7bd46d3ee4b40d3c00913d4637e66c2b6453d35b244f6aa8c9cfad43a7f3685b7bd46d3ee4b40d3c00913d4637e66c2b83ba0a07d677a7df1985004b35df2d20e1a90e524ab6f296d4869fcc15759ffc10b3a70d0b3bbabbe050b26e411ef6b9aa8fd024e9d56c3523284f82af30f92f36456452d00d96d71bfd5e4e149b860a43f327776fe8546c25b334b4011988b73b91c59cf3bfdaa3423da31d1bb7e8d13ed69a3c3c04d202c08004494879bd733d79e7ff3e21b730ca9ffc24f052d9b3637e85bcb250e1a218186640ef8d9892a210bdbc7d450408a2ec3e824070382a626aa9d8160d0ea832b0ced44cf86edd858eb0f50533bd3bd16fe32815f77fabfed92ede885070b6cb15827ec66ea50082a855c650154e4c8bb8d5614396ecb03fac116a9fd7a2d54f7c2693aba20b2e82a855c650154e4c8bb8d5614396ecb03fac116a9fd7a2d54f7c2693aba20b2e4430972bcaf8409050e83b87ba88560cb4667c4d5071e75d033bd5645e721de8508d280cd45d75114aa2d5329c95b0341491b0a17cc2c38e05308e8ede89fe05ea52e73ece120370668949c0ca0f5d7999fbbfc9c738e77ea6057dd21ffa040f2b7f71ee26aac8aedc0208485578428cc674713829e6bd7d7826b44d967e2304eec4e4f58443a2dcd05d373bd8f65a0ee8f901836be5e793c370420ae76f29ef8b0dac549a083c2e34fe170cd1293c31a655f5bfc28a006605076d9e175b5d7299305ec4ad503976db9fbfeff2f4c20e256d289acb858c8aeeb19b08bc15fd53030d52d8e5cf32d3d217d90496a72acbf540c02b3fcc70e842c49f13e2baaf75030d52d8e5cf32d3d217d90496a72acbf540c02b3fcc70e842c49f13e2baaf75bebc71c2f677d143175805995f038f9bd8468c560b9eda2084bd9d46e11f291f16fdd4f286ca076920807ff1210e6056dc1bfdb3a294385c08d997f32bf35b56a5732e4bb27a04ceebba8da9ccd45a6804dbd9d72c463643fbced01409fa33caef205d15dd8a2184df48dfcba354037cc7c0f38d939bd5cdc5e56fc05f81cb1847cfb407a757d99352407db9f2a12a52c2fa6d854613f7d0a23d738d9a4451413ba346b842623f385b90ed316c62596250ff5d5cd96c494b6fb486597ed0f997a5c2c08c9e97c620ac9fb1bdf775ff67aac5aa6e6ca659a14663684009ae5a2b1ca112465a413adf64807c02395c09ef77371de4051f4e679f3e57a62aabbbdb9c3da48002c43196c95d9c76c45dbd148a34bad558246390c5910282f3acbf9a619c6deecbe2abed045d6af894e2f824f38f7958a89388dbb259c7bbb70b8d05aa7c988f0417b787f6822f8d05e4909990cac5fd766d059e49d965c729e749e6aa7c988f0417b787f6822f8d05e4909990cac5fd766d059e49d965c729e749e66484f0fc52183bba0f2944c894802c46a390f9895f6661a02ec9250e26907f3e90126019b36c62308cc0fff363258a8b5e96c94b132fbc817abc681931e04a5a1b2c2f788ef5cdee3383ff9583a891717e7ad46562c0455bf1e34acae3cace2ddeef7310fa275cb8d770ad69d6b0399a6eea3bf9be7c243e43973fc514a6a5d3873ffce47d36e713cb5aa1c3998074739dbcdbeb02910126ecb6cce40efe8593873ffce47d36e713cb5aa1c3998074739dbcdbeb02910126ecb6cce40efe8593f94f6d37d8556f4b2025047f452e4e5f3edd25102f4ef5727946bde1ddc9139048562568605be94b47d9cf8c8e4c3c044ea800c64a9b8a791880f1969d44de45195267d190c8a67fc6c3d386515849c6016ddc8ef00285853b59f068e2a1bd747d64c494ce7efd24fdecd95ece797a24c114c0e541a79ac311a1a7461081c7f40d979c85b8291bc205ea0b8c7525a0ba4c5790065a28478fbc4ff0af6fff012d8b89c456d52db3100d883ec321530e8702eed2bdad8af4e3603f9b40224369ea9e200abe1a96a3c07144099b174ebfe64c780023457afd4c780745af900e92e671dde6ea0a16a3d03e2d5cde9c77856a1de294c18c59fa79da9f876f8bff110c71dde6ea0a16a3d03e2d5cde9c77856a1de294c18c59fa79da9f876f8bff110c83999cc221401dc2fccca9d3dbe395c82a9f009db310a00e811c68c60654771916c62c93da9ed9338601adb171f1aac3d28c1c9cae35ee1b6de7948de837e436c44f8ed734252cef64890f55aa4ca8e62cdb0d58d8c400bbb1d473c3e1ee6d1df7e90054aed73663ab471fa62b868c25af5a5e8abf259a65ab13efbc760ab17e5b6284f9e84dff1dc79ef2c389e168d2a00d4e65e862e6ad644bb1aa44e8f285b78e533e055c607b009b1ad93dbbf16a3595f6522b95536eff974b202a34e8fde3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e46f1bf431aa68e36406b32cd94afaafd109452df427aa726855be4176077b56a2e3c4212f38d27aff680c0a7f6c377829438a7c7a4f85ad4789b22de7ca73a9042acb60984c6f721fa89c42cebe22572acc9434cc7f27d2fb4362b3602deb1d627f9028bbdde32e61ceceeb929520023607de25aebdc039c2d568d9c1a8d1dbc7c15747f0d13d0884b48d424c3b38d5e05cfece09c539c906d5dec48be3d083c0a16cfbe6b674abb6534c984f06af296a01668b208f0967f25f8a4348e625a36d9acb2151507735aa72c6aeaf15142a75cb0d3b37b48215ac45ee17106adc18bee23029c39e8d677ba3d4f672d1e5fab0706c61412af4daf4ad16394b5fbcb1bac0d4c2067cf12930993eabdd0dcadb2d41748e4a4d78f8b8280439c936fcbecc514e6a6d2321a9d48a05d7723bc2955f4c6ba262be2be61f3ae856a0c921958129310a83db5313bb7655a511430dca84cd94983384873d75959150ecb4f3bf6c853f8d635a7f826468c2d44d8f5fa07e4c3939acdb0aa5308b2a61b5533add6c853f8d635a7f826468c2d44d8f5fa07e4c3939acdb0aa5308b2a61b5533add3c4b53c537230b172a85fd3fdddb124ae1cd85ae0ec4aa440b48f54ed327a134a36d12f09e3bb7ab4dd317335dd22bce368e1fed033fac4c7fb357f1b5b2db17a36d12f09e3bb7ab4dd317335dd22bce368e1fed033fac4c7fb357f1b5b2db1777bfc1f653657e03fb83ac8c5870d47a877f775c06ca949ffb78d51d8ebe8963e163dcb90a5543d93ea0bc3676dddb8b45eac496f6f3e86c97302354cc57d171e163dcb90a5543d93ea0bc3676dddb8b45eac496f6f3e86c97302354cc57d17148a17c575625674041fe29be1e27a1ca34c4f871e5e2a341afa633ba06153f79e0fbfbf94556ae057022e65d61060b8007726439a97aafcafe5dc92800bc556fe0fbfbf94556ae057022e65d61060b8007726439a97aafcafe5dc92800bc556fbeb22a7ef9ea0761ff4b76a2df67f4b7df871f4f8f68dbb19c71cdc2c50a2e57ba1fce58a90fdca477cbc7aaa7f4902579170047fefb93aa466fcd8be5513dcfba1fce58a90fdca477cbc7aaa7f4902579170047fefb93aa466fcd8be5513dcf3dfe8e703128400e7750e8e47f87756aed48bdeef6f39a905452e86f3b1a7a5d1191063999e2a024d989f631df02f34382f9748585e4d53e44f77425a3a31aa11191063999e2a024d989f631df02f34382f9748585e4d53e44f77425a3a31aa1de907af82806dfe75159ae73068bc91bb1641f2b3cb0bdf9d95e2a69c96221b98e6ae71eabf5a2d307b3c6c1400d35f06732a78b697ed39293afca419bb2b06b3a61f48438b198705db254a9e42587644d1d7c9cd6c720e265a59e7f2a758b15bfcc8c23465937c8b434d152e7a14db59c9ef2d8dceb2e8499d0c0ffb4346b067d7f601d7a7dce2101a7d27b8f86626f8f055a976b5ff1fb4491e056844698517d7f601d7a7dce2101a7d27b8f86626f8f055a976b5ff1fb4491e056844698516538c29d065276d23a1fee3fac1c0ccbe4b08a4eb52601265d2dc33dbe943c6a8031bdae5a15242b6d56abda771e7b22a2d490f7742fdc7c087d83363d508a8d8031bdae5a15242b6d56abda771e7b22a2d490f7742fdc7c087d83363d508a8dbc6f0633376d403cc262a982d3c967efc504037f9fe91ed18e7e9e1b733e1c561985c119595588550413e61cfe6596989df6da7a6528b87db22645b64680c3d51985c119595588550413e61cfe6596989df6da7a6528b87db22645b64680c3d53f45f12f0269829d8e3054f76ce4960d8c23c7250e5ddd23d62177300afe50c720509ea94024999d4bcc22ff78f06c6063b3a9802753c6c27d89b27e408bc3d220509ea94024999d4bcc22ff78f06c6063b3a9802753c6c27d89b27e408bc3d2552f3fd08895bcf0b9ec3e729566c4fe67f75d2eba10b3c0889ba22752df25d225271d40292ccd4596cc9a104c57ee0da5db78ea36760ac334668b0005c7312ce74c90211c0d560f2d399041caa65fae0fde1fa5fee57aa2d7587f16e59fa8014de543beea3327cdc18165ff657f37e905c71c44ba7c4962901f89254258fc86eaf78ea5b2977ca0355310e411c3a06a1cf902148df7bf821044a588c6a78cd1bd23e65378d3413532e0e3faed06bf57b410fd7496373efd86e4f300cfbd42fac9defb0a582a9ef12b7cbc710e36795efe0633513f6b53b67a43bdd8b214ced5d1b9d407fb058c9f4f63142a3f7572ead00ea955b5f5fe27ae70600c944e0520d1b9d407fb058c9f4f63142a3f7572ead00ea955b5f5fe27ae70600c944e052057780ba70ab6cce463dbdde869363640b930ea5e480445ad1dfb08a776173048c9fd5b28b692536f1ad14a73b7e7d05af2a1d5490e899891b469f1a6b10c3d6dc9fd5b28b692536f1ad14a73b7e7d05af2a1d5490e899891b469f1a6b10c3d6d13df13a0239df7dda89f2190818000721a63b2c0e1ea0fdd10273ca84c6db1a4416ba8b5df8684f5e46470e29a2a04aac2f7bf0428441faedd0344952ecb762d416ba8b5df8684f5e46470e29a2a04aac2f7bf0428441faedd0344952ecb762d0fe8025a3b5b7d95a8c0fce9d2c8eddce09d3b910d14d48c7b14f77d8ac5d0dee5af58549ce8fdd7c92cdafa14a2e43e94a4d6916645396255c9d7e6e7feaeb0307de82f4efe3b9cb4db8d8e299e62dba14eaea8bf4acc5b8173fd2e1de603fedcc387326008890e47f9b23fd359e109992bc74e01e73f2551dcc1f907fb1ad159fb4e4954e15461c57126f83d510298437141b657d7633c2585e37080ae656a59fb4e4954e15461c57126f83d510298437141b657d7633c2585e37080ae656a68f114a783ab28d3913471537d2684ff63a9c1fcbd67ae5b14ef4920917c1d7b986108c7ab6e7d6a5a5cfeedbe2aca61a1dbe93d967f279bb3c3812bdd004c7627398665829a7c065a79f192ce2177dd54c608a7471a0bbf77f9ad87cce68a942a262ea4fbec14c295e701931b2514715c0fe2f5f7c42ba41fb8efbca4008353767a2ca9a0c3c3f5bf1d3e04a7baa326f5f904083966ac9f763f7474f9981239767a2ca9a0c3c3f5bf1d3e04a7baa326f5f904083966ac9f763f7474f998123998f0fa0847f3b8fa270925d1a556099a83b8d4ec53f09738c9475f169cf30ecb62c2d2df7af860ca552962c052df4b4ab85c3f79983a53edb2c3d4549e1b851b62c2d2df7af860ca552962c052df4b4ab85c3f79983a53edb2c3d4549e1b851b027729db4104529492717f6168b39765fd8eeb99b3ea95be838ebbedfe102d19af8da2ad4af3255623dc8144f044ea2d7523934e20621f9ab8acd31b3fa8f8a0af8da2ad4af3255623dc8144f044ea2d7523934e20621f9ab8acd31b3fa8f8a01431254c3fae705d702a49e6a84d4e9dce1195b98114cd5b08f0c0c33f5533cd40a18a98d8fc3ae2c3cba9f22c96339799339c57cb50ed5f084d6a1deb35253d40a18a98d8fc3ae2c3cba9f22c96339799339c57cb50ed5f084d6a1deb35253d007f660e36d2cfbe894c2b8c1075cf630654834782087b0d6ea140bfbc594ed02323a77a0c06beb9edc9a49a821458b244cbeb6d9cbdfb84037b422c110831612323a77a0c06beb9edc9a49a821458b244cbeb6d9cbdfb84037b422c11083161562d20522b2046cfa42489ffadca292e5f187949b7c99278a0023117788829cabb8473a1ef22801d12767983d021675160f6bdd68d7c88147f7495e3c422687b0accfe8f988a7832d869bd74af58ef09c0042a968b36b6760ce0f2421fc46edf8a831c433f386ac271379de539fc2b5e535aa7d4f5f5b69d69512dead405408fe913bc9f6b6661eac8d29af37c9b179ed82848d6a5b7638ae46ade4efb4662734ad88291ad26f900b25838e0b05d53c6a1577b8be1179df4abd9ee3b84766bfddf007d1d93e6cfe6ada330243d4e7468ff4a28fecc97b99b9c5014f1d812eec322e1c3ae4e285a1ea0b3649fc5869ec22f34ba507515331f5058afa59020c76022e1c3ae4e285a1ea0b3649fc5869ec22f34ba507515331f5058afa59020c7606fc7dbfce405df1b47c69fa7653cd945d0ca390ae455e0e1b0e62d69205d3bf75da23671ca97e3dfe290ed5e1e08f56a9647c00a91e81cbfb188f530bf009704cd2c25bb32ffa754d8c8df1dc89968c53a7d853525b8720a5400b5c3afe8662c8e07145fd1157c4a7c1b8a156eb45a7412e71a202205da27f35f003d49abfde827717da1672ecb53348e47a42137b175afaca99034dcd3809b5f400a9e0d9bb8a64ac5148481c5b0c790d387807bef5b59fd20a7d39f1e7579e9cea4444ab69fd4063d35c8c65e1dca5d4a917058bef6c27b412cf6f4ab123b75448bd00e6523222352dd2f5c56cd4bd778ec60245bf3ea15e2a0e818844dcd19149f91a73cdd222352dd2f5c56cd4bd778ec60245bf3ea15e2a0e818844dcd19149f91a73cdd321f60f40d4688d72293d37aab590af961833d85eed30c69e905e8e5f13ce6e709a8ce4e4fe600658383ff89f32a4d57b8ba44287735833e5141fb87d06011765ec26ed721e55fc97f6d8d8e993e2456672bb68aa77dfda1e02c1d430372f966b31c810d200435a3385a17d6f00bb8525e30a1ceef58d9aa2fc3457dc3207a1079cbbe6fbc24451ecc6499f21a9e50555973c5e3e5933366eecee2e42c248ffd39e1a245d0a166164f57bef71c35171778d3ec7e6424150a708912068b74eb438321e87a581449ac794ff16f86c2b5b9e6d40f2fd5afdaa46bcdb537ef30a186db542b2a15de1bebb15487d2bbbcc3858c4989d04e8e5798a901aef4b16ed02c55ba9299bad9a3b57149e8001c3d82c3905c843b3530d05ce6ff68fe47e544d8d10812793c1a7a78e3fc4c1fe6ffd6c5b4455f41a8520869843030f3510585f9eebd0dea2449e99b0cf60a338f4b7577c65e64d3a2f3284ff29d8476eb4868279a90e1328330c26d38ea59e65ff59e55b1af7b0210c12b9772e180c681c87aa42d4dc161191a36ba4c65b2ea479aea51ebaa6cf35a905734647feaee227f3e529e7c64f8cc66d161bf6be64894a28eb8e20f958965aa4de1895f7140d8441580bd3fc3ceeb1d4064d7f11fccc79580df172033e127437fc01b971017a59634ad0edeff7ce9bcfdc59fc6f8f2e3e72ef7fdd4899fc651a2b1a7b043cfce1cba4b835f92c6c7017d970a493620621b5e7cd7c65f6975e475fbd6b4f85d9a49a4c531faf849cb64724dac2e0f45cc96ae591a6c48f70a96d260200b39b595d0888e85ae2cd7c774b0e222fec0d6dab7140adfea6f653a24fc28a5ff511cdb6b41114981f7d06df9dbc2305c90e926813e6f97f62a4ad0e092d2564cdd7fee7eacdf4981f7d06df9dbc2305c90e926813e6f97f62a4ad0e092d2564cdd7fee7eacdfdf3542e61e61318aa8e21e8403cadbb02658f469e8698b896fa06b571678044064a828c55fa5837e7e99b7bbef739bf05570a8318ed1909a6b4d5a7ca90bac6c10066ec59289b21a8f8c596cb50fb1604edb55aec29851c0b6154acade79e71bcf7f352e560b9d5e3961f3b3675099067c19c6e366156bf1dc5a93b51583b01e0adfddca11ff8d8cc926334b4304d91402675ebe5eec08d0551cbc347cc91d0c462b9f24bbc2427385b540c58b20e44fd4709d3eac4bc10702bb374180819075fc5fc8e3b761abc17fd4fe67bfde74da5c8aecaf30013a61a713fa566b8d1688d02ede6027c07ea8fa222707aa7311daf1ddfd4d7a38ff1a946dd34080b80f91116a1dad0946419649c0ba6d2597b231a77e5c62b7740e2ad9b7cf30160b07a5b47cf1d999965f78a550e429924386a30c947252239c87235445e8e50110d3fb23ee696d7bebdeef68e69ad72e49d0a487a93312ff36b0215667ae3d723f7d0623ee696d7bebdeef68e69ad72e49d0a487a93312ff36b0215667ae3d723f7d06c8260857433fae8caebb2047cf4ec5a67b7563228efbed26b1d2456f2c55abf46446761830efdcff8240865046de684e8a37e39df9d6f73149431cf4d3176e566446761830efdcff8240865046de684e8a37e39df9d6f73149431cf4d3176e56ab8e18cd41be33641116b49feeed25857c56e80cd8fc82ebf8786cf9b36035120c2eab2f2688d0de42504f04cab54c2a09481a433f767af4a6678138fb02614f0c2eab2f2688d0de42504f04cab54c2a09481a433f767af4a6678138fb02614ff1f24b63598a1389cb9c6f96e5b6815701e3645b69bf07e55ae5620a1507f6785a9e02e132afad049a2575dece98faa1b93e9b8a10a9b254abe278d4be8fa5505a9e02e132afad049a2575dece98faa1b93e9b8a10a9b254abe278d4be8fa550c96ebc4ee9eb7ab6e020145806931b301d4961f83ace5a4df0e7e754a157426ed3dfcea5e379ce4f328a0493c5e5cae634a3610060feed9961cc714bdb054a20d3dfcea5e379ce4f328a0493c5e5cae634a3610060feed9961cc714bdb054a2091ad812bcbc2f29edc1fcd322d077985fba7f16ec4e83f417fe4fad43c5222b13ff7289c64f47537ef0a6102be7dc7d269cdcf92762ce223adaeb7a71eb5634a3ff7289c64f47537ef0a6102be7dc7d269cdcf92762ce223adaeb7a71eb5634afa533c6f5bb4b9f4c53ca43d74fa6128daaf80b732a35f9f2cfcc4e6cad7bbb224ad24c9f9c77e057de18b523068d0a68e2020701d1ff8f01bd7d47441cbf1b724ad24c9f9c77e057de18b523068d0a68e2020701d1ff8f01bd7d47441cbf1b7acfe212847ecb81ca28bdab976a3caacff3568b45a9e8ca78d6957f9f3ef4884364a994fb5d130ee8a518a2512734857e7e73296f038b3af08d54da0e8300436364a994fb5d130ee8a518a2512734857e7e73296f038b3af08d54da0e8300436b31483d37b92dd2ccc63cff7218453f75fefc590af9220045047c59912d5b303c2c3ec736d03b174d3aa470b2854961b7eebeca34068377c261b96bd7c453732dde3254d8c704c439d70f9dc61871e45c52163219e1a3aef5aa4e0daaef593a4b1700c50502f613946f4bc6afaf7abb3a9844b29996184dc5781a01f87036b4359b2da686640afe3da0e790b55bb8ec82b9bc6bf85dff72ef0892cca18cd903e59b2da686640afe3da0e790b55bb8ec82b9bc6bf85dff72ef0892cca18cd903e61a7fa06c63912e57d93758ffb1d88273b38e814da788158918979fd32d28b7c88096b6c4f46bbc5254d7dc813a362620c6a9ab9e56417d8066ade873ac4d8dd88096b6c4f46bbc5254d7dc813a362620c6a9ab9e56417d8066ade873ac4d8ddb98a088b71b6aaa963c9271c6bad58e62bfe758b31679be1900463286320f0156a31cbca400bd904d8177b9be52f4cfbd173c8ed8f0df3f3ca19788bf57eae5afd7ced37aa4cdfc545d47a84f35a39a8540821c2cb77f0aec7c2c37be5bc0a21fd7ced37aa4cdfc545d47a84f35a39a8540821c2cb77f0aec7c2c37be5bc0a2177fe6d5bb5d961b2de1050483414969b92bd7ed026dad63522a39d02cc6e8f358c58a82809baa9a44c640cc296bd4a163779acc14ee5bf008cccbd54a84c6976df72a81786f4bb323a17767584e4240e3f8fad9c85857f0a83541b3fdc790d48b0533e9e94f627a7d9f90b4f3caeda452b92e688d95ad24d9f3b259d1587e4914a12a62873234544f6f1e8dd33a6fb62f179a54d03e83c8a8671cd1a647aeedf4698c729561cbb6180eea8834efd85c7e56efaa64981b080626bf8be93f048c19b87cf9fdbae41814690803e09e0f7dd2cb5e886242936ad1bb0cd662dd8bb6c713d4e580741d8aec5d9c88f67ef135ec6d314036bcde93c42c9f27a30037a4d713d4e580741d8aec5d9c88f67ef135ec6d314036bcde93c42c9f27a30037a4dad348a7940c8f0a8cd3ef3f5030d0e56ab176a9e853137d44f5501ab2b5f14b38ae66dafdad243e96e02f9abf19cbd8e6c7bc8feb186085320f03b12f246311e8ae66dafdad243e96e02f9abf19cbd8e6c7bc8feb186085320f03b12f246311eae6f69ca7ff1f9eb80a7500362228efb46ee6b36dc21e2b369b14f69fe2ecf1f855ee8fab159105b30d1db87f51a070ea4ea9ad803550cd7c1b342ef34749906855ee8fab159105b30d1db87f51a070ea4ea9ad803550cd7c1b342ef34749906f230e9403aa074eb6d350c74e2f0d7d0a0ac521c6915b61ec11e11dafea143af87d6a02636835900a634f615f8abe3aab1432c9dfc4bd78ae921ab512cee61a087d6a02636835900a634f615f8abe3aab1432c9dfc4bd78ae921ab512cee61a04140fd6ca1554f50035a57647d35ed40c40a95d8290d572d86bd7031d9b2cc6dea0e1d4e277fcfcb167e7a59f4cdfe72251fd30542105e35a2c786b4bd33af9dea0e1d4e277fcfcb167e7a59f4cdfe72251fd30542105e35a2c786b4bd33af9d0acf7d1abd47f1415d431434aca10698d641c9d403cbd84d15f494b6fafb314c0214f077e0147ec2eb4a5237a3856db6c8ae290605c22878a05c47b39cc62d4f0214f077e0147ec2eb4a5237a3856db6c8ae290605c22878a05c47b39cc62d4f224c49950a8b43542802d1dcfbd547f5d2d7ab40630a859013c95769ca6b46b23734874f05348d4d213fa29501fee956cd09ac0d4cf94b6fdb2af85376e362860cfea8569e0fcff50807463cdc24c3aa6c529e5b20f7ac9afc2ba662c8ae5e040cfea8569e0fcff50807463cdc24c3aa6c529e5b20f7ac9afc2ba662c8ae5e04b91c87102aca52d7bd15c9150ed159fa2425c32e55e1622bfe9a269ddb0c1ae6b354fe5499de3b5f27252d011908d5dd536f80bbf3ac3cf9c4fafd4539c7968bf8767ebdb7074acc491a413ed93e080591f5f1f1aa15ba87267c10e89f0ecb949eaa21185c5fc78d0210b0b076aba96494c040089f8580707c5efa9a401aa413f47191aae54eaf541db692ca2714032efc881f2af08d05dd646a598ffeb5359cdc098107bea40091b9abfa5c067e95d1e4585e73995d507f6b9ca5ff6e393fb0a9c8d1b6761504175928b5531266e479e0433c8fa2759105b757ff97444d87426bfe17895cd281e5c66e56a70002aacf970db93698e2d2bc24d6fd727d2820796bfe17895cd281e5c66e56a70002aacf970db93698e2d2bc24d6fd727d282079b2c077eaf4544706160fa12eec1666adbfbece2344d9aa9862712635b946b69c9ec0743f2d18c10e35fd0e3d30179d1b60ac4807332e0f5b462b09b0fa809f6f9ec0743f2d18c10e35fd0e3d30179d1b60ac4807332e0f5b462b09b0fa809f6febbb338710b08a170656b728e4c2acab596b2fe316695c44e5fad301f14d2e58c73c2dac4fc8cc64c1be345be1546efe9024b55c9321ca0e25a888b39a989997c73c2dac4fc8cc64c1be345be1546efe9024b55c9321ca0e25a888b39a98999773bfc7eeab2134d2ea7ec68e49f65950a31ceb97d6d37ec433f7f3886340d44e34ecd087a1be13ecd06adbeb39beaf8d83c50fc61cac337d18ab1c5e2d558b9f2486e6d45f95f08f967fb352f634c44648d927bda7e526baaf0094f22a23631c9d60e3fb769b09a9305104f1bf01b345f0a870be8e0249b6570fb7827bd6a4ace04ce37caa7302cfde70d63d4c1e3dea9d00ee698f7510c9d234c8f1a02ebefdda067a8ac59860e8fafbf386a911823b9bbde3009b083e1001e795dee68d4dbfc89e31fb2de74b03aa6306f06508e64be29a359d9111ef9d3f3364ee8c7b041a69365b57f30d54ca5e9e9031dec1afc97371febd9c683df73c2cb4ea3796d51869365b57f30d54ca5e9e9031dec1afc97371febd9c683df73c2cb4ea3796d518a967b1e6f9043c4c9c5f12e5736f86451dd5317eb9d721f62aa2347de41c647f04c4dd57d776015fc32e246cea8cae1d5527132ba86f44373a717c0647e2179b04c4dd57d776015fc32e246cea8cae1d5527132ba86f44373a717c0647e2179bc151015e92a3c339cd44869ef1575379bc097e0df45e12e8a3a0663ac71c3f22cc61f0298f2930e1f74052900a8e7fd204b3c16016a9b1611077794df3a68be7cc61f0298f2930e1f74052900a8e7fd204b3c16016a9b1611077794df3a68be7f431ff10b1053384c82400aaca80f0875f10c7eb3e039f9abcc42fda3fbfff38b4d9028950d6cfdc80f76b495346d59ab8eded986c37558746fc7526e056ae72b4d9028950d6cfdc80f76b495346d59ab8eded986c37558746fc7526e056ae72a81d4c451ea6f815aecc503dc1d072e533b967262c901d0826efe320eb6f8a39450da04abc9da2e6c51b00056a04fd6b41232b6bb0fa4977cdd753bced858f3c0d65bff1ba6780b0f6c31488f260c6be5ca2a5b301fbfc133ae6580ac1f7caebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855eae72cdfc183a22c426a25cc51998f771cf374401e2028ef151fe27c9faf60e9eae72cdfc183a22c426a25cc51998f771cf374401e2028ef151fe27c9faf60e9d2e3a9a58e9c0309a080aec8c4be55ddc24c8eddd2e2b6d68560808955443f585094011a0c434d7c8f23211249322964ccd0c119696dab2ab2ccd4009e6742a55094011a0c434d7c8f23211249322964ccd0c119696dab2ab2ccd4009e6742a534041827a9e7591be2509f138b2f889c18727d4600901df2ec543ea7963d0d37d87ce434b86711f79d8bbe39c3d916f056e48d3a17cdd48294260d971d086fd0d87ce434b86711f79d8bbe39c3d916f056e48d3a17cdd48294260d971d086fd0789798fe4bdca163ecbabb49f79ba82aa0aa0c83c05a6b84b3cf86c35b3abc92d547c72fc6e9a2934db8053b65e9faa2f8ed0b78745c3a478f8e36ac612699f7d547c72fc6e9a2934db8053b65e9faa2f8ed0b78745c3a478f8e36ac612699f73a2721ffc6ba6515db867dd7adbeb50a373171824701d6a1f2a32d519a4a6516c70adaa335caa927b5139ec91890a8ad3e2e1646213f3fc6e6bee8ed0ab95a99c70adaa335caa927b5139ec91890a8ad3e2e1646213f3fc6e6bee8ed0ab95a99c9ff1440953e452233f9a34f48f9e913302f3f2b452a5c174efac71bbf9f33585291f349ab8973bf941754df617fd11cbe7d439127d377639127a5d1a6a025125291f349ab8973bf941754df617fd11cbe7d439127d377639127a5d1a6a02512b57ea69809e7ece7ea2ecb99d6e589e098ca14cc29ef4d00c62ce5f636a5bdc757102f6c7ae6234d2df4623d158f680a95d303ec20b04791ec3ef43285aeb17257102f6c7ae6234d2df4623d158f680a95d303ec20b04791ec3ef43285aeb172e48196f9ce0b257ba9c88f9641492ba4cfff51b44a943179649bfb146eb0e0f7e59ea437abe25838122bed31052e7fe892a00bc11cf6e950c8a04458631aa317e59ea437abe25838122bed31052e7fe892a00bc11cf6e950c8a04458631aa317eceae54890f37cfe8ece533d370452c4def4ef4544eb6d34746996f23957555dcb1ba8e9f457cf63ef83db793db90339066bbea4022d90a0ba220a76d535a63bcb1ba8e9f457cf63ef83db793db90339066bbea4022d90a0ba220a76d535a63b27a77b208917e7e25f067f05d75283f2e2696d108409c0d1914643cb023bfe8f1fac4b706a1942852174584512112cdc9b8360c0ce53e8493d0e10afab41b3a81fac4b706a1942852174584512112cdc9b8360c0ce53e8493d0e10afab41b3a8d696edd00575eaff1e31d0db7955af5e9ecaba8e21fe3a81f615508788cd984494dea6bb9830321fff3ef5ad16f70d80e2170485c029bd11b380d0f4e48de5e394dea6bb9830321fff3ef5ad16f70d80e2170485c029bd11b380d0f4e48de5e384bbb89e2782159273de16e72e8b306ba662275db4d84b42d4d3fa13816af9bd377b3d2b1b6513aed56ffb5e9e0a53a93809106bc2fa4b9c74b08f90f1bf76fe377b3d2b1b6513aed56ffb5e9e0a53a93809106bc2fa4b9c74b08f90f1bf76fe39e5b03080a5eb1fb8777f85630a500d7468658cf0bc17df1fdfbf7bf206c023fe0345eeef49533d62e4bf34af52499c0450e6eee6ae0a97bb7b504ebb7b8e3dfe0345eeef49533d62e4bf34af52499c0450e6eee6ae0a97bb7b504ebb7b8e3d3b628eed287e3e20e1e6b9bc6e78e1ea07332030a529c54ca90137eb89303718c3899bf31d9c547a83b64ec6a75f95db910ec91e4844a5c947f676951d958915c3899bf31d9c547a83b64ec6a75f95db910ec91e4844a5c947f676951d9589157a2896df8eb4ec32f9789ea9dca6f2c1f47d2b70f290bc473d74c8d06255f87e3cfbe9f96ddc14d064f42ab6696b6aace423d757758b7f67c91c21ad531c15053cfbe9f96ddc14d064f42ab6696b6aace423d757758b7f67c91c21ad531c1505867b828b9730e0bded4cbaf27eeb636752165d93d5c8d570f5b0f9e6d9004df5f7bd491bbebf64228f9e5cab3643759e97ccf4c751d43ec2ed167fb00e78be74f7bd491bbebf64228f9e5cab3643759e97ccf4c751d43ec2ed167fb00e78be74fcb95a0d1e6779b1d3cc2020deaaf5d6962102107d4abe4cf2b72273a4e27e63cf2ff8925c2bd342489aa56b60091234990a9ce3267e600a16a9d65b6b29a23ecf2ff8925c2bd342489aa56b60091234990a9ce3267e600a16a9d65b6b29a23ed3ddbaab0e1523c6ea390453ed1215d178b3c92d5fb71d5ae124cb567602bc94cf660b7caa3e7879a9c59de14f2e1257d46b302ae827712452eb2993d1546dcecf660b7caa3e7879a9c59de14f2e1257d46b302ae827712452eb2993d1546dcecba8fece8f62c36306ba27a128f124a257710e41fc619301ee97be93586917cb11e122ee4bb6c0471fb7ea1627fd156cb7be5a92a24c5c3db2225a76e0bc6177f4c38e382c432167e0bc319837b343e9dd346dbd849ffaa3b9c60bf82a772ce91f2feaf4c10829351c0e329afdace5182e187e302c2a4e71992601114caa7f611f2feaf4c10829351c0e329afdace5182e187e302c2a4e71992601114caa7f61c1efcaed655b6eac5170eeb516f60fcec5c843ab802661d4be93d9f0501a18bb345a7069e66b7b5095d98d2b2fe92a62e31a67d58e2338e58c9a7f7d9feaded8345a7069e66b7b5095d98d2b2fe92a62e31a67d58e2338e58c9a7f7d9feaded82e33e69eb619698a72765597134d33c1cefaf9085599cd023c9a0e2dd8c3a84bd08831316a0f42b3dbd4cff0b1786a7f9a3d61dfd05cb58f6a928882009f4ae8d08831316a0f42b3dbd4cff0b1786a7f9a3d61dfd05cb58f6a928882009f4ae8a3d272c5577784079ec1c001f94b4c47b4ad74c736e70631a8085674792cf52a0cd61a606d263452d1eece07039f283072b8a25ce9409aff9707b7d83f3abb900cd61a606d263452d1eece07039f283072b8a25ce9409aff9707b7d83f3abb90ec536f75d60b48defce8a2637d80a49afbe8c9e640668eb0e2a148a3b55a0467c26f15a123aa7cc8793df5fbaa925a83d876709d46afac3a002948118b340a90aee05169abde017d6dbbc50af66e45ee85b6bd3c8017fdb07d5a95ca59f6721f5ad9f51e053010bfcda5c36a1c1d86ddd5ef80c3075867e5feaac149a19dfc33946a9d8983660bfa0c54ab7803f32b3644b99b08cc9163ba51ca7e7137733332946a9d8983660bfa0c54ab7803f32b3644b99b08cc9163ba51ca7e71377333326e05b5c47a7d4602d2f55596f462ac016642aeb1387ffacd1bb15c240893947f3225ab8ceda450a9df187083e4bd76f3c33ae128590e880ea6a379d08b0100df57b2a0dd8f6c7063bfc8bfbf4a866aa18541cc5b7bcee0eaa6daa2e358b566bd7eb5cdf01d57efed51b1928b9d89e24c09614b0908cd4ab2ed8952921c6078deb9f00a540b64abfc7cd89c1ff7b1b32620b1c098a30fcb8dd609af1fefe636dcb9f00a540b64abfc7cd89c1ff7b1b32620b1c098a30fcb8dd609af1fefe636dc75ab6ba9fc9e1204469af4b00e991f9ac05e37796e4680c005f7c8bd2acd3e6bad349fd01ba00a82e939720d6a6746b42679d8f9c026f8536b0364df1f07736fad349fd01ba00a82e939720d6a6746b42679d8f9c026f8536b0364df1f07736f0b6cc8ca3b5e038eb02eb0e8299b01c9b27b51b45a5df621a426544b3d046d5f3b0504a7883f2e54079dcd763a07db1e31464fe1e20bd311afc486e2c4ed796d3b0504a7883f2e54079dcd763a07db1e31464fe1e20bd311afc486e2c4ed796d4ccf280dab73868ce5bbe1f7e146ef8acf2c189a77eb054ec5b7fbcee73dbd9de0b994a169b0249554164605942bd1a6685aef6fa0b3a6af2477d803d02812fde0b994a169b0249554164605942bd1a6685aef6fa0b3a6af2477d803d02812fd4d84fa1f9acbf6d975c99a0c21a2614a9b776756430339a6998093a2027fe49907840b787d0b1a81fa03f51839432b4431c328f8ad5ac9689b9be5fe5e9ec69707840b787d0b1a81fa03f51839432b4431c328f8ad5ac9689b9be5fe5e9ec69753849694f3694dc30355045d8adbd81e20b98379d86bad175984794910258c4e6387b23c87043103244637b6eca93ecfba5855c6cf5a62f22e2b94c7acb42a266387b23c87043103244637b6eca93ecfba5855c6cf5a62f22e2b94c7acb42a262ef59ddbc49f0e26019eb65a5405071fc85c4c5bb2c1f028b8f37e0e99bbda3df457e0adcef3aa30de185126dc114aa1e638f1a570b97309a34e9d2ee751bfcddd93b5aa4b0ca35c0b2938d2e1e36c247fff6525636c6ef1f62fab183f305689a62a8d3e4598c3a9d83dfe5adb1c132b6d9fd82da13bc4d5f4a1d9ccacbb323aa6593ee5fd5aba3c353626ab7e062c49cea2417a4c88f5c3cbc62434a079f5c0a6593ee5fd5aba3c353626ab7e062c49cea2417a4c88f5c3cbc62434a079f5c06a6b8fb2f121b51aa4d00f18ee724a80209d9e909d5985fb99b36749ec35077e353bf6e6ad6572d90951d9756d0f3f53196e93f087228ac150a9f92ee6824cc7353bf6e6ad6572d90951d9756d0f3f53196e93f087228ac150a9f92ee6824cc78a6ed930e741f74ce34f03ea0d8e03e06d268f7a24b37ca45337e09f6c1162712c09ed8748c22b6478639ef25142b940a8e243354df924a016e9828ec82e9cf72c09ed8748c22b6478639ef25142b940a8e243354df924a016e9828ec82e9cf76ec03673721774e490f8d8cfd9c17eeccf03059e04a30bf01d5833427615f29498ef0cbbc326689875bc72f3aafdcc012d725b02ce962697ffffc6ec51ae959e98ef0cbbc326689875bc72f3aafdcc012d725b02ce962697ffffc6ec51ae959e1d9935402956e812584c074831c90d41f26746b039d26510158be2ee39534ac02f775354f79128b37f897664812e374b8e501e6142c7661f63d6a959803c42b42f775354f79128b37f897664812e374b8e501e6142c7661f63d6a959803c42b4104d77530a9cdbc7eea9526e5b0439ffa795f3228843c25255ca7c09cc5851956729971bb1054dffeb0d2726f8790d51bc1507abf3158cb53da9b3cce186ed550ce8300ea24fd211bd478f9d5093c9daa092680d753fef7e92fc86022013723dc97162730b9bd2903c8f285d5f5e54e3c777838b88220cdc4b33a641f13e9037ee6b166a0f3b7bc16bc7ccd56c5be6320bcbb7295c750ad2b31410604007eab7ee6b166a0f3b7bc16bc7ccd56c5be6320bcbb7295c750ad2b31410604007eab7a3138703c16263083e45808211e65102b1104ed20e16627ccabc72480dadcda386128ee9c9712518e2df6570aee583c614f26cd6a008b572cb7d2d93dd5718cf86128ee9c9712518e2df6570aee583c614f26cd6a008b572cb7d2d93dd5718cf8313cb363dd749caccf0bfad1cb9773e7ef6ccf6928c240754321601c493578baa4aaa53a77714bb795ec6ee795d546a7f80b5acba7803c70f4b5a3342960f45aa4aaa53a77714bb795ec6ee795d546a7f80b5acba7803c70f4b5a3342960f457852298241ce34d1b08ec1d079b0280c331cc4ab5b41a4c17bfecd055a372c7d00692ce0005f482b0c74b9f18c92fa9efb2f71b2269accdadb235f6ef99ffc7800692ce0005f482b0c74b9f18c92fa9efb2f71b2269accdadb235f6ef99ffc78998a652c7f807b0dcc8e24949c88848c48e6819193138bf0135cc7d5fa8d91507eb94902d3e385b75add0263ab5962ea45a6ae8590b7f680e7b79d3c0b6ef2617eb94902d3e385b75add0263ab5962ea45a6ae8590b7f680e7b79d3c0b6ef261112fed96519909a8dbe3a0d8803ff53cf96f72afa58c9bc05600bcd8a321686caff9cc58a6d12ca6753e85404098175db2a4c65d434828f518df48b22b70ce62f3ec5d1fef2404347718b859edbaec79046108e419624a86ff1a08137f116a693c7172d314722c6019e68893e1eaac5bc8704f990c9c41d13ec06ad57b95583f345d16822ef8097f89ec14f291b224e1856d659d6e94e9d2719391372b188786345d16822ef8097f89ec14f291b224e1856d659d6e94e9d2719391372b1887869cff5a97caa6db68f8023a5e5bc8a05090eab60d04fc36d85d13163afa78da370735246f92c94fb3f23bcbe928a661850ff3a0e2b0b88a3f61a6d069bceb449b8a41db1c9412a733d4c33b19f4c3da9c6dd34c87c425c7c7e614c9af6947962e8a1240d00d8f869f581b07671edb7e4adc0a40100e9262814b35a6c24ffcb513d78cf94c3b46d1d9f65ad0d657b0bea062ee3155607ecf470ad3171fdbc8cb6cd78cf94c3b46d1d9f65ad0d657b0bea062ee3155607ecf470ad3171fdbc8cb6c8b51fc0d0d5d95c21793d6c4f3e1b47f0f996fc2011760b5b21fb1049dca278bffd79720818d02a8bd5f8bc41c1a0a6509f1ef142b7dc108188af224dc0bec60ffd79720818d02a8bd5f8bc41c1a0a6509f1ef142b7dc108188af224dc0bec60dd496ec26b49178ab029b90fa09e33341614ddc52f6f1160c1d50e02513792de2b292737bedee2ace0100c5eea0410fdb489e15c8c21f4515fc4afa51c0ebef32b292737bedee2ace0100c5eea0410fdb489e15c8c21f4515fc4afa51c0ebef3fb0efd605ef618cc7298518932855f02616871942e96da265326636508f0a531a019490d447a23672994f72f13229afc3d5c769778c0412be5d11b8d07eb1557ca1e4917a94fee50e7b1d55609097996845c61d3ee09469566f634ed942d166112f17d7aa9c94872a4dce3532be72f803e7290c299f9fe46d870277794ac5706564c79da7733254d560c719655217df8e6bccfd9b50837dc83881440d9afdde5ca08c8800279b0a074a0a6ca008a9a83538cd0e1c8da2976a93194f316435cbc44fa6498b9e8f4aa8821d836095c0eb5d7858cc2aa8ff9ad5a60905fb304e931f40eab89c28d545a72decab5b520d375f212660ab727aa5217a7b63cf50218e2f40eab89c28d545a72decab5b520d375f212660ab727aa5217a7b63cf50218e2066a541e6d38ead952d63cc32afbac51a33acf354799f235c582eab17488105dec94e70c04d672af480700d43e814e5934a8381fb58a87fcf0932c42b8c1e98bec94e70c04d672af480700d43e814e5934a8381fb58a87fcf0932c42b8c1e98b98d58ed6df33edbc5b2d48ea1df7fdfc8c863e23dc959d7e337a87cc47a50dd1f2577fc4d156e8cbd11a93963fdacd4797971d1764edf0a7d3a7aeae0044418ff2577fc4d156e8cbd11a93963fdacd4797971d1764edf0a7d3a7aeae0044418fc04539eda33e7f92a0a714bee33609e3f92ec8bd943ff11329b791b05f917ba2d5e0cd40c90f0f44f34741b743c1047ff8c8d6b6142cfaf76b3934bff19207e0d5e0cd40c90f0f44f34741b743c1047ff8c8d6b6142cfaf76b3934bff19207e0f97c21e6aac061c5965aeb7f4937736b503d29fb6047b69db9dcf09564e9ea289c516ad02831bd81d78eb60f6451465f577d2588d5ca433687a4c43a1605bc0d9c516ad02831bd81d78eb60f6451465f577d2588d5ca433687a4c43a1605bc0d1ba2b134555f21a970a5c7a12b75247f1b02309ba67acff9876dca385f6fddc6cce18eee6329143d38baa947922dedba8d4e59dd0adeedb7d61558d6575a62f9cce18eee6329143d38baa947922dedba8d4e59dd0adeedb7d61558d6575a62f951f4fa9be353b32ce5e2d65d4c120b6fed22a466c43cd96f19e67242fab1e6c54f73795ff8941a1bbd40f68f05b1403c3b4bc7516308c6109b77ed5b44347e89abb4153655c59c0f231efbc811ad56c92c2a0d5fe558aabb1d20bf2b83106b2e1e73ed1894dcd29dd12907d9f7f98fb49ba09448792973185b940368bed67b8525a7c80ab50fa6f12b8ecb54f7afa6b0624141b062404d51c3cc5390f51f936a25a7c80ab50fa6f12b8ecb54f7afa6b0624141b062404d51c3cc5390f51f936a755be9589451893c7766627a0b9c6885701b07734354f69335e389c988ee797e28c07abebc1866e6772224121f46e31ab9f8f04f0cfea410711822c6a118839028c07abebc1866e6772224121f46e31ab9f8f04f0cfea410711822c6a1188390f6da84b805f41528328f323c60234d330218c65b315e9b3a6b0ca13e95d7028aa368a5fe0c4de3ee04d2be5814f17cb5f37e27a91ffe7d704d118fd70f422c2da368a5fe0c4de3ee04d2be5814f17cb5f37e27a91ffe7d704d118fd70f422c2dc99705b7cff397a0a1ee514af58c7c27b672ee2babb0f469db5aaa647aa2a246ae49e59fb4911cf52e7bb5d834b6a9792b9d1338e65455fe1cd6ee04faddca75ae49e59fb4911cf52e7bb5d834b6a9792b9d1338e65455fe1cd6ee04faddca75913fe2f6320025291cb7baa7f589b1d180ce77027e56ee17ee66b39a5f811f1e5acda1d141df24f3f725aa5daf4b6b450d1ad7fb7fd9990686f69f5588f384925acda1d141df24f3f725aa5daf4b6b450d1ad7fb7fd9990686f69f5588f38492f6375651eb4fe8aa502fe961f049ab94e48f4c9a19110232d282c0847eadaac83eab418deefb542bc24509437922ab5d8bcfd98f2c2423409473de166bd395aa3eab418deefb542bc24509437922ab5d8bcfd98f2c2423409473de166bd395aa5ec85038c527bd87cc6a9f8842324329097cf599462e886536d13211343c77178e482bf8f5d3f25a2e7a0ef994c4bcdddceb2b8c2b1458efd7d1e8a9dddb85de8e482bf8f5d3f25a2e7a0ef994c4bcdddceb2b8c2b1458efd7d1e8a9dddb85debd63b2393a258921d02bc090dfac34715165f58d7000c6d213b86b34676a5937555489fbd716aa4f0e4d4de44499a5cb6e5c31a467a1daf6fbed20417624585a555489fbd716aa4f0e4d4de44499a5cb6e5c31a467a1daf6fbed20417624585aec567f79d637f4da11b6fcfc3e4163f299ef14f4c60d3b93ea89ab2ad4a2aca23d7345c2c8c835110e5d4a6be20e69894677d082a66db388e00ddc6d26df25bd3d7345c2c8c835110e5d4a6be20e69894677d082a66db388e00ddc6d26df25bd38e766a4bd7aa16feeb9b955bef178de21c80b85e942618009b07503dbc45d90ad1f79a5fd51cb56a90cdb4a1c58b3a64f6b82005e8b3f348dfbcd538ba796c0ad1f79a5fd51cb56a90cdb4a1c58b3a64f6b82005e8b3f348dfbcd538ba796c03672415e119864225cf998cd95e923b51a0c87d726fa33e90bda559c3edda9adf3cb3f028121c3d1b758b7cf40aa9203a6816e7562500519b6679f09a17d9fe2f3cb3f028121c3d1b758b7cf40aa9203a6816e7562500519b6679f09a17d9fe2ac9d7d3ff14040fc768037a8096fe46d38cbabbd0e14d50aac10838a2b972704c0cce820b17fde2be956c916f8d21bfd4525c809e59b92ee5c1252ca10fe3283c0cce820b17fde2be956c916f8d21bfd4525c809e59b92ee5c1252ca10fe328398b665014b37d8334088a840cce726c0524c9c1623e8347f8809fb8b2c1a49bbff067d88f7fdf9f14cd8187eaa0cd8578ffb2d3add53fb081fd4e06178b6ba1cff067d88f7fdf9f14cd8187eaa0cd8578ffb2d3add53fb081fd4e06178b6ba1c9c35bfa7fbcfbc7759cc7286313df82117541ca28d25adc33c6cbcfd4e37016cecfc442928976767af185565c8ac2475accafecb8b9f70fc85f4736f04571d4fecfc442928976767af185565c8ac2475accafecb8b9f70fc85f4736f04571d4f81bd8b19a04a105543a20f63f22532b2d5e5c11c1389310e6bb8b12078d9ad82c0d63c22456af34f89ffc093c9e1a9c29c8988946422e310425bfeef7bc0fdc9cc48984bf2647776e90ecbc1d51acee5efe9069860375cc21edbcc8278402be9965417c549e73a8ffa6a41c6d43f2d6fbe90bdb4277cbc2eb73f60df5d3c3c3022cdc0e078c2d579a3b6d758d90976cc6caf5a9bf1c5a38ff86a4f960a3a001322cdc0e078c2d579a3b6d758d90976cc6caf5a9bf1c5a38ff86a4f960a3a00138742016d0568f926ae8584bf0caabcfc39e77da48a3cfc98b6e093f98cb56e7d7f8d6cb919b5565366fa348873883ca8c2db12ed8b9dab13eaa94389849d18207f8d6cb919b5565366fa348873883ca8c2db12ed8b9dab13eaa94389849d1820d34b8ad7076c39493127489275b950c550a088da409f18b4f2b84eb6be93036e159fcceaad5beb9c44c860fd9897d59acf203b8f19d88715b7fcd3d58e6291d7159fcceaad5beb9c44c860fd9897d59acf203b8f19d88715b7fcd3d58e6291d7c47537039dab5c236a65e55798fb33193d039bd41c5607a84232cad95e63ee8acb28ee0d7c76e3004cb0af69388a86f963da553bff6250a0a348968670218d13cb28ee0d7c76e3004cb0af69388a86f963da553bff6250a0a348968670218d13beb3c8826795a2e3f2684fce365cfd99147ddf4189a67a7f7c765a31abbb7ffa599ae3f671709545bd85f0c38ade7ecc70ef1a777ab0c2bf481d3af260fc7313599ae3f671709545bd85f0c38ade7ecc70ef1a777ab0c2bf481d3af260fc7313bdc4e070d5cf6e58a4aa93aa8d38a29150dc99fb5f24059a58a1693c0da72c5863b55a8af0abe8e4ef369f26940fcb762bc764f4de56316be4a9577600cc86c863b55a8af0abe8e4ef369f26940fcb762bc764f4de56316be4a9577600cc86c8ce16f5754fe5d650299f06bba5dc73d3dd7f51a6047b46e26e82bcd730514689a92afc5a513f1e79598b0d89f51092fec8a912e5ec5c38f92b7d6035a1d9b8f9a0ec41dfb12092069b4662d4c4a348259982323addfed70e1ea4be8653a8fb539769d0491132af61adca01b7daffe1237f0be7d4e624088072ba7cf4b3a02443918d50433cecd7b5c099010854108960edc7abccaea702b2e010320a125ba576d5f7cc05532de4a7259dabac2fef1cd95457019ff57c223134f6b7d40e91001ee9af2f4f9704be0ae78ccd8199a002674e099b6029dc669f6d5ea5b755de354762b23a68206c271242b505e658abb54ab41f116e63015c48845c3563874b275d62b23a68206c271242b505e658abb54ab41f116e63015c48845c3563874b275d0599f06d15fed3036f4f5f3678eb10ca7c3cb4d5d80f0bd76f3e8fc7506a7f134957276c8f949b869c6c8bd9b52c9df838648f081de5dc6af46d112332a75a874957276c8f949b869c6c8bd9b52c9df838648f081de5dc6af46d112332a75a879b4c95695fe93648e1ba2a278d37a23c34681e57e77c8de02213bc08b639538d0b9bb56cc6b3aa823d874e9881ba4b64eb24048f6a43cb6a7df5fe7cdc5c287c0b9bb56cc6b3aa823d874e9881ba4b64eb24048f6a43cb6a7df5fe7cdc5c287cd7c5a31aa961e690b6051741716b009a02bd88682812c4dd7981420622a9b3e319ec279f8bfe90778be4e85ec118c90ffc088b38fd306f9d1520f3780146cf4bc144b3525261a41e6fbc642f2c83c7d7d1532737a342b74d77fffcd33fd0505e4247b01167c3ec00d7ce13e9fa3dce833f20f6d7aad5743849bdd27e54c29bf514cf9bc84051d0462b5909d982d3fc03c03497f6ec206211de5db9284e5ba347dac89a0fe10b53ff4554848fd04c8e4d598581dc87a05ce053538e05fe92be86fac9083297cfcfe18d05d207dc636c822cc1a9c5238c411383290d8de7b522a6a942a082cd0368a13e45a14d0eaa906d96a00fd8eecb27eb8eb64f65ba68d104e8d29045907c0a92bcb1190408afb163fa9cc07df45285ab20be5dedb7bb2ead6c90f2a5244023569c841d47eb660b1d43136a78e33f5839d410b5acf7e589a033f9c523cb0bb2654b6e7e0efb0ddb199764ed4331da8a117274cca1a48f704733f9c523cb0bb2654b6e7e0efb0ddb199764ed4331da8a117274cca1a48f704746f0d0a352614e263bfd7663a9ba56c01da07373b2b2413d82b2c3a8bede0eeca3bb192cedf7d8234ffb6a50bea71b9383f6fd6aaee26eebafcf1877b7c4b9b4badb6d247071803b71dea3700709d9f4ff7a4eb0eb4e8733d142a7a8ad426f4c609bd27a79de1d7f1c1b4889fbc3b87dd1c24058b3845e19997bbc05dc64301c44df0d005731d0779731d4e5d4fc76214585b62dabef4a944e011dfb4f37524444df0d005731d0779731d4e5d4fc76214585b62dabef4a944e011dfb4f3752445b454274143feca20b3d813d81813a2a77f838ba2659d91334051bb17a79cb7f268a6e69e8c5c6eae045b7a063f20cde26ca2122fa87a2f5a37c9997afffeb6d8cd816f4c5044b3ddc635591982e16fab97f4bf3e67f561b6f2bacf703e744578cd816f4c5044b3ddc635591982e16fab97f4bf3e67f561b6f2bacf703e744576598b8ff5e45bd5a98c9794e66e4ccd4e82d03d329020866f2c4246bf535a65d8859836d576e75640a8757bd8918fd63dea496577c2ff17174404b35f25b71fe43707f44d37bfa435768a1f366e23124399985cff37c04e49b0b0f82dd6038bbb82dce2cc1e57b69f0aaca10f19cc29a13b62971ca71d9fdc848b65ec761142709c6f8c98be6411155e592baa278706440833ae69e976728906a80d618ec3e4709c6f8c98be6411155e592baa278706440833ae69e976728906a80d618ec3e47ec7817d749040f8f28ab3b468fe151cee99d96a843eddc70c47d26de79a9cea85e7d6cb834b5be54f521e83d7cd6635ac6f2969a6548fd90366b6b3fbc7d2a0d5e7d6cb834b5be54f521e83d7cd6635ac6f2969a6548fd90366b6b3fbc7d2a0d53bd68cb71c1eb3ec8394a3089006c948daeca08342bb99e7b5144f458d3d592a27a6258ec37c7c70f370821462c7ac34aca01c21b6553a992dc3e56a4c3dd7da27a6258ec37c7c70f370821462c7ac34aca01c21b6553a992dc3e56a4c3dd7dbbf4a911e3622d8b327121647d6e2335fed0563325bce4913848de3e41f28a7a616bd2cb2e5162f452794fddad629d9d4b9f7b9350ec2c5ea502f92ee45bdb0e616bd2cb2e5162f452794fddad629d9d4b9f7b9350ec2c5ea502f92ee45bdb0e534d4018e049c49537d34bf8aa600fafb8fa61ad191537456a877f55359d9f51c13e805b835e3f0743dc6912bc4806d4a0051188d1f4edc1f92d66ee7cd4453ac13e805b835e3f0743dc6912bc4806d4a0051188d1f4edc1f92d66ee7cd4453a7b57ad090e893a2e95d7d545fd5e068e62063fadf062e629cedcea1c310dae995702a949ce9abcf9cb4c38877790a57b9d036fd16c66024519c1fdacf73f52565702a949ce9abcf9cb4c38877790a57b9d036fd16c66024519c1fdacf73f52567655fa683755eae6e19f73edd8e7777742907361746883fade1e08bcd20bde6f05e03189f25e70b5f6f3b5a162fdaaf619096d1793421e34cef5fe3d34d4cc1e0e9c386cbc55bc140a01fa5ee6209a265ddfed9aee1b163429da93a625104fa7bb62253b6c2986c42068adaf1031e09b3d0e932c6fe861ca262a3631d907146582d45c144c3a326e9a033f1228f34b03ebfd3397931b95535f3d201b23d5783d82d45c144c3a326e9a033f1228f34b03ebfd3397931b95535f3d201b23d5783dde4d1f2d2ad5ad0cfd1657a106476b31cb5db5ef9d1ff842b237c0c81f0c8a239f47df778a81f7a6db680f44c1611a5b4c4c9c4ff840b09d3bcf6fea974cdf2ac1649ee90f8535de061b77e5db7a60bdd33daa50c5fbd48f54123fd1c2127854538fc2d314bcd99a69ed886f99cb49eb98f2eef449e120ceeb9d71168e26f539python2.7python2.7python2.7python2.1.gzpython2.7.1.gzrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-base-2.7.18-150000.111.1.src.rpmpython(abi)python-argparsepython-basepython-basepython-base(aarch-64)python-ctypespython2-argparsepython2-base@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/usr/bin/python/usr/bin/python2.7ld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libbz2.so.1()(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libcrypt.so.1()(64bit)libcrypt.so.1(GLIBC_2.17)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.17)(64bit)libffi.so.7()(64bit)libffi.so.7(LIBFFI_BASE_7.0)(64bit)libffi.so.7(LIBFFI_CLOSURE_7.0)(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.17)(64bit)libnsl.so.2()(64bit)libnsl.so.2(LIBNSL_1.0)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)libpython2.7.so.1.0()(64bit)libpython2_7-1_0libtirpc.so.3()(64bit)libtirpc.so.3(TIRPC_0.3.0)(64bit)libz.so.1()(64bit)libz.so.1(ZLIB_1.2.0)(64bit)python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.7.18-150000.111.12.73.0.4-14.6.0-14.0.4-14.0-15.2-14.14.1iq@i@i+@i+@i@i@i@i@iwW@i_@i@i h@hxgw@g@g@g4f@fH@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, gh#python/cpython#103848#issuecomment-2708135083).- Modify CVE-2025-0938-sq-brackets-domain-names.patch: we don't use bracketed_host variable any more (correction of the fix for bsc#1236705, discovered during analysis for bsc#1223694).- Add CVE-2025-0938-sq-brackets-domain-names.patch which disallows square brackets ([ and ]) in domain names for parsed URLs (bsc#1236705, CVE-2025-0938, gh#python/cpython#105704)- Add CVE-2024-11168-validation-IPv6-addrs.patch fixing bsc#1233307 (CVE-2024-11168, gh#python/cpython#103848): Improper validation of IPv6 and IPvFuture addresses. - Add ipaddress module from https://github.com/phihag/ipaddress - Remove -IVendor/ from python-config boo#1231795- Stop using %%defattr, it seems to be breaking proper executable attributes on /usr/bin/ scripts (bsc#1227378).- bsc#1221854 (CVE-2024-0450) Add CVE-2024-0450-zipfile-avoid-quoted-overlap-zipbomb.patch detecting the vulnerability of the "quoted-overlap" zipbomb (from gh#python/cpython!110016).- Switch to using the system libexpat (bsc#1219559, CVE-2023-52425) - Make sure to remove all embedded versions of other packages (including expat). - Add CVE-2023-52425-libexpat-2.6.0-remove-failing-tests.patch removing failing test fixing bpo#3151, which we just not support. - Remove patches over those embedded packages (cffi): - python-2.7-libffi-aarch64.patch - sparc_longdouble.patch- Modify CVE-2023-27043-email-parsing-errors.patch to fix the unicode string handling in email.utils.parseaddr() (bsc#1222537). - Revert CVE-2022-48560-after-free-heappushpop.patch, the fix was unneeded.- Switch off tests. ONLY FOR FACTORY!!! (bsc#1219306)- Build with -std=gnu89 to build correctly with gcc14, bsc#1220970- Add CVE-2023-27043-email-parsing-errors.patch to gh#python/cpython!111116, fixing bsc#1210638 (CVE-2023-27043).- Add CVE-2022-48560-after-free-heappushpop.patch fixing use-after-free in Python via heappushpop in heapq (bsc#1214675, CVE-2022-48560). - switch from %patchN style to the %patch -P N one.- (bsc#1214691, CVE-2022-48566) Add CVE-2022-48566-compare_digest-more-constant.patch to make compare_digest more constant-time. - Allow nis.so for SLE-12.- (bsc#1214685, CVE-2022-48565) Add CVE-2022-48565-plistlib-XML-vulns.patch (from gh#python/cpython#86217) reject XML entity declarations in plist files. - Remove BOTH CVE-2023-27043-email-parsing-errors.patch and Revert-gh105127-left-tests.patch (as per discussion on bsc#1210638).- Add CVE-2023-40217-avoid-ssl-pre-close.patch fixing gh#python/cpython#108310, backport from upstream patch gh#python/cpython#108315 (bsc#1214692, CVE-2023-40217)- IT MEANS THAT bsc#1210638 STILL HAS NOT BEEN FIXED! - Add Revert-gh105127-left-tests.patch (gh#python/cpython!106941) partially reverting CVE-2023-27043-email-parsing-errors.patch, because of the regression in gh#python/cpython#106669.- (bsc#1210638, CVE-2023-27043) Add CVE-2023-27043-email-parsing-errors.patch, which detects email address parsing errors and returns empty tuple to indicate the parsing error (old API).- Fix the application of the python-2.7.17-switch-off-failing-SSL-tests.patch.- python-2.7.5-multilib.patch: Update for riscv64 - Don't fail if _ctypes or dl extension was not built- The condition around libnsl-devel BuildRequires is NOT switching off NIS support on SLE < 15, support for NIS used to be in the glibc itself. Partial revert of sr#1061583.- Add PygmentsBridge-trime_doctest_flags.patch to allow build of the documentation even with the current Sphinx. (SUSE-ONLY PATCH, DO NOT SEND UPSTREAM!)- Enable --with-system-ffi for non-standard architectures.- SLE-12 builds nis.so as well.- Add CVE-2023-24329-blank-URL-bypass.patch (CVE-2023-24329, bsc#1208471) blocklists bypass via the urllib.parse component when supplying a URL that starts with blank characters- Disable NIS for new products, it's deprecated and gets removed- Add skip_unverified_test.patch because apparently switching off SSL verification doesn't work on older SLE.- Restore python-2.7.9-sles-disable-verification-by-default.patch for SLE-12.- Add CVE-2022-45061-DoS-by-IDNA-decode.patch to avoid CVE-2022-45061 (bsc#1205244) allowing DoS by IDNA decoding extremely long domain names.- Add bpo34990-2038-problem-compileall.patch making compileall.py compliant with year 2038 (bsc#1202666, gh#python/cpython#79171), backport of fix to Python 2.7.- Add patch CVE-2021-28861-double-slash-path.patch: * BaseHTTPServer: Fix an open redirection vulnerability in the HTTP server when an URI path starts with //. (bsc#1202624, CVE-2021-28861)- Add CVE-2015-20107-mailcap-unsafe-filenames.patch to avoid CVE-2015-20107 (bsc#1198511, gh#python/cpython#68966), the command injection in the mailcap module.- Filter out executable-stack error that is triggered for i586 target.- Update bundled pip wheel to the latest SLE version patched against bsc#1186819 (CVE-2021-3572). - Recover again proper value of %python2_package_prefix (bsc#1175619).- BuildRequire rpm-build-python: The provider to inject python(abi) has been moved there. rpm-build pulls rpm-build-python automatically in when building anything against python3-base, but this implies that the initial build of python3-base does not trigger the automatic installation.- Older SLE versions should use old OpenSSL.- Add CVE-2022-0391-urllib_parse-newline-parsing.patch (bsc#1195396, CVE-2022-0391, bpo#43882) sanitizing URLs containing ASCII newline and tabs in urlparse.- Add CVE-2021-4189-ftplib-trust-PASV-resp.patch (bsc#1194146, bpo#43285, CVE-2021-4189, gh#python/cpython#24838) make ftplib not trust the PASV response.- build against openssl 1.1.x (incompatible with openssl 3.0x) for now.- on sle12, python2 modules will still be called python-xxxx until EOL, for newer SLE versions they will be python2-xxxx- BuildRequire rpm-build-python: The provider to inject python(abi) has been moved there. rpm-build pulls rpm-build-python automatically in when building anything against python3-base, but this implies that the initial build of python3-base does not trigger the automatic installation.- Add CVE-2019-20907_tarfile-inf-loop.patch fixing bsc#1174091 (CVE-2019-20907, bpo#39017) avoiding possible infinite loop in specifically crafted tarball. Add recursion.tar as a testing tarball for the patch. - Provide the newest setuptools wheel (bsc#1176262, CVE-2019-20916) in their correct form (bsc#1180686). - Add CVE-2020-26116-httplib-header-injection.patch fixing bsc#1177211 (CVE-2020-26116, bpo#39603) no longer allowing special characters in the method parameter of HTTPConnection.putrequest in httplib, stopping injection of headers. Such characters now raise ValueError.- Renamed patch for assigned CVE: * bpo44022-fix-http-client-infinite-line-reading-after-a-HTTP-100-Continue.patch -> 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 modepython-argparsepython-ctypesh02-armsrv1 1774984415  !"#$%%'((*++-..0113446779::<==?@@BCDEFFHIIKLLNOOQRRTUUWXXZ[[]^^`abcddfggijjlmnopprssuvvxyy{||~      !""$%%'((*++-..0113446779::<==?@@BCCEFFHIIKLLNOOQRRTUUWXXZ[[]^_`abcddfggijjlmmopprssuvvxyy{||~      !"#$%&'((*++-..0123446779::<=>??ABCDEFFHIIKLLNOOQRRTUUWXXZ[[]^^`aacddfggijjlmmopprssuvvxyy{||~      !""$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZZY]]_`abcceffhijjlmmopprstuvvxyy{|}~      !!#$$&'')**,--/00233566899;<<>??ABBDEEGHHJKKMNNPQQSTTVWWYZZ\]]_``bcceffhiikllnooqrrtuuwxxz{{}~~     !""$%&'((*+,-..0122456788:;;=>?@ABBDEEGHHJKKMNOOQRRTUUWXXZ[[]^^`aacddfggijjlmmopprssuvvxyy{||~      !!#$%&'')**,-./00233567899;<<>??ABBDEFGHHJKKMNNPQQSTTVWWYZZ\]]_``bcceffhiikllnooqrrtuuwxxz{|}~      !"#$%&'()*+,--/01234567899;<<>??ABBDEEGHHJKKMNNPQRSTTVWWYZ[[]^_`abcddfggijkkmnnpqqsttvwxxz{|}~      !!#$%&'')*+,--/0023356789:;<<>??ABBDEFFHIIKLLNOPQRRTUUWXXZ[[]^^`abbdeeghhjkkmnnpqqsttvwwyzz|}~2.71.4.0.12.72.7.18-150000.111.12.7.18-150000.111.11.1.01.4.0.12.7.181.4.0.11.1.0      !!""""""!! #########$$$$$$$%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&''''''(())))))))))))))))))))))))))))*********************************************)))++++++++++++++++++,---...pydocpythonpython2python2.7smtpd.pypython2.7pyconfig.hpython2.7site-packagesmacros.python2pythonpython2.7BaseHTTPServer.pyBaseHTTPServer.pycBaseHTTPServer.pyoBastion.pyBastion.pycBastion.pyoCGIHTTPServer.pyCGIHTTPServer.pycCGIHTTPServer.pyoConfigParser.pyConfigParser.pycConfigParser.pyoCookie.pyCookie.pycCookie.pyoDocXMLRPCServer.pyDocXMLRPCServer.pycDocXMLRPCServer.pyoHTMLParser.pyHTMLParser.pycHTMLParser.pyoLICENSE.txtMimeWriter.pyMimeWriter.pycMimeWriter.pyoQueue.pyQueue.pycQueue.pyoSimpleHTTPServer.pySimpleHTTPServer.pycSimpleHTTPServer.pyoSimpleXMLRPCServer.pySimpleXMLRPCServer.pycSimpleXMLRPCServer.pyoSocketServer.pySocketServer.pycSocketServer.pyoStringIO.pyStringIO.pycStringIO.pyoUserDict.pyUserDict.pycUserDict.pyoUserList.pyUserList.pycUserList.pyoUserString.pyUserString.pycUserString.pyo_LWPCookieJar.py_LWPCookieJar.pyc_LWPCookieJar.pyo_MozillaCookieJar.py_MozillaCookieJar.pyc_MozillaCookieJar.pyo__future__.py__future__.pyc__future__.pyo__phello__.foo.py__phello__.foo.pyc__phello__.foo.pyo_abcoll.py_abcoll.pyc_abcoll.pyo_osx_support.py_osx_support.pyc_osx_support.pyo_pyio.py_pyio.pyc_pyio.pyo_strptime.py_strptime.pyc_strptime.pyo_sysconfigdata.py_sysconfigdata.pyc_sysconfigdata.pyo_threading_local.py_threading_local.pyc_threading_local.pyo_weakrefset.py_weakrefset.pyc_weakrefset.pyoabc.pyabc.pycabc.pyoaifc.pyaifc.pycaifc.pyoantigravity.pyantigravity.pycantigravity.pyoanydbm.pyanydbm.pycanydbm.pyoargparse.pyargparse.pycargparse.pyoast.pyast.pycast.pyoasynchat.pyasynchat.pycasynchat.pyoasyncore.pyasyncore.pycasyncore.pyoatexit.pyatexit.pycatexit.pyoaudiodev.pyaudiodev.pycaudiodev.pyobase64.pybase64.pycbase64.pyobdb.pybdb.pycbdb.pyobinhex.pybinhex.pycbinhex.pyobisect.pybisect.pycbisect.pyocProfile.pycProfile.pyccProfile.pyocalendar.pycalendar.pyccalendar.pyocgi.pycgi.pyccgi.pyocgitb.pycgitb.pyccgitb.pyochunk.pychunk.pycchunk.pyocmd.pycmd.pyccmd.pyocode.pycode.pyccode.pyocodecs.pycodecs.pyccodecs.pyocodeop.pycodeop.pyccodeop.pyocollections.pycollections.pyccollections.pyocolorsys.pycolorsys.pyccolorsys.pyocommands.pycommands.pyccommands.pyocompileall.pycompileall.pyccompileall.pyocompiler__init__.py__init__.pyc__init__.pyoast.pyast.pycast.pyoconsts.pyconsts.pycconsts.pyofuture.pyfuture.pycfuture.pyomisc.pymisc.pycmisc.pyopyassem.pypyassem.pycpyassem.pyopycodegen.pypycodegen.pycpycodegen.pyosymbols.pysymbols.pycsymbols.pyosyntax.pysyntax.pycsyntax.pyotransformer.pytransformer.pyctransformer.pyovisitor.pyvisitor.pycvisitor.pyoconfigMakefileSetupcontextlib.pycontextlib.pyccontextlib.pyocookielib.pycookielib.pyccookielib.pyocopy.pycopy.pyccopy.pyocopy_reg.pycopy_reg.pyccopy_reg.pyocsv.pycsv.pyccsv.pyoctypes__init__.py__init__.pyc__init__.pyo_endian.py_endian.pyc_endian.pyomacholibREADME.ctypes__init__.py__init__.pyc__init__.pyodyld.pydyld.pycdyld.pyodylib.pydylib.pycdylib.pyofetch_macholibfetch_macholib.batframework.pyframework.pycframework.pyotest__init__.py__init__.pyc__init__.pyoruntests.pyruntests.pycruntests.pyotest_anon.pytest_anon.pyctest_anon.pyotest_array_in_pointer.pytest_array_in_pointer.pyctest_array_in_pointer.pyotest_arrays.pytest_arrays.pyctest_arrays.pyotest_as_parameter.pytest_as_parameter.pyctest_as_parameter.pyotest_bitfields.pytest_bitfields.pyctest_bitfields.pyotest_buffers.pytest_buffers.pyctest_buffers.pyotest_byteswap.pytest_byteswap.pyctest_byteswap.pyotest_callbacks.pytest_callbacks.pyctest_callbacks.pyotest_cast.pytest_cast.pyctest_cast.pyotest_cfuncs.pytest_cfuncs.pyctest_cfuncs.pyotest_checkretval.pytest_checkretval.pyctest_checkretval.pyotest_delattr.pytest_delattr.pyctest_delattr.pyotest_errno.pytest_errno.pyctest_errno.pyotest_find.pytest_find.pyctest_find.pyotest_frombuffer.pytest_frombuffer.pyctest_frombuffer.pyotest_funcptr.pytest_funcptr.pyctest_funcptr.pyotest_functions.pytest_functions.pyctest_functions.pyotest_incomplete.pytest_incomplete.pyctest_incomplete.pyotest_init.pytest_init.pyctest_init.pyotest_internals.pytest_internals.pyctest_internals.pyotest_keeprefs.pytest_keeprefs.pyctest_keeprefs.pyotest_libc.pytest_libc.pyctest_libc.pyotest_loading.pytest_loading.pyctest_loading.pyotest_macholib.pytest_macholib.pyctest_macholib.pyotest_memfunctions.pytest_memfunctions.pyctest_memfunctions.pyotest_numbers.pytest_numbers.pyctest_numbers.pyotest_objects.pytest_objects.pyctest_objects.pyotest_parameters.pytest_parameters.pyctest_parameters.pyotest_pep3118.pytest_pep3118.pyctest_pep3118.pyotest_pickling.pytest_pickling.pyctest_pickling.pyotest_pointers.pytest_pointers.pyctest_pointers.pyotest_prototypes.pytest_prototypes.pyctest_prototypes.pyotest_python_api.pytest_python_api.pyctest_python_api.pyotest_random_things.pytest_random_things.pyctest_random_things.pyotest_refcounts.pytest_refcounts.pyctest_refcounts.pyotest_repr.pytest_repr.pyctest_repr.pyotest_returnfuncptrs.pytest_returnfuncptrs.pyctest_returnfuncptrs.pyotest_simplesubclasses.pytest_simplesubclasses.pyctest_simplesubclasses.pyotest_sizes.pytest_sizes.pyctest_sizes.pyotest_slicing.pytest_slicing.pyctest_slicing.pyotest_stringptr.pytest_stringptr.pyctest_stringptr.pyotest_strings.pytest_strings.pyctest_strings.pyotest_struct_fields.pytest_struct_fields.pyctest_struct_fields.pyotest_structures.pytest_structures.pyctest_structures.pyotest_unaligned_structures.pytest_unaligned_structures.pyctest_unaligned_structures.pyotest_unicode.pytest_unicode.pyctest_unicode.pyotest_values.pytest_values.pyctest_values.pyotest_varsize_struct.pytest_varsize_struct.pyctest_varsize_struct.pyotest_win32.pytest_win32.pyctest_win32.pyotest_wintypes.pytest_wintypes.pyctest_wintypes.pyoutil.pyutil.pycutil.pyowintypes.pywintypes.pycwintypes.pyodbhash.pydbhash.pycdbhash.pyodecimal.pydecimal.pycdecimal.pyodifflib.pydifflib.pycdifflib.pyodircache.pydircache.pycdircache.pyodis.pydis.pycdis.pyodistutilsREADME__init__.py__init__.pyc__init__.pyoarchive_util.pyarchive_util.pycarchive_util.pyobcppcompiler.pybcppcompiler.pycbcppcompiler.pyoccompiler.pyccompiler.pycccompiler.pyocmd.pycmd.pyccmd.pyocommand__init__.py__init__.pyc__init__.pyobdist.pybdist.pycbdist.pyobdist_dumb.pybdist_dumb.pycbdist_dumb.pyobdist_msi.pybdist_msi.pycbdist_msi.pyobdist_rpm.pybdist_rpm.pycbdist_rpm.pyobdist_wininst.pybdist_wininst.pycbdist_wininst.pyobuild.pybuild.pycbuild.pyobuild_clib.pybuild_clib.pycbuild_clib.pyobuild_ext.pybuild_ext.pycbuild_ext.pyobuild_py.pybuild_py.pycbuild_py.pyobuild_scripts.pybuild_scripts.pycbuild_scripts.pyocheck.pycheck.pyccheck.pyoclean.pyclean.pycclean.pyocommand_templateconfig.pyconfig.pycconfig.pyoinstall.pyinstall.pycinstall.pyoinstall_data.pyinstall_data.pycinstall_data.pyoinstall_egg_info.pyinstall_egg_info.pycinstall_egg_info.pyoinstall_headers.pyinstall_headers.pycinstall_headers.pyoinstall_lib.pyinstall_lib.pycinstall_lib.pyoinstall_scripts.pyinstall_scripts.pycinstall_scripts.pyoregister.pyregister.pycregister.pyosdist.pysdist.pycsdist.pyoupload.pyupload.pycupload.pyoconfig.pyconfig.pycconfig.pyocore.pycore.pyccore.pyocygwinccompiler.pycygwinccompiler.pyccygwinccompiler.pyodebug.pydebug.pycdebug.pyodep_util.pydep_util.pycdep_util.pyodir_util.pydir_util.pycdir_util.pyodist.pydist.pycdist.pyoemxccompiler.pyemxccompiler.pycemxccompiler.pyoerrors.pyerrors.pycerrors.pyoextension.pyextension.pycextension.pyofancy_getopt.pyfancy_getopt.pycfancy_getopt.pyofile_util.pyfile_util.pycfile_util.pyofilelist.pyfilelist.pycfilelist.pyolog.pylog.pyclog.pyomsvc9compiler.pymsvc9compiler.pycmsvc9compiler.pyomsvccompiler.pymsvccompiler.pycmsvccompiler.pyospawn.pyspawn.pycspawn.pyosysconfig.pysysconfig.pycsysconfig.pyotestsSetup.sample__init__.py__init__.pyc__init__.pyoincludetest.rstsetuptools_build_ext.pysetuptools_build_ext.pycsetuptools_build_ext.pyosetuptools_extension.pysetuptools_extension.pycsetuptools_extension.pyosupport.pysupport.pycsupport.pyotest_archive_util.pytest_archive_util.pyctest_archive_util.pyotest_bdist.pytest_bdist.pyctest_bdist.pyotest_bdist_dumb.pytest_bdist_dumb.pyctest_bdist_dumb.pyotest_bdist_msi.pytest_bdist_msi.pyctest_bdist_msi.pyotest_bdist_rpm.pytest_bdist_rpm.pyctest_bdist_rpm.pyotest_bdist_wininst.pytest_bdist_wininst.pyctest_bdist_wininst.pyotest_build.pytest_build.pyctest_build.pyotest_build_clib.pytest_build_clib.pyctest_build_clib.pyotest_build_ext.pytest_build_ext.pyctest_build_ext.pyotest_build_py.pytest_build_py.pyctest_build_py.pyotest_build_scripts.pytest_build_scripts.pyctest_build_scripts.pyotest_ccompiler.pytest_ccompiler.pyctest_ccompiler.pyotest_check.pytest_check.pyctest_check.pyotest_clean.pytest_clean.pyctest_clean.pyotest_cmd.pytest_cmd.pyctest_cmd.pyotest_config.pytest_config.pyctest_config.pyotest_config_cmd.pytest_config_cmd.pyctest_config_cmd.pyotest_core.pytest_core.pyctest_core.pyotest_dep_util.pytest_dep_util.pyctest_dep_util.pyotest_dir_util.pytest_dir_util.pyctest_dir_util.pyotest_dist.pytest_dist.pyctest_dist.pyotest_file_util.pytest_file_util.pyctest_file_util.pyotest_filelist.pytest_filelist.pyctest_filelist.pyotest_install.pytest_install.pyctest_install.pyotest_install_data.pytest_install_data.pyctest_install_data.pyotest_install_headers.pytest_install_headers.pyctest_install_headers.pyotest_install_lib.pytest_install_lib.pyctest_install_lib.pyotest_install_scripts.pytest_install_scripts.pyctest_install_scripts.pyotest_msvc9compiler.pytest_msvc9compiler.pyctest_msvc9compiler.pyotest_register.pytest_register.pyctest_register.pyotest_sdist.pytest_sdist.pyctest_sdist.pyotest_spawn.pytest_spawn.pyctest_spawn.pyotest_sysconfig.pytest_sysconfig.pyctest_sysconfig.pyotest_text_file.pytest_text_file.pyctest_text_file.pyotest_unixccompiler.pytest_unixccompiler.pyctest_unixccompiler.pyotest_upload.pytest_upload.pyctest_upload.pyotest_util.pytest_util.pyctest_util.pyotest_version.pytest_version.pyctest_version.pyotest_versionpredicate.pytest_versionpredicate.pyctest_versionpredicate.pyoxxmodule.ctext_file.pytext_file.pyctext_file.pyounixccompiler.pyunixccompiler.pycunixccompiler.pyoutil.pyutil.pycutil.pyoversion.pyversion.pycversion.pyoversionpredicate.pyversionpredicate.pycversionpredicate.pyodoctest.pydoctest.pycdoctest.pyodumbdbm.pydumbdbm.pycdumbdbm.pyodummy_thread.pydummy_thread.pycdummy_thread.pyodummy_threading.pydummy_threading.pycdummy_threading.pyoemail__init__.py__init__.pyc__init__.pyo_parseaddr.py_parseaddr.pyc_parseaddr.pyobase64mime.pybase64mime.pycbase64mime.pyocharset.pycharset.pyccharset.pyoencoders.pyencoders.pycencoders.pyoerrors.pyerrors.pycerrors.pyofeedparser.pyfeedparser.pycfeedparser.pyogenerator.pygenerator.pycgenerator.pyoheader.pyheader.pycheader.pyoiterators.pyiterators.pyciterators.pyomessage.pymessage.pycmessage.pyomime__init__.py__init__.pyc__init__.pyoapplication.pyapplication.pycapplication.pyoaudio.pyaudio.pycaudio.pyobase.pybase.pycbase.pyoimage.pyimage.pycimage.pyomessage.pymessage.pycmessage.pyomultipart.pymultipart.pycmultipart.pyononmultipart.pynonmultipart.pycnonmultipart.pyotext.pytext.pyctext.pyoparser.pyparser.pycparser.pyoquoprimime.pyquoprimime.pycquoprimime.pyotest__init__.py__init__.pyc__init__.pyodataPyBanner048.gifaudiotest.aumsg_01.txtmsg_02.txtmsg_03.txtmsg_04.txtmsg_05.txtmsg_06.txtmsg_07.txtmsg_08.txtmsg_09.txtmsg_10.txtmsg_11.txtmsg_12.txtmsg_12a.txtmsg_13.txtmsg_14.txtmsg_15.txtmsg_16.txtmsg_17.txtmsg_18.txtmsg_19.txtmsg_20.txtmsg_21.txtmsg_22.txtmsg_23.txtmsg_24.txtmsg_25.txtmsg_26.txtmsg_27.txtmsg_28.txtmsg_29.txtmsg_30.txtmsg_31.txtmsg_32.txtmsg_33.txtmsg_34.txtmsg_35.txtmsg_36.txtmsg_37.txtmsg_38.txtmsg_39.txtmsg_40.txtmsg_41.txtmsg_42.txtmsg_43.txtmsg_44.txtmsg_45.txtmsg_46.txttest_email.pytest_email.pyctest_email.pyotest_email_codecs.pytest_email_codecs.pyctest_email_codecs.pyotest_email_codecs_renamed.pytest_email_codecs_renamed.pyctest_email_codecs_renamed.pyotest_email_renamed.pytest_email_renamed.pyctest_email_renamed.pyotest_email_torture.pytest_email_torture.pyctest_email_torture.pyoutils.pyutils.pycutils.pyoencodings__init__.py__init__.pyc__init__.pyoaliases.pyaliases.pycaliases.pyoascii.pyascii.pycascii.pyobase64_codec.pybase64_codec.pycbase64_codec.pyobig5.pybig5.pycbig5.pyobig5hkscs.pybig5hkscs.pycbig5hkscs.pyobz2_codec.pybz2_codec.pycbz2_codec.pyocharmap.pycharmap.pyccharmap.pyocp037.pycp037.pyccp037.pyocp1006.pycp1006.pyccp1006.pyocp1026.pycp1026.pyccp1026.pyocp1140.pycp1140.pyccp1140.pyocp1250.pycp1250.pyccp1250.pyocp1251.pycp1251.pyccp1251.pyocp1252.pycp1252.pyccp1252.pyocp1253.pycp1253.pyccp1253.pyocp1254.pycp1254.pyccp1254.pyocp1255.pycp1255.pyccp1255.pyocp1256.pycp1256.pyccp1256.pyocp1257.pycp1257.pyccp1257.pyocp1258.pycp1258.pyccp1258.pyocp424.pycp424.pyccp424.pyocp437.pycp437.pyccp437.pyocp500.pycp500.pyccp500.pyocp720.pycp720.pyccp720.pyocp737.pycp737.pyccp737.pyocp775.pycp775.pyccp775.pyocp850.pycp850.pyccp850.pyocp852.pycp852.pyccp852.pyocp855.pycp855.pyccp855.pyocp856.pycp856.pyccp856.pyocp857.pycp857.pyccp857.pyocp858.pycp858.pyccp858.pyocp860.pycp860.pyccp860.pyocp861.pycp861.pyccp861.pyocp862.pycp862.pyccp862.pyocp863.pycp863.pyccp863.pyocp864.pycp864.pyccp864.pyocp865.pycp865.pyccp865.pyocp866.pycp866.pyccp866.pyocp869.pycp869.pyccp869.pyocp874.pycp874.pyccp874.pyocp875.pycp875.pyccp875.pyocp932.pycp932.pyccp932.pyocp949.pycp949.pyccp949.pyocp950.pycp950.pyccp950.pyoeuc_jis_2004.pyeuc_jis_2004.pyceuc_jis_2004.pyoeuc_jisx0213.pyeuc_jisx0213.pyceuc_jisx0213.pyoeuc_jp.pyeuc_jp.pyceuc_jp.pyoeuc_kr.pyeuc_kr.pyceuc_kr.pyogb18030.pygb18030.pycgb18030.pyogb2312.pygb2312.pycgb2312.pyogbk.pygbk.pycgbk.pyohex_codec.pyhex_codec.pychex_codec.pyohp_roman8.pyhp_roman8.pychp_roman8.pyohz.pyhz.pychz.pyoidna.pyidna.pycidna.pyoiso2022_jp.pyiso2022_jp.pyciso2022_jp.pyoiso2022_jp_1.pyiso2022_jp_1.pyciso2022_jp_1.pyoiso2022_jp_2.pyiso2022_jp_2.pyciso2022_jp_2.pyoiso2022_jp_2004.pyiso2022_jp_2004.pyciso2022_jp_2004.pyoiso2022_jp_3.pyiso2022_jp_3.pyciso2022_jp_3.pyoiso2022_jp_ext.pyiso2022_jp_ext.pyciso2022_jp_ext.pyoiso2022_kr.pyiso2022_kr.pyciso2022_kr.pyoiso8859_1.pyiso8859_1.pyciso8859_1.pyoiso8859_10.pyiso8859_10.pyciso8859_10.pyoiso8859_11.pyiso8859_11.pyciso8859_11.pyoiso8859_13.pyiso8859_13.pyciso8859_13.pyoiso8859_14.pyiso8859_14.pyciso8859_14.pyoiso8859_15.pyiso8859_15.pyciso8859_15.pyoiso8859_16.pyiso8859_16.pyciso8859_16.pyoiso8859_2.pyiso8859_2.pyciso8859_2.pyoiso8859_3.pyiso8859_3.pyciso8859_3.pyoiso8859_4.pyiso8859_4.pyciso8859_4.pyoiso8859_5.pyiso8859_5.pyciso8859_5.pyoiso8859_6.pyiso8859_6.pyciso8859_6.pyoiso8859_7.pyiso8859_7.pyciso8859_7.pyoiso8859_8.pyiso8859_8.pyciso8859_8.pyoiso8859_9.pyiso8859_9.pyciso8859_9.pyojohab.pyjohab.pycjohab.pyokoi8_r.pykoi8_r.pyckoi8_r.pyokoi8_u.pykoi8_u.pyckoi8_u.pyolatin_1.pylatin_1.pyclatin_1.pyomac_arabic.pymac_arabic.pycmac_arabic.pyomac_centeuro.pymac_centeuro.pycmac_centeuro.pyomac_croatian.pymac_croatian.pycmac_croatian.pyomac_cyrillic.pymac_cyrillic.pycmac_cyrillic.pyomac_farsi.pymac_farsi.pycmac_farsi.pyomac_greek.pymac_greek.pycmac_greek.pyomac_iceland.pymac_iceland.pycmac_iceland.pyomac_latin2.pymac_latin2.pycmac_latin2.pyomac_roman.pymac_roman.pycmac_roman.pyomac_romanian.pymac_romanian.pycmac_romanian.pyomac_turkish.pymac_turkish.pycmac_turkish.pyombcs.pymbcs.pycmbcs.pyopalmos.pypalmos.pycpalmos.pyoptcp154.pyptcp154.pycptcp154.pyopunycode.pypunycode.pycpunycode.pyoquopri_codec.pyquopri_codec.pycquopri_codec.pyoraw_unicode_escape.pyraw_unicode_escape.pycraw_unicode_escape.pyorot_13.pyrot_13.pycrot_13.pyoshift_jis.pyshift_jis.pycshift_jis.pyoshift_jis_2004.pyshift_jis_2004.pycshift_jis_2004.pyoshift_jisx0213.pyshift_jisx0213.pycshift_jisx0213.pyostring_escape.pystring_escape.pycstring_escape.pyotis_620.pytis_620.pyctis_620.pyoundefined.pyundefined.pycundefined.pyounicode_escape.pyunicode_escape.pycunicode_escape.pyounicode_internal.pyunicode_internal.pycunicode_internal.pyoutf_16.pyutf_16.pycutf_16.pyoutf_16_be.pyutf_16_be.pycutf_16_be.pyoutf_16_le.pyutf_16_le.pycutf_16_le.pyoutf_32.pyutf_32.pycutf_32.pyoutf_32_be.pyutf_32_be.pycutf_32_be.pyoutf_32_le.pyutf_32_le.pycutf_32_le.pyoutf_7.pyutf_7.pycutf_7.pyoutf_8.pyutf_8.pycutf_8.pyoutf_8_sig.pyutf_8_sig.pycutf_8_sig.pyouu_codec.pyuu_codec.pycuu_codec.pyozlib_codec.pyzlib_codec.pyczlib_codec.pyoensurepip__init__.py__init__.pyc__init__.pyo__main__.py__main__.pyc__main__.pyo_bundledpip-20.0.2-py2.py3-none-any.whlsetuptools-44.1.1-py2.py3-none-any.whl_uninstall.py_uninstall.pyc_uninstall.pyofilecmp.pyfilecmp.pycfilecmp.pyofileinput.pyfileinput.pycfileinput.pyofnmatch.pyfnmatch.pycfnmatch.pyoformatter.pyformatter.pycformatter.pyofpformat.pyfpformat.pycfpformat.pyofractions.pyfractions.pycfractions.pyoftplib.pyftplib.pycftplib.pyofunctools.pyfunctools.pycfunctools.pyogenericpath.pygenericpath.pycgenericpath.pyogetopt.pygetopt.pycgetopt.pyogetpass.pygetpass.pycgetpass.pyogettext.pygettext.pycgettext.pyoglob.pyglob.pycglob.pyogzip.pygzip.pycgzip.pyohashlib.pyhashlib.pychashlib.pyoheapq.pyheapq.pycheapq.pyohmac.pyhmac.pychmac.pyohotshot__init__.py__init__.pyc__init__.pyolog.pylog.pyclog.pyostats.pystats.pycstats.pyostones.pystones.pycstones.pyohtmlentitydefs.pyhtmlentitydefs.pychtmlentitydefs.pyohtmllib.pyhtmllib.pychtmllib.pyohttplib.pyhttplib.pychttplib.pyoihooks.pyihooks.pycihooks.pyoimaplib.pyimaplib.pycimaplib.pyoimghdr.pyimghdr.pycimghdr.pyoimportlib__init__.py__init__.pyc__init__.pyoimputil.pyimputil.pycimputil.pyoinspect.pyinspect.pycinspect.pyoio.pyio.pycio.pyoipaddress.pyipaddress.pycipaddress.pyojson__init__.py__init__.pyc__init__.pyodecoder.pydecoder.pycdecoder.pyoencoder.pyencoder.pycencoder.pyoscanner.pyscanner.pycscanner.pyotests__init__.py__init__.pyc__init__.pyotest_check_circular.pytest_check_circular.pyctest_check_circular.pyotest_decode.pytest_decode.pyctest_decode.pyotest_default.pytest_default.pyctest_default.pyotest_dump.pytest_dump.pyctest_dump.pyotest_encode_basestring_ascii.pytest_encode_basestring_ascii.pyctest_encode_basestring_ascii.pyotest_fail.pytest_fail.pyctest_fail.pyotest_float.pytest_float.pyctest_float.pyotest_indent.pytest_indent.pyctest_indent.pyotest_pass1.pytest_pass1.pyctest_pass1.pyotest_pass2.pytest_pass2.pyctest_pass2.pyotest_pass3.pytest_pass3.pyctest_pass3.pyotest_recursion.pytest_recursion.pyctest_recursion.pyotest_scanstring.pytest_scanstring.pyctest_scanstring.pyotest_separators.pytest_separators.pyctest_separators.pyotest_speedups.pytest_speedups.pyctest_speedups.pyotest_tool.pytest_tool.pyctest_tool.pyotest_unicode.pytest_unicode.pyctest_unicode.pyotool.pytool.pyctool.pyokeyword.pykeyword.pyckeyword.pyolib-dynloadPython-2.7.18-py2.7.egg-info_bisect.so_codecs_cn.so_codecs_hk.so_codecs_iso2022.so_codecs_jp.so_codecs_kr.so_codecs_tw.so_collections.so_csv.so_ctypes.so_ctypes_test.so_elementtree.so_functools.so_heapq.so_hotshot.so_io.so_json.so_locale.so_lsprof.so_md5.so_multibytecodec.so_multiprocessing.so_random.so_sha.so_sha256.so_sha512.so_socket.so_struct.so_testcapi.soarray.soaudioop.sobinascii.sobz2.socPickle.socStringIO.socmath.socrypt.sodatetime.sofcntl.sofuture_builtins.sogrp.soitertools.solinuxaudiodev.somath.sommap.sonis.sooperator.soossaudiodev.soparser.soresource.soselect.sospwd.sostrop.sosyslog.sotermios.sotime.sounicodedata.sozlib.solib2to3Grammar.txtGrammar2.7.18.final.0.picklePatternGrammar.txtPatternGrammar2.7.18.final.0.pickle__init__.py__init__.pyc__init__.pyo__main__.py__main__.pyc__main__.pyobtm_matcher.pybtm_matcher.pycbtm_matcher.pyobtm_utils.pybtm_utils.pycbtm_utils.pyofixer_base.pyfixer_base.pycfixer_base.pyofixer_util.pyfixer_util.pycfixer_util.pyofixes__init__.py__init__.pyc__init__.pyofix_apply.pyfix_apply.pycfix_apply.pyofix_asserts.pyfix_asserts.pycfix_asserts.pyofix_basestring.pyfix_basestring.pycfix_basestring.pyofix_buffer.pyfix_buffer.pycfix_buffer.pyofix_dict.pyfix_dict.pycfix_dict.pyofix_except.pyfix_except.pycfix_except.pyofix_exec.pyfix_exec.pycfix_exec.pyofix_execfile.pyfix_execfile.pycfix_execfile.pyofix_exitfunc.pyfix_exitfunc.pycfix_exitfunc.pyofix_filter.pyfix_filter.pycfix_filter.pyofix_funcattrs.pyfix_funcattrs.pycfix_funcattrs.pyofix_future.pyfix_future.pycfix_future.pyofix_getcwdu.pyfix_getcwdu.pycfix_getcwdu.pyofix_has_key.pyfix_has_key.pycfix_has_key.pyofix_idioms.pyfix_idioms.pycfix_idioms.pyofix_import.pyfix_import.pycfix_import.pyofix_imports.pyfix_imports.pycfix_imports.pyofix_imports2.pyfix_imports2.pycfix_imports2.pyofix_input.pyfix_input.pycfix_input.pyofix_intern.pyfix_intern.pycfix_intern.pyofix_isinstance.pyfix_isinstance.pycfix_isinstance.pyofix_itertools.pyfix_itertools.pycfix_itertools.pyofix_itertools_imports.pyfix_itertools_imports.pycfix_itertools_imports.pyofix_long.pyfix_long.pycfix_long.pyofix_map.pyfix_map.pycfix_map.pyofix_metaclass.pyfix_metaclass.pycfix_metaclass.pyofix_methodattrs.pyfix_methodattrs.pycfix_methodattrs.pyofix_ne.pyfix_ne.pycfix_ne.pyofix_next.pyfix_next.pycfix_next.pyofix_nonzero.pyfix_nonzero.pycfix_nonzero.pyofix_numliterals.pyfix_numliterals.pycfix_numliterals.pyofix_operator.pyfix_operator.pycfix_operator.pyofix_paren.pyfix_paren.pycfix_paren.pyofix_print.pyfix_print.pycfix_print.pyofix_raise.pyfix_raise.pycfix_raise.pyofix_raw_input.pyfix_raw_input.pycfix_raw_input.pyofix_reduce.pyfix_reduce.pycfix_reduce.pyofix_renames.pyfix_renames.pycfix_renames.pyofix_repr.pyfix_repr.pycfix_repr.pyofix_set_literal.pyfix_set_literal.pycfix_set_literal.pyofix_standarderror.pyfix_standarderror.pycfix_standarderror.pyofix_sys_exc.pyfix_sys_exc.pycfix_sys_exc.pyofix_throw.pyfix_throw.pycfix_throw.pyofix_tuple_params.pyfix_tuple_params.pycfix_tuple_params.pyofix_types.pyfix_types.pycfix_types.pyofix_unicode.pyfix_unicode.pycfix_unicode.pyofix_urllib.pyfix_urllib.pycfix_urllib.pyofix_ws_comma.pyfix_ws_comma.pycfix_ws_comma.pyofix_xrange.pyfix_xrange.pycfix_xrange.pyofix_xreadlines.pyfix_xreadlines.pycfix_xreadlines.pyofix_zip.pyfix_zip.pycfix_zip.pyomain.pymain.pycmain.pyopatcomp.pypatcomp.pycpatcomp.pyopgen2__init__.py__init__.pyc__init__.pyoconv.pyconv.pycconv.pyodriver.pydriver.pycdriver.pyogrammar.pygrammar.pycgrammar.pyoliterals.pyliterals.pycliterals.pyoparse.pyparse.pycparse.pyopgen.pypgen.pycpgen.pyotoken.pytoken.pyctoken.pyotokenize.pytokenize.pyctokenize.pyopygram.pypygram.pycpygram.pyopytree.pypytree.pycpytree.pyorefactor.pyrefactor.pycrefactor.pyotests__init__.py__init__.pyc__init__.pyodataREADMEbom.pycrlf.pydifferent_encoding.pyfalse_encoding.pyfixersbad_order.pymyfixes__init__.pyfix_explicit.pyfix_first.pyfix_last.pyfix_parrot.pyfix_preorder.pyno_fixer_cls.pyparrot_example.pyinfinite_recursion.pypy2_test_grammar.pypy3_test_grammar.pypytree_idempotency.pypytree_idempotency.pycpytree_idempotency.pyosupport.pysupport.pycsupport.pyotest_all_fixers.pytest_all_fixers.pyctest_all_fixers.pyotest_fixers.pytest_fixers.pyctest_fixers.pyotest_main.pytest_main.pyctest_main.pyotest_parser.pytest_parser.pyctest_parser.pyotest_pytree.pytest_pytree.pyctest_pytree.pyotest_refactor.pytest_refactor.pyctest_refactor.pyotest_util.pytest_util.pyctest_util.pyolinecache.pylinecache.pyclinecache.pyolocale.pylocale.pyclocale.pyologging__init__.py__init__.pyc__init__.pyoconfig.pyconfig.pycconfig.pyohandlers.pyhandlers.pychandlers.pyomacpath.pymacpath.pycmacpath.pyomacurl2path.pymacurl2path.pycmacurl2path.pyomailbox.pymailbox.pycmailbox.pyomailcap.pymailcap.pycmailcap.pyomarkupbase.pymarkupbase.pycmarkupbase.pyomd5.pymd5.pycmd5.pyomhlib.pymhlib.pycmhlib.pyomimetools.pymimetools.pycmimetools.pyomimetypes.pymimetypes.pycmimetypes.pyomimify.pymimify.pycmimify.pyomodulefinder.pymodulefinder.pycmodulefinder.pyomultifile.pymultifile.pycmultifile.pyomultiprocessing__init__.py__init__.pyc__init__.pyoconnection.pyconnection.pycconnection.pyodummy__init__.py__init__.pyc__init__.pyoconnection.pyconnection.pycconnection.pyoforking.pyforking.pycforking.pyoheap.pyheap.pycheap.pyomanagers.pymanagers.pycmanagers.pyopool.pypool.pycpool.pyoprocess.pyprocess.pycprocess.pyoqueues.pyqueues.pycqueues.pyoreduction.pyreduction.pycreduction.pyosharedctypes.pysharedctypes.pycsharedctypes.pyosynchronize.pysynchronize.pycsynchronize.pyoutil.pyutil.pycutil.pyomutex.pymutex.pycmutex.pyonetrc.pynetrc.pycnetrc.pyonew.pynew.pycnew.pyonntplib.pynntplib.pycnntplib.pyontpath.pyntpath.pycntpath.pyonturl2path.pynturl2path.pycnturl2path.pyonumbers.pynumbers.pycnumbers.pyoopcode.pyopcode.pycopcode.pyooptparse.pyoptparse.pycoptparse.pyoos.pyos.pycos.pyoos2emxpath.pyos2emxpath.pycos2emxpath.pyopdb.docpdb.pypdb.pycpdb.pyopickle.pypickle.pycpickle.pyopickletools.pypickletools.pycpickletools.pyopipes.pypipes.pycpipes.pyopkgutil.pypkgutil.pycpkgutil.pyoplat-linux2CDROM.pyCDROM.pycCDROM.pyoDLFCN.pyDLFCN.pycDLFCN.pyoIN.pyIN.pycIN.pyoTYPES.pyTYPES.pycTYPES.pyoregenplatform.pyplatform.pycplatform.pyoplistlib.pyplistlib.pycplistlib.pyopopen2.pypopen2.pycpopen2.pyopoplib.pypoplib.pycpoplib.pyoposixfile.pyposixfile.pycposixfile.pyoposixpath.pyposixpath.pycposixpath.pyopprint.pypprint.pycpprint.pyoprofile.pyprofile.pycprofile.pyopstats.pypstats.pycpstats.pyopty.pypty.pycpty.pyopy_compile.pypy_compile.pycpy_compile.pyopyclbr.pypyclbr.pycpyclbr.pyopydoc.pypydoc.pycpydoc.pyopydoc_data__init__.py__init__.pyc__init__.pyotopics.pytopics.pyctopics.pyoquopri.pyquopri.pycquopri.pyorandom.pyrandom.pycrandom.pyore.pyre.pycre.pyorepr.pyrepr.pycrepr.pyorexec.pyrexec.pycrexec.pyorfc822.pyrfc822.pycrfc822.pyorlcompleter.pyrlcompleter.pycrlcompleter.pyorobotparser.pyrobotparser.pycrobotparser.pyorunpy.pyrunpy.pycrunpy.pyosched.pysched.pycsched.pyosets.pysets.pycsets.pyosgmllib.pysgmllib.pycsgmllib.pyosha.pysha.pycsha.pyoshelve.pyshelve.pycshelve.pyoshlex.pyshlex.pycshlex.pyoshutil.pyshutil.pycshutil.pyosite-packagesREADME_local.pthsite.pysite.pycsite.pyosmtpd.pysmtpd.pycsmtpd.pyosmtplib.pysmtplib.pycsmtplib.pyosndhdr.pysndhdr.pycsndhdr.pyosocket.pysocket.pycsocket.pyosre.pysre.pycsre.pyosre_compile.pysre_compile.pycsre_compile.pyosre_constants.pysre_constants.pycsre_constants.pyosre_parse.pysre_parse.pycsre_parse.pyostat.pystat.pycstat.pyostatvfs.pystatvfs.pycstatvfs.pyostring.pystring.pycstring.pyostringold.pystringold.pycstringold.pyostringprep.pystringprep.pycstringprep.pyostruct.pystruct.pycstruct.pyosubprocess.pysubprocess.pycsubprocess.pyosunau.pysunau.pycsunau.pyosunaudio.pysunaudio.pycsunaudio.pyosymbol.pysymbol.pycsymbol.pyosymtable.pysymtable.pycsymtable.pyosysconfig.pysysconfig.pycsysconfig.pyotabnanny.pytabnanny.pyctabnanny.pyotarfile.pytarfile.pyctarfile.pyotelnetlib.pytelnetlib.pyctelnetlib.pyotempfile.pytempfile.pyctempfile.pyotextwrap.pytextwrap.pyctextwrap.pyothis.pythis.pycthis.pyothreading.pythreading.pycthreading.pyotimeit.pytimeit.pyctimeit.pyotoaiff.pytoaiff.pyctoaiff.pyotoken.pytoken.pyctoken.pyotokenize.pytokenize.pyctokenize.pyotrace.pytrace.pyctrace.pyotraceback.pytraceback.pyctraceback.pyotty.pytty.pyctty.pyotypes.pytypes.pyctypes.pyounittest__init__.py__init__.pyc__init__.pyo__main__.py__main__.pyc__main__.pyocase.pycase.pyccase.pyoloader.pyloader.pycloader.pyomain.pymain.pycmain.pyoresult.pyresult.pycresult.pyorunner.pyrunner.pycrunner.pyosignals.pysignals.pycsignals.pyosuite.pysuite.pycsuite.pyotest__init__.py__init__.pyc__init__.pyodummy.pydummy.pycdummy.pyosupport.pysupport.pycsupport.pyotest_assertions.pytest_assertions.pyctest_assertions.pyotest_break.pytest_break.pyctest_break.pyotest_case.pytest_case.pyctest_case.pyotest_discovery.pytest_discovery.pyctest_discovery.pyotest_functiontestcase.pytest_functiontestcase.pyctest_functiontestcase.pyotest_loader.pytest_loader.pyctest_loader.pyotest_program.pytest_program.pyctest_program.pyotest_result.pytest_result.pyctest_result.pyotest_runner.pytest_runner.pyctest_runner.pyotest_setups.pytest_setups.pyctest_setups.pyotest_skipping.pytest_skipping.pyctest_skipping.pyotest_suite.pytest_suite.pyctest_suite.pyoutil.pyutil.pycutil.pyourllib.pyurllib.pycurllib.pyourllib2.pyurllib2.pycurllib2.pyourlparse.pyurlparse.pycurlparse.pyouser.pyuser.pycuser.pyouu.pyuu.pycuu.pyouuid.pyuuid.pycuuid.pyowarnings.pywarnings.pycwarnings.pyowave.pywave.pycwave.pyoweakref.pyweakref.pycweakref.pyowebbrowser.pywebbrowser.pycwebbrowser.pyowhichdb.pywhichdb.pycwhichdb.pyowsgirefwsgiref.egg-info__init__.py__init__.pyc__init__.pyohandlers.pyhandlers.pychandlers.pyoheaders.pyheaders.pycheaders.pyosimple_server.pysimple_server.pycsimple_server.pyoutil.pyutil.pycutil.pyovalidate.pyvalidate.pycvalidate.pyoxdrlib.pyxdrlib.pycxdrlib.pyoxmllib.pyxmllib.pycxmllib.pyoxmlrpclib.pyxmlrpclib.pycxmlrpclib.pyozipfile.pyzipfile.pyczipfile.pyopython-baseLICENSEREADMEREADME.SUSEpython.1.gzpython2.1.gzpython2.7.1.gz/usr/bin//usr/include//usr/include/python2.7//usr/lib//usr/lib/python2.7//usr/lib/rpm/macros.d//usr/lib64//usr/lib64/python2.7//usr/lib64/python2.7/compiler//usr/lib64/python2.7/config//usr/lib64/python2.7/ctypes//usr/lib64/python2.7/ctypes/macholib//usr/lib64/python2.7/ctypes/test//usr/lib64/python2.7/distutils//usr/lib64/python2.7/distutils/command//usr/lib64/python2.7/distutils/tests//usr/lib64/python2.7/email//usr/lib64/python2.7/email/mime//usr/lib64/python2.7/email/test//usr/lib64/python2.7/email/test/data//usr/lib64/python2.7/encodings//usr/lib64/python2.7/ensurepip//usr/lib64/python2.7/ensurepip/_bundled//usr/lib64/python2.7/hotshot//usr/lib64/python2.7/importlib//usr/lib64/python2.7/json//usr/lib64/python2.7/json/tests//usr/lib64/python2.7/lib-dynload//usr/lib64/python2.7/lib2to3//usr/lib64/python2.7/lib2to3/fixes//usr/lib64/python2.7/lib2to3/pgen2//usr/lib64/python2.7/lib2to3/tests//usr/lib64/python2.7/lib2to3/tests/data//usr/lib64/python2.7/lib2to3/tests/data/fixers//usr/lib64/python2.7/lib2to3/tests/data/fixers/myfixes//usr/lib64/python2.7/logging//usr/lib64/python2.7/multiprocessing//usr/lib64/python2.7/multiprocessing/dummy//usr/lib64/python2.7/plat-linux2//usr/lib64/python2.7/pydoc_data//usr/lib64/python2.7/site-packages//usr/lib64/python2.7/unittest//usr/lib64/python2.7/unittest/test//usr/lib64/python2.7/wsgiref//usr/share/doc/packages//usr/share/doc/packages/python-base//usr/share/man/man1/-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:43465/SUSE_SLE-15_Update/1d210577437b1f9ce33d7463cb59aa83-python-base.SUSE_SLE-15_Updatedrpmxz5aarch64-suse-linux            !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW      XPython script, ASCII text executableELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=63d569dad157934a76e06b5c52bdd3a1a0d2edd8, for GNU/Linux 3.7.0, strippeddirectoryC source, ASCII textASCII textpython 2.7 byte-compiledASCII text, with very long linesmakefile script, ASCII text, with very long linesPOSIX shell script, ASCII text executableASCII text, with CRLF line terminatorsPython script, ISO-8859 text executablePython script text executable Python script, ASCII text executablePython script, UTF-8 Unicode text executableemptyGIF image data, version 87a, 150 x 35SMTP mail, ASCII textnews or mail, ASCII textMIME entity, ASCII textmessage/rfc822, ASCII textSMTP mail, Non-ISO extended-ASCII texttext/plain; charset="us-ascii", ASCII textmultipart/mixed; boundary="BOUNDARY", ASCII textRFC 822 mail, ASCII text, with CRLF line terminatorsmultipart/mixed; boundary=ABCDE, ASCII textmultipart/mixed; boundary="AAA", ASCII textPython script, UTF-8 Unicode text executable, with very long linesPython script, ASCII text executable (Zip archive data, at least v2.0 to extract Zip archive data, at least v2.0 to extract)ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=376d7038c4fff1bbdfece60d27e06d104b3a25da, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2609ee04bfb35267b6d3f598e543ab1db7a1d0b3, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9bee9071635f749bac685990a47af2b127ca402b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=27548944c22f5b2578c9b988875c08b16b091a13, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7ec091865cee7dfd1b256b027f70cc092e1b6e44, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9cc0092ff918fb93db7a7b7a5c1084180e98d2de, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=289db95451a0455aeec058a9961bb745d6809e47, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=203b57ec141d9862c705f766b18ac02360065390, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6dd16e4f042f133d0696da9dc36b97d6289fcad1, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e52f6dad9d204d0b028e95026712ded482249166, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=660578b7adc1aef43b978b819d6832a8e2725be4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3a778ef2ce40f46cd8a691431afabf04c40bf698, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6bcb3f0214263f6ca4921ff0aa7bb148ae07c439, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f9cdca6f56e16c0b072fa85c614fbeae7d70076b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=62f546a39bde10ba4b8e7a72bc24cecb139154b6, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e766e8b75dc1f2e7e7e35166368f5a4137a84b2f, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9e9dd6ab1f9866c3b7b24711308cedc60a447235, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=5b8fd102b3848f98090ee5410a77012fd7b8690e, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4d38ab44d1bdc3d15bbe22afeca170b16e8c0e8a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a2ad1e619c471dea6dc5b9a1f706b408d812f53b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=08f52b28adc5069a925e9e0c90cf66b4b36f2ab4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f6c5aebf0f1dfe37e28cd13a2b9aa22aa5736283, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=4f634180cf5e738618d659590a734a15a9a999ed, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=eaa68bbbd10cf5492dab918480303657d792dc05, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=cf8f69beafe45d3d03b19befc65a5bff1053104d, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=e520a431405327b66b5e260c3cb4f4ff0863447f, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=416ae6ed619a5968335005253ef0649afc919662, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=86f48fa4daae3af9ea379eb7c1a44b893f746e2c, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8e0873e48221320f7f9963a87bb45a345f0771ca, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=1fc2d6ac9ca85fa0f252293f26102444db1dad63, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3117def4a65bafc4b1d5339af33a828baba3d9ce, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=17aff4a16922597b3c8d8150b2efe6024134d67a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=704789e92964d93a1982fd4c0226cc046a72aa64, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=07d2ad5d08c85d252c201a5626e0509e6434cd5b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=bafcb0dc587d5d8fd3bdcd136f33bc47fc0141c8, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=52842cf353ac9adf188ee0dd3b9bd0e551691e45, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9faf409460cbfdaa86548c2f168caba01a32b297, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=db7637b9041dcfe7e090660debcf721cb04967b7, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=84c911ad49ad917e8f5aee589613063ce68ecf33, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=14b8a528c9b9668f86298b7445916f814d6627cd, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2bb6ae0fdd98bcabd188d964fa9fbdbfd1bda2ed, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=23f1665e2f8698e86be056539d7def7a9bc8dba3, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2dc0c2eb4890fe7a26a61a7015d4ef7032d97170, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=cba4c2f6444e1c4432cf80944c31b49ea30e383b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=3dd4843724c4956aee41a0771723801718fbb588, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=f29c3dfb7d9aea162913c7157ab064973c6702b0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=2aaf2a3fe65203a08489aabdccd1200009abe42d, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d059c00f4f5a6307284630b972c0df41ce1f5e09, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=133ee881607138077adb98c57fc204b5ca9e6aa0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=43ac6e18a0ccbdbcf65ee481be9aa24ce26c2d8a, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0935ae8c1a9e721f686d1f520b56037443d3a608, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=aaf85414ab227dae46afa06e4079e655edd09b0d, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d996cc67a223b493f37fafdc1b93a852657c0f57, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a919caa718ab7d6c8e0744b4c588f2d5ec4c5097, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b54747c0f301832c7481dbfb4d110738d90b5fd4, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=a6d3b854fb85c322987d69df58c5e2ad0373494b, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=d9d0e47662694a4d437fb874102307c1da535eea, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=799a07b598e7896a993d68a5b7db6dfe5c17d695, strippedTeX document, ASCII textUTF-8 Unicode (with BOM) texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)  !"#$%&'()*+,-./012346789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./012345678:;<CJQX_fmt{ !)19AKT^fmt{      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./012456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = ? @ A B C D E F G I J K L M N O P Q R S T U V W X Y Z [ \ ] _ ` a b c d e f g h i j l m n o p q r s t u v w x y z { | } ~          RPRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR R RRR R RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRTi[yF ƺutf-855ee6e133190b847f0d1c98e8c42c3c110b2acbb140902431e0fc056e356e96b?7zXZ !t/ࢉe]"k%Ia C4kh ($8h}c$탗TX,iL3Q<,ay2@v}TKYm홒 /%9lr6&P%BR8 ӌQ~$4;6R"6ͣ5Piza#7L9!H/~g8 /n U7I|P Cz}0ODA%onFNP4Z%NrgD,k9H"B@s߲ytG &ۃbvb0]OƱ˶`u<)VHyVR Ϳ!ZȋXmI J@?[iV5TڶW0eHw1e0 ʏj/=']ar +4?֨Kہ}Ӡ4[J " _)ʛ4߸Y<_UHH|I0rP~ F<5fBd'фI?b`v:Amd*J{K>+a`*)ix(vGgV De6*6! n`ϓgpN0رtsҫ OUT~<=ڶS>HZ#:,}a nʙ`׽_RsB EC*' +g|s-d>*$&sS}b\n.}nN\;K !PredxH _hwũEa8&f:C,PF3 6Zx|j R @~v=[Z[&~WOʷTX-PM")Vs8Fie@z<|tz'Ky2B] >Cr%~5CUi 9rT р$Ũ0 7%CR%}8lN㈽a]%;8 i˸4 47C83LNm=LltP|*b@<Փ3Q%(l%ٞ,.#fnkH%LE &F:3܊jb wR{}YU; ReٲYO9M\}Uy-_=vELKܺk_%Z]$)=B,؃QW*<UF'ݮɖJFͭEOx;:ђ]|<#> ,(V?4 ̻^ 3S&$Jc&ץx~4gWEhh0\j\ֻ]ѫ,  4H¡ Tυu21GY9ʐe\^EthFh<teS_\S7'0rfdx0B6WnI"*X?fwEp-WO+OԡT4*o곬R|/ÀQQ2ed'!%]Ps5Qјu.]e/e` Z rl~̻x-E4)l> 9-$a [+2UW1"xdϷ,[r{M]>7dAOa]٠\<|zřQU%Ïȷ\usM56n*q\Czꟍ*la'Yb'}vUM>& J N:M]2>Ja ~o! -gE.[3IᦝU0ѝqc-Q {f܏}Fo/69:`WgPJ+D_8v5hwݩɮzuK u#6XaSPRS>wNTmLB~%%8R.Hv"Jf^S/'{qR 3*G/[VFK[OYŁdL'9M~u b#=S5~Ljx,su=+<ŢY;L/`K`*#-C0%/o d!5]fcp֢Hd06#M ̮ajҙ(`qJ̤(=-\PVkFKxϼiM6򼇃OxtmQocNy,5{Ml%da쳬{ 6*jX_y&T~k*͛&DĊר5%%n1?H>pష\APśŁ/nr^ZolD/ LzFqy12TrbD!?%1W1tT? \ R v} |˱d9qKa\CԞ#&ă#xPU@q`>ש OjR`Ҽl D +&U.q`vXRtIk?+/Q%st( wMg|%+`j~6UXdi)1vd8rQYTB ¨g/ᱰuo]>lDݯkc3TAqVkxpF-JcK~US[XGK0sfJBA|ڌKCyhw[x+GB씩q@iSjHRd.#u<,ަ8*D#$|YI! d⳵ _ -'-5ԡ-1 9bt5VE?m%`JalWvh>JuJVFԕ7wKkOvޅ^7yW ߨg&aF=B:W| ĆlB` H6Iwg$m"e_ N,gհe㎺Z$,8,F)x<+. IX$ynI(zqJgJ/㽎KKey0 4ѷ)W}s'bc%;+5:3u.5h;)x|6m<֫uX''k`=~IcO=t B/Cd jlud_mAqhhC6kP}d^Fz)|<~6A}r<<_IJ]hvzxv1#rf*[^] H=ǕEӃɊ̺K FJzKi&'3 VsFoyY:rpN%HU>rzRRr7x3QЪdt/yf71 ,C:(>PFﶌl~!tcQ^4'C`!qlv/,o,/0H ܢɈV{A^jGڶ(E1/A .C|(,Z_ۜ-]2^ VC1ϴeT'!s.T^ώɃ'rM[wv,u 0PYҘ Lk}( <gGۖwC8\AJ2=㶂wp+ Ifg- L^W1:eRsv f%J8 nT^]]X靥"D~W<=-KF[HSIQy8O<(iH'A(Y3bu4p RU t){hqQ$u)%Kk̑Ua ; ;P4#mT@uOnf9^KCi?48j0<Ɨ9}^[,|ȡ*ז{\{h|P!]h[PP< .Dz2XO=bBJt;đ*Wgl0{:n#վ9 8pz7 ecIbj`TgoF\e "`j5-L?ʮl6 k\tU'"^]ηXBVxV>Uh(O"OBfh.4HG"ֲd'Z 6PC|Dx3( K)A1z WȆO/BTI>F/\"\Л5N<'~lJV G0V OiCQm!w! j9TҐIpQP}MN ǯYr[ t(/`4D3vū-Ȯu6븽M,B#bVw̎EC h-ShSp? 4h_c>ޑlx1-qF.Cͳt˓_؞V×ҺnY\?KxE-!Xg9]ө|W'[sǹ櫡 1X@Z>Z#oCe)9I/bd]4}Ӕ&]bWsx#/gUg͊}Vz~#aXEYf"]xNi#]G5VWfJY؈}hT"S @Ak;*eŵc$E{Uee1iCk; 6!&Lw]x~?w61-Zn-Wzf{G/Ϳw tkB+3M 0U6H[n2٨+@"˪[JnP*Na,^+ ~ с]ƢaG ߄QHz!Jͥ {&l[` Fjv>Ať { ~8wUG6q )y3>/,졟)_mxx:/m[V\ u7#օNIW"֣u6p)MFiaրx/KY]Zt`^̿XewcChltIVzKc?K7 $ (tՒ*:HQ@*K00@)J<q]׍JЉ!itq jdww BAgak9VnjtܕhVݎݹ{~??FL=YSd#_Ð_@CBfϕ h ec5>%b`[tXNju7i 21xp54-եg}\"Dx{+dV  0y?a3H#;(Г1"!QC ^lD|MMxpkUď'Zkve^sDѻRg@}FO{B5a`2ϖݑq15G]Ĥ+r))qbK<&׫~&K_E>{xh $qd*@H"I#*e,%^5yLs7Sɴ 2|xtT*w}lJ.xhҝ,XQUE$3JDcJA3LȿaICN=Ōw2ۧ>߯R TZ K|m]L`$C-uȳp^8ʥk,a)xV :BwL@PV&HT|&?8's5G?27)ˑ` ?~+PG (^&ܩd;U)Q2pԉ+O6 5`Zz@.~SB%z%٤e6Zir v!g'/wzU󾞑ut%lZι N uޙtU7u s:+=/Gq^髂bo2Tb_콱8U(/9n=@h$L6bBl3-yڕJK*V%X/ om-5ЄOs[<ҥEM])$"WHa m o&44haI,ӎ#>r.bO(/CPsb'ER d!/ $= U~2PaR$-=`Bbd'ps`:7G^t s-HUƃ$?ȝi˻@i޳憵TL&,er5ZVFqS\ '̏!s蝧 ?&(OF:Ya`ʘ>AmQ GgmSa9|BrĪY][q6"xeE!ݵ HtZw DĶ&bUQIe(c?^"i,UkJ' bwW- d8;-.&+оGҹ'( %H3v% έ$˩nt4/v`d*qcbw1;GJ>$ELc&i1>A2y WtPOg/aa8$>=Oes~|6떘PsjV+U5| @ݻŞW2Xmm$4cl5.݃55CGgś 6qDٰDPfz8|޴d:JcÃGۡ䙓*aU'b#ҼhL1czxH# [˨4l -]T;ׄZPmnRG_ϸz.-Ґӎ)`)*hpL% cz7yy-l5!MdaG/=7k; ÷C^Ff9N#hS.=%"6ƕ2iŝZB`( /u#2f28;'9C)"hP< >UL@ Vz0XCH"hj}PRY]޻b*g>o }c{46aۦHv*R{B3>ByZ6w8JZ:>uLy ^b!/M7@BZƅ.]KozqOaGk6GODGI5;-$+ E6|q :K&T{ K|Yޖ>k ڼ !Л$޵&[xdwO~\[bnh^EN۲w#FKf); џ_FțS!L:\CN:dX;L OLXEU  tr=M]9a|íLI }%N`\S%dMY) hbW9©tg11\!ϳ~*Bw8,׸ }?ynf ,}W#k|%]@h@9 ϺCdWx1ȱf` At壅x q0tiaz:z󉆷NE3t%uȄ4?:Bn9#؏YQkz:хa"#hQ=(X,s!V[|0k_1ޫfc$d塷[5s)|Ƣ|z^x& eZ(.T@kQҬSJ|u~✧12A:ٌܝR߱d{Ա(ԝYIo ddEKDlk[u93cg5ؿ jS6]kCV9{ U6M⺐a.( Wc-G8z2gVG{c}%bukAqF#7h3Iju{U#ٗevxK\ al/!Az*#\z0w˃63=uYRdštm<рXN.taI-ɌO_Z$+l_-~ iDSL7l9_2nIc vPaj[a kfSB*  ,jw5E6l0iBe ?}HeC]Y&Y`'i~_CJM hW Ѭ6"$)`'.cAVQhȷ޾ʯ3:4/Ň\lJʉ&Q.-mF'KWgQ-Jt4;6M=sޭ .V;L|撆0 e;] Ť( [Pÿ k]UۛNtל! O 8¨{JP̃A3P,([1,Mgt"鎏H=|}z4gHM8LTgQJ"n,ڒVd& 92ಉdyz]/c"khɥ4ɞ&8C$Lӄ  k2;J9 :8dHHM2O\kNs˽ih0P]qu=09C,v^lo}B!tƁ =$RU\5- !&Mq($֖k]0xF-{@mE̒31rxA5uHpi|N[YƐN~VQFl,0@]v?cOtқ֬ptY6J,6p]I(e?gaW3yv޺SR$W\-::ݞxsn W ΀D"JzwF*m޻Oƚ:%Z[ȶ4S=AC9vAjB`hӑHJd],͉f15>, [o6ecxӖK5{ íځ8~i9-y2R0~YbGկ"kUI {?/3k؄T_r KJXy5xڊR Z 0{ "9@KfE:qBž"F-Pd'i( ewu&gԘkt D`,Wd  u\8gi'?%IN+ڄAJ^\Б-r/:%ZB*ꓚh@еx4֣ҵ.7vʼnqܱ5a;13O%vClk)^Gw#I81z"bGJ-0N ˆúH]a aE[Sfn*8Uʡ *)e!4)cыќ蘂<X`kOѦ}0i|1o,rko-|V͠pVqzoEIө !ۭ i5|V\?~x(_ swVQ$7 Ѱ;֤1ɨ|yҙ. õ'[;*f3tˑѲ.ZjYlqi8W+o |0X KOջ?y;#q`"A&{|5zi|}جl46A-.qR_SrWn|A;NRIWC$5Xhӱ9#ℕ/~OXƱ/l=JqAMSڦK:&5UCno% NML3d˛4h@eЬŠHFш' :Zȏ^$Bn2x%wi%-&C[uO\f x>\m<5wiHE !7;NQ'"5hVP~bp/ M媒(psoz4KTϡlQxxiX&NmtT=qEꈡ 2t5 ^G AiIՏY9-_1+ Ox5ڴH$}s۪Иx*v]^ t:69^qQDU?ۏA" I&>rrdjsOA2z# @2V}s&9V.9q h|Q_%r&j޳E%iC!`24T92i3˽Q@%GbU9JkmX"^RƎfj_>3ƀ@Q?[vz݊vp)j%eD?⽞Eԩ2UYBަ&GVK>;ipS1Ts"Fk5nbmtz )ok܈ڡO+ssK_x"V(*FҕPGQ?}CB<ĄbE %y "ֈTm/8;ͿuKLBF AH.hliyENqxyGb%[yAF9cH^b)Sp{GH|7fPcc$)D,1 J8[vgf0Y@hD[ X[3a> p@1 }%,42Z^{?eWu`FRo)>L57T}Zq$,i?:!Rg@ay<4߄ 1U:x_Z䖳0Cp!YU)u#Xםe;2[fq0ZA,&@W0r=.<=ʧ!Z{^UlgǠYm~ "%a(I+ߦSsqH"KIoզZ PX` R~5C֟%45t9F\kll?`lo2{Xدa`6m&eT1kuLd$4X +Ve4 O3t, 6/ ˕&:6/qy7>뗗e{w/z  & }j*U2ЅT0ToAvEM{[kEQqK:Qºu=YjqFN{LoHQ;x%݈pDcQPӞd)?OٯB8b`hZ!{G3 \l);9NZnt@cRfL*{V[!L /1 u%ϰPs@a[6bd6$ٍ$ourH7zTM1/6Z^!Yrkl V"T iw)N~woK*[~{+j]/,uM'%5٢ S%o.J?(ړ W@oMQp@ϋiU5$S;ҫܿ=֓N5U(26%%y)-y54nA֫z^Uq WZ>@ |{p./t)!VcSn=8x'P)?DHNu}@')tzQ=p%LW#O$F$5fC5hP56?o34ꑑ~zx S-M>v\ :<ȚAjnVj!O--uPClǍ &^!e,'J}xWYUX(A01F*&Npf0#fR3>ZKP}H?Lh)B_[kC`T i l"esJ7c_e h+(njU.?WzDLFn&u9L Ft55R (֞W{4톅{aLH" yoG}4}vއ㺬R;wGv-k@WDIݜ|%j7n)>qm%?h*(`1[&2,=G_ߒLC\2<_(]]q¦c\zfewP.-Oz\g{\J@$BܳEMP}D1 [J!#.$Pq,Fa ,̪lg69ЫLM+rJ?1۷׶KF oDBp%s8QqȂxfV\W"g0p` PW-pZžO'ֈ C % LRUMnDpfȚj˂#ǩż_P7X%EdwK0 +@4uŌF:n[3gG0 _&;ZA!Y?Ž]m͍*xBi$˼rALF,5?4b8U/n"%]FjGaX˯36Y5Rq'Ҭx *O(O٦kcY_oӦn?;ĝ#J;bf H!dSsf"ٲVTޣMcaC'OS 5l)\L˫nxn:rLn %%&BZ׫bug_e)Z}06
Z K%Wz1DQxCs,٫巔 x~4@$%@yU8\@]:(ԌZ= g&>CPx͇U]3gjXT#3&e- r"r:}1T5a]u4b֤ -,$.ݢԷ8'~0$Ȣ]䴢~&^FM!,6ARH]h.r\nПȲ؆(un3X]6uPݒ_^Z<쒳c,Qo.";; Z7/a;pvlQ?=#fb yu4sˆ`ŘrŜcDa39< ,ϕ㻴4*U7G `8ѶR+\c}Xnz4dbH$ `ޮfΕEi|HUD 1m_AXepʉ1y U.:QkȧD<1 `DžVv*dQ{27`*B|Tޥ]C3_?Qڤp!IH!JI2&^,o+&"#זôgr]!i]i(U\Q?P-,qsUcgܥyȗ<+"M>4ۙe`)<+Io^ڈBj ,st Y!XmE_F;.1XSL8N#7o*<ܤFz[-nz7 9] R] )E%޻sSx$]֞jy6mU/y]neg:855xn0I5Q <"#l,)i1~N P6jr hUZ4s.׹ ` SCI 8B,0_1 eCZ}-HoVUho_M"ǶYDەqWtGP2Fdy6yeJgO$FDGt'cW}Pxr̍50-F; جo?[6<+cdYi' jXcQ^EGQ4|s>jeUkVc)cp;ֆEw^pF`Ci C?IٍAě`ĝaQ^=l1E3jR^Xx쑆ėGnNgQJvRC8c/>AjoǷCD OfezHLXoh~IXnuv*T((&Ty_4'vR##5[iXJ9m̖TuY[cPD?Lh@Ƀ8%.w:mKK VX~X/Ҁڔy]ޏGM ZJBM}ڷs\,Ize`x'yNt,-J4CDԾl`PzKI=K+KS .\-.Eۍ3]6b[?yU3JuU20(+*XG_"o ?p krՅRʬtI'(nNg"ES{wKv̈́z~ފf]AOֺ2|Y\å噓yEYw+Qk\ 0[.C9*1.{'!3av, ؛dXpf( V^({Q(ILї{JF8 #Jc䅊K :#ֿXcPSyaRCT{M%]/w:PV$pqnP[|V:xh_R1qWϕ`B5wc3S;Lޢ#*ig?'=~:ͮFO;a%S6?'xl{1i| h4͂Dms{G0 5ԷNO %Zf^k²M1)5n_^`Bl J;uAˇEHyrJ:'1 L܃!ݠ5j s ܗ;g:ߋ$Z r4鮴bBAKު(ιt(9?oK<.uFb5N7ArTLi <59U!v9V6Vrx_ 9iHi;a|ÙI~ AԂߙr{Q`"#2!{o3(d^^nA xL۠"K˴iF~tWNg=@M% vƤN Dg̸d]1gGIC7C