orthanc-source-1.10.1-lp153.2.3.1<>,+܉bu/=„'7=Un" < )Tgl[ܜoSx<{10z Ԯeqj3\w_#8i(GQCO/ f@{QAHV6g8#jI"<]hqje)kHsȴ>D?Dd $ W *IOX   ,    .~.<===(=8="9>8":BV"FGHI XY\]^jbncdefluv"'w'x5yD0zD8DHDLDRDCorthanc-source1.10.1lp153.2.3.1This package includes the source files for OrthancThis package includes the source files for Orthanc. Use it in conjunction with the -devel packagebuobs-arm-11openSUSE Leap 15.3openSUSEGPL-3.0-or-laterhttp://bugs.opensuse.orgDevelopment/Sourceshttp://www.orthanc-server.com/linuxaarch64L]") 6K '+@@R# 5>k h v G  $'a9e#3 U2r!  0n* =9N) xs1DEs  8 |q${d C' 9 H%   Icrj  ~s0 @F !?.< H:k "( A J  7  [!s 7Z) ErF,  jw(eP2.  }= \ ] ;Z/kx  8tJ*'$+05G  +]I-fe|X.9,:{+ i05 - |s7* g b$A  P! }e% aj   IY`}{t;+,0> 9 M:/ e, w j?! qOM-A HVq ! V=#J   $ ^ @5 WXp_6p  `!?B  s!#`  #9 ku Wx? l+ p3Qs $$c *B : Xz _+ 4 ;E[B\r!O{:'A0 o Ǔ:FGr;|"O)^$' E)BaOy8nDd@ #9  k oxq>rxcB7#bs*s-ˬ 6E  [& ;?M-E,s( \ B i < ;%VL 6Pe#H)w!+pC 0<0 :-!Y~z MZA%#Bf.u )aj] f< E W " L  {4M(4m 014 e`;&[ Q>R } o"[  N<l5} _ J ! E&0WM~]]ay$1= JN U) ]% & %7m@:Y@  q?  Z + /.] E7r  2  U%N A* 2 #F. "${y35XOOt 'RA큤A큤AA큤큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AAA큤A큤AAAAA큤AAA큤A큤A큤A큤A큤A큤bub;>b;>b;>b;>b;>b;>b;>bub;>bubub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bubub;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>bub;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bubub;>b;>b;>bubub;>bub;>b;>bub;>b;>b;>bub;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>bubub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>bub;>b;>b;>b;>bub;>b;>bub;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>bubub;>b;>bub;>b;>bubub;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bubub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bubub;>b;>bubub;>b;>bub;>b;>bub;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>bub;>b;>b;>bub;>b;>bub;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>bub;>b;>b;>bub;>b;>bub;>b;>bub;>b;>bub;>b;>bub;>b;>b;>b;>bub;>bub;>b;>b;>bub;>b;>b;>b;>bubub;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>bububub;>b;>b;>b;>b;>b;>b;>bub;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>bubub;>b;>b;>b;>b;>b;>bububub;>b;>bub;>b;>bububububub;>b;>b;>bububub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>bub;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>b;>d8dd08b9c49ba3baf9ec82a22daf5108b82f235a8cabe6539ca950a22b58e0f7ca830aaadb1760403409bd493ca05c1b3322acedf0cd67b88f1c12d3b06cf5d80ae0485a5bd37a63e63603596417e4eb0e653334fa6c7f932ca3a0e85d4af227752bd9d164176c85abfa569fb77d7b85f17a41dc446c52312dc622f2bbabbec2e757c7d0cc9552b10eda3fd2322c9cd253cfd724fae07cd746fc2b63f1f289fe42b4a5989bee9b316571e36ad4e946f25fbe1146541bd9d3f63d31de22bd7c0a083a427dccfb77cbe53a89a565faf4759efd02a32e7674177b4d4e2b8f4168541a45b1d0a8603dfe2cfc644f9dab970b1762f92babe2aac6eb2f5d4572c4a680ec49b1e4a38f98ed60111bce4aa6da5d482e727ca3a17d04a87c40eeb8212930ad50897f936c0e749d39e92cf17bfe3ffab4b796c86e317df265a0c163c8c709ae34ace167a4f708e078cbd8e885da16c0163dbbd47780b41aa520a2f81939073cf26d468faa1ce42f9715c4c70cf6ec67042381caaefd396c8b991c9480918fee1e46b53fc1698518731f607bcc6f9a84f11671df2912f759760255c826b6ac65d7f5cfe4400186149e251e05d5604a00e2246f66c716ab981a610d01be17042acf7c553e34a8629eeba048d3f3d2318baef23ef950f1320d19f8a931dc8b75e8c8e515c4efdb0385fc8d10b97ed4a88f837a996cc2c7d269389fb70fe77c66f0b81c4d07981c60b7dd4847aff1dc6d63b84faba60bbe38207594578508f7e72d843daadb36fb6afd6ff10f88d8ad2963ae1c1005d29d6b7420406ed18a11af56c3c60288cfc80681afb8515e5cdb67128790693540daaf2202be21594184b28ce326cf9b284599290ca97e875385b5bd3950d9cfe9f6df2d716094e980e99f2515ad635331fbeecd417cbc34df455e53424aa6cb43c28c597fc84db633eaf56feb2634d339236dbe4b2df50aa3d028e0250abb0a76abee3d7a8a97e53fd085cac6a92ed6c9e6f620fe49fd16b8163e7b7da5a7e2cf3af85375a42eeddf5b933bb081d8f440d647786b4bbc812efdec2e682b0008ea4098da8911bf515bbeb4fdd49c0ef7440f3f565504f48def2f970967f372ad6f9db3501f0e32dfa69d83d9e723430fc2892112a438ab547e05c3449d5b75abc1ce9293a98be2f1f18dbc612df92c5158aa6e735324effaf0140d8d6bc779d61250928825dcc1b98578d4383de91f71ab9fa7185a77fba902259058551a9a7ecb64d8840b3bb5b3b98ec642434a8de5c7e88f096678bbeab2f05040a770ca6594b9f0a6921c06a1b3c2854fee1fc7ea06a03b67d35adca3240539ca809acbbabb2bdb648acb83c86f565cc410ee08d720ba195bf850007be1fdff8017aade6608f5d4528f7c60c07991f0d5279b4be2300c80f9b7432cc4e1c44e31ed46bd824b3e766fee01cdb9783b312b7d451ab9a0277afd0379cbe188165da03ccc431b41749e4c30acd1d7e15d05c551ffa461f17c554cd04b9cccad164b2d93f02f7c1bd33ab6512bc58fe05f3f7084094b5892564b3ecd44b43241a6f4e5b469dad54a033f54dfc0622692904c82e2b5381f00a113ac2c5b2fb53ddc24054208c541654234f126166a8bb23421053ad65b2ea1c97826e3df81c09e9f0e582b271efcd1a819b42191d0901d783000e662fe216bac7daf3167a5acef2f534e6ad7661f649b03ea7d105b7bcd1e1872f79bef998ff3715f8a710492cabf005e53554f423af70be7c105f3d3a98bae36a0f339607bf09e9e88fd0c02242c16fba31984ad4a935bfb1f1333f0e13ebeca1d9e9dbb7a4f066b0a3871f160526b90bcb3d7a44bfae6acfd2423f3761c1adf11fb21478fd19fe3b6454f2bc384974a6b984db87581ec71cd7c7c5cd84c761b06a6d03b3ca374c1580f59df136f55535c8c7eb487c2d9a1a951521e12ed81762f80d0ada21a21e4355276fa4125141a88b7f6c5b8eea6f29add23cc306252cb1d600df7c5ed5836ab5099a4fcca59adaca423be733164ea097ca82fb98c198f7526c472b7a1f057bfdda99e832ad2f699d9de45082649d56b5e5274ca5e364db43b4d7b9de923103e6c8d164b1c2ccfdf7e115a88e7c92d8e9f2a8fc8a00c99063573f72837ec7cf1e27c7e4173edf7baf85b8f3ba19592bee48756a44cdbe78dcd724672dc03440b8651213c677bbd9c35550caa7da0df31e90171fc71f80c4d4118ab63acfb26b9e41a8ffce322e4255b209d80c48801f77774e7038888b8426b1e359979a2c0f389d684da90bc49df08ce1c38a63f25403eeca9924088becc2c000d724eef1bab3f2d2805142ccf84b806b15cdd884d636c1167933a1271d9a398b6304369ec9fa62e1128688882d1f7860e681a184645e1d4cbfb49990ff38aa33d442f2ec7b7ac4284a836e82702552db730fbfe4ac16544b0857c082e8e0ce557908842a2d8de1012558d8b0bd2e54c5c4b1990b11ba348fde5074d86e2f2f5295b4c7da8bdf6d6dbb4dd18f49cee9a094e8c038c536fe34f61de19cb7a041bf635389dfe86f417a78389f1064d971867c354b71f9d2215fe469f9b5daeda7b4d8566a0851cf83da7a96f8d1c6e3a80aeac10c74986270ec9dc5099d5d1006f5f21dd443d1f35c0a628091b5c0acd1ac279c83797249a85de098aaa193ccc808031dcab0073d6a85bd41b6d77b039f67896649c886d909e5ae0d074d76e0c26bfb2e293e37955b93740fc382ccd405ae3c673a4eb42347056a4ab8c01bc8081e70ecd837474e196d6bc0b942c99bc589e3fd0491204a32c55f4be187cabbbf660ddd85209085354fe1cfaaef97adb29396714b7e597f0140b27cc6f769d1ee1490ad9a093788fe7913f9d5c8a51b52e4fab12c588a8adb65008ca8030e612c4f58fdbc6b083a695c1d48f2424f49cb05265fa05ed8f6e05f774d79cccfcfe0d9d341bc70385320998616416ebf36c969782d884bc0feb053b6f22c04144fe2ff33553ab709df9b48d1880dcb5a864adecfccf5c876bd8dab8d332ca243f5937fd090f4b5a301f3d8c8c80452288db0b955e8c6750dd424e02e05ebcec5cec1add7fcb37fc2de86cae30cf43b6e9519e015b406ea39744bb6c848b25379ea17c5f51f4d935956e3b56c60fd7883291c56d9109d969ac0f5fe00638ac4b53c2384321fcbf5dcfe04394ed4764bef5b6a5e1a451b87f6bf4e438d6539a40bd2d2d673fa6ddda6761a1268b49e84b4abbfb5193d40ad435069ec5b82905fbd6adadc64e92f548444d69e0b103387c67272d605268f382382179b826a397ff6b4097a65a6e63bbb95277b4503a41dfb397907ede4fb84bc10285a4a2954525f10b0f306de3e906efa8dfa296d3126cd4cf03b39e8a4f5b39f51cd664f8933e396bbba9897f8ff428057fbd7bbf86ba6143686708b39409aaca7537b03e7488ff242629b1942001e9a4327601ef562048089bcfc0dc84e7992012632b8a9e7d0b1ab46b23f2ff82430010ad0863bfdb6cb79da99883b400ed4013965fe21187c6affff904e98846389e22f2e2ab01d6b828eac7ca0031aeb217fea90d0387003822aefb2d912e709f7726c7e219826df99c517b8092b869074f3c355d9a6f7770e56c3d35049389f4b71a2341d27d8f2ebbbc06dd4cb99b38ae257f31d6efa2ee39ea20c21a48395a092fc30d07e8d0763a08f044f08be73378c865be073bbd389b3c5520e9b350f1b694285deeb622f44e0edd4d2d15412253e43887e993ed37b8e3c0a102417b669b9abd118532bbdab99d475da03d81267b553d78e46604474e68a098e029888525aba0f89b5a5f6ac22fd37e7a3f87da1ef7f36c52b37ab8a723c6490a4e595544bfbb16641de7973050cbb37050963974f4569daf5c8584c42bf0a5ef3afca3070a8e0f3f25eb055631aafe87f52b39cbd13f9c292ddbd6da57b99148b3b12c70026f3f5c015c3cf0102b10326f842936f66e6bc5b25fd450b7c506fce371a7effee5c9e6610fe2ce370ef6c2cd3991a7de72972577fe0fcd69581133f682058646d249a6a7ac49e641b97006ac85a0adc24ae8524ca58bc6e81438c62ecdfc64aa48e68b4da805ba5a4c7d2912c7cc08ac8a284d165590f75eb629a01e9175c485e1284ceacc743cbc682fe1d1128c159011e9fc1ee14ba81db5732d1a89ac9b9a34d5d37b817eac3b10fbb473475ad94143f92eae850c9fa24a51c1e92a4b47bfaf318b052d0f03905638ec490adf331e3306d812d0a51be1351304f628de83c05972f606128b6c096998e18110f7a92739a1e79067809eff65cfba3708ded437d434359f9d84834929b836d27190fad0e99e745e3a391c308ca816c7760d011905296c64b72b9b7901fa27e69386178f4fedfc225938d0a19c3ec5d07f5110b21fe93f36a8a53374ee15acda085d0a3cd50e31d96bca1963da19bad4b54c1074ee7af4ed3030e3df572bdb5d189ac171c397014f44aa975c6e7b7fff56d315465e66d7ffd4348b736113b77eb2e94b9023fb1862ad5943815da7ca1622abb8ea28b95538813c9de8055d71a7f5afc411b686f1540da0db3995ed2baedc01ad70c11180d2941a9fea535a998c716fbafccc6b0a6d264da144189d973da9fd94f94d7ce408eb9627eeb9542de6d0913267b83f470e3c0af22dd7303b37901c7ebcf3f9a2bbd484e92e3d1aa70078ca5afb3b3d652e3fe8692da7b05f0f7637664d597aa97bbeffd0309832496473089c3f2e30cf89196a51b33e02db7c96e0548e21457a6f0eb7f9077a418d6b8783577c8038a406aa06292d1e4c2baea9308fdef71cdb5b0b6749d7ed89837c2663f03c373f7f5d9ef36a78354317ff47ca8015ec0d85eb52281a2c32397776ac5c521d52d5d25455a453dd0c722233043b298230c69b1355d072331262e031739d6bb94e8b92729d9777760f7283ae185fa828b4d26575a9468341939b69bdd7d2e1e167df3ea80ae840620b506ba4bca8920bc48730d7a4e2cde42ac8a45841f08ca5a84af5e540ce8abc83a712bb64234d1aef45882587d08250bd6028bf19a2b21819788dd003f15611a3154d2fdae14706250e2fed831189edc81dff8d356b8a2f165007aeeeb20dc94b902ef4642e31922dea3d305d9c94b74889a3080b7aa6d89cb877eb7dc389e836d5e7f4ec9c6c5741e45920780c54d34adfc06d962e58156341ec6166dcaaeb02e9cec79b276b77040a7df1267a6a1417caf10ca6a13c40b7967effa876b9e18a6c1e048e4055772342167d9c467b0421c052cf1008774965040caffdf6ade8d8a88c1e4c99c6db51fc3fda3145fcdc215a3b73009335923abe5d068341e2a307d7cfaeb816b261d92ce87a07be62e3eb58c98d2c769e75a6e2b9593b25d78246aef7956cad162d548a2daa57ea5464a7954be9d5dc26cc7ca9d4e98e872b60255b8447da99885c7159c2e1f1bb8143523bdbe71784e60f98bfd67b66b39c27042f6ad12cc12efb0c82cdf100c6640b5fa959b8b866e252966113a98655408534b78dc0889a45f9359fc6d2d5c8e8d8443b81ede596f954c720ef48497adf676b1cae2a7afa834e4aba86383f7b697f5fdd03a8179ea9024a431cf9d8dc58fc0121b6a4b98f3028205bb253f956b1ddf791e9ced3cf44892502a01f6ae51061432841100aa69b6823adacec817b724c1296bda9622126e7fd5971fa96163fc140e4bf08752e014d20a1eac3f5adcdc408366f6d79c1895f2599cf08ea07e6637937b8b36f2b956aa48a531c79cdd4b2551682a7a3680fce8b9b635462ab52a612b0a20d9b99b4ce82025b815bb1370574c54a0c6855658050783fe102a3dd2258d7d2e8ac1c4b0f1a1acf6d608e8373bd051159e1f805610a1962f6c7590f78b0447b20ddef2a1cbfb8ce5449378f67c783dab4bb2502b414423adf967f874e1d233b6822a9abaf90364c2c227f239f7578c7f1fbffe6c16784528c5a902da0ec1abb654d51e5fa1bc0e943c574eb26b3fc1391b5b6e65b6140320ef6c0fcad90d4aef0341cb46341ea9493b7d3e6511e338ddbf5a8c2c9f8fc12527601122df451178e46990e2798fabf54b0913755b573c333deec0abbd2e8df0dbe86ab5d18061c99b0bc7c9ae50509c1f7959f837f44be42904a5fbfbd447c13e020bb56d2d293bd293dbe15e32146be13789adb2c4b3c3a6678357e2bb617bee71e25913268b219b5b17fa12c06d34dec660c733cd635d4471e09d07ddf5d0734a970b70249bebda0c5aaa3e44765eb3e05f8652f1fa5fb93b7c0fda9f3d871b7a70ee613b1a47503d080762a36dc1ae4136a38132cdfa27e2966b039b2e5fad3740ff9503e35eb477ba4d6c37a2e81ebcee7b649aeabbbb7e0349cc2de73e8dd7fa28865c3539acd0a9da59eae0f212aa47f07a0bfbb4b041cb8979717e54311ba0136601da376ab0c61229d08282d247e9307e5e5d6aa0c35676c68a1d0befae3dca28a85bc07cf51ac3bd522893cd19974ced28c29b77aab616ddf1731e4dd8dcb46f21298dc7899e9c56ec238bcade033fe2373100d601cd70b8f27c9f89a20e51e98add5dcaaa2a383a428dc5cb96204626b3a54b9420d7f9c5ec4efc91799cf97ed678ee98e546035fdc2fea4ddf0021767b3caef780395e5b863fe8e41250b808ac58cf11847f2f6c7eaaabdb0dffb8d8a1b417768f9f7a3b053f06b646a7f6c98abcd54dee410b686e158c3b562e40c91a360ad259015f0f3febb5085f91771dbe68af7e4a9cc52eae430ab92059efa0e810be1cadd854e0450e23926a82db9dd48ccfe6e3c9d6bb75c0840d801b79261e4b76cf6e8d00da060b7f3617b8a20aba063779779337de4a4564cc5a29736a26c11ebf4d3aca01bb5b23f1271607380b2635705d467478026287fc23be3a43f218e563b19e8c373a735cca035a916255d3b0cf5846f92b1f5b35a917fc45d03a666ca48bb51ae1911daf8360a9cab7f0b39f59302c208f7fdb146ff3919576845c866ced74753fe205eb18572e3c657f540a3d0c50275bd769127ecddd574e4b33c7e5d32b1b7fb9daa5950ad621407e802294faaec50f90facd72111cc649e222dca56e30e5bb8a35cb5b08e20e8f46989c878467ca9d6d4b0a1df0879eb503c35c66a6fd17e1eebfd9fd0f6ad91d5ae908b40a0c4e289f71a9e32bd3b4040701c592c668edc1588e3f69a9f46e41338ea9b18bf2b14508938735643fdff182bde8633fa9dbb4ac17377c34a363614497f0acadf33c1a5b5b00cb1545c83b8e71a5bc96d7e950f1b2006a3ac77c88fc3eebbec072945aa127f2a3ccf7867821b4cca570c07a91f8b997f5a61d7cdd79a9d2d7a773dd7cd17637e9e5254a492569f9cc1f1e4fcdf76e7a7dba6902e81417f2fc44db6532f2719a0b491ab1358a3c2783ab0e2dec97c54858d6a50648c5ecce67538a5164cfe1a1903b16e7243a69de42d3887e61dc347e837e1b68a504b6f92ac077ad1f67e6f4ffb6046e58a4e3e35f2cf37b90de446c615751b3db5d9769b6d411f00b562f828886c00bde07745e8a4890f267701907c35f0aada47b001bcc85d8221badca731f2a9f8aab8f0e25ffa4acb706c2df5237dd3868428e6d928d1d755dec34ccaa976b1cd2dcea6d366bdae910ab9a14208b67ab3dab5ecdb4d599bf71c6a2a42436c5d11395a0a8007006653d2882dfde166a97cf21fb427d05c7ea31b0428628b25067ae54a038571b4a428685032dca33478e488c9111a9acd91da0b9d2c80e4968bcf18aa22791d78d3a4b56a04fe67642f3af613c23575bc74a2292b5f8b2c2bab16814b5a16f97a6b96fe01b8b4ea7cab51d3957113493bb4748eff60414519e9c585a64e279fccef79106edacd4d280ded69e1a919e792432212d1fadeea48538ab60cfa3a3d338f5f928e8a3b6ab728d5c0aa001801b6bc7a33630031e0fa3b9810bcce6f15c361834f07ebe27151559c67cecca4116b1ea1cebc5b3aaa0b7fb024d1eee4a98cd1d180d9c0bc0fbd454e053635a5d5d79ccfdec3ff2b23b16a607d3d0ec3bd0f2f3593dd95a124d18bf4f97ef406de73b5c442a162fd75f0ad60d5ff65b2f99e9740152d47f22c00eb8fe775c880314c9d23f14a3cb2805f59744fcb795d3a7e83762b8e0d12dc4e4ce89d0e69c3d47a3fddf16d573f3eca42219a66450a88fefc7b6b054406831cd233a337e5c053b4824da53af7b52f339cf04214efec872a0cc2262411ec8a07b1e00e0efe6d11b663d8e67cdd5dcb687604661fee99807188ddcdec11c3e2ee2b77fdb8528a5e39c47d4992315671e0ff71ec66a91515bc00a13e5173531f7c28addc884ca82e825a87ede7618e5ff5e52f361342ec13777927d13495adc5790b7513058b562ddfbc1037ca8074ee45f1ef4ef1ea02d81370c1ce17c4ce6bffdbb538d196e1b51b4ad0cb1cff91673d8a2eaf39879e84202799f6a0203bf840413f3b661e1fb4dd18c77fb20c7b331a8ef53128a04eb53ba0cafdd842f7f40d5931b76c737d1b8847421900f55177d3679d96ff04ee5cab71fd7fd067d37ef4933d632d6f21f5408c2ad88428cdfcdb47c977e4fcca058f516232d2348b3601550b20d4cb375d37b4b751f5dd051d97ff04572f427ecebd3d221ca4e35e2f15ad1d871771dfca11b14a5e72c569375d60b603be9472acd55e4c7d79ecb2b8e9fb6754149617e47f4e3e0f4380c1024463ddc784125fcc2e124f4980bbe08da1ecb5957d4aeafade78486830bc43f080a89345be683e7b5722fec0aaa0ea015c537334887fedde40603c7fdd702a6477f29a4c0edf88adc9eb63bbf6387570445d4bbecb603eb4c86354b3b4dc9c0f504801936e285ea8601374c250fd8851e9536324c13c99bfaef3fb65db6b71d49313822a0cae0846391efc376bea203bb6b4087dd45960bc3dd70029a8c3483ea3f1dd111f593facdd6ac7c0e91ca03d90e5a4622336929026c720e07fd063c89ec637c9273585935f953229c9f57897591021c4777f105a9025408d8261e3aa7e3ec4d9ab05ec7c73b9feb2ae4338f3942208d1f1a789b8bf7cc87cd463973e3c2ab0ee73a7194c0161c64f4e86fb4348e68b3e90b950523ab4671b309a018c6fdf8d7793ffab4d0db9b4e90a9bd9e2af41567dd8e30008c8affe66d6c921eb39e6e59268032bdff8026ca60c9f55a26f1a701c307571a976dc062d8bd81287c2a104b8968418b449f7f98228dea7d82de81e8248dd75e07cad578650e15355c4475d2ec22e29ee155f1f9ad07dc0f8b028cf57faae0ab75d076558ab68467c8561492a150c2317d7abf51059a911a10b6145477e51cb350f29f2f13dd7c924c2d736ba233b38a0fdd61799b16c67973322162f348013be728bb65fd18a695dd945ed030737296fcca1b731381e22853016f0e68274036e6d353dc716efcaad3008b759ded550ed48b9876879059e2bce72cc26c035026873edc4f98d4daeec924b29a8c3347ef0c44de3761670d6637f04895b163cb5bb27caadde9454adb7b384aed6721f2be5e4eeebee0440ee07ceae32c0b98494d1113bc309ca9a428309c19752650410e208f4558dfe704bcb060d57c8b1c79ec43c0d8fea7b37eec2d39856c192cdbaf4ab35e6a4f0a337141f4ed7561636d006b67e2c25142e8db0b2ef753c6bc80b6dd3b0be4f5be3db609182666cde469f0b49c443830cf11da92756d2160c94a52cef924a33c930aa37db674728c56b0cdcbbd130317b6e35c12727ec8635b20ef603a16aac99d624c4e1762b1e6398b0baf8de8060c5dec89aca3edf7e673c8aa786370bb2d0d3d6c4e8c16c908d0aafb7ceb493595c4923af344a59b058d6edd95a679d5b88cb6574ce6378d27952f5a9586f53adde9682458c699e1146329244084a60215cfee7d2c2cb752c21f0addda70fd249592aff0aa892fbc1712fd7fa7d7bbf770f3d80d969ceb078972c644ca31ead3b81253b4f8fa999bef43dc755c3f2ce9ed86fccbb1aaed8ccb46d4dd75728d39c8f7757d42abd7dda35d85c8448c04cd397a8b27c0565d144fadb813cda443037e07247bc62bc545675db59e943834afaf8400520518eeb5119a901fc00de3ace924c334d217c2aeb883ea8d60ce40935273586ec3485148a9ba6f21ed449ae8f01e54b1346555d8ae07633a5412718e7ce1e591df49d65535de526169c599f46f7bb9ddf1677c54cc65097b3825ae2705c33fb40c335b3c46487f0fd823924bb14fc3ebc832aa01e072dce794b40d40185ffc5bfcfe0e88ec6955a8a69f8415a31a6e41fa5b9012d7381040da629c6143bfd0c982bfab60481a9c86e9ea52651f0e2740ac253a928a92a5d9ef51df8f24fb3946c64c14babefc2005939c21ac2488ba2c39f18903f407ea12efc240246d26b5d20a09d4bd69999d15148fecbef4bfe7de2e33a5987bb911428e79054f34df437056b9f1e7480c8ada33532aae362dd79f24c275512c70e2bee0ad0f758dee4b4e28f979bf55b3555822bf807b876817c054bee799afdffda289d3f33c24efb219fbb063505ee803c888662c8c4277825d7e006d41d13f7f31b6c0b00e8e5fa6445766bb0ad282d83e422fc342331ba99156a3f5a1adbca74b120d90b9c9d5fa89a0e6b014e1fa68d9379996e37fbcd9f30ce0d1315fb2659918d24fdc8f543725b8b78b1b6024874a12b65c0f3afb775da11d97c3875439ee04352d39d2e4d673ba78c00b57fe2344ceb72550d34f445f41c1bbcbce4dcfc5d9c937e4dd96b374b567e94e6cc0fb0f27ffc9bac3a242f25ecef111d23e3972d675b2f65043124490241b8e20ff4f5b219ee9cddba8389fdca224ca2b68be736f1b64273679fc7ce7337ecfe60b1d3f2810bc2750d74bf7bec0a658764b383bc78d44ce5f4cc80d1bdfa89592084fada1f3d8d08e59610e056681c7d447c03e2c4fb6c93bae743eaa7876afdfe4f00eab76d6470e23e8d6d0e9d9df827bf918e4a6835b8c4c786b96d0aa0c5b3d06d6af296e9be73a7dbc6e5c103fbe07687616c4e8e0f5fd69c8555f1369df39793b9fae58dfc87a2fcb7604e50cb633ddd14dea3896e70657b2babfd250c1941d85b7d151d49c80f3e5bd329d0682a771a0953b3569565fae27c0beb504def0c249ece11a949c52f0e5d60b5dcdc89b39b9ee9da0515620635b7b8c60035cc6e036f04b20c121a7f4ae4bc5e24d7801a72eba97744584cedc38620745f39534771e103c50f1c500f6b9dbb5805cb98c6d05eed922d1075e31a3192f9a6634cacdf06f140bfa1cf00a94329617f3ad9c52a56cb79b8abba16918ac6946da1b4fbf67ff28f6418fc8f1d7c4258f947f390a69692ce80a78e10d6a8ea8dcd0c05950505217321069b9a987dea0db869349d24d294b4e184d7202c49130f331e91bd2d4c173a4914f7c2eb437c6e1872e30404e6e4d6724113417de77985acbc7aa7ff70750db516458f0547bf0ecd90574a389e46df5fe4110b58b53221d126bb8a700fba95b03ee80acfcd4aa6e13e2eac4842ef21945c48a5c2a53e38a7b4d08af7a41859e400e987ef126769517c9e3948f497e657d33ec6456eea2ef4448aa9bc5ff82c6d3591a76490ba5e491c0d64bb5430ad0c25987de30b2f880773816546c32e0fd9aeb63acdab9c523f29c41b1ee320aae7b0bd73514d89ccd45b459e530d2658e3cd88c273a31c30088f0d2b3046cb7abc24d1a3e3b2fb0e95857e9278d39fe2f20e690b1e125808a69e5bbdc0d1f020b3bf1d3c6868dd52a281cc08420202c110549641cf2d10c2bd64a868a1b0483d7dd53b2471a7cf65752ff3cbaf5f19875cece798a49f022734333b070b5d073a024529c56f5c13f6f5c47814142e63999650d8b39802292bff49479608c15b6ba8ae92708b32583f9a2951068de6e27683442aca26fbd5911910e243dfa78345a86b629525c5de44c6039a6d5f9976ed187c48b019ddfbf78c91b020e51371657fd34a06c3b4a6f228046d2f4f0307147443b35e1d98fdf4f9a4a5e763ec68cbf8a13bcfedbf7a66654d8e012c93d5ccdea8cf3e4e0e4be946a8fabf70b49cd5345166d4a8eb4c4ce21af9992b8bf3caa392a08f42ba0d99bd6a8c6425315c7b5e939450e4d28bf2232157505316de3ed1805c5616a7b030111ac01de19a3857d71bac5feeb1e0d612b1269a2e3e5e90085054687224176f1141914439919779f4f486bbfd92628aba74841001bc956e42e257a5f6a564317ba16f44e24a104265d1fa8ddfe40331def4e316b82ab0b4be4f364cc6f66efe0c7ec5588a2287a6f57875903fec75ebc968472a18bd1dc9aab25cb6c1751dfa60f240cc3f579f2638e3c189562fe5195bac012e1a2e30f16cb3ce3fbebd481d4c3bd589b358537f4e810f3f69adf1672a81e78f876f58baf5b31f1ae3d2126e5e2f7c74d833e346982417494cdc5dc0301d109a6e8571a9962cb4f8fdd630ee89d1b416c0ca66dcfa711a40c3de4dec717f4dc8826c1cdd91f28da9157fedf48edf60c083e9a18f75319a9d5005281f5d860c3177cf452b0273a4d3d9b4d2f5ee343f3c731fff188ec2a6a50688c2f1c3ddf8e276511cabacc6296194a8a91d34872a4f68d64e541f85a742c22ec0b503885ec7904483ca52d20615d660afcd285d2d603bc6ba584857aa895bfabca13cc24c6e54a31539e7a5121d942530fa929dead872bce1665fda6c8885bad1b3ff07e224dc50e257aadbadbd01e211644cf5695a42ad471024d0c6febfb167a8e3129b205793adaae0262db3423db98c91f4692c8315afe2b8103456e87b78d4be3392448b0ef06b68e829be992fef073c3cefa3d6436a750788829bdd0f3e8587f6659de4862ce6c30c15ee4b9222c3ee0aefca213c729de451f8040a3aeeabf0920a479544bc1e485bdea07d91ab240feb56b27d838842d62a053bd80518169053f7ac0f05f02eab3a2ad009df248d2332a3e204f36295713831bbac991b6d4c075763d84fb58d8cc970d388c86c8005a346b87aaa68a9cbdc599accddd040d490e351352811f3bbbfd54ff92dc057925a5e0b3cd3bb8d849bad06df4df24551f9dc4125817296359e6505a8ab55796214f9674b1f6ee09c168bf75054564fb046c6891f89cb151b612a7f5ec495c6bf8aefad07fec73b9fb35c4d73ec4023112ada3de8b2b3b10c61e9165f76416f49fccdc072e13f6e6180b6391f1faf88279a34446d0d0e7be04e6db66c353817951aed9854c45de96abf169b6243417a36033c6ba94248dbfc6029aab92b2711057e1d9e7fae6ae48c52021da7dbbecc4feca5aafe604ba170275e17e61aca14b9f0e83cfa582b89a74b28cf5c6fb8a9afa959d2dbfe4b7cbde841eb729ced6d13adb8ba4f0f612be803d629b991f575458eb6f82e015f8b359a2386dbd54f9c366019cffb847eadf08f9c897fa4c07813227d8b133fc6ebbca4f97d8743142537fb2837b3936eba5f85db4e7e1380577bb15e29f86fb0b17eec96fb8d70b58453b667a4e61fc759f31e52913c40e16094b7ed5f2293c272c1284c19996155ba6473601bf48e3cba7c1c4f4c28db89679ef9440050b789ac4bb816a9f97a36030bad1b4b30553479b036463dc3732ff5e214321dcd0f7d7b228b1df5f5ad7b6ecc67ccbf1ce1cb49e24e9bfdb5b89c099e1289eafce053511d1d76b956f56ffa557c77116a24fb2d1c63254efb648546fd109b05a6a6cf74b20ae5a3f1677f729d60f2d7b35366d0499aac108337106f5702148b47e3686c276ea13ceebdb47e50484881c01b5424da81836d5a54d8e141187ce610e1a1b0d9b9eb88fdc49e478f153183263fd4891974a91afa73a405ca2256e8c105230e60a17e8c0151beda72d84c0cac104b3ba1bfab717331dd601ec0bbc90f3c87390a3b92c78a16e2735289e1f711393fa1ac29a5685682990b8711665e230d564daac8599cce16d9807841f66460cf4ce80e76d19a56deae57f01d73c1878a4aeea727d55383959280d3949c98af03ceed565abff680bae8c2d7a004f800af4f262b3fbf9c5a85b0177cf973d694aa9a31ebbb50f4cba1675c6c4dccb0aa9594fa4d8e69efee3306e7ac40880c683d115cb9f196797d7acf66f5da46e1dd7a10503320a6bdbe56282065a82d4b1fbb7391947e355aae58a122b255363c9301f220a986039bb8c1ea626d07f57d6d1350cd081d30096b075a7cad6e68ef4c5c85859ef15e3396b3e5aee08acbc2dbb90c5872cd5e6e340525dc3c187f64170f8075f871485767e48e056416f37d22d1f2260199fc11d32c7fc79eae9d2c9106c3d3a8cc0afb91ba1961a837d45ec4f3cffe29173cec751e6a8c651855a77f00de458f1ca6d439e9433c4938ebc9f9f323f349edb08e8844da2c02e6da54bc904abf46fcb50d1fcb6ac328113439ab0cdc06a488819f920ffc23bc5331c8dae5a6c1fc6978edce966a77d2190dfb0505f1d1192ef2d65899e2e468fb5641a9d1dcedf8b6c6b593997393cbad93fb5a51501f45d2923d50dbc308a176ba180d77fcb9d0f029402ffa3e47534659e1583a9e33e1af19b42d7fe4b7c738cb1ea64149372f0e0d599c565f9e6336396261bf71b0660fdc0b705b4e10ca33c3073dea77af91852397d6cf5372d7b713fe799162ea9d9833fe0efc6b326d426114d5cef77dbc6874ecf31de5d0cf75f75c1eed2695c57491d9fc17164808140c74fb88ea32f27457dc0bc1ade491f27f223008464d1aad99d0d680be0e7ee2fa99ff95003003ff107be661f1c61de44e3ddcc6bd756061f07437eafef6d6900ee0650dd016ac56f20c3428c95d631a80b805843fbe8336b3e8833657a1e104e0574e759721a81e48c9fe05cb9929a713df52f854e8784852441475964ca845eaa82d51f10a815596bd92d8eaf444f71beec6ce1c17b9c2e32152b917164908571cd388c4d77602470f6ecc71583427560dd99fab50b0bd6d0b299b782bed6a23b7f374ef6e1c3ecb05183edf5a37612bdbe85f7ca72bad71ebe58874a708a4204ad5998a9635c2a32c7636261835fbed1c2f4eea9fd8342ee1cc10944ead04653843d73278159514c79513d50b74a485a28a41ba9a163b0d023fd4d0a74341aefb74e2e190f078a8fcf5cc9ec865079dfb213551ac6ff46137bb7f8d7771bdd24ca4ebaab20b2af933b1ae9d61fda81da08bf777e7d6ffd2b698dea7292743e3f66ed9ec7653252604603137cdf83266830cc04c0fb09ee6eb363ace8b00528b9119067560c116d47a521f4144f90e9ce91cd695064352785188aa7d68f302d4225d21672e2a3cb95e9af42b1f7dd2761058efdd8f9a79af1dd2a5a572674a9d6736e1b2b7451e29986bba7fe9e4e915a916ff8daada4600ca34d6dea9ffe799d9916f6554d175e7281ba1dddf34b4b621f8d2c75c9234c05e741e5492476b296b4c46b9a043e713581a9cb96bf0352275bd92e6a3cee08ff23cfbe67bec0da705e3878ce6242ecbb69e2ee1e41ce16b2d291a976148afe864bcf0a17cb1e1b3a36e0f7f8c2f28fb2f2b16e9abc3123c5c54575a35c8d55d768c3ffa99dc251871b84fb0484ddf3bfdb98260659e0ee44e829f9b66d8de5c47d1bc031f85b199533a6b891f88e2ee45ffd1d2f1b358fed8eefc3e7380c0b24c8611de3ff5c1e69ce9eee7b46c8f0c39c7e3ed0880d52aad9431711d2f40aec0a779c75192d6e306a96c40e16b3be63df48e9e95aee557534ce2e849bdf8890fad4b04893da37f1b2894cf36c91399ecfb7b02dee150e7db335dd992d48e9c28e9bc065686c883447246b5f6efe346b30f780d2851342b51fcdf7dea32b726758795e0106f9bc0b2b77781b5dd4b0c59878b5527457b35426f99b882133192954019f0daa5cfc200bd1bebdb9c10bd3f02af9c606374d2986bdbd7a942ee207291dd9ac8b1ad85cfaac3ff948328d34ee9640839e40ad87a1c2ea94fd5988b6ac0ec67794137b1dac5312f7bd0c84c6f9f0f07274dfe1df9c7af34395e8fc3f6eb840395201743527a1c32587a992b89a28fb8e7af9eb79bf8ccd48a964082441087a88b59a41b1190d1a4a52428f8bb7e557dd3c469a4e43e8958b5976c0789ee923f1484f5bed19fefbc5c9f81428483153eba481ac1e4f4ac84e9cf6c205928c03896414ae2269cbfa42a92b58a18ab7eccfa5544fe265668b5a4192c73dd8706679ab0cfb0ffc3010ad8cc61a2116fbe41ca9627b5785b7cc6d848273c8976eb475ea4c1aed076b99e7cad8afa166289598378337d70dea0abd9fb1f441d55291d0f913795c7acc091d66b1e169ceeb32e0424c82719471789a8272d8e2eea72c79c2bfdd5ea8dac6377ce5e951a07b9f4348d5ad39563ab156cd319b2d6f8480b6f3db775bfd1fbdc241b2125834d1fc5b42f3ddf55faa12cf90d51a3f37b28bfa870344d9c7ef0cbd4d71d48e0dfa1a39eaeccc355534c01b23eb1ff3b93cc605dc943534bd71c224d477ab52ca2724cdcc3aa47af26cc714418de2b095b18741438544c36445c6e5a2355bf8b7eea3538542331890726d895d9a0698902ce18ac05fff70bd4665f6358f1a5f073c3e63316090c6acd4dc9f9a02534d17d9d0cf63296fdc3c95dd8128c0cbad547d877ce717f10d072c92818d5d7f44857566a21831e0929fa8ee8d78f6e73543654a79c2c9d2da4fa9fcad5739b4e2dfbb051a80ce7ca1f8ba4bf9a5e566f7ffcf8f2ac70e3b0f251712296255d2b5e5e4c4b7b1d820977f78a85c0a0f0e45782e0abf1bb3c0eb4629376f49b9ba9c2669fa47030df262fbb6d3fb2a68bb384ede7ddf3b8c9df78612f19526151fc7a44140d7249c15e8b3f54134e8f89f8897edae7eb9aa558b504a1a23ead405adea66e6e4ecc0f99b4cdfd23482bd7f5c9c9938abdeeb0814add2a8886bf0b045d3b18e91fb88f5850bceb5d982aa70c1a9d6dba86d141c47baf89207c1da793b5145899328c16515a958b60328f4f1822e43833c55cddbb4ae7fe4d0c48b081d56e51ab549d81c142352b758cda774e1d83f508977042bf9f3b5ab36538e9def151f2d8e3a4d055aebf92854d42cba53d1e716d689ac5f0a173cf34eb53b989814fe149136bf9025c5d1dac088d782414eab21acf84db1a1ff39051b2d0ce5e5ac86410329ef8fa87505c05e3163131e6e58f2af0352bcfc6ddb7e101e19170b8b835298a2932e3661a54472f7152a95e324ba35f6942b9fe78885a3c1822c572f1dceccc07eed2f34b9f1f2be84edfb107f270fca952e22ac374b2d476627f3f3a323490bfc371c45c028af8c70ffa7881c9a6e5c313dc1ecf7f204b259b83ad828913f7c9380e8660379d38b40f410932f0a3b5bea4a5bf1cb29574eb9b37ab3288c12e59a37e7bfcf9333c6e3c58f20221fcf0d0e6fc5c626fbabe52e389ac7e3760393a7e5409d23d8fb4ba6300d7f7f75d0b64bd24d96a79dbaf2a6dd4dae16bee55914cc533ea82c1caa921d2391b05f28db7e2b8b45b34a3ac2f859f8bf839bf3d627114134547e2196583361474401824e9c4f7cc8e4301431a26d2827c53960e863a05df2eb75cff1f10bac936367fd36689001e8e198400c9a2148e7b70e6abf704d0b162b2a2f1ff2b624f9eed523cdb9e460fceb4911853149a4658f48cfc721f1abbaa720c4f85767572c25a7542145c04a298996ec5b7b6e83be60c1c0d4b9797acdc0383c576c2b73e7704409539e9119ed020e534d5053d656700fe2dcd773760fefe881d602a84102929f29352d7c65bc1aa3eaaad6e589775d553189348ee79bf10fcd632759d55bdc9aa8d19015ea74f7afb7077ce263972f1029e57c4bcd8cd77c7aea8a7644550e5380b10cdb253e9f7e2f6623c5f496a02e5e5c995aa622a1e78b0c1038408fc9644161146fa2780721407d5d2eba4eb96b2adacc15aac8e4bcb1a245403156690d7e09a8fbab4528f63aa293b8a02060abe6e84045535b4dca5a32c86f7f8d872f4543f307eecb67f4dbe3318e7b0b48b7fa12ee816979bf3eb24c8b1f30ed28ab48d8ba6e28cc094f4a2a94be47f93eea4c89b71e2e5f17aca06e69c024c179e521a3662c89f24a27ee733c5344d4701e65800a7755947f4bc815198e05a4c8550a46d585bd48969fb2e7682ea956e53d1394a3a89471fa2ba5347b7a64a2c168a76f53e03f95ca496f24aa7d37d4ad0fc39a503335921777d9540b8528b58cec292fc3711bde0066e7a7ae3aa80a6d5f645f454216b4b49766f27f9d183bc77be561ea7e7cace883c9990e4130057147a8395ba6c273e03641d92b291ed311616243aaaa2c427c8f9a9a5289d4e688e9e9bc7d1ca1ab24719d217e5dfd5418d5379cc3169fb00aa60ced9d5a529ab73d8fe028e092ed8209ace78276749f17b186fe4e95c1e5b15816e5beff6e2a8d7a88bdf7dfd848e227ddcebbd977e1118a13cdd9734439882cc869d64229f313240ab21da56b1626a381dd9ea438ab333b48f2e24fdc4b29c86cd838ac39b2f4b5bb2e8c2817945fa6de3a08392cf03f2ecc71dd238e3b99e4095bc06062610e0b5a772178ad1bd653f869d6813ea5b265f8c33c8d91fe287e58a2d6eaf95cbc3d3f7fa90a059d967f2967d840d38bda11ac04043af3c46c99bb906197831856243024acee092f09c4aea81d7a7908d280b44cd30cfc600345b8f3c667b6cf0143a1657b8e953b26831786b6233c05f29e978dfbf303c2f193bae7b40154763d7ac2f9a8dc24c98065a8365d69a87c946ffceb557ced913a5bf63a224b64d8b3bb3cfb3cd8ccf5da7ff05963897fd5f872d007a66977531e6d3f7dd09f448aca82d21b1a3a76a12b86f2a3ff9466d333ee4c991950d3f0097fac6a96b0529206b985f8e7883e43f796fde34ce0bda18c62da4baaab27b880a83538dc4ebf379bf0a8cfb46c96cf6357b97eec82c3a6d39fae22a37833b1e2f3d8c90b08b9eae87fad2eb222c51fe628ca1ea284bb9406bd0a67c7c9f12311f8b136109be80286c24922fd4baee1e88c1ffdd0cb4fa803b1a397299e3259a6148eb1bcdeaeaeff00561c298ae666ed0a772fbbe97ecfe8b81a3ec1b56d879eeefcf874412011c0e4d03659e6430b20f6d7bb9a03a69918501080878fbffe3a38f1fd3d6a3f77a865cd4825789dff34820a5d76dda12a3e65d1e93c76c932d496c03b3778719e8cb3dd1ceef85032d25c0b8fe47166611626690e3fed89c02d4f2639b4a8d1d188ea6cc8616cf438e8bd648239adc8008c256c37b080cac21c34dbcdccc6b0153f9f946059be9b5d6bee451081c7494d8991a4b32f62ac5c3d69809e7eb25ba32ef38b39c0e60c6fe54dd1a92066182dbbd9d95cff0f21f7f3c78a27ad7f5bbb44a26a94aa8dd4922ddcd7ff338917234fa494eca5a5d7be9ff8bd0baa81314f3b0ea3dc1e6691ee974222ab57211dcaf8a3fdb4554c5d4b745650d266f89e01116d7425dacfd5a62144bf3a9098ef50e2e09f9a011367b6ed9f04352b3ed7a9428e904f129a9381e3e92df3a295a71d136106630acb03c2fa80792b6fd7d4a26bb4a6aed52031e52530917589b9c110fbd7aaf1c4baee19df802f68bd9a79f051c84839e77933bf41f2527bbc1fe6ec963c4871a331d7c48acb4ac61bdad303cb0b10740e0a369955d2deec4b6a54a03dee9b2b65e829c42ac8ffcc5691dc86c9a955e493de0ed48ee0e9c7ddbdf0926f6ec8d3bc0c05715d9ea2a50aa50e27e4dc9870e45c9eaf4e70f6e3006503a5a49518791f2b3bc8932d36c9ab1c70edd87cd0b6eebbdd781f26db303ee333edabf096a60dc307d682e475530120f41f9ee70b8d65aa2c10d9a5aa8a4b1c44418ee76cb7f058b20dbad09d474f6b4299793fcc69ea690b8ca5471a4ecdd13e70bb8d5ddad7da46bc4b2f03755bf4dc8f22270077d2c3f297e483d1bdf88de186d5f3757e678e171506a6ffb26ef765fabff5b386b8a2cf93be0422b89ab2c40c6b4f8f8252cb21ccffb789aaea6f530895b5f08632ea8ea9a0e0ceda3c54664ec9f5bc1ad2bf97d68e041021fb27961ce95b8bf0a03d166f3ce60597a9b6caf37f17b533c1cd5135d5c513b4b9c3024ae0172de95423feff256a2726cb3e35125b67768c5fc3591689362a9c54d0e185301474297834acecb13be30e2a10ea4397014ecd3db3a54859fbacacc2c0914f32d62a3c3731551be3b06fcb52fe38c01d3b40474dc71c552a9ddf44ec4d96c53976d2b6e35c413cf9ace308911e72f021dead6a3317afac64ed9cc4160a6522d62dbb8a0eb7b831a5a826bf6a3cbf6adcca32367d0f0f42a7e5a05d21a4b42efc31304923cd133a1cfc19ffcdc2b59c423a9556c72d28d9b54cb96250cdc24c7bf1e2fab27064724f86ddedce724d60ed5deede13e0083f32437bc52d3967f922749781ce33f934e9376fe95177ea74cbd561fa74fd94405111b12ad547f3a9645780773d75f6322dd8d868ed44f7ec27c5fc9cba5c0a348adf5ea810ef7b8171915f53b1297d6b8d3a6c22a9c38c921535177bfac472402492ed97a25b03658f63ebe8d2770d674cf783118e0fe507df98849ecc3e550f62b695710e0020c07448ae3e5c22d2f50d862536e1c6529c1433e830f4dd576c550161372069e16f7eac8c40a21c8798d3099a6c957e07fadd31caa66252230ac624d66ff9e475c23e89e9b0c21ae443222d58f0370dd28c156305258546b7d0ddbe2728d65bc976ad40766a92c5ee64994f2cd9a1d05d44eaf633f8fae664aa355847fce7d2ede5d4ea5aa8edc02ba40ca90af244b089b87039a6ed3257d4fd722f161b25f62dd003931f037f7d2fe3973de5328910f9c668a5697ddb2caf73c415c26b59bd3c982e270954abd01c86efdc6bce9edebcfa0dd386301b8a79065588ac0655756edfbb09041bbe41d0099051fcbbade1988a0db9774f099cd9ed5f5dd295da249562f6ced951d3f2af8be5c637200405b9da7cf8fdce7a4b713dda2c3feb90c8ab1db16dffc5b2b96afdc915af7c4825ed6d5d2c57d840a82e0c4449e8978ecf02f33fde104d6b8892b353e9521ff0fb1bcc1fea93315f907bbc5cbb71dfc8c59e792fb1390f5e89876da70d07fac8e350c42ba0b4c0931735981a972831eb4ff9ded1a484788d426084661b5683d11162d46b00fb4ada077dd743ae6093e246f023bcb245fc1eeb1d7c72a3f312cf466fccb41ac60ea2b854068d0d32ead7ab709ff0c8ca3901609901618a2ec3c1fdb7c5b4d73dcc47e265d7dcc5bb3fe72c63914ae7ead17278ca45f14b398ec5e51aa07f61465f3871b7c5ca432fb9d3d51ec22ddd9f4218572d7d24e5540ab4093a102379ea83194f954623fefbe55f908c460d8ad002f4f13eb1525a7f5b842a0782e75f0506854ed06a90781c26277ace2f5c3699c4d814a03b3827f0035d83a92a491d9fb2f5f4699deaf2f7cf1ef061bd732ef124c7c5a0ec1d68c52c298a3bbff202da537aa44202edc6cea199a6e030098b35d3bd984a36def62122509203ccc75b7d4396fadedf5c2cb9a9bf566f1e6d02dfcb6de5f95545f758950a1c460cbd63e763b5ed016407a3d6b8e03a83a01d5b484e3b583bb23b907888ebb3c90485730025da14365f8970f7df118819db2e7e5cfea39b289f536eaf0d4edbab151ef7fa5bd36d5a833050d5310467f637187ff4eec05857f6c22e15f1756d8fa7063c9a05dbfe6fb0c9c5e8c6b112377052272beb3ad1fc851e2a85e082149fa867ddff1feb4e81e51dceea8254cd34c9790adee688fa0eac70ed7680c839bc10ec5fc3305d4c8fa8c05c30ac49072f3e804194f7742c5c0a4b2d896636992350696f1ddd72d32714e9c5fae7b59687d956108b044c04268ca5cbcff9ab63ba26f1bdc179adf01ec98b733b3cf9b37286f54a52018b21ef59697262c9f942d376fc0b2a96e5cb0139d2b0db95c5e036e5addf366dc3d08f1170dbbdfe613d04d173c1e813046b33540397117b7d6971cd6f8c1cf81bef2ea82eaa43265a5ff786b7cd74e7d5f4f2de104b586f092ca0fb88606ca88193789ed3273025bac0d8d2285b91fdf57ab615bb8cd08027ac1eb717ecfe55f3d8016484b089ebbab7e8efe1edea1a26bb33c52e4598ad74099a2ebb191c3bc4173ddc5f076f268dbc35eb26196757ad5e261ae629efb87aa4ef393530213cc3ff61cb3b02c0683d76fec903ebe7a38a986f510e4e0482a65d68cb337e40c8afada10ec861377e8769627af2b873e4a2a69ef63f74cce747aaea93954aa6367619ea582755736c237a196e76b30b6718d4fe51755ad2fe0f2a275417564fbed55a545c26a0d4352ccdd56b8ab7f458802f256ea6831c6bec317e7fadb7fa7cfb561005e6620584f8b3ff7fef2f590ee9793a150a19dbdf9f70fc0f001d18c77d59aecbca189283f10205facf07d884004d53a18e305997d7a6b2a69b624128cf2b6d527f4b2aba5cf76f01a222aa3d51e766fa279c1460c5712579b24b84750cc5a395288fcfd0cf42e3a60d6135e2f14db83fce05e97e5abacc2f9b4a45ab53b619988cefd45f49cfacc604dd499b93f53a96927cf7b2d965f421f48b882b6b548401f10ecf6a9281d310eebe18f9a8019a94998c6973cf3b7c42f6b2b1497e3b989f897897dd0f5600feeed50095df6927240859e6068f247cfc405fa954acbef2d41d7039eb0ad33d714ed2d9d6efffa1f7bedc1cae6c4413b2b49bacf56148e935304e824ab00d058a0610dc3f00ab5d4f73ed78f8b7c1112b6f7b6b3d6768685f464a0eddf57defb95b491249be0f333fc27f81e95debdb01e793dc53b8a325b7146529e8d7b6a98e7af9bf9bb79e84401d744b9787173bed9b6e6b0c0412ab97e7a62eea85d1339a6cdf9ec049a1007eef5a0cb5bbb30630b31c1e4799f6d0d19a9ec196ecaee54e807010ad0a1c553fe17f5d9466eac4f0f8010e8e85495bccf8f2c19c9bf222a967821a45074b2c52e87e7824725217c2d4d47b68dce8cb6805ad5b3ea4d27af92a241f4e29a5c12a274c852e4346a0500b4e2a0aff1d702ccd347ca3ff36e45f36c4909a556a2bcb2a099a32c4e31d5b8e38e8856e5491cefe03c3df8063c58ab71051bdd1447814c221e638ad637ab8047456a332ad2894fd7c6f7f69d017f3e03caefa0b4c7c11573903657b6ea2d6504da3e90a548c4e105101d2b87b646f6bed0e4befddf69257f57000945f3fd60877893843e26962970972d46aae1cd00455fc539f3d6c8a69cd7f6bc7563e6444c45daf26aa56e5b246af3929f87212d3bf87daffb061dea20c637d5c8c4e30bad4ffd81618fe4afbdf33906894cf99175506b413dd642d9ae53f2f81cfec5d5cf67d070fd3e41cee9b1d6c817aba817bfde9d08d7b56acca0b9376c18d49e134ff987aec5c014700fec09b2f672d951314af36b74d166382cd0d95122edfcc3e319265eb2712d08ef6b02cd0ad4f5757c90dac7e6ab5ba9d7b4353e43a375109296b8f42a86b603650301137a943b7a7e6a05c2f94c29d2d1d6a9004d681bcc6a09f7b8029d5f3dfbbe55b5c87a320ff2efa19eaef9f05bb3c5d4c055873ad50819611ae3a437d4e3dfb1683cbb1c497d81676afb6127910179329fdacb08b9ebc006556889bdbf97c80da57e9543cf7eb20729c7d086c58c89cd11d09c61042c8d6b5608a288b6761c50e719a40bc25299b9b4e98b3ff227c267e4a3ad1a8c26bdd7141ca4cc7acf95c4e3ad603a8d13a44edc0e7f16a634a042a42edff0e96691b948b2b68e0c3fb9af9993615b14a9c5bf3246d1c3856b43c4646e1d2231877efdd7d170e1304a349dfc34e842c604f8412326377ce9ba651d5c2462e35512d4ef760e4bd227bb3c85e57f87620b4f5dfe4a907bcebbd4c24ec403a14d3f901c6836ca8e05759c8941d58fc2e77ad5a9e125bc20aacc04e4ebc3689dac753a9962832b1412c0ca1b43d579ba2f59ec7b542d45765bce7181912dd62634f4eeff56efa80d51307b1630e92871c51b73370e359e37eae083d5c06bb68825143c5a95e171ecbb929874fe6c02dbad37bfea894eb0b28798f917620b8d0b84e1f2fa4b04fca96f2b12f6e776b81bd2723b367ef07cf3c5f4bb03b2e13d0fe914f90fd8f4d9b3b7e72657c646279efa13c90cab2c95820fa4814882d878c81afd46a34ef653f0ae5ee1a4acb845c11ec2608f95fa90f8b18e22758ecb7d4e00190e0a228c5cea1c928c75e1d027ac20ee203494120d877b6283b00980395a0eada631d67973cb75354badb26724e63cddcb78766c2ac933ce47ac3a249824dc3809397c2d5f39a7b024cb42e08a2874e969edf728e83240ef927cf263f4088e24e23fc97813529632ca68ef80caa61929fbe54848aa175c7e23f5cb44e00f62d8c425636a2d6aeed108caa0cb079d944ae77d23857a3b6fd4690fed046ccce6612fd64b8f3c2f1a064acff92f15cac4bce5b7cbd254893e3e35aa15054a1efc6619c4802ccc5c31762a05781c3f0f9cc8f43c7e9682a74004f161049b797370f673083a9845a6e00a069bba55c34536b30ba334926446c4e7b6deadd185d64133b9997920eab51c64df09a19c20b56341e59b12a524753392edb0f393d873dcfd58c22e0169d06bf5b5be0459c5e7273c1ef2c39b2a35f33d0e592ba094f06e5160e1d89b600da798cc348547251ed45fafbffa3a34b5ed9a88581a0f97564d2d2309e24e4b29a48ee768e5b0792d78d2c6d7113954f5ce06883c07070f7a4f9760025fa10c126ef379a95b151ef4f80d082b9c28a941aec9fc547e416fd9a9d2a2cebea72be30c117846c62c69ba5e8c7b37d0174f68371deaa0cfcfeb29ef303dac1f1052f295d4b02512b42628dd36a1943a012ecf73489d1c52117232c9531b8c550d5845d138867f3a4ed718fec1c6152deac2c8ac25fff75bb2e5e9075218a71a8350be975520df2b244f8fda53ab7d44365763510a7f8ce48e6541603fdbea997fa462ab4ab054189b4e6f525804a0ac6846b15240befb33b6dafb0d742b9bd4deeb7580427d9a59714e6572dd17d88094e33669157508e719b6780585760ed15f13bc4c17d3234caecda3414f6d98f900ee1a951decb15b4070c0e853e0e8c59421e027cda8bf3358a4479c4b103eab704c70c2b1e697b8727560dc5a4d50548b0abc880ec393652b318d1c28107250e4a65a7e30288c814b4c4c4f7103ce7b8b766f4ba5f063d3ae1dbf87c70e60dc1342dbb77d9b84e9a1aec44d4253a71725b49c59cb7e4ec0e9241f600f8dedac85c5359827e55a261ef15d23b6aa948de54195a3ef646dac01bfbb803accc43a3b2258743b07a725e83a773d195f0736d37e523516734f1e2823790988823aa14a8dc2674320ae494666b6afa35dc981848990909a2f67dce26144033c78f92638c6a5c7525f539d60bf0ef476c070e6e1f11a14296633af946dfe430cae59ccccda40bf24691db9e9be15259ba0e190355dfa0fd64c4f9326e3543eac7eccce5ae687121bc714d0c4116cc593177151a3716a2aba66e6df734179e5e87cd1aa840cd74251ab0c312d7cc6702accf7c748fd2c041d5251ac3549be9087a7f5cc927c6ccbf03c8a995c7a7f899550a5508a25862f4a652dea8a76e7ded9b19386435bcd27052fd14424f672c467417bce36e49e85544d65e7ff9301262b3c96dcd702ad0b41090d56b66cfcc4eba65d0e513dfce2d179b4d7708d6863490c18bfd9483f959f24c006c066f630dd9011b4c72710efaf3aa084cf98719a7909c9e5594e72843e63c960aac2e6ac904dc495c63adeac2d4c2e8f7965c773ce78e4c635205c33239fde708ba04b2ca8aa5f4ceaebbf41c466d9a5b7198194ba4461774dec0ba2a940630bcadc1f9964814a2f46240cea67393c21b080fff05ba9c9e2ab9342f12c4a66280d9b6f3ba3f2198455b1ee8d3192ef7a601d4102d437ee715cfe996bbb70a6a270eb6b821767f34017e58bcf79b74e2a7add9daa244eaef8bce6ae93330d475e62bdb05dcb2c37018aac5694d8244c6e8841e12f51a9b8aeb7bbd758e67f37b69b80e3cfc941d4c0fa6215572ee24f67b20c1b4c73d090e02bc9324c1ab532977e5558245baafcbe3c8c4a4843aba46121cf2f39ad4b02d4360d7b692cb6474657e10e8e190f2f7574aad3e7772b84ac0f4b6c5f6e9b9600fbe9a1ef1ada91680d1a1802f94ded493caf5a4a7a54cbb889ecc94a2dce52e0af05e03cfc80d6fa294b07fcc16dae11481b515d4834324feeb51892f6fa38176e4ffe864e5d52a768e7914f80c4cebe19d428005d4789559de145de91aa9648f52ccdcea5f6ea39495f5d0b710f79bc10ea710e0b90912d11483b17f22659424cf26f67e6b19e974787c14a81242aed00e29b2d746e2e23fb5bf619bc95de5a189d7b671998ef02182adf0a51f3c0ef5ef97ef2cc90200e2dd0c258f877fb84c90bf2e93216e307dce651f6f2f28f187cc01fc826202daa49ee9ce56ac8e323675756e0c48d2f6ca91fcd96c5ad540f8e3eed70b614d2a8c79f183c7de0b8432cc4ee9ef094a54374f3afdbeee60bb80c8c686eec4e7c3891f858cb336f0a59663dcdb0340b6b1a063479b07e638a37fa60b39198bb26163d1f554c814a9583c17aa2565ab786b40d2e783bb5a4dc3b7210327624b8820c28b82362f02385b39d5e5c15818cb531d756570c4f94c1fa6efef011d689de38767f15dab537bc69dd88a30effaf8c0dc98d91cca6755bc7294d1dca454596c7057b68bff486796bd8e89d3637fe9791fc0b4345a805814299bcd9ff1e4335177987147e71d842193fab5aa0212bcb14ce6b5c406f4577e46f701680b5e63accd98271432870bf61cf80dc9aa00dd4f54c117326199b23ca538ed1fc4eb84c522668d9bf4f971424738ab884c0f4a47b93c5e5c790c1e618745f64bf86a7abb40946b1bb6bb05d69d6b122eab962f0e2934d8fc5ba20f7cbf02e08911e42eab4087fc966586b7747525594559ccfd35e9667f9bd73a7b7c394240b9f4214c7f9959b53113431312ede171428130bc318b28b59d14d61333008098aa8edce9d3d61afc5035a15ffa5e699bda0f42d4ec26d0f399d8140b83935cc6763140334a45270bc914e2e3d463840b73e1680ec78f75f428b4aa008b9c386b1a01d7a680d1cecd363dea40f2e333dc60fe31c27e8e059e05c17b95d6255d65a11ce14ed179b52fd95ce490c7154f5bde6f28be42177513e42879171a30042b7db09de463250a4a0e0ac0e8ad5ba22b732fb902969726eb64f2774712adbbb166a3cae5eba04cccdae6660bfda5474680bcfed6bfd4a1958f07db884deb5896d13896b082f97177654534a1c772f738f78a10d6f55621f68485102542bc863c732f087fc9fdd1b0166ef8a5c207beece331c8b3e5299633b4ad1deff08b422a26614c584a90f6b227896953cb9eae9c15546cf0c7a974e2ffa754e5292edeb54ed2bc47a0ce73406ee869d2300bb684d456f68d323065ec2a9502fd02f8875a3a2e23ba59830fe1c5dbaee15f367300cb4ad2b35520125ad23c88bd10c0e2851ff134676ae73c5055809ac633307fd299d33a917135dd1f25db9e75bd0bc674bc5e0e31569ea6428f468fea997ee34d8be3e533e6de8ea3b11970b78ef344362494dd2913e87f502477ce7c32bd57a77f067163e5360f11c9b86b50de28dfe81b7abcc9b8e7a72f2bf07c495f1cbdc5a6275dc315ca90b37926779e6e6ec07fb7ce8cdcd00ae5c39768a4f70b468b62390c4467e389575c8aa9473a7b3d746bb4fad3c37f1ac83a8a214ff58927e1b02305165b2d4be54b4f91e70871a710c9270fb0483f899f8b33a7a258ea50ca716d55166dc24dfbe6772cfe9040cdd5deffaf1a48548922884d3f7375dcc86de4bddd79ffeee5a7a9a6d8ccfc9cd27f4e0fe210b4ee807cf0f5337832a2b2997b50482e0ef3e9ad00917e65900b2aeb838225f1c23c06d7bbe948c914c5f80d9b0e61aab786d1832a92065c66ace5e4376eedaa297fd80a1c3bc06e88b2165edec898472012c3f14318ee43597a3f89a8a477e18c1e1c01822001eb23876de8bc4b1782be542e99f2fd9787531045493acebfd763be0d112a4f9262b9382d9a2f7dd094b5c84fb74b8d4837269b84594e5ccfa243d97e097d8327b7ce1eb0c6694d4ad2a4817a0de3b2769975380c930a40e4f18748bd6aaaeccfcc1cc9e1cd6a628b7785d75ec1622878b6d77b6c38566611c06d5f7b85b146e744adba9bd3ac86fc906f390a0035e9c69a3ec162065b17b51b43068d524f14e0512270521e5fc52888ee9e77bbbbd2ece977f407950184d54f706346033831cd7a8d03efeab517d4b1e64590b8a0fae19f8c7b1292b842ab3c4d99a951c996154c081d9d0d35d3046e4bbf992b54f9a1a1806ad43b39820d30f51a857c291fc0e18b30aa5b3c2e3e8d0270fa7bf0f45ebe19bcbf931854d38ff2dd9d912ce7efff330e25efe9ef1c2bef79a81f0f5e1ea72c08491bd1cddec1c36cd09d86705071cdd9864acd79ffb8951e01f797c9e2e0467e0311b45c94234fd3cd2028826bb8e8d02eaff172f9a3f4685e579455ccc5889e9cbab804f064cb37c6157513aa1e47b892596fab8a017124cb04fb787b3bb0f08d67c3e1fd89b7caf3d3c738b1cad3b32052daa73d9ea81e02d75df1f39118e656681dd4ea500a58cb336c5a94524b2c8c0e3d5a8a284a66a608a48d7455c84ea58d544a491d8885bc17cbe5779a9c42a39ab9f3639251e2add846c756c0d526e57e8ef35c316287e948d1eee4ca0154deb570b5cffdbc295a672bee09ae44e5705d4309c79385ef88b8ad90491597dc69f1d75cc78dd65b9631302bee7848929d381ccc669d2ab8d5c3b48dbad3cfb4f1d2d30ab49062ac4d01435e5382d00c94ef4ce26587d0ed08fe503e26336c51bc29c873792ef5becc8acd4b812f09386a3573adef4f843be892ea17968854d756c81a143f125f7bf5d58bb3493757d54eed5685ae3321530321e28b78a547b5c492c1920c5bd698febf043d6964ce17dee7c53ab864d725bf0fdaaf8b47cd892d4bb9a2000bbb0af70d6a372f35b77c4795e0714a1242d089f8139ae45840cd17c02f9be033730a3098f8a4ffafc69b570c7e9c907ef04985fdececb625d27b23ccc7bcacbb8ec208691761421b710f2001888946978a44ea905fa82bbaf37fe2ab0bff6a107c4f6e2f4ae689efc8d67f45d09b38f38f65eaee89d3b5ba8a124772af405668ed2e6c1a2a52f599188c77c07efec614b67b0616d32ded40e0eb3a3efc59b94c8b82481be4d501d7de32be6f8a8eb362e5357baa0501571f0c9ae7cb12db5316a08e1409bec7cdd799cc36e813ec0345f344c79ee8b57f7557a33c13e896b73ddddc87a83a7281fb382e115f0bdca703a09516a973356ffb0c48c7abebbdb1c4718e4e227fbef848b1019e8bf387cbc6abcbfb4d9bf0005b08fe40aea6144eb1a059b2c3ed20dbc2ad4ac88ae68c694576ff5df80099000ff0ac31b996f7ed5217a6f3fb32f0cb99dfab8981b7a3fa29266bb86beb639f1a9d650e1f45f6f8db38d94a44c814472dacd003cfa42b9e72ff1176145248ae0bb2af532da0a2979a83aeb9f5ce2c19f180bca596c90ce0af3791c4ed5dd1bc0ddf2ce88c82250867ebb1d9b5078c0d965b0f99caa532847559748ddde4f4fcaf62d4e6da2769cac4b1543c6b0200cc1f37f592aef96d8ce483c392882856eb49e0b96a6f1c60ff4ca756124ce55b5008b21bbf46a05e6e5dc1b59b53708ee15c5cd9e128741c97e50e8b3d84273fef02cd7111d3f2e823bbb6d57fba454cafc0dbbd1a0799d9c6d899d9658b2aa9c51ad21aef3b1b7e55a9a9d7b137e79ce0395da9ea3b6028d4e25f3859ef93e64c52e02f70e79c5449cd5fff370ab18a193356e75863585a5710accea7f683f8145ce1489397fbe5a67779a37c01e5f92abfcdecd67b7f7f68049640f451539f41fb0d4abafdb1f587d966052742d2942105b998e689114aca0c416e8a7341a6c2fceeed0875dc05125b80d6a9f7ff4511a00ccdc82714befda9f72f56cbf380f21200b2654843b3fb4787d8927f977c05a8d52aeee939fd2f439ec61a0ad1e1f32d4a46ea2668e37f10a92e6b0b31372c65956ad174ab9af970a180505dda26e06889f48e80960b0c306bb8ae7cb3a7610852aab72212854081f78c8ae0fa1997d1827a46b017fc0e6c4cfec4531109a196c304f87deeb113b464712da9397d720b959d6a973a814042d027039f0672dadc33aef97c2301a99896752371e314b5fa9febb6edf938bbe4a7338bdc13967f33150dd5b3577e97f1cd5f091a2632ffb60b6e976530028dc34512f2cd8b2f038e36416ef38762848ea99ee0395762ad04c5ecf94ef487c44e213db9d21ce1ab2b8b7e897553dc2375cd91aa3e602b1ecc91df0978c2b40eb7254814172bde2a472ad6d4a1774d484ba399ad6296139bda627f6e373808c9cf693c07a30a3a71e6ee817a87c40d33137375be0372c73429b6891b22f02f5b77795baacb26da819a8357db39ec9e0e8aaafe66e0f7bf9261124e0e088f0dba10849f6129b3f50b24e2d8c6c74a1ebc81faa02c53c27f692f11e842566fb899f424fbd5881e1dd2da0899a8b88d0a8e01175241a6e16a2447c464e790441817339abbe82e0ef2c2915ca6d80cac0b85b49d81a6bd7618a4ee9717ef4815fd9fca83a3de7d0ec0c20fcfc90c303428baf7740ae6f15aa9a3ed9746ef3b0fe3dd3e7fe9c4fe91b622a35cec6d0a7b75c332386bbede290628adc15dfef7c437e79ce049d97418ac9c9bdd2bc080b5d223326712b1ca74497d6c741b1aa12dcd43a9f654edb233d869f45be03afc7e468d8b5d580adef3961909429b5d36c08ef3fc87a77b6f2747e246aee6f62e7e437cf8ea9fab1ef4ec3ecabfaa1282d4df943c4435ce7b49f7043f1d66ac7d9d8a5a258e96be80f514ada428dddf82ca377942f550b6a926c8f30364849bd481255d66ab668d06eee2443c184d54bca8d32a2e5375a9a23944792fa719d231e4b8a0be329d28bf1031b4cc7f960f02664b32427e7751087f45ddd5adb406e0a00a32494c67d189e508f2c5a6cf0b1cb01fe8c29e2918b678180aae2c5b16ee7641788bea31f6e1fa56c111fae1a7f6c0f864a6cc30f406101c09698fe678d2838c6c89d50c1f7fb1068cb82169e6c277e7a910ac7827b41a609a40380d8307f8bf9eb59e6d1a80eb7df46af87a11c21e1a976a082d9031108cf79626757fcdc7c75ab972b8b33dc603eaa19cc8e7bd2ef71f0fe235384d9b4a84036f7e8ec61edf6adda295147325ed4483622249ba2aa45c886ddae25c600b2a4b07da278266a30efb88a1fd99ba49717e7586290af09c57cb64c58e43045ef51f23a01c3f13138eddc533276ec983ba282a61e92698cbc49c9bef908d9bf7b5f0faaa25e776680f55143d3b87a13209fa307084dc702e3843ee372b7dbcc79bfa4fcae2f91f0d5aa77c227ee3aa59bba11336d8be0b0b698e74f5744bf48b5a83f5961dcf687162c946c3ecdb31e1a006147158b0731e393fd6fdab7342ef224c8a28441d9e1ff6cf8c40ab913d5f707fde95ea97cdac05fdcc6aa0a76a3edd21c5be2da1c709de9dcd3efa1ea510ba5c612f2e9cee8eec0801f2d465bab5e72c1062dd214b469d601e6462758ff47277d4aee6e6cc97a55098ea284a4aa8b78e004e46fb7722403c483834c84c0b386f8cacd59113356028515a60c67b6bc6a75bc918086a19b1c632f29667a3a49d48e4e3d3d82037f00a70e996b513c998ce4ea744bd4eb8aace45618434fad9eb5955a2556236d84766464514cb0e58ff866b1284c0ce91b59590f1a69c81b145cf9506bf01dab36c2ef3a2f6a18bc5ead45db870b4326e93aafd411fa775212e3ae40c76816cdab3bd9f548ca82946855bcfe9c455a3af6cd5b4531d57f9faf3362e25178da2dd25c880e64eeefd7c0d81da16ca6fd3079400f25e9eae7b535d5efa4d66e82c6b6b85bbf1e51b1912d79c705d62e78e2d7a5ef7b651679bc0cbcf02f740920cf8c8311c3cb5691bed5a73ec7f37f3b1743a2bf2f6164985e67a5fbccf945d6a226c8682eb384e4e3486073b88e3479b9ce92f8a071906137625d5728f9e90909c27bdeb054df1917b69bc7e049e1f06981aad0483c123afcfe0b19d5d10d44edd3ffba0da43cd840a9c750ec2e1195c6176ad9e1985547d4e9090862c76cc0c00fdea7564ede002e60671e53b2f1a1074a79e7e4f8b5a13d14e8c35c2473ef2e05867eca12247e5042a71977ac8a2cd545b5921c5af585e13a7a601ca8d82ca6ad50b4faa251925554fc1bf47cc5f9b6c64a37f4777ca2c84dd9797e14b911f5f415f3cb045771b4ae1040e4aac6a058fe20a983edc48c6b877c0218ff70d0bfb368258fe06d3aac0d797e49d6e0df3f2b32675b46610dbd1fd752d6162cb905fbcddb96cca317e43fbae36c9663b8356c0edf634371dd1a0c0dc381ab3e95c18dfe07bc62a1ea37132c65207bfc2a1f626c1cd7f13f2e8f9f8a62637e2a1a48cbf0a8f71e4b31c3d0001c2f9cec16d4a9d405bbbfaffaa7c9da3e15d47cbaeb45f7923c3fa549460cc4be8ec6d505d42fb332b2a7e42ea7eed3a09c9264b53e2802e70d3ebd0a2f89d1af35b7dac64aca5ccdf95bbcfce7c7f496e2ff491c3ab491169eeed8097aee3ca4685864781631bfe2bc96eaee52c120cf075e3ace3ffc176ed10406cdffd53570d0aec2e9687b1b66ba4511dcb5406bd4c9db12b677626c871ce5949dabf54e25914377461f00648117e893bc2dd62b0115a4344de5efadeac8f3f815e139eecf91c388773250172a066529e499dee5ce82107db1d8d56055402bcb85fe3c4839fef6db44d3241967576e75d8546370847a9f842ac59ffd662e89cd164188f0656159a1846670ecb6924f134791947b11abf7e2d1b95a184563aa2febeada0fc1fc37c7eae616b405070fb68805c0308b8c1134e015d11d19ac271d869c9e5b7d9e8d9be4dced1304331cf3a35a0ccdebf2e2ba9bf209394d92c999e10f7b2bbe77e61b34a1aa101abcf2c9dfd811082ac2bdd89bd5219b4cb31121a7cfcb1fd712cab48d9eeff53cb464391d545edf3a59127c994f2d706fde8a686a040daaf284e288e47108cab2b8630d06237b88eff5ecfac9463392b6e0ccf7f11b9542ff333f7719741d1174b4eea8a2022f04b4c8f980a92837eb921b6f619fd50153346c42c27cbf4b76b6baf36e09b80385c206466aef5ca055ac53101e7264a2956268e1a54dac058a7a1dbd8bdbdab22cfd7037bb0fdbe246cae61e95cd39b7fc1f6d0631f4a25147fcf69280cffba9ea2f8078d4dcd312c9143d7edd10a0af31649f0c898418de7195f4a1da9cebb5c28b1b6310a45decc5eebcf6b0eabfb026d5f99e9db9aa000bd5565d2f681ea52cd8be9a432f85fe971fb0d2beb1aadda0cb977747486b626ac064aef3582e2cc6a3f939625f85434d032ca93c19815edc805db25033765cd08451d1ab0da135755bb1580a030b38feb387df1787e81d1334911c658feb275c7ea6c3c447bfa77451335d5ed136779e1eee21648aa88d4d2343b84e3d0ba745a6fb1947a6917d11aac869370e63d00d48b0b46df17d5bf203b8d89a82ecc8b3fb3cd5a8d1b6aea01ec3a686764918bd3ca57fb6dd6c4bcf44c7f1276debb199a3e8b5e9f74e2382315fcf4b3c5636d86a5c49769b19599189abc02d2a179fe27d2bbe0d7fa47927809cd2e59cf4226ee8143ed5f5f4c80f6fd791f770ed6d0a9360d2a7f18e8833dff336b8182cb56c13ffc7b3c3e8cad9ab9c1a3dd2fd097c25a110d1103db8ffe459514a5473509b0f4758e7df8d2ed90f1e479db39e3c2cae06041ee4051971def7fa54ce8f2dfa5042bfb18fd52a0a9cce029242f29aa344e6520a4c9136a2d4319f66b0170391a370cff57def6128ffec23b2a06f509e3528fe04ee5087f04181ff15cd5281cc88aed33e79b59dadf4c43e735b510ff9b1b7e81a7c6b0e1b00489d2a9b5e46f937ad6b1f8fc03420ddb979b726d5711628bbe4e66a2a3d328628ff7ecaf8cea1110210e8f0ea6f1829ec33f6b8c098f5ee84c718fc9702cdd552e49846308cc359a62b04b8833aecba124f51c7b458566533c9b2db096992ae099666ea36dd0876c06b3bc855dfba303af2df67fc2f09e22d5adac94228712ba839b660ecad42e79b2de55c4d61a36e135d9a6d6570128e36c85d6f051b086ef4b518e9c34a9bcc0a76e6c0b3aa2a328b12098e89441202da366746fae5aeb1b6773fe7588b1594d93d5bdb2f739862d3a5d969323508b52d598dc51ebc1428402f238889cbaf1ea7f6e01441c23fb6c38d5b532c08ea10a0722d559413ca02d9a507c39201996e05ca385fe08dec39760450e385721348349852917571d49ac4e8a6a262495717df4164bd4a36af44b5917d49f795b1f81cf960d0cffbae7f63d8f448dde28568ee42d75e7aed2df85a9fec7241b65f6bcd394a493847959331764d0b045829e6fb1d426cb972d303db36cd05327c968014fe611f3ddd166717b1cd63df093768c7191d08766eca4662d77ceebc0cc8f498685b6302555cf8be95f77055bdca90fdc8a923280eafe61eba254f194d0d92067e474239b4e4be64fd6d5ef4b2741cffbda4e5456acda3a9cf9912c27c09594a8d687098603c3c34ccc7f3b208671fbc397c46b87adfabd24d0991c263727513e05a208f8203e2f9e16f117c4901d8f7c5fe2b8fa1a549a1972b0e02dcbf290386b2b09085d7ce52b72af9b1bcd2f47e3a227b53cd162f436d1a4862fb8216ba68d8941f6ef065801e293b2f66b57fce600dc5549a6bbde6dd32f1bf3e3249071a39151de5ee8fc40dcbf00e20f07b2919c43e4e2e8fbb6fc59e11ff2b56877ebfd5765cb5da9184bfb4239f599a35965854a1ceb326ff292e745044f53ce726655ee31d6e34d26b41a2316208f74b0d262c9258225ee947ca8f8254d11b906817150b4051e72ef184ac7ee95c2f943ee285553ee4f3717e30e66bcf9990949907add2c761ae7d1027f8e6dce4c2835ebbf6cb72633a172c8d6fd43e2fc25d7ddd827c2405a3d76a2680ee40087014b5ecc7bef1d8b312be43a532515f3c9b1a33addaf3f2eb71155d37de3e813cb9d926078f242736b85b27bea8401d87dc019179993116c6e202c12af9e1b376c3b6988fa8306dac04c06048f3250821126a0f8d3eba1276f1a7870f1ca1e34058a7a53b48ad85313d516292c07a2d2030c8f3bad84587b9b588edafca93cf730d7c7d9920aa885804eb8e74ee882a9d3d2c3883533abea99e1e1982d70ffb6f92a755231d3ffa44346c7db19fa1418b7847167093edc4620bcb6bdde20f270d3424a297e3c4cc0cfdc2a308e486b178c87098037eb008c20f540c65a99a41e08f9b7fd8d7da64704cade06ac923c5da79555e8f2ae2c9680899ae86ea761c39993c09ca66763d6c1e2104cfc17c2e94103cb5d2eef685a70e8f1819fd4c1d134168f5b99b240a847c8ba22887136e86d9309c07d4b54e7aa9b7a340b064ddb995b115602791f7bf24e2e2cf79a32b58bb466e9f1345046a4a2986ab72b23c021242fd2b0ebbb502a7f4111fa2c076fc6b975c8ca82138bd994cfe1b90fe5b142e3b4ab4cba01a93b5e2ca369ba603f85dbc63b553985b64cf919306b7d41211f3b10e7ba581268553af1bb54a37e2af0a6295e512a411c9f11e55de8c7130e01fe525449e428f7109098daf8f53ab2e0a50b7df49cb4497fd83cf87af332d6221cada712d7c47158acbbab0a021db9ecde787b4410b9954dc97fcc159d816abb9bb581450a3b34ec3a77f36bb80624cdbd745e8666bfda2bda6a0a2ed90bf6d9e92cefc25706fcadeccf07362df2cd5560ccd8f7352155c8063816524ead346a5e726b6d9f1141216ad7536de2bf59924dfa231b46a99514f8aec2a3a175b1a4b85bca2f4f98bfac0f88465cbb43f40c151ad16c4233e9feed42672d9cc109a9c86ab224d87b893188f2ecc4861a81a7b1af3b223c26dff66c520365b09541eeccb01b272c3a112960c6d364be1a747fcc5ae5a3b13ae8c4d608482d57774bfef3722bd324bc492ac032190973ae222890c0377e27d6df34b6c2147c2676e599bee428da08a878f25f3056729d4cb470b6061cfc049282ba037743a4e85c7ad1b40c679cef591039f6be16e6c2b927d642923bf79f227272a37569d5608c89a8744e3487aecd9f7a7779c7cbc2163672d5a1bd2309409eb8386cae9c04a86cb80ae2d1a7ecbd87c56138355f05fd83cfb191cf090ad11dcc3bb3dc044c40b9179f7d69550a402ce274fbf9b8fc4eb69d19294a4b23bb30b69e42158ac8b092d49bbfa3095e4ef7ba26927500f1b6a3c42576f7d9429c300e0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootorthanc-1.10.1-lp153.2.3.1.src.rpmorthanc-sourceorthanc-source(aarch-64)@    /bin/bashrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3b=af@aP`a/k@`]`i@`@`s``7@`_k_@_j_@_d@_D@_&^V@^Ǿ^1^@^{G^y@^t@]@]W]R@\s\]o@\Q\P@@\G\'@Axel Braun Johannes Segitz Axel Braun Axel Braun Axel Braun Steve Kowalik Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun Axel Braun axel.braun@gmx.deAxel Braun Axel Braun Axel Braun - version 1.10.1 * for detailed changelog see NEWS- Added hardening to systemd service(s) (bsc#1181400). Modified: * orthanc.service- Test for SharedLibrary.Basic disabled (fails with new glibc)- Version 1.9.7 * New configuration option "DicomAlwaysAllowMove" to disable verification of the remote modality in C-MOVE SCP * API version upgraded to 15 * Added "Level" option to POST /tools/bulk-modify * Added missing OpenAPI documentation of "KeepSource" in ".../modify" and ".../anonymize" * Added file CITATION.cff * Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins * Fix upload of ZIP archives containing a DICOMDIR file * Fix computation of the estimated time of arrival in jobs * Support detection of windowing and rescale in Philips multiframe images- version 1.9.6 * In lookup and query/retrieve, possibility to provide a specific study date * Clicking on "Send to remote modality" displays the job information to monitor progress * Fix orphaned attachments if bad revision number is provided- Remove executable bits from Python scripts when creating the source tree for the -source package to stop it requiring /usr/bin/python- version 1.9.5 * Anonymization is applied recursively to nested tags * API version upgraded to 14 * Added "Short", "Simplify" and/or "Full" options to control the format of DICOM tags in: - POST /modalities/{id}/find-worklist - POST /queries/{id}/answers/{index}/retrieve - POST /queries/{id}/retrieve * Fix broken "Do lookup" button in Orthanc Explorer * Error code and description of jobs are now saved into the Orthanc database- version 1.9.4 * Orthanc now anonymizes according to Basic Profile of PS 3.15-2021b Table E.1-1 * New configuration options: - "ExternalDictionaries" to load external DICOM dictionaries (useful for DICONDE) - "SynchronousZipStream" to disable streaming of ZIP * Orthanc Explorer supports the DICONDE dictionary * API version upgraded to 13 * New routes to handle groups of multiple, unrelated DICOM resources at once: - "/tools/bulk-anonymize" to anonymize a set of resources - "/tools/bulk-content" to get the content of a set of resources - "/tools/bulk-delete" to delete a set of resources - "/tools/bulk-modify" to modify a set of resources * ZIP archive/media generated in synchronous mode are now streamed by default * "Replace" tags in "/modify" and "/anonymize" now supports value representation AT * "/jobs/..." has new field "ErrorDetails" to help identify the cause of an error * "Replace", "Keep" and "Remove" in "/modify" and "/anonymize" accept paths to subsequences using the syntax of the dcmodify command-line tool (wildcards are supported as well) * Added "short", "simplify" and/or "full" options to control the format of DICOM tags in: - GET /patients, GET /studies, GET /series, GET /instances (together with "&expand") - GET /patients/{id}, GET /studies/{id}, GET /series/{id}, GET /instances/{id} - GET /patients/{id}/studies, GET /patients/{id}/series, GET /patients/{id}/instances - GET /studies/{id}/patient, GET /studies/{id}/series, GET /studies/{id}/instances - GET /series/{id}/patient, GET /series/{id}/study, GET /series/{id}/instances - GET /instances/{id}/patient, GET /instances/{id}/study, GET /instances/{id}/series - GET /patients/{id}/instances-tags, GET /patients/{id}/shared-tags - GET /studies/{id}/instances-tags, GET /series/{id}/shared-tags - GET /series/{id}/instances-tags, GET /studies/{id}/shared-tags - GET /patients/{id}/module, GET /patients/{id}/patient-module - GET /series/{id}/module, GET /studies/{id}/module, GET /instances/{id}/module - POST /tools/find * "/studies/{id}/split" accepts "Instances" parameter to split instances instead of series * "/studies/{id}/merge" accepts instances inside its "Resources" parameter * Full support of hierarchical relationships in tags whose VR is UI during anonymization * C-MOVE SCP: added possible DIMSE status "Sub-operations Complete - One or more Failures" * Fix issue #146 (Update Anonyization to 2019c) - was actually updated to 2021b * Upgraded dependencies for static builds (notably on Windows): - curl 7.77.0- Version 1.9.3 * New configuration option: "DicomTlsRemoteCertificateRequired" to allow secure DICOM TLS connections without certificate * "ETag" headers for metadata and attachments now allow strong comparison (MD5 is included) * New CMake option: "ORTHANC_LUA_VERSION" to use a specific version of system-wide Lua * Fix the lifetime of temporary files associated with jobs that create ZIP archive/media: - In synchronous mode, their number could grow up to "JobsHistorySize" in Orthanc <= 1.9.2 - In asynchronous mode, the temporary files are removed as soon as their job gets canceled * Fix regression in the handling of "DicomCheckModalityHost" configuration option introduced by changeset 4182 in Orthanc 1.7.4 * Reduced memory consumption of "OrthancPluginHttpClient()", "OrthancPluginHttpClient2()" and "OrthancPluginCallPeerApi()" on POST/PUT if chunked transfer is disabled * Fix issue #195 (No need for BulkDataURI when Data Element is empty) - from version 1.9.2: * New configuration options related to multiple readers/writers: - "DatabaseServerIdentifier" identifies the server in the DB among a pool of Orthanc servers - "CheckRevisions" to protect against concurrent modifications of metadata and attachments * API version upgraded to 12 * "/system" reports the value of the "CheckRevisions" global option * "/.../{id}/metadata/{name}" and "/.../{id}/attachments/{name}/..." URIs handle the HTTP headers "If-Match", "If-None-Match" and "ETag" to cope with revisions * New function in the SDK: OrthancPluginCallRestApi() * Full refactoring of the database plugin SDK to handle multiple readers/writers, which notably implies the handling of retries in the case of collisions * Use the local timezone for query/retrieve in the Orthanc Explorer interface (was UTC before) * Fix "OrthancServer/Resources/Samples/Python/Replicate.py" for Python 3.x * Fix issue #83 (ServerIndex shall implement retries for DB temporary errors) * Upgraded dependencies for static builds (notably on Windows and LSB): - civetweb 1.14 - openssl 1.1.1k- version 1.9.1 * The "dicom-as-json" attachments are not explicitly stored anymore to improve performance * If the storage area doesn't support range reading, or if "StorageCompression" is enabled, a new type of attachment "dicom-until-pixel-data" is generated * New metadata automatically computed at the instance level: "PixelDataOffset" * New configuration option related to networking: - "Timeout" in "DicomModalities" to set DICOM SCU timeout on a per-modality basis - "Timeout" in "OrthancPeers" to set HTTP client timeout on a per-peer basis * API version upgraded to 11 * BREAKING CHANGES: - External applications should not call "/instances/.../attachments/dicom-as-json" anymore, and should use "/instances/.../tags" instead - "/instances/.../tags" route does not report the tags after "Pixel Data" (7fe0,0010) anymore * "/peers/{id}/store-straight": Synchronously send the DICOM instance in POST body to the peer * New arguments in the REST API: - "Timeout" in "/modalities/.../query" - "Timeout" in "/modalities/.../storage-commitment" - "Timeout" in "/queries/.../answers/.../query-{studies|series|instances}" * New value in enumeration: OrthancPluginDicomToJsonFlags_StopAfterPixelData * New value in enumeration: OrthancPluginDicomToJsonFlags_SkipGroupLengths * Improved precision of floating-point numbers in DICOM-as-JSON and DICOM summary * Optimization in C-STORE SCP by avoiding an unnecessary DICOM parsing * Fix build on big-endian architectures * Handle public tags with "UN" value representation and containing a string (cf. DICOM CP 246) * The numbering of sequences in Orthanc Explorer now uses the DICOM convention (starts at 1) * Possibility to generate a static library containing the Orthanc Framework- Version 1.9.0 * Support of DICOM TLS * New configuration options related to DICOM networking: - "DicomTlsEnabled" to enable DICOM TLS in Orthanc SCP - "DicomTlsCertificate" to provide the TLS certificate to be used in both Orthanc SCU and SCP - "DicomTlsPrivateKey" to provide the private key of the TLS certificate - "DicomTlsTrustedCertificates" to provide the list of TLS certificates to be trusted by Orthanc - "UseDicomTls" in "DicomModalities" to enable DICOM TLS in outgoing SCU on a per-modality basis - "MaximumPduLength" to tune the maximum PDU length (Protocol Data Unit) - "LocalAet" in "DicomModalities" to overwrite global "DicomAet" for SCU on a per-modality basis - "AcceptedTransferSyntaxes" to set the transfer syntax UIDs accepted by Orthanc C-STORE SCP - "H265TransferSyntaxAccepted" to enable/disable all the transfer syntaxes related to H.265 - "DicomAlwaysAllowFind" to disable verification of the remote modality in C-FIND SCP - "DicomAlwaysAllowGet" to disable verification of the remote modality in C-GET SCP * New configuration option: "DicomScuPreferredTransferSyntax" to control transcoding in C-STORE SCU * New command-line option: "--openapi" to write the OpenAPI documentation of the REST API to a file * New metadata automatically computed at the series level: "RemoteAET" * The DICOM meta-header and the transfer syntax are displayed at the "Instance" level * API version upgraded to 10 * "/tools/accepted-transfer-syntaxes": Get/set transfer syntaxes accepted by Orthanc C-STORE SCP * "/tools/unknown-sop-class-accepted": Get/set whether C-STORE SCP accepts unknown SOP class UID * "/modalities/{...}/query": New string argument "LocalAet" * "/tools/create-dicom": New flag "Force" to bypass consistency checks for the DICOM tags * BREAKING CHANGE: All the Lua callbacks "IsXXXTransferSyntaxAccepted()" and "IsUnknownSopClassAccepted()" have been removed * New functions in the SDK: - OrthancPluginCreateMemoryBuffer64() - OrthancPluginRegisterStorageArea2() - OrthancPluginCreateDicom2() * Refactoring and improvements to the cache of DICOM files (it can now hold many files) * New Prometheus metrics "orthanc_dicom_cache_count" and "orthanc_dicom_cache_size" * Fix upload of multiple DICOM files using one single POST call to "multipart/form-data" Could be the final resolution of issue #21 (DICOM files missing after uploading with Firefox) * Partial fix of issue #48 (Windows service not stopped properly), cf. comments 4 and 5 * Explicitly use little-endian to encode uncompressed file size with zlib compression * Upgraded dependencies for static builds (notably on Windows): - dcmtk 3.6.6 - jsoncpp 1.9.4- Workaround for boo#1180359- Version 1.8.2 * ZIP archives containing DICOM files can be uploaded using WebDAV * New config option "MallocArenaMax" to control memory usage on GNU/Linux * Explicit error log if trying to load a 32bit (resp. 64bit) plugin into a 64bit (resp. 32bit) version of Orthanc * New configuration options contributed by Varian Medical Systems: - "DeidentifyLogs" to remove patient identification from the logs (C-GET, C-MOVE, C-FIND) - "DeidentifyLogsDicomVersion" to specify the deidentification rules for the logs - "OrthancExplorerEnabled" to enable/disable the Orthanc Explorer Web user interface - "SslMinimumProtocolVersion" to set the minimal SSL protocol version (now defaults to SSL 1.2) - "SslCiphersAccepted" to set the accepted ciphers over SSL (now defaults to FIPS 140-2) * New configuration options related to ingest transcoding: - "IngestTranscodingOfUncompressed" to control whether uncompressed transfer syntaxes are transcoded - "IngestTranscodingOfCompressed" to control whether compressed transfer syntaxes are transcoded * "/instances" can be used to import ZIP archives provided in the POST body * Allow concurrency on the OrthancPluginRegisterIncomingHttpRequestFilter() callbacks * Allow empty request body in "/modalities/{id}/echo" * If meta-header is missing, best-effort to extract "TransferSyntax" in "/instances/{id}/metadata"- Version 1.8.1 * adaption to new systemd-macros (OBS) * New sample tool "OrthancImport.py" to easily import compressed archives (ZIP) into Orthanc * Logging categories (cf. command-line options starting with "--verbose-" and "--trace=") * New command-line option "--trace-dicom" to access full debug information from DCMTK * New config option "DicomEchoChecksFind" to automatically complement C-GET SCU with C-FIND SCU * API version upgraded to 9 * "/tools/dicom-echo": Execute C-Echo SCU to a modality that is not registered in "/modalities" * "/tools/log-level-*": Dynamically access and/or change the verbosity of logging categories * "/peers/{id}/configuration": Get the configuration of one peer (cf. "/peers?expand") * "/modalities/{id}/configuration": Get the configuration of one modality (cf. "/modalities?expand") * "/tools/dicom-echo" and "/modalities/{id}/echo" now accept the field "CheckFind" in their JSON body to complement C-GET SCU with C-FIND SCU ("DicomEchoChecksFind" on a per-connection basis) * Archive/media jobs report the size of the created ZIP file in content field "ArchiveSizeMB" * New function in the SDK: OrthancPluginGenerateRestApiAuthorizationToken() * C-GET SCP: Fix responses and handling of cancel * Fix decoding sequence if "BuiltinDecoderTranscoderOrder" is "Before" * Fix keep-alive in the embedded HTTP server by setting the "Keep-Alive" HTTP header * Fix access to videos as a single raw frame (feature broken since Orthanc 1.6.0) * REST API now returns 404 error if deleting an inexistent peer or modality * Improved forward ABI compatibility of Orthanc Framework (notably, no inline methods anymore) * Upgraded dependencies for static builds (notably on Windows and LSB): - civetweb 1.13- version 1.8.0 * Serving the content of Orthanc as a WebDAV network share * New config options: "WebDavEnabled", "WebDavDeleteAllowed" and "WebDavUploadAllowed"- Version 1.7.4 * New configuration options to enable HTTP peers identification through certificates: "SslVerifyPeers" and "SslTrustedClientCertificates" * New configuration option "SyncStorageArea" to immediately commit the files onto the disk (through fsync()), so as to avoid discrepencies between DB and filesystem in case of hard shutdown of the machine running Orthanc. This slows down adding new files into Orthanc. * Underscores are now allowed in peers/modalities symbolic names * Fix compatibility with C-MOVE SCU requests issued by Ambra * Fix transcoding in C-MOVE SCP, in the case where "SynchronousCMove" is "true" * When checking DICOM allowed methods, if there are multiple modalities with the same AET, differentiate them from the calling IP * Enable the access to raw frames in Philips ELSCINT1 proprietary compression * Support empty key passwords when using HTTP client certificates * Fix handling of "ModalitiesInStudy" (0008,0061) in C-FIND and "/tools/find"- Version 1.7.3 * API version upgraded to 8 * "/peers/{id}/store": New option "Compress" to compress DICOM data using gzip * "OrthancPeerStore" jobs now report the transmitted size in their public content * New config option "Worklist.LimitAnswers" for the sample modality worklist plugin * Add missing tag "Retrieve AE Title (0008,0054)" in C-FIND SCP responses * Fix DICOM SCP filters if some query tag has > 256 characters (list of UIDs matching) * "/series/.../ordered-slices" supports spaces in Image Position/Orientation Patient tags * Fix possible crash in HttpClient if sending multipart body (can occur in STOW-RS) * Support receiving multipart messages larger than 2GB in the embedded HTTP server- Version 1.7.2 * C-FIND SCP now returns private tags (cf. option "DefaultPrivateCreator") * Packaging of the Orthanc framework as a shared library * New change types in the SDK: JobSubmitted, JobSuccess, JobFailure * Issue #182: Better reporting of errors in plugins reading chunked HTTP body * Fix issue #183 (C-ECHO always fails in Orthanc Explorer, regression from 1.6.1 to 1.7.0)- version 1.7.1 * Fix decoding of DICOM images for plugins (for compatibility with Orthanc Web Viewer 2.6)- new version 1.7.0 * Support of DICOM C-GET SCP (contribution by Varian) * DICOM transcoding over the REST API * Transcoding from compressed to uncompressed transfer syntaxes over DICOM C-STORE SCU (if the remote modality doesn't support compressed syntaxes) * New configuration options related to transcoding: "TranscodeDicomProtocol", "BuiltinDecoderTranscoderOrder", "IngestTranscoding" and "DicomLossyTranscodingQuality" * See NEWS for details- version 1.6.1 sqlitewrapper.patch removed (included in 1.6.1)- sqlitewrapper.patch (boo#1167431)- various security hardenings (boo#1167431)- ConnectivityCheck Plugin enabled in build- version 1.6.0 bugfixes and improvements (see /usr/share/doc/packages/orthanc/NEWS rpmlintrc for some rpmlint warnings- for i586, one test disabled (fail due to rounding issues)- version 1.5.8 * various bugfixes, see NEWS for details- version 1.5.7 * Documentation added- version 1.5.5- version 1.5.4 civetweb.patch removed various bugfixes- civetweb.patch added- version 1.5.3 * New configuration option: "SaveJobs" to specify whether jobs are stored in the database * Don't return tags whose group is below 0x0008 in C-FIND SCP answers * Fix compatibility with DICOMweb plugin (allow multipart answers over HTTP Keep-Alive) * Fix issue #73 (/modalities/{modalityId}/store raises 500 errors instead of 404) * Fix issue #90 (C-Find shall match missing tags to null/empty string) * Fix issue #119 (/patients/.../archive returns a 500 when JobsHistorySize is 0) * Fix issue #128 (Asynchronous C-MOVE: invalid number of remaining sub-operations)- version 1.5.2 temporary fixes for civetweb 1.11 removed- Version 1.5.1 Initial OBS build spec file adapted from Fedora project obs-arm-11 1651841054  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~1.10.1-lp153.2.3.11.10.1-lp153.2.3.1    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""""""""############""""$$$$%%%%%%%&&&&&&&&&&&&&&&&&''''''''''''''''''(((((((((((((((((((())*****++*,,------,,,,.//.00.1221111113,,,,,,,,444444,**)5666666666666666578859::9;;9<<<<<<<9====>>>9??9@@@@AAAAAAAAAAA99BB9CCC9DD9EE9FF9GGGHHHGGI)JJJJKKKJJLMMMMLNNNNNNLJOOJJJJJJJPQRRRRRRQPSSPTTTTTTTTTTTTTTPUUUUUUUUUUUUPPVVPWWXXXWWJYZ[[Z\\\]^_`aJJ)bcdddddddddddddccccccccccccccbbbbbbbbbbbbbbbbbbbbbbbbbeeeeeeeebbbbbbbffffffffffbbbbbbbbgggggggggggggghhhhhhhhhhhhggggggggggbbbbbbb)iiiiiiiiiiiorthancAUTHORSCITATION.cffCOPYINGDarwinCompilation.txtINSTALLLinuxCompilation.txtNEWSOrthancFrameworkCOPYINGResourcesCMakeAutoGeneratedCode.cmakeBoostConfiguration.cmakeBoostConfiguration.shCivetwebConfiguration.cmakeCompiler.cmakeDcmtkConfiguration.cmakeDcmtkConfigurationStatic-3.6.0.cmakeDcmtkConfigurationStatic-3.6.2.cmakeDcmtkConfigurationStatic-3.6.4.cmakeDcmtkConfigurationStatic-3.6.5.cmakeDcmtkConfigurationStatic-3.6.6.cmakeDownloadOrthancFramework.cmakeDownloadPackage.cmakeEmscriptenParameters.cmakeGoogleTestConfiguration.cmakeJsonCppConfiguration.cmakeLibCurlConfiguration.cmakeLibIconvConfiguration.cmakeLibIcuConfiguration.cmakeLibJpegConfiguration.cmakeLibP11Configuration.cmakeLibPngConfiguration.cmakeLuaConfiguration.cmakeMongooseConfiguration.cmakeOpenSslConfiguration.cmakeOpenSslConfigurationStatic-1.1.1.cmakeOpenSslConfigurationStatic-3.0.cmakeOrthancFrameworkConfiguration.cmakeOrthancFrameworkParameters.cmakePugixmlConfiguration.cmakeSQLiteConfiguration.cmakeUninstall.cmake.inUuidConfiguration.cmakeVisualStudioPrecompiledHeaders.cmakeWebAssemblyArithmeticTestsCMakeLists.txtRun2.cppapp.jsarith.patchindex.htmlarith.hZlibConfiguration.cmakeCheckOrthancFrameworkSymbols.pyCodeGenerationCheckDcmtkTransferSyntaxes.pyDicomTransferSyntaxes.jsonEncodingTests.hEncodingTests.pyErrorCodes.jsonGenerateErrorCodes.pyGenerateTransferSyntaxes.pyGenerateTransferSyntaxesDcmtk.mustacheGenerateTransferSyntaxesEnumerations.mustacheDcmtkToolsCMakeLists.txtdummy.cppEmbedResources.pyGraveyardEclipseCodingStyle.xmlFromDcmtkBridge.cppMultithreadingBagOfTasks.hBagOfTasksProcessor.cppBagOfTasksProcessor.hICommand.hILockable.hLocker.hMutex.cppMutex.hReaderWriterLock.cppReaderWriterLock.hTestTranscoding.cppPatchesOpenSSL-ConfigureHeaders.pyOpenSSL-ExtractProvidersOIDs.jsonOpenSSL-ExtractProvidersOIDs.pyboost-1.65.1-linux-standard-base.patchboost-1.66.0-linux-standard-base.patchboost-1.67.0-linux-standard-base.patchboost-1.68.0-linux-standard-base.patchboost-1.69.0-linux-standard-base.patchcivetweb-1.11.patchcivetweb-1.12.patchcivetweb-1.13.patchcivetweb-1.14.patchcurl-7.77.0.patchdcmtk-3.6.0-dulparse-vulnerability.patchdcmtk-3.6.0-mingw64.patchdcmtk-3.6.0-speed.patchdcmtk-3.6.2-linux-standard-base.patchdcmtk-3.6.2-private.dicdcmtk-3.6.2.patchdcmtk-3.6.4.patchdcmtk-3.6.5.patchdcmtk-3.6.6.patchdcmtk-dcdict_orthanc.ccdcmtk.txte2fsprogs-1.43.8-apple.patche2fsprogs-1.44.5.patchlibp11-0.4.0.patchmongoose-3.1-patch.diffmongoose-3.8-patch.diffopenssl-1.1.1-conf.h.inopenssl-1.1.1k.patchopenssl-3.0.1.patchRetrieveCACertificates.pySamplesMicroServiceCMakeLists.txtREADME.txtSample.cppThirdPartyVisualStudiostdint.hbase64base64.cppbase64.hicuCMakeLists.txtREADME.txtVersion.cmakemd5md5.cmd5.hminizipNOTEScrypt.hioapi.cioapi.hunzip.cunzip.hzip.czip.hpatchNOTES.txtmsys-1.0.dllpatch.exepatch.exe.manifestToolchainsCrossToolchain.cmakeLinuxStandardBaseToolchain.cmakeMinGW-W64-Toolchain32.cmakeMinGW-W64-Toolchain64.cmakeMinGWToolchain.cmakeWebAssembly.txtWindowsResources.pyWindowsResources.rcSharedLibraryCMakeLists.txtDllMain.cppNOTES.txtOrthancFramework.h.inSourcesCacheICachePageProvider.hICacheable.hLeastRecentlyUsedIndex.hMemoryCache.cppMemoryCache.hMemoryObjectCache.cppMemoryObjectCache.hMemoryStringCache.cppMemoryStringCache.hSharedArchive.cppSharedArchive.hChunkedBuffer.cppChunkedBuffer.hCompatibility.hCompressionDeflateBaseCompressor.cppDeflateBaseCompressor.hGzipCompressor.cppGzipCompressor.hHierarchicalZipWriter.cppHierarchicalZipWriter.hIBufferCompressor.cppIBufferCompressor.hZipReader.cppZipReader.hZipWriter.cppZipWriter.hZlibCompressor.cppZlibCompressor.hDicomFormatDicomArray.cppDicomArray.hDicomElement.cppDicomElement.hDicomImageInformation.cppDicomImageInformation.hDicomInstanceHasher.cppDicomInstanceHasher.hDicomIntegerPixelAccessor.cppDicomIntegerPixelAccessor.hDicomMap.cppDicomMap.hDicomPath.cppDicomPath.hDicomStreamReader.cppDicomStreamReader.hDicomTag.cppDicomTag.hDicomValue.cppDicomValue.hStreamBlockReader.cppStreamBlockReader.hDicomNetworkingDicomAssociation.cppDicomAssociation.hDicomAssociationParameters.cppDicomAssociationParameters.hDicomControlUserConnection.cppDicomControlUserConnection.hDicomFindAnswers.cppDicomFindAnswers.hDicomServer.cppDicomServer.hDicomStoreUserConnection.cppDicomStoreUserConnection.hIApplicationEntityFilter.hIFindRequestHandler.hIFindRequestHandlerFactory.hIGetRequestHandler.hIGetRequestHandlerFactory.hIMoveRequestHandler.hIMoveRequestHandlerFactory.hIStorageCommitmentRequestHandler.hIStorageCommitmentRequestHandlerFactory.hIStoreRequestHandler.hIStoreRequestHandlerFactory.hIWorklistRequestHandler.hIWorklistRequestHandlerFactory.hInternalsCommandDispatcher.cppCommandDispatcher.hDicomTls.cppDicomTls.hFindScp.cppFindScp.hGetScp.cppGetScp.hMoveScp.cppMoveScp.hStoreScp.cppStoreScp.hNetworkingCompatibility.hRemoteModalityParameters.cppRemoteModalityParameters.hTimeoutDicomConnectionManager.cppTimeoutDicomConnectionManager.hDicomParsingDcmtkTranscoder.cppDcmtkTranscoder.hDicomDirWriter.cppDicomDirWriter.hDicomModification.cppDicomModification.hDicomModification_Anonymization2017c.impl.hDicomModification_Anonymization2021b.impl.hDicomWebJsonVisitor.cppDicomWebJsonVisitor.hFromDcmtkBridge.cppFromDcmtkBridge.hFromDcmtkBridge_TransferSyntaxes.impl.hIDicomTranscoder.cppIDicomTranscoder.hITagVisitor.hInternalsDicomFrameIndex.cppDicomFrameIndex.hDicomImageDecoder.cppDicomImageDecoder.hMemoryBufferTranscoder.cppMemoryBufferTranscoder.hParsedDicomCache.cppParsedDicomCache.hParsedDicomDir.cppParsedDicomDir.hParsedDicomFile.cppParsedDicomFile.hToDcmtkBridge.cppToDcmtkBridge.hEndianness.hEnumerationDictionary.hEnumerations.cppEnumerations.hEnumerations_TransferSyntaxes.impl.hFileBuffer.cppFileBuffer.hFileStorageFileInfo.cppFileInfo.hFilesystemStorage.cppFilesystemStorage.hIStorageArea.hMemoryStorageArea.cppMemoryStorageArea.hStorageAccessor.cppStorageAccessor.hStorageCache.cppStorageCache.hHttpClient.cppHttpClient.hHttpServerBufferHttpSender.cppBufferHttpSender.hCStringMatcher.cppCStringMatcher.hFilesystemHttpHandler.cppFilesystemHttpHandler.hFilesystemHttpSender.cppFilesystemHttpSender.hHttpContentNegociation.cppHttpContentNegociation.hHttpFileSender.cppHttpFileSender.hHttpOutput.cppHttpOutput.hHttpServer.cppHttpServer.hHttpStreamTranscoder.cppHttpStreamTranscoder.hHttpToolbox.cppHttpToolbox.hIHttpHandler.cppIHttpHandler.hIHttpOutputStream.hIHttpStreamAnswer.hIIncomingHttpRequestFilter.hIWebDavBucket.cppIWebDavBucket.hMultipartStreamReader.cppMultipartStreamReader.hStringHttpOutput.cppStringHttpOutput.hStringMatcher.cppStringMatcher.hWebDavStorage.cppWebDavStorage.hIDynamicObject.hIMemoryBuffer.hImagesFont.cppFont.hFontRegistry.cppFontRegistry.hIImageWriter.cppIImageWriter.hImage.cppImage.hImageAccessor.cppImageAccessor.hImageBuffer.cppImageBuffer.hImageProcessing.cppImageProcessing.hImageTraits.hJpegErrorManager.cppJpegErrorManager.hJpegReader.cppJpegReader.hJpegWriter.cppJpegWriter.hNumpyWriter.cppNumpyWriter.hPamReader.cppPamReader.hPamWriter.cppPamWriter.hPixelTraits.hPngReader.cppPngReader.hPngWriter.cppPngWriter.hJobsEngineGenericJobUnserializer.cppGenericJobUnserializer.hIJob.hIJobUnserializer.hJobInfo.cppJobInfo.hJobStatus.cppJobStatus.hJobStepResult.cppJobStepResult.hJobsEngine.cppJobsEngine.hJobsRegistry.cppJobsRegistry.hOperationsIJobOperation.hIJobOperationValue.hJobOperationValues.cppJobOperationValues.hLogJobOperation.cppLogJobOperation.hNullOperationValue.cppNullOperationValue.hSequenceOfOperationsJob.cppSequenceOfOperationsJob.hStringOperationValue.cppStringOperationValue.hSetOfCommandsJob.cppSetOfCommandsJob.hSetOfInstancesJob.cppSetOfInstancesJob.hLogging.cppLogging.hLuaLuaContext.cppLuaContext.hLuaFunctionCall.cppLuaFunctionCall.hMallocMemoryBuffer.cppMallocMemoryBuffer.hMetricsRegistry.cppMetricsRegistry.hMultiThreadingIRunnableBySteps.hRunnableWorkersPool.cppRunnableWorkersPool.hSemaphore.cppSemaphore.hSharedMessageQueue.cppSharedMessageQueue.hOrthancException.cppOrthancException.hOrthancFramework.cppOrthancFramework.hPkcs11.cppPkcs11.hPrecompiledHeaders.cppPrecompiledHeaders.hRestApiRestApi.cppRestApi.hRestApiCall.cppRestApiCall.hRestApiCallDocumentation.cppRestApiCallDocumentation.hRestApiDeleteCall.hRestApiGetCall.cppRestApiGetCall.hRestApiHierarchy.cppRestApiHierarchy.hRestApiOutput.cppRestApiOutput.hRestApiPath.cppRestApiPath.hRestApiPostCall.hRestApiPutCall.hSQLiteConnection.cppConnection.hFunctionContext.cppFunctionContext.hIScalarFunction.hITransaction.hNonCopyable.hOrthancSQLiteException.hREADME.txtSQLiteTypes.hStatement.cppStatement.hStatementId.cppStatementId.hStatementReference.cppStatementReference.hTransaction.cppTransaction.hSerializationToolbox.cppSerializationToolbox.hSharedLibrary.cppSharedLibrary.hStringMemoryBuffer.cppStringMemoryBuffer.hSystemToolbox.cppSystemToolbox.hTemporaryFile.cppTemporaryFile.hToolbox.cppToolbox.hWebServiceParameters.cppWebServiceParameters.hUnitTestsSourcesBitbucketCACertificates.hCMakeLists.txtDicomMapTests.cppFileStorageTests.cppFrameworkTests.cppFromDcmtkTests.cppImageProcessingTests.cppImageTests.cppJobsTests.cppJpegLosslessTests.cppLoggingTests.cppLuaTests.cppMemoryCacheTests.cppRestApiTests.cppSQLiteChromiumTests.cppSQLiteTests.cppSharedLibraryUnitTests.cppStreamTests.cppToolboxTests.cppZipTests.cppOrthancServerCMakeLists.txtOrthancExplorerexplorer.cssexplorer.htmlexplorer.jsfile-upload.jsimagesfavicon.icounsupported.pnglibsdate.jsimagesajax-loader.gificons-18-black.pngicons-18-white.pngicons-36-black.pngicons-36-white.pngnotes.txtjqm.page.params.jsjqtree-icons.pngjqtree.cssjquery-file-uploadcssjquery.fileupload-ui.cssstyle.cssimgloading.gifprogressbar.gifjscorsjquery.postmessage-transport.jsjquery.xdr-transport.jsjquery.fileupload-fp.jsjquery.fileupload-ui.jsjquery.fileupload.jsjquery.iframe-transport.jslocale.jsvendorjquery.ui.widget.jsjquery.blockui.jsjquery.min.jsjquery.mobile.min.cssjquery.mobile.min.jsjquery.mobile.simpledialog.min.cssjquery.mobile.simpledialog2.jsslimbox2slimbox2.jscloselabel.gifloading.gifnextlabel.gifprevlabel.gifslimbox2-rtl.cssslimbox2.csstree.jquery.jsorthanc-logo.pngquery-retrieve.jsPluginsEngineIPluginServiceProvider.hOrthancPluginDatabase.cppOrthancPluginDatabase.hOrthancPluginDatabaseV3.cppOrthancPluginDatabaseV3.hOrthancPlugins.cppOrthancPlugins.hPluginsEnumerations.cppPluginsEnumerations.hPluginsErrorDictionary.cppPluginsErrorDictionary.hPluginsJob.cppPluginsJob.hPluginsManager.cppPluginsManager.hIncludeorthancOrthancCDatabasePlugin.hOrthancCPlugin.hSamplesAutomatedJpeg2kCompressionCMakeLists.txtPlugin.cppBasicCMakeLists.txtPlugin.cCommonExportedSymbolsPlugins.listOrthancPluginCppWrapper.cppOrthancPluginCppWrapper.hOrthancPluginException.hOrthancPlugins.cmakeOrthancPluginsExports.cmakeVersionScriptPlugins.mapConnectivityChecksCMakeLists.txtJavaScriptLibraries.cmakePlugin.cppWebResourcesapp.jsindex.htmlstyle.cssCustomImageDecoderCMakeLists.txtPlugin.cppModalityWorklistsCMakeLists.txtPlugin.cppREADMEWorklistsDatabaseGenerate.pywklist1.wlwklist10.wlwklist2.wlwklist3.wlwklist4.wlwklist5.wlwklist6.wlwklist7.wlwklist8.wlwklist9.wlREADME.txtSanitizerCMakeLists.txtPlugin.cppServeFoldersCMakeLists.txtPlugin.cppREADMEStorageAreaCMakeLists.txtPlugin.cppStorageCommitmentScpCMakeLists.txtPlugin.cppWebDavFilesystemCMakeLists.txtPlugin.cppWebSkeletonCMakeLists.txtConfiguration.hFrameworkEmbedResources.pyFramework.cmakePlugin.cppNOTES.txtStaticResourcesindex.htmlResourcesConfiguration.jsonDicomConformanceStatement.pyDicomConformanceStatement.txtFontsGenerateFont.pyREADME.txtUbuntuMonoBold-16.jsonGenerateAnonymizationProfile.pyGraveyardDatabaseOptimizationsLookupIdentifierQuery.cppLookupIdentifierQuery.hLookupResource.cppLookupResource.hDatabasePluginSampleCMakeLists.txtDatabase.cppDatabase.hDatabaseWrapperBase.cppDatabaseWrapperBase.hPlugin.cppSetupAnonymization2011.cppImplementationNotesJobsEngineStates.dotJobsEngineStates.pdfOldBuildInstructions.txtOrthanc.doxygenOrthancLogo.pngOrthancLogoDocumentation.pngOrthancPlugin.doxygenRunCppCheck.shSamplesCppHelpersLoggingILogger.hNullLogger.hOrthancLogger.cppOrthancLogger.hOrthancPluginLogger.cppOrthancPluginLogger.hREADME.mdImportDicomFilesImportDicomFiles.pyOrthancImport.pyLuaAutomatedJpeg2kCompression.luaAutorouting.luaAutoroutingConditional.luaAutoroutingModification.luaCallDcm2Xml.luaCallImageJ.luaCallWebService.jsCallWebService.luaClassifyUsingAet.luaIncomingFindRequestFilter.luaModifyInstanceWithSequence.luaOnStableStudy.luaParseDoseReport.luaWriteToDisk.luaPythonAnonymizeAllPatients.pyArchiveAllPatients.pyArchiveStudiesInTimeRange.pyAutoClassify.pyChangesLoop.pyContinuousPatientAnonymization.pyDeleteAllStudies.pyDownloadAnonymized.pyHighPerformanceAutoRouting.pyManualModification.pyReplicate.pyRestToolbox.pyREADME.txtToolsCMakeLists.txtRecoverCompressedFile.cppWebApplicationsDrawingDicomizerDrawingDicomizer.jsdrawing.jsindex.htmlorthanc.jsNodeToolbox.jsREADME.txtTestingIssue32CppCMakeLists.txtmain.cppJavaREADME.txtpom.xmlsrctestjavaioosimisAppTest.javaToolbox.luaVersionScriptOrthanc.mapSourcesDatabaseCompatibilityDatabaseLookup.cppDatabaseLookup.hICreateInstance.cppICreateInstance.hIGetChildrenMetadata.cppIGetChildrenMetadata.hILookupResourceAndParent.cppILookupResourceAndParent.hILookupResources.cppILookupResources.hISetResourcesContent.hSetOfResources.cppSetOfResources.hIDatabaseListener.hIDatabaseWrapper.hInstallTrackAttachmentsSize.sqlPrepareDatabase.sqlResourcesContent.cppResourcesContent.hSQLiteDatabaseWrapper.cppSQLiteDatabaseWrapper.hStatelessDatabaseOperations.cppStatelessDatabaseOperations.hUpgrade3To4.sqlUpgrade4To5.sqlVoidDatabaseListener.cppVoidDatabaseListener.hDicomInstanceOrigin.cppDicomInstanceOrigin.hDicomInstanceToStore.cppDicomInstanceToStore.hEmbeddedResourceHttpHandler.cppEmbeddedResourceHttpHandler.hExportedResource.cppExportedResource.hIDicomImageDecoder.hIServerListener.hLuaScripting.cppLuaScripting.hOrthancConfiguration.cppOrthancConfiguration.hOrthancFindRequestHandler.cppOrthancFindRequestHandler.hOrthancGetRequestHandler.cppOrthancGetRequestHandler.hOrthancHttpHandler.cppOrthancHttpHandler.hOrthancInitialization.cppOrthancInitialization.hOrthancMoveRequestHandler.cppOrthancMoveRequestHandler.hOrthancRestApiOrthancRestAnonymizeModify.cppOrthancRestApi.cppOrthancRestApi.hOrthancRestArchive.cppOrthancRestChanges.cppOrthancRestModalities.cppOrthancRestResources.cppOrthancRestSystem.cppOrthancWebDav.cppOrthancWebDav.hPrecompiledHeadersServer.cppPrecompiledHeadersServer.hQueryRetrieveHandler.cppQueryRetrieveHandler.hSearchDatabaseConstraint.cppDatabaseConstraint.hDatabaseLookup.cppDatabaseLookup.hDicomTagConstraint.cppDicomTagConstraint.hHierarchicalMatcher.cppHierarchicalMatcher.hISqlLookupFormatter.cppISqlLookupFormatter.hServerContext.cppServerContext.hServerEnumerations.cppServerEnumerations.hServerIndex.cppServerIndex.hServerIndexChange.hServerJobsArchiveJob.cppArchiveJob.hCleaningInstancesJob.cppCleaningInstancesJob.hDicomModalityStoreJob.cppDicomModalityStoreJob.hDicomMoveScuJob.cppDicomMoveScuJob.hIStorageCommitmentFactory.hLuaJobManager.cppLuaJobManager.hMergeStudyJob.cppMergeStudyJob.hOperationsDeleteResourceOperation.cppDeleteResourceOperation.hDicomInstanceOperationValue.cppDicomInstanceOperationValue.hModifyInstanceOperation.cppModifyInstanceOperation.hStorePeerOperation.cppStorePeerOperation.hStoreScuOperation.cppStoreScuOperation.hSystemCallOperation.cppSystemCallOperation.hOrthancJobUnserializer.cppOrthancJobUnserializer.hOrthancPeerStoreJob.cppOrthancPeerStoreJob.hResourceModificationJob.cppResourceModificationJob.hSplitStudyJob.cppSplitStudyJob.hStorageCommitmentScpJob.cppStorageCommitmentScpJob.hServerToolbox.cppServerToolbox.hSliceOrdering.cppSliceOrdering.hStorageCommitmentReports.cppStorageCommitmentReports.hmain.cppUnitTestsSourcesDatabaseLookupTests.cppLuaServerTests.cppPluginsTests.cppPrecompiledHeadersUnitTests.cppPrecompiledHeadersUnitTests.hServerIndexTests.cppServerJobsTests.cppSizeOfTests.cppSizeOfTests.impl.hUnitTestsMain.cppVersionsTests.cppREADMETODO/usr/src//usr/src/orthanc//usr/src/orthanc/OrthancFramework//usr/src/orthanc/OrthancFramework/Resources//usr/src/orthanc/OrthancFramework/Resources/CMake//usr/src/orthanc/OrthancFramework/Resources/CMake/WebAssembly//usr/src/orthanc/OrthancFramework/Resources/CMake/WebAssembly/ArithmeticTests//usr/src/orthanc/OrthancFramework/Resources/CodeGeneration//usr/src/orthanc/OrthancFramework/Resources/DcmtkTools//usr/src/orthanc/OrthancFramework/Resources/Graveyard//usr/src/orthanc/OrthancFramework/Resources/Graveyard/Multithreading//usr/src/orthanc/OrthancFramework/Resources/Patches//usr/src/orthanc/OrthancFramework/Resources/Samples//usr/src/orthanc/OrthancFramework/Resources/Samples/MicroService//usr/src/orthanc/OrthancFramework/Resources/ThirdParty//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/VisualStudio//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/base64//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/icu//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/md5//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/minizip//usr/src/orthanc/OrthancFramework/Resources/ThirdParty/patch//usr/src/orthanc/OrthancFramework/Resources/Toolchains//usr/src/orthanc/OrthancFramework/SharedLibrary//usr/src/orthanc/OrthancFramework/Sources//usr/src/orthanc/OrthancFramework/Sources/Cache//usr/src/orthanc/OrthancFramework/Sources/Compression//usr/src/orthanc/OrthancFramework/Sources/DicomFormat//usr/src/orthanc/OrthancFramework/Sources/DicomNetworking//usr/src/orthanc/OrthancFramework/Sources/DicomNetworking/Internals//usr/src/orthanc/OrthancFramework/Sources/DicomParsing//usr/src/orthanc/OrthancFramework/Sources/DicomParsing/Internals//usr/src/orthanc/OrthancFramework/Sources/FileStorage//usr/src/orthanc/OrthancFramework/Sources/HttpServer//usr/src/orthanc/OrthancFramework/Sources/Images//usr/src/orthanc/OrthancFramework/Sources/JobsEngine//usr/src/orthanc/OrthancFramework/Sources/JobsEngine/Operations//usr/src/orthanc/OrthancFramework/Sources/Lua//usr/src/orthanc/OrthancFramework/Sources/MultiThreading//usr/src/orthanc/OrthancFramework/Sources/RestApi//usr/src/orthanc/OrthancFramework/Sources/SQLite//usr/src/orthanc/OrthancFramework/UnitTestsSources//usr/src/orthanc/OrthancServer//usr/src/orthanc/OrthancServer/OrthancExplorer//usr/src/orthanc/OrthancServer/OrthancExplorer/images//usr/src/orthanc/OrthancServer/OrthancExplorer/libs//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/images//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload/css//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload/img//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload/js//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload/js/cors//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/jquery-file-upload/js/vendor//usr/src/orthanc/OrthancServer/OrthancExplorer/libs/slimbox2//usr/src/orthanc/OrthancServer/Plugins//usr/src/orthanc/OrthancServer/Plugins/Engine//usr/src/orthanc/OrthancServer/Plugins/Include//usr/src/orthanc/OrthancServer/Plugins/Include/orthanc//usr/src/orthanc/OrthancServer/Plugins/Samples//usr/src/orthanc/OrthancServer/Plugins/Samples/AutomatedJpeg2kCompression//usr/src/orthanc/OrthancServer/Plugins/Samples/Basic//usr/src/orthanc/OrthancServer/Plugins/Samples/Common//usr/src/orthanc/OrthancServer/Plugins/Samples/ConnectivityChecks//usr/src/orthanc/OrthancServer/Plugins/Samples/ConnectivityChecks/WebResources//usr/src/orthanc/OrthancServer/Plugins/Samples/CustomImageDecoder//usr/src/orthanc/OrthancServer/Plugins/Samples/ModalityWorklists//usr/src/orthanc/OrthancServer/Plugins/Samples/ModalityWorklists/WorklistsDatabase//usr/src/orthanc/OrthancServer/Plugins/Samples/Sanitizer//usr/src/orthanc/OrthancServer/Plugins/Samples/ServeFolders//usr/src/orthanc/OrthancServer/Plugins/Samples/StorageArea//usr/src/orthanc/OrthancServer/Plugins/Samples/StorageCommitmentScp//usr/src/orthanc/OrthancServer/Plugins/Samples/WebDavFilesystem//usr/src/orthanc/OrthancServer/Plugins/Samples/WebSkeleton//usr/src/orthanc/OrthancServer/Plugins/Samples/WebSkeleton/Framework//usr/src/orthanc/OrthancServer/Plugins/Samples/WebSkeleton/StaticResources//usr/src/orthanc/OrthancServer/Resources//usr/src/orthanc/OrthancServer/Resources/Fonts//usr/src/orthanc/OrthancServer/Resources/Graveyard//usr/src/orthanc/OrthancServer/Resources/Graveyard/DatabaseOptimizations//usr/src/orthanc/OrthancServer/Resources/Graveyard/DatabasePluginSample//usr/src/orthanc/OrthancServer/Resources/ImplementationNotes//usr/src/orthanc/OrthancServer/Resources/Samples//usr/src/orthanc/OrthancServer/Resources/Samples/CppHelpers//usr/src/orthanc/OrthancServer/Resources/Samples/CppHelpers/Logging//usr/src/orthanc/OrthancServer/Resources/Samples/ImportDicomFiles//usr/src/orthanc/OrthancServer/Resources/Samples/Lua//usr/src/orthanc/OrthancServer/Resources/Samples/Python//usr/src/orthanc/OrthancServer/Resources/Samples/Tools//usr/src/orthanc/OrthancServer/Resources/Samples/WebApplications//usr/src/orthanc/OrthancServer/Resources/Samples/WebApplications/DrawingDicomizer//usr/src/orthanc/OrthancServer/Resources/Testing//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Cpp//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java/src//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java/src/test//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java/src/test/java//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java/src/test/java/io//usr/src/orthanc/OrthancServer/Resources/Testing/Issue32/Java/src/test/java/io/osimis//usr/src/orthanc/OrthancServer/Sources//usr/src/orthanc/OrthancServer/Sources/Database//usr/src/orthanc/OrthancServer/Sources/Database/Compatibility//usr/src/orthanc/OrthancServer/Sources/OrthancRestApi//usr/src/orthanc/OrthancServer/Sources/Search//usr/src/orthanc/OrthancServer/Sources/ServerJobs//usr/src/orthanc/OrthancServer/Sources/ServerJobs/Operations//usr/src/orthanc/OrthancServer/UnitTestsSources/-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:17482/openSUSE_Leap_15.3_Update/226f2281eabaf71ffb1c07821a8989b8-orthanc.openSUSE_Leap_15.3_Updatedrpmxz5aarch64-suse-linux                        !!"        #$ % &       directoryASCII textUTF-8 Unicode textBourne-Again shell script, ASCII text executableAlgol 68 source, ASCII textC source, ASCII textunified diff output, ASCII textHTML document, ASCII textPython script, ASCII text executablePython script, UTF-8 Unicode text executableC++ source, ASCII textXML 1.0 document, ASCII textunified diff output, ASCII text, with CRLF, LF line terminatorsC source, ISO-8859 textASCII text, with very long linesC++ source, UTF-8 Unicode textC++ source, UTF-8 Unicode (with BOM) textC++ source, ASCII text, with very long linesC source, UTF-8 Unicode textC source, ASCII text, with very long linesassembler source, ASCII textPNG image data, 150 x 83, 8-bit/color RGBA, non-interlacedGIF image data, version 89a, 16 x 11PNG image data, 776 x 18, 8-bit gray+alpha, non-interlacedPNG image data, 1548 x 36, 8-bit gray+alpha, non-interlacedPNG image data, 16 x 16, 8-bit/color RGBA, non-interlacedGIF image data, version 89a, 128 x 128GIF image data, version 89a, 48 x 22UTF-8 Unicode (with BOM) textHTML document, UTF-8 Unicode text, with very long linesGIF image data, version 87a, 66 x 22GIF image data, version 89a, 31 x 31GIF image data, version 89a, 63 x 32PNG image data, 644 x 156, 8-bit/color RGBA, non-interlacedPNG image data, 620 x 197, 8-bit/color RGBA, non-interlacedPNG image data, 173 x 55, 8-bit/color RGBA, non-interlacedASCII text, with CRLF line terminatorsJava source, ASCII textRR`u ~utf-8481cf48234c9763be5ddb188ea39a9d8f764a472f0cdfa09b76bdc5357b03386? 7zXZ !t/]"k%K%{VBߒ0F 1"3|A ?E@8AR._~}Hk7m \ZIѷᔂQ\EQn!UfkU!\ziCf {(9S]*al0N-&7. fEPDc:hM)Lb PwkL+^] 'jeujL]˻ge6|pvhA tjN{a*1łP6fbaꇒq}~>^1|˲(a̞. u_{=Da&Bo7&yyYݢrRVbsiVUKOO6w62b7ż}i(dGMdڴZF˞8rJ*pZ`H BW4+Zu>C1LQpML!diX뵼Aؐb,90nU8 :X&?;~}7*nuU(D@#MeȵsI@ͅ7טZa.pTn=Pl>Soga`2>XTv^fQ" , sי'z9KpHYH7;/{ P"7E)&{Y*>fd4yѡZR 7M1"̨Bz-WTwОl:g`We<-TQ8qF;s/21!+9,D3 :Ya^wMӭ@OSrɘcZ[³`M)YZg?UPIDpUqd-p3X!kWSQT3/RŠ 3UV:"5f7F?Eu ϋ*ҷŸOy+LRķ BA}F`HѕSwzޒ4|C6=KD&ټ'u&~yqL(xz<8ڶwvu3teyO EN_TIZ*YS:ӇSCwӗ$8kyKzAc Bt cfVb_ɖpR6e@Q ]6EFQGη9e \~TCHAZ[)bRT;;BWUq!Wb۪:`Fcb⺞i)xQ=|q;ΒkL0Dе>  UqUy# $e\ȃ [m:M컍lf v Cngjym>1$2kުecf%3OBM;_, *s}RWe|&ImwкKCuM zHtf1>pv0RV 0 :nT҆Pz1 PM/Ghh~yT]h* ʪ@ն%[ pCE( p]mvپ#H? +T*nnwN>sN)b&MD( U3}#~tTO{Atܲc6{!-[á;So){G t5q6>A/?<0I 1iuM Rr3rI_^czL}%XYL0[ʥ7+#:?drJ;՚*U~OQ$_4g㳋3o~"ҙlAuiNxT KWW {nm߳J[]7lnwV6Md墧7 WG㖆1EA RAa#vv!&d14?3JpWCWMf!|UṠ%lb I2(eM ܈VR{yk)(=[Xg 8z}[.VI Pwid \@4Շ D @_ANq@ 57B-1@;w^qx0յ~69bNp A/͖x BfB- p?jId_@}Z=Cp5^9I~-M3$+N=`uM93uoc|o1DMԧ8]A=Ƃ R_i Nax`Lƾojq۷BC``x'dy֟!z(e Tct`̦w^[EBCPz,U DR ܡv"M7-MȈs3ـ8Fܦi% Ę4o#iOL%=c!s [CJyN/I4@4-c&2kbc-.r>U"5z(NFgҴJSd4kT y!9_v`B3ף%1m<ka VPiި0bDkֳF9 \tlޞ@}9d_~r?W3nfek;<ƋBQUIjs/.6#8+ԧ7%,c/n(uk3{ɷE(ۜFsęHFx 1Ō xюӒVӘ٨VW GRc ' ݒ[u$X,TkW ̔ݨtǙcԳセ`e9/ϜKAYr D 0+y"C,!yO`/_@I\Ed%()k>J.sS㫐k9Q>C4^z~r@0דJƧē>3;Vd(.UTM#яab ?(r{mf|1,}7d.,Rtþ*naO UjE0N+%ER^p%.U'5?s`E-CZ9Ř\:^  ?HZ+CjNՅ`%Di csќ4a n8QS嬱=z S^]nѰ^#Z^f5Wx*hO *P>0%szly  3#voC~̄\C22d~"um' '|ǧxRzCvYPP2.qˉ6Zp^$>썿~dN/TGqUVCč6|Gʎ!#M'VuUuZvY<ʳG(^ދºT:+Fέ{Uf3N:o`VY6t9⻪zRZ-%J!"o W/g`k1hfd!Yé՞S4i:A,O7vJ~fzaIд_aZz>5͈'/1ݠCW^#K3,6N߃5{# xɂcC'k TESj3IH~u(ڤ2xW0]y/xo'\0zXJ p z*'`l[8??'[KBG=[ yQڣ[p'df~(!yP{b.Ev;@;u@$λtls.k;eXYaJU;]{(UȬFմ7cW Htz20;U:`֒6Cyi%E0g[M2l5B$"^*2O)vZ9z2Y~ީ@:foM}󎪽9H:HvnX&Yw?c.麟U-OKjԃn$96]T^c2ȇM~ztY;G%.rɢ-/KA'jp0u`- lD\'pfx&p{ǪR bONi7tv,wg;)?,⦧o[0kYWֿP .6?XE-<2"{vB*l|\ Ya.9"EKrkLu;לdtKtEZFؠ4! }ܷ!11/xt.0*6}PgeН ]vGWYNKqpa0N#JNw)v튽g0e2 |QaO#&Gq8q j+Yuz-gTEb9h&5N_pGz-Q(|,cen"Rӑ8zQSu{W&({M_^U=Q)S;ڱJ+)yFa5eO,xްw0K:zYIZ0̑%z!Ji{Oô>y[B?¨Ou- nYAXFD6aF?&X?⨓ ^nw%+ |zq-V<;ԷKɁp|-7nqDe"Ip--QDu,f>`ObB꾋bߛ[oa+dkԅcwS* 6L &g]*k[;367K1J]s0l]i=' cمw \@5@ h!foıG0ش MIa*]: *O+5[ay%>'x%{&б WU@Y`_7l02YrYp([}zj)U:9Y۷cra?8=z3>Y># K]$^džﴛe,d@e*ͼ*p=X&`$plqY%QPT3bS|K%VyU$ϗX+Q%bڑ-U?4HW@{vAɡfÙpv9 .RV KL^JH]dsτJ MlR{$QĮvJi`J%e8~DꜵjJy 7ZwU }jmI=m`XrI<_b_e;/Wvd?0,g}1!W QxHu@u-f=5VDΰ\@G/ k 9`H,`>mr< #FQɕ# q,S:Ti〄Fgla芝#2 ѻ=M4%XAd\k)0[Kh\Cw,;['HDT%XʘVr1Fܲ5!y>Y <1_{3 Tvd-!]"G1gĖYF<ɔ<4ŹѡyjYiyc5܉>w7#&4ͭ>]U gxHAJV"^LӛO90X`wRbPYp9]"mf~HOp'ly\ \96O`9eCڝm%{ZL&Yn]_d| Z3^m/@CILt5K?TI$^F{6Fp^1f0yUQWUC6!=|IC95.Y0)mvQnXNX"t4 & tBB@F^ߝ8le6"3~K/H~Ö <u3{SZ:01%Suy aWi"%SrOW> Pw#@CR-M&\u϶ W|QQm̜~5A7F叔\dWOrƅ§?Գœ8]a1Ֆ5Ļ2% ˧& IaRa²e7i?muH_p ub+B9]6jԻ%~9tPIcg.9"sܬ4kI&^jؓJݦTI/Ygc &Wy;N髂bʘYPBS"ϻ32 C ủz}'`š QWǏ +D9ʊ,Gҗ3F'eFz_G_gI_=s͆/Rf@>#pwH V x]-lF0[Q!@9 7j) D LY[J51wtp2B53- \: 㧢5̍6sgEqovt>Y(UȔ @p%Pvzw]+!5KwEˆ\cE Tg#avb12 FeOfY%-EuWcDTX{MF(@4wg<+_)3O:j2)poEV&[Pki0>$?KJU8H?f".Cu` 2*Vp !\Vpe"EFeTʺYL=GX3Vk׵i_z?y/XΕ}a0yLu't7s ^ʁ7kU8ߙs?ڳDwJ{ @DT!]?9M9״V kJ1BizAIocf b9#.S~}|#S!c)؎MduGr{řJ;Ōz2ܪMd8ߡ7ջ"hܫ:"ka欱s{1\_i 3~5dٻH)BÅ1ys>srل7/VNo-6'p~jA302ϐ rl7:q~Gz.FeJ&10HnS $7T[$FaQΕ&Ћ$G_㶄 ?o8H 6_"|cuFÝi`f~`&{!Pў/Ґ"1ZWDI̕!1E@8=Ƀ()DBc2&z k| {nK.L/ V|4raqmY*l.\s="T@sWIG,j|s%˾ޓ_bi`BmB|L1= ւ&кvY)C b(_MmUۗ܄0qVnՏ>2T-.q,xsjgF -бӋZX TPLTGJp`^eV7I~Lq6~m2)ǮvB-euCTDNB%[)asYmZFPJkm+yrX;/k}exXB$ ckHE8 ucLEUq( L⁥$)zU뉕LpײiW/+iiN3,/H2Fb{kؗTL%ZG!g,6pu =hqisgol\v1~*naDm*yR|( v(v1hZ/sK;qQd :ٞrojY:6.""}BZo$ I7T g&KVVE Ia`ಁdYm$: ̐Rpv߄;.`;_.lx?TgxxP-m Kꥈ QC&̙:Yd
    8Lƣxl3;G"$ݾ\Sަ m!ElT<1!sGY@.=BJ;v"u9ƛ Ԁb}Zq >U;ze,u CF,WenTF+l5)9tnSo*$TwYG;~zgLTJ%TҾ"ltrC*79 ow4?Kf?4!#a{ HHZU3|bʱ@a,{{9=S|Xs| p%̝72i5qڈ~ ' #Ki4VÔҏMXnb2]3^nI&-WK ᎸB)Ӂ\l[gn(@Gӗ$5a@]AǶ<~Ggbl{B?pBo ߼P]!(|MQ]M-(e"EF  X+BW`EgԲKv{[g- t3xF2ER>GB_s cjo_'6-IqR1].╨žݧX>4XҝʆN][EaaUn_D[u+W3U@I=a84McoBH\j(vS'V78ʳB eB#<݈<Šg8&ȶʝ_ >#yD`AH\Us6s-XU+TOjvsJlhC/eeϷaqDqͤO?˚|]J#٤K-x/rkaNbPj goF;Na — OBN =ΕkڤܙfVN(岸 6cKH >qZC b=Zi=0DX"i8|;@f**b+09V4W7H>5)Bw`e" :)jNaWlቂ#9AJx25*/c;\{NM،Fm+iK\lEWDA>z):d&a`As 3Y-vr+ժֳ29Tٷ놚@>3Mˤ("s/n<mo4@*OrG ?k-A} I^^))RUT (\@MQ΃[bSPig~F62;ڵBJB#㜐=̦J:%6n5}QrgyRbb'|dh-JK @9~HMe6Q֌׈_?NVaۄɹx>-As)0_ bpa4{": %<-/>)LJ9 #RV=UȼaG/>$~ܛ}߅ձ*MUaaƩ[.˷q$p U`P@`YX?~) jG|b"xPrn`3GHcȶ3O@wcKԝUrh(q*atΡkXOYБLĴ8^WHi]SHߣwbsE}*7B.)DP =!.v&ʉ*hOjүN{+ 6/w`5.uϨ{gL!I]T˨Iz3߷mv2_OSJe$R6J,To!y%W ]:yYggFOlo0S*#ۧT 4jBA${ nZ;-1a҉~oҔ|XMGgm)B8~_Ȋv#i܍"~Wjt]A!#Io7W~a[ʙDtOl\|ct*jU#*-m)5V7LQƘJeetk7-@[1 ΛDEdhKNYJDF<[vLp>}o$q!9F4bNE1 pՃ\qRl"*N4mf oloT;Pr:%3fAӈx2-+}p!E݉NMΆ aIre,kj&O_%a߽ ( ˄ىwXֵ0@x+s]= ~ik&jD(CvIV:):R=~Qſ}҇zc o5n7CGzbJ\),^&-.rSÛN<{dYeg5Cg|yEٿh#CROK<AZ+LIUdJ{u%şdDmOQvvhz+/vj[%q; Wvpm ]t]vҎ*QAwZK@qMZM \E#]m.fл1kb*}ވG/oUqy D`u4A1E9& RY%K?EWmETeT꧅2rQS7dK1pucn,} vELIJ7"Z Xj@S]L)*4&-p}ZxIeiB|~z>wE:WZ< 3V980%ƌy 8O7b4?rs Ld4Qi^ߊ~%ꦋ* R}JcWU%<JWϳ~yyUu5oRO1qˣHsDBnb[Sǟ|SUZofoWb̜f읮U.x]Q vRʱ-j(H;h]ݞ5BC EKcvEqRXw61jYՊ f3lbL?x ui13EWmJk?j;Ra4DбWEEX|qujC~6Cun};y lHy.Kg:Zz9s鿖 vilrkkmt ު)v jC>|JRE9lg%osapb해I 򪑤  J5BS4Z>-q>r[c9 #lʥK6ƒz<#m7dZ'J%=ȟ&gx'3YxOTsغ5֭IjX 9:jv×e }Giņ^9RO̷~h~kB`(y<ɨm9ܕ3aMmLGAqrqy>c0TU.HFޛ /O+(*B2.LWkqNF!n73;P8,*wWE+J5P `;c x,O5i{M.$bQ *\YSF7$JtۻЕP矬(Wݵ6;+9]PgJܓ;Z9jUxݩ[%CԴv*A9!o Rg3{)ĢܶzcDK=91Xz*=/NX^w7_[Wv2ٷe.BC)}2&i8 6$:ȸb &wcx*34h `X"> 5oBhD9Oڬr\/| >(%+enuyVZEԋ!s$ƊMcXQp:/ m*Oc:v/'!&'Dk쬂ݵ"̀ ?cgDwyO]ԙ|nԓ{gˉ!Qax*o]:F-Σ"gg¸*u$h.q7gTV\fc8: z,K-#^1:O3`2 JMdA] M=ҧE#IŏTZU0SF?_"iʒڶbqA@OO;?O/ #HG8Ggy]qǏrvjr/}VD})L.Nr|FSiz9GG8^؛ o2x&!rEWP m=(žm=b&C'' [Tx>P2dVm'BA>>C Wm :Ql8v.+S6'3^h%>yOyZgz1@l= _| Wѝ=BOx{SYr2  OivVQ|eteY$yZnKu&>KXFMrO8+$B@\ey "[yDlKVT܏,#=4JK oY5|5I}fgn:O"Jꙟ\Jt{厂`\5`'GMp `R _D Ë8 a7B4~,c+RvEI62oFAsJZc]G$p.0TBK"Dfyc,G@/JPױF0_~#ഉ@J?7W}#Pag$y 4ep8( FUD\6yR\`JGљ _U"|5"d!2S s8{hP`[pɽPGŤ[1S֩)K?B,c*D\;DaMF|T 00m2r<@*@BfR@O[*1GMAhxҨgiwm 'IiLu1zwK zqnZ7x%kqѢ06D=4BJ%*5b#kq5٩O(,8Ok{^ hu/ġ%Gr[ wHs U y)2N4ճW-tć7%N ϶f>:lxӤG8yS>5 X5gA*-V9U7篦 /= .dLKvo'kLo҉ZfHo)q8!}U&nU1KJI~/Qcl4u2N@X+wI)\#p /[Ӕ1c?=VSTnډn d=GĴOY=pE<{4.FErOƝ/d)ץf8,$TsOKn:HTĤ/ L:DGq@JO$1>,fIlHp)hXu+ϞFs5֌o?såv0:^ oɓS֋컘RHzpfT'L{ t'So0wWX(l}s ÏCw&S$`JrΊL)qz6Vv.I?ҌA҅+_› }-(GT[Ǚ"2_kאv{6 } '$]4/(g]k+9 (?xx^;`Rzv$LFbD;iK:? iL`zK6Z.Ŝ A@B KETH|xl\}׬T>߽,Ƶz$h'yȿy6iML$,M8.NST~%hFŒ||ހ@읃zcN0csi^ݚcx|P([<]6!G_Dfԕʟ i&q+e?[$__=5ǻ#bDj'DoΐF}0D|!,yJؽ{9.L|Ls%-o]JުTC8m03Q;ڔ425ۥ&UkdO6gߞTsrI8^Dz 6=4a LSCY+R )Vxm"9! @ciMhpoIahZiǧc>r Q>=]4s&e "ZLn]$H+e=URVETb &cBւf; #Ds5XH@1{%D4s3`(L+1Q"c2.CG_Ps}cٜjON{ ]⫝̸2|-)vڝw5 Yo;S?蓱6.!&ȇQ|XɌզGU;-ukJ&beT+g4e@5dv 9 {3FfB3ߩg+[o=Rk6Q7Xs(f:> L aw+6kQ]Veڣ. bKIMVm=$^kje0}tzh2})6ԝ{bWڞV@Q7-{:N*Ca(%$ >,*t!_'m] d dWl]NՇZU=Y9^wFhT?-cz¸yEڢ|]յ:^ '̋z:).F[4 C XQ-SqQLڝ;S2 M-0~;LAS7jC#jQtNþ#8vzHfw9O'=n|%"BiAk=c !!MF9`)ck7EYyL"-Agk^_M+< f_oDNwbO? ʊbǚhH4%{O`Q'=ʤ)Jw[;c Eʯr")2x S:H^:|R=LmtF%̹9gA~J0XxXs|2ч8j3+"LO.Wĥ+bVI:Z%DQC -:>8HaϼXZHӆ+q0N,P*;]ux=ʸp|UGh_04;.B7 S['L_n.yl&wJԜdL(˭x9*n)jpWFj#pTU!:Y{0kK1LdY-F.Gi;E\f9Y0цxY'$'/5^Wx nSS~zTOhY98Rh~:<1/Q̉Og]pν:LyoDauBWP=bUEkwmmT)n- 5~w;*ot'!thbJH p#RŔ5y,fܱDYB|S]sg@=H %s*nm +JӉ!*w>/D|;]g۴7rd ݇V'_"Rxպ\2In)!0*}6>[U<-ТGNxgռ'fԙ"lJ{I?ѝ9ܥ JG&l+~.B瑐 K"8~#9WڢWe XZ\LZZuӋ.33岤Ϗ(.]W8w.Nu8k3å;^ꕝՇF}G"l$&IșB:RƙDP(lSr;I(`ѳ5w׍iz*h+ז3_ ;%t}5^A{$qdPW#6(q71 }D!nQ,̛ iS̈pz3rύAcI2%6:o[oO-!܊P=qS&g(.L -u9P! YO *[kz~<Tc56|9&,ݠ_NGn]Kq_w\F|*Ѧ]Z._3K.#fd;E&u1.AZI} \M^;HIB'DP .׀Q򚡺5lnh|_bi7Mĉzmh_NŘZ3jiZדgV^mZ!H3?̯5xqRaso +cA&+ߦ!?9Y6 AjY)XBe`߂y=fb=D9a"WSx`Oph𶠐aQ̨ &6@iKZN-XHHa5t$n _#7YU% \*\E\n{P %F؛ l_W~cY j.,ECEXkq\1+Tv1n' x[".1v_%3c%_fPpH;O7jLوK'gp+'ի|;ٶ'eO(ʛ[H&[F}cKzXk;`Eo߲hqk|-d6$o ! |* šp[4=)Š%ayu{wC1~C䏴nFp_~#`E.kG%bZ't*ds=JdݲS߅wna[~@q\ӎ=7b1ݼ*pxd!)M!}H 򌕌AިO`=/;XGz2'# /]8$]כH$nn^yQ|)R%'\Kd1P/;#HwdҾX{ Ke?˱進fsyvM&] UGћHsf5y0Ɗ1Y>?B` *΀5{K4q^t"{qjn,PZV7 hW3hӾw Jf^=Ë-3Fx4*nDK*w`;Ve_}s~*^*U߻ʣ}H0X`+ЗmWZ\U#j gk՘Hvݍl4r[BP -3s{ΆV;TV`$4/cuyQVuK1QVtѥdCK2FG(*x+ ђϒ>hhXmH^y:;ՀӊcNȟ !_x:׳f;|2c=M!+!J l K26cw{vߐ3'LF@]f~cv##c[MU{sv7x u͕lQ>N{BtU<Igx@9`}1%m-),.A kߴꢤ[3,xcËԀ=6<7tB'/vKZ 5@'ۈOգuxͽ]KS*o<>lѼ|bZnĊcÅh}e860kȔB}unbI}/H-5*0և0W~褧n|8\K{Q d Q5,Y۱t +oLEnGMg]TVx4F Ͳ*5Sʏ=9+4XR5HYPя\H6f$Ͷh?0lz#&XQ=l^[(L9Lb`zO-7~ w $>f(!h:CrC/lмƛ[g]˷+i>ȇW#T^ֈ?G|“.[w'VET7}J{C,$S͖U ,.qUM LjI 2A׿ڡwւ3ɞvc5O_(8Auy<\6iOmOz\QeӆSmj=|# D8[>ʫI\}6OKX4|[1+FGc_.TvtNGI0H,=*&ee/\䵬_ vO뵱N 8M݃I:jѺFȀ8*{f!-^qS@tޛǷhTU!)0O) e4a;iI({B'RFlJʘBcVN/I1GM!;b :RphSTa^ R,ה`]T4LiS言Iu]dD@_fxjƒԐhF7T 1oQQnZ5Gⅆ* uLNE@HQs%K|Ũ@Do¾݇:|kxB+7w*ʾuJ6fHWmjEQ)#M㝱<0 It!B*x!-r#mGEc:jcJߟn$/a [>!h;Pg|,=ߠ" vgH2`G>P4C-onuY` XF F% 1vh!i_Kɚ-+I㮐rUMM Y 1 i4;ct ur/?{$<+ď,%TmRȽ,KGdA'%H|2˰|#LX< %?p}`4Z0%窌x,4/u5XW># ZG8| {pKWT1(E{1@LR4M~`ŋjv:{.}\,Nms#hyEW6 A!dJ/Ejϡ;?#X9ҡϩDޫVz<%x'̢TCͻa_ A!yǕzOWLȶD;mo~ǩ6:3ys.gK &|, $a>-ވq`L7!&8^y9JN`鏃B^ծɬ ϕ>YXJ ¿*c_e{O4EOgGT\Ys%,ZBW P~+ .eꚤ(\nO(:#-=.$nc![{iêT'۴ f0b!Pue܊H"5߄ B%D/)Mdgٿ>m}/zN%wLY%=v#&iB?G>&:,טo k`Y r<\:ryt%_]aeD aԠ/CS? /EgE||3*v#naMGz+D 6#`bg5k+oee98 !$ɚb°_eYe_c#W힪SPڒ4 z>Ğ9coh&1{1?%&q@K앋, G`-Y3Ty\")2M= wy0ڲ1ܐJG!2vӜTipp0Mgo?h7q%-fUœw2zf+*g8nyP;xBfꈐS^n5qFZCV*H^ $I(y8lHA=K-gy5ndoI fy/7cpG)V9\ ^h/'1rj-ƪN#]^)w½/RsQS,wg7'{]!$ eNG>;.(9KۗMIJp=:&4 $3Ha-Sc$SHEN܀2O_6~Y,|i> A {w\{V,S78bV\N%[NI]U1\\fՀ3@7kɑGREz"$?i0jMk7ʖ ߜ]R(Hl*9fו2djE"P!ã]sw)u#;Z nA;=w["5b%cG#@2r=RPm$V3gY\nJ3CJ)uv nWIgGaօ2!9hQ@_ &Q$}jkf,7~œ_`p/9٘4C8Ѻʑ~._Y4O>*3+Y]=8uD<=x5=''Q%yJoX-Ȥuf\/I@mFU?=8T5 PٝXyࠈ LәvftQ4xf/0c? i(߉W0d֤9&Cƾ| zsG z̜z#Mϙ&/v&!}pIb*XA1K6Ak=+=SB*B5,Բ`L$,$jqGj62VgV0X uN}?Va~\n \b2[p`UF·r|FY s O=52f@ -sU@C*)U~9R*a  ZąY23lloN qrfyRjip}JR6pvV hA V}΄-o |#C^ؔT\?a1ȂT ͝q0e6-=V1SK|5^v\@% 03[:a2Ǵl`i4/ gۡɵ8kj;zVʸ4Dl0fm/4knTF3B$0̀t>ta$ePIo15g<=Im+y*439b $&3 ,(n׳xiq}hiůfgmd0OĦ:RGΗ jU)OSV )wKh<,x5/$&"!$|r 2q<1XL4%H过;UNmnO}'̀"'{Wx qev z?L^Eyw^_WPܬΊ(4b5IڦԮw]4hf؍G:d%|!lDYi?-Vľl*8z ::̵2 ZiG˶גygڥbbSuTpƮH6w @ XpTppgѬʯo8ODӷ`|!d 貰ٖ#ؒYU-1%< X`ʽMOVB-]|F7pFkCR1V[@[=uLV+ez+j)o1?yr'h:V<rҍ#ԴYtZۚD+e*ףʵR: 4[uVk=;?a4>Z/Ƴ@-K&n67f9̟xT,#/km>__0zcNW`^ΐJp4io4:OK \2 A^~-Y#|Ge/ g ^mS, ܘra]20:a݂LnX6͸R&gjyBu {$ υ]Eȝ&H^q+dɣ\^4WmkTMRiqc[4As9ɞ̏;qBԤm@'/:DWҊNG$*=tK-8TfV$ŹPhP;2V:08_qhT4q -B8˕R g҉mfdMCV´wl RnN9u^M)aܹ @ONF/S*d[7c%??0mk\=Vml2'b׸6?b!MAk$ubmJsT ?6nFwl͇`:V>-%+KIBP Nopj@Ot"\g哴"O>NLxvIa#.ā^Nrǥb-\IRFS,"z_$yh6+CϺ*qb&g~[P(8arw -P*TY.gbA粌ϲ6. ?2Y$5EvkTGu}-fBVN3WOhH H+TN'Z;F/dG$)a8)!ӝ ְKTD Ȍ>gq1=FxPꄘ)L5; ݮ= V, E-O;L+ӥ/ۃI~9z97MU+qysz?b_h2S[ wA%dAU{!v&w!$/M>@ 鄅`O-dCfrv~e"֔hfQ>8q1pP/O)r_54xXe,,mX̨.+^[Ͳ=Dnp!^; 8 :2xnZCV4jg|`rm1 UX:?"2gZ-=jZ,sI5@RC.j~6EpKV{NTW1`rDaT&l p6{ fBBP2pK&oO_CQo>wD~ A\(K̷p*'σ`! 7pȜ㦂>EBäeBaPaHLEz@BҌϤ.T֞ / %o m!:h2us8Ws.#|P ;+oӵ^1u,2F'堒-٠7'skmPӨ;(gp 8VN0!3b|SiAL%}G#RjgjwmɢdZbOAs:^2l4H]I[Q1͋BM ?4\Q @$Sc y&qrb઴٩6: 0;_r^h2t#s'ޒY6V `/W澉MmFDkYf}E,_b|GԱ֛T3:lάp{%mˢckݚe<./v?%LL?yh) ؞yz[p-$U0EIODKS!8;d].]FRk@>ްC̞x%r~M)0h)a%匐Z#8IݨvzQz ۋ&^ƒϼ5S׀6GIވ]-ۿ΍.U}*S [FwFfT+N8^m Nȯ e[^g@ħ;0ƒvX}=]V1| H)U½cF8gD  et T-p,!8d}]*U B?]YfMM YiPep66{8Z-nи1lIӁePBa'Md}̗Ң{?1#uSGFw% AL֜R U_IAxYxGrV,H~~:F hr`ԟ:o`lsHCt~ 5kyŭ1e-)xxrjUa}yEDDha|k1 ^ Gӄ^(8 Vs֎CQ^9x[tb~W!{2o3=]m(p#vSduwZƢPx/N; ^WWr$|CX.pznղǙg'u*q3w~~բ4Wt\EFd8%uMR@(0EĨ9q sa;8VLFnG s;z*L,p P} bVW~e!]&kf;Qޢx5CQ\b1.j}k zR6qXWX!.;7"4@ CHխ~_ҁ,uAl֡␳ES0Oj^vZ|=KT9 # a3{k&pJ%v(>NfmQ' dOfPtO|zERD)K"$$Qꪀb2b9 p~3B|Q'3%;׌n\0ao\vOU۷lGxtTVVZ|*39P8qC+ⴒ|gJBX-CLP[oՁN 8r{YY ,hOWWfZ놤rx؇S7pvgW.gKKKPYb_j:Sxb0I([:$ܡkmS*Qg3T0mӭIr\iysLKz)2KZw7fLI( "ެ/SfGTa,HCTzhذƗ}*L֤{I)u11snyR1K( 5"s a k)2?b0V7-&ětjxHmV.λ9] f3Ke e]Y;17AE~,rP; 0_2xXkVX6?O4ADV,=T'xC.W5`bz$ev?n6zYE ȅ-n!O[S4:fW+xg_f,PLJC]GKN/RH (fô/Sơ!πVv(&A*k5F/`n2Edet?R~|%͠Qnh?(D'NQIn##\:W{;ύjqTZ$N-'V#EŒqfLiQQAhsx;9USG9}pqqd9`gh4BUv@"MP'.-!.v Hq0hkټnVյ"`a-46&ink:#2aE](ML3Axy _p;y~E׺|aO(qp9j2Vgxr|$6@X(` ܑ j7h)լP?X,)͘hl{QkՌv擙=`$4`L yIvȱ+Xÿza\P8g`2l'xg*aiXE:bյ 7LIШUW$Cf4Z1*2,0YRY6PM_qδx9Ss&/Ǖ&*wN m`G'oqn`R"6-Hz"rrǙ{L>xYKRK\?Pw;| /-]CC@w)HZ$tIa@!{cl;O3j=;td/ߔp=q299fĊepM "8cb"S_ ?D`aʬض1mI-.WCг29F mi^qª0wDsf`on&.ȳjY"p8C˃BlBCċ&<[],'Mx0ن׻;),͘eY8($&V "򏫝5>nL} 5% Ri!.M!Kܬ|ra/MlU@BhVn3e{XW[c(,pBSSq5o  ( MjYfX9jPgHD'>wX =K=}lKCi((f1Mi0qg6Pc̴{X`^d"C>H < |0 vyl6=]p.M"O=esUW٤y+7f<0ȾUf\472n7/r/>.o4Tc^zwSRm%PjU0?/Q^ sKӰ(RЩ͢J>_THW Y'9gd3p77:*V)2-4İZ0k0&nOTKtcBYdIZߚ Ul&S>1D+ v)kMpd3.W\D=) @Uk3QV{٘;K('?jsnnx/t(r#*=Jmc͚G[.c9c9 !l7Ĭhib2K%i.tr"(O4":XkgHMPL/%Xs[ 2ӡ_O]0*+-%M)cYxB|bc"YZ,=G}D=z6~Ӹd)?i@S޿`Xb{;z( gx?Wɨ!w?lgc*BT2:",c@UzM *\ "mAKbjX<+Kc}_M0Y92-]V:{goXɗ,*զJT3|Ѥk epHz׼W/Cor*m._ŐhpL-]eR).wƲ@e6A1tv8'zĐ"a r 5LdS?RkR5FiDw2pisAE: ˳zx}9X}c}s(Վb9N"1c+Jm|//nwO{osMĭFxߓK/ԙ (SH;v|?=* |T2؏͈YB nkcȻ>++Ŷ.a-nXa#mT<QyW\H~:cOFJ&MËiccB f8୸-5d;5W# {hQќpEdŠvyr>BbEmv;tu}o_]4vI=+D.jFgÎ`mP[7VI 43ަE$dpk00ahqq%vBV9~E)IGZ!R:Fx"?"\?utXXk߳it>(Ud/+-f x>adt/|Pa|'Әw}+Pal8H͓ۼ3:Ed)zw㨙1V{Mջ_Gcr?QY!wa 26eZPBkn[0C/I~:ןIъ._Ž'ׅ*mRTVJvv9w#p!Cf?moZQwU~UBeeIDžsιId؝b2d>^=З2A,s"{@/_U,{H$ k])I!CIN5@۲7YlTԖg*rljRoTrD̏ucvm{IB/C»o s7djh{3:9cdVz,tp -HF̌8~7PPk ziV8TyqGо똣:o f)@^P9x}#MO}# ^טŕB6Ja-GЧrY?5W.jL.Pj 0&zwRoU[?Bh2 Di'',wvQB̫Sǣ⊿YlJ 85ŵbڀ|Ly L?s'&+,r*̘kKr ^sݸmqb9}W \Wѣ`˸=tUR+SLfې"b4Tʡ٧,ӌPۼG-rؔyxٿ[jzcᔵ:L2qȍ5h'2H@0~cgS5[LA@3" ҥ}0Wi: FnIhMتPdh#љ)aK ڶM{f)1&~?>2O:m%[W=9h!8Tc=Ci5g6` !0ʅ}+4)&h" ,.f%v*y*VG)v3.95"t%ye31rzwVڃ\HMdFd~$>P a}N+ih=jPOϼsaP+5p|BN>AV Vz,*[zY^H1uwneUh=~f2"hCh1>Xu.Y %e`JZ>ӱ8Uň,\loVg`/fS-ASϵ$ؠo9ʽ[8$2#|- 4u$4l=ZVϦe4XS( ͍p.\XA=x0 [k_ܵaB0OED71| ZU $@*эO)pYb5"rX o>XW*bocGa~Ӿh n(hF P GY#]p+J0<@ד FG`P} 5\Zߢ7"֏/Ed#[⟡)ԤY!k2[L4%B, ϳB7ȾgޓTH¾./ 8ђ0؎)Qc{ִ:hQy/WV9H"C\ sA|C%KPR3IɎrԢ Z`mYaHa-Gi2P8OA(5m lW 35r9pOdA@4@-o8q!g=PJ76"X g/*8 r"0R4>I*zz`"U>W Tzܾ;rŲ SjՁ'qA#WefSzòeoFYܱ?sQǕYuV מCf&ƪ/[9xco *ށ?I׼㠙<'$|jK0C) 83Lׯmi.xL<́/̱MC/+bt-)Co^S7/bw[Cj/΢2˩O뤨*Ka݅(2j=z|Q6zajњ+#DQ;༖Bl>xxR*20Ӧ(JbBVBY9IV@ nA- fg [)M]|XeS9V\__~a !?7#$t0;P玓m|Xd fn1XK2y`j KΏq2a6.n響kn}7|Hڹ_mO?~`5j^<,hKŧW~6N%-Tvf` $ ؊*/_%6]]zǎq=M,o3nJ/) Nn%,2H*кM@ɵ#2?7ԇE<\45u8"H^F7~"<#xX{|0Չ>nQd՗r2,zRCԜhTK+Mk/J[MFn}A u C`pk- [6iUxDXÆ;.ooB? =4 'A3YT/C]Wm4 #XK(Dh([cH&Pz *oL#[/q7] `4G-`mO)W`&e_E*q"c0NoK=Xl6$`ɩCl5dU`5=2 #%luTŘV"ҿH{d77tH!42HϹqRN̐H/!ĐW. ا+jqJrw![6s"Y@:l#J]ڗIJ;Te*JX:SSI0PM_9S ʈ}d2]ր9fnFA_.#K>D- ][Pm\"#eF[Ad(!\<=K ]5 q[< s-<| D#`0kz{ʀqvz~i1gcoCUjzU9e?#{ "|nPM2#2 㒳E6G7Lha|pn_p u%.&5:%5^VgoɳUrzްcl//K^=n<} )n3U]~@(7PT) <+(es5*b9PbvfՙԙJ3H,IDX-J(NLgн?QAsWxi1!k"Zipl +'WoaM.K/; Ay+RЏL1w?%[?-mD)|l@s>IR=Z4CX _ţCͷ{LZ҂N^dVP;Sq*K|K)V;UwErЙD/u hb>>HnĢAwCEw'9;įpEDI]Xd|6zḡXp3LCdd10 Fx;]#{Xo/Mlj} ]TĨUO`lj,J1c>- vþ(o4-qCZ=O#jbt-RVP#!j}-Gef&SzDr i+GEr^]LDXmaw}HT鮯y͇'$jcR)zK] &!(O)V¶ ߇VFJh`Be' ^@Lk TJF¹J6*M|Q𯆲9lkUsSHZr_գg\⸞-J²Mj7z`Z0YHa|yptLWAi% fT1[}}L$tIi+Zbr:iO!*0Hʚڶz ~ѸhN-MZ26?@6;UY9>KܻIITӈ79qs('*>qMI晲@x' BvV>4xIN,0f\}N3\3 PEM_Rlɾ&5FɃ3"]t1h ?5arF:G7U9ѥTxpjl>DF 峸|@hXps90igbX gDSYqD[NkbUi&"<Ʈ S(ܵHPߍ6ɷmM-yϝJ&HS-s`|jDGuj0`BXŁ_,e Hm,5+JA]V@)38e62eayͯ_@p[S[,WrXKhWt cQG5w擣iV\l㒺ʊ[^ HeBD*M2Rړ2[BMBNv2uZwݐBOґWbʀ)d`h]ĥ곂' !M_4&Z*TNI7Gŋ|غZ2ke,Sm\NwEߪ4nj fXMX|;uΘͧ-~Zg0ڤ`W6e^ XmUڔrH 5HJ}+'W͙zU*|3A6ʐPzvvZCRETɟ$ycp˞ߐ2D|%ڍ X'& ۉKIn d$KB J(oHiյm )Bʟt ZOvp$Οp .)lN|fM#MgDim /a*|w}&0s`UOtXZ>aL}OCnɶ pVzİo^hs&޲rlH[+dC*$YP&Jh?6髱JYV$oZ-O|x\yqWeļ/N˜qr6,ɬ6.:)88a#*?2"vKF|ċq;Hٛ764/'%Y Nu'LOؼ \a>_]dE^hڟ .z¾uqLC rǩ>^}(AAD&=Sw E5:ud8^EQ3iɏKjlwЛ9w(z@>BYLjߌ  K0]Q; qԖpeytT_N%LC殟&M˞-5oG?Gֶ*0Ŧ Kpj+7-eT{!gRVCÖ6N8_b)ڄbVxT--Yosg&,9=Ц;evS `TBroh\`lf%+o `|ِ@5{yr!#W7]ӻȬQ%}R~=HoQCmu2kPkT*Mw r*}8M:Oa#Rv+EZinC.t|\_E DÆآqI,"%d'33esK!Lf[ȟԥ{d]!j1[w) ۞\ʯ=q1p'9޳T1 *Dc9,TSo"v{GF1]Yx*JED iKniu[{$toi8l_؃ D EGmtvAEYPzT#BڈGp;c+Wwze;D\kDv)t͕ iTʻ9GV J,@0W ]_$=\I br0gI9G|C9<,"b:Oo.φCXpitat*T }Ud7EQDS">G풷3xTxm#a\:B,ىsZ$.Ɇ3ߺMP"n3UG7;7hK?ֵD)o!d1TX"ak-\ȼopCI>Ut:p+8șL̵X`"]:gASΖf]1ǕRR[ʄ)Sݓ|%:b|$5"28t ;/Š@j#Pui:M?vmߒHTM:0Ɇ&cBJ=P;o?r't/UX 9.E3 Ìxj#QoqZ_rnܗ5'`%zp/=27xnkB8  ouzY$<8MVSTO(F帕LTnwZV1J՞y2ZN\,ZLrϓT.gc4P1#0=LI{]sfO#DU&Pu}|Sdtm.q8Y!jV,FX>4!m}mi(2H8xh{Q2<ۀg S^2x=oSb"vyE^̎+h1yKlbPr $XfY['GdP%vO!.͋m?/J^"#OQ,H~j+ѓ֤֒#~:jMI-!#i- P .VJO' g.Eɐ2jyFE-0yi7k\Et|0]ͯ}g&؅s„SJ 0Rz 1\Z *әL_zV 2i|}^,%.y.;nZv Sx})M rd.(ãC3M@jXfWnG@RfZj`KGkb2\39JZTɮ ˧e`}% I(]a%&,Bob;+_M(=vwcy:JN .b/H<ܴk^8إXDz] 44@"Q札lU%%@D䲢iI6K2^Z E:Hcp3]IfYƅ?ȭ?1Ρ0s#7m*gl2_¿v}B311k24i`[< 4d@zkxL~;0k@ avsK9U26~S_b Ii(#tXr\W(59==UA co.ddFˊl'Rd$2tPae(Bs&\oW!A.@h@n^HXhUX"^ ѩ?o`3͋5+6&t < '׎rYSlU lڲp'(="܈7Z[B @9h6x0$n`evȐź:3KO `c j/Z>0Yņk%L9ZX,bl]}7Q v| i\u%_*A< k<6g}͢_ƧnUw /=X"KܩHX-tƭG(۴i/oZO*v&97tҮCi/r˶uUB2 |-Њ" ǟJC@o~KJ2U_z 6[Qlj$b|Ft9nAm;|9RєwG~cQ-rL!'4:ZN=X&eD" c]nSO 2$3=3B+&Ŷҡӿfy.ڞr4R%QQ]B1Seglyb:Y[P*^CaH(Y-,:>Bc7b@6^~Rl Zj6-կU9N=) f, 6T~r"TPSJ>A&I? G2tkw9f)2豿6qiSXM#Lh7vVFvgɕ|fӗb_ѝ:*=eGT?a*?loޖ<7U.,82U]TUH;md|>*;AC@3h<VO 8Q#r[Y!^+zy Qe,P{E1E :-u֡WSʩ˝Z ^񶳭."خFҋ?ԃo[fq(?mW_mUS}20٦<的&nhf&oaH/SC^co8bBm؝_K xNr;x=׼iK``~ BZV^ S4K:I':ګH,qn f~س6T(>\k*@hf"?}].Z u s.mMxGZ3CiSݷa|.j6|Z R& Ĕ ]]fb)L?2LǾa4M'2a%BA [ORj+>|e1ixE#^ו*^2;s2 !S}lLž>C#<:SFb2Bxј^xh.3苫]bgĩX$oLi]bʛH|.Ũ.v--,O&I EB=m=17^0\[c)|m2=%LVwF-]I{ˮl o_"g&Y׬GPBq7v=zGja>ΌOEJW襦(ŷ(d(*3٥ȫU5K^Q8лW[vZKAPG)&W[4q\*ryqCQiG<nI>Y"qIwcuf] n5@i__ ! -J 6џS<L2]SB\}X& f%RTOG%bWcBFAF4z4@+/iS ucӔGHeH,9!# I ]U_~D(hr|V<;Q&UE.r=$Ϥ*.)YX*!L'\ >9-u8I< {M@ltbez\H>t5Qqc) 3xWiԯ4w`KY&a]FتJ`VU"oIl Ekn-mZ T%/ʴ2!y ʑ+KԔ].#3/>\iHT+gT+zk&"MfEXH9*3ua}ƢD o.`] Zc(wIt]Lv+qG{j9=B3a uh u"RiRu6D#$2Cmod _CpJ:`=x#t}\|ڡwwhsxK9^5@8p'ω`gj ٤5UFX^^E $CE] byW) +߶54G(PG׮1AtxMudjbb`?/86( K#̙-k^+~W:QkxyAA02&H9G^/c|Y4jM Nб‘n}|\0k/:9$"MͿ/H빨&yℂgvlE|zVy,PiFeGQ8‹^Q>Ch_g,C#Os Ѱ3I 8{5@!GN# ?嶱 F#O_vWCdg!C &  nkFk@fZ`뒵.յv1v d1O+:s}/浡~$( :^Շ q!W'F==qM, \d:ĩg8[Z]jo!XbE僖\P@ٰ ncu*#߬!1\`֑8-| ? D+:yX G|0.onx*Ly6#U9N q|>/5w4jWCƤ^&X% =̓XUFUS8 6eYBlZ >? o1&H,ڊE[X@d{d`w8Vt-z0K$Q Q8?hyl 6~C/#ͻ50g/Hw-J 92c{kI}H:S2?2 wW'#,+#DkRD.r1b2m!u7ٔEgF#V"N+G_e+/8tBVNN';7;X.,NDT`KV%^@uձmL3?"Yj@+9,,ϙ fyYq]x ?1$߰mM>;O93{7BqqGv3 rM#=:syd|4 $I{XٳzUBuܿƖUqb\wr4-\ 2&Acp6BN?>)H}׊-s?z#p!_NU\[?vL2B:\z岲nuN(s'qU}1̎Gz*1S_u,7vN“0lhdcB-N3 H),r`TFl!.7{9 !J[dx|<šn5ӱ ɮQC&|-[h% l3뺲T}S ztS~b tov)u<}#9,8nb} lVshtx vSMdCb>$^ >$oCf`|Zre>;r(̻r=]?:9rqD|эF6TIv8IoPx6@rͳvh47[DjM"X„Q@oufPMjL}=N4k|oJY9T_#"bR؟DcW4?QH '_;DA霬JP\Ĵ u2Zg[6NVG*C1ૄQIdΦvk.3ܧ1]Nӌl] Lь'0"O$9O !%Z Hm1>ʩ\!7~LEB]f6$(3$ɉkJ3x4NWC^G ۸Gg<:J@R>%JުB9|[e uΏ 3 ?,:y-*o=ޣz4[ok޸ aWVҬ#8W[fzj'_hI2혈 Gt=yvM;7=l/^TҤ8XhBiO@ TiبX۾7̊) cq{o% >r_W' %?nII4!񂯼 !1y—#?.C!Lqe _a+PZDgljб z/aAH!MشeG,N+J,2h~H;?Wt'o~ Vw5>r#CywR![b+;uJ7pb;s,y랫8 Qcܝ3&f<d=I eP*Ӎa)Bh(xC&T<g/Cn +Ag|(퐹ҟHǴ2 I3"_[ 43=aٓU3ROt<&祺q‹ȇ/TT9Id ƤCUx]S ʧ)op~VVo"G13(9FP'YLT$8Eý`%bzKR`_z9fZ7g,sH-[=ȩ/T{@ߩ45ޯԖBBp(Pzl$r~?uP)08#`?+ =Y5hN-&MSu"hV S^ .8-BX1Za&0EOĬF#=OaG^I bdTȊ/(Ori˻W|I½;0%uh,3ZnSQ^4+Շ?-śx'&G,p1dd)yDSfjz//iAV+sԉpР u#=|2lI5d vp{_1]* ?(PcL5a>< DSZ/_jDfŹiCFi_3sC JOo9~4: 'N+tA59)z6"cwr+&<~vn[NvK(1 e Br0KJk9):`CsQGu  (ty <S, I6ʗ2Za.%MJ^DsY3#D#o{"!HC d' rr%8f]).!GqjdFiKO$cO^ ΧU)c eR])^o-c^!ŴI/Q Vwx%6(eS|t2m#R)!ɶCu'ΜB@k/J ]\bO/̯|?L{gL YZ