tensorflow2-devel-2.1.2-lp152.7.3.1<>,$L_/=„ֳԎN`'!I$ nSy@k7g4뱍c*tx"uN^0ڕnLkJ."alNoH _xC x#@f#Q 2"{q99Hhai`w =;^u@2;{ՆEf$I0}@71aH P(3baAnj4;X¢X %!T>>@?0d & A ( }} )} 6} P} } }}y}!"}<<0L?:G?FrGr}H}I}XLYT\x}]l}^- bsctdu<euAfuDluFuuX}vLz,Ctensorflow2-devel2.1.2lp152.7.3.1Header files of tensorflowThis open source software library for numerical computation is used for data flow graphs. The graph nodes represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) that flow between them. This flexible architecture enables you to deploy computation to one or more CPUs in a desktop, server, or mobile device without rewriting code. This package provides necessary headers for the C/C++ Api_goat051#openSUSE Leap 15.2openSUSEApache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FSFUL AND MIT AND MPL-2.0 AND OpenSSL AND Python-2.0http://bugs.opensuse.orgDevelopment/Languages/Pythonhttps://www.tensorflow.org/linuxx86_6446KlYE  BP#I35Y> "_vTR`R9s7} MMم|.'MqX )c A  g}  k"IWQ"4 L pwp |/-N*YP)  N< = l,@ P xV7wPWSIA7c'E<,I!Pt %6  rL> ^| O6տ->8X?w gqO٥*s].g/ pIw0Q2" _FoP=r " UyGnxs  m -zh cg_\(57X?3 RFxV9`s,L43 HG[q GUP}%^WK$/B!V "^f :" ) R "% z o ^" %F[$zA7>hL<j=\($1 ;S O)X O]!^14 lX w~u+ [N 6w~G_E Z ^ {  d }Ba (z.+5"= 8$b> A6^x G V d j Yh2  q hvx | ^Obs1F M*t <(T  P' $ <T({dV4UF ]hU }YwT1Ws?* 8z  6,>e . GRS=Ka 5 6e w&wBb l*0j +RL&P8 wYQ}O`RDIQ3Q?;qm$,Yp0q{`phZL"XF-(]<!Sj4- +*3Jb=uoc}^7zC,<vv=p5Lvxo]VBKDNF+kM^[9S*gۖX_w2.8/H35 :ak +8tnv  )$1 G!p[|PYd= y jA Z ^z#Ak D^3C C) ;/j"u\ fd4'  =?`J AV" %4i{!"YfqXi3NdUN @\s$)1M, u ~¾ 5 :51/UiiU; Yg[~@ 3 =, O#"D=)2 l) | AO^ .q-FO M1.-,5v pIG --.l.jz#j#m \%]x#faHcaKAIw 06VG]N @%t^W{%9N-wUWp+ y;*Ͳ ^\ $(a#Q  H3Bhz!:$ "9 ;3# $XJ gLC=D" ^g }%Q?J[y:Pņ G,ZU` BP" &GT0_|N>LTSj-2&Y$Q6+9)K93JIS;}*hHb).^1CzRYC%8\XRVBX 9 7P;."&Y=].\c"::r4%>?- o~9:U` 5^>VN|c6[h91 .2Ѱ7>U^x))"'3z,h\xU5&cZ3 S1-YD+<dsH" g%9%m2n'28a'U[!%#Ds Iq; *_ a w`&A3LL}/ y&\Q"7D @C "4Fe'" ##E{(%  )#;f+ KX@G??J^ Y(Z*Di kLt '2 4$'Ę 1q ~c:l=^=C 79dQ ~+@6,) ,*(3@d :Q+ IQ HF$#+I B4S[@1 6 1oV%d 44gOna7)~,a4x=7xdC&'g! v/q ( A,0vVk&8 gV-m ,^,_ N m,3|  5mk.3RFS1)07FW?S s\"\Dk!3 c/;!EV!n>_S; 8+$ n`d# #Q 9 ef- 3vwau:E+bxHX7R'&s*i#~2R6A#AE$,X/N7E$5/'@XD[~7%;'1a E- S*pAA큤A큤AAAA큤AAA큤AA큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AAA큤AAA큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AAA큤AAA큤AA큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤AA큤A큤AAA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AAA큤A큤AA큤AA큤AAA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤8mC_8mC8mC8mC8mC8mC8mC8mC8mC8mC________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________8mC_8mC_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________76aaf337e89ac26dcff07993c317a094c7c7a8300abff4162a8e210b36d35ea4dc7b88d0fb2d9806217e98a76cc4f6b175d73ddbd3c62e4f4e8c0b9596f0a0ed581cd424767f4f9269c8c77f5ceb9c0fa4a8fb85cc2162e753eeafdc10c1612c01bf629a52b523c070864ce11d31d33aa33fc2eb559552feb986fc90f512ef0eb04fe8faa540f6e112388c3fff214b78108ee6b918759d30cd891112de4cda741e2604540d67f58a5ae58fb547939fdda10085d31f6e1e1e28471aa9c7cc25e02f8efc8b5759cac793c554bf2ea628427ed94572320d296f8614e37af0905384739bdb7d990bf49a86ed93c5d095b29ba917852aa1ad718514c7919c7212bfc95ebd65122adc78757c80a618ed5de659fd166eea39a9bf6995c2e871290f44df380838babdfa6444d31c4685cdac2f00d6fa14694e7bec807db0de4119a70ff23c09f38316d360fadff82f149b438754857636debda1da1ce4c5d129147395511c74263c3742328bfed1f489e81e46e042754f7170c750afa69a968da060058ea08748336f49dedbed91dd1995da26852544218ad88d763e5407000d8453d6c54d7e0c142a7151bbf84b7a9d74cd3fe9d7015ef67fbbf9c6d962c84b294ddae6e3d8958715d3a8fb757ca252d1f97eedf521de4a2e6b1460bfd0dd481fd8cff739f539a9c569403439ffcb8549fa48ce58b770718013d6c086f3a666ff0945a01bfdf67972dc7db6c4ba98773cb5da81ed9c6c1c83aa818e420184fcd647af55d963e70e3ee77debb9a2962a612eec618311999b639164d7142962bc312de203dee1e6d9509e33757031930b1f9ba565bcb08a821fb52dc1036dcf9154ffaeeab523feed2d5457af62b4c0352946f7cf36198a55659724658575a5cc1610a3a765db7e854557a971c0e1844ac6391e607e7fb4e57a48a1e96438f9dfb8a264c9878d1c60ade022a6e1982c17989a9b83f6a62f30771daa49521a61db629b2674aa792972cd09adb5087ce446f22cc82994c837bb369b57f0fbeb3df6f6c5d743581be5856873bc22af80413b31abbbf97eda7985f6cdf86f02a22480f8e9b9941112fa3e0dfa05fb46c5740e09d96eb855f95e9bef72f01a5cd2f7cb8c20f41048130f9ed103735f461c7d174a4d2ed4649ab5682283808b2b60f85e24d040a6c867e2adf876823e837841e8161b7d36621ccf98832c6338aeef0f112ae944c0c02787096b0f01ff9b7a7b7de9feddf71513f9c5c83f696855f26e93c85bfd251be4616feee7d1bd9f156a04ca8c909e9e802c7c53b7e7a112124f3fe601b578e0395737f26f503beac82faaa5e2c4754a3cb092daf3c18d7a82fa3159eea0cf8be6b096fb645670ea4ef04d388ea0d48fc205f03c9422f387d552e516e5041c42bc18f7d03047a1391f0eb664c325eddb19687468d20decb458c9ece38c21f06c57d0c82227f128cf2a73688758816c6967497c9e2638d01d314e45924c4dacbe8506866481704bf3ddfe15e6195cd4ed9fb8a1a26d3bbe10f84afff3ec36c9e05f0564ac1552feb24fd761378c70862d1e72e33144db472b298cd3bd47357e89cddfce09f7d16504b908f8e7f2e74ece764150fdf393a67c51647293ad38c7a035de3af3e66dfff38cefa03f7d26bb1ee6c2620f517239abbb4570e44d29aced1025735b435485f2470569dd86861f341bf71cd25f0521f3d5d874dd8913e7d4e83c033f26d7807baa502323a5b50c497456b0b2759dbf293bf31d8c91c5ba42738e88717ff9fc94ef352592ac9e42afab841b9ae6f6ac39f4480b233d4c0b9439e8e0a2197938eb16ec355778a07526d57cd686cdcb5f4e84519f81632cd067c588c4a1e96c88c04ab06dde0bc8630a49fc2402c513f0489754ef70d7d2a2a5932366fc73764f308821ed393179683273eb56360c4d2a9d241e22e5a47e5305383b8470a2dda2e885c7ed5d65a913fff37b3c285d7c136435f788b9f1231fd2fdea39b7803a4bf057af6ce6649272083aaf2be2e5b9ebf20673948575bdbfc9bcf95cd56f8b9f359f4c96609ab4c3bca38597141437c77dbc7d53da208691b515011cec2c9961077d665e068ee4251db593b6edf828b24880f8aaaca2c7c8f68104b7ed8d99b76ed1cf4405f10a8880c5a5a0d6f55c8eca80085e85f75c6c18950d57f7acfdf808b05faa27e367f65a2c8c3d3093c2c9558120d39e33ca74cb00d53d3b7a0c8d825f3322b8bd99e803ba1a3fa7f2b6f0f7cf9770ce82e4b4ef581b89211f9b5830a9ba6672c9600763dc90aba7c19dfc32db89c95903f7f781c68e5c8d984649e77323a521c3f46c7c7e6f99cee4a73024b50a89bcbcf4c6fc9231ca1a6157e1b1061ad856dbb933c200d82e262199ec8971992d65f6c780a4d1813224beea360619427bff3b233488bf37c56dc18e6bdbb8325444a12958b0bcaf294df19e9c698fd4fab146792994572e18e7dd918cc4b850de7709b5061b9637ed8cc24348143e94bd8a00db5855d639412ee894f9dd728909b956e6070f6cbba3bf11325736c2579adef96e532e0857c20c41f01dea909887921819cc0650fb9b488b6144cf694965005245a1d78a34408e0ffd5d5df005d3f1a735ae1bcb24d9c6cc8d6599dda43fcb5418b507d1a1b345480e3dd00ed353b1ce9112959962b3082b998816f208b2cf1db068da25476f280c41b7e1830a9c19dd75e728684ffde49d332e36bdbea5b0e43ff98b7009e32a20f427bec2e1a8b372f879ecb5d940a81d1422105006df41caa9b0e04ad7779bdaa8c5c953be3598585502b0fdd284a8b6ebec3c218de7ef51c678e45d10f010cc4eac95961e3a4961ce28b356524fb57ab1aec0877f681223bcdd9157b02bbe4345e3a8f03220c87e1279b6ba6ed4e7fe4703f9cc632046261d3a9554c4d2f587f7682c725d092f9e5aa5ba55d02bd44f532e85da726074e86599b3ca0d04c3d6ea5fb5da0655d2ac0d6025dcdc6d7667824eb7683fa955e7ff48c833757332083a1260649da9db71c3c49c0e40c1562b4a2f18ea82820fe75bdb770978594e8d4b9c952ffb692f7a8af3a2da1d66e8d1ed7731b5d63af208d14ee611cd4d486913d0aae439c54471b51321ad63553b4c36f52e4c5f50898fce49eda55729fbaf7c3df3f5635b814dff71da3896d7398b18c43fed9e16540b2d9a7885b7c7d2122ae86744859aa980935ea1b6f56a457e1edc482b9b57c7831ebe08833f3c532df2d4a514a03d39acaf29770f0d45d6ce8511cb85233370fb2246cebe6f4af45f63df59352128e5c510b66bdcf05bbad455886e592249e345c4872e26e3d03bde07a95130930f22b57eb0c09cbdb02ee90110d3d642e5da7ac443d839fe19fd8e33eb9acb50d349058c5a2fcd8b6a7cffab2129d80c24653759d0d9715a1024ce16c2975bd9bd81a3aab3b4602557d1a5aeeaeb1b5d5eddc42f37229fe9e4b4e8814a13deb6ce4e6a957c75657eadb8e00e0cd4af4660954b3383262c61e49c0344eefa279e351904a5da3c08a1297735bca60e2adb5c8d7cf7edc3a44231a8ef7fe6bab0c0a4231f87714c72d6c0a46a1fc8f98054bf4e7001c3892d06802a186914f271d60725841ccd172eff819bc4c599fde0e3575367673da42b2146e1139fffcf4a141a2d635a796fb608e0b97e6ac645115f5af18b91888224bcdfb21dd4291d004e53ce18be9e962a42242e4be4938039b73652e400f4b1c0c9b15eef5324e5970a3dcd1deedb9a6cc9609ba8160d5f5dd87b7cc23bf94579a2215a17c06695f044372714488173c9fa855408e9f6254d4d32d3b12e8cd903f0809d21cbaf9ef28608026a20b17999af3603cf8fdb8437b9af04f7a170b89452c289076831783a63d0f7477ef1fc259614a140d44d63e998a87e64779c59a60f267855d136b88a75d8829ef11951a40c632f86d15902e8bd894b24a12e1e5d6943d7d3e7b6712cab08f972e95d4df997b3f49896151eeece8afd9fdd27e4fb3408923ad474be2095c4c3873577206b80ccfebd12768ab4e8e6784a7b95c757371989dc0449492bd89d56c5645608c33d2d4e2209231ca635e71a9a1dea0a1c5b522d38be1fd59f9970f9ac548c94acbf672e2d6fb65b59a41d1badbbc6f767e4be3e464e52e746f204d113a4485e2af21f409ce89580b444681ed870ba44126207d2215d0d15619f644b4dfad11c5be5bdcd67297e6ec01c35d01970a3ed3f051934f08c3ea4e3269dfa500db549272360bf36cc2072fbdf392013f3f984137bdb856def060ff4a44733bfc7783fb4a5a824247eada53d714284d58948bfc5468a4c91f995bdbc321807281736ed3d3698ac735ab11c551fb54f9ec0328e88f6ecb62902719b30412e9e0febe1470da37b3f7aa02a9ae44d2c57eee42e8bf71ed48f153e39529f1216df8bb4ee6575749602a1bef67477eead63cdcdc810dc854ad786018febdf22193f8525e4a9e3cba2622c9739e5ab431481cd1435036c29505c04a66c3f0c336895083a3e89acc29ce2a79537a8cd5fef67d5222d1aacd995cf23ba78eea67609b99fb2d5b568310be30c55f8deeb04bbb34df0a6292311add3ed34fdb5729b0023194a1b6dfbc399737f53036ad784d97952054973ed81f586559f60faffedf6a266185ee7415e0fa3a344faca8b17875ed9f806f2b0dc739ca87bc8cd1c315970910230ac2b58eb1f267cb1b05de423799e65df8339b22a2d38b8c2a86e6ab17b2394228b22abf2013dd8a1f7d07ddec3591a4a5a9e14cbe66dde6ca23a48d6bc68ccb0cbdff952b85ac96a89290499212b48243eaae641aa31a23d9b4697b8e862d90a6fe652f0b125e68a9dae697afe487286cf49e9a6c8a4c4fce29841880e08739f8b2afded4b6de40461d21765678085f4a7c1763ff817bb2f465ea7ec6507d07c2bb52b51554bf0189cf1f4c46e73067e171dcd39e6a87a35f7f9fce439af850ae380efe1729e178e593f4c5215e2f4e0758e5c29ee9d26b974fe24981e48eed671a04fb72c2f4bd3409ce29ca4397bd0d175957c4e05a7c6f7b35b331beec5dd0c3afb22dccf89d824586bdff80de2753726aa5742aa90b4f5d5c561549d8c99d67e831ce75d4c6464ec3a3352fdf2886f949c884d3d902a3c809e0f70f54bdd6e024d9ec453aed454680fa1fe78c6f8a267c2764593a81a6b79caa13b09504426430d54c0fb3a06cd71b614ea37e9c650e42852fcac02e66e24f653a4106e3d4a03de8810ef0af4d9228caac3abf8ca777b2efbdb99f877e45ce19ad7b3b91583df517f6343175bc646459e226823de03f4f16d0f4a9cc07a165c9208376af2d971823dca742135cfa437153f5b87ba72f5362a2045a00f1c54e760e841eb1e7b758f27a674bd7688fa2e76672e5c006f6f001e4c21e29876c8f8fad5f4f2770a7d02123b90e61f7e88e8da8bbdf24de0e5862d478cd3b32e893d5a9900aef572dfc8d79aeed5ae85048b6b12a6325e1511ec8929ef5bdcd798f4d34e90f631549c756ac624c5511cafee82d8d4e9383cc0cda19951e7d363ecd245b19521313011f4fe1db0da5357f03bb85234949a41f9f1ba50e81e3a56940dea48901579045e9b93387b943fde5c23a3c37f1b84f22704a826d9a5a8175a39f7bfc4ce2d2e563c57c7e9151a39b7bc235ce015fc990c8f8218b47a9784afbc5c24c432767d2d10711e6ea099635410b0044976d68dcdd1679946b3072b479f7511ab6f6ff5da7bb066a51fd6702f587ae40ae518a281e255addce94f112dd60fb41ceeb4bf1267828742072ec435db789c6382b968e3e207dfadb7acb86129040a867e5df43929a9426eae3c170708ba5c9a3d9b1fe66246e3f55a7d1fd8f8bbf3aff92cb84e075844ffd0833b0fd77c4e464ee92a67f88bf2dba1d65cca17387fe64ad934a3a59aeac0ed0f2035bcc44496d8fa345b7ffe20fff701d0a0e5b62790baf3c16361a5f58b847793c742dcd0d109e78450cd287160b85017061ead6fc1809df70422e3d9e787d0e89863dcbb139399d7716a93905c8e6d473dde5a7b4501aef5bce7651deb9a523b0bda24091a3915c06bc5b593d5a2de9e8af3639af036980b31f21b349e63a21a75e9433a4e0ea37cb12598cb3cdc72f0a4a5e9d958f445da3fa51ef63ab9b483f7fcb7105a09c599d15e8b7cbb7f28b931c5b381ccb3bd2bae87b15f6679d2aa01f138b54d09dd1cc0185b0e454fa17cc32da27f789d3d7c9f3c5693c7d7b2c62f63e14bbcbfdfc976f1b94b3745df0ca6a6fa7995c3116feb10214c52d86c35813b94210b7636b1f7d61910a47d88fd386a836114faf5d504240333fcc08796a1152009588041a8b711ec5f0569fde6adf168357bb01363a690fb9da05423f4c0b764b2daa25aaa477a502a936e964011b14f0851e0975f21a94b52b5c33f4714601cc86dcf6c062b439341dccb22a5990cc2ebad465841907fe75b21c42329cd5d9728c338224ca78018ed9a2fef7cc6e5e3722de30fbc76161650129264f86f1ef9e526285c622e2bb3ce860045e597ffcc6f3b73a6c325a4304c4ee866e92ca14f9a11a9036c87600e38eede1dd109344af992fed2dabd5964410f2bfccf680b1bab518597f9bfe72f70b29ff27e4ea8f13ecef9d8c2e25593b476c34234ca6354c930bd840260f6bd6b6c5062179f00ef901d0d32d4e2a53e3ed48a65c65fba158145c505e4bab42d91c23c748118fc959858f46b89618d1d3ed07b67e8390d4b785986a369b94afd24ad1d7e4a2db5d5164234d185edd100a902e79813325376f501f63cd79013d21e909be7b23558e534c40a17f1b4aec2af3d4bcc2e1660e2fa3aef6e090d00e305e6e770a53e48d486801d0c6288b59f6f60623f090650bac71d18fa8c2b2dd335ec4abdd17cc7be896a01e746979827a799b91844bd51294879b3a7f1a12fe05de3d04f0a12c17cf4fee18c8224117fd4fbc287d54509095df3ff1046f1ddca1454fe2e093bbfd38b7c2c57341875773b5db607a1526e0bb69e77cd525c41b9458672e019a07fd0a757e2a360fe27aaa13d0f6bb9cb2c4b925cfa5e627fe82417896efca864fc39b9c519ce7bece94f171f9ab312191eb3fee94c3ac9faf4252ae24a6c004dab84b2087fc569e41d30d45dec119ebb4fa0b85ffbecb098d58225975f3449a9a3d2cbfad8f0e88a5fbcb87c829fe789638ebd4e2f9f28ec1e3ccb684e7000e661c86c3e02b2e95788081d2549ae82cb456c38d44a4ef1f9f0a678728c7c037e698fd88689a08eb513bc6efc64619fe0d675445f6e1a9752af1f62b9dd38e554fe8b180bac36ca4361d773dd4cb7fd5fe02814c967a9945eac8d0751e7f5c77a3662b8602630f87e8c617ebc1ccfa052122ba0173127195f66a94002a7bcedbc7b42b400de4a31519de94a73578a84262ee89534ce12a777ddc7234f417916fe112c2dfe909b2dd97b0ae0babb80d93a4373dbc726a15c66d7cec32b792e2005c9bc1a76ebced243806eec75a6e7027ef48f67458c1b3aece835606d3c9adca4872c3548156bad9b49a8169e31306f1cf45c9e2fef0824761335a72b824932e47dfd1e0ff8c1e2062b8544cc184d7c6cc990a1ed76fd64774cddf4f687c8ae8dc4e1b5dc0059cfd818d0df1cbd87f86ad1e465c3fab9b376d6148944f564a8a9b42c2852715b76e92ee20817f3e82d4ec0f9ce124ac413176ec347b27730426679aac26e7a979240ef025738038b2416f66207a1ad5784a52f18bff732ba85f682e8de3c7387415e1514ca748901e32cdcd62dd67de4a23afa500de19193acc690315606920d153b1582783729e9883d9d8f5f299299eb1aa54ad92bac52fe81db36eb479242d1cdad6c33059f729c8ea42acdcddb444b38aebce3f62ec54321bced096bfa458483fbdf4f4ba58bfb6e3c148f47a4d72449782657823029cceac352a3d8efb442e9a8c416d300bc5a57d7adea5e61867accd10d818e0e3cfedd8a5f9772ede9e48ae58fa59797416814d01547c78f6ffc877ece748e4a18e93e67890ba8fb375ce474a70544ebc689c58a845a872474b87b24fd56b59ec2ab802c3c44813ef0d69947ce403b2a842db05fdf42f9a9a796c645a2e602aaff9d1794b136d9feb320ff6cb6ff6ebd13fe95ac30d5705254537e91a604f1ec3675e26e946aa044db50e3623ffbe72e46adbd8126a8615ab76ba9f640f2ca403fd0fedf10bf3a48aac8e9f91564bb0c5eafc227b13d9d16711f559e4008066ef8bb93003012dbbb34135b0bb218a06f2835c923d4bd82e08af24da769a4a81f3b043dfb30e20985247f3a421304af06014cba37a59352a459306cd80dd273d06b3556ba2bd50f31a1dc78d0e766c13001d9696d6b83df22c47f3070bf204d6e93995ca1f510db1fb817899b8ea7a9066aead939dca13309e4ea38f0f8f5388d5d213061d97a26f6267b621b91dfaf59d4cd293a089eccd9c9de41971f58b0f8e423b2cca15ee8a14f92da81edcd17d1ff4e9e4501842bc459a54ab3384f6f3433083c498d37845cb2d979865e55fe5598659aeac6ad673cdbd203dcb64d8ec07f420116f01b26e7b412d176af956ba8733f2f19279e22223786146469326a02cdabd9eab0116a61f5b4f482a9cfd0b141cd3ba05119831e5ed5eb877aec8ead6961b4dc9a6e9c95527482510e93650dc988de98e5abf2c38d9ff180e0c3dc92358b2ec36e68c79e7c36067d82dd0406124a17eb8bbb5b71fb2a298a4544c42d83a83c36323f3ecb29f55a5febf28b3c2f9908faf7541ab204f1a44c3d372f2f05962a763b04c082a773c664f62632342c92813932d21bbc328bd488c5f9f5744a06757a58787fd71dd8aa34ea42eac16ebd50f2f3648b5a47654b748e67e47da1b552c261c93b676a451befa599d3e7aee1ccc2c509d905dc077b3ac5d59459be53589f119fd65c427925be4af5c8823ab55674072f13108e1cd2b72a65837b3a4633c840a5b9589fed90ddf49a4bfa1539645453f3951d5e5e331da8d641a393fc4542052320fa38e998e520570a151dfd0a7ed4cd2a1b861d620e6299e77561e7a6b6e34009aa67eee94c19c37ed73e009478491f7e9287990df90e90c20b0673580760b2a9d72ea1e42125c758dfcb049c6acfeea242b55b6241474a06aeaf47b5782aa319034e886fb1353ec0d942d97fbda16d257c3bb62a67b2052888dc9df7830872cd1f1bd607f42b723165662e4b1c75349bdaf95673d0c84338bdc1e7f8782de0ff7608a9503b265a6877006dde2246b0bff96bda81cbc88b2b2e5aaf64afd6a3f276127188bb752c7a8f12e94b99a429f5b3b20ffbff42f3281fea22ca54c864e72a317525131b2d4cc8c72d4dce833de18c4441881e56da7a25aaaf6e17222a2c967f3002ef24764ab96db1c3af00e6b1037a1e364e09662c06bce1aaa0bba0fc434e3b11e9a60b83cef3c4a962d97cab8a408a71b7188fe1f7e84581d35aa9fd2dd7dfcabc38852ea5edfe9d6fc8f3e63219744f6fe5cc31c73590591aef4d1a2144b119012cba12d4580054029a0d2da785b792f59ee96d101a9a4454090d73728aba2371025af51f4769194137952fc7bbf1520eb7f726cf7fd9ed2fec8c41a39760b4f4033cbbeeecc0e0d493f31b2dcfa9ce53a99807de3e6d523e0675f9e4ae4c75b536b8db199a2a64fdc255e8e37692dbf4559018abfe686ba15480c4a7ec3c15b1e29fc94364c51a7c8139b7575ef87a265427c6c5e8ff2ab0030c3a43edae54e78fbb749f985442062d9dd3025e82a1993fcd7e5c1bc96ea5f07f672e99e5006950b6a75fbd8039d4367ee1eff0dbbb1ac95160934e0cd6e0c33b493fc5321aa4481916b0f2dae17c076c3b4d8d9ae7b4c73387da3f1597a0ff8a57247203533958790932c7549b9c25950c93c89839b6a3e84712db770acbf16426e8c32242cc976d680470ad7222599c290b1ec2328ec0fca8b2199011ba22f357fc6e383dc77668b8a91db396e9f470357c8f4d24adbc0c257844efd302042e056ac81e3be358c0231e622545ae39e83ff7b24fe7acdfffb182e4508b4f7d22596c84900a2d4736330c85533caf90a45a29561fce216e6191878f8d331fa9d96c052c603517f9b91972a6aadb6dd7bb0685635e324345175e3b4bc84f1d23672953d6c311ac83f47753dce6e11b9725fd74bd6fda076f7a520640b5e8bd102bd9e138934e048bdf2f37474a11c1f170d8265c75a6d5502c45a915dcf404f4b2f58eb1431d353dc6603d21cc5450fbd7e427d57e43236949857095d2ac98ff2eb4a7c1e2fa10f8d49b3a4335183b98a23eda051c8a18710bbf12840ce6d2fbf75d64572379b43c11abf04f8ca991ec096b19f2680c8bce00eadaec561a705b7d47d21e135654c8336f5463c773097b3f3f829c6c7324fc00b93100bb30005e0220e3a8e4c5d06a92ef57d593de59d4045f884331a4fcd277009b3236829728e637eec144e3635c352efeb22eb3e4f914d384fa48a894f7cc7c23c46c2e7a54594a69386d957558ad2a658f5fc7628bd8eb5c7606b38f992e915760d6c4489cc457638bf5d66d81824259f3fb58cb9f67ad070242d24fe123d24ecb2e63af365dd4827cc5752bb9390df89ea1b50fb784d2ecf040c795590eea1f847188676d0c893125c718e66d5eb633e1f37d8f9f20410906fafba57aac0acbede2cf9091a863e36f0f0d6ddf1c3b3fcebc008346412cc89aa75193d2558a608fe85c330c8f9337b38c590c455515e5d1fdb88b8517d4a8553aca76741bd513c9519d5aeeda6bd6a472c9b0f92fd36ac6e328ecc3eeff917d7595e1e0ce9cf61aaffa3feb0cd6e22bf6f89914ca6efcc2559d06c4e40219a3aa2dd5fb1f2ba37dbc6a7da634f5c7c5339960b02b56029b4a0949726016ba0db06c21b32ed234d145b4e099591f4a3f67d579cd4734f275e289a1cc2f4bf5dcb4584ec19231a32a038b938bee8417d42f3dff8844c39f4d7e61dfecbc1c919371e5686fb10f57717abbaff263bab1b4d6c1822098713abc54737e04a29425339a92aef4e7856ad54369a1327c6d89a0ecba17d37059904d8aeda02b80ee67b7b0293e136451eeb14e075195bc277c2795f94c7b3f0c1a9bef12858f83a3f55fd61f1326aec56b30235af14556c07acd30ff42518654e9a1f8cf0bd3e4ecb27f80503a04fc8f4603626dffe8e602a2af9c9ad5235efad24b9b6b363529a7ce71aac002eee0035bcf2f1676d0a1c201fca2e4657cc71c38961c6061490167597e13767ebc6d2071289983ddf294f5bcd26bf6dde235e96201a146dd0344d026478a770bcf760de1a3af85b006ad0ee028ff69df7332a30c14d52dc9d9292d4e99f1290192daae89b52a2a67f0c0683970d1fd5156cf035be83981f66510320847eb9e42c89d5a21133a41fc037b580e67664f9441ca0eec895980330969bb122ba279daef1dcf835ecb71dea19a4c6346a9f12b4fbd85cbf640402ee61d45be5a850259656cfae718bb15536537ac2a5f90168dd0d81d6d28557ad461e0862a566134c48df68d8d2fc7c30013f833e52bfa0d7aabf5689857c9b8dfa0a71fac0f20176c4722daec03313a39b2da84f0a2aa4a039627a46822bcd2743e1f91ea3aaa56a6100eff54db4784c84c9787a3467b5ff23a5c12f4b377cc58a4082e9ece1b8f8d3394de932396668902e95beaf717cca5ed2e55a1dae617e79816a96e94102dadd654336b6cb5795ccd97d7dc4c7d5fef0c8f52350b915c5c8daad548138ddf06ac99b08f1a7aa8e4b26ebe62437baf77aa16cd70dc293b40e235a79f5abe1a53af206d78bdf2f9e882c48610c92c01ce7106b4fe231e72b2299c0485a7e5f45811ba4bc36225ed3ee5d1a3d71964699fa82e49bcf1bf0ce06d009c39c705cea5ac27f531f8ef19dc90f84fcc6b773c0b04dd1c83f21998447b478537f0a34a6d477ea0f956147a85dde1de0e174f89acc3e79a7648a21205c105d1aa0138bffbe8c1e4520de21f8cd1c6092b2d66134917e54d06054eaecf6f192bee6ce1435c335f5cea5eb79abe123677a16d9c0f600f95f36de714c98e66725f63794b5cbbd3ed4d711d446420e424e84fc199b84c93b145aaf984e215e213c26cb56c03d7d603fdd60e55b5a37ecf183731c32e40b1a6bf5309e9b20e739f056abc4ebdcc3aa45320d4895141a7a136cd80db71a73df32dea2f4788f86a38e177f05cb20e949a45dc7879845ab6bac9b95231599dd20ba39c184948fad4f96ba727e94a859c68890b3de70b22b79069bf50c4191b055c4c11e96a42cb8c1a1bb840ef9dd631a81fabd0dfb0e4f62cdda5020d178dbdb9b8da8caa9e2087d769ddd4f522396d2aa8ba533c561b3caeffcd79c97ac70beeb8f6edd936830f12bf487347c18d9018d478e3b805aa2eef44a03d43400686108f6c1abe8bdeafe4f109817d18e2cab4e15bb3ac9075730c5fe3ab988ad430eb8eda0b19de3e53b80eb72cf894654ac37c4f1062d03e449b866dc75141782e99e8bacb2af7c9fc16a04b0e90e6f9ffbf940131ef49c395f6b38384c3ac5340bd1e50ceac93ef011239dc607fd838b4ca8d912606d05ea48aece4d09b0b718a28c0a16062c9bafe66996d80dd1164df16b37fe6aaa8ddae25241d7c222c7f6aba6ca19ab0db2847b1c14052703a14b4b7318eb6a0fb8bc96f52e6496998642a1f5bae573eced818772058f3649a986e0b5a3425782a73761ff2666639b4b79781b5dc0b9d0e82782e1cdc22c0809757d74536afb58cdbb1419c8fa743419b376db6bc97b1abcefef8f0c413d04c301147f168fea57b1bc0ccc07813191a1d299bc2562068dc6598b16c2baaa21ad7dfb2631f03be15aef619a4db826fe03969229da99a3efb0f456bdc510e41aedc69012feaa2657ff54c2f4cf99ca9a565f11366ef13a926a424b0ac27866ed9e033d0d1018c0c6644c2a202ca8972e6569a92b75640aae4aa950e6c584e27b46a2158adb7eefcf6af465c742d1f5ed8e917323524d0fa5cba1c96ff7085ff9e774a175d776210543ff8c210f5de740bd824dbf682022944adb3196c832d9d1204db43e5c2e3fa7b58f5bcdf6863963c156e6b59d779ceaba9c2e027211b4df0212a4f1548cea4e612e2ae4e606a6220c1672871d1862eca553cdcd9658ea7baa15b5ef6149a08ec10aedf53765c0dc950ca9f7099e348f648d466f3f276f893aa0cf485cb98fbcc0cb1adc04f5566398e2dc7a3d6cdcc0c91efc5346266caa2b5f662a228b72311f1c7374fd82b849f49c64a61ca6b0f8e44fb1729a82fc84ab476b5388562704f72bc9bc83c5e35db9474329bf70cf535c0ada17604c4e64b1d097c1d17b819a8a8e5c525b2329be3b96ef57b45b2f4d413472f0c3eae6c541c225e3a05cab4e5f78e7c4f922e9cd5ef8f746f0373065b9ea55103ca1853330dfad7bd40dbc8cdd141cbbf1b61f186be08c1841c3628fb9b4c7edcf23995f3b28daa1dc49cda6592f80e1e9149c89065a2248c42a0dc4989665d7790be1c75c2958bf22c5e3ee3047e07882010d29db7837a3c6ee8337d9960f2df765eee54caafcfe8eaa4a977c03c94de00344e29417d9f8cc15e59856c634372525c24124fb4d86d6c29c94de41d8cdac6685eb9bac41fe69acde3530523ba27bfe24e54940cec8a03bb746385bdf1eff3df86dc07571bbb19c5bdd6de47d2d9381de0b84256730cedb319d83b379803490d135fdf27fb07eccb5906b236fe62b3ccaf0aac817b27c14fec30bd89a587ea5b54339993eb3345e131e78a676662120acc3f12df959166d7320705e2631826aece062a64279ecab3611f908c54a945b0dfd0f286fec17da868f5484a3f1b1e3669c82b5af19d1bcaf4860b7bfdb3763f3c8682f062bd44ad0a020462406ee1d29ecd3f3434959acc3fb23f3e4b18e1d3158060e97e8440aa23bb77c4036a71c3827fc165472e34576d9791a61012ae21dc814217ce3f1672309ba94cc2cb03a47c09ee1a0a858151921362a98b0de1f670ca9d54a3871afef5ad226fead77e47e4ca07aa146c15541421434f34b5b64facc193af8895ad79e6dcaf9af403de17015c9692d432dea2d331d74f5a45839fcd8bfe097a27e8064a2ee983bd39d5d9dcfe5d934a05395a6e24223b23e3acd6dd5a65f708bea007f8735031a61b4d49d9207f7566e747d9be681133e4485cec379ca399d2efb072c9c2e0afaab91d74916ad2d4b60a901765e1f17b14715543bd9b86c9599d68cd53bd4c1f02d75c26e7cf94228e8377d74bf4081699e602ca809360ca5ecbc3cebaa900c4d8aea911a81b2d0fc73b33ac5fdaab5482c71dbe6b1abb49cdd2506d00e92f03da1eb431bce7539faa136beff56b18dada25f7055f03994988d6e609a86c495ac3565a7ee9fb6951a7f675523a16c9710db46fb017e6b6e6d599edcacf4a3939c2267a958e49cab86d4874e9b169d7390ff1580e291bca95f06b45e821888c510dfc6845b56003c69582b4d885497d881e013dc778baec06f57819267fd04eee9937d2dbee2aca89ed83a05d15e0490bde1323f7907ccaddfa6ed102acdd99459b40e0174e089030db546301befe5bcac231faf83edc18b33e7349e85a16bc31a03b4699a073086d46fe2302b0edbd0e379130162dafce67d2d7caf8a29a45e905c36f172255068a24bf35d5b9010b770b3aebd7e80216f8761944856817f8c164e2916112bfdffd75c7585125a2a121bb4ea42d760a94524b243b65ada5d14e1cd016808bb4d7bcfb687ec750ed5854dd3d7d29cf6b4fdfde0b85fcc8198a6f319d41a39343dca4d69ebd9ccfd14801fa1fc62446c7aa22f5c118387a38a44167d5a4f6c0462d825d2991673e1477f6fa0b6ed5bc8f398da1ff27ebabc310344e7d16ec94e32ae2e6af04af7be94e71e2295152657d59096c94c405142408eeca779fb72eedfc8aef95c5f00eb5c0bea5fce8d728074abbb8b0bd99a513670194950e0842d15c4843c6602e50ef94e84107d4ccc800cb2c632b46e9ec40fe928e70e2ecab505c23c3e87b605671844f09aac5f65f688a8eb90c6c67922da28c62a4a22e30b5763cc5fbefc7475ca17b5bff864703514897e719538505198b59633edce3c159ef331cecc9cb237b4d1359a237b790d71beb80bf44cb4168eef2b2d35a18ca8cd076e83060fe06b60d730c4816de7cad10c35aebf98e1f1732851f4fe29df5339bb7b20b4139e43412ef0595757be9d3a58221bed70053924b51718a2764912336fcad203852bdd2587aceb71e09d19830aa45abe84281f8708af635bb610b5d1a52a9249b1e43aab37f5f773e4d332ce80458f45a2814b3c34e9b759f7e8a27bcfd9bfbffed3435922f7f40d8af44f2ced8eeea0bf44c429b9b5ae3620bbf658c1fb7d1f3a8dd41151998c1327f02fef4be8e29645b693be9149325020647dcc23186d6a9de2c6d61915e7db36355b95922cb75d2e0d48abd5ff690daff96cae60a8fcce6144cb318951212f153a057a020f54ec64a0c926e9f9ac37bdad1bb321e38f606e59ecbdbf7deebf821e57b1d5f9e6e54661c8a607fdb3803e06b95bc7ef9f9617dad3b4b426da268d337bee9b25f072f0211ff98ae80871ca8e04822ea84b36ccb3588036b8b6f9eaf8e417d4ac35365a91d532615d5d8a9241979e9ea83444c53fe452f59623a38e44ed8b104d4f362eefdaf361a0d318e89131a81444bec7e9d58801d567cd656dd60097657937b60975dab195e806ee20ebb43bc2e95f3dd2da8e39eee8e1cf1ba2be5a4f6c68b6cf41d33976edf0dc331a346274be05587a4231d16b268e23d97457deaf47aa3e5ae29547760ef502eac3e72ff54fb4d8760e41af31a119fc340e0e6628f69fd509d605b89c00c5e7e29438cc3f42d002b39d3cbe3ac066da5a7dbe63c9d191952486af01b9250eb1de818ca8c654802076b593bf2108d280ff03e358f9ac8bbbfb0f6a73c408bd82d507a40781b58941e7dd7402e6f11e8e1c4b459833d4a03883db27df4f7008c80894fe4ff639d5e5d4f4daf8a6adcd8c80280ce041a5bf5281d1d17377da800512ce16bdf89a5364640c2f506a27c7ee72d31b8d485026635157f9a821124b3b427b4cf6bb25e45334be22e70d943df4014878a20ac87c3465dbfef4213462a2c99e001a8dde5f64913e191bc4baed13c0189ccc34476573f1245662a85857a663ececf5a5f1fc070c8833268d9bf38697a738b9ae04b6bb28d1c764c1bc410988bdccbadcbb0e120b45cf428f69b47e49b4e03cd22f8f4078a94e2ce4bfd7e2aa585e8570620bc6007eff4d85f9e0dedb9ca503afa000604f2e3a5ab61247b2517d7e9e1ee6e1a3b1f676c40e24fb3844573244e9c0600d77c2779cb33ae336f4532ec03a0cfc541b86539fcb9f3cda4020a8965e13cc7299c72150bc22fe7142c789fd3231dc9a339fa0afff0ac8ea7ec30b0b3b9f581c11e86a7bc01688de8ab889f3963dbfccfe5efe544eeb7df2a285866bdf58bc5289bb48e1539c02caf974a59c810d8c08d059caa68b454b62b35601c5e76526710277d833b0c4dd531b83356c0c309510635b31cb614618cc0f2d865f98efbf466f9d0d8c87a317aedef81f30fa8fad1adc78cf92d229548f1642f839a90d99d68fd12c06449b2dd65aae4a1dc0622f6251e5c79f86f1a92cc2cfd4164cf8f747d7e328fa009dd8704be6311cd8bed4bf61f099754fd143623e710228f2fe11e00c0f31357c1bf70609769de5c2e1e511ae2e2f5cf695d63d6b6260c54141f1e6fc32b4f9a38ccc67af6bb0801c77f88e8d3432f4c08ad275305f5b7356f6480bec9e2b2a725853cc00b6960289123203410a472fcd06e2c462b7c9bbb9fa4fd215bfea0573aafdae6af5ee09b9a355eecd597598023d50cbf04f15fd3d51ba2adc1756a9a13df6b46e01cc99780bc813959d16f2f09147787d012ddacd4852f137c46a81e107e7a0d1d2c74ed970346dc43c13aefe496852632e124d188d24366261b19941fdf34850e45cbaf7de911326d3bf96b5905b1eb32e5d1f522e7e4e9db868c778a1eef4eeab4ffeba16605731392e4cb7a166f073a66f90db5c6b758e79de1924c3a66a5046c5d73868577840631cd70d38c4b7f113004db5da5684c87af11f68bfb8f8ea93d75c073a377c06d31135e424915791637a17b94ceaebb07a0d9f83acb2bc17bf0e02fe40819856a7d2389dc633aa9f5d7f8f3dc2b9ed6f2a62c6797460618e0ba00dde230e9e3d91121c3b080c65a88f2ea8513e398751474be1e97d42f8118d6c9ccc5e5fd0879ac116ac1c0c0eb6002a1e81f0ab5a170cb15bda5aceafd38c158fcb95da1fd12a0e9e32c2a6e8b57778a0df717573d4f84d4b2db57f4a8cf7da06cb9d0e0f6e3c705c3c7b2c776fefb2f50e2ae87d4779fe96954f2c78c90aa187ab50df7c4da2956f1f29630f83638df6c12165a78e8c8e5bd73a07bbcfceafb6e2936a6c9a1768e5716e7daba93ad89a1e9987ff721a053b6bebdea3392dcd3845f421bc89084edb01cdb583b14e9a89a3779692a5313ed24414979d0f9b5bd35d3a07a0335d96e10936681c59d4952181f1ee175c5b08ebc6190c5c430a3b71e391d3420e67523d917dbc7ea516c3fc3c81d815854f16303cedad90ca6a734b2951e0a2ea731c611647bcc8de28e67ce50827527549a04aeab37852f42803cb51d92868d67614c8ea40a96acfa5b84f94e833308cef36485d261920c7792f1ac1d4099c740f263a449689963988a5322ff7fe0d7db418cc0ecd759020780c094129a815946988bc69cdbc782c60cf21a896482d75336f482ce031940d4705b7b51bca465af2920c91c56e8763882684486d43b34a46df681fc3a97c45bf8a25b8c958444e876dfdbbcfbd643182ecbb8b5462bbc9c99f0f85291d3f1cb4cacc5a85529e93901852a558fc4ca26fdf4635ff1180d6693fac509487e3e3a70d82e49ba446fc95c5888b5585dbd6e6a49cbbb64baa917a940e33ead5cec52872ed7581025a1a4224936d7bb6bf10bc5c2417534cb9d19a048a422883c11bbfbd1fc6372c7569f08c78f8c203c814bf94e7fbb80b9b1b62e768f5fadfa0b77e2163e7355ec704c2bf303d9c1e090423c7d6e10b32cbca71604f86eb12a7b0c6bd039450b08dc76434c9924f8568911975e0f91820e3ca200efc9f5647a51d0b2b1c0f0bff52f63a4aabe9501297e09e2b9143a5b760957fb5d28d066b31189480bd7f7b2d2ca4e5121a1bc31be88b00d30add7790e56a01842d7fa1c28deee3d7bb5d6de001ff3715850699391e8c30bb50368da257a04275288fb2744ca4c4ba7539c1ab4271dd38bd26a4c24ac8aaa42ab77b6b6cbd0743b8062289909fa13e3e947fa4ba9a57082f58515b1c00c49cff6bd5f209c70d367875e62c64263da211c4bfe792eb47865329198353fdea0b5c16c9a3e86102068867e09169461a450f03b2aaefaf33def35eb006cd57a2c0b4952fbe4f1e5fb75e1f29249b1b8e3caa73c9b0a06071b2abf164d34fa227616481f67dc88f363db6c574d4b38e3e80e9f23da2c7ff7765f2462b51d9ab6a75b6581185fb8e177500666afcdffe8158674b08843961c317c819e6e1f9dbd3eb91a624c042f3c9e79f76d1d623ea91ce24ca8e9267833ad549207f24634205412d3723fe1e57314e888243771c5442bcbe995f22acf4a6ffdd38f6762d696ae1a5e28dda02e5846eff71d0593d33dd2e6939f76494a43f098ad5e328d3e6cdf617946e627dd482a10ab0d5f872f32305b51ab9beb7e6453bc35875895819de8b39081be59a70cfa6d611a8fbaa90b4ca8d3752ecfa27ef5736008dcdfbcdff76da05a581d5e9605a52b800056a0b11283fb3c2a179ba119fe96a348c23b14b8dbe83b764cff9fd50a63d0efc0fb1b2f5f34b0c5c5dcc97d34791673efcc272d2f648a17a68588355dde56ec69713ca0df3d6720e7bd569a7aaafb9b68373bdfbc0ad5e7c70401c1c93542581941bcb3aa12977db8538044da1720f8ab9e34544e6fcf39dc0817290c4461da7db171e0b1e866b164011d32a1fb526681847f36b25d8d8e5ffccb14e3a5b9e32a8524ec3f1b1ffe00d5a86c7747203590efb6401a9fecf15bf45227eb60c8070ccd2021df9d4a8027effd111cfc5dfa008f1a70156d334b863b72f9d34b9743b4a5db77ca712e674583e7512892c893aaf6e3c3ba6f786f0139ddcccc5a4232a6006a83b417cce7a1dc2070444d10133dd0da54bc2a631239b0a4368df608867a965007af069f279684ce72eb5b7fa25a50c890e276b7f3866f872f7fd05520ff6c194791b53c8db475ab5bd9b8376960ce5c265c892c3f4158374ab6e745d7e89669912b679191967c26e535c494c85dd1906acb405f9761881afe026afe987d45bd4bfbbed13f73695aa01a1498ba328c2a18a0600b01f9a03390cec5d56c59d05f7a46f7aed64f4eb6ee65fd8f5ad0c3ef0014dd961e77275be61b333dc0eda18068345fcb3d62a24ee18ac9e4725825fe783f000d2654b491f3a8e086e494485ee1a97ea26247c94ebb3999486ecb31d669fc7362aebd5c7870be71d4a704eb8cffc9478e328e6e30fb61733b4b1394640aada4c7f794e25ef81a8f32acb1241978f027609417c74491e96291552df2c4c330dec186c123c90366caf1e6ebc90e3c5158bdb21bf24551c11d0fc8cbc974d264d2dc81741c000c389bd68136c0988b6725ebbd17276ee78b689e41ab0730a3a701f0b8e8c0c45e6cf8470c15310820cfed7493c6143f6f2c41ca9ccfe64c955476edb374d05ba287b3919467532ec43ca097a132c342352b63c946d187736adfdee40b2f22a5710a4eec6bb96c9606a21620a867ec2b2cc4a594aebed860c06860a4201559ca6f37e10a40dee412551fa665d42d9d0867756919b31a073e0b60a573d2dd5ca0f987f672ecaa348f0840795d29bd0077f1604d36d3e1ef0301cd6881e96aa814dced296a9e206373ba7fd3628a956e8cf3c49abfb99ecd2acfabcef2990de897c3f5a0589e4a76c85631f6eea19eaf9cd703ae51484403466f12cb2cc22fe6978467ea16ecca617ea7726339241d07b1fb7343e1f88356fb8ff68a9dd1ac3fd8761e863a9cd6099e9f87309b9582d8b20295e142d6bc252683ed518938ece7e1cc7ee482bc6b8566d12daf3c9a2816ccb4f9c2e2c723d8a737e16022a9598447cdb17ad9d78749f430a8997c707f6bd1ead1ab0f52140552cd42a39f5d9825b855699a2179819c6c0bd5072f8db0921ac7e1daa9020b1f0020f162f3404636553f2887d9e83f1babaf26d055daf7357eeed1e7a6681dc0b2fae070ba4cdb7450237ce4eb6ddb12bfa452fb8a504fce1b002a0bfe8cbe6fe3a3fe2efac65573b9f5af59e2e0e001e2731e1ce3897797749e1b3492b70672d7134625504dab6c1edbefe4f976550650c252385b453b0cefe8c651874ecdce7238571a955629f2690bd9d66a75620416e8a6ca0ba503a4e399201d762ce2cfdd75acf8362439d984e55333adb3e1d4fd3b8406fea6ee04f4554bf45a4839e253d0d5943f755cc2836445b627d650577da5f03f2f787137c328330198830bbb2256d946700c3aafd6582f12b5768010b63adc4054ceaee356794de8ac6d37ce768af7f7895b609ae1b10151967780a6a0864d7b932c32f10d3b83ce547cc886f893c43d6857068ca4addbb0fbf11802861b875cb73eaf51680bc491e748d9a09a222066e0b548019c379c2caeaabcc145ce45ebc7bdcfa7e87ab1eadbd443c1aaa86d5ee82b3efb8c03fa03ae54c7d4edfd3a95a58d0a4897dd070ae9d6c4010422691c87f78278b6329918e4bd9885c65c955584377d1d94524bf5a86268baf8affc835f59431ce2e254d0c523d61b0a118cdaca42e40c2db53e8d9d077cf721a3f6f8661a13d5972f82223a13e15ec113a9c4ce49ff6aabd1fc85070af6b3684879404b9358515d7ba853481fcb9aed50b69ac8bee61d13a12fc74933641f63e16fd1c4e6f1a868ecc29c9a9115862a8faa79994410b14578330221e841b327045145042f3203039a2da4a1d29c69740541ae8d745a393d3eb939a73befe703748f2987468d5de21ea9722f97b206c549ebd068be46da8c2718acf359e220ea9ec7e1297602efbbd02f6c99a332a9cd5bddcc39d7a5d292550a63f3f8293f3518939aec67c84ba85f1239efed24bf06f94b06a7adb74102d1ac2615957d38b832633eef20b8fbb6ff4ca26790f191960b8ab8023032308e9b13b3dbdac08abb1c33732d401bbce7534f3413d6f741dea299bcbdb7225d37a73ec812e2890f549e925ffc2e493506b98fbd65dc4fd6e0f0b1fe9a5fc636752e83ade109094f92ccff06f7bf4e597b20f97afde0b8d45d832b74ab12c498775117dd495b83c666e15b82ca1eb5b6a16bdcb2599900475b5daed157176744b35e6a9f3e98ee2ad86779f409113f90079bf8bbe263d1ffb2034419e5a15a3938d7fe9a5fe931c59a3582299ad1a032cc6fecb8db4465b649d126f7ceb9561d9c8f71a2723bb1aaa4f94d3ef96d1a6e2383b4701ffcd618d5df91cb1df13ed12030ffd9feb992a989cea017cf23d0849300c247fd8c64eba8f48891d7fcae3258e95c13573378dee145b335121684776eb08b7726d6c788564f8a7a238e9d021b6df287f5e4b5328eca685a857e75f136e0cff7872264793b9cbf12b6c135436861cbd3e228ae0cc91d9e7d38dbe28720cd31584e8b38ccd2cfbf63078b90101e1c0340423d17e77c5a6f8f9a75c94463ba115bd191e34607eba924ca3f3ff96997aa4bb4d45368b1d1025043445ebdf163a736003e09b487e3812c86dcbea71402ea1feefea7d3cf6bbf6b90e634c1843ea8ceef2aaf3934a95bdc01fe9301ccfd91293a2b854dcc7d35c7e3df20a1eba6ed640a508d75f46ab10eba968b4b675bcc031c2c6e93626ce5f5646150f2500b29273b866edb4cf57b12ed122065d1203aa0c52bb45cf26d225109011d9934a0c91e0c1ba677d62ed9387ecf33ca56bd883fe59c93875209c232904dce3888358a78697691c9dbc9c28ead7e191a8da4b743155bd6e6f9f652952ef4c3f5b7e2d9c06d69639f69fef38d5618375246eb2540e1b3262328687e5d9148326326cfe0dfd93f1ec6c79cc30a513ad93c53caac32114f4ae7ca868afe777b5ff2ba27eeb36a711b2d31e6a8945b4d9e6faf478d20d4733ec296e5911a796ea76f523ab47398292239ff794dbf2e65a89e835b7734fbd79436cdb217694fd74af17fd218c88bab1fb18bf0597a8a198b7c4444973f52f5bb689d6c0b310dad58551abe11db8e19ba11068c069ebba838dedb7d17315dbdedce9e7b2d1ee9c563dabd0a07dc1ce40f299ac2a3b21ab3e593e0addc73abcf7ccebc5424c1b115146a7e5efd5e7d7fd5793f03c1034b8689923a7200e3beeb1165a184c369e01d2f926feeb203eecced0e281a4971548390d35483d2c8aefddb47427758c5862218266ab17f6db14e3eb99847048388b660b928983a497774f83b2df6eb7ba8e98bb78ca03cf4b18b19dfbb7c923d732fcb02cb7568278d06f518ba034d12d26a1c50abedae2c79795cfcd40a4e1f5845e06824a1b325c033b9e29a5055619d2dc64b3f59e3243fce3801e4ca917a257e43cf5ea2808fbb55515d9176b573e8a6b72d80c261f3890757c57c7674146ae351de213c91d9e1b0f4d31af1db494ed4fdf487d13cb10b3a5ede82d790c510b24317e2dbe1164cfdbfb42e16088d5356822c14f39c1f2d8e0c9a1dd15c3cdf13230d1e62d0eaef7d6036a54ab41f3f8e9bcf6eb13f89ced0516a179fed842a10984eef95f111ed0e416fa81e93634a76355c70d28de5587d1e9cb17b897313f5d3f1c22f910b9ac6d33c058c6213bd34786c9d17523d4bf293640768492f4228b2ce04a07545b4090423ccd0e7c7260878b1381f098576bfa0fa161bbc0be8e2624fec0e5e014cc44af04995de0ed346efa5d2c8ed9d8353c282e9de716b575dcc78865d53d09fa3e800cbc0c51b42ede90e98da470395e2c84b20969316c8418841a2747348c3ca33cce384d89f377b11f58b21811d80eb3227754a11bc15d0282f51232e9b2af939fb1263006b87404542e7636f33b693751b39ce8acca695e5ce0480c64865010e4a09055d38be3b0b8aa54b2850a673003c81e7f98918181d41dad9c8867bf1872aff0a4c358b8b9da76ba8b9db209537acce0cbdc0d152d371def49e4de4cb74f44307b31948671b4876985b4188fa920b7ce5e33c46b716ff02c21d12df5ec39b931b111e327f568ea5d49e4851557600c9d06ad38c1639505b11f37b04e4101b0680f8a55b1e1974aea6cee08d31bd79b8f4ebfeff5568351f1fb46d78bbad03c7a8b26935341a0afc1e9c71ef10f93bcccdca25a2ebd6445812c2b412c62da3f9713d14b94f58e848e05e88b4c6e5d7e43d094cbfc4fc3d3eeae68bc1b22e04f7b25207dee4228c14f1136d5dce70e54c2b9153bf8181191f69843a957d6936d1b7c891dd43c0115e19d09c8fd72ac6275d269b1f05896dd2c07adcbb89ea03c004734804f02041cc21992f94327166985be9e31f726cf9f03070e1834590d6f010c3a428054dcf47be347f71df1bcff61446dd4f8a1a3775bf14809af118de7bf88c3eb225a6e9888feb0e5729c6502364074cefbd75aa9a88e1a4ea7a5a4e6a6ef822d20e774e2f81075a9f42cc365cf75cc1b8506c7840ea07739800f97a89cb8b5954947c80c79ad4161ebc1d1c630c084e0e0b94fc56e870aed0e2114b41e8f478499af6e5891c46d0809d739d68b70ce49a74e05b3594ef72453a63ef8ec2fa6048fd57cdece41d19a80fafd9836efd9414faebe30b69724c4c65086b6ec98191d9d0342f03f1496fb468b5f78876e23285d54fe74e5ff2415ff424f67199310b9d9a2f97bfbe43a28d0562b04aa50bdb2c57578a40aaf13c218db1059c9300f38d3b1127623524d0139ae1b2b27bb42db2a669279171218aeb5d5fefb37a2c12c20a5d74b9adfcf7243c6524a52faed377504c8394c97301de472042a90a215ad431ef5100c4ba0289876e59688dccb86e9232602429273c4b0713412e7fa023816bb2e99095c777c106567942eba43f296d27036ef7e24c3474f75142723aeb8e6d0969d50e863e20f83e86dcd7dafd58f92aaae8a84d75612d3d60b02169e3035da518d2dc9c8b89a373f3483ae40007784708f76ed30add8b1d5d44fe04a164b7832a097f8c9988856b91da096e896fcb89046fda5bddb172e68eaf2e95aa5b60e8fb74f8f5ec9310411f1e8085cd79c2587872b05dabd00b2e9ce6abadfea55555dfdc57c2670ffcdacfc62698a3f6d2a32bd6c1c02b5a6a6fbe2d86bc0a6a649695f99ab2936bfc1f1a8ee0ae9b3081848983ea8003e81ecfa00334a33b0d399156f7cd0434c0278767eb1d8cf843d0415fa41e05bf93358c606b359ce6dffa0f637e7636d6efe17d457c2c754d7f7659c598d59609218e5385f3af1fcfedd56358e68358368d34a14679ed15f1f49131d25e0b0b4912b7a15352d1ee3d2c65b3a3c711e0554686d99a407c7962f795ff5c0c6077db807766a2551e1394381f5dcd290ed36d609599c4e62f516f79544bb7bab0c4aa0d51d7ca6b0f3762a4bfa403292f2349b658ecd9386907d70e3c3e854bedf91e7259073e80baba166a43c6103fdc036ab1e3888420c7adf222baf3cdadbe0d475477d68bcaa45bca4bcf4c3c9be818a82cb2397fdf690d483955d5c183ce7d2db27524a79e46d816550bac06a8e2d67d2086ba7b0ab16295ab6d040e171da2c7fd669e6fea8f2b37c6492e24047bc4d5d87b59b82e294f5d6eacb8dab703ba2524f083962c2af93d8624dd27ab41e6ffb9efbe55eafbc936c44dab0ae9a49b9c0aad6211348ca4a5e1e2690dc42c9212c6d5a5e3682205e5efd3e1854fa0c3ce348a4ef628bba17d6f5349f18e045bdaf05650986781c32e57acacdecd7011568b43a04de1712347d6503974fcc089336294d3d4e6c0b5f6d9f07fcc73e9aa420a3ec9e29b156c28f57268a08af1315fc12b118029498044c9bb9030bf5d8f33d06638b238fed6d2ddb515244f3a8dc11f9669a8ae4764a37af9d66f2f453f8f31c033da05e1ade5d5d33d9ff37f92fc2cbabe13f1b4a901d97ee8d088ee88337c6a29e62f2c05529139b7ce818e3857d9954ed2b9a7f44a67399a43040895ee3db1a576272c714f0a3f09e042632d7677422d04a9a718b3372a8887a235a03bc64ca37b38fa5de9e37cb9ff5c7fadae0d8b788517c68fcf13f55261e1f40fcb662092537f217526f9825785eb582f112d5f99a9da368c4e9c0c9222ddc08d0de30ec8aaf282486df92d41c66103598511d93d00a1a052ba059f0df846133b14dd4e0e040be142791c4213567be17bcbb7cc10765a1490cd11696e9aea42108bab0a2c8260a767152ef2ae60b84a88346c10c0fef4a42d636f5738706526d3a1f8b1be0d9956fb049139ac563697e8cd7234906b336f346ed24544805f2b07991169131062aaf887d5f0e939e901e72a23b2b65cf0af24d4dc3a61c07a9939d29ce9e48374071559bc46a9b527e7c0d15c36c04f64ce08e645a683fb0f3eadaf7e2de249d41a8a9716682f5e9c50f3bce9a249f330fdc56c44c71f19031497b3a1493256eb9086abc3a38740dbe53519280ab834e7839c519a54fc6e79dbf623ed5764b65e49c0ac1cf9e4225a2764bd293c706adfc8034a5ce18f8ae60f9e98caad845009166f0956956090166d40699634d4eaa51d824f2e38bfad2b2f73975149dbc5f6e2575b3da0919fbb33486daf96c84ded9e2fad77c89e2dfd7c5994b9969d04892093aa1fdc2550603e68c653b565786afbc3b395a5279e07c86e75c7bdaebe06b4c560fe7d8f4d104814439e09651ce3f923cf2e5959b2f28576a8a1fdb6f6351e2191d31eb0dba302baae031d9fc36904bda903a4a6b07b8c1d404746ebf3b49d4e4e9c0e5bcf6d21d7c2adef7dca5c72f4759d43726c750cc0e24763714c931e704ed6717224d04c904e8af175d23334801cd1a36004b05d538b6836375f2a90d540a124669b66b9f68cfa6aa49e999cea8402b6ba002fa559cf6795c551754e7476ba17448fd840164cf3be78c1554024ca6f7d8a4ec73bc9f14bc31c6d93944893d300fa48e3374442f494bff9a9d22fca6bd7d9710da09f98c4888377ba76ad05785b6a5690205ca2e7fdefd157e55bc85a8ab624d5e19e6fdf0ddd39afd5b610bc91c021ff84bbeca1ccd4f056fe312f05e1230fa6f91b8231d6f89885d27d3853aafe2c67e62354bae46ecd80f75ec5534615490c33669d96ae33e81d95093e26e1eb629d8368dfb008a0a07e84acf43ffdb28a5b7e4e1f4a6529bdec8d2233a60e6ba559a536b84c8df8b62c5a3b892b1edc724c6eb4e264b33ca1e183676a3a41130c92437439c2923c86c7e2f88552b4b5d7cbdf0bfec95a6851e6b7229be00747fce3204b35dc0f1441f872b45e69e7cea31c41f432828abb32c211a31196158d00dd0a01249bb7e579bdcfbbd69283c70b9654893bd5e0bcd4499e89c3d5dae9666d65ca8fc1ae59c723425ca431f4c552e945cb53b9775bfd9e38ed99aa60ed42c87f425a99b822ba0f555df0904e6ce8c584684d28b17916207194de1202f68c7a6de2f298691bd0ac7ae22fc70ef28a43ffcafe01bd6e5c260e4bff73fde9fb6b125cb1d30b3a2e35730027838238b22d2e9d048f59b86b7d656aac8a19fd425b78d436f56f0bf3142a8c2cc0a9bc75ca32d6618665704f2f4f195c544c132bf5cf4c30ea88f1e5a7854645621be33ce4b63353372582578265ef884638d9d0b93e87872fe970ebe2829982f0ca8126767152d4f31113ed18eb9763f006c9cb056abf7435c18d5db5a1d52a40ab84ebd3435cc5037aba38cac52d23521af8ebae8a36789ce9a91417278ab3f57ec5b41ed8df495b1f1188553364eac2f44613782539e714585d805895e245f9520e6ca59120dda1ba4c5dca5fe54cfe1f9e28843e4064b80d46f22d23fa22aadf51ff8158ae100ad3bb853acdb2d981a1e99973dfdedb61c42170b6e3fe72ab7b1754404173973dea61693ac948f2cc6bf93ef4f27c158095bb2a550b641ce9d54e2c314da89aad2a1983c460fa2fd011d956b52ec490db594398a74c45a9a20773ca942922792878478149b5217c643bc7fbee3478d68a36dd7d7cbf13f6dd4f4115cc3ba7bfcf5eebe3a75166c114b5a567484676af392d6e08e29bbe3052c190a1c9d0cd5ae1eedb9b947851b239cc6d7f3c08d16acd5a2e3a32fece18d03beb1d0c30d269d7e04267ac627b88373ac1a4d6c5d934f5c8586baa77b848ce787c3c48fcbed6f3dfec168b8223dd3b4e7a3fd881018003e10f39ad8e453a0ca430a55354916343dc0b39e2408a7f9dbddbd0677a1c5da7370ad6eb6a89d2a9301ad8e9c5fb69c49509eae1ed8ecc8712a9305c1508537706b43b965a905d8f372cd3bd742218019832766d8b3997d1dd44c84fd0cc3b436be3fdbc2e91895080688be3195e7fab59c71847dce64542ef129bd9b7492d6450c72cc5e5cc6a0b7c704e31002f9f4f73c34529f459206ef7584a0b7f69e3ce0a35a041c7449e8673e4cd03be06ff8dfb87390c8fa2f85e8f2b9ea84f71fa44e520d624a383a7ce16243affb8772ed4e7f9d2200a21f8ddef52054740bac52631315d4767c51c9e91256d2f2b3f26c77ab2986fdbf87817184e63cf3ddc27dc0ba03d95cfaf9e248319608f20d79d428a31f3bbdce42272c7f53ee5571aab423f5645ed53980b700287e318237173bcf3795ac1b48cbd1ccfd889c5b6796c62f6ba181446cf06418db40836f74602705ec0be89612b69e82c17411b007c754ec26d3f18b4ae877b013fba4651cf910b3d42fb1b6e15af18c83936fadbf782d056f404840632dcf32da931944cebf860724c42ea131c60799155454e171df4f76598165e5f7c38e7dc14165626e81a08cf0af0897eab9a901f320e2636c691ea7e8b46f0540ba9d9347cdf767e121b7af57d521f692c4f16e695696ddb03a014be5661c5175d8e554e67f10eaa899b1e504f92175b7403b99d99b59192c2af6bdb8aadbb94ae4d0a545a39a564c332104f0877efc2c2bc154abc65a82adc71fcfb2efc7acf27c9a21938dfefa9053eb56c05790a1ca3d7fec47eb7d13adf44e1d8ff281d5bef6cc4447232808a276f521e285702a8375bece1e77119520eaf1947e2d8c6aed6ac9009efcf3bb5b546a0cb78953b4c42e7deba4dee3af3181f44db186e0fce1521461a66c3dd994eee58ff721eb121216ffb9052189ef3429f0d89bba187915c5d9e54f2ff84a10b1dbff2d97b04daf27376fd8eee19989993d3170fea0ce545bf718452c0459c702cfb56c43c4682c0fdf1cc5742427b1e4994dc9377471d4ea7761e64c0a993bea94c673dc99e3e2c1b7dc015e4437c6840d5366f93de548a06714a40bca963e39422cadda2429bb2ed0e5b385aacf1e77a9628a9b85577affec5be864b65d990c735d87e00fdae49c229e21e5ba5c3bdeddbbac6969730713fc7d6a574fbf5a5cfbc7c90bf1a87d1572e59cc810081c7d5c7f59314d6dc46a755264c6081bb78198438616629d1d0b0c84d5d3f774550c88f51893561af0f2fab47f8a7dc2ad93905eebc4388d6d25f50879b22093b9c4a2dae896960c36a19cff2b1324ad557937975569012704458dd89341e894b5953b238c54235e1f05ac4b7b4b7274c78d123c7215a9eb2fc30fc03f9c385e4fd91fb4ff263768a3f5644835a5ffc16450082abbdd68c499c2c6e8339546cd0d6e3d38d46c1576a7d0b31d84709206483bd85ac3f35bf7dfbfd8a1298fea530d9820e83a4895c109ac682d01ee46bebd5ae6cca4c64c03a2718424db89ae3ecae61addfde797879eab5f6d0feefd372aedb037bda1d3081aa4c64d62bb1345c506806eaef5687ceb4d68c48a3fa67648a9f5a506ff9f7fe912d58d8378efb5f943a4ea8a0f1b9b9463f73ba1b9e1e6351c9e4ed9f4a78b510ae5054a71091195ae55cdd9908d9b19eb36d46e5958355af50540e0219cf71e328bd1c436fb235029d089b279516b7e6c1308b7e54888ff2e8543af74cf6aa98cca720fb4de57102337f1a422800f374b7e0f1ff4f6561202148d2ee16d545e0c3c283fdf695b7e075eda106d2a1d328999a54ace9c4fd859ece3cf1aa328925811a5213a6ff629a16902ba5625b3a3328068da3b4de3e5b95952331ed5362fc0685a0759b2592de270c8adaa9eeb8318c103befc9e1e924493904a1f5830535ccb1e8b10ca1ca81928c5b781ae4a64a084dec58b7d6ff40a34d564ef4c8d6a2da1a64f1ca3fd627c81fec68a1224547d783326df75ad0b18156a13b42c6130bb1c221ea0b46fc895406643a63bbb1a0361f7a29c932821666f1d218f58721f040caa176b6c249a26b5b55a5e7d68c33b510bc12c3bc515cb37917a7fcd7ae00e9bdc7e54a4e7c418d8c612e67cd079ff363c8e739a972e913b1e18ac5b4c192bfac39608a380557974094ff195e038370a152aeb28bce8af9609073e48f0f8af587765b67b8ee81f3de7b3e82f15270350c9be6d27177340d301e4aef69d5e5480ac4153b9ead23349cce22615679d8ed119b5017012684ddc8c992287a951cfaa717e9526c4f1ee53b7a71ca3e2b9a1fc70d0f5dbdc7298f0cc47ab2963d26606946161a2d71a1aa7a3d643938486329271d47a3fcc4fbf379d6f896d82c47d1be661876a73ef3384abe586297258a8ba34ceef16dfc8448cb15729c659d702f94271a4af3e454096aad50e9a421fa028c1995aec7413c00fb2437f5b30b19cb9309a03f80cb6e6453dec9eb8d56b8d6925c407ba75b3dfc0f5e832f1cd16e5ca2f9248a97e03a5aa9416d21b0de5b62a260eca898ded9a26a2dd022890d4b2cb24d84e5803b7ca4908bbf3f52bb2790ab22b41e2004d441211de61569805363faf70bddb8c4f1068fe0f5234c7cb079064f292e2de897592181a99455fd1f587fc44978c4940e186c66f3293b79d5852a058f433aa3ff7ce4fc31406682942db8aa223412ef92f9de80c4f8c964a9726fb0eb0e41f80c93879fa1b0523e579fda10003e2119ee004c9220e70f893ce36a0881a0174812b34c1709860bfaa673d9c31a5d05ca00d9e5f35f419b1b50a8793a1304b9762deb847b2ea2eeade5d08383a099a6a9883a866a917febe9b045fd7c49b491528f60ea6719b553955bcb139308b5805d81511dca9f32bc92c2acd6402397196ebab639994b988bfa9fe29e178d30e8d6a83453b3ac96615fd761b9b7d71bd369c8e2ab940da82e9421fff3bd9f07d74e67ecccb83da3802dc1d9ca8203edef427d44454864161829e3356fbace29a56d614e3d5747b8a6f51a300e8800fb8fa8db441b842d91dff8f1e7ad61d151456acece88aecc5fc62feafcbbe0f82405f8d628649d750a842b76d7dccd6408bf7a395b0e522a66f26acd60e16bcc5cd7d1ca49dd0c349b2d58f0e809f1b977bdd6c23493483c4e68005e42dd27369fad30bd1deeb78b29e5823315497269ea89c59b28ea1f5c3211358e8e6217b857c90ce90df70a57d6b4214cd56af7716ea7f8b1317e472ef21cfab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e857c9a0c3814894066f983257a7ff65b77a75d06d77f6b740bd70e1c016377384ccb09d1e8d60a207afdaa668896dded33a29a202c64dfc8fcaaaf651828f3b712042f0e21cbd5252684c4620207c1e4de3ad978b1765ff3119252ba3881bd56fc2d34a98e1433159c39be08d0c7a09d4475a4419909a25720c44867ef9c47260cbe81dd3d21e9128f66869df1952b446a2db778a1811071aaf2f14258c7dc8d1f8cc509b11d577f6b53593d066cefb7d59adf93d6a306fb9f30924c2f83a05f3a10b42a7cade2127b9eb5ea9ed8e8ee229c8b4e1cccaf260bb151c74db4cd28102428ee5f3783344ece25b40cf6535cd001b116beecf0e8979cbe25e46b4f40b2d7329cd0068f9056eeb11459640ae28e5683195568181d444a97742e7cbf7fa744ce460f6995e287a94241ddd3fd3cf57a49d6367eba9c5421349e29b5552318a4334881fd4a00ca410d1ed7a7af78e5bd6b7d1f1cde1c3109fa27b84534265c5b56ad2b824194652b0ec22d83fa9e3285090a256ce307922f96133f522475ce570b538a5cd085d17de51365f5358eb4b7258815124b386eb6dc833eb8b3b18755e134383bacee3d50a4deda89c1ff6972e40840a60956991e436d54bd189ea40cd343e14ef0e5d163f05b4a0c30939ffc88411089d400e00acb5226413a020959bec805f98e0ae45aa7d3b628147154f033ee394dba4386dae5ff7c8423c9b5688e56653449c101372e4f1fed5b0b7438c7d288ad524b89cbdc1f5799dcbdafee2cf8a8351b3ed58a3b686640fe366990d220cc2b4cdd46709ee8cf218dd17ba430bd95b8ff87674a5abbcb0037996ef75d8e6d0ee325db5776f45bc7e50a68c56d337f55f783780be8e784f3ae98a24589f1f850fdfc3f33ed2c32f0a65c58c54642aba53057e9b87574317abf24997af7d49aafe50bcbe90a1af885ce20ab973d475ce5de10cc8bd62352feab2edda6ba92b0acf034d133c4bd5e71abfdd8899c0a72600ba6647167d8f42c535689bf8533520fd3528e6b99f150fa2d49ee27c678df68686c3498242aebbd83ec02b1d75fe269d0afc762c4ffd051d501f706992626a2f30c991f2bd750dd672bb554cf9294af25e5aaa5c8428efde4f10c1cfda4f4746e449f8efbf9c93bd29dc713e668bfaa87846a61ac5a75f3174351e888b6cfcc70a661933091266b3f66dcf79d8fe1a26264e47126d52640dac622f5803a12de526de16af5add5684b6a72c435ccb026199928fad240cdbdd0cffb18226374ffdb80e1ddf7cdda9175ebb129fe87af36a7a3d494c4f81ed8ea3f9e478b303132db69f967fb2a28f1023edddbb0a8f5ca9103753990a8010148f6b11bf00a8dd47fdca7ce1c37676506a90c3444041a2af64ad3f3cdf5d57145f2bb9d30fef31d398d172b2bbf19765ff7e668c6b41b6cf1b24fdb1882d9fef5c8c9eda0413743bfdb094ca0ea2ab0ec8de500afc902847a878d25c6e2bbb1c7a43ccb9b4819307734d1689a23ef953d2d1b2065d632b5848ebc302efc4a96091c78afe8c15dca9421e6a85c3b8046003d9186d5197bbf19f4c83891459a466db1aa6762f8af7d4768f51d80a11575b86634a328df3692b1ced0d5edae8e59a530cbc264528cbb9d0f7cf02e5d6bc4e60055a4b439b97fade46ed52aa9d8cc424fefb31c8e7207cc6c55541410d08cb8d476149a5968a5f0a44e8262b5153525ee59ffed76b9a089acd25cd76f3699a38e026615ea462fd405396e6939f5666183a0045a940924642af279fb4716fbdade43f661de12e533351e3ce9d0278033508ff773ca223a41d549d2977c64ee1fa5e5e36d5d0737fcb2ec5ac49c015577ec7dd98d367aafaa536c7a28e34ad5dfd914dab21cc2def8c443205eca9b839ecb25940838c7de13290576e325cb06ba5e28cd9dd68611c713ca0ba26c8ea07d2f043c5ae51cdc6743be7237a495f90e7916f4721b322b2f81a1d2af2edd272d91392548c0b9043fdda6b0752eec551675902a995b2051cbe46b58809967efef9d140a93e19a5d8d3a08d55584c00d4ca6ea02baa5ec12610811e9ca779b0d51f85872f10f6ff10b86fba07b0ca2446d8f5d54ef6a0defcd890f3da75902889d8b3216d47a8be6f9a66ed658aac2eacdd02f7e6031791adbdbda1c242270674e1ad0bfacc291d0459725259b8245784e5c8d8276d3859617cd8ee0314e812542403aca1cadb3f4eba945bd197e7bb0e3c05ac19aadf96fd2460b7a78de68e0e04489d3cce5d15697bef9188fbd1012bec5c69335e6997af05399fd9facd5d5de35c50ab55bc8686de32c7a9af8d9f6c5b48135312693e9bb4f020f4d90883cc81802a78665de6dd041ffadfb6ec3e37366df91bd8154d961083ceff698f53fc9606c2f70006582915478e8ff4cdd03923e3572f6f810cb87a8be4fb6b40f95abbd7e9c593708ed01daa2b0c0bf735c3c4ae6cadaabbaf3da37a5453b36c627970d0a0b6b2f3d85db1c31a0de92546536e5b1a59cc16b769d55db79ccd291768a03ea71a5ab075bdf4f19085b7eb8ae51a2de349612b3638740882c47af87444a5b110fbf07b89bb0f07ab5216f6ed2524532b1f4a4b481714c73a5908538c90b88066a843a91d1afbfcd3622223d3dec6140bd337cbdbf47622de81c12e0fb1a71e777aebf81ea6062351e94f4abf5473dfcd023475c2bfa8bc62da08ab75da872ce35b2bae1d1541e6fa21fd2432060c765539117858c1b710c53eb0e54734bf30c97ec481f00f3081a5b4ee0c9fe62f7f8a69ebe5b23b0cb62acf36d41a5ef8ffd9ed9387ea33a18cd29a537ae7e9db5ac21ad0eb7f92c827973622c4e2d10bc1a74a6d42c954100436187164847ef5ecfcae5bf5569568da515b5427213e1db4d6e3f2c3734654f9b37e2ddda227ed5b47ca80954a0c799f71fedf37407244b2fb26470113940f62b8b5202bff1d30b53ff4ff4007a733194a4034ab1aeddeed30e71bf79081e4670ffa6cf6e0e48062920ab3ef8f44737f64dd1ab4b6daf75748e09f9f7636543478a7e9c00a3be3c9bd26d409dbe0feceea1bf82209dfe5c1025dc89a4a4c48c83dfec5ace8d6d35ae72f52dfada900ea24ceab0512580e9b0ed328630a86be1c46232fe774aafa49c6585dbde90a9bc87e9ecc1babc55b936d99bd1da98fe6da702f23fa87807f2a9f8038da0c62afb9e406d32abe1cc91bc812cd4f55ff3d40d1a2d1c12188106d70c129aed1d3a35f252ce91d28b173ffbbcd8c84ceb1a05979a3822b7ab0426e981e386a8c1dfe9aebb6c05b2cb5559c4e3b4ac59f31cbe8510b3ad4c89bc4243e11174ad3410d5ccbfac108c937aaac6320120417b1d065c0266173300db8228655d625aab1a308ba4b1b538df6b32aa40cae42156117a8729f571a6a69f922180fe73d913fbcc9a973a245112612af29affdd1da23c38c6a59adfdbb688e2a62a219da5ca224764c88681733eb4d74197849e23a561862e4c72a9391981c0af4407a2cb0cb8093692a1ef77b53fc11bcdf6e3fca5f6bd6da9875672dcabb23f4130b539d46e99a9bebd269b92710f9ca7904e38bfbf64691855f2225c6c2bcaee9f073d9dcbd9f5d0955b49859fa97e0041728deeca9b24b9be1f6b2646da7298c4e8e27743203b4a1635bf13b78664001b21827a77d5f3087de9712c95237243d3944971f945296e28aa7168c1188833b62f84971690b89553c02a3019be9e52f24ec64d7b6c5aec2007d192a901083a926175fe4250e1ed6f20c772ed25d2883f49e58f318db821f2af28e74a845cda069288d212ce08eff193f6b3b4538e8a6f64519cef4f5376061cbb8b0a230bf78895004d9e491c4c1449baef1246f22511da85a18ad92e78bfb8ded75feeb5eaa7a7580130515615f59e212f24c70682194a7588f6df4c966e35a1b16fe72d2de95be451b7b1e109ecc56b5c147b7c4d1da9ebd19d41a2437b839e294005174de8bcc2b2897416618e7dfbb1840c061f04b071e8594ea8fc7be533b57da8dbfe3f71ee8525312f3f5338b436ef73bda674678a87e0687ebd8773259a5bf6f0d747d6e99c9fd5f4b9996f035f554da4646bd3d8b0bf994cd1171b62ab7220bcedfdf339abffe94eaade6dd56689c894e326ddb536c7ad38465d8e49f671b5f2bf77b59b6e278d7da62d1fdee8c37002a68c03ec94b34d79c9236091e6aed974eb9acd70924192892294b2ecfa58fc6891cc4eda9db91ef4fbbe675cf967f13f4bad5b24d580c49677698853e2dd1c5b0729cce4915fb378e3803fec9610f634178c4b0ca88608dd2b0cc430cfa0f28f18fd8ac3fdfc140ac79e08b4da0b5844c0cffa666d95e71f9507b53ce820b3e6d99fe256cc1d298adebc62f6eed67579adcabd744f2dee3bd0ea3b6d85ea9ad4e14bf979de95bc48e05a8d57966f9d18c46229ddc968b58a75ec819135fa6840fd9cc318942e3e0f6941fa5c2e609e3862f37a452a1ae1501531e8f9cff00b0e2f86b8d9ff457dfacd55c3d2e68bbec67ed9c33bc23dd8b0f828594d5ef114aec3640f6894cd6d8d0719f40c5e1cab20f8e78e7ae4b1d8e6e2e847138f0ceeddf8dc4547b8054f5b012814e41a34f61064e07a0bbc0d8dc819779dc83fd9af19fbc9e9106cc6f7030e24b2b9c84d7c2e02256d9950dab66304df220e58f715e3911266841c1c8a556a0880e4f4d26918fc0a6528f4b38c9cd5c652a50d684191a3489d602b50960a9319b7a0f5f00d462b302061b540e5a821762d6fa0c5d4c8b96d32df97597ee75472082dc4136792f9b75415dabbb478ec5eb3fb8307522f394d7ec944688614d5c156e8a604d476313256e3c9eb57469d75c775de6f585cad6f26e21bd6b4191365394ea93338cf6e1ffd01ec983f0fb0df651f8cddf74914bb259d803cb6aa01f99cd4b134cc434e3716d6e291f6a0334d523317c300c55306d9a63ce2640b2064eeb21b840788a0e194b1b0390b8018e73cf6e1dc4948f8cf7eef0eb97a5e6f0ad25f4457e5d1ef542c445b495318134fa85d23b3053bfb1796e6f038cc5190838e7e347fd8e698c429bbbdbd496000c8ba68b2bc07b7ef8957d74a85f0c8f73fa87525af5d5a66259207922d6c73550f340dedd1232a2c7f4bd93ae0f9c2f1e918e62bd63e2626f0d1bd0677785394f1f4eb2cddf763423f703c0941b3e58373e955b0130327834a83c8a29e0e106eb84f838460b374007cb7a5067357214668d82a8e808ec35325c9d4d693e504ee012c5275ad4b10b135a701cbd87c14466d2ea21ea22ee5b0473b5d7c0cd9311d4a90548162e8cf160904476871f7fb749e9624e9b3dfd1fcde823b4fec3e910ab2e8a41b26697954d0084b750fe7c31f804599bd0cf68a1ec480ca8afbffcc08d1a9ddd6123e74e2aa56bc23c46d617717bd5e7f9922abfae2c45c354729a373934f5104602458dbb38b3b6e61f58ef5b156b7babab74984ffa38ac1ef3be005bff500b78b529c1e164fc50637836ff8648fea127b74f7c48a6074e2e65b3648dd8671574a74cee253d8e2b94866f5410f124a55589232bc4631eba44254d2d102287f01c02b0ca793291c976b509b7c3528157fed2f648b803a890b084e936eca78faf1e361ba76697181d2eba5d6810f602273ef9595e46d51d3065962408a403480f2c9cad4e7d61fb509c1e4a695274751274969a225fac81cac3358017e4dcb20f93afd0f9ce65d6041376f2ff5d96fd9d084bd72f423b95716b804f9521234dfbc58ad1a2fad9a16f84bcf16df0bb88aeecc854350ec5003df399fabf518620e220f71c717ff3a03a7218b8650a974dc3ad06b15ba58ce34c6204d3e61f4388d6da1f7360a5c9a4255e5ecbc9a5ef023e05a74579ba5db58fc2e366a833d0a47e658dc78ec89044ea0bc575d400d77d7e29566834fa2d73b998c0794682d63dffbfff795bea41a7d18665840b1c357e66ff1c89d80aee8aa3268d6f4aa601d60acd560624e98ed47d0b440cc19f354ce868cdef6be351b6ee652a7a20e3953d0eae216d4d01c2c26ba7b6a464bf908db3449907b6e364a72115dea57061e136a6ec804cf21c5d3cd79aa4439fd2b352f589dea9b2323c1e3179dfc6abf348161b78c1bf5ecd0caa8f452c70caca9a1cdfdd6a6ae5e746ec763054931f16ede5c588aab2b44d755febdaf299f5ee4cca0346a85b67433458ae0082f26aac3b544f08e5718a5d122c479a9314252b411ccf1d9b8fbc1885167a447825ab7c35573422c3efa23dec62f5b630ac322ffe658e0ee524203540e297ae96ed03e828d9a433bb7f5a5e93aa83c6f50a6c271c78f9283d6677e8b1060757a1140298ff3905df70edb59ad1083f505681df30dc9dc9963d8ab8aa601f3fa1e6bfc03b799666bf39ebc42d44917a5fb2aaa489beafd63901f72003d41fa08cde68b1c4698499fa9bf9c803cebb27ae748615851519f42dc56acb62f1b965956580dda17c7ae7904dbe74157f68a096da16f4d618d0527575bb9d7004d73c43c46ce47993eef064fb1fc5788e1903ef563f088d81e08ab0597931efc3720834ec96ba0df4a0622aa20c3a80ae48d90d60cfaad5e0bf9c1cfa04bfd788dbcb353cd1f0eca9fa6ff65760b3358fbb445ee7defef1fa7c9834a5e79f2f81c23a86e2fbac5847d8348f7dd10f0fe39812834d34b54446e1bca44fbaf43680063ee44bc8b95a5d5d22a01f6923ca08bbc5c1049ffb18a9e346074f579a4620a65a9e2bb0aac3c6ea48f67a07a48b13f9b42e3de367f4bc937620e6133edeeb9512e74d79dc8987b6b8a442d395c4ec6b267c55b5ecd672bb1bf5ba8cd74a400998f745e1897a3f29de0c1f10e6ad2e97269f72945abb259e6617f3b6245f6c50739d8488496899200f16486333cf4ccc49975e2c191018c10aa5982ea74f63085b8537072933ec173b91b4370bed151778c6435a272a941b678f8b490bcad8b0d59a56e9f3d4f39ee6396e27cf4143d24fbd24c91fab7e03c7415c564fee31355391527f1810c1b48616518155fe6fb0f8fb66ab7f5b012093c19377a4247ee3590c6b062134335eb9059afc2ae447d4a49e6f5ec7d36714c1b89989476f6a19b852f03093065da7875ca4556bdd279a2b56f4b0f7427c2f7958ce9cab9276dfb980b45f22ede4e08eee447f5e00847400e66f267967692233e424c27b0eee6ddb59d4f7d17d5aba64f675e40ab45ca0145bb2832bfa65fd48590da1730bc5387d90ca841e6ec85686d2125318a19d4fdaa05a87fae6ffab0848f749aeda6a1b30aa5d5d9ec9431233dd97859675ca38dbc6f343c6ced12fdf6994089b4a63dcbeec441a7224c1ecd7e3cc77acb320a09729a6ec57333daad6657512797d9e03c73e1a101352d8b00ee191013b6b6acf00e90c887dd54bea4551de7be16a8224c1758e79ca01692110137ee5cfeccdf8018020571569d1102cf0e5616120ec9f956fa89166481ef4a4e14efe526a137328e3bd6c8cadda18b158b00039539c1517d6f4085559d0b29973215c9b135bdcb9cefbf41b26c58676b1b4d74128f8d879d3f48b573b035a8d81c381eb699895a7785c2d933e62e74d3b04746cfc43687020305553475aafa44461c8599d5f8386c2e3a4c60e16509ad75f77165561663685f0ea82198f1e8ba03a380553223744b88dc2ed869285943e7e3512a0d43560b3cceafa37ad26cc7b44a951545e56a87d17e78b896c6d063c64718ffa71f347a5914c9e9341ea82bb42bf7b6f7b8d0454bc17bc5629addb82138cb89a4348bccaa42db6393640ef65bc83b818edfb9ab92d8e39a2ace4db44dbc0889467ad645d0099f5a3b9468d342bade191cdf2c4446550ffae593e31164ad03179a8ebf0fdba78414a9e01b130db5fbf78dc5d1c7fd48c5d49dcc7ccca4aaff4da4a3ce3d7a85b30d35977658415e48a4c1051ed6ba1dd4c61cbc8d350027d3a58a8fecf101c8c7bac670bae43a90a81c1e9948666e6eebe43c3acd277c96185da9dff13943790313694d4949c25ec0c75ced65f8b608b5db0b345813e4f559f180893f94a4ba32f0abd31896f4dc360e87f8d8d160a6a5924ed3ffe5f067be010b2e09d6c9299728c6ff26328ca5d177dee0bb93202abb3103bfbc59c58039b5a746c8f60518abc04e30adaf397cfecafebd326ccd6fd4a3bc5ad77449f93fef80eafdf284e133eff1cd2dfd8d851f1f2a020cc25bdb6f4c2fae77f29b266c502d884c07e99db0258014616445fc2fe52f68742fe69c2dcf58ba86a7f01a8d34657dcfac1cfa0be9a5097cfa612ce0273c6897e835dbb69aff40094a441c3cbc670825e61654d7a8f88a908ddf593ef9a47c122f82c35821ae22e32ff358a3fb5ee42d2656580c8e1fb9ba0737d9743df32a29e3293988316f6ed669c4b3af0acba3cbd3b4b5898beac248e081592875d8a73283e6111cff1d5a736100140c06159fd6392158d3f8a2613a2bae9fa7286d296af1ca7a5737ecae7d2ff9d0869284b6ef5cad17e2ac2dedd9ae6017ea7c7f2e3a759c2213cfe6fc913ce268ad229d6ce4cb8a1921cacd634f6fe64e698c54077302487c62202b845a7446618d49a86378daa165ee959b20f2b42c85f142f76dc5319f03f9bd2a16ebc45441ed8764b8844f83a2cfb7c53b7e490f4b5df234c4cd78ab42ef0dfd04f84ad14541c4ea371dc8fd72bc610d97b9e8e241d9765c08d8d6a93e66d851fc095cd9ce60c348770124b613117c1dc904248e6d424d96fe976f8e8ea34c0eb25d19b8060bca5dcd03e5ee23c90fd52d0853785df2e7d27b4ff6fe00847c8498eb423ab984546b5c06f71365ae8499a0dcbdb084e19ec4288d77f47037731646833be898abdf42b36b1dd4799194e2c21d7a00f8d4d4ea1bf00d697b3985580b15b437c0e50546bdfc37755f9df24cef3ddb49b9f9fe5772dca7e45056c9174662639798a76c576ea7085d5b1736f6482275d5fa051ab012af47afee737ddb517a6d0c9291fc2f1982cffc4dc08e0e30de7003cf0712778f690082f712a9cc39f60eb3ea39323d72708b16b54337a0382d1c93f48fa00f56408a171370e348590d44cc3c5f3cce6b623260db02124eb64ed1cf67bf764d84357af9656c6d630cc4c4a476c0bb8a2210e725b4db640c9e3b432d4e07ee454d64ca0503ccf77f34e6df4f15218739a2a3d23debd527816d961fda688e8dc3ec9be61da9b45f4d2cee0a048636ad58a150346a8dd1212c254993605f2db01639959d0341d689900cfed2633ce34d0f02140378c8fd28bb05d2f13dc50dd867bdbc2dddce223fe37b82dbf17ab5d6326bb1d4343700c29d15443379b5d71dc2983227190c7551c041efdcf9692fcaccb3cae5d2fbfcbb320c0f68e8b690eb3e651f87a2118ece957bf7772ec16e339ee50a16430116e2be23b29441ec7fb90b73ff2bf6be8a39e1c74fb3e171aefb1285fdcbee2ece40abf88bf9406240e123a9556e256c809de0ecbd4ab6454c85298155c7d7096198d4887ca33e4367f3e56db1d5d11e9668d9671ee0bd5a49523f6b45d8b0a0242963ad2a4d5a4fee910485bc7e7fc9ca442cca8282b3a96172add24f5533477f1aa3de05213be772eeea9a13d67db82d02f74fcce501ea40c025f0e4da8f368c6c2eb84a46162ed52c401006336f577fde4feaf599dae24cd07982d9f6e6f982a762677a3c25ef81ffc0ed731dfc3e1f378bb25bbc97eb1357056b295666cf62e78c1591af181b859baf6636466a0714f5b13267def4a314d7f545fba1479e339e3040799ec1a0008b242cbafb456100cb95e7cd64586b4937ebf764a768e5cff3ece257211bc8d9ad0c4b1353f252edcf622309869ea47fc573d2716e8cd1381893b66f9346036dfad9a751590707979bac5c01690a20e24341915616ffac2abba2f92f4a1224cddaae7267fd14e763c2579ee95dfa386a2eab18998689c7052ff5136df4dde5d5451d6079ff003dee4ff1431e0c241907708b25e3592de9d60c25c260e69906edd85c84f694fb40e11939e7c2f964f327805f1a80947b2789675e0259f196642ac291b315fbdf06e3ae5fa0332956237f042b7d99d74e969885470fc7ffae3e9e0792e93e3a43a607dab4cdd379cc30b4f513be242b8d9ab3a2be40b344ed05e33afd6046b62d471daa7867179b5556053c937f07da83dc66d83ceb5f70ac19f0651c904e9786ff08c33e5451a8c902c372336a1a7c5667b5718283163057a429b87d1e90228912042cb7e6f9e39713df8009931ca7885f31f0ba2817f985da024406510258e93d3a9fbc4f483ad869501a4c8e0b6d0f2cacdb516d922613f3a92bc77f8d637d98dca2668066ce0dd74b385f742c1ca46bcd20751d4e643ec43aa03a6f07c2caab66432d02fefa66c421a069c36df804e36bba9f1f8ee9923021271b9d2b003a525de3df8d0411204c305f9fa828d2774bd7871b7bd275a81254234352dd57076fe7e4754aac5fa238a29f1de804223aa68861e81eb8bc833e43d8f569fbbd45f0c597708900e7507e09938a4d50d35a447f972dac26437174495553e6b67e8a902579877e624ebd48023c60dd35f0fee6e2c1311bc4b711dd3b66dc12485866b561bf4864ae8f7eb6d341b87a95edc400e7545f7273c59742abc95defae6ca7cd85f962d51a7a8fb79074c34c9f6e8c5a6f78c08a39df85c10945b750c3c400b1c706eb3ef8c5a1705e58d0579333d6cd9c7e6bd5582abfeedc0da64bcd1e011c2263c2dd7e54664f5758fc5089d1e223b8a9a72502c1b083a28f1d611f88155fe62c6cf6a5be88bce146a55951397deea389f74f9e47a33ed32ce1ae36eb43a299fd1e7ca055de2a544d86a4154ef20638d72ab2f585ec61f6c0881908d986a2b4ffb44efa97f972463e65e7637cb152a576b8d55eb36f3fcb7cb557cc4b9e33effb16ecd50145ac09f160e1405034b3fbbd2cd64e87a27c0d0faf90072139b937bf6eb71f36983f28f3e141482f09110f33ec7ce7806b95a9140ade857a7e903b6061ceb62b0283a33edb665290a0064f60c00507b7510bcba569bbf5a72f2b85091a93ef20accefaec31a48eaadb81635fbb1e5f69d63f2ce9d9f29f4897281e8380eaa2f181334fb8cefa3d4706f883780ec10d0dc93efd12683fff9c775a94432c77fd8b904e48b0652df804153137171f03872f5ac53e56663c690a5067264b58a6bd1d96e7956d5485b0951684844bbb4f62932fa12e1fac5b969dd6d12cdcf4b1f039017e5dfcf800901f89c7a02dba48244cbb966a113038df3a883d06248066d3331d440d18146d5d21ddfc0c6eb29e217de9ed2abb293a261d6c87704ae67c58b10398ea036e2b7cc545a7228bc1523e30c4d8d15b3690e6dadfbf31654861de0edb9f1309a6ceeac174ea2c3ab6e83b6aee9c5379f14f890c1b2a96547d956ea8887b06add8bb7da505c216e8acf860191bbafd2aec4f22aaabbc63134d69aa917213a8f4e96da69822af25e8bee2fba474bf6749a20db8a78207a86a6847239a919b312083acd84d60e7f88a69eb85f9a0bcca0270ead6fc2a70cbce494c864c06435907fa00a20f141e40e7da538ef8385546801a0164f65ade6c04758020a0bdffba7b053c56b4ba76b0cfa5afdf9a934d7c3bf279f0133c3450e2498760086f3f190816301431878013ad5863789a1a8fdcf79f38a242c976ef02f6877b35ae9a6df6f8abd3a11c8f91eefc2165053efdc09b024a37d9e47d2d9062e4d2af50dbd7d8f1b1224441face5efe4271d7354683ec16b5cbe8ec89e7c728c13ff85bf1605ca7977bc16f4c9de64bc86ce6ace69b0c19cc4458766e903cc15384953a100fd9524156b576782dd6a2463fd33fe48dfe4bdbf628c71e01d6bc6cc35ceea2b900cb273878f48e6dddcc0404915801440adaec2bf96dedabeb17608e500773f20fc3c1aa2a5ad2f1ca9cdbcf37a633712cc0452b107ed63f6a4cf10d671111684c958126b8dbabcbf30cf9be81ef530fae34d37d67e87ac65d04b37cb0de755386e4085c7fb85e23cec0168fcf9c9d75e61428fd94560a2a1a1393fbb95a527cb72b3edce0fa2049a1955321fcb6a0d5b0ad583a0dc96412b3bf014254826128b415ab39c5c03ea6f2f3f749ba623424b9f1e0f7ea1e7df71e160f2ee391796e973de070289ba262340b5d463fd59625f2f125691fa3322e69e28f58da7c2a8479cd720f0506bcadc600ea2de3405a4457536e4a35beb4078161f75f76134f67ea08550845627bf3d7c0ad30ed7061d5eb9590b1fb548fd3d8fde906707b11f3999b5819ab540b4f9bba07cb57763cd433c9cbc1fea66e05da12aa41064e7693d4874da98b75677652007900cd1931b5450e6e4f143f9ecab8832df0943cf01ce204012c3add3c045207b5e4e7eeea5f83bf3da9d0c6f7e287acea1c58a4b22d74ed10cd34a5118d0300b7c91cd08bbfe56ac9659d18a383eb8d2aaf3a070cec5fd54cb6290c9437875265e5b673797f4cdb6e45c791fe0247b41e098e33105510aad74414d67ae92cd458c5267f84c441dd2c3de826cd4f9333aa042cc76b1c8307e48859e4e77d0b0ea78e49f5b18acc4177119300efb7ad3501c084bcab1c45b377eb36d167a6ac9df3ac1861f6a29356e841309319e7b51c9d086f6eb6568a726cee8a7523991eaf9d5a4cef2b691c318394d64f4b2f55e13588a599ed16b09bbec2fc888d442697d26d62571f1a991b4a12f347748930f3592d537c39daa45c7b2e4fa32c52372f9d635c6599a1844f9053edd9108774e64972b0bdc8fe4ac4ff35409d8875e57af5cec80ae7c537b64034e2720d401fbeba4ec726874913c3fb0638404d5b55b008ab40ec0d4a41189f57dc0e879892f58addb700dc6bd9c296e7a71f502a2804bbf8a704b4f5e866b5978d6f941685c3548ba5e6a8425febd767c379a570c5f918b07890f75c87bf9ae4d6b0f565456f275b308d10be07d7b4f4b262245ee108347fa569d3a57ad1490a895f3b7f7e7fc701e3ddbeb0fd30e888d8114f8bbb5f49edfb1a3dca7ac1daf79258bcc050fa4a53a197da2a8768d8e6939baabb02d0035814d267e49b8241cb93be5e466a604e73f5b4c68c16722b7d50dd0a5225491f475b9a0d1f964381dbc5777a3ed6df9a576256014be88813ef6a2d4648ca8f12213b353220333fd4cf8c44b2e9e85668aa857443adf52c12a92f276b4b77e2bcd8582412c1b81780f82818bca0222be1ed7f7fa0d82dff801d2107a07220a24a88fe0331e5638f9679e8efb9deabeb464e5b166132487f0c220d40b8418876b5c7d9032d3597374cdff790d4022e8f4eea932cf6200cb8fc98a156047f00e3c0f97141261f48c44efe81ea3fd7dc7bc95265a3b577d237f4827433d42cd30c7dca3d0d4bb6038d4a3bccd9862d895da43dd8602e207d0de3bd093c2a0f49a3185f5dd567c55e15c11d07306af0d35d5cf8614cd1f2e0200d2f76f2944831e0c12973faa72fabb0445bbafd65c7ae516ab8cd67ade522248d610522a08d515c72596f8e69a5bd0f6930545a9846c575da55119b351259f76c6b495d164de510d35322d0a420751bde73a2d5e210fac0461ee42141bc9d69a8169ad0a5c6a68082c291ffd60e6b10d21814d299b73a007821b36ea1bf599d595735421fce0ceb7fcae3238943e3bb1b061862eb4b8d3a523d171093fbb250df4b92be54eaf46979f8338413d887d011c1e81fe5b71dca98a85a8a63576712338e5d075ddd3da52d2f28ba29b192ea479211c097161844dcd0182ea79afd6553437ebd9249d16e31ae2aeed73c983cafa3cab835cc9829343e5ccefa4f764e4b1848ee16fbd42450a100b8b1e965f1f92f41ba48beb2bb6010ba0b844082385783f608b22cec0699df6e58e3b8e9fbce6b40933d257afbd1651cd74f87e3fac33dfc12461ba86cbbca58bb12d9d4750bfd4eea87d63d7f3524a5d3b08435b5e91cfd29016e5b5a33ba4393065ca0e0b71f12a516e876d4e980218b5736bb128af249c17734931952429fcaadd3b27f4aa183b4d7d3ededb3e30ab525e8f3bd8d77d945ad3090c21b4b582c80b6765e1b59a76865a2d50eb422a556198a60870a96d42c0195cfadf9169cce3895602f881e040d0f31ff564a95a3ea672f30aafb5459f8297d6851aa6a8b651275565d9faa451332d04af50713c043562bc22550a849ca0a0604cf2e1659a41e711589753efd6fbefb4b5ab83db61da186595ae077aa38318a867fa6543fea9fb5e6a545532f27d676958cc1fae6ef6fa489ed17c66d3a6c636d292bbb5adf637fdfb092622f4d0a9e1c0a610093b1b6e1ca5ac376b0d0c8a051726fe75da248772b3252484879c07572a1632175966d26c786445fcc4c7172090f9ec1162dc30aa61d652612f65828c0a6745513b2eef9234613b4bcffc4c4c688301bd7f9d3c6c5c1a3451ac976774ab9b339c4c6da38428080d1bc8b9e6c4f1620d3a2c2c95737890b266797769e94817e36205743ee2f9aa22b1ec7f26869bdfdde5e13c2a5cb9dcff8f0e1727b9ef684b72f36aad73d403f7f2ce47d4a06d7a4e5be2f362c2b0ed8bc7c2c044de7a09fb231956c44e320d91fd5926ef8e2090a0d51f3108c1d3afb28b911a562c0f65cd275a3886dba5230464543139eb0455734fa91d8ac107369c1232b13db680c3e54e7023b8c398ba775ef546cd7b0d9155fedb2b4bb1156ecb7ac8a1330bab1a48e80fb06a9122a302f2f3593ac3951e4408c7d1404360a031baa0380617ba1dd6dd64518cc547e6b34a01354124594822816242fe2b044d4b6326a54de25b4b38295c94b6a982dd2871739f870c045b6435ce0fc8d19cbaadc461be83bf7dc97d0fc1b2e8212d7935e929e5cbacef77352adb914261fb8b18e784378cf038d705289784b61f1606af01abe78e0b008fa42109bc257801d1bd8bef8c60fb884337a48e5b4702d67ef12799e53799d6d4825eb8cacb2041eaf852a5a64dd6bba8e4dc42de9a7813fa52ae65ce67f45ca5437740445e52d1aecce09f77993ee847323cecaa1ae4a6f35c282bd96fad7f18717a8b4ad66a7681f2594c4ef5594b3b313688e8b2df85f043e8e6e1997de8de87ad38299caacd227ba7d62c8848ff32a031de501eff268983e8db798b7db7e1f71b0d1e7dbc039fc5cf7074091cae7a40c1a9df1222403309090c32abbcca5a2b8882650def8576aa6c395e32c01a7c47edf006b2ddc320baa95b79ceebdcd5dd44b43c6540a8bd24f2082410d8bb2a268967c4ab6e8ef79f54cd1062a045a5362d3058d5ce77a2848d994712547d52c2fcde6996ce3e64e824eb4eb9c046c9ad34a445f8ea93552506eec292b1c68b1386c818c440fec127e0136df938b2b1375d1d651e9f010f33bc191230d7638e1f4d0ae62e38714d9c87d2f7cdb46b9c16b73f2679666819ef9db630a55ea59c956b4190c1f38608722a2832cfa2678c212cf69588e90a81adc1daef840289d8a1e735c0e24cdd7f2d79d686109f9366296410fb69fa3d25d25827553789690e62e87df212e037ee2bac8f8f5a7a4ff75d3c785e3d6b8d9de1bcfb22c8f6b5745c055891af5123f081581c38e07a204cf0cb28a220a96d93051fc7c00c8d19b9a186fc2fb274fc5a6cba73b61327de880937bc88769e91507ea78f04d535f742013457ddbaa6f437c5bcebff66242ff65c66eca81ffd61b3885f3eb5519bc36146d1d0513e29540431329afe04f05815d6b183f42ca533566f41f555007224f6a3c84ebf949e34e5e8934c5c1a591ca3eafd1a7045898c404a95b93eeb374466a1278c446257f6f27280d4f937919f9cb5e51945d675d5f22a26ee7f0a985f40c5686fe7605c7b5f60a7baf958a7a0b46bf484518b9e49d56bc98ef8965c5433bd7c64f264f73b83bbbfefd50d0ccc1086a2cb17e8a8e9df38dee64cef310190bf81acd319c68655daf6bae480b8e9f2c24d3a3b1e624702f15ac1e8c481ee3a9ba260980ebcd068f665a798696c534a9b1450c78db323a63713db936bb75db79b4fff52c9382e23d321598e464e3ad85c7596448ea65db51f681db7a28344813337e5f2ef0c2c56429248b33f3f24faa24904fbaf0263e8bdbb0e4940af89ff8f5be772b4c191a654a935f1fdbb58468fe50eff4012ac9b2a530d57f3bdf31f295ff7c32c83e0e20fee012834d4652f2aff391d9d7499c2c86f64ec0407bc4f150853331bb2bcd1741daadb7b1ad68eeadad27bd77ee92bf017f7666244caf9a8a9d343fd6d263bac11d8ecf82e43beeb77628b1b62e6646913094ad63e894295d38e49e1e6ee0d450a2a447b1adb86e7d9c69a764e1cfb8f39f9d6a99fa89a162aedeeedf8a8486145c909c2108aaf1bbd5b448f91c0bb2553070da5e4e1b38661b76aa8768145b7331a5b821425b4cface3f953efddf3e7b1e192e58fcb5ad0933efba01eb42d9e1593e18e9cc602a96b59601bafa5770dc8e30a798a8c8dc2ef13f7a8b901c59d63ec08289f38afc15476ba455024c362936d325d1043243c90e9f61b691aeb6dcd05f0eb685d7171ae98f953599493d651c3eec3b0c8df90e59d22e9a8faf5b7ebc9222d367cfe0a3225fad0bc5a9ae977b19b18a22aa8c684cae4d62e88a6624218c9b6933ce125e2c03d036df9c4a67439be51c78e9b940d0d21f5f054777e01d32977ee6348ab9e56b141336db7ebb13e6a39f75e29764ff230ea17457696be14e26568e8abc32f4c65a76c9cc8deb2feefc07a57595932e5b48f3678d46b1d27e49f8cf29deb43d7bb289350a51ca3bbd3fad07f15739e0fa951a29bb2668e1022d7fbf742af0e25e4e1fca9262d85c365e75947114ace00495f5e504e730de3fd26b60a1650c2300e59df86e6f5fe6f2ff0a0c2e62f8a601d7122ea4abaa6fc437a2974174c5204c6bdb0e40cc6b59dfd33bd020d9c2dd660eda57dfc1270120b32e37def64f69990d733ed51da52dc45b72f03ac6db2ec16f2d10b84de87e22b8319a63eeff8ddd1864fe665b6fe88c6ced319bb115b91ce0e0871be15fce8853900437445ee4913bba0c9c3d6af08e6313f3deb9cb916e93448bf4030149985e1fe8fe8afc3a873af8e1f0ce5f3c3c52232b580ad6e4f110d70639fb62ca7354511e985cab7270ca7d3aab79131f11e745522b28f643d1d2d41480ddc50b8d0c23ff02da3e35e4abd2b59cc6b5bcedd7af149029029b9d12eb4be488722a9e43c0aad1e4678ddc0ed16fa7253756ac9f5c0d2c94a532839f04aa5d600eb466743c6ead15ca60ab77e79f15579eabc24920dfdab5ae6363519fa8d305b52c1dc6e66b2402dfb6ec1cd54967f1d5cf1e7ecef81e876277d78767f87bcc4641b02eea1e015454cda4f124e65eacad4b2a817bcc88549edce913702c43629c60e0ccffb47d22f17bd202d909931a9bf0ebe5a6619a2ecbdf061fa0bf1b492306371005ee620108dbe6859570a745db54c00f1e4fcfbc6d0d071980bcab93293b4e63a50002881a13bc9548f125bda9c10aa241e2883907b908db5830e0a30a0418db9a58b4f31086f1af91193c9285ae18ef1d93441132a4ad88cf490ac278fe8263f170d507d990f933712cb3e90112e6f1ea2c40575a8fa380d2f3e68290cad5fbbba0ecf8284fa238a52072108e3368c0632f8c90816b41dc912a9584cb3f8148342bda3905638d6aa65f35935c686ddd3d32ba097807adf740a5682db9db68d90127941d4f2dcf2ee5acdd8ca14c096be611432b13e3091fe7fc525e230bdb66f4ba4d79d02386ea716d3b01eba5b734533a171f043a20a479a09f7932bf0fa3106555cbb2224f37c409c0f41f014c5f122c516bf092f331c8bf3180918315deb7dc433fa0d4f388d7a4209fa430783cc9d80373ab88bfd72ec0bce29b40b11481ed84f3e77fe0444e7788c43a6be68b3b58c9a6db6221a6cf41b25d1cb05756294f1cc611949529bb6e362185c2ca58ee45653a1a0d021f211574760419588cdef8fd8ec71adff12b5e2a198f7796664e2e2ec5119356e21fb6ded852f6d8ab8142ee8f0e8cc44013910d300c838018c9430db77e41712982e9caf168bfdea718fa900283448395de5791b237683df10caf0b453cf4ed314ff752bcbe40e331290dac6db22b6bae99ac29472a5784256942324b0a0626f4fbc6a155332ca1b7894e00f3f7ea5cfe38b4ca0cb2d5e3f69b025c40137e7c0e40d11b69a99c2fd957a86272f513fd96e7965ff90f062417c21962a725548c34aa8a204a6a9409586135ff5218420dc6e1389fcdae1cfe072750fd4478a839461458267c98bac8dafe79ff5a65d1480f89f3ac8131311958ae4e2c9dc1e7ec326555f6cb16d53c850699977b228d2b3428a2753a4e1e1f4919c1f4a5003d427210504173ccf9d9a0cbe9feaee1c9a34968c41a8af9ee28681f53c38c70b918f44aff5ba498aa4288fc6a2c73ffb16ef0c091747f9f0b3732666f5d9d97576e3b77c6e7a3007e53f7bde5668c57adf4df64cae9e5dfc6596384533792b2a45a1639134ca932dcb40ad27d8f28900256ec06b51d814dedd481e12d7a2aff6f643fa2e87e76a8d5b5f4e4c081a1800ac7154b7d2bf5966392d1d8cd2e1a108c453cb9c2c4d8f589e9134eb8669fada7bf6f86c9f7d65795e2b9079955648d0695582513464c3e6539f5036bc592c114341a7d9a5b5b7d3276ecf060826ec78d7d035d1c7c706c25786c3783570a3a3e5efb8e14e70950229c2435d26da8ce2d3fc43c5ad1a6b28183f605213c8987d9fe15dd17d57876dbc958210ec3ed0213306c5bc5b9134a43ba6361061875b2f331c355b1203942639bf6d02db1d5ece3a159bcc665a42771eb09e631fe8d9bed5d4db53c28b2482df381739a0e4e1cee1924d66fb9085f495fb163845ec7058ef89a50e28c9227859c69cf7641cd3880b4ee6beef50f7c003220b61b1165fb9f854b3c8ad41ccd9c06cc2a572066d0c5a0e866fcfa0ff498e9331147c91b7689eac3d3b90a630e5809a43e9b6b9f7fff5bbfd064c1533368abc7e66b98d0cc2180b2a11456bdf35d69bd7c5d754ded662087883785c06753150648f95aaa9fd29babcf0f01376a0132a91e9cfc820bb6541781cd4b0f2a6ff0da4e7d568ad373834c56019c701c89d9456654c998533a72c097b68ea08ecb59deeec50370c111e91ccd233050fe629d8f54a124727923feea76f8f9fb664c1462056175f956d9377bedd150e8c45fb89a39ef4463b63686c4a12088910ed3d2fd24df3d2f7cd3164bc8457c782a8e0058b7f4adf228a1d3eeba5fe0795f45cd92a09b48c02259ef743bacbbe86f890cb0c0725c0c03fb56886a74e5a8752672edadd93637f6dc7feb8a50427ea94f9ac5d1ed56dc2dae0fad67ffdfe0aa46cb3221202a9f2582e39ecf6d5ad66626cdfd70f409859521d6834606673e96af65b907c83d42495b754361b42bdbf9efc6353d51f2e702396caeb77d71fdee53a1e0cd01568aba2f152f2e1e4fbb849e84d740e3b031e819fbfa2299da0cfab85980ee98d644cde55e9321b5bae15667ed90584afee058758f008632695a1eb2c045657d468364cb2abf969657ffaabd1e1ce3c6540c3288bc9557c774404bd4112543f29ef93bb963c010a6f4e4e8bb9f12a597a8d2ed32de441c1f8a9bec47fcd5f7f529d5956e15da2d0d32511879bdf613d39fb22fbc9b44982a8ba7687292c6b301ccfeec51c51275210b3744218c2497b1865b5370d832565e9583f2c6105e3bf013ddc1afe2a0685b4aba060ef6110446e937975404654802980a53165715f789a6c41c6f32046a8c38a88544d498ec38645bbfd7b325793d13235e4019216126592b42596b515fceed6bbaf1492f83559f5d84e49c5167398c8eff2a19dd32fb5fc185ac85be20aceab3fd4b6ccd0cf7a1c9c990153a2ffa1a7e72247dc77404c11ffc397f5d8931dc52a2919efb2e848a5a93c66ee4d81e7293127a915bd3f6515331f8a3b26e7161ae4dd2a89a2d28059192686a1aa055fb9f8a80a407f62ef171c8df3d90890f4e7bb7435978da7708332db4bfdc1f472f80f03b76b2a10c0f73841f259121cf78c7f41394797363a2b8e19fb0f14745249b5d141280d4afda7d30a0615955df352ea69c29e00348bc161205e27bbee82ac980fb4b184b70dcc2d05ecfc4c1cb5ea5d9315c24da81536e04a631c7a6ed57ff18b526e59643260b1840b69491abb295231970b5f09ae19ed512d9d1831bdfd97cbcc07c783399d49dc5bec7ad209998469541dabbf24c73901483ff6046c4806d83be6c0beaf5429db526dbd03893870d816caac5ab5b6229b5fd24203c010005cba55e406ae3b2069aca910737661ee99184ff146959148a12a07af531375f11dd7c676396df2bffb02d0fe0cf41f557a2f529c39335cfc7db83e686d9cfdcb9e2db0fb8db25ae65eae11415fbb5dfe0e8cd6dd886f9660dd7f017d2c6c933a4bedb65e61a8ab15a1e3fd5bd07c3eadbf59dacba1690a288e8c0d8410f59818f5a57c570d4e1bf126398c7618171538549a0d6f2c725c695f9cc07adb16a4344660c39d842728fbb9ed033f4da6da60817e691ee82e640291d6c2aea4f0efd9b9376ea201a9ee2696af4eef1597c25b3f2603ae801efd826d31f6186b18abab6f7bf558dfaffac0bae326fba64a6b3843b5878a593d463ab8bf2c7be453442550ae3c05b868d0e245a8525752aa31f40be7af18bc8fc477d0a8803a6e71f0c0ffd2b1f098e1372fe21e2be0786db314d3226d08d1c75b3a4e07766dde22d04465943f60511e1957fb47e570dd5ff53eb1e3385f084047d3881dcf3a3412d89f77aeb071a90ee62290a1d601587d9243529a38b7f7895f69d98e3dd18576bcc2e1f627e4292a482f9ddaa818ed3f2f3ba8ef1157d84ef46b1913bdab0bd67881cc9f95edd6861b6bfabd7e949d93f4cd2e6f20eee87491de93357d7e12477f5448202a8587436d761b7ad9d60825e18e6d439a26dc1a90633544e7abc9f8006c4dda005952c2b0677c238507c5564f5c7342e650b2f06b557f03a11329b508c787f24c2fc587b327960348785836fc46e3786e7f1ba8e9b5c44dbdd8f6b73f2a709e3e5d8042f9fe7b7e963e13870fa97180b5ffc649daf2f6fb7579009a8a68f7fc8590d8b9576459566ba5eac9a5300ed2bc811792540bb26533252601bf610e2113910c1f68b4ff284b7c1346b4f762cdfff197668aedf6b7c7f44d339e0342a07adc8d92f15d176d9d00d6078e54ff9606949e5bcf93fbb86913e8d7193db6ddf89b092184045af44b10e3d5c47d0b528071ec34eef74b16c4260fc9f5138b6b4917ccd391ddc6a589dc1aa689de04a26b593eb49bf4943c296d1096c55b728102c98bf3d7dfc45f60877f1382c45489ba0a6dddc93c49d049566b476fa2214d15603a78e220872d92c792cb6c346d4b8d440facf53e57848e7b893c2497ac8733237d163ccf3bad3880b71e2f329b002e90c63e3706536c00d2d538307f78a6319bdffbb13cc197fed59ffb144c02444b5485eaf27d87211490d79aefca16ec1f429acf8d440e3f4368b611ee74fe233a2c8508f56510a4514fdada8daee4a9c7fc675906d759f2e3d2d83190daaaa7ac3dab6cbd9457b5fc91f24e6bb297a60a8676ed1b3e468e409447b8ec264565f37b5932de931f7baea88e7e8a30a02812c63c4238725e5a2d9e850e9fd59891b9c53edd4ec1a2961b98ecad06ef92d025712286023f8142148c6fe6b0a7054df75dbcea985cf9587c08e34dcad4f3aa82d94aa7cab7baacffa6382fcba2947390d2bd785cc84c511960536f9ec5fd8225c2feb1b7a84fbb20ea2433e19ae258ba7762a96909fb2b487231650b53d0b61b8fc6517cd351b8b24910a1f8f8eeb20a87be4bd5551f1696dd24364076e8e87d367f8d92028193c6dde298ed3af84ad543f8d98f65450504d5d404d27fe68ed57736100cff744bf8963735e31abc2cc2dfbbcb3dc22b7930f5f14d6de683844ab78eeb36d6a28a2cecfb8dff5075e1a090993212e2948c13b90111c7c39e10f15e99d67b0f8ef25411dde62aa09e0ced01f9c94ec2f88c4df8eed1a80882e8220c3d08de4db32f584d097004ee509229c5c463089972784f037735f5a41f2d91e56defbc5b5ba74333d551636174fc601529b716fb06dab931bcf6a7cac42604fcb65bbe91b3a69a03b42ec98a86bfdb0e30634bad59cfd5ec14dd34a4dcbf890ae25a092cce239fd2262ffd5ed4ed9c231c409f83ab97c4ac39566378c491e09baada5e2711610ca3e2b31e5b701d18c48a3a51f1a8a46de85ff1c478eb8326c22c453ebf75c92faae1bdb2d1c6c96ad9d05b393ff370140e6fe886cbbd140b8237f880b0021625dc7bedd51a9c337b222d3660385696a8f57a1f0a131f427e3f3f27632aa0312e4ed5ca370a1c220ab3087cad225c94baa0c6c40db4b9ad6477d618534e2bf8713980f7551a2abbb4579a36b07bc96ad9c3e278555a671b70c2af0c31bd515af33f285041281a86a6199a662a6042ae3dca6bf266bd9f26cb1e41082da0aca261f4b45579b65ebbffa0501bfa8ba319700464d512f6e1e731c131b570d33fcb3a67e03dfad16c2abd6f65f7a47a745c3688288a272727209e1690df233431097e07d6230cfa075eea920cc9c05c0d1c7c369410218be4142ce49ad1df248b83e5a69513f89919f057452d0c4e2056940cf33e3fec527836a04a78076a6ffb37f8feaef226bfd6434f566638efd6e5c12a389657ed736982463996bf97a226acf899edaffbabe64d2ad328180bdfe793afb8929c37bd550bef59103b5332d1ea6cb0a54f985635357cd54f87617c5c952db79dd7514099d470519aae7f32b676f6b809dfa5fc9e51b9a1830a8d502d37f65a1dff6b952c4bd2b368d2fdc45f374c365a37246fb8fc4ab6815e9174bb0a06f400f56076734cdb8a3add56f6ecca8d88715901cb383336b6cad2e6c9a0febad4e30eb97139c0940bff10abbd216367b637fc3837623ae0cad35db83007c615292458307f09a45394e65ff972e3a0a5da7f623fe954ce58fb76149654d922dff2ba30379ea4283f3f8a104892b72479ce81ff32bf3f54d3a6f6bb5616f7527ac9cce454c667473bd1659042eb3964b2f32a6622eca706834765abb71052916c09131e23d3ca884f17828e1e3a6df1c8e296a70483148ca5bf56c28daa82730b4b7c2c26a54bbbffea107e001736e0a8d22d1c9be2d0a1650fceafb9a190e611b25b6b77a61c3672e1ab3b53ee8daebfff049fb891f3a4721165ce80e44efa72ff5819edb61d4e77b2debc42a787968cb476ab4ca7cfb2f92c8236ace291bfd72f2a6449fbdaef04005a98dc036ea75b664d32f64aefcbd5f57125ea2973a9d1000ade6c0de07eb48986ff205f68569e896ac74960a649fc308146578a98b92d78a760e18e61ba557990287604e6907d4502a38efe1e35562d46a852c591a03e476bd6a4ba2d5187e4888953fe75e0bf204cd4ed8166c5244ba751007e0bb11ef250c1e22a85e474bd8cc407dbfb21596057015c2354f7cc6324840ee8458b927684ea1f0788589a5ea9ae62dc38d27213961d44949d9bd123422f7db2d72a408e0503e8bccb0b280d4a2deee1c97ee3f7c1358a19fbf917f9077063d02413f6576e583e8d505691461eb2987a31c9cf028f0d770bb9409f3d328e36a59d65649d4383d624f0e3c434803f7c1360c2db39fdc002da40eef61079e02fe38c55d0b241103af94d420941e5182248dc23c85a43eb3557a65e7ec6833f9971c6c6fe5517a28f5770686371d20b8dec2cb439b369fb22f72377541e01a2ecadc4bc4b3b4fb0dd2c4c7a29a694d21b1bff5c3f71a01f9eb789310b74b3134233a680a57779e95dc3a732f45c5364adc51a97838fb5a76f3b134779df5c7263648e0f15e65f4d04dd7054d44ec9707d92c5e37e3a5c25e541a08acca12984e706f61c0ce24659edca91edb167e3f9eb7c5cce9c936eb9ba8ac8b3e3145220050b7a4a748b8ba15116154ea18a50669a088b5b7d94fd95dd0ab1bce7e1905497ff3a3f1277b697e3c7db709f120c94a7e38eb9278d7cab5bd8b482b318c39f6f8cb934f2300a7224dfb8daf64361f5d5ffab67895130769bd0971cd6e1a80e5ec32b485d76fa2cfb5a5a029b794fc0190d2960b2d1d7e61c793f65592cc5a4824f4776b12db2451996fff57160357eafe9f965ed554f6becb0546d8cfe3c0326733d00b310a93cc6dbf210fcd0625212381aa0a2e81f1e2d70ea2888f277b0bdcb5092532d6d57a25160cf85486b87b02d52c071af4e2e32b7771eafae815cac79f7e0751f653fd4a8ce019ead3d607cb44a1e0e672a38d393c04dade07ca736df5147a3250ab415fc919cb08acbdec979fcb52eec64955c12f20e28376e57f951633889243fc1c23fd8aef591e1ad2b8d01666ffbbb12328ed6e9c41a2ae4db7285a8aca29e030586be2bf3986c471fb308d19f5584caccb2ad3f616f06e60194476ce4e335113286371bb0c31bb6a4ad55c3714b738b39d05ee4c90585fad73686e195a0141c1dc6e8889db2d400ce2cff7d90ee7c68266bbc1a23c66fd4c7049e69bb886062cb47ab6a38719fee0398e8f5bbc1bac93ff6475a038c28801697c11962e1c926a5cab6f24b0b18b993063711d507fd7591cf940043955cef938d5c50744e1020ebc7440c67a157712bc8a53f56cca1772b5e4e1a99e2c01556948d845ccfe51386b07b6e5a9a9f83bef1141df2fe5a070652e9dec6aba615389fba7e8488c1310854738c65315dca1f3715887e17bb64ae955eadd134091907e79ee6996c626a94382af6768d061fb8c7d4d1689f48f9988da73269c1af28e52e1130dd581cbb71a51d19b0fb8f608987d368587fea204c81ff1540d7ccd06c7e6e407681541be9720dbc391a387fb350bcfcc6236b14f0e6dece8c99ce95f69e8ee6519265bab38cf4aa15ac65566905ab9590c341efd9438c1abbc07c12286335e3818a3a98ab8d7361d1274e128e146abb2235de0a4835580472b125b406ed7fc6b7d63054d887c57d3e795d26ef0d841a865286b86429dd34028aff5a8be540be39bee0a98541f52bf21c4a025b345b2c0792f2dc49c5bf158c54753d062be48a1b070dff168b707921f8b42f92571213b44d38a950a165605a82b8739ec769d3dbd398bd9c16e44ecada90b99b95fa48ebf2a922385ecd9065eaca0fe08e90ae495f3d086aec6b0057ff6569f72e9f7b5f60f96baa0cc369a61409b3135b75f0e3e49db4a027ed143d95f1279e88c5c2ff3499f81a9c6cec3d36766ba290a60f6ef45bc60f82b5464075784350c6f6ed0dd4e3f5558bfe7400fc07282ae51fac3227c0f73c0fc50fe31e5014ca97d39b971d88778e8ad8e416118b56452e37264d8071e6e55237f8c121e6e646c9f436d57de20fe830b0a6527d3d383ed8374523758e8e7ab917a0fdf1b9b8fe3215930eca935d956ea410949c9bd58c6c27c4060c880a160c958d70617beb6d3cfd6220fd0b2ce65c8f65e6693848c836640b866de8bfb91cdc34df7a78acf60e46679fb627b8a3a1c484de8d4cc63d088a25bb9cce0ce01461233aeef928fff328cbeebddb1c9fc3e53f6a941696108bf3cee0e948b09da97b32f41075015b39341d518ef614d5026f3899d88156ea3235d4069e13aae68b657b3d832f94a26418c8d0adb36b11f2633cfc3716e6c7488ac0c104e58d257efb9f488c06ccf1b69c4b52911180538a770ee8ab3ac686ebb77565cec4c955ed86f0b7bd7f15b623c6d35f4ee5fb3d31a20ae40104424271893049a9634768110706db20c6ebb84088d064da439b33cb9738f65a3af9093cd434daebf35955c57e057a6451866be0b530cbd0f20762300d0781ce73471b7e94c138b6e02ac77625553aace9a9324f285d2eec7ad27e168b5e9bf90fe0b3a2f6f70d074a1a44fc5ef08e02137512dbe936dab4d4081ad02cf708da0930413fbf4bd2497b0a05d5fea96b7489834ec6a1cedfbc7d3cb062c9f7e1739745efca6718ace7d9d5f59f4a5fbe336f2be97fbf530b3d165486090e1c407e6515886ab391aaceec5b8778aab267c5de5c1736a7403d3da3b22c79200b5dfb92cde95c34dbdcf93c68baf563ababe23c9f76a84afd9e9d210720c85e4dc142d17023ca33f1f3a6ba7b0f483409be6055d44e0ca93d1db6fd0448120e84e688f3d7659fa4ea5db5ec0b9622381c8f3b0802e42f4602f6003d4d8f9c62bd5670dcd36c37b0bb68b44c2a3ecc7c4a4aa8bbfe389e5f46030cc846c462c6b796b8482855012b1c020521f03005bfdd87c6d68d1aed2ac97d5811b057545d652b3d385b6fd60ccd2b9027f3c357bca8a5ada82fc5c326344a8510af9985cf0c7c3350e83d15ab45ca3c7d9e4ea2fbc931ffb7c872eaa98956e0437ca579b4902b6901ffb9c7a36ef506e506def3160ccfdc031c821ea2f52de1f65929527cea2305b71e55771a08f44684509e0f9725ed963a738834fb747a9c300754859f4a12e41348eb706889f3a750d9c7087265c60bf1e4b821772fa99b4cb9ba118dc54b859d76c9ce7e4dafa530b04134e128608dedd84ee97796d095827f7a98bfae885c60b21da846e15284bc79a7fea0e3cac04cd43f20e7b648e5a0ff8fa5344e644b0ee09ca1162b627473bd42272db0187b89f203f00affa430a2c71fa2658b9b64a16cf9740f51a54bacc62688f5162757ab465f04bc1c1602553b0d7a7aae564e96331a1917653308401f1f001f4a9e67194deb5d547887bf433d8416244e2ea86a987e438d2392ad0a168a20fb7f9fa851621d4104042bfbb7e158903bde9f57090294be67f0b368bbc6e779fd67415d2f6cf339b78e50881f16abc5478734f27f1cc65185c2b955ae59b3febd935b04949f6ebf25ea027476aef4d1ca2880382199c9e5f401497c99661c146c02b151d6aa2b152e66b9914d092d16c2de4f4def4d59cc957eadeaf9c0a9e5f0a6f07a27006acc2df840a9d8465057c25d53c28adee33b314ffcda7d7f5f75a6dc1d9851970e7bf428d3e5d93804acd22e8fc6dcbcc7bb9f81a52e057319978bc715411735b6a2bb23d1bcdb5c5b745edef2bf259d396182827cc64f6513edb2506904a9b49cb66bd9443ce342af2015ccbf841917b4023cc06079db18e0cd44e0d054202c1403c48327180f3995d08ead2a6d4d012c0551a7a35637c8dde2a6b34d303af19b9a130b7abd9bbe92ebf40524ba02cac4e67263d3c7df9b4dd3ed729f79e0e1190beeb0f968376f02078604023a6637a71f902070e7672088ecda67eb1be428849b6d5167af0ebba607bdafc15b9e5139591338061cb5e8bd8c037a73069814adda4bb71dd7da66f2f4158c0eb85a4307503e6acd498d10e98c8c237a0d052f68d547ada31e89637e91abc52cf95b285e09e7d43def05118111b02bf64e4a4c4efbefd20c755ab77227c737110859faf3fda54f6309302e3fbe419e9e5400efdc15fe90881dcf80f3ae59542a211008b73e342bbd4398aaf354988611ff385ccfb1c4ff0d053b71691bb5b64959ba0706c97bb4a7219c26c394586038134d993ec2f12e958ce9a693f4624831ee213f3911bcf2b180aa68f06452eaa536525882fb95cbe9790313a2b1b3b52800b81c6dc912c7853357acbd7ab84c15ebcd4ab3c8ed2b6e9603b9995b54743a7d3bd61117664f2e4fb883b2bf5c80eaf7c0295e4113dcdadefe0a18d9fc56d5f3f0f5a42997217ac34b1baf5f4520b0d5271b6db89950f7b5a5fece6d8d65684dab9383fb6cc654e095ac42f99d54f9c897d35fb2da089f37104cc9cd64a489fb93638605806a6f932514a00eac8caa679a22597a8f5942c2e8c620f87c664956fea483acd59e7bd934162dd091caae234f72d3b57e138174f733e736b2430a4c51b098b17d866fcb6fe27dbdffd8be7f42bbb10e26fd211e8b3285dc21c618b82e0fad54c1a58844d0b2a2082537735a2a576dbec2e8f9c1a09812eac6df6a389502a6ba860072906cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d308c6db340475136df3c1201d458fa5755698eace76e510471ecc9d857d6083dac0d113f541e70b6bb5a767bd79782ef7605074eb04ebde4ecaa03bc37796752f50b2bb82facd0cf903265be0889fd2a8ed42ab46e0fab9d2e3c5d1a323afaf25b69c7b9465b22d63e7f0b687bd4c6db42ee58c65ca919cac496cbf7e3a8286ba15fa1980c6c5c6dccfa3f044efaf3b92dcda22a7706739899e3cc7abefadbc94ebbd79f7d6efffca12a011c0cbaf1732700d9f1a0425406711f3873e8c99ca5f4a2840585f8411be8e6826a31ef15ae65c950bd74a2437a73b013398a934ad0c6fa0cdc415c977dc4d554b07a804936fbf741ecc26eafa1e97d871ce718ab6e70ba93d7b6cc40c2819e8f771ff5ff2084a877f86f158b0cf17a9d17d81062a5b98832ac22592734e307154bf2274b1439573baa0f664a773d3f0ad647c9207ac3f47a5d2fb2d106895577dbc721bbfd7c9e142a1380b054e94998d7a5a573060b26a9c0499534cc1e4fa2168255a0cadaf82fb587a4b3df6ed1eb218220b7e7e8f77dcb91b8264a57496190084b28b315deae421de2b00f90b6968649417b72ce7f4e7d3d34752a4c897761dc4b69a5f42eacc07e118713962c1c427ffdfc8b68941184b5c5407bdf8175867c19b884d0db7fcd4a62a1705efd63656742ad8ddc0957ac7b5178975a557e4642707622af171a9395cbccca25c80eb86c4d40ede66d028ecc5dd4f4eda35535b0ff699a1550300ba6901f1603205be632596c48497a7209153e8fd6cd99b23e6963938d3e27253150731a6f0b21c606631a03fa7c7026023b9dfc52cf13bd3517a401eac79d9f1b31eafb53ea6cb7bd6d77c72cea264832731704fd0878758d8cc0879dd86f924da41052993fe619ab068a0b608e7b0af26501c77f09ba0ab7678489d3652ba94b7a813c303e4914319f0697dc045d347202d0ecdb7152a5e89c8830568af2137b9c6066159c5f65ac7c0207955a236009a8e765faa8bf7ed3b37215831e4761266f1877e2a7156e204095905a435dab73e1ecf8ece969ab0a592f00480f5b55362d23c29fceac27bb39a67f79a71e260b4aaccec7a6ef9068b8ed6ffbdbb5a1655ec03fe93d53a0677b78407bbb48154bad31fa4a48e58c0414a817de673264c341eaf1bcae2001ad020453b98832bd91af678b0706606bb777d5eb9780429517127c7b9c0b5e22e9bfd1d79cba7c02f213386e144383e6beb210115cee28f739083a4d56b5c93bb248f06c71490be4ad14a5ac827350719b86be212353a82a1e01d6be7b9a927403647159cd931a03fc79ed50335414c89a86ffe144162a6dce4889d24646baeeeee15b0720787261f516d54a07347362100fc11e60149c7e3c40fd7be7adeed5f3d59e813b5f1b59dd4b071a9bf1603c3726e58785fa0331571c04b9a1ca51c81e63d24d8fdcfb5f51fc22bab25f1ce21ecb1d5feac507fa1ddac1c2f30197fa5518d312fc5f8f32d639980b5dc456bed922629fdcbb71251f3ebb9cb9c8aeed635f76a3bebc688ac1fdbb52deefb02f285eaca0e6efc5422cc0e34faf818e8d0f39d4c525d833fec22c7045f90bf350f1a213451715a3217d59a3f95e4cd9802ff7e05d4309cbedc3f1f7ecdf4f6028c57fdde37e122f3021d21ddfba4d29b8c6c60ba627da54faac7dcf52331ec578b2f2d7b5d3a9483f042073ef138e61a4b8fc09ab664a7e279968092f426101db5f2e76ec58030581802802df278884a22fff9e6834aa71ce8595380c3c7a55e7fb4e00b05747404784000aa202508d531b2f9313e5af6d71e776bde8422bad6edaf7c93a5581c77c61697ed3f41e61fc93622906f5d85fad910abaa5588ae06f8d20a122b5d48cdea38ccf798b32e56318dbde86aee37272f2d6a5dedf4fd03f5b4913f41a2bb84837425ee3b45825e044fe5104d43ab6fbd38523858b5d194b06f672d1c67b9bf73b3daeb8c288f8e0954603c1aee0017964be7a4e2eb1f47a59c2a461b1be571fd7832a3e9642a3111991052b339b8b58fff91109f0f4038fdd78988c4c83a7c9a3dbd48f5ba592f0c5e261b0f95f28337473cb48ceb15253af804b080ad7679db151757c8517e571e4e5c66a8fb1392cb9d6823df62fe38acff10a8aff30471f31f7c0809e1b3035bcdbc700e6aa59767bb794c2bfcfe9132242f8ebedae9c217a49a63c58af0bc834c032b9ab861ce7b07d9898f23472a57f63807a7e2a564e516eb1aa95a37bf16c94de99e1befb7feda594dcf96501041916176f61556da077e2c473c926aec1b8f7b868744ec88bb8a0b8bd606547562c8b95ab12b55f3f23efbd5173f97e891cb484f40ff7be35ec68d1876e497915eb37301dc8f2877547ed2819f5d42017c73d8071e98b6233a25043df47bb5c3f1dc2c0ed08d00a8ced96e6ea56e440ad8be2c0f64bb009ef9ef08cb530ebed37e79b55d3784ac6dec61635036ac3dcf8448d5c47cc3a6884b073ab914f33cd9206336cdd2c392c01bbc5299ff2fca4677dde8cc33095951eb0bbd147082cd2f419d3819e2e182782f1feb675e74c1e8369fac09c79bd3fee1c5ed2a9786d018190978532f3604df2a0ae5828c6527e7db549e314be60ed0bf8321572f5eb36df09931599515983879b13943a29c0779d5996baaabfa4bf1aa92101e6dc780ac639e2fa682350faa21037931d20a92ed2992f6fb1f166751427829e59e5062a4eaa262d17d739d9718548873f70160285ad8efd6b90876fc540950f8ca202b882cbc15847221b96ab9457b046316c8465b3c6160ed0c31621f52c43d7b2924d37abef2f4e3a766e5c30c588d796700fcb638170e50208e6e4f70bd6e6b83e7f5127adcb97c68b08a7d498a0759c34ca3693d6ad652db0d6373499002955482e840c9e9f1e7f11c7567e168f2a58436e0c3073e9b8d1b34818cff4e9fad46ec7a0f159d3e47e9b28e286a2a0e396cd70c2d39a157d5f93637c1fee8a0a7183902e54cae81b479f326fe1bf018775edc0e91c5b4177088162c3eae26c977cd45f32662cd88c7a58053d9aa7a8935c5fb744aee5cdb7c48239d7221686303adc260736c65a42a5c86b1d51d6fea6ff25391d7206e300db1582339592150282e65438fb23e294920471e4c6d431d4cb3ab40d7184de5d7e6b947c69be33132cb8e7c1ea56f430a784c1a9dcd573fa601bd55eefc6ed0f4a10bfeca3ad37e5ac3f11e28e419d00f5a2de5d4e29f6dbcac7deffd2f4910ae1d34723bcb0fd4da9e0133858e132ee62fbaba76c7268e7f40d4b087fc837c8b04dca8e2e1334f08b7bc652b1f7c7fbca98b2fbc5a25e6ade8b7600fa958f0bbaa9c51849372e92331f109ecdddfd6d02eab323e728b033f8b68cd4615216c1a9d4c74763126cd109d6f70b00d5fb971a81131b20e6b7b7e3748d1fb6faa6ad8e053c346742caff408217349b93e542adf2d095f329cf9640700939fb5c26641ff01a2fa87f743d9cd9871f4f7c9a671a8b9af542486474ce3d5701baf000a227897915c77b2a3978f19a448ac8b599f121d0ac2ef6a8e44402f4c4f5f34091c90b0360fac3cc381ca5edcca290b62763b9ea3d5b4e205491e1658e4ca9cf26c9e8272d861b9a75c20c39cba57c98d6980c021df85cd16732728b668be6fe10e8cdd7d2ff2b1ae9caf743391f0df40890dd88b7f5a134063c16b2484a100cb255f96aa9c8b2b1235cfd92704f1297eaae578b30764b3e36203084571e6df747826958c54acb7400f5f5087145f6a9e01e5e2253d7d23b9eaff44c6e70013eb57289592a8927a7a603326265fbb96b42918d9392f9eda6a17901957d2fa0dc857a5b520329e95ae40b44378036ce156bee6803d476afcf34c97b7b3c4ce2a2fe6b2c7572616f06cebf25ba7dbee59d668374da9a0f8155d16dec578379bd26e6898492f23fc885d2bfaf5df8a38cc07034be6f5b57fa45eac3f3fd660796686f81536279310e7c3d7a1b4b4bd0e476867f246c3bb607d0172033ce568cbe9c413fc1fe4001011227c9cb4ffecbda5d6d1751a50ef4942e570903cbbef2a211c3b66be41417ba145e46b6a2c4e9b18400efccc5dffcb0fd2eb75b3339060aabbb558ed0930f031e9cc278e37a27da2f56a57e29f318b9908516d4c80705b38ef343cd09e46c55b40180eae2b51c766e0e3e85b708a6d90d40c83f35b7b7e16ff928bfae29f2e279d0b402431fb45f86311d59c5dc72e918b1812fa45cc290818ab7291d41f48bf7202d45a43141c3d5e909970cbe8eeddfc41543f7a840ea6f03cb2b50f1ed09435b5caabdc76570de73820b163faaa4ada4fadf65725ea22460aeccd12a97a3f1d184d5ba79f5e0dab729663374cc4eac2229ddbe10184a69a4ffd2d62762a39cf9fa5cc98b141a2a6df9679b42fd60e175cfc1aa32c1ef57d5b35fca73e3dfc67afb89433c0349c919b843246e8a4e72f5cbaf2a8092f7f6086222b9f90444082696cea7c3a9979c929d31455bfa53133233a0a872954461a522d1e9511c28543900a3f109dcad6935c6b17f2a281102a57937f6b4e75ef570e3e2a5fd1eb70b147d95d531bb0d686866547c5f273163eec06ef41ea216fc57f098cd71dabce1a42d1ed7951376dca84f0fde5042ee48514aebe823511e178671c482295989b25ae2fecc6c49cc1d9b413753da76d9bd3877958f803ebada5fed7d4204b2d88c241e54949ad7ad7b8960425d78450572c9078efff5f15df19e6590ec83c9506b5a692db84cd0f820e168ab6bdff27923feaf7f302df8770b4098a32a072bb08f9cadeb0a83a1f0fd4ab0a52a04fe362dc2a1a614280c53ba45b5597897b64a61593161acbe37e33e6ca3fd54a26596b02fbd21a3b00a9f0c023be48aa67e0dca85c79c7ab259da3fc0b34eb319b285cb4445c2aa3f3c52c2068b43993129a4ccf6ad492bf32283bf00700cd1b2452a9815120c12c53cb62604b74767a9919646d538899f9f07b8130a2d4544bc650f5ea493ba9a4f033fb662cecf2e64bb6292ad21e78b218f95d182b23d5c207bade38358a471977e1623e2390d0c29e63c627bfecf692420191644f04a10834b394e682bd629d8c43bf15759ef9544a0de0af6ac401c4bb6bb873329d87ba52abfae3f4f4ac365a216b68b32e942a2f92cb63f1d10dbaf79d70fb11b972874e36da262e199b331ad24ea6c5ba27cfc751e372b0a2921721503db7d6eff338aac067bbd0592b834cbb166718778510c79287ba1b86eab082c9d594dfcbcee6b5fe340bbc5e9be67b2de5c51870acd74d1903fa3e3c85b9551ab76775c844cd78ae744a5e41cba2f49de06cda354a8357c1ecbd1a9cbc3a60583cc7dfe539a9406dd76eba23fbf7d1f728d510d89e2f8d45e0074a3ab66189413cb6442f0e176f3f7a28c9324d1aa6975976937fbbe76e97e7cdefed05d1bec8274d78356e74a4c6e9d004d995203020c695a0638e153179b55f198f5fd253d1b0b19bc8837356547771e0afacbc0506e8bfa69ed06a7d306634c118d8e9d13f533561e02dabeb44a5b7cecfe8b29f983759c660609e4bbc3c1ae965b5a45b3a848ba6ca2ae71724c77798f0cf13c6c4f321bb6c61169bc12d6010a194bd13e623f0e89cdf594caa81ff379809ebbe7950c60300306afcb8b0efb7a690bae8f91abd9859e7231bdbd404180b3f8ccca4f119bfbd19a22d029deca444cc32f2a30cffc3944b37356791961992d5c60536d51e7a6a629fe3464304e91ba9506814aad39347aaf497e3272b2b6ae0f065f47b9be0eaf0f8037e5303690e9a9a9b73aaf50cdc963d4f8fdd254490eb0cfdca511a73faa110f46215935427f9262cc45a0cab76dcdfe34c61bcf4bbc953dffce371331484717e6ed2d30aa00e205f3639bace96271bf02d6ac58924ad9c8564307bbde2ad52405a2a8d0e780c62f6528a331a52655244d3a9d16e184a5ea5f9a70a76f3018179e40c705ff8644be21cbe61db5b40de2c32385c661c9ea09e0df53f10f5f23fc3578c836563e2819a9de0a6fbc4642486b93cfd2e4df37e57e0db43e8b441b9d87f2877bdd23f091cf4cb967d0ce1d4018459ec5aaba7649efc68d5439aef039964c6e194518581e5def4dc054cae16a16fbdc0befe623bdd5a45915d3f89ea1556728ca6f1c3f80fd34058935f747dd796bc2b3ca0414348f7e52dde15f66a3fc3b88e34b210f22b1a8b7d5dcb9d36e67beab6a6f491de60fe489c036daf2a07ec443ebbf646b93dea33fad571e8ed155bcb49ad141e6dd244a8a1f249alibtensorflow.so.2libtensorflow_cc.so.2libtensorflow_framework.so.2../../../../../../../lib/python3.6/site-packages/tensorflow_core/include/tensorflow/include/external/eigen_archive/COPYING.MPL2features.hrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottensorflow2-2.1.2-lp152.7.3.1.src.rpmtensorflow2-develtensorflow2-devel(x86-64)    libtensorflow2libtensorflow_cc2libtensorflow_framework2rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)tensorflow22.1.22.1.22.1.23.0.4-14.6.0-14.0-15.2-12.1.2tensorflow-devel4.14.1__q@__[@_Z@_X_Wr@_P_>e_>e^^^@^˳@^k@^}^|@^y@^t@^ku^f/^`^Y^Nt^F^E:@^B@^:@^6^4^2@^2@^0"@^0"@^0"@^*@^)]]V]]]>]/ ]#0@\]@\t@\@\@\\\\\@\b@\ac\R@\A\8@[@[=@[%@[u[ZN@Christian Goll Christian Goll Christian Goll Christian Goll Christian Goll Christian Goll Guillaume GARDET Guillaume GARDET Martin Liška Christian Goll Christian Goll Christian Goll Christian Goll Christian Goll Guillaume GARDET Christian Goll Bernhard Wiedemann Guillaume GARDET Christian Goll Guillaume GARDET Christian Goll Guillaume GARDET Guillaume GARDET Christian Goll Guillaume GARDET Guillaume GARDET Christian Goll Guillaume GARDET Guillaume GARDET Christian Goll Guillaume GARDET Christian Goll Guillaume GARDET Guillaume GARDET Guillaume GARDET Christian Goll Christian Goll Christian Goll Christian Goll guillaume.gardet@opensuse.orgChristian Goll Christian Goll Christian Goll Guillaume GARDET Guillaume GARDET Guillaume GARDET Guillaume GARDET Christian Goll Guillaume GARDET Guillaume GARDET Christian Goll Adrian Schröter cgoll@suse.comChristian Goll Bernhard Wiedemann Guillaume GARDET Guillaume GARDET Todd R Todd R cgoll@suse.comJan Engelhardt cgoll@suse.comcgoll@suse.com- fixed hpc flavor and Leap15.2 builds- updated to 2.1.2 with following fixes (bsc#1177022): * Fixes an undefined behavior causing a segfault in tf.raw_ops.Switch (CVE-2020-15190) * Fixes three vulnerabilities in conversion to DLPack format (CVE-2020-15191, CVE-2020-15192, CVE-2020-15193) * Fixes two vulnerabilities in SparseFillEmptyRowsGrad (CVE-2020-15194, CVE-2020-15195) * Fixes an integer truncation vulnerability in code using the work sharder API (CVE-2020-15202) * Fixes a format string vulnerability in tf.strings.as_string (CVE-2020-15203) * Fixes segfault raised by calling session-only ops in eager mode (CVE-2020-15204) * Fixes data leak and potential ASLR violation from tf.raw_ops.StringNGrams (CVE-2020-15205) * Fixes segfaults caused by incomplete SavedModel validation (CVE-2020-15206) * Fixes a data corruption due to a bug in negative indexing support in TFLite (CVE-2020-15207) * Fixes a data corruption due to dimension mismatch in TFLite (CVE-2020-15208) * Fixes several vulnerabilities in TFLite saved model format (CVE-2020-15209, CVE-2020-15210, CVE-2020-15211) - using fft2d.tgz instead of fft.tar.gz - removed fft.tar.gz- fixed json-feature-name.patch for leap15.2 builds- updated disk constraints, as sometimes the build fails with too low disk space- Package C-headers for standard tensorflow (boo#1175789) - fixed build gcc10.1 errors for Tumbleweed with following upstream patch: * added file Provide-overload-to-cope-with-const-ness-change-of-N.patch- Package header files for Tensoflow2 Lite - boo#1175099- Revert memoryperjob constraint support and use again %limit_build macro to avoid OOM errors- Lower memoryperjob to 1300 MB (as done for tensorflow)- Use memoryperjob constraint instead of %limit_build macro.- fixed build with json_cpp 1.9.3 (bsc#1173314)- fixed local CUDA builds- updated to 2.1.1 which is a bug fix release mostly for external sources which are not part of this package (sqlite,libjpeg-turbo, Apache Spark) * Fixes a versioning bug which causes Keras layers from TF 1.x to be used instead of those from TF 2.x- fixed broken builds which were caused due to missing dependency on @com_google_absl//absl/strings in various BUILD files - added patch: fix-google-absl-memory.patch- added mkl-ddn as source and do not use system mkl-dnn (bsc#1168839) - removed patches: * fixed-mkl-sgemm-call.patch * added-mkl_dnn-as-syslib.patch - added source: mkl-v0.21.2.tar.gz- tensorflow2-lite-devel does not requires libtensorflow*- removed hpc-mvapich2 build (bsc#1167735)- Use pip install --no-compile (boo#1094323)- Lite flavor should not provide python3-tensorflow nor tensorflow- removed sources of bazel sources and replaced them by internal packages * rules-cc.zip removed * bazel-toolchains.tar.gz removed * bazel-skylib.0.8.0.tar.gz removed- Lite flavor should not provide "tensorflow", otherwise tensorlfow2-devel and tensorlfow2-lite-devel conflict and break armnn- added Provides: tensorflow, so that Kerase works with this package and fixed Leap 15.2 build- Fix name for libtensorflow* sub-packages- openSUSE has no CUDA package, so disable cuda build for openSUSE- addding changes for CUDA builds- Add 'Provides' only for hpc flavors, otherwise it matches the package name- Add provides/conflicts to avoid to install tensorflow and tensorflow2 as some files are provided by both packages- removed mkl-dnn as sourc and force usage of system mkl-dnn for x86_64 builds * removed file mkl-dnn-v021.2.tar.gz * added patch: added-mkl_dnn-as-syslib.patch * added patch: fixed-mkl-sgemm-call.patch- Add 1.25.0 as minimal version for grpc-devel- Add 3.1.5 as a minimal version for double-conversion-devel (2.0.1 from SLE15SP2/Leap15.2 is too old) - Lower required version for protobuf (3.9.1 from SLE15SP2/Leap15.2 is fine)- removed AVX2 flavor, this should be fixed via mkl-dnn- Fix build on hpc targets- added shared library packages libtensorflow2, libtensorflow_cc2 and libtensorflow_framework2 - removed the AWS sdk support as this forces a SEGFAULT * remobed file aws-sdk-cpp-1.5.8.tar.gz - dropped following source files as they are not needed any more * removed file backports.weakref-1.0rc1.tar.gz * removed file gettid.patch * removed file grpc-v1.24.2.gz * removed file libjpeg-turbo-2.0.0.tar.gz * removed file nsync_1.20.0.tar.gz- Do not try to install *.pb.* files in Lite flavor- Define package name at 'tensorflow2' instead of 'tensorflow'- Generate *.pb.* files and package them, to be used by ArmNN - Do not build on %ix86 - Do not build %arm, except for Lite flavor- updated to tensorflow 2.1.0 which is a stable release and has following breaking changes: * Deletes Operation.traceback_with_start_lines for which we know of no usages. * Removed id from tf.Tensor.__repr__() as id is not useful other than internal debugging. * Some tf.assert_* methods now raise assertions at operation creation time if the input tensors' values are known at that time, not during the session.run(). This only changes behavior when the graph execution would have resulted in an error. When this happens, a noop is returned and the input tensors are marked non-feedable. In other words, if they are used as keys in feed_dict argument to session.run(), an error will be raised. Also, because some assert ops don't make it into the graph, the graph structure changes. A different graph can result in different per-op random seeds when they are not given explicitly (most often). * The following APIs are not longer experimental: tf.config.list_logical_devices, tf.config.list_physical_devices, tf.config.get_visible_devices, tf.config.set_visible_devices, tf.config.get_logical_device_configuration, tf.config.set_logical_device_configuration. * tf.config.experimentalVirtualDeviceConfiguration has been renamed to tf.config.LogicalDeviceConfiguration. * tf.config.experimental_list_devices has been removed, please use tf.config.list_logical_devices. - renamed the project to tensorflow2 so that the original tensorflow v1 API compatible release can stay in factory. Following changes were made to achive this: * added tensorflow-v2.1.0.tar.gz * added tensforflow2.spec * added tensforflow2.changes * removed tensorflow-v1.13.2.tar.gz * removed tensorflow.spec * removed tensorflow.chnages - following source files had to be updated * updated abseil-cpp.tar.gz * updated bazel-toolchains.tar.gz * updated eigen.tar.gz * updated gemmlowp.zip * updated license.rst.txt * updated rules_closure.tar.gz - following new souces had to be updated * added aws-sdk-cpp-1.5.8.tar.gz * added bazel-skylib.0.8.0.tar.gz * added fft2d.tgz * added rules_cc.zip - for the following souces the system libraries are now ues * removed aws-sdk-cpp-1.3.15.tar.gz * removed double_conversion.zip * removed file unicode-org-icu.tar.gz * removed file 816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz - these patches were removed * removed file support-new-bazel.patch * removed file tensorflow-make_aws_sdk_work_on_aarch64.patch * removed file tensorflow-fix_lite.patch * removed file remove-keras.patch * removed file grpc-namespace-corrections.patch - these new patches were added * added fix-lite.patch * added removed-docker-tools.patch * added right-json-location.patch- updated to tensorflow 0.13.2 - dropped grpc.tar.gz and grpc-v1.13.0.gz as system grpc is used, this fixes the broken builds which were introduced with gcc9 (bsc#1152671) * added grpc-namespace-corrections.patch in order to use system grpc - dropped re2-2018-10-01.tar.gz as system re2 is used now- added remove-keras.patch which removes keras sources and uses distribution keras libaries * removed keras-applications-1.0.6.tar.gz * removed keras-preprocessing-1.0.9.tar.gz- using now system protobuf instead of building it (bsc#1151150)- Ajust %limit_build to avoid OOM errors - Do not use %limit_build for lite flavor- added additonal dependencies- fixed installation location of shared library- removed bazel mirror from as much source links as possible - added support-new-bazel.patch support newer upcoming bazel versions- Fix build for lite flavor: * tensorflow-fix_lite.patch- Call ldconfig for devel package in post/postun- Fix aarch64 build with upstream patch: * tensorflow-make_aws_sdk_work_on_aarch64.patch- Add Lite flavor- updated to 1.13.1 fixes boo#1133490- Update _constraints to avoid OOM errors- Build and package libtensorflow_cc and libtensorflow_framework- added fix_mvapich_mpi_bzl.patch which fixes detection of mvapich2 mpi library - fixed python3 build- update to version 1.13.1 * Major Features and Improvements * TensorFlow Lite has moved from contrib to core. This means that Python modules are under tf.lite and source code is now under tensorflow/lite rather than tensorflow/contrib/lite. * TensorFlow GPU binaries are now built against CUDA 10 and TensorRT 5.0. * Support for Python3.7 on all operating systems. * Moved NCCL to core. - drop merged patch mpilibpath_configure_py.patch - drop obsolete pyton3.7 patches - disabled jemalloc for now- enabled aws and googlecloud support * removed no_aws_and_googlecloud.patch- Fixed build issues with python 3.7 what introduced the patches * python3_7_compatibility.patch backported from upstream * python3.7_unicode.patch fixes a minor function call * python3.7_async_keyword.patch avoids the new keyword async- Fix build with python 3.7- Build and package libtensorflow.so as some packages may link to it- Add constraints on HDD size to avoid no space-left error- Fix python3 provides - Minor spec file cleanups- Provide python3-tensorflow- updated build command to fit bazel-0.19- Trim pad wording from descriptions.- Updated to Tensorflow 1.10 as with this release it supports the partial use of systemlibs. Still a lot additional sources are included which are * closure * weakref * double-conversion * gast * farmhash * nsync * gemmlowp * abseil-cpp * boring-ssl * google-apis * cub * highwayhash * abseil-pypi * eigen * arm_neon_x86_sse * fft * grpc * re2 Although some of these libraries are available in factory they could not be used as explicit versions are needed or bazel or the build system links them in the wrong way. - mpilibpath_configure_py.patch changes the search path for the mpi to also include lib64/ - no_aws_and_googlecloud.patch removes the dependence of aws, googlecloud and kafaka apis, as this version is not compiled with the support of this apis.- Initial commit of Tensorflow 1.4 not all requirement could be met by the distribution packages and the sources have to be included. This is true for - Eigen - protobuf - grpc - lmdb - json-cpp The build itself is now based on bazel and creates the pip package which is then extracted from the build environmentgoat05 1603117830  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}2.1.2-lp152.7.3.12.1.2-lp152.7.3.1   !""#$#%%%%%%%%%%%%%%%%%#&&&&&&&&&&&&&&&'&#((#)#**************++*******#,#---------#........#/////////#011112222222222222222211111113333333333333311111111111141111111111111111111155551111111111111111111111111111116666666666677776666668888888888888889::88888888888888888888888888888888888888888;;;;;;;;;;;;;;888888888888<<<===========================================>>>===================?@ABCDDCCCCCCBEFGGGGHIIHJKKHLLHMMHNOOPPPQPPPPPPPPPPPPRPPPPPPSSSSSSSSSSSSSSSSSSPPPPTUUTTTTTTPPPPVPPPPPPPPPPWXYYWZZ[\]]]]]]]]]\\^_````abbbbbbbbb__cccdefffffffffffffffffffffffffffffffghhhgigjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjkllllkmmmmknnnkokppppppkqqqkrsktttkuuuukvvvvkwwwwwkxxxjyyyyyyjzzzzzzzzzzzzzzzzzzzzzj{{{{{{{{{{{{{{{{g||||||||||||||g}}}}}}}}}}}}}}}~gggggggggggggggggggggeeeetensorflowcc_api.hc_api_experimental.heagerc_api.htf_attrtype.htf_datatype.htf_file_statistics.htf_status.htf_tensor.hincludetensorflowcompilerjitxla_activity.pb.ccxla_activity.pb.hmlirlitequantizationquantization_info.pb.ccquantization_info.pb.htf2tensorrtutilstrt_engine_instance.pb.cctrt_engine_instance.pb.htf2xlahost_compute_metadata.pb.cchost_compute_metadata.pb.htf2xla.pb.cctf2xla.pb.hxlarpcxla_service.pb.ccxla_service.pb.hservicegpubackend_configs.pb.ccbackend_configs.pb.hgpu_autotuning.pb.ccgpu_autotuning.pb.hhlo.pb.cchlo.pb.hhlo_execution_profile_data.pb.cchlo_execution_profile_data.pb.hhlo_profile_printer_data.pb.cchlo_profile_printer_data.pb.hxla.pb.ccxla.pb.hxla_data.pb.ccxla_data.pb.hxrtxrt.pb.ccxrt.pb.hcorecommon_runtimeallocator_retry.hbase_collective_executor.hbfc_allocator.hbuf_rendezvous.hbuild_graph_options.hcollective_executor_mgr.hcollective_param_resolver_local.hcollective_rma_local.hcollective_util.hcolocation_graph.hconstant_folding.hcopy_tensor.hcostmodel_manager.hdebugger_state_interface.hdevice.hdevice_factory.hdevice_mgr.hdevice_resolver_local.hdevice_set.hdma_helper.heval_const_tensor.hexecutor.hexecutor_factory.hfunction.hgpugpu_id.hgpu_id_manager.hgraph_execution_state.hgraph_optimizer.hgraph_runner.hhierarchical_tree_broadcaster.hinput_colocation_exemption_registry.hinspecting_placer.hisolate_placer_inspection_required_ops_pass.hlocal_device.hlower_case_op.hlower_function_call_op.hlower_functional_ops.hlower_if_op.hlower_while_op.hmemory_types.hmetrics.hmkl_cpu_allocator.hoptimization_registry.hpartitioning_utils.hpending_counts.hplacer.hplacer_inspection_required_ops_utils.hpool_allocator.hprocess_function_library_runtime.hprocess_state.hprocess_util.hprofile_handler.hrenamed_device.hrendezvous_mgr.hrendezvous_util.hring_alg.hring_gatherer.hring_reducer.hscoped_allocator.hscoped_allocator_mgr.hsession_factory.hshape_refiner.hshared_counter.hsingle_threaded_cpu_device.hstats_publisher_interface.hstep_stats_collector.hthreadpool_device.hdebugdebug_service.pb.ccdebug_service.pb.hdebugger_event_metadata.pb.ccdebugger_event_metadata.pb.hexampleexample.pb.ccexample.pb.hexample_parser_configuration.pb.ccexample_parser_configuration.pb.hfeature.pb.ccfeature.pb.hfeature_util.hframeworkallocation_description.pb.ccallocation_description.pb.hallocator.hallocator_registry.hapi_def.pb.ccapi_def.pb.hattr_value.pb.ccattr_value.pb.hattr_value_util.hbfloat16.hbounds_check.hcancellation.hcollective.hcommon_shape_fns.hcontrol_flow.hcost_graph.pb.cccost_graph.pb.hdataset.hdataset_stateful_op_whitelist.hdevice_attributes.pb.ccdevice_attributes.pb.hdevice_base.hfunction.hfunction.pb.ccfunction.pb.hfunction_handle_cache.hgraph.pb.ccgraph.pb.hgraph_def_util.hgraph_to_functiondef.hgraph_transfer_info.pb.ccgraph_transfer_info.pb.hkernel_def.pb.cckernel_def.pb.hkernel_def_builder.hkernel_def_util.hlog_memory.hlog_memory.pb.cclog_memory.pb.hlogging.hlookup_interface.hmemory_types.hmodel.hnode_def.pb.ccnode_def.pb.hnode_def_builder.hnode_def_util.hnumeric_op.hnumeric_types.hop.hop_def.pb.ccop_def.pb.hop_def_builder.hop_def_util.hop_kernel.hop_segment.hops_util.hpartial_tensor_shape.hqueue_interface.hreader_base.hreader_base.pb.ccreader_base.pb.hreader_interface.hreader_op_kernel.hregister_types.hregister_types_traits.hremote_fused_graph_execute_info.pb.ccremote_fused_graph_execute_info.pb.hrendezvous.hresource_handle.hresource_handle.pb.ccresource_handle.pb.hresource_mgr.hresource_op_kernel.hresource_var.hrun_handler.hrun_handler_util.hselective_registration.hsession_state.hshape_inference.hshared_ptr_variant.hstats_aggregator.hstep_stats.pb.ccstep_stats.pb.hsummary.pb.ccsummary.pb.htensor.htensor.pb.cctensor.pb.htensor_description.pb.cctensor_description.pb.htensor_reference.htensor_shape.htensor_shape.pb.cctensor_shape.pb.htensor_slice.htensor_slice.pb.cctensor_slice.pb.htensor_types.htensor_util.hthread_factory.htracking_allocator.htype_index.htype_traits.htyped_allocator.htypes.htypes.pb.cctypes.pb.hunique_tensor_references.hvariable.pb.ccvariable.pb.hvariant.hvariant_encode_decode.hvariant_op_registry.hvariant_tensor_data.hversions.hversions.pb.ccversions.pb.hgraphalgorithm.hcollective_order.hcolors.hcontrol_flow.hcostmodel.hdefault_device.hedgeset.hgradients.hgraph.hgraph_constructor.hgraph_def_builder.hgraph_def_builder_util.hgraph_partition.hmkl_layout_pass.hmkl_tfconversion_pass.hnode_builder.hoptimizer_cse.hquantize_training.hsubgraph.htensor_id.htestlib.htypes.hvalidate.hwhile_context.hgrapplerclusterscluster.hutils.hvirtual_cluster.hcostsanalytical_cost_estimator.hcost_estimator.hgraph_memory.hgraph_properties.hop_context.hop_level_cost_estimator.hop_performance_data.pb.ccop_performance_data.pb.hutils.hvirtual_placer.hvirtual_scheduler.hdevices.hgraph_topology_view.hgraph_view.hgrappler_item.hmutable_graph_view.hop_types.hoptimizersarithmetic_optimizer.hauto_mixed_precision.hauto_mixed_precision_lists.hauto_parallel.hconstant_folding.hcustom_graph_optimizer.hcustom_graph_optimizer_registry.hdebug_stripper.hdependency_optimizer.hevaluation_utils.hfunction_api_info.hfunction_optimizer.hgeneric_layout_optimizer.hgeneric_layout_optimizer_transposer.hgeneric_layout_optimizer_transposer_factory.hgraph_optimizer.hgraph_optimizer_stage.himplementation_selector.hloop_optimizer.hmemory_optimizer.hmeta_optimizer.hmodel_pruner.hpin_to_host_optimizer.hremapper.hscoped_allocator_optimizer.hshape_optimizer.hstatic_schedule.hutilsutils.hcanonicalizer.hcolocation.hframe.hfunctions.hgraph_view.hgraph_view_internal.hsymbolic_shapes.htopological_sort.htpu.htransitive_fanin.htraversal.hverifiersgraph_verifier.hstructure_verifier.hkernelsboosted_treesboosted_trees.pb.ccboosted_trees.pb.hlibbfloat16bfloat16.hcorearena.hbitmap.hbits.hblocking_counter.hcoding.herror_codes.pb.ccerror_codes.pb.herrors.hnotification.hraw_coding.hrefcount.hstatus.hstatus_test_util.hstringpiece.hthreadpool.hthreadpool_interface.hthreadpool_options.hgtlarray_slice.hcleanup.hcompactptrset.hedit_distance.hflatmap.hflatrep.hflatset.hinlined_vector.hint_type.hiterator_range.hmanual_constructor.hmap_util.hoptional.hpriority_queue_util.hsubtlemap_traits.htop_n.hhashcrc32c.hhash.hhistogramhistogram.hioblock.hblock_builder.hbuffered_inputstream.hcompression.hformat.hinputbuffer.hinputstream_interface.hiterator.hpath.hproto_encode_helper.hrandom_inputstream.hrecord_reader.hrecord_writer.hsnappysnappy_inputbuffer.hsnappy_outputbuffer.htable.htable_builder.htable_options.htwo_level_iterator.hzlib_compression_options.hzlib_inputstream.hzlib_outputbuffer.hmathmath_util.hmonitoringcollected_metrics.hcollection_registry.hcounter.hgauge.hmetric_def.hmobile_counter.hmobile_gauge.hmobile_sampler.hsampler.hrandomdistribution_sampler.hexact_uniform_int.hphilox_random.hphilox_random_test_utils.hrandom.hrandom_distributions.hsimple_philox.hweighted_picker.hstringsbase64.hnumbers.hordered_code.hproto_serialization.hproto_text_util.hscanner.hstr_util.hstrcat.hstringprintf.hwavwav_io.hplatformabi.hannotation.hbyte_order.hcloudauth_provider.hcompute_engine_metadata_client.hcompute_engine_zone_provider.hcurl_http_request.hexpiring_lru_cache.hfile_block_cache.hgcs_dns_cache.hgcs_file_system.hgcs_throttle.hgoogle_auth_provider.hhttp_request.hoauth_client.hram_file_block_cache.hretrying_file_system.hretrying_utils.htime_util.hzone_provider.hcontext.hcord.hcpu_feature_guard.hcpu_info.hcuda.hcuda_libdevice_path.hdefaultcontext.hcord.hdynamic_annotations.hintegral_types.hlogging.hmutex.hmutex_data.hnotification.hposix_file_system.hstacktrace.hstrong_hash.hsubprocess.htracing_impl.hunbounded_work_queue.hdemangle.hdenormal.hdynamic_annotations.henv.henv_time.herror.hfile_statistics.hfile_system.hfile_system_helper.hfingerprint.hgrpc_services.hhadoophadoop_file_system.hhost_info.hhuman_readable_json.hinit_main.hload_library.hlogger.hlogging.hmacros.hmem.hmonitoring.hmutex.hnet.hnotification.hnull_file_system.hnuma.hnumbers.hplatform.hplatform_strings.hplatform_strings_computed.hprefetch.hprofile_utilsandroid_armv7a_cpu_utils_helper.hclock_cycle_profiler.hcpu_utils.hi_cpu_utils_helper.hprotobuf.hprotobuf_compiler.hprotobuf_internal.hregexp.hrocm.hrocm_rocdl_path.hscanner.hsetround.hsnappy.hstacktrace.hstacktrace_handler.hstr_util.hstrcat.hstream_executor.hstream_executor_no_cuda.hstringpiece.hstringprintf.hstrong_hash.hsubprocess.htensor_coding.htest.htest_benchmark.hthread_annotations.hthreadpool.hthreadpool_interface.hthreadpool_options.htracing.htstring.htypes.hunbounded_work_queue.hprofilerop_profile.pb.ccop_profile.pb.hprofile.pb.ccprofile.pb.hprofiler_analysis.pb.ccprofiler_analysis.pb.hprofiler_service.pb.ccprofiler_service.pb.hprofiler_service_monitor_result.pb.ccprofiler_service_monitor_result.pb.hprotobufop_metrics.pb.ccop_metrics.pb.hop_stats.pb.ccop_stats.pb.htfprof_log.pb.cctfprof_log.pb.htfprof_options.pb.cctfprof_options.pb.htfprof_output.pb.cctfprof_output.pb.hprotobufautotuning.pb.ccautotuning.pb.hbfc_memory_map.pb.ccbfc_memory_map.pb.hcluster.pb.cccluster.pb.hconfig.pb.ccconfig.pb.hcontrol_flow.pb.cccontrol_flow.pb.hconv_autotuning.pb.ccconv_autotuning.pb.hcritical_section.pb.cccritical_section.pb.hdataexperimentalsnapshot.pb.ccsnapshot.pb.hdebug.pb.ccdebug.pb.hdebug_event.pb.ccdebug_event.pb.hdevice_properties.pb.ccdevice_properties.pb.heager_service.pb.cceager_service.pb.herror_codes.pb.ccerror_codes.pb.hgraph_debug_info.pb.ccgraph_debug_info.pb.hmaster.pb.ccmaster.pb.hmaster_service.pb.ccmaster_service.pb.hmeta_graph.pb.ccmeta_graph.pb.hnamed_tensor.pb.ccnamed_tensor.pb.hqueue_runner.pb.ccqueue_runner.pb.hremote_tensor_handle.pb.ccremote_tensor_handle.pb.hreplay_log.pb.ccreplay_log.pb.hrewriter_config.pb.ccrewriter_config.pb.hsaved_model.pb.ccsaved_model.pb.hsaved_object_graph.pb.ccsaved_object_graph.pb.hsaver.pb.ccsaver.pb.hstruct.pb.ccstruct.pb.htensor_bundle.pb.cctensor_bundle.pb.htensorflow_server.pb.cctensorflow_server.pb.htpucompilation_result.pb.cccompilation_result.pb.hcompile_metadata.pb.cccompile_metadata.pb.hdynamic_padding.pb.ccdynamic_padding.pb.hoptimization_parameters.pb.ccoptimization_parameters.pb.htopology.pb.cctopology.pb.htpu_embedding_configuration.pb.cctpu_embedding_configuration.pb.htpu_embedding_output_layout.pb.cctpu_embedding_output_layout.pb.htrace_events.pb.cctrace_events.pb.htrackable_object_graph.pb.cctrackable_object_graph.pb.htransport_options.pb.cctransport_options.pb.hverifier_config.pb.ccverifier_config.pb.hworker.pb.ccworker.pb.hworker_service.pb.ccworker_service.pb.hpublicsession.hsession_options.hversion.hutilactivation_mode.hbatch_util.hbcast.hcommand_line_flags.hdebug_events_writer.hdevice_name_utils.hdump_graph.heinsum_op_util.henv_var.hequal_graph_def.hevent.pb.ccevent.pb.hevents_writer.hexample_proto_fast_parsing.hexample_proto_fast_parsing_test.pb.ccexample_proto_fast_parsing_test.pb.hexample_proto_helper.hexec_on_stall.hgpu_cuda_alias.hgpu_device_functions.hgpu_kernel_helper.hgpu_launch_config.hguarded_philox_random.hmatmul_autotune.hmatmul_bcast.hmemmapped_file_system.hmemmapped_file_system.pb.ccmemmapped_file_system.pb.hmemmapped_file_system_writer.hmirror_pad_mode.hmkl_util.hoverflow.hpadding.hpermutation_input_iterator.hpermutation_output_iterator.hport.hpresized_cuckoo_map.hptr_util.hreffed_status_callback.hsaved_tensor_slice.pb.ccsaved_tensor_slice.pb.hsaved_tensor_slice_util.hsparsedim_comparator.hgroup_iterator.hsparse_tensor.hstat_summarizer.hstat_summarizer_options.hstats_calculator.hstream_executor_util.hstrided_slice_op.htensor_format.htensor_ops_util.htensor_slice_reader.htensor_slice_reader_cache.htensor_slice_set.htensor_slice_util.htensor_slice_writer.htest_log.pb.cctest_log.pb.htransform_output_iterator.huse_cudnn.hutil.hwork_sharder.hxla_config_registry.hincludeexternaleigen_archiveCOPYING.MPL2litetocologgingtoco_conversion_log.pb.cctoco_conversion_log.pb.hmodel_flags.pb.ccmodel_flags.pb.htoco_flags.pb.cctoco_flags.pb.htypes.pb.cctypes.pb.htoolsevaluationprotoevaluation_config.pb.ccevaluation_config.pb.hevaluation_stages.pb.ccevaluation_stages.pb.hpythonframeworkcpp_shape_inference.pb.cccpp_shape_inference.pb.hkernel_testsprototest_example.pb.cctest_example.pb.htputensor_tracer.pb.cctensor_tracer.pb.htrainingcheckpoint_state.pb.cccheckpoint_state.pb.hutilprotobufcompare_test.pb.cccompare_test.pb.hstream_executorallocator_stats.hblas.hcudacuda_platform_id.hdevice_description.hdevice_memory.hdevice_memory_allocator.hdevice_options.hdnn.hdnn.pb.ccdnn.pb.hevent.hexecutor_cache.hfft.hgpu_launch_dim.hhosthost_platform_id.hhost_or_device_scalar.hkernel.hkernel_cache_config.hkernel_spec.hlaunch_dim.hlibarray_slice.hdemangle.henv.herror.hhuman_readable.hinitialize.hmathutil.hnumbers.hpath.hprocess_state.hstacktrace.hstatic_threadlocal.hstatus.hstatus_macros.hstatusor.hstatusor_internals.hthread_options.hthreadpool.hmodule_spec.hmulti_platform_manager.hplatformplatform.hdefaultdso_loader.hinitialize.hdso_loader.hinitialize.hlogging.hplatform.hport.hthread_annotations.hplugin.hplugin_registry.hrng.hrocmrocm_platform_id.hscratch_allocator.hshared_memory_config.hstream.hstream_executor.hstream_executor_internal.hstream_executor_pimpl.htemporary_device_memory.htemporary_memory_manager.htimer.htrace_listener.htoolsapilibapi_objects.pb.ccapi_objects.pb.hproto_texttest.pb.cctest.pb.hthird_partyeigen3EigenCholeskyCoreEigenvaluesLUOrderingMethodsQRSVDSparseCholeskySparseCoreLICENSEunsupportedEigenCXX11FixedPointTensorThreadPoolsrcFixedPointFixedPointTypes.hMatMatProduct.hMatMatProductAVX2.hMatMatProductNEON.hMatVecProduct.hPacketMathAVX2.hPacketMathAVX512.hTypeCastingAVX2.hTypeCastingAVX512.hMatrixFunctionsSpecialFunctionslibtensorflow.solibtensorflow_cc.solibtensorflow_framework.soincludeEigenCholeskyCholmodSupportCoreDenseEigenEigenvaluesGeometryHouseholderIterativeLinearSolversJacobiKLUSupportLUMetisSupportOrderingMethodsPaStiXSupportPardisoSupportQRQtAlignedMallocSPQRSupportSVDSparseSparseCholeskySparseCoreSparseLUSparseQRStdDequeStdListStdVectorSuperLUSupportUmfPackSupportsrcCholeskyLDLT.hLLT.hLLT_LAPACKE.hCholmodSupportCholmodSupport.hCoreArithmeticSequence.hArray.hArrayBase.hArrayWrapper.hAssign.hAssignEvaluator.hAssign_MKL.hBandMatrix.hBlock.hBooleanRedux.hCommaInitializer.hConditionEstimator.hCoreEvaluators.hCoreIterators.hCwiseBinaryOp.hCwiseNullaryOp.hCwiseTernaryOp.hCwiseUnaryOp.hCwiseUnaryView.hDenseBase.hDenseCoeffsBase.hDenseStorage.hDiagonal.hDiagonalMatrix.hDiagonalProduct.hDot.hEigenBase.hForceAlignedAccess.hFuzzy.hGeneralProduct.hGenericPacketMath.hGlobalFunctions.hIO.hIndexedView.hInverse.hMap.hMapBase.hMathFunctions.hMathFunctionsImpl.hMatrix.hMatrixBase.hNestByValue.hNoAlias.hNumTraits.hPartialReduxEvaluator.hPermutationMatrix.hPlainObjectBase.hProduct.hProductEvaluators.hRandom.hRedux.hRef.hReplicate.hReshaped.hReturnByValue.hReverse.hSelect.hSelfAdjointView.hSelfCwiseBinaryOp.hSolve.hSolveTriangular.hSolverBase.hStableNorm.hStlIterators.hStride.hSwap.hTranspose.hTranspositions.hTriangularMatrix.hVectorBlock.hVectorwiseOp.hVisitor.harchAVXComplex.hMathFunctions.hPacketMath.hTypeCasting.hAVX512Complex.hMathFunctions.hPacketMath.hTypeCasting.hAltiVecComplex.hMathFunctions.hPacketMath.hCUDAComplex.hDefaultConjHelper.hGenericPacketMathFunctions.hGenericPacketMathFunctionsFwd.hHalf.hSettings.hTypeCasting.hGPUMathFunctions.hPacketMath.hTypeCasting.hHIPhccmath_constants.hMSAComplex.hMathFunctions.hPacketMath.hNEONComplex.hMathFunctions.hPacketMath.hTypeCasting.hSSEComplex.hMathFunctions.hPacketMath.hTypeCasting.hSYCLInteropHeaders.hMathFunctions.hPacketMath.hSyclMemoryModel.hTypeCasting.hZVectorComplex.hMathFunctions.hPacketMath.hfunctorsAssignmentFunctors.hBinaryFunctors.hNullaryFunctors.hStlFunctors.hTernaryFunctors.hUnaryFunctors.hproductsGeneralBlockPanelKernel.hGeneralMatrixMatrix.hGeneralMatrixMatrixTriangular.hGeneralMatrixMatrixTriangular_BLAS.hGeneralMatrixMatrix_BLAS.hGeneralMatrixVector.hGeneralMatrixVector_BLAS.hParallelizer.hSelfadjointMatrixMatrix.hSelfadjointMatrixMatrix_BLAS.hSelfadjointMatrixVector.hSelfadjointMatrixVector_BLAS.hSelfadjointProduct.hSelfadjointRank2Update.hTriangularMatrixMatrix.hTriangularMatrixMatrix_BLAS.hTriangularMatrixVector.hTriangularMatrixVector_BLAS.hTriangularSolverMatrix.hTriangularSolverMatrix_BLAS.hTriangularSolverVector.hutilBlasUtil.hConfigureVectorization.hConstants.hDisableStupidWarnings.hForwardDeclarations.hIndexedViewHelper.hIntegralConstant.hMKL_support.hMacros.hMemory.hMeta.hReenableStupidWarnings.hReshapedHelper.hStaticAssert.hSymbolicIndex.hXprHelper.hEigenvaluesComplexEigenSolver.hComplexSchur.hComplexSchur_LAPACKE.hEigenSolver.hGeneralizedEigenSolver.hGeneralizedSelfAdjointEigenSolver.hHessenbergDecomposition.hMatrixBaseEigenvalues.hRealQZ.hRealSchur.hRealSchur_LAPACKE.hSelfAdjointEigenSolver.hSelfAdjointEigenSolver_LAPACKE.hTridiagonalization.hGeometryAlignedBox.hAngleAxis.hEulerAngles.hHomogeneous.hHyperplane.hOrthoMethods.hParametrizedLine.hQuaternion.hRotation2D.hRotationBase.hScaling.hTransform.hTranslation.hUmeyama.harchGeometry_SSE.hHouseholderBlockHouseholder.hHouseholder.hHouseholderSequence.hIterativeLinearSolversBasicPreconditioners.hBiCGSTAB.hConjugateGradient.hIncompleteCholesky.hIncompleteLUT.hIterativeSolverBase.hLeastSquareConjugateGradient.hSolveWithGuess.hJacobiJacobi.hKLUSupportKLUSupport.hLUDeterminant.hFullPivLU.hInverseImpl.hPartialPivLU.hPartialPivLU_LAPACKE.harchInverse_SSE.hMetisSupportMetisSupport.hOrderingMethodsAmd.hEigen_Colamd.hOrdering.hPaStiXSupportPaStiXSupport.hPardisoSupportPardisoSupport.hQRColPivHouseholderQR.hColPivHouseholderQR_LAPACKE.hCompleteOrthogonalDecomposition.hFullPivHouseholderQR.hHouseholderQR.hHouseholderQR_LAPACKE.hSPQRSupportSuiteSparseQRSupport.hSVDBDCSVD.hJacobiSVD.hJacobiSVD_LAPACKE.hSVDBase.hUpperBidiagonalization.hSparseCholeskySimplicialCholesky.hSimplicialCholesky_impl.hSparseCoreAmbiVector.hCompressedStorage.hConservativeSparseSparseProduct.hMappedSparseMatrix.hSparseAssign.hSparseBlock.hSparseColEtree.hSparseCompressedBase.hSparseCwiseBinaryOp.hSparseCwiseUnaryOp.hSparseDenseProduct.hSparseDiagonalProduct.hSparseDot.hSparseFuzzy.hSparseMap.hSparseMatrix.hSparseMatrixBase.hSparsePermutation.hSparseProduct.hSparseRedux.hSparseRef.hSparseSelfAdjointView.hSparseSolverBase.hSparseSparseProductWithPruning.hSparseTranspose.hSparseTriangularView.hSparseUtil.hSparseVector.hSparseView.hTriangularSolver.hSparseLUSparseLU.hSparseLUImpl.hSparseLU_Memory.hSparseLU_Structs.hSparseLU_SupernodalMatrix.hSparseLU_Utils.hSparseLU_column_bmod.hSparseLU_column_dfs.hSparseLU_copy_to_ucol.hSparseLU_gemm_kernel.hSparseLU_heap_relax_snode.hSparseLU_kernel_bmod.hSparseLU_panel_bmod.hSparseLU_panel_dfs.hSparseLU_pivotL.hSparseLU_pruneL.hSparseLU_relax_snode.hSparseQRSparseQR.hStlSupportStdDeque.hStdList.hStdVector.hdetails.hSuperLUSupportSuperLUSupport.hUmfPackSupportUmfPackSupport.hmiscImage.hKernel.hRealSvd2x2.hblas.hlapack.hlapacke.hlapacke_mangling.hpluginsArrayCwiseBinaryOps.hArrayCwiseUnaryOps.hBlockMethods.hCommonCwiseBinaryOps.hCommonCwiseUnaryOps.hIndexedViewMethods.hMatrixCwiseBinaryOps.hMatrixCwiseUnaryOps.hReshapedMethods.habslalgorithmalgorithm.hcontainer.hbaseattributes.hcall_once.hcasts.hconfig.hconst_init.hdynamic_annotations.hinternalatomic_hook.hbits.hcycleclock.hdirect_mmap.hendian.hhide_ptr.hidentity.hinline_variable.hinvoke.hlow_level_alloc.hlow_level_scheduling.hper_thread_tls.hraw_logging.hscheduling_mode.hspinlock.hspinlock_akaros.incspinlock_linux.incspinlock_posix.incspinlock_wait.hspinlock_win32.incsysinfo.hthread_annotations.hthread_identity.hthrow_delegate.htsan_mutex_interface.hunaligned_access.hunscaledcycleclock.hlog_severity.hmacros.hoptimization.hpolicy_checks.hport.hthread_annotations.hcontainerfixed_array.hflat_hash_map.hflat_hash_set.hinlined_vector.hinternalcommon.hcompressed_tuple.hcontainer_memory.hhash_function_defaults.hhash_policy_traits.hhashtable_debug_hooks.hhashtablez_sampler.hhave_sse.hinlined_vector.hlayout.hraw_hash_map.hraw_hash_set.hdebugginginternaladdress_is_readable.hdemangle.helf_mem_image.hstacktrace_aarch64-inl.incstacktrace_arm-inl.incstacktrace_config.hstacktrace_generic-inl.incstacktrace_powerpc-inl.incstacktrace_unimplemented-inl.incstacktrace_win32-inl.incstacktrace_x86-inl.incsymbolize.hvdso_support.hstacktrace.hsymbolize.hsymbolize_elf.incsymbolize_unimplemented.incsymbolize_win32.inchashhash.hinternalcity.hhash.hmemorymemory.hmetatype_traits.hnumericint128.hint128_have_intrinsic.incint128_no_intrinsic.incstringsascii.hcharconv.hescaping.hinternalchar_map.hcharconv_bigint.hcharconv_parse.hmemutil.hostringstream.hresize_uninitialized.hstl_type_traits.hstr_formatarg.hbind.hchecker.hextension.hfloat_conversion.houtput.hparser.hstr_join_internal.hstr_split_internal.hutf8.hmatch.hnumbers.hstr_cat.hstr_format.hstr_join.hstr_replace.hstr_split.hstring_view.hstrip.hsubstitute.hsynchronizationbarrier.hblocking_counter.hinternalcreate_thread_identity.hgraphcycles.hkernel_timeout.hmutex_nonprod.incper_thread_sem.hwaiter.hmutex.hnotification.htimecivil_time.hclock.hinternalcctzincludecctzcivil_time.hcivil_time_detail.htime_zone.hzone_info_source.hsrctime_zone_fixed.htime_zone_if.htime_zone_impl.htime_zone_info.htime_zone_libc.htime_zone_posix.htzfile.hget_current_time_chrono.incget_current_time_posix.inctime.htypesbad_optional_access.hbad_variant_access.hinternaloptional.hspan.hvariant.hoptional.hspan.hvariant.hutilityutility.hexternalarm_neon_2_x86_sseLICENSEcom_google_abslLICENSEcom_google_protobufgoogleprotobufany.pb.hany.protoarena.hcompilerimporter.hdescriptor.hdescriptor.pb.hdescriptor.protoduration.pb.hduration.protodynamic_message.hempty.pb.hempty.protofield_mask.pb.hfield_mask.protoiocoded_stream.hzero_copy_stream.hzero_copy_stream_impl_lite.hmap.hport_def.increpeated_field.htext_format.htimestamp.pb.htimestamp.protoutiljson_util.htype_resolver_util.hwrappers.pb.hwrappers.protoeigen_archiveCOPYING.MPL2farmhash_archiveCOPYINGsrcfarmhash.hfft2dfft2dreadme2d.txtgemmlowpLICENSEhighwayhashLICENSEhighwayhasharch_specific.hcompiler_specific.hendianess.hsip_hash.hstate_helpers.hkissfftCOPYINGlocal_config_cudacudacudacuda_config.hlocal_config_mlirLICENSE.TXTlocal_config_syclsyclLICENSE.textincludejsonallocator.hassertions.hautolink.hconfig.hfeatures.hforwards.hjson.hjson_features.hreader.hvalue.hversion.hwriter.hunsupportedEigenCXX11CMakeLists.txtTensorTensorSymmetryThreadPoolsrcTensorREADME.mdTensor.hTensorArgMax.hTensorAssign.hTensorBase.hTensorBlock.hTensorBlockV2.hTensorBroadcasting.hTensorChipping.hTensorConcatenation.hTensorContraction.hTensorContractionBlocking.hTensorContractionCuda.hTensorContractionGpu.hTensorContractionMapper.hTensorContractionSycl.hTensorContractionThreadPool.hTensorConversion.hTensorConvolution.hTensorConvolutionSycl.hTensorCostModel.hTensorCustomOp.hTensorDevice.hTensorDeviceCuda.hTensorDeviceDefault.hTensorDeviceGpu.hTensorDeviceSycl.hTensorDeviceThreadPool.hTensorDimensionList.hTensorDimensions.hTensorEvalTo.hTensorEvaluator.hTensorExecutor.hTensorExpr.hTensorFFT.hTensorFixedSize.hTensorForcedEval.hTensorForwardDeclarations.hTensorFunctors.hTensorGenerator.hTensorGlobalFunctions.hTensorGpuHipCudaDefines.hTensorGpuHipCudaUndefines.hTensorIO.hTensorImagePatch.hTensorIndexList.hTensorInflation.hTensorInitializer.hTensorIntDiv.hTensorLayoutSwap.hTensorMacros.hTensorMap.hTensorMeta.hTensorMorphing.hTensorPadding.hTensorPatch.hTensorRandom.hTensorReduction.hTensorReductionCuda.hTensorReductionGpu.hTensorReductionSycl.hTensorRef.hTensorReverse.hTensorScan.hTensorScanSycl.hTensorShuffling.hTensorStorage.hTensorStriding.hTensorTrace.hTensorTraits.hTensorUInt128.hTensorVolumePatch.hTensorSymmetryDynamicSymmetry.hStaticSymmetry.hSymmetry.hutilTemplateGroupTheory.hThreadPoolBarrier.hEventCount.hNonBlockingThreadPool.hRunQueue.hThreadCancel.hThreadEnvironment.hThreadLocal.hThreadPoolInterface.hThreadYield.hutilCXX11Meta.hCXX11Workarounds.hEmulateArray.hMaxSizeVector.hFFTKroneckerProductMatrixFunctionsSpecialFunctionssrcFFTei_fftw_impl.hei_kissfft_impl.hKroneckerProductKroneckerTensorProduct.hMatrixFunctionsMatrixExponential.hMatrixFunction.hMatrixLogarithm.hMatrixPower.hMatrixSquareRoot.hStemFunction.hSpecialFunctionsBesselFunctionsArrayAPI.hBesselFunctionsFunctors.hBesselFunctionsHalf.hBesselFunctionsImpl.hBesselFunctionsPacketMath.hHipVectorCompatibility.hSpecialFunctionsArrayAPI.hSpecialFunctionsFunctors.hSpecialFunctionsHalf.hSpecialFunctionsImpl.hSpecialFunctionsPacketMath.harchGPUGpuSpecialFunctions.h/usr/include//usr/include/tensorflow//usr/include/tensorflow/c//usr/include/tensorflow/c/eager//usr/lib/python3.6/site-packages/tensorflow_core//usr/lib/python3.6/site-packages/tensorflow_core/include//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/jit//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/mlir//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/mlir/lite//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/mlir/lite/quantization//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/tf2tensorrt//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/tf2tensorrt/utils//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/tf2xla//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/xla//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/xla/rpc//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/xla/service//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/xla/service/gpu//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/compiler/xrt//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/common_runtime//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/common_runtime/gpu//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/debug//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/example//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/framework//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/graph//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler/clusters//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler/costs//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler/optimizers//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler/utils//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/grappler/verifiers//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/kernels//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/kernels/boosted_trees//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/bfloat16//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/core//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/gtl//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/gtl/subtle//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/hash//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/histogram//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/io//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/io/snappy//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/math//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/monitoring//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/random//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/strings//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/wav//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/platform//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/platform/cloud//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/platform/default//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/platform/hadoop//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/platform/profile_utils//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/profiler//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/profiler/protobuf//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/protobuf//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/protobuf/data//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/protobuf/data/experimental//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/protobuf/tpu//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/public//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/util//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/util/sparse//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/include//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/include/external//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/include/external/eigen_archive//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite/toco//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite/toco/logging//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite/tools//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite/tools/evaluation//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/lite/tools/evaluation/proto//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/framework//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/kernel_tests//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/kernel_tests/proto//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/tpu//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/training//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/util//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/python/util/protobuf//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/cuda//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/host//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/lib//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/platform//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/platform/default//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/stream_executor/rocm//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/tools//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/tools/api//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/tools/api/lib//usr/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/tools/proto_text//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/Eigen//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/unsupported//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/unsupported/Eigen//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/unsupported/Eigen/CXX11//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/unsupported/Eigen/CXX11/src//usr/lib/python3.6/site-packages/tensorflow_core/include/third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint//usr/lib64//usr/lib64/python3.6/site-packages/tensorflow_core//usr/lib64/python3.6/site-packages/tensorflow_core/include//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Cholesky//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/CholmodSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/AVX//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/AVX512//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/AltiVec//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/CUDA//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/Default//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/GPU//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/HIP//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/HIP/hcc//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/MSA//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/NEON//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/SSE//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/SYCL//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/arch/ZVector//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/functors//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/products//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Core/util//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Eigenvalues//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Geometry//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Geometry/arch//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Householder//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/IterativeLinearSolvers//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/Jacobi//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/KLUSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/LU//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/LU/arch//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/MetisSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/OrderingMethods//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/PaStiXSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/PardisoSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/QR//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SPQRSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SVD//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SparseCholesky//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SparseCore//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SparseLU//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SparseQR//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/StlSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/SuperLUSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/UmfPackSupport//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/misc//usr/lib64/python3.6/site-packages/tensorflow_core/include/Eigen/src/plugins//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/algorithm//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/base//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/base/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/container//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/container/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/debugging//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/debugging/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/hash//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/hash/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/memory//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/meta//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/numeric//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/strings//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/strings/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/strings/internal/str_format//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/synchronization//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/synchronization/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time/internal/cctz//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time/internal/cctz/include//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time/internal/cctz/include/cctz//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/time/internal/cctz/src//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/types//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/types/internal//usr/lib64/python3.6/site-packages/tensorflow_core/include/absl/utility//usr/lib64/python3.6/site-packages/tensorflow_core/include/external//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/arm_neon_2_x86_sse//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_absl//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf/google//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf/google/protobuf//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf/google/protobuf/compiler//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf/google/protobuf/io//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/com_google_protobuf/google/protobuf/util//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/eigen_archive//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/farmhash_archive//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/farmhash_archive/src//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/fft2d//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/fft2d/fft2d//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/gemmlowp//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/highwayhash//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/highwayhash/highwayhash//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/kissfft//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_cuda//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_cuda/cuda//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_cuda/cuda/cuda//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_mlir//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_sycl//usr/lib64/python3.6/site-packages/tensorflow_core/include/external/local_config_sycl/sycl//usr/lib64/python3.6/site-packages/tensorflow_core/include/include//usr/lib64/python3.6/site-packages/tensorflow_core/include/include/json//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src/Tensor//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src/TensorSymmetry//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src/TensorSymmetry/util//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src/ThreadPool//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/CXX11/src/util//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/FFT//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/KroneckerProduct//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/MatrixFunctions//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/SpecialFunctions//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/SpecialFunctions/arch//usr/lib64/python3.6/site-packages/tensorflow_core/include/unsupported/Eigen/src/SpecialFunctions/arch/GPU/-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.opensuse.org/openSUSE:Maintenance:14606/openSUSE_Leap_15.2_Update/78617dbd80aee00f24a12e97d56242ea-tensorflow2.openSUSE_Leap_15.2_Update:standarddrpmxz5x86_64-suse-linux      directoryC source, ASCII textC++ source, ASCII textC++ source, ASCII text, with very long linesASCII textC++ source, UTF-8 Unicode textC source, ASCII text, with no line terminatorsC source, UTF-8 Unicode textC source, ASCII text, with very long linesC++ source, UTF-8 Unicode text, with very long linesHTML document, ASCII textUTF-8 Unicode textLaTeX document, ASCII text笌TS0Eutf-80c9274ed8970929ab22da9a2689c8ba41232486fcc2f97521623078b4c4c1776? 7zXZ !t/D]"k%n@=}bQ+98 &ϒx d^95`sgɵ2kvLy9- ի?9s>m=8\sVw3}-ؕ)B$ΌY󠷹hتoǖBd ]$ͩVnr8|I3+)4+ ࣋f 0BDz"$4C$~P/?&W<`΁.cz\Үkk, "{t(EhN1ƒ, ]6(i}x"gfsS|FʭaV}@QKfVt/JmpV+E=uƗh9+=۝Vlzk"e`z3~u_[m5ȶq>18!ro(+_Qr{LYPO#TZK>qRx D1jYF`dT fL +54N=Ŏ4@KC uVGL(A4b#fI%e޿+K"u8.GFf8C{^&IvmӤk=ZRE>G <P3<]U_Cl[zb B9d3;tKs5VUo^z}w]GR~ڋ]l•O1GDn9+P]b6E酰MT m18,% VN|fu[ UIJjߣY,%^~ͳ-JXȂI@2KGxLAcP;h*W*DBķUuXa t#.G?ӌVZ I}ӤׄBmSv{4c!IepikN*=CA s g5`0qe|ugǚmX[ :KBU*:He(Ӛdy^#U2b_Qab誨f]C=IEy/p(kwT> T8Pڍgs |Dv|&#A*L5J6gThiޘ#6O]edg;TΈP:`&'j.G4| @.Lt;6@w.z3sq |e%v=OKD-4VQ yt+,8պnv)\Y\3Ӷ!Ƥ0Np^P\|H:gi{F5=qL]m"Jɋ kKqeI ,10DpM],0 .}KeҀFIZs2}͂K}iw5:VJrRLu,DH wK *V , e.+ Bz ~;tM57t7+QG Ew\S[ Y1?J"QѧbǐxmN`lkZ_WY266mcv4P rIcz {CR-c)贕zL'T+ JsRdj1/ Batqn4z%ſ%2_%wbOå+G,I&4I Q,,nnxLeE'9̩I̘-ii(Qgj/y4r`_U2shxwZaWuo8,K=&TLƸ`PN5W)U/UJ}siFL稿 x,>)Dt?cqGHhQ9 R#?_$W!YU;|ާh]PUl~wRaS|OR쟎47`),ٮ}Eܟ ԌF+yC' uSS+YadL4Dt=y3awT`!&1F,GyZ$;/P.C.sgƣ=Z6Z̝G, GpϫϫM~Qzf|+vDEDUwrxÊ7sK*m;NBEoߘfLۃh:\q(5ft-AAuA|Z4b>jzO>8ͥ.e"cUT*j000i>dXnxV~mr5p|ߟ/TBvkh+6h^{N @`ߟSFH5&߲9YI{)L}aqsxt*Qы-!>.YH]H͝k0ilWpkE2í[d0{m;X܀43 G8t*u ȗ&2x 30)ETܒ&9R-%F1LvD}ύZZ<ٝs6Z&LDZ!Oqd\`]KNF˓LXH7Sq4ͱ\ !Ɓ$oW~afOU/%7ף#ll _-H+1KFO&Z\fߡ|g'苆bO!w=!)U}{1?/P`Ix̐L ,@È־R/tڝC(IX6#bB%ǃK@|I#SUY,էJyQqTĝ&ya)Z43kt4DՁN A;⦦@q^Yg|T^|p,I1ȷy_AoCSGٵ@ =CMe@;Azh3 D)uҊ2Fire<cEKqNEA,Y:#R,R"DTTqJ8F QQ$.%?Tfj$؎쇵hPJmqSh{R/b"5]6&T%[t,oނygf)x7%]7mSelQ: 8b`ud?T2*hCݞǛxR8[;'Ryzzb!ڿrpy/et,S89qۀFT\b`TYLꏶ y4XFLY*b(p. WioOCAVI, EgU6_H0Nr5||iɻ, --N^oĻa}FEo7dt]ܔWs,YqCIUC,k龐TA]=Yue~:Mi 锯 M tVުc%݉i[ttE%d_3,WD2Ot Aމn:˼WrXjJ7΋YǟqI%1νWB:9 ϮޜѪeo*$r{ l `H"uh |j5W@;U (nuh>p}w q eDҺ^< $̰/xG5?㟎 Uv)795uGq}`:Ef/Jl-i.A*.3nbPxirⶂ$:0ڪ|Q<8$B2^D|z<5Y2{QD迣r'5NUhkܙdWLq" H3SGtn"0дEZM8iPoҹ #% N@M/QؚC8D1>2G>r,ԁ c.q Nz$R,캡l+ gHw+pWk<Ш#Tg\ ?$i;n "1ʺ_j8s˾[L~CA}}񙓰 RowE*!#{)1r2tb[j ߅+ڔV: 6!hK6p a_zEE ׭zoԽ.lzPR6d$$ڡq `,,ꎊx߄g*fӌDfl[#sf[#iW271I D5/BWP1Vgԇ)|c.R |R:lH z}9T$Z},w7f~ܷU^MsvK|S 4y]D\v k61VD0[.kUJt|5/﹍x, ?Z,C mnZh?+^ Á2Y,-:,tH"a4lp*e$F# 1)%[V _oZuDiֈ,ӳ36N LChgB D-cV=FtƴOM$nbrfՅ:{?]L`ٚ?SO3ζ46kRcrg+Ү7+KrOF$Iip?[Gΰ-% 3!Bp'FWl}X>@ȹ":| an,wD$Sn~ȫ:DpI%Jtd\#C_w`vϦl;v$~ZxO1eҷ5}u Z8.+|莥ʪ$6o64{Μ^Kx`vkf XTtf=%V \Ϫ } ˞+{JFu:tdYj6a>a둳j>N kP@#UG~x[ LQi->t,RNz,FDD^!x/8_8nG%9wMOz".6$Y-=[A#`X'FMۙy#pA#x2KB+&Q7ߛҥN[tg}\rr/ fn@̋G8-ӈ@(8|l7z&x0iV mة_ I"054,]҈7'7 *o_1?N6OfB#,M~t/:uxNe*zٽXYZT@[:*bs WBokɳt̔|..Փ!G1Z]lS.Kyo"7PlggJ@6СSccw!fbr9P1( h Y.Zͷ˼H%ز$Wg:8 N{hQ4Bpxˮ/<3[Xu ^!V<&>K9Aljf~luT,VQ[9̀Sh^S JT\%7,UQd\uL\rFru?_M8ڴٖަ.GX.s@B0 [%3_C 4+)a|.X4} R , R.e& w-oWa  j?a^Z,ɝ[<כȫt_s<:gw|ѼWF|$Fhߩ)4,ﹼuԪBd0--P3/`D4\QݙM} w#Y>ZY]UZ&]X9o oq[Ob\ItpiP YY=x~XQ/A. G# -E7 &R:S]E%r^=FK 9u.![OhTsrr5.G5?2/0)fYe-7bO.+) Iu:x%.F~sC"vnimǥ1oax'XËbޡ OGћ7SRӭX{t@r'(Faɕ񨐻0u)SΈT!tȝ/9az߇BUS؏Sjhf?xðI ,W9'b&51`!ZS UXgѮm?9% >:O K+LԮ1eBJ~Kb[^GU?_Q ! %oژƁ=`Ux?c DBȬLGDasBȋDPYMhR8?̔RI~cTC4FŻ/\!! ~''3_al7FԶP[ +Бi+;,}w١U2Z :J1G)K4fR0 wl"0if 6|:דt""6]opfAq!ILB$W'pdE5` WO}qN<֥GKV~9([13# zpx˾6o6Br)Mf_@ ſ%pwUM܉­w8lhut~A}NEuxz/@,7"ȵI٨5&?\Q&&$w\H2euJ+M`GG5]d;ٓwdS|T5YY7߯+bw E*0F`r1fLb |2Ϭ*f1mq32~keM⎾)Vj )>VtiB;RTն.Ѓ E҉]Ir{hQj vV)P2ErŞ͠'ӂ5ewHoW`f\̚x*/08sYOZ[I]wCmӷŽFW;'hϷ>/_n`vhCG$qBnnO4سдw/quiU>$F9g>̃Cg?Kz;SM[օ4_"LRa:б}j& P{đ zD*E +ɛ6fdR˦]A>Q2}.VF#B rh02RS>D|QzY_"cRB_TV1rA'(,7͌_7u0}CD`)wcG!?UHAvCvQ¯bp%YYԉ\xOSd _ yOL( nLj-z+5OL뽯 I&iܶrC{z?Iu*8_'ʙLM=7b^iIViJ!EjIgmP&-~-'̈+ޙ7f~ѣ;J"~ï\YDէX0m13#O#y}Y38}Jw̮#0GiOKhw1RlBj꾗>Pƽ(})ŦJZ0 Mܭk}x߿{)yڄ'^?E7êǩfnJI]^?&—Ip2NflY^|\LRL d}#aS)>%HJy$;gK7?ǧX#ZKoU@_i>qn$K"F84)ib9V$L(g MZYwo$tⲺ_#5 dH,@)j6MtCF\n~WɄo@ 78NM %ŋj¯A9ЫձDi)L}.(.j&Zc钸#(p"%Zj[( MK0z <;oWǏ~|a<dFNfPyN51pCU^afg76285Zjt^:Y#}PpDoswz@x&WTv[{ߣ&d%h%lV(?lzG4y.qsC6cz*bF] (b[j4!s>{٪,ĖͳAx^vk".`ٯixȔpWIw!m8܄j\HD2;d' ?EAˆ !9@4v%4[J͛u Pu6QEiQ0ۓ`"pրtOd`B]SU1T]!Twv?BOdVdt8dhr %r!n :!:" S6CjY_KH /&MpRXK&[ X-Fl1MA)ٹfDHlggIT/[ ~6̈́e_DiCQd m / "ط+߷KݛCxUx`9\L"۬V W dJ)'U]+ei grG86[ti.QXDR[C1—Zli!c` \h Oe_L dfrJ\RK[/qPxۥ9tz oè\PƱb *]Q; &TפEƇra7],wk,Z+BP <_,=Hсv\A$꿽>= _FM) ^Ыua;6AdfpOFXGZT#sctdX_`U-ư |uPָh0j A? =`Hӄt=e:'#Ek$>:YW/XNbp;5v/9K id;VJ pw1Bei㖇fsgx"L<:F侊IZS% ~v ;a䀥 `d- ~O`{4K GH#/3S6F@acJi׉.R؜tLOB.a~49/F㐑@]Y[jWX!wɤpz?3p&ď҆3Qxc]x5'%enlL]b]} l= ސ#Hma?mza^Ƙ HlԿu]5fZ\:qu e< NTziea1cSU^M s!_xtN5OȟFUуM 6̑* > qS,  %FUe2ǧTiUryp 'Sz |盍f 0ȸ8[WIIQr0B^V ߕTge?_xp/k`.鵆#$}w(KGq7R05+Zn6hj 0|n eXp H TrFaBm9!tp7oI.kc+;_ѤO"Ui缕%\D@7KQ=N:[o191g=pˆ :Ln[.ShBM4 t+OLfSX\RY[K{=%z0tz<aGygLun}[:ETmISOXuTjc*蔞pwg(vU5ffeOLHr G7b ҺAԋ\@rPvTYBوZf/U;f.,4k? QyVFC3zտr)1RVÀod*~8F{)> b ziKn,PvQy )C w& `]j/jsЮ(@Id=讨I)+5Iz!ĕnJU.atnj>'LWWa?E ~_P6=[yC[&V-J4.X"')v)IR".3h]DXo!dӺ%gIX?i)SHwk% eH`:qCt?(vHV0Un$KdUA7V;NH({(O=JV`Gr4 葋\a[H.v?Y !*jק';t}&ajo4w}TI+tC Bk{vcPu"_3κO#"d"l w>S[:F}Gt1> 0cu~'޾G>i_6Dì`FGV ibJfU{IA=kN6ud)_,qu!\Gcb^|U4:QӳGl{I xonjRoN<5JסKRzޤf֖eF/{/1 _;ƒ+摲G )> clN=-BLn<5x[ƴEѨ'TT>=O8no b4a݋L9:,,lH'שyÖ*)t_&ݟM%$lKyvgB_*((Z M9̔qKƺ:Tb2 ZX(uw+rBGV76Ŀz ÔP;Y3Qu-$%h[VdAbj6ģK#V5l0mv BxF@ j̆˭/$)߂gifbE>LҙVL)Y =re'9Adɏf )3-[ ,"4O]0Ve/lAm(a܃* ]uWO*^! e:h4랫c)ٛo]tl2!Ù,URedϙ2Y0Ix<[e\F㉷30 )A π ֑t8<ю{h ۝,<Џe% @ocAV.wV*ŗN6tn D)(JgIsȴЂFԉ^&;At΍P{~³Xio%$<)ԃSLĶjiwq]rdrFɚU3דL-Wy6Rc8N"&Gd+]#*GX:&vj.(*vvbXY#}rlBu#ynj8C!~n@A,aihkO_ibu_^ (^h-Ah{>,FTOVޓ31uVc?D]:t(ىl>QsM@ƨ}yCdt.7Zo&<3~( X''0'pn!-K S80^ T+N֬K.hӥCHµߔ@ p/l\~wdd6 C21"q$NkY)׿Q"G7 y;|U")kQ)?q hs /{,\P SZdl"<>3ss/Y]Jzs'! h0tƠ7ܓgvkuѫ&!OĻwkV' ד(ױ zM2 :яdAV78wr"b՟u$N!d`qLp!v؏;YŴn"Oej^i9HI $!?6@i$ !^d.jxrR9~0qSHgz3&׭#wL=FsYktaJ:É!0i] M0N\L>IApq51?0caZTs*DEt MƫYsy;YL)7muow@Eqek +8(Nڣ(h8U+{:դ c~)#0>yDc4n2ҹwSw|r4XL#vh#Ӕ2^ʧ vxWky{ZCۋӿ@ Gs$WɆdfnmB2tL%Mz(%@km݅GWqfwHPj Tݜ-[ދh5;-sscoUηL&Z@U|A18i h )ʮՅ B6 >sa Ɔc:G4dRGSyˉ5U5)=acg~uh _z<2Q= 1i ҽÏ0̒ސ2d.ڸCvN3d[_ bz.wxO(|%/Hsd`՗ |f"Gw- 1{@#=-T͎o+wVD~vF=fkwji|M†s|,;QKj7Oڧ=mYb )z!)Ac#z2R[0öMfYٌP:Pu GpyVUdc@3]6l@A] q gI+EXW g-ީ2iKWW2C)7у]"9b>Tc >.,P3#t.G@ʽW 1zU1{1]jͻu'XVǵ8iJC>HZ^y7zfxst'X2c跩hS~NSJ"`C\PWȳB ]YB~ ە΋0y6{.Uѳ5TԐl{$L>[vDEkz]lFxU7O|cGrIՋj?s(jQpHwv|.LSC#.@g?2+ _řp$O Qt-`:OɼUd.z5&6ܸRhNqHU`|/[ڞthr={ݛ9UTLQfHb8%&#N,56YQ`V"~Uxol(7P/U1q7s)]̶)]BgEEq]\9,)4 ~2~N|c^U26MNRk[)c"yМ{'+Ӽ᫭JC kԯg{5^fM_/ƫJ{Z=QESgE8sXWh_U zt9c.7IX>dLDx/؀F䰝7`f@?SSM\ON̴| CY%mlq~mgu4" ' VҸ zE| DAYU1h8s~cѓOC$l/' "<%>'XVm;fغqt !ARi[0~hܦT!Amw69ĽY̤'DTwλ$N^*Jֵ'a?-Ee96ʢjp1`nTS`l!lSWyy&YjtiF$7񀻣WBW^Sc+`~D/V ,V0 Ԕ|P(0r!~ȱ`lLj⎉<ӛ3?":F0& ckqY֚*'؎i v͜3g+ՕR8߿^gg>+VKRxߗc'j5 -_)9W@M@UnCg2s`Ggㄛȇ VTвNa_Z}Ӂ" yUœb:. 3ˣy (dvHuD#ٕb^ZsԭӁ:=n"ռ\Ɲ%]kYBTAQWOm3&Q^êa9jB8NTS(/F`YKRAf_y3jjúZVhV-R].ȀUԈXnZOL8v #O͛;{cZ{qP9i`jq](9(o;okGDH:)cIPWӁD{ dVE>\ܿ״}T\ی^Z pHr@#Zw][C^Lo-f<5>Y9k2IS$[pg bi?!INS*VbTeL8z ,Lg8euw+=[@x D&,]a_, цr3Vvil(J W舌6 p%k>`[]X(H;_2h$W10K[L)H)֋=p(c>t1JK͆қfBaC貍\~0i$*V\g)E;T]4q_!}jMJObis:yWXK=!=Y3Y۲SAD&N>&sc^%8^aۡIǭ_D#Xu wυ2Π9hJBJ<b2oQ,ż z0WBq|jCKi\+swVhP S}C[v[:SX d7)5pv3g&~o?r!Hv"H 96o>X=M-EU_;`S~W[m& lhwd#֗<95?@O͐)ޒKS3{ SvBu\'emj %mjHPX`j]iah,:db?VLd+e4[[Y.@B5Xq2ϒaj%Ģ\h9. >?VP8!9G%tGrbOp=9DqV&zdSkE3~[@ZVn慄߃,y9UM$Rkczj龥+ڸ󜍕u$fX\(_ tG],=elhZUY*dWt}Y,Jq*Ds-n-H֡x/zD!u0;cşel!쿩KMR՜V6Yoȡx3 cd&JÙH'DE'.=tFgO /6<Ә^ڒgG1i3P)"vZpj`gbpYLn$60{Y#vTuv$>rd_Ӕ-pWOpy #a6/I4(vTgCjs:DϚ'wv\\g;n8ƤO%-5[xJ~ͽ.Y0%X)뗳 =Lס 99ߎST5gj_~wg7׎ź[2F6[DMed$6ySy[M o[FG".!z!ڕQLp,QdSpN f:w:s@4s4^]BsB?wEo= 25N]$ L)c$M8 0mcMv+W T&P6U<ywܽsşcm 0e١:" &QQ[C>[S2wIpuyƁUF~CdSKg~\T +=pBsTu,Pj$&^{`:w86@a+^{^7 c6P-mhD3`zOql OKe0GVo+} 5l+N!Q+Kw昪Ʒ)투ۗ(^xՌꃣSXhum'jIfwG6wab&3X|$I= Tm$!V4+.X?h$ :I&~'1*2K /c=C}<U=5i8Β.O9czmqaTxekKI fJC ɿ$Ta,-Y֧Kj%j"4 -I4@|G &B!YfȻeg/䬜=bNлa#WaK>׼Ʉ:8p0lU !#15ʢWFcOMB# ys.FDUWI{SrNWa(Wkώ?%w⸌u E\> @[QpaQU q?mUp7gs^#VD]Tr*ڥ(ji< 06߰rM&t'RWhe[,bdDT.`4ܧ\$?ඁ{9|ր%^ ђfk/R^7 Kڱ&~bu|^qBjq^lG_uf5@wv3QHQpٽaAGs5%$@REȜ"t (fw-0XD:: - 5tB}J͙&796K&Ss0aMM܆jHX EIcw  6S>C̄);wZkwi'GZ%y `6O 4oݘcZ-TRHs2GPYq,sD`Ö:8VnGh.w[9mVc[]L&EH#L2@[CYKg?Q0\Ok A`+voVMdص]FR<^@ ,݆oZoipsXܵkƅ):zk9dQ,W]pxgߖA}+"%$ ^(FޙdE @a,ة0{{زጌئT>?6Mt+2DiVñh5e09x)[˴OCwwA:]涎jw4a!|ʧԺ_2X&ڀ|qI ?|QX3[#;6`bh\ng]%mzA+YD7@MsƉyZ&N9tX9>]\AM->NŒ o`v3R- Ԟo>ъ {~Ct*JN]րPpS:9)m_ͭX #YVaw+@FG_,Cnve_2.1cQԍvxDh 8!(O`뉞L,% 9]h12P+"ժD1wIYjfS~jV<*Ʒ.[VɔbH}ݖsPX'݆Zd aMiU$C.⚏&g WKsdz0I.ӁڌșJd%fMx Llz1OE\u3UךX"%gb4oh$`r xdxh2RB鏓̃l;LBͥB;Shb<ia`vQ:Vb8Z1*y!"ON F{(4 Ӛ&) P )9F՚OWN.t70%=#jۻqUz7{US5N5^$ $i֝$P&=_(9gc4ƺ9fJ!I+wRRքWA:ruV vqLAu>9T98f7>ʸ =kj~ 4Ԍ'i^ԟ]8#;y7p6H'Tԣ4 5Yj'H+t_EdU2"\%>݋&eHP.|='KƜ9︂l\3܃[/u n'Vq7KL(WcADy&Rpl.5hّkŒS`M+ʒKs7W /.#tIH!e1C}ce9Wx/!tD %-'$3A+l^5fU eV='}zKqha_SP|j4 5UZW?; \2~~Qג-]R(cވ#ikYpWjݕK=}p:q 0=i0~i@!tbn.$42KF=!_Goio #!Njطc;XQvB ᭯;Ph aSɺѣ6y!.2ZvLz:R.~-*~Gg9aR~(eA"_" ؅#8>5Rų ;eIOfOI CeVWA"wXR9Qܓu3":LQVf\.ju>KΨf@:AQY_3YjFFY ;qBpNBI0.<s+νNXvրcJ^tQ 0D~j!d`K/Ė'ΚR)B$7&)>ؽ1+20VnLQ _E*W>ǎpg1lWe[I1q`ˡ]Pʧ5`mUu n{"1 fVBآl ! DJJroN̖Oue`死&pK;\TNHAOL|f^-mteg`+qC @A &oysB|" Mөn\.-:SUt6w]+,r'E-u8:W-Q]d6Tv7vF^!"ӳ,[VWՉF ώ=N*hCxE f12OK`U+ǚg|>ԁ_wлvXIHZ{$ɛK7bjM;Ȍgu?x[RN3ؑnQ1Od'DDbNJ0 I/wD0_@[ӵJM@|aк({X>vXB1^FcyuR89O$ ^vp~% kFK,@_ ޏTnEavFUcvތY1#M{AA2+}?gyҭzJ{>mc2HpE!Io|VyulOUK t%]Dw0p's y =;[4}lʦ|X{_A(y-A O VN C$hJ]$`  "l tƌtBN6Q,%1d˫~0c#6Hesǜ>P=޽)^֮e o4QеgؼlJN<U-}ҧ;v5řηk0r?dV(HFt侖J>73'fL8qL),IԽǫu NW/N//~<]"D[`N׶?<KmB[DYdZ)A[t뉞*c>s΄-I7d-=;o,jI؃,dDL-0: *$ 6A|x8E9>:7Q58;p/XgWyKB?6y2"9*ii6L2)GP/(=ievV3п-mmݹi_JJPQHBtu0R'v,JpOoMJ[P8Ďqp1FMeH8V;w-^xF ujrOבKSfW.{ooi[) ݮƿ77M#cӽ[_؃Օ>V}APf"2O>O yJ^sH5icx8Z,vDp m^ն~퓫c|%93|&D Q1Ct(+*]M:|+YiDB 3YIzl@-A(U>OѥHix __ ?1#E1kS(0?4k[phUp5!̔P|4|h|k 03385ƆIW M% ZD$aDjx: 9)5KO>Kό"_lc|ثX- o&B$fν. Ijr i[H~1Y`&T;Z#g%<9xގY>ϰVLj姬;ݵ*brI2y̙S.㯕lrXxR5U{%U:~n堘תOgIڞihAHdDl @^93f9o C몒)0 Z? iOdd伀lH dOVGe(D0ƒ抈0$'rC@8(dR;cl Ns0@MQ}N-FӾESJ!a 㪥BY\g8Vl7w'EKYV8n=xPO w$:EzQ]'ēb8fS'a)6nCf9ڐXkj#~ilfU GgmVJ~"O-+wUI_;zA- XQ襡<$&K\|AauxDd|3E(Z(e cNҪPw*y6-DpwewCͯ; ̌ pu] m S1e= JxͳX*k͉lOm' {}Vbl&v_Tv'0FZ4Ӕq8t'7A=vYUSaJ.`г -PXf~io+Ʀ*S,/#Nrhq=ݳxӚ5 z"C92>YZ԰R&8Cc˞'FtW/n"W %- 1c(hX900"vE5*ALd~f,ݿryYw泊L; 4oF?TG n0B/fra㛄飕JLM 9(ϺgR/Nw]68`zÇHFd:$. GX{.t;OqtAP|`(!RFJ0IRٯV<Ƈg!^z']juk,rvK{a?\dm 8Z :gCfuaTAXأ>ەMr%^Lpڞ?KwX޳`o:7s%:|߸un$99]HpiW`.l^c# 2y-,=r [`q%i-xrp !jJl6y'҆GiϏ5槡lIuLlR (jzsQadqW%ݣ<\L+f"=qAQ> 5,:iglz罡d#RUBI(@&{Q-ẙ#PLviJKL_hZnl .bM<(otmuk3bUV>>4tc#^T&̃5B= ;@{(;Xuws BKWTFH2U]bLRKZ{.rLlWĿuܚۥOL !F-{ܱr*M@CCw1TZ;"-s$r !.2tL)Q61<^Iy"u>DdN| C9W!.K p6l?{VF!e;SlImx (d-WQP