You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@carbondata.apache.org by ja...@apache.org on 2017/04/07 16:57:10 UTC

[1/4] incubator-carbondata git commit: clean issue in java/scala doc

Repository: incubator-carbondata
Updated Branches:
  refs/heads/master 1e5db53a4 -> 75a1db4ba


http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/test/resources/DATA_FACT_SMALL1.ktr
----------------------------------------------------------------------
diff --git a/processing/src/test/resources/DATA_FACT_SMALL1.ktr b/processing/src/test/resources/DATA_FACT_SMALL1.ktr
deleted file mode 100644
index df9155f..0000000
--- a/processing/src/test/resources/DATA_FACT_SMALL1.ktr
+++ /dev/null
@@ -1 +0,0 @@
-c912c1ec30ff4709b49423a3e0c8cfd992d3d2ae8361a315d5bf0f6193ec53cfa3ea47591d8a6749f63e1d7c810214e60c9a0a4e7706a7f865c3e66a110b1b0b324ab1d138c847ce42a76b7365dd781d3026c09802a63417e6b3dd23dbd0339ab4a111912970c834610f4070c47ad267b67878965a7d5c19f8db8382080b0dfddc92b7490ca63da6b5d4be92931dfc259c0360a497a7bbdfa62b2d5032ae8e2ec639cdbe779436396956e0adf119ec3673ab1b9dac1c6be702cbd5ea39fff5776ed0c45eb95e9a8079241e699076784f85bbd396fe74f76f620b9ff4ba5690d4f3152ceda226c9c44d69de383a171a1d295c781bd82bf48491b931f13ec61290441c1a49a1e02037caedb359125fb4dd60fdc19c619953fdad76010c49d0febd035e183c2b57977f781adc1cec9ada9a729a40661bc206a0d0096592c8ebaae39732698c599725e9f925613eea843185e083e4b4ae970eb07d61731b0e1e619dc2af3123c998e4a06d634325fc9542eb590e63e49192bc78cfd8b3381b55952191db70f4dc5880d40030032779d11bdeebee0d651d9a75a72439eaaf3fb9ce55ee9123eea047eb888dabe2a71b3d80e08595540256a4b5a0918ca6153870468bdadc24177ff4cecc991eb7db7b151a289535d73113172ecde1df065d55211c73fc4647dd673948f8f2e620ad02da2a96d3a69
 fa299c171bf7ec7947da1054f83f6aaa3786db4482da297f3e86b89bee6b09036b8d65869257407d7391e206db10ce8cd649b8157c72348cf8a6dc7ab7ecd7d8e04562b8148232c0a2773872eee3a60d6aab3dff03d55a074f2135d475972b3db61ce850d8e2105e0e41b98e2f839cdd11dc50eefa81a4ea69f08ae715652955dd851c0522f12a7fe73f1d1f428c710db75cde42b3b4ee8a4731982cbddb71695d97b02a2500813dbe3d28c27f76e3fe09193693f3d8f5aaa74e614681a7dca599668108f2fa17e8fb4fdfb086d2229085da1d55b3e1220fe1f847edc1cb6969b0fa3cbf2f18c9244d63f80ea6d06ba08d816a53b9e7c15b50850d8c0eb1bae9c5669b8de8cd0015430fdf1e046457a6962d73772b1c6430984645d91479d86b411f1d78affe8b7aa48c2cde0ecb6d7b4e25a0287dac07b8a43177e62c4ebb3a18b0ba857c142dffbf37139ddad946bfc22c94411958e3e71b881efca31ab9549313b48f124dc21b3207eadef4239cdd11dc50eefa81a4ea69f08ae7156e2a84f19b79625aa2fe99f28abf9f435e4f15fd81da2c0c555cbe3eefa71a243f789424754ee2af574ba03b36dbcace50951d2a1f45ee3dc3b7c8688a6c68114285ddd5584afeafd5bb96c9e05736564a371cb5258f555dee464e24eb5aabeebd71533a9d2110668d9d00edf6bcf98677a0fd670ab
 fb1e94051b633af56f45bb1352033153c068509d8ab9ced98f01d9660d63f28f87999d404464f5d89e41de2e894976411b75b5a6dd45fa8c9f13d466b0530c08f26b8e90b880f1a39b7cd0e7d9ca804a9e096a1b43f66f0916965959b7e2ca2833381cbb94da3ec18c3b9e91c33821141d5c9cc373ad48685e88c1030d6ebfe3d5680ea038549a9ecba80f950d4ee3228e6ef139b6ad40b00e7f02ea727a159e7592e76a37ac2fd8962ff64c50bfd309c54937d448fe297d5bd5cdebb3a18b0ba857c142dffbf37139ddad946bfc22c94411958e3e71b881efca3101ef2d007f1b5942f0371d5ff8f6d8af7dca599668108f2fa17e8fb4fdfb086d44345d85e932a40dd74abf456904de88e3f4a5e425598347cb60fdaaaf7f711300803240593ba88497a8e1a465027a4a91db70f4dc5880d40030032779d11bde5ef25a3c4e49f4d96c7953db88c6e0ee17ea1da6d170fa564416d835a5dac095946bfc22c94411958e3e71b881efca31d2b81682f7866e7bfcb097bee2693a2be7db6fcad10bab7f2c07d33173944c0c6a591ac003ff3dea6d3cc3ef493e83893a60d6aab3dff03d55a074f2135d475953e534a02da4c56ea97759933666ab9c91db70f4dc5880d40030032779d11bde36b576328c2d9e70d20676edfd20932bb6b2468f13a4317265c9cf94f679c651bc483304b5efe72
 a83c8f069b6083feb6fb798f46b80754850f6b3f7aae1f2e50ce8cd649b8157c72348cf8a6dc7ab7e1cb300741dc150cc5e8c39f514b1299ce3f4a5e425598347cb60fdaaaf7f7113754f4c8105127e6210ad66f6c2430d01950d4ee3228e6ef139b6ad40b00e7f02dcfd2b034d124795dc4cd62bd0be0b033031cd8e03815979043b48abf109536d0c6dc757075e5f3ac652bf50f6eaf0759dc54f67997461b7c2614856adb842e800d617d8187a2e99a5a01446c757423104c72141fdf374b4132d5d6c4bd6dd4e19f9be249296ad40b33ce0ad5852edf2198deb70d45062696b19ea5d4069ee6806eea0954059472ec6af83f910a2fd60a1bc3506cb5723b0074e0494128b6db45507f77f85434255a12142e9706fee3f4306ba9dd0db89e628a3974ce6dec58d9eb3885dca73f6d798a454b34e947789ad953b38f54b48f73189642e47051de04a8a4fa4a214cc193ff792d300e7c0c400d617d8187a2e99a5a01446c75742315c511a497b52f82d5c60fec96af08c5d833abc309298134230453f80a0d81094263e4138c61861b81a3c7ff1d939d9b528ac9a9baf3afab700a90e8b3d2d8e4c66b0530c08f26b8e90b880f1a39b7cd0692b5bf55624e1a8acf7a93e7b7390e191c33821141d5c9cc373ad48685e88c147adb8e6d01e31efba1617f78d291055a371cb5258f555dee464
 e24eb5aabeeba05aa6d4701efc22ddda2cd1b584977494e2b4669676a8cf08f462454723b2142ff7aed6fed2e71c1625f6228d8ca32b22472757d567c0713abac9da073c6357bb3fc857c5a7fc76caaa290de3d5703014f9b37ffb9cec5576220e1615d0da9506ba08d816a53b9e7c15b50850d8c0ebaa38f0a51ddc20361d56254af967ecb500d617d8187a2e99a5a01446c757423124c8a8705dc035a4cf9cef03abcfd48524703a0ebc7602879102774626c159f5adbcb55253f7b62277896c36c31a222c5d0c20ed5082a493be596881a4adfbb50ce8cd649b8157c72348cf8a6dc7ab7e65ee52d66f2ed15e6bfbd346abf9d2523a60d6aab3dff03d55a074f2135d4759f1323aa617de3e17e77458e281a009a90cad333bf7aac2233b157af1d548fe8fbb3fc857c5a7fc76caaa290de3d57030cf6c9c3d1da3ecf278efa977987074c74718ebca13660e28b1450a3cad0f2d7c33a38ad82bd84d7e9eb7221965a45aa34db934558a7dc4a5958d1bf6b15889bbbb3fc857c5a7fc76caaa290de3d570309728e6dbcae38ba4463535b4dedceecc3a60d6aab3dff03d55a074f2135d475939b500570d2817d3f9c2a694d6e5a1b1f3e0dadbb4c0144dc21dcd3f6112c500a8a1509e0ff740b092fca3528a18a18cae32e531cad49d0eeb358b22f347745eb9249c61f52f5951edd9c2516
 8370eb27081c37ad2e929cbe240a62a8faaae789906d8d88aab2d8c0998edf8af5b7c510ce8cd649b8157c72348cf8a6dc7ab7e51f900b8ffd657fa7257d4e047b0dcb066872f79e9acb9138b462a6e69b512e7763e0a7e67733bfa427288632a2da993e409fb850b8b979ad34c000e62de623a0ce8cd649b8157c72348cf8a6dc7ab7eeaf1125a427ff2cc5bc3b2b64382ae29b9249c61f52f5951edd9c25168370eb27081c37ad2e929cbe240a62a8faaae78b0311c0022fec438b4a1c886f734f794a371cb5258f555dee464e24eb5aabeeb876ac90c1509302688303a6c4b1ea72b86e01d108737e7e1b41fab5faca789fd820dec8baffbc7a4d640844a6f83965d48fbff888c13f00cac50116c94a311fd0ce8cd649b8157c72348cf8a6dc7ab7e626779c6560db09833c47104a09c5b4d4718ebca13660e28b1450a3cad0f2d7cf862e6befa835d179e033c37aefd36090c1a608d8b21f37173e6b44bf45caf480ce8cd649b8157c72348cf8a6dc7ab7e83420782dd5a3d5b691ec813a729ec0e291fc759f5bc4ae8fa2945a0010cf8ad42617a69f40f4198af40db5889d934abfe9d5f306c20ae0d29d800cc56b4e7583478e4dcfb56fc0ce3e0f739f9aa0456bb3fc857c5a7fc76caaa290de3d570301e62f536f09ed0efbcef540365cebeb9b4b949ad81c2b79b71cbfda75c4d97
 0fd7d013cd0b6255661503500ba5d425399621c34eddbea7f3338389e8f3086e524f0bfab350180c71e1abe1560c26d3f53e72ca3543118a1c0b3280b140ca1a81fd2f828c94cf95824bbd36e39e6b31b592214f6288c2ee8807aa764d997e045c185cd8ee1285bacddf100706973289d3950d4ee3228e6ef139b6ad40b00e7f02c7ff1629f8234e02c1ad3abf156854d71f64018dc29b6a9870454fd0a317360a946bfc22c94411958e3e71b881efca313bc1cc9ed0ad253fb2f7c287693b68881a6e2733ec4905046a4a7983594675a42f4ad4dd10eb5127aa2e5ed7b01b7c817b4f02202e224effb380b459290bab722eb53b44aa5b67f394aa50537cb2e152f4e61b1e6c8158520568817e9234abef0ce8cd649b8157c72348cf8a6dc7ab7e8547fd26e7f688ab06b0a0fbe51b1531796fc62a8cd7a18bafe5b6416c70e034d8986f51c95c8313aef8dbdfb59924343666ffe719d99a479c5facd5c57cb22d9535d73113172ecde1df065d55211c73ce1c54508db04e3761f5ad7291cfd133371ea700d372619bd23f284fd345974fe3f4a5e425598347cb60fdaaaf7f71135d61a1be4f86a23c60fb958b50ea6a5c457a6962d73772b1c6430984645d91470f7f4b8c378af1937ddfbbc1790de3a476b3095a0b290961ee950aff52ad225f4718ebca13660e28b1450a3cad0f2d7cc83
 29d4e271a244b004af47ae1edc9cb950d4ee3228e6ef139b6ad40b00e7f026a173c2b27eacab4406235e9d9729c92929a00887785d5b5ca021cb1656fb13e06ba08d816a53b9e7c15b50850d8c0eb47962bd638c899e40c77465f320004f588b9923b5686d45a43be0bdd6ab4d7c1e7db6fcad10bab7f2c07d33173944c0c707523fc3ef46b56f178e496d9bfe407484cb1f1b9ce5db7243a901fc9ff200e4718ebca13660e28b1450a3cad0f2d7ca866cc67c782b15aa8823b51d92fc58a9624610b153f9571d3728ebc1926e28b8e0c3eaa702475c820570cf5d7e8e28d770b19819342bcc4c8c0e723ce426144f4ac0f915701c14e7220af4aed780c09e625aa8a973a39e81c2d7dee7121c8407dca599668108f2fa17e8fb4fdfb086d42c106843e9a2e55039f37ac456b50a894e2b4669676a8cf08f462454723b2148856a9564cc47984f0061d5e39ae00807d3d28280d36ca8937172723b619f37de7db6fcad10bab7f2c07d33173944c0c327a70254a53e628a17997b2522b44a56b1dca9b83dba4850ad36f4cfea82d4c5ad3fc0b319ce6b86d3de4c3e2209a0e73066be52998999445e1e0eaaa47da27457a6962d73772b1c6430984645d914770783957c682c741922aa523baca55a773066be52998999445e1e0eaaa47da27b9249c61f52f5951edd9c25168370eb26ac398f8
 3195a7c9d8e724e7cdff8e81dadc24177ff4cecc991eb7db7b151a289535d73113172ecde1df065d55211c73ab3470c4f60e01a2d9346b79979153880c1ec9ac8ff73f90862eb2b309bcf4bcced488aff5c7416733834637500f4ad6cb8314560d23c3aed9fe4b530d12b5a790f217d938449d626595df57a5f5583f8837eaa5ff0110f0d89b7fd12f18fd07c2a15c3d142c011e1b69a3959e2d669f23f8605825c9d0387febdde2068aa335388cd305e35ea3ed3262e574c93a84d3659f8521e658efe5ba2532cb8b65c865a8a1509e0ff740b092fca3528a18a18c16b29d3dc46f45643ac76e865c2d3dcde3f4a5e425598347cb60fdaaaf7f7113a71ed16f9335a396123e1eda2ac64731950d4ee3228e6ef139b6ad40b00e7f021b275f747e8d896b8f8ba566704bd9964c7bd2b7eabc5c747247f2507b56c82b0c6dc757075e5f3ac652bf50f6eaf0757c2c54e43d0745b59ef97a5aa073a77c1a6e2733ec4905046a4a7983594675a47d2142fdb7bc29124217770624e99f583db0848c2524bc45b6062f371cc6e8d4f43e1eafe687ba47930eac02f66c6c4db1ec89e323724b39ddff96fd3b660d48a8a1509e0ff740b092fca3528a18a18c92d2ec6421fe47cd47d4b90a9b444788796fc62a8cd7a18bafe5b6416c70e03443800deb4ef9ce7431ad3f123f21a6fa91db70f4dc588
 0d40030032779d11bdebb4ba1daa732f75b83454f9ce03e5d5a9b49dbcfbf2044737479adbcb75dd200b84e187b6913173060259d7ebe8067a0c96307953d6d1ea3e2fcf380c78dfcc7a371cb5258f555dee464e24eb5aabeebcebaab39fc9723e6d41241587cfded37b9249c61f52f5951edd9c25168370eb27081c37ad2e929cbe240a62a8faaae787e808fafba590403761385ec45e5ef71a8a1509e0ff740b092fca3528a18a18c2b05868d8e4a5ae033f4cb7ca2c2809c3a60d6aab3dff03d55a074f2135d4759baae49e2c1d100606bcd831ce5cbb2b825321682842fca79db7fe7dc87e62cb0a8a1509e0ff740b092fca3528a18a18c1c5c4ee09efcaffb24414ee745372dc0b9249c61f52f5951edd9c25168370eb27081c37ad2e929cbe240a62a8faaae7842eb5d44e11daeba2d0579400717ff0be7db6fcad10bab7f2c07d33173944c0cabbd5e80d9b108dc73852cb8a8b45679f71ff117e62b4af612c710571590f3a50951d2a1f45ee3dc3b7c8688a6c68114285ddd5584afeafd5bb96c9e05736564a371cb5258f555dee464e24eb5aabeebd71533a9d2110668d9d00edf6bcf98677c7476d2a0a8222a7dbec8b727fe7dddb71695d97b02a2500813dbe3d28c27f7dddeb899b7079e6435e26faf7cb4e29ba371cb5258f555dee464e24eb5aabeeb093c9590f025266273
 c32e5fe2dbf9b4253d5b2841d876b6248c148e7fe5098b0951d2a1f45ee3dc3b7c8688a6c68114a16555d0ca42274b5d9b13b6c1bdf5a000d617d8187a2e99a5a01446c7574231c585f36b108599f8747034689ec26568ed3ed90af2e0a9b1f2c1c0f374a068910c6dc757075e5f3ac652bf50f6eaf075b77b75ceb3c930ad77d8e3fc5285f151a371cb5258f555dee464e24eb5aabeeb907d958b8539a2443e51282fe397b6633a60d6aab3dff03d55a074f2135d4759f9299fe4250ec42ba67a087a078badc5764ee5ebbab662d8891e8c99c93c534f9d86b411f1d78affe8b7aa48c2cde0ec657869daca14011e444ee1a64f51a85d7cf97268ddebb28a9c7e5c578b8e090d65153572db8383200379fd5dee5c4b62c18ec6d049bc747e10b79ae54c0c9673aa75f5859ac46dde17dacab7c189f3f209461e11ed240b3d2fa04b3e7c33b121b91834a2f00e2acc5b56e19ad4b2dec106f3ae0cb10032509806f048b2e41d15c2f57e32e2a4dbcfd5e2897d059bffa2ea99be529edfe92c885ab265beff1528d943aa97e613f698b17148f8e5a497d6fe6de6d2766c72ef4e39bc25375a02792d85a0ec3cefe782f0bab65b9ada514de902e4e9be86e0886040a0ec4420889f4cc335490c21523ecbac1707b39475f34018baa7745314a7cfde2dff0c57cc9cfa3cd9f540e8624d20ec33e
 50d6464ed121488d9f3a11ebc0fc2e3136c45d0d7e0e7848f08f73c2203b0962551eca440d4fd046ecf3d7fe28a0038a649ee47d6ae42c92ba48d062bf4ce398bf4cafa254a093bbb38a3ee65b55ad8b6d887761f99c672e91f4be4e3c72de815a4e5c0d308d92fd45f464fdc53e19ec5ccbbb0edf11075a584a5d3df690ea78a905c33e8f70621448ad151d80300709d9022894cbcdb1d58a3a5e0ec62e892aba3050726a8bd3e112fdf7332dc40311a273fd54cc471cb9c6d98c464d9df8c846e292258d3566cfd523ead1226f49de25858ac339c14951b19537e4587b9455cee7de63a879a4ed1df94c6064fc29eaea374a49fb7f0bf15b197b2952cf2c846f26d0b220c7440953186e6370a0814aad082178a010b2f0b500991ad20fb297e9d97ab73b300517340b0fec5eee1ddef84e4fab91a6602e018b50f9a09f346f6ef07f79e911c3c1a74f729aca3ae73242b858f4fe85055f37a72b592e02e66d4af85e48a33f7c7e210db53735c94f9426c35ecea2b4ce6371c75f320aaa755476714da42171b7384d0958ebaa72f4218652ce37f15ffcae4cd9e028f244ab6108b899be0ed03aab531bb3b52477e153cab9fa2a9f7cb111290cbd0266c51657e2e480671abc71b13f53c156ba39c48b362a4bc888b2302d848d9a6a552ee354165d15ab226532584c6e575643c27c1acb031
 eb176bd100e7d79e38c1747ee672bea96e54af77e1883aa26bae980dee11696b2ffb629b2f116976d01083ca1f60dc17b2dde267ca19606f8abc9738268f15d9fe847ed1bc3e05d9bf1f89f7212798fd7896d5da7a0741ee54637c3af8ad826041eae7b4009b38b490952a6b836992a58ae5d6fbc9d6709f6a180f50b8a7154cfa8e4a2ba15c3444e580b6808adbcb6129766ff719bc0b52d28e10a369dacb402c9aea330e570fc20e5c9a037db4ae127cf06a2289e996def94aca57e72dbdaeff33b31bf19c1627734127a45bf633a673619683ad06f9255834bb62d256dec8c3df460b69ec1c7a8d3419d6b2a8e9cec9ecd59cbcaeaf97a3f6695908fdb030293d880cf5820a8f66f2466022933a58f68dcf826d5a14c87e854bb304a40dd93745606ab97530a408f5d975bfa68ea67dad192cf679099ccd8e43e974e1bdfb07c336491ab755519349c805d9ccfcda078774fd1a5b65e471a7fd3328a6e0e9ef8301627d810bf16f340f702225192c605a635bd0ee389fac817c504c41304f8a10ddc5c93aba1375dae964c3fbdcf8d5f366cc7368c0fdc1eb67071db91e4de2dd83944a386b4f6db7a935d1948d0a79e2bc5fa50474ff1574efd4984d433b6009b163c31dd4e8aba45f0f80f94c80d44a6cca7db4fce2defc91df5cde2e7e023abe050cc9da90a1491abeee7bb4ca7f144
 44b918ff3dcdaff9d7e5fa0ca0b8a60058093457bb841c34a2bdd7ff97e2658662fd46cffac34b049d3b467f8b2b5d208bb91ac2b429077a06df1f1149aaa3e874396579fcdfcdd9675e225b5593388ac91b9b59cc28103bb0b9ff09a3f9062a289651eb2936afe9e98ab82dc84136f66bf6d741b6d1a00431ee09a90a6865b62e0fd9b68681e472256befbcac449ae1a4dc5d465cf101312080ff6d8c858de41880bceb61532b951de96e9b8441494fd7dda848b7ab4abacb5f5422d9d5db3c04b43bbfc92313bd061d90a1cbf7ebb5c9fd23458a7aef5963f23abe157e9fdb20c81e4ebd3e1ba347959d11b62c3b59218091282749c8f5d58af33fa5118b8b4e061b28df7eb79d7bd994ad75a9b7fcdb293ed49e10438a6250fae3ebdf8378ea64dbb54a8607ac89e75404710a7d2ce01f132ac9bde9afbf0e8202e84e1277daad9ded380b9282eb1950e0c36d9f8484e072e4c9754d2b417ecf1ec8488eee9a5f870f74699cc99040c2bc5c33d628c6566ae43ce72a78ed4726f495012a513e834630ae3e33a7e9ab17865a662226d7579a7acc54179c7f900d2af7b545e8c00fa4f790c282910ae91fad5de030a6c2c62090f9c98660bff3518244df719b6ea3778ba3c6a729e3137d4d205ddcea5cb191ceaf912776899482494641c4b702643c2571e2c1578e0adc36481fbb94b5fe3
 acf6f1ffcda9fc9a22e2aa690e25f3da66c2c0c4620f4f024b582da4ccd5c004ff56297d08135293bf39119cb5e3e0834dc7956dfa44df367d99db5ec361da8c9643b1e86210ce9c2abfcb55f4f2394a57c6d0239dea8257e5d1d063af3168c84afe58b5c2b7da569984a824c430499a6aade6d667f579869f71a01e8fc9280547edbce177213f899cadbc7d89e2880f35acae6e09652a53be73c27c11f16cebb6f2efe8ab7b31e29ccf9be7e9e46c09868222f7f4348df00dace152ffe756eb886b9a36ffd43e1143fce2aa0c97978320fa0e6fc9bc1b9ba7d0077998f2394a57c6d0239dea8257e5d1d063af3168c84afe58b5c2b7da569984a824c4a70dbdcbb9b1c69432289f5ddc2ad5b2c72f4cb1e5b5b14b287cdd5cca40d4d20a3a3042504e63cf91cfff1002594d5bb611ffe61c225f7fd37377f424c0520492cd1a5ecd0df26f954de91256bae37cef22ca66c5f55e20aad100c19a07d61ef2394a57c6d0239dea8257e5d1d063af3168c84afe58b5c2b7da569984a824c4cfc49ef8e533d3c14d90500cc5f582a327eb280f77ea93aee2179c3e64a8520337d84f2a768c72ed97f21a37397eef1d1add0d586e5295d2f80b8f54294e341c8575a44cce0b2e1c1a7f6b0a651aadf9a86c80367fdd5a4278b3912ae4364e87d1207cd5d4096b5d8b234a087446b0ee8e1b9b71229
 6576843b3312d1b08f02dc08f00f9510308f5be58fe6e9b4b403f91dd50460fa9627c7820d8b992cc9bb0dc7bbb7db0cedad1a9b5a534576c3fb52751033821bcbb79da5d72614902212cd61acaaf4f1b2eb5d4bfa1c95f3b4e70d1c8eddbac30331f132e22f95a9dd4c7d4427ff8c30c4e157ba33b2021cfa23443d11b98a1e79baf57f723c0fa926b5fc08f00f9510308f5be58fe6e9b4b403f91dd50460fa9627c7820d8b992cc9bb0dd96261f127cb4dc62981bf60a4fb092270fdffe94e6a7dd7dd074878ac5e02f6f65f85a187d8a63c1e01fb5ec6028134c459cbe6d31e72a41e78b8e9b6635e73c08c6ef33979dcd12ab58b18808594b261f23fd1f784193ae9bb1015c0f4498a371cb5258f555dee464e24eb5aabeeb1a446142b267a5ab2d34cc2da06a4a1c5dd100d3d20e56de7f790d20fdcacbab140d20351864d7f1bae1677fdc3d0b064b8624862e092948b75e3cad2fe485c48156c88570d5970df6a92348ded211b2c08f00f9510308f5be58fe6e9b4b403f23836dde96bcc15f19c81044b58d55fec45b4e41d82e627cc6296ced5929e37ea10cf83a16069fcfa24c3b1abc9419651f028d446ff60837ae47edb1cdb2d3e1ca22ae5a58cf3746ce55815853d28281ae33227d94505fb59515c9b0ae7d6829f93330b7060b16abdbbb31f7e59e01d583d2191f0aa1d214
 e7f94c0e3f90c354dde416dd59855f39cd5e9d766746512a49e196e58503fd09a2a4abafc7d5f4871dd2b99394160932b7b3ba196bdbf3daf787f764d8b1dadef5433e5cdc2bc797f06a1d483531c00e417dd13f635bf969c6f5862e21a8870cb0d87349af3d2b129e46b65d44c2726340b2c42edb0592f5016e2d0f7db67e5cdf86e026cdf5b66b5c98d64ad2dacfd4612d93d499d7b80cc6da06dbd76955a4d0701dac950e8f01999791becd0ffcbd660abc90346da998119dc331172bddf51b289088b30e6772e6d9ed290432bbb20e1693795b8b6b7c430678311256794ae665ad9e650cc22035251ac6b67d90ba78959786604d1a31ad1f45c0b2df11c10f2633237e18e12169a12c064f601ef3ef8bf60db61817758627404026a62d8202e4abe4b6079bd875a5a2bd1362c55b7ce3c3b761b8e581bc5c50489e31dc070b64f78543a33eb95cf153575113f3308807799efc3e8548e7851cd0bbb6ffcc5a6b7897a18aeaf2477d94d641d36a3ec33acddf03e97a015607778fe7ee2bed9e101641f31276cc05bf05f263c65b45efa43519442bddc10036bc7237cd01eba35bb606768c16afa4bf7656ec451c8f57d05d3185f383715c2378cace2d46ea3740c43ba2f559e387b579f91bd1edaf887cfa4f74b37b049704db1ed390140876bda4126715d5571a23b41d37efc5b1f6051
 a5de1ad63ab9a68f1608d0cf34d0f12f4f35ba68cf8b020254621ea43ebef0496117c77bb7eb61a0aa8b4637691a5ef72d9fb2f672a64b9245f6a360560cea7d04de97c4ab451f4ad4fb818dc6e680a2c9d1e3607ea17f80e9ae7792b5e664637b252c7f88c5a120ace64e7625be7f01b078ee35ecde70845e42ec95b4371804a0e41e430f3911458b84ae0800a9b11f387cf72260f5fce9af62d1354150c82a3464cca2d7c11a79d885bf0a8e2b23605eae95818b03aea96972a9f3ff917222281e5b5fea80516ad3b7096c171eec9046c059098aa1540e5e2281bb7f91fe641d88d12720008eabc29ba01834cb6bf8dc8c44daac2fcb2f1b59c708fd9a1d573b1709176e98ac0e2ade6a8838eacf5573f0beee9b1e950076aebc242e17d07ec78643bf62e210388ab8251b9acd0fb47ff96bfa61c3dc5ccf4279bd2e13055bdc688c3200adcbb76218dc6816d0cf47d556aead542b6cd65da1e11e6482d0d35bedcd77690321f8681fe2220cf366ffbc30f478f574738204fb96c9d876c150272d0eee1edb60900ca5b0725a132a9460d2fbe29dcadbbc5975eda1c27a9bc3e888d91389d0aded687b40a8155883e381313c617f34498aea9069011bc5b714b1632397f59536a4e02620ef71cf45d590528b45d0105ed95a0590007a8b44d0c1d72fdc0f216adcdb3ab8e4a352f60a5a20a
 ab6c9009a1c74ed2adb54adb766ecda3e8feb54ae79a5e85f01e73937341151fd29f42bb0f70c69fa3d8252911e04285b65d89406529d6e952452035e0e5ae3adcf5ad0a50a176d75f16734e2d2a17a8906a422af37d2b94780007f4f29d88706d7fcf79658de5ef547dcb93a218d47bfb4c7c20883474b7140ced5e4571901fe2ce63a57170bb6423a92c5665122bafc35addac90d9cd6654018e82e82a19ec8501923cde50d2cae90039d5cdad31bc4066bfdcf4570c5ac96710255b087ec934a292fe3cba7dc7702921af84d2989817c296a44a317d996564572f3c8c779d3fa9e4c28a13da2cc5da5487f357fbe8ae3eb1dca6d463ea178c6ff5642fb173703a99a699583fe4b320aa1b7f0370d6c4b71a258207f705519d613bacf355e80e10dfc2f214b38948706f420a06c53a014c1d8c601496e5f954ed4eeef749ce5788d8201f13aa57b31a64110a6c4330a1e799bb1294d5f5f97de439254e01bd385f1535d73623dfca08f03dbf60f8eee3871b3aea96972a9f3ff917222281e5b5fea8ed65edd89fee2455f190516a7542cb5556cbd4b04ed2a9497fffed1c677da2b3b60900ca5b0725a132a9460d2fbe29dc8a45d116b35f69416ac867e9177f4277603f4c285317e063a33f6861b4329322a59c4bfce360ed30ce72f41a151b538ea489e22ff3f79227884e69d90440ed5
 b477d94d641d36a3ec33acddf03e97a01e6eef419d4e55f090ff69b2e0154e8960dd5098db792b10997da8ea2cd61f7b1fe3cba7dc7702921af84d2989817c2961896f89c5b7bf05556d7b6579357f28f603f4c285317e063a33f6861b43293223696e8e813b3b2c8d71d9fe0f22e8d1229e4b6f0a61337ce624d8593c0710392c59b586609af6c9d2a0e4b1d118ed8ebdcc17f0bce041ee7e867a3de3620977c8a9ed457f76b7e8ae6b42d23fa165743c2f214b38948706f420a06c53a014c1d787af8bc0e582e52a71e7899943266e8ea7fe7a9df7780e29b2b0ab8c878fa62603f4c285317e063a33f6861b43293225f6b4821ca6466b6ba820d8d4ca55d4629e4b6f0a61337ce624d8593c07103920417188a5ae3794f184a3172e846b043e9ffbc1587c75c5c8505643c5f697adeb488e152cc55c433133d4f2314d84788c2f214b38948706f420a06c53a014c1d787af8bc0e582e52a71e7899943266e89e233e8e54761a9f62379f976def4eca315023dbcb075f9f215e48d9c443efd0eb6a80fbd76090329db43ce494fb8b8420420906e5d883459d3e638cfdd2b8c28bde3ded4dfc29ff8901c72b3017e3676d55082a6d0cfdabc85e655330c11bb1aba6ad1c79ae798ede2e81cc4348f838d33af2fe5a9d194432dfde8f15728553fc846d47bb888eb099a1719f4998fedc2c05
 2b4fb2285e1fdf6807dc2d5ed8dcdc366216cbdfda21b3465b01f99cd563114ff7e6fedc38de0e3fe7138b93ee79f1915c3303296c3123633a92f2bb8a69a928815ae6f06b6d4b5b7e427836140d866059dcd5bb63a7b6de22b065c752a2986a6dd159007f9ff494d533b634b114b81346615145b55e83cd3be8e3fc8d9f7abfc35e629d7222bb2e35892def33d3c94b0b21e11b5ecc33700b9c35ec6bf7136817d2d6c29aa1af27e29913c9353832414e4b49ff58b33af2d9b0d683aaa225d9333ff210aefde0ac0946db084c15761cadf35a3f19e3bce58a7351c4e3afa71ceeaae550343e8cf04593add620ff9ca802ed138445ccb3468de5f9fef1deade1717bb256f4012f25b350a0c2f7d695c178a8fd361dcaad8db8be6fecdc2ae02e5e6b6e518766a962f80b589464fcc03758acfaa5681f4f9615185453e1bd7379b5545f23cb43bca6d4078706000c743d555887959e57f42c69d01289ec472e6db9ba1c850caf23e470878b1bf189b5faa7c96f5378559354a6deace748db642f444467b0c8a4212d84e12378f62fa86a4bdf1b2539ab6c1bb1ab603a360775f21d7b2b3d3fc1f7c85b1fe9f8c719cce332e819f07524794e62c6d91a09b09cd64db1005303f232138700eab21db64f8a336a8ccc891749299102b572cb1b5a6959fed8bd7e78963b2ac3a4753c603a3088f9d
 9ac6f26896d9f16ff762e49600db35263a4fa99e862b533b18bf64143c093c1ab99b5ff8964926107dffad51f2e8ff0b75eea087ac2abaeae5eea889d1a5f87781a1f8935587dbb74c07801cdb26eb71d6f29653063c3c19a66356e904105d1f813f26065a0dde034ba78903f8db8a9059ae3927dfa995ff6eb07a0f6a92c65a2c846a450c6ac0f031a203e0f44328d11eaa3f126726a13c927467533c37e1f432192de64d65f9a2f2f31b82ca6fc676c20b0fcf3c6f1bc10524c0dd2d827fab9c8a2b586bd01a79ad7c2269b4d45a37b889118424859d60de216efc8aadb7d582cc37bd210b88149103440773f0324a59b2dd7aea676b04d2420f8b3f63b5355aca142365ca6d697d3dd28ec68739b99489db1f5119c7ae1b4de6b2c26d1520b9bc23e2ae3aeadb7b8af3aa05cce2a9f907c75d47041479663d83964c7e5a47d928b1352ace53dd88156eca7ba36de4505bf67c7fb2fb85228fb0d1d4e34f9d292eeeee16b77e14f59098e0e83b7befe204a9c9ac98b621e02397af1c4fe120b324481a4933461154d20c0a9c7c6f236d2b6f9fa59cac48348322dc3cd49e096ab0bef08d7f47db6ce7aed07e7f9e929d1eed9905ce418ab4a0199a31e442788375cb9424ea82913f61831d363f057fb4701b2e34d605a193d6e3d0c732e377dc37ba6f609e8e9be3a50a6e4c7f23bbae6b2
 9e41f37bb95ce9edea3ad9a49ab91a78ebe797cfd5433ea1e7de1e5fda0f7e0da51a511234bced38f01261e3865809c3b15d75e423059bafe68b6b1319861e45119fde6abc3379ec31bbc2eadfb4925207e12636423d082b0f4cecf4211a727aedc4095817fb294e36191ed22477f02d6273ab87f197c9a4c4da044f6c8e29a4928dc3afa58834af3ff9888a664c995e29376ef7762ba4088bd6c4e4159d6810883f200624e9d9fe030fbd9a46382619be708922a08eff7750c590fe7c8d25ab01f119bb1372a07dc30fa5b887ba94fa6ee6c62323139e3cb854c63e6a97cb71c832176392d355880c19d81ad7095f48a8389a51ba6ce1ac94080dbadde171451ddf68e4aec7ca900ed27b843e1e8362e029d38b883e872bc7c974c8291ac1b319a687771adca5897a9a07581219632dda5e609a5fc19cd9a5357259ac416beec64892ec6ad3afbaaaf2f0955b968c63e31b1d649e6305654cfb7b21877e407d0e91190ff8a3d373954f5be6d8656c4fce45a63e20f10e55a080bea06a7cf402e93d09eeb5e2085222939b4a77227b770d350bd8465d9995b632ddb773c9278927a5893ca457134e259e43f93e8c85cf2c285ebea9c105d6a093ebb56512d62cdd3fff675d5f7d724ef2b690497275c033a8d5ece43f45a58c424111681b0e6affab06332f663026faf22a412182f587f9a03
 dddf5d4d7793f4aae3b2f8a03e04cd9b791d6e4ca99b471cd6468f450e8628c3858ec5baf662a8e66d460aac4f8def76b186010aecb84b35c3fb1fdf43202ab6a60a7dc3ddd8eefdfaf4084657933b83705758933b1b02c89da99b4752c2be9949efb40b22455e14a5006fc09de39b2b218519ccd50fd2ce8022601e2d4dbdc733b610aa5bba003786f80facb55bb170e100278b50de8aa5f6aae2f8504db457527dccc4bbb848b22ca1a564b1fd8da22eab6d281d6bfcfdfc5a23de1d8c671fe9424a43c598cf5eb3a8f71022a9ed37174ed8af9c9af8f7e6961e3015f55f77cfb2bfc766570d6b7ef03df82628e719bbb68fe267d464776c94a384df20e76c1d57517da6fd82a013e8d8b62b10a19d9b409ce061dfd3f45dba4346fb0e7ead7915919bb967080ec94ef2256ae958c067d4bd9aff8e6d69e50948a4e31bf519887c47d5231fdc075ed33fae6f6633ee6fd5983bd738154c63e6a97cb71c832176392d355880c19d81ad7095f48a8389a51ba6ce1ac944b34bb0d061d9362468927dfc096cf07ae336e1ad1e1f6c92013288769ee1dfd1805dd1015ad7eea4e5e455eb6be1941c33dacc8d6dc4a0b9ea49495f7a96dba69a3e0fc5bbb963420266c0231d73492a7fbcd1743dd5d291c6987a5cffa8c2e7146829f314a8bb136530d3474a6b49d3f193de50c264bacd7663e83
 12c2ba9c5fa64944c5dcd2c6b6963c188ac9c4ea531cffe41db377f690b2a45aa05ffeacf9888a664c995e29376ef7762ba4088b346047875c6615b5de3a2d190398163ef13dca35e0389a2918c9056dfb3e6a41665f3eded659b591f53828d3430e7d02780bf4268a130cddea24c80814a16abb1436f8babfdf270cd129ea08b0f6466083f925198b26a52e2a8d20a2e078ae199a0f502fcdb274071328cf56519ad81d1dd0121c07cc72d4dad197fa0720ffec8a806b6a9efb7f2b25add45b31ed56047d7950c34c21ab146f14c9bab9e0ab95e26e82ac3ee7f6a6a0d761770e3dd7de8d6fde9bc577f4f0b1e67a9e1678ccfeab5f1f15f652c9b44fd63a461ba59d8a763929df8ca97c63eb8bcc99becdcb5131c7910e94f2ad8a70fe41e736926b1c9b131499cfc657827132c8d4a50711197de1943388199a6e3818ba14ed4bab7c89a1c8b1e98f9a1323903df9d9b26e2ec85f740caa9ed506ceb6df149ce6a9373a282273a83e103a50470b4cc90c97600a2b5c55f6e4f62471c00672b0e50020a1718efc07affe938bd64a3918b3d2dcb4d2319a336533dca90d809e04c3155c51f247196842dac05c5364f78bf72424df333fb5a969a2619c5fd8d1a2d76e30a0123149fd286fc9595393eda1790cc046d00d318f9738546b064f4e653ce2c6238d6d5badc5e9eb008cade87602e
 a997cee844e44424586542216852e27a03e655a231d55811f5ad00e5f0b51ef173baa140f9afb2cde8cc4c60a4a76ba000c3634e24df5ae267c62682171b8c1ac8c11399b04ecdcb667ba986a14579578cb975e51873b13e3c81ed723cc79c9f74d8442bae24f6c87bba71da93dd4924d1c17e074e4ba576a0c8438c068b2427b0135439fd7734a5e4ee2202cd226cbf73442ab477e6b8fdc580888ed52bb37e1203a992f9cf885e387c08e32f92bbf8927b587f6a00f51efa4958481cebc4c036567ea7a21d22001a3f47ec10176dbb419c4d943907851d228c5c10e4ef64987b87fdf295f1ed099af88dad2f39a7e1d249ffc848022447df397ddc6a07278ccdc344b8509d49fd173588d01a74bcec7511658072b599b24e724b93854356e5f2f6ea7546e3667dcfbe162c74fb02cb84ac23902edf1005c6bacde8efa82e7a262941acf55b356df8b5f90fe5445b069ba1de6b433e9eefa2d2503a6abcd261f11cdd3211c1649c2332aea1704d5f453b55b7a3b24e1f29ab0537fdf3cc0efb4f098eba9b945587ced75482921e1b1cdfca564f3d5843164859abb8541e2e217744c80f3f3ad56b2eef637a467bca50441ecb99e17d42cb0da5910422c0d15f12d4a28bd2fe721594864c339724783d65cd9adfb569f5084198de5641d416b1b1a72e46e7e0892a61f48ba4bffb2d630cddd
 70194305bff42b30d4a49df0653f8f781e0cffc8bf1cc69be2d4e0401e9c264543766873b5367d3c05332ef48cefcbb5faa7c96f5378559354a6deace748dbeda70669d2b291747ea2cd6f585e68d8581f64fe8f67af7eb05b528fedd335b1d7758e93d1b1ba3ebc48fcaddd0cb07ef16cebb6f2efe8ab7b31e29ccf9be7e93bfe9aa11bc57bb0654f28fb03bc8dfc9293bcba2f323c6c85ccebbfbc6a44548bddd8a66e2874dd0e33eeef9087507eefda587edbf75ba91dca72d0f765feb6a70784df049ab6818fb3127314ac5a8655ae034bad2f7eed5bc93463411b38b3c64e2ad7aec1087a12d8b694e5276c552ea6479aa7575192a461c64c4ccf911d963b2d7be6fe38115817e0b151d1d786e61b22cc02de6feb1a19c49c0951ed55507c38ceafe830f81b112a3a5c4ec222f49073d73ee4b3e9696edb077d592317c2a092d27b66ab980800515ad6bf6f451c572b65bb0c447ba857496824922a96199fcbdbc741f8f0ac8dcaa53862a9616a8099dd1d04f05da6fd670bf8a710fbb9a6ef4b9c4c345482a469b794f7d05898516e6cb8e56aaf4c4376a7a3fdff332c235c855bc5bbd009d5c944d569d0a808328123d965330bb5810aeee5c52d3d5e71b0b8e4ba8b74f18de1b90d025d447b06edcc908f85a64068db27bea12155f8201cfc046f3d029a6e6799e9fa0b55a73a099
 f782273a9fd227cb8bdd557d3c88763acaddf2620b0a4b873a1657312a768a7ee76e9137d2b2f92ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bda2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d99f66a35fdd1ea25ed95aa3d7eb81c7f2c0057715361f10942eded663fc7e04148dd432fa22e90d343132edff904f47530718d24cb16366fbb3ed1695e78ffd72514a99fd6c52538df9a90b75971dc0f7fe73c78c9934ac7431371e38eb6f3f6d1a7f7925469292380b3412df053c2c33057b481054cc8add672e34d6f6d1f6b8c7b896dcc4380e4181b06b842c221da60518d380920972c3a786eace06163ea4987567a36c1ff78fca394ddea0508a10eae1af9d3f25009c5947ed166e01be28324e20492f4e355e7eed1726504ed81eafc29ac3ac841
 8f793866a9afa94e1024a71b529b738953542b044ef268b61ce6ef7592b4a4adc804eb8aab2610cc9708708f4c851cd53e2249dd06caff64f8fc69842e738eb0b523607a394c8c8ce1f530b8f97a427e27d8f99815db7490f71dc8a9ecac0bd5915b0925b5493dc58b3d084cc20a41cccdcb5342ca85082b89e720e94f93c186ab57e6c642547b49fa867be482f0ca93977263a76a5b91108ed8cd443f94a9371f7c971c4d12949a559e9b62b1f21a429c5cfa5bb8198dad477144515a26e54c11ea3322a0d929fcb831675dae5b87cee3d0e5b776574120db83125a07674a34a4de2ed2b90a8f0ad4b418da951bd8e73a3b5b916bbf0a9b59603016a01b12a0b0e9bcbaedf8bc6d847f274aa649bf207bdfa3dbe2ab912675f80080e271f332b4acbb3bd86bf03c3a3a8c46b06973e4b48dc3e069111c466509fa6e7b6681d7dc8a8250f70ee1243da119e322d23d72b49c5f0c0f309e72e7c3bf236aec2fba64c01e895cc5dcbfa568ffe793b21566314a2fe92d6738f8b97d74fb899f4f943f079ead4f7fcb5e45770a627c0306a70834041b4e772d72409676f7a25e6af0e8d3f7ff266d72d402c9cabf4b87e57137708c0628e229761bf5bd156a0fc360305708d27b7abe4803ba78b73dd34358c4e25e2c97ce367f892339b9a2a8c574dd0748c2cedea6b55c47160ffb6c307ddea23
 88965f810077fa091a00bacb049382720bfb7aa60942eb401d30619f87ded3aef34b385ea9f1176fcaddac6af218350f8407544177de275078e9b93e7ae1f42cc731372773f69b41c35c8926afaccbc20703eb2a8ba1e18118c17951700615f2e8121cdfa2acf959d654c84ed5bd9c408798f54c554d8aecf184e1ebd5de80154a0d2db27e810817a6a168e8aaa7253f666d44ff4c04fe2944f392e7a6b0c767e8cb5ce3522a145e4a2ea3590fdcd8e9263dcc2a6094058e7dc199cca5e076ab7a1af13e9297dd535cb552a52d47708da9387c7df38982f65587676b24bf0b9058c4f9931dd0491e9b3d9800910e781ec2d7c5d46d6301dbd375ddf2706a7b982268c9746f4ebe439cb8b408792d0f1fb3f20a560b721085287eea89495b5a33e89a9f83d09287de57e86e7fe2e24c5e14493db92e5ac8f2c8cb174643aa0e69d5eb55d559ebf32aaec2307906847830144112853a7d05ce77ca99d93def04c2e82a1b53d580d438b5434d9c3b10883bef6ab01b676e3a9f51c8a8633e0a7038abbfb2e999ba12bba08023d9f61bcedc3649783f1966db07fb8b2742ab24caa0fe0951c657e42757faf6c5309cab2639538ee4fe8ec16583e7efaf914e651d8956486d44498ec5cf3a4005b201106a3a9a9f40cf7a799a01b08bcbd7b315b5f37051b82a11488f48bc15659c71d298acaec67
 ed9cb5146e2e1d92fd8a7051762772dd47ffd5573abab4aa0eb3106becd0127dccc265bb041a15721a20f7a49456f8dd7aef652c30f41726ab7eb1453a1564d6f2bcb7e468ff70aa3d5e899dcd3c7904857263b0fe0f517bd6d851da400ba456f71690b073e156b7a26b9a34fc6d71d21fffdf160855464879f2ca73a863c0ff812c60657f4571e36ca26091681f524d94cfdb5038515699de581f9f8e2f184d30abafd6e0a56030a3c421444c90c0fab880bf982d27a500b327aadaedf52a562b0d531b554b950bcaa0e11ff06faa8423204b46b816014d374e738615fb1969982e5da43ffa058c1945f4b21e28aaa8a7465b6e0f57529604ddffe4389ca34119e26bc6ec90d3ce490c8407bcc468fbd34a51fbedc5e17d55aae6780b429f196f77675ec9146cb8cb76abf15bf2f569ad7ed2a5ea1533bae64ce73b245e2e3a9d701618f2975f9a1d8ecea32710f10bbaa5689164d9f18328193a28ffb815b92390be48b0e6b2db8a44cc160e8c2a6d270069d57aa7c1ebba4303c476e608c0e5ff1a13c61ec8003e797d1968dee73743b80fb307141105ab90597d8601cacac73b070dfe9935f8b060626a8cde98a9da13543605ba0fb73694fb559da4e6abf9b416da156bf72462a742592d21f4644941f0d4f610f2f00a00c17cb1efba8c9b9f0dffe2607bd90b17106ee6aa4e8cfebbf
 d00087959f2f138dff839ffd98da76449faafb39fc99305fa44baf15cd6eaefb21480fca3d5d6b3a5bf4138b94bcdc37a78193bbce54bb4b62cefd1a491a5d11a4d5aa8f0d714ab337742b6f6fc534c9c924d208562c8ff37ea60cb294c0aa02227c8e2951a70cca9834bcdb9993f39c4f4d2b3ddbcd221900605199cdc831953cfc9d028134e2bd875805c70f14d0a6bc1a7d4b54fa394f0abb4532b2306dc0562400b5caf1859e5fb2e9d48cad757692a77b2bf5e00e534d25e606f88f81874521069842e738eb0b523607a394c8c8ce1f5517c18729ab39a3c8bd5aeedec75c847c8a9ecac0bd5915b0925b5493dc58b3d39b0b85bc0fdd14e31ccad8349ddaaac63f69c98e2c9f1ae770e6c56105385db5d3486b5daabd444b15a3acf79f0ca27731e6108d93a8d6c0f6c9e90caff8215d9b015f3423c70ecdc52c1858cdc4c6523d0af57dfeb302450ed03cbb0e90d84ad44f19c261d1817ea9b2f2c1e08892b1a0143be1855df613026e7e28e173f2c1f7277616ccdc78e83d2a75c8223036ebb0947353172155de3f801cc5fb14bfd6a1a3bf12481b0dcbe2908a1354d5c98e3b01f87c358a9bcfc8cec23ff73a4c9b96499346bcd7e92551eda7f0d3af75e896618d55bf9222e7b9c7ba45e027c70197eb5086776543a05884fd93b01fcc21ad17cbe9d832d5364ee8d9b26f679fa
 72e31ae8f647e83533babf06c27ace65cda6438fdc8042b947ec977f3b71ce57e9a8a6131e87b3b5d71d628000d2151edc0b859eb73e8c5f3b3b67893b475f6cd74a7f2f60337a4fe08f1ddf63ffffed2cb24ad680f26a22e22248ac4b6def42f96b1cd8708df39942d18bce6628e96d6c163be1b3bc4236fd60a7633a45b868160ffb6c307ddea2388965f810077fa0a776515bd8d63c8ebaa6cc18956c557db03d054dbf756afa68810c004672dee5efe71ce236f2babddfabea4bf6778f6aef671c5863e8f6848a061e242c7df09c7305ffda35124b7a2a1d985ac0805f1f045190d61de6c32e40e3ec06141fd8ad572f62681d7bd20cb6d1629d402fa2e9bec0aa5d607edd54265ce16faa504c5a0b2e3ce0860fb9d48ca895abb386db4f29606eabc69feb2e348da8ccee4c99356732e073aabe62974d07860a72c590b6cb7892057d1d93bc8988f850a0aca4c81254b1e8f4a0f8ef9ef9d8d60f91ddd15db9ebf84dc821f4714332f8c41fe1f7e0e925fc7e58ced6f5b16f4121013c791f15de0a2c4fd8b7d235982f3adf5497435077219eb2759bf81580d9acf898b48df62b12a7641bc4da19476c91fce5cc902669f2affae946af73f897d430ef28e8e262144fcabdc49f90d8c094e0dc67879ead53aa40741df25daacf707603bfc6eb4f426daf6723c814fc94f09bf4fef4dab
 d7e1f84044b82bd63c832be36f8c7d4d5de03d5eb874c2b62099997828fba08023d9f61bcedc3649783f1966db00e8ad1fecee93d431d0a1206a5f2fec573d08c67cca2669a7031a50cf00df2f4df1a6d535e6a66d21a5f2b7550c10f52f2cf4f0dac2d1c07ff58574296b7eaa9e356c5c47b05e05ec17f9deac7c84df820739f01e83914000fa8f681108cf6878f6e8b227bab698d6d209ede5f8dab6499d96dabcd5475bd74aa3d21719ec2ec8f627fcde23a23f1df2b6b85e74c0cd5ddff4f740c9c34cfc88d3accd9f6e349c7be9cb7688d0b0af411ea92305a69f33b031a85868dc24b0f45304fb26511f1b79c486bf93d68e909b4126a66bae425913ad53feae35a988c226fe3cd1d6c9561ae62ad25959cb1d8deb386442c26d6a2832885438c0d381d520983d65e2242fe7319a02431a9329b506cfeb007bca85287eea89495b5a33e89a9f83d09287d6570952e253e4e14aade8d23525ec321f59f8e8fb3ee5ceb879aa91e16f0b39969f1eee4a47d870a3fdc3f8d3809ab3effab1683c4a980b955dd2e5c8406c2ff9273349de888a8eba3c1a986960f665401a0f220620f7f4f89ef1195f486b123146cb8cb76abf15bf2f569ad7ed2a5eac9bf0bd699e29fa7d886a6c27b063e684bc986d9757a8144b1b22af057fa3d07a73fffc5ee99247183c06397a08705a0623a113472
 bcb4fe5b16a1b51444a0f53a73a47ca3a65610366d3aa844283afd696310e6a25432abd1ae62ca78d0db0df13749b930a4984fd8635256614a72975cf269d99f14af0c804334625c69845679024a1f9e69b77ff5883c518727e0327cd560f27b812039925aefb50ad4ddf2492cb0f3a7c83313511f54456af734188b8eac0495cc0a9c4d5208ac54375735c42e3bc0a8ea96a87f15c7f07b2f92a87d68489fc1906ad1a1d752d6fe8c631f96077317111ba286e4e8ada999564d3f20c194dc77a5087f8d9a14b0b571f073ce4af58fb2e551565b02146dc7e840d1208562c8ff37ea60cb294c0aa02227c848aa6accb69df32aae3a684c19e77cd544a79d9f25e4171ced88d41e866d13043885f1d1729d5cf39c5c3b4914c60631786561d3915f1e4e44e29a3808f5ea769cd3f67200b48413fcd13aee3545d56ee0abf9b92c0e55836a598bfcf288766b4e6818b275703c839d898e47a33a1f7ac32fe6f821dac38f237b59cec131a3488399bd2d2106bb96605e361f304655045d8cc0d7ada8e210fe39b470007e9d521c168fdecf68f48bc794303d3e944c34e2674fbef70e2d1aba475497a14103559ffc848022447df397ddc6a07278ccdc344b8509d49fd173588d01a74bcec7511658072b599b24e724b93854356e5f2f6ea7546e3667dcfbe162c74fb02cb84ac23902edf1005c6
 bacde8efa82e7a262941acf55b356df8b5f90fe5445b069ba2560fcff4b219bd363f69a711b4c0608cdd3211c1649c2332aea1704d5f453b55b7a3b24e1f29ab0537fdf3cc0efb4f098eba9b945587ced75482921e1b1cdfca564f3d5843164859abb8541e2e217744c80f3f3ad56b2eef637a467bca50441ecb99e17d42cb0da5910422c0d15f12de1f40f11690d6f0c10d67c931c9d7065ae3a4849aaeb02404f205159dfa8cc2fc26f1d6ecaef40f3f0e4e0db86d2f2817a955e65e045f9056d52fad5843389f58a5e627d651da5062103f8e5aa83617a2d903e6b75bd35392d1755dda0cbca4b75f21d7b2b3d3fc1f7c85b1fe9f8c719b8b4a21f124c946236bc922a82012382374a38c41f2a309f1fd53f83842f834b9293bcba2f323c6c85ccebbfbc6a44548bddd8a66e2874dd0e33eeef9087507eefda587edbf75ba91dca72d0f765feb6a70784df049ab6818fb3127314ac5a8655ae034bad2f7eed5bc93463411b38b3c64e2ad7aec1087a12d8b694e5276c552ea6479aa7575192a461c64c4ccf911d963b2d7be6fe38115817e0b151d1d786e61b22cc02de6feb1a19c49c0951ed55507c38ceafe830f81b112a3a5c4ec222f49073d73ee4b3e9696edb077d59231734cc6a0dd547e08aea418050599a2fddc6c3751e7663a76dd85d650e88f6e432af59bfa50361c0969465
 857cd99a76ed64916dd722ca51ebfde8b232e4bca39cd91cbced1bd7df3e3f6532d092c5d0ac39993ac4fa3b2c0c2e338fc8ed2b7419383f4da79967aa23d81207496c9b8f0edffafa679b60680ed65b3d6bcadf4a80600ca4078b64ae9936cba84b1c1468c1f115c629c0e84ace107f72912722980eca66f25e7bf9f8006d804868a08af8aaeb5a372dabc0b9cb03237e7a8b042d466d0c45dc3a43c24f9706ddde54cfe9e6a38f079c6f3b31c0699944327dda9ba34047ee6417641feadb15aa64de342434f74fc16dfafba5e43c39d021881e2087366061e2aa027247ddb2809d68aa23cc972bb28c478829ca843e6cbcf3daab1bda383d4f449a13bf52b019fdd03e6af926679627f823b069f4ffd9faaf762ef34be664c8028a651c798af128b682f9eb6265697630d2e5347ee25f71e01e8ad5c7e8e403f509207399334adf86087d4f58832dcee178616257bab6efe605d7046ca81c051bdb4958a49a127c600d54f6351d45d230786b28197f6033325d4bd55ed5fd1c68cc0eb9a96ec67a297efb8d5b8f4f1f9a052b78ab541d3a7bfb4dbd26a193cbd5be9807fee5484a456c4c871c4f7b8a883cc9a01613b6e71850030d24ef8771a4ae094ccf13b9922f66e5a76d7e81a1725a514a9e81c72b9c38bdca84af8e22ed481bcb08300b8f2ad9bef85e6039cdc4fd1fd592f22ebf8
 568d684da2beaeda95ffb1a2c950e093d5694711d006cadc92adb5318c657d7b866d1e35d4af45a137fe4371e816c856313e02c02a9c4812eef4354bbb4d8336c2fa0cb511c03a044253aee148de6db028bff58331cc9fc156326ddba1f670fffb5c9e67524b0562359e021691920339a7499cb7d2757aa9991d15ec679002307344dcd5ec97738a58b2d2926edce63c021fe2e82362736e7cf8ef5dd5bdad9232e5eb0e01f5b60c9818cf9bae1c84835e561a932db58be4f3f0c976b15557b30befc4d71653fac7235ce977020d74d6e949159d5b4fd6d0a1950a130adcd27f440d82eb52acf0b0a2e4c4833ad5215e81263e8a8ba222ae9bb90a584d75a8f98cb5a3e2c6a1ebc458bfb0cd2bc103d01a9611bf15db4803d7190b6b4ae4dbbedd2f697f49e2c48cb5a860d36c019393a2e13d1ce25ae5a60516906b311170e9008334185830e010eb382aa1ce4f31a653c61ba8196e5b13caad27af836ff562313a42ac8e140cbc909e49a18a1a17c45714a36844a622a42ac36d116d92c8eff10dc641f2e8ff0b75eea087ac2abaeae5eea88d7f7c2b2c3378a688b6aa4979cbafeca1605691dfbac2220cbc628b2282ca0b0f1c610b696c443ec517c345a3de7bb914864892521f9f87a99c189e570f14b64733dda32754dad401e41f6cd7bd68a382f36985bf39c4760aaba2067aadcba
 f52dcdad2ab9900c9fefbcbc5eacab04b47a649a26848e8f8efcb45935bd7fb7c631c4578a4b085ddadad556c9ab25eb774d2a5413c28616a11f47c2772ab702ef1bd18f7b3c92470e663a054ba97bd2a069c3fb0a8ffa01f26be3bfcf1c6eed8dd3d3446010eebed32c4bf6fb977402505eab036f31a6184775c4f4e81ed3bda1e0137c544553a42a864eaea05f976cb1836d71c5b3468df04f9cfc260e516c3dd980588242f7db1e124095f1a71cfac115ac7efea1e2acc50a87068e21bde7b3fcf9fcceabb05c152bd6251ac014318aa757bd1e3fac30a050c7b72db2babbee157a6a7e05e4ab64b9dedf3c4cf2783e084e395d36d4dfae9111daa1e3c99082f835a62c25d5b0cab16afb426a1fbede457d531504359d5a79ee8b287347d9da9497bb64c14737b96340fe7ab20c070c72543483958742f13a34ff3c7b1814bdb58f9d93898895bf13a99e527fd16bb471208d22e8b991b4bc7ecb9e22bef1fd566ab86098ff014d272d00b764e8dd9d5b69629547f636330b07e830b66967d3ceceb9363be0ccea0223b1366d6ddfe9d9ae7b617f529a7e31dc797742c52a324435f8eafd1e5e71b0a66042098d3fc8efa54993cad84f14676c3c2ba671eda6df461573274ab2c5ac1b19b12a9679f295cac9efb99db050b86d2cd52af7d946522799c4598e763692c2ac3da6e0c981828
 d2b91f2bd6674e977eeabee423f7384f3bb484397be71053ede23098eb23839bcffb18535da384a65264fd5057bc3f0d4e487e88a3e357c11a2638aa716b3ddc39bd5db5be31940b1bf1a53d18af3c168af7f54b17ecd906915834f9cbb318cd20556319555bc1551892fad689edfceec10d815944045e853f99384d9e9701f028d446ff60837ae47edb1cdb2d3e13eb9689cf6a7ae099a2902548cd2be8b07dc4474f0fefa896395c1481942d4cc04a26b8f4343d140140563542d2e8d2424cbb39b84b1c2eeb1fc3dee77033969852ff58b534cf412f65f13d3dcfdb006bba4ab5861e42425d895860fae400db22eb472c4833012e7de30faee68926bae8d0fc1420f4a4a3214f53eb66f0231bd6f67ad0cda025426a0eeed195417a5dc365bc77c0644cebd52c6c691257257e4d2412896bdb43aa89b79d26818e34757c4003efd7ea26edafddf4fa03a61ae8de6ddbeb4b4f7c57990bfdb74cdb881c746186bef924feecaef8652f5dbba09bbc4c3e23090e4b666249e6f2d491edb7535281e097d0cb44bd0ed1226344fcc769326f59e60d22a5a6095ed84fec1bae31401e827edd2a3f3e0f6e2a5cbbb86e7fb5950888ad9632f7c40c5fad46e57e6e5b3ce57f296316c97c8c8d683c8afffd75b46d1a196ce1a569c292a5db0f2b5696b9416c8c297e62149170078dd939ed6312aac
 1f6e794c0accf0d33891ba4cd26747ea32d839d3e72a1f044297b16ef1ce65c586eba73841c1d1140a120e90fe400f676636457dc755842b490bba8a80bd2e7a2574f228ad9dd51d3894251bff551da7279953799a8ac9fa769ea28d6580e3a4531d3995fcca194fca530546881954b62c35faf8bcaca1499d1fa3d7691523d0eb6e9201b02735c3dd94e2ae2c404ca8a8613621c2c5ba358a7b2ec5fd89f5a8dd58b139e528ca0fb2ae9df685a7e00f83a413e7cca6bce45076317f084e395d36d4dfae9111daa1e3c9908277be3f2e604a9b8159f8bd90bf0d283eaeec7944f34d4909b02e563b9b696142464fcb229b6f26de4fdc832d3081e284b96d053b6fb58ea569db159ca71f1cc1eb019daff91211e7e580c58e2745cd0c1a5b1a1a64b2e7ff92ff0bbb767a71d963de1cb26f16cfdc45a6ff3d06fc9b05de619285c1c52e99e25943acf9d1a7c6980f580fb9974d5d888108c88f7e18fe0b7bb31402a611665f78ff504b934d9d3440dd45f95d896ace34b166ccb70fb92c9045c3ba2e59e9fbbe950a89c12aee464b44369faa5b0ef1cde0fb6cf46054bd0d67fdb78d180504c5a6132de216ef5a2101d94abf0de3b396e08456c757c336809e3f9bb1844aa1a2e609704f1e451a5b1a1a64b2e7ff92ff0bbb767a71d963de1cb26f16cfdc45a6ff3d06fc9b05e023838b26edc
 2997d974e12e355db1c980f580fb9974d5d888108c88f7e18fe4d720c95f7fe38e8feea6d36d7c1ecf03440dd45f95d896ace34b166ccb70fb9359590baea42c4c8cb60b004bc572fea35822d66a9195d2cda38980af30991076a59fd637e386eae91adbeff3aa25e98566ab86098ff014d272d00b764e8dd9dc0e5bc4ebd836bdff265536f3983a01209307c9726e87841ae4b64dd781edf807358f6b6f5da52e6c3e618071bba038b1495b44d17550424cbf1e5a08b2e1d3ef51cf2aae92f283d7611d378c882ae75744b3cd50ce2567741a03f3ccb0982c2c7c67c2a03ab11ec4d792bcdd078363c4b3b2bf2161a4e929ad9beabdeb609c9e28379f2293b938e519ef9c21360d668945d202175ff5886cf024c6c016f9ba12a858383cb8ac645fd95dcacf32e0be229e64e794354b24036a8bc586d1fb01c1ef279ec99d942843fdbc080ed6bc798f03c68d3fc2c91ee1acdbf17903e16699cb8b768c40fbd420e8e2d44aae014651f48eee14a4cb896ff57457c137d72121fc3c8370e7882d84d964b03c36fbe25a4094f0c3db06c15ac947913850f6689e4a2ea3590fdcd8e9263dcc2a6094058ee0408c9ff8e194ec031c99931f4e8a47a4d85f027988dacb416342fd72917b24864d20162c7e82c331ab1d82c0c99aaa859758168b51a7126b2e4c99233806eb1f88041b84032f9c6
 e1e2a31e91913e9dd872c6303ed5a4e701a43888131de41f7de9f211777379db54b3701ea247372d3b1dbd744309200554ec5e0bda30816cad85a52535600ff9b69593544b90a91042317d1693218a0e79f9bee3d272cce4a2ea3590fdcd8e9263dcc2a6094058ee0408c9ff8e194ec031c99931f4e8a47a4d85f027988dacb416342fd72917b24864d20162c7e82c331ab1d82c0c99aaa859758168b51a7126b2e4c99233806eb1f88041b84032f9c6e1e2a31e91913e1eef8fea60a0609a9fd0f591673792351f7de9f211777379db54b3701ea24737268a2b9c4aa4d5490a1f334dc469016a6cad85a52535600ff9b69593544b90a9b5386315c36ced5a47722c63cbb7221e6e2e50502be8febedd301896d09694be909bb31609ed05cada081f06bbe8bbb9102ae61ed8e09c4f383dc162d8b1bbc3c9a343ed5c771eee627f7cd63a508e32b0208a983fec87658e6323b99d50dceb5f23af51e53706ba870c289a9c9b59fca300295931a7dfd1387a252659a9caa1e2bbc0fc4db0e82a95caaaf1389859e69768022ae56c316bbd061b047d3b4d50f82f45e9ea4483c83adad940f177f5c24be0f193de791826de06c5442bc2da1a6e2e50502be8febedd301896d09694be909bb31609ed05cada081f06bbe8bbb9102ae61ed8e09c4f383dc162d8b1bbc3c9a343ed5c771eee627f7cd
 63a508e32b0208a983fec87658e6323b99d50dceb04401cfe6ed570902c25ac8fbc60d1e7a300295931a7dfd1387a252659a9caa1e2bbc0fc4db0e82a95caaaf1389859e67d55adf67fe252602c826d6e906c32aaf82f45e9ea4483c83adad940f177f5c243d32cc72835efb63d9f03c048fe892e647930d636e183c0fe2df4364e851d69292e3f42199c778766faf0cec4f072cb6c9a27473e010abe20071463bdd3aa70084e395d36d4dfae9111daa1e3c9908257baa91dc925881fc2478eb343faf7bed34370d0f4ed7986ba9047794de447730243c74b3eec3424a4705f33beb3c62aa010306792ba20dfdc69265f5c1f31f1da4d6eecd915617edc0af7d58e75bc78a985fed7a8f31b3e36377d8f698951c35810bb7207acbc58f8dcc92e85ca822b814c85f81628932b65a6eedd887707612735450fece45af3984d2166c9d6d50becc1bd0b8a9b49f5fddbcfdba8ca8e834c54a4d9150709c604a4fa16e110667ad3f344e39d0b82163593b56b814378bb68d952d31c82910f107fa0ec3720b120cbdc4c1dd9394941bcd932ff5629a1a0f3c9f79b4d832309df3400a7cdc7422e6cad85a52535600ff9b69593544b90a9b5386315c36ced5a47722c63cbb7221e6e2e50502be8febedd301896d09694be909bb31609ed05cada081f06bbe8bbb9102ae61ed8e09c4f383dc162d8b1
 bbc35b69629547f636330b07e830b66967d3ceceb9363be0ccea0223b1366d6ddfe9d9ae7b617f529a7e31dc797742c52a324435f8eafd1e5e71b0a66042098d3fc8efa54993cad84f14676c3c2ba671eda6df461573274ab2c5ac1b19b12a9679f295cac9efb99db050b86d2cd52af7d946522799c4598e763692c2ac3da6e0c981605c65d5e73d9de5e5b84b9ed049c81384f3bb484397be71053ede23098eb23839bcffb18535da384a65264fd5057bc3f0d4e487e88a3e357c11a2638aa716b3ddc39bd5db5be31940b1bf1a53d18af3c168af7f54b17ecd906915834f9cbb318cd20556319555bc1551892fad689edff1dfca0d8cca2ae744bae4808f6c3af4270fdffe94e6a7dd7dd074878ac5e02f6f65f85a187d8a63c1e01fb5ec602813653f241043452bc314ea21c2e24484e2188829ef62ae2b9e63f57732df87a09403acef52ef1e50eca61d77860e408ed41bb8d0f6b75bba4ddc76d04b1a8cfb1be8254e648493ef641a77bd557a88638663e56e4739f2b08d6f9f18e5007814f5b641d093613cf2c6ca9259e82d85161195f2421adb7d40e8b43442de99c69a5d3c101963e53b53314944e2f8d781c081d8bbbc9ebe29cc78d7ffc329cb3e496349786d6d556486c448e80ceed0f9a0217e0fbeafa94b94b878e0cace34436bb9208726d3be7be3b7b31539804990b3a66
 1f2a75a24151f48e36b2a46d579a92fc627dca980b5c338a52ff61e4a7fbe64cdee8736ff905f098b418ca3916d29aa6b3491ce7a502ba5dad06cf5a8982c2e23a5f75cc13bd9694ed7ed0dad8c9cdaf2168475383504a840dbdf448a2807d481054b969cfaa63019d59d0c92f9c187702d906246370dafb0ecb7b5a2be38ee4776528606949ee1b66c19d7f036944c1446e41eec81c134fe1800ddb086de86d443359d02cf7578984d85e60f5cb59707de0be9b69775bb91ee404ec89c6f290773f23355840d111f5a456803114dfdad44f19c261d1817ea9b2f2c1e08892b667b69e795d19c696af7365934dce4e8e73c78c9934ac7431371e38eb6f3f6d1a7f7925469292380b3412df053c2c33057b481054cc8add672e34d6f6d1f6b8c7b896dcc4380e4181b06b842c221da60518d380920972c3a786eace06163ea4987567a36c1ff78fca394ddea0508a10eae1af9d3f25009c5947ed166e01be28324e20492f4e355e7eed1726504ed81eafc29ac3ac8418f793866a9afa94e1024a71b529b738953542b044ef268b61ce6ef7592b4a4adc804eb8aab2610cc9708708f4c851cd53e2249dd06caff64f8fc69842e738eb0b523607a394c8c8ce1f530b8f97a427e27d8f99815db7490f71dc8a9ecac0bd5915b0925b5493dc58b3d084cc20a41cccdcb5342ca85082b89e720e94f
 93c186ab57e6c642547b49fa8621c28775463bab937e38863ce160adb4f8537d39b893fb1ebb56947c71c857112e222bc27bfefda889221f48354c28ae670182f7d3689761a944ebac6497644250b269ee0ad6a04810a3728034bbc5d56d97306d62a8dff3f0a9afacfb4438ccf23f07da98beeb0a1314db6f87ee3e68efa6994e79bf7a409cd4943163b7f586f894deef41b46cd1de856944525b1e998092b1524dbc41e4bd7560f8b29ff49959c92cc74457cdb99bdcef0f5b513407c1d08e51252b94ec4385974a9d7f5d84dc7376ccdd66e4162ac4e057cac672f1a57bdfee1a457da1f61855097b3898f44fb59aa6927def64a46851528991dc0d5aad9f8ebb56706a1a868f9a526678f3ebfb747d117ca3fc20cf94c84a817a7e6cee460f09aafa63b43e5ae8ecd0ea309661c7c9889535353937a8fb5697e0a3160ffb6c307ddea2388965f810077fa09c48807832c5b0cf985214f341a9166d322c5fb6cf439697d42204c2956db0506ec7c8cccb96665aea13f463929e1526c6669ac1cb89b68b25401518b2f393f7b4e6e3bc4191cb508d3adac1cfa820422cdb3e1d415f58b4b23fe18dba385adedde2cbfbd8313f0962554f6706beff51d0fb7cefb0d62f680d29b413d2d1edc5df1f90e23c505ed084892af7b828b06a1821ef1bae598194ca3b72a20e55daa846186bef924
 feecaef8652f5dbba09bb9c821b437b7355556d4ad2a28df6730d48d0af94311230f298c2965bcd7f06bab53075927b7091398c23fc3ba82d43e1db60ec4181581b903d237459dce308ac0b1471de94068402f8add25c0393f9af6d70d27adddff2e2292ab66359d9e260338f4622b9286357836ee7b79031b29077916e88c40a32856e045194ca65ba827f4c20c8e41a23d3d0ff9b435fb4ee45bbb56f06b436c26a57616f0fa9f71cfd388d059bbdcb28b95711c3cc426aab03e3fa6442f5b59ce80a11b53c11233fbe949ca14d28ae7f601037d929b1e95834ba08023d9f61bcedc3649783f1966db016fa6bdace2e9c76b419ab2da85f59b386da20b27ddd297bf841e7a47454fd30033a87b70d925cb25b5bfe78c01a43e8c1cbc563d741270a384c412c04655cfb0e58facd3fd9ba062b5e28f4b33d5647e81b81274726a71d63db10ab49d989c1205b8cac9e26ce037f110a396e5d1344b9a6ef4b9c4c345482a469b794f7d05854274a12517f94b990ce96eb922b088b2c235c855bc5bbd009d5c944d569d0a808328123d965330bb5810aeee5c52d3d5e71b0b8e4ba8b74f18de1b90d025d447b06edcc908f85a64068db27bea12155f8201cfc046f3d029a6e6799e9fa0b55a73a099f782273a9fd227cb8bdd557d3c88763acaddf2620b0a4b873a1657312a768a7ee76e9137d
 2b2f92ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bda2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d99f66a35fdd1ea25ed95aa3d7eb81c7f2cf976571763a7ff5ebe5f43ff786aa202dd432fa22e90d343132edff904f47530718d24cb16366fbb3ed1695e78ffd72514a99fd6c52538df9a90b75971dc0f7fe73c78c9934ac7431371e38eb6f3f6d1a7f7925469292380b3412df053c2c33057b481054cc8add672e34d6f6d1f6b8c7b896dcc4380e4181b06b842c221da60518d380920972c3a786eace06163ea4987567a36c1ff78fca394ddea0508a10eae1af9d3f25009c5947ed166e01be28324e20492f4e355e7eed1726504ed81eafc29ac3ac8418f793866a9afa94e1024a71b529b738953542b044ef268b61ce6ef7592b4a4adc804eb8aa
 b2610cc9708708f4c851cd53e2249dd06caff64f8fc69842e738eb0b523607a394c8c8ce1f530b8f97a427e27d8f99815db7490f71dc8a9ecac0bd5915b0925b5493dc58b3d084cc20a41cccdcb5342ca85082b89e720e94f93c186ab57e6c642547b49fa867be482f0ca93977263a76a5b91108ed8cd443f94a9371f7c971c4d12949a559e9b62b1f21a429c5cfa5bb8198dad477144515a26e54c11ea3322a0d929fcb8316cc52f6c5dc6683ac114bd93e42c9f7a125a07674a34a4de2ed2b90a8f0ad4b418da951bd8e73a3b5b916bbf0a9b59603016a01b12a0b0e9bcbaedf8bc6d847f274aa649bf207bdfa3dbe2ab912675f80080e271f332b4acbb3bd86bf03c3a3a8c46b06973e4b48dc3e069111c466509fa6e7b6681d7dc8a8250f70ee1243da119e322d23d72b49c5f0c0f309e72e7c3bf236aec2fba64c01e895cc5dcbfa568ffe793b21566314a2fe92d6738f8b97d74fb899f4f943f079ead4f7fcb5e45770a627c0306a70834041b4e772d72409676f7a25e6af0e8d3f7ff266d72d402c9cabf4b87e57137708c0628e229761bf5bd156a0fc360305708d27b7abe4803ba78b73dd34358c4e25e2c97ce367f892339b9a2a8c574dd0748c2cedea6b55c47160ffb6c307ddea2388965f810077fa091a00bacb049382720bfb7aa60942eb401d30619f87ded3aef34b385ea
 9f1176fcaddac6af218350f8407544177de275078e9b93e7ae1f42cc731372773f69b41c35c8926afaccbc20703eb2a8ba1e18118c17951700615f2e8121cdfa2acf95b75fffd2dce4de0809d9ea34dd458da2cf184e1ebd5de80154a0d2db27e810817a6a168e8aaa7253f666d44ff4c04fe2944f392e7a6b0c767e8cb5ce3522a145e4a2ea3590fdcd8e9263dcc2a6094058e7dc199cca5e076ab7a1af13e9297dd535cb552a52d47708da9387c7df38982f65587676b24bf0b9058c4f9931dd0491e9b3d9800910e781ec2d7c5d46d6301dbd375ddf2706a7b982268c9746f4ebe439cb8b408792d0f1fb3f20a560b721085287eea89495b5a33e89a9f83d09287de57e86e7fe2e24c5e14493db92e5ac8f2c8cb174643aa0e69d5eb55d559ebf32aaec2307906847830144112853a7d05ce77ca99d93def04c2e82a1b53d580d438b5434d9c3b10883bef6ab01b676e3a9f51c8a8633e0a7038abbfb2e999ba12bba08023d9f61bcedc3649783f1966db07fb8b2742ab24caa0fe0951c657e42757faf6c5309cab2639538ee4fe8ec16583e7efaf914e651d8956486d44498ec5cf3a4005b201106a3a9a9f40cf7a799a01b08bcbd7b315b5f37051b82a11488f48bc15659c71d298acaec67ed9cb5146e2e1d92fd8a7051762772dd47ffd5573ae5b45252937e448fdba825481e0587a
 f1a15721a20f7a49456f8dd7aef652c30f41726ab7eb1453a1564d6f2bcb7e468ff70aa3d5e899dcd3c7904857263b0fe0f517bd6d851da400ba456f71690b073e156b7a26b9a34fc6d71d21fffdf160855464879f2ca73a863c0ff812c60657f4571e36ca26091681f524d94cfdb5038515699de581f9f8e2f184d30abafd6e0a56030a3c421444c90c0fab880bf982d27a500b327aadaedf52a562b0d531b554b950bcaa0e11ff06faa8423204b46b816014d374e738615fb1969982e5da43ffa058c1945f4b21e28aaa8a7465b6e0f57529604ddffe4389ca34119e26bc6ec90d3ce490c8407bcc468fbd34a51fbedc5e17d55aae6780b429f196f77675ec9146cb8cb76abf15bf2f569ad7ed2a5ea1533bae64ce73b245e2e3a9d701618f2975f9a1d8ecea32710f10bbaa5689164d9f18328193a28ffb815b92390be48b0e6b2db8a44cc160e8c2a6d270069d57aa7c1ebba4303c476e608c0e5ff1a13c61ec8003e797d1968dee73743b80fb307141105ab90597d8601cacac73b070dfe0f975ea04fc386a06eb4ca04cefec206ba0fb73694fb559da4e6abf9b416da156bf72462a742592d21f4644941f0d4f610f2f00a00c17cb1efba8c9b9f0dffe2607bd90b17106ee6aa4e8cfebbfd00087959f2f138dff839ffd98da76449faafb39fc99305fa44baf15cd6eaefb21480fca3
 d5d6b3a5bf4138b94bcdc37a78193bbce54bb4b62cefd1a491a5d11a4d5aa8f0d714ab337742b6f6fc534c9c924d208562c8ff37ea60cb294c0aa02227c8e2951a70cca9834bcdb9993f39c4f4d2b3ddbcd221900605199cdc831953cfc9d028134e2bd875805c70f14d0a6bc1a7d4b54fa394f0abb4532b2306dc0562400b5caf1859e5fb2e9d48cad757692a77b2bf5e00e534d25e606f88f81874521069842e738eb0b523607a394c8c8ce1f5517c18729ab39a3c8bd5aeedec75c847c8a9ecac0bd5915b0925b5493dc58b3d39b0b85bc0fdd14e31ccad8349ddaaac63f69c98e2c9f1ae770e6c56105385db5d3486b5daabd444b15a3acf79f0ca27731e6108d93a8d6c0f6c9e90caff8215d9b015f3423c70ecdc52c1858cdc4c6511f15872ffcd97daa46db6e95c6f38bead44f19c261d1817ea9b2f2c1e08892b1a0143be1855df613026e7e28e173f2c1f7277616ccdc78e83d2a75c8223036ebb0947353172155de3f801cc5fb14bfd6a1a3bf12481b0dcbe2908a1354d5c98e3b01f87c358a9bcfc8cec23ff73a4c9b96499346bcd7e92551eda7f0d3af75e896618d55bf9222e7b9c7ba45e027c70197eb5086776543a05884fd93b01fcc21ad17cbe9d832d5364ee8d9b26f679fa72e31ae8f647e83533babf06c27ace65cda6438fdc8042b947ec977f3b71ce57e9a8a6131
 e87b3b5d71d628000d2151edc0b859eb73e8c5f3b3b67893b475f6cd74a7f2f60337a4fe08f1ddf63ffffed2cb24ad680f26a22e22248ac4b6def42f96b1cd8708df39942d18bce6628e96d6c163be1b3bc4236fd60a7633a45b868160ffb6c307ddea2388965f810077fa0a776515bd8d63c8ebaa6cc18956c557db03d054dbf756afa68810c004672dee5efe71ce236f2babddfabea4bf6778f6aef671c5863e8f6848a061e242c7df09c7305ffda35124b7a2a1d985ac0805f1f28a65bacfa3dc788d09bb8b7b90553978f6e8b227bab698d6d209ede5f8dab6499d96dabcd5475bd74aa3d21719ec2ec8f627fcde23a23f1df2b6b85e74c0cd5ddff4f740c9c34cfc88d3accd9f6e349c7be9cb7688d0b0af411ea92305a69f33b031a85868dc24b0f45304fb26511f1b79c486bf93d68e909b4126a66bae425913ad53feae35a988c226fe3cd1d6c9561ae62ad25959cb1d8deb386442c26d6a2832885438c0d381d520983d65e2242fe7319a02431a9329b506cfeb007bca85287eea89495b5a33e89a9f83d09287d6570952e253e4e14aade8d23525ec321f59f8e8fb3ee5ceb879aa91e16f0b39969f1eee4a47d870a3fdc3f8d3809ab3effab1683c4a980b955dd2e5c8406c2ff9273349de888a8eba3c1a986960f665401a0f220620f7f4f89ef1195f486b123146cb8cb76abf1
 5bf2f569ad7ed2a5eac9bf0bd699e29fa7d886a6c27b063e684bc986d9757a8144b1b22af057fa3d07a73fffc5ee99247183c06397a08705a08a606713f50a91f8177e382e91aa96b8792b7ad5634ab15a3dc4bf73c00872e339c53a3b9a5482131bbfb22e0f112d6609a0495b38f650e0c2f6deb959a0971859090010179077a3953de378c415102a0dd7166025fd6d7d27c9dd957405e20c67fa50953639efe8569d9278a37d8eb3403b983a3575d185d58f5c816f95f56ad468c6910c7993c49aa89932b57258f9b31e35a0cef082d926db8328fd926f36ee7f198084724a893e5f0289e3f3a5cd18e551af6bea91dfd30a3531024628f22b80189c92289936b42f5f77d9e1f5c2249df3a36f61d467713f8967d40e062dc45b4e41d82e627cc6296ced5929e37e5b95474306c4dcffc4b6cfe55ac8cc33d7862f3a80acc7ae814ad03b63d92baee09e124fa0fd2a417222b2df081b1e70333f1ef7000e775d67a0c5707a61ee6005967a21f4a01d4607c438aec1ccca6492418c3419a915dc2d0c60610fa031bd7a59326b206149ad1cc012b4a6dbe45cfb90d799693866126021f4643bd7198349e196e58503fd09a2a4abafc7d5f4871dd2b99394160932b7b3ba196bdbf3daf787f764d8b1dadef5433e5cdc2bc797f06a1d483531c00e417dd13f635bf969c6f5862e21a8870cb0d
 87349af3d2b129e46b65d44c2726340b2c42edb0592f5016e2d0f7db67e5cdf86e026cdf5b66b5c98d64ad2dacfd4612d93d499d7b80cc6da06dbd76955a4d0701dac950e8f01999791becd0ffcbd660abc90346da998119dc331172bddf51b289088b30e6772c15efef7d2174ce15fc53708ec498b6fc83771529427066e7283370f1aa283b35c48b0b37345bc048610b95cecfe22a6a2ca9886ca7402b6698219b6dc629388ea2b29dca5c2162fc4cfc958eb033f70be2ee3d86df7d669efb72d6b38bbc41bd0ec9845002b7eb8c20fbe2f084fdc1ef9534c23b7100beef0913adb3a0fb4c6f6a22523f8bbdb06741710a9216399e5b8138f907bf5704c693c516b16af9492e79a331386bb3966138e5e5b1257a7077a7ea9bf2a0374e3cc9eb4cae18710ac20365e27b986ba0d8e38a5a7577e917fe82dada974477f75bab4aeca84993ef3d83085070ce0dcf1ac151d7d4f8be80f2ed68c105d49587b88c6268c0aa1459ea7025a6fa6f3ecf2987178811a771de9f93a8704bbe6af81bd2207dedaba6c331d09a9b97d8f948046e988c4424ed6c98e9e21ead0c85ecd2c76d4c47705981aa66d3bb15c59fde7d73ac61a2f8e914a6908faf1cd25707e64b7b941a400ba61aab3ba2dfa593f553498b6b075526bb1b31e35a0cef082d926db8328fd926f36ee7f198084724a893e5f0289
 e3f3a5cd18e551af6bea91dfd30a3531024628f22b80189c92289936b42f5f77d9e1f5c2249df3a36f61d467713f8967d40e062dc45b4e41d82e627cc6296ced5929e37ebac2a0f1a6e559b275f252e37b5e0d9788b449aec72b5016f2753cb7325e57c33fe0da4f31840f4b58db0895bff2147eb952253a665cd2a40fabe3c02f6da49407dc4474f0fefa896395c1481942d4ccb2086b5d361634461aff52950f45e411c892414596123bba3becf7a1ef97f34b03631a6abdd39b901049eff4562141626b502b4d5ebd53edd078a0a5e3fb253e02b438a16ceb65d1d90b80ebe536081eecf4f050fe6f4f799b28eaa45306ed74e1fab736cb4052ec556b874582f54017ec4fe114f391243a36791e63236c2ebb5d37dbfe134641c529c23dfc4124bfcc1d58131c8de8afac789a188a6cb76911851b12d180187da2dabbd53a52c358d91604e557dab43fa5b4257b95663029d8c7d2b52b796f5b3e7c56b513cac3b17ecf6e2aa4f331fb55f082cb71431b42e3bdf8738beed87c83206676cc2fcd0167a9880709f4792aea94b11aa6a17c3345bf87e778554c0e52edad4cd659d555765e6fc74bc7098dbf48029faf4093fc98e9ec169d3e55aebd728a2fa1e8336286fc853d939cfbeb82715133863c9d5b96abf98df47e40d69fe68cc9d21a748bcbf200e5ff77fa8a5e6a911bf117171
 15946d631714e97a679bdfc41df460fcadcfd73abb21d4ea2a12a48c225d1bb68f1bbba7b383c64788466ca1d7382725041c62b7009a293b223f5de7335d914f8c12e8fc393bf4d4b605b7c26d1bc2e76193f193de50c264bacd7663e8312c2ba9c235b8898068c75fc6988e678e92b0187e8b89679a92cd4584052ecbea645f529a27cdb0478e875045ce876e43a7d99a15cf3344b102d20acadc039b935381aae3ae1770bbdab3b813529bfd342b794ca7a65c09a94299349e8db91a31e5a8af73e150f9ddeb374d5e6e0265097056deb737eea668d0485d2a7b122ed17bdf465ee2bcc177b69fd60c0dc9401100551461cd33847ff70748084a271d3f8f4e05a67fd00285f55b86a0ca38b73cf229ae9f9cdf59a6f7e823734db496ce81882e3f9aa32c43f647905de5ae7bd030de048ec855e830181166eb17a8a4198a9cda97a7dc4f86c7940e1dd5c60d3a12693fa34bd661e6618f3ef62e8083eda815656722b75c692a1fe7c6214e2ccbe5bbd3030e901bb70cd5f91cf21cd7d541bf47deee0b3b01082f193d46d006dcbf27d344d78e58d25896b5ccef920f5dac87cbdee8a1b1dfbd00cc15633426c56398ea30b48754e4d31c1f8ebdcd2af1c3590290bd9bd5acfdffe872f0c77574912a0ac3cfca615b2a477d4f2b67d709d2542e5192b9c81dfd53848b5b9fdc9f822abbe84
 f3bb484397be71053ede23098eb23839bcffb18535da384a65264fd5057bc3f0d4e487e88a3e357c11a2638aa716b3ddc39bd5db5be31940b1bf1a53d18af3c168af7f54b17ecd906915834f9cbb312a8053de769186f2f9fc9251457afd0774fc28958293ea97b317c34ddd0de263b95854517087d14b3d18406861f86578d959f89b3e9160f844a2b814981889db21efd3121434a71efe9d8748a657f15eb40d1084d5cbb13acff8fc346f93de0291bd443379f7066467d8b2959a3f7922f9503dc4b460df746f61a7b83bf683a1db427d81074f5b63cd3e4556ed80a88a5587149899b5cc74a590107e97947b1cef7252ae356dd1dc60a28c89c751b120b2992f1abe6baa14d041f589679cb2f13065b2c9ecfd719505c1d29583481b645646426ee811d918676dd999a0e06cf390d6d11a3c447b5a9c0098f10d1bed01
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/test/resources/Vishal5SecondsTest1.xml
----------------------------------------------------------------------
diff --git a/processing/src/test/resources/Vishal5SecondsTest1.xml b/processing/src/test/resources/Vishal5SecondsTest1.xml
deleted file mode 100644
index aaa7632..0000000
Binary files a/processing/src/test/resources/Vishal5SecondsTest1.xml and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/test/resources/Vishal5SecondsTest1_en_Invalid.xml
----------------------------------------------------------------------
diff --git a/processing/src/test/resources/Vishal5SecondsTest1_en_Invalid.xml b/processing/src/test/resources/Vishal5SecondsTest1_en_Invalid.xml
deleted file mode 100644
index 13d359c..0000000
--- a/processing/src/test/resources/Vishal5SecondsTest1_en_Invalid.xml
+++ /dev/null
@@ -1,150 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements.  See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership.  The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License.  You may obtain a copy of the License at
- ~
- ~    http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied.  See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
- -->
-
-<Schema name="Vishal5SecondsTest">
-  <Cube name="VishalPerfCube" visible="true" cache="true" enabled="true">
-    <Table name="DATA_FACT" schema="VISHAL">
-      <AggName name="agg_2_Dev_Year_State_Prot_Temp" ignorecase="true">
-        <AggFactCount column="fact_count">
-        </AggFactCount>
-        <AggMeasure column="MEASURE1" name="[Measures].[Measure1]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE2" name="[Measures].[Measure2]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE3" name="[Measures].[Measure3]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE4" name="[Measures].[Measure4]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE5" name="[Measures].[Measure5]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE6" name="[Measures].[Measure6]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE7" name="[Measures].[Measure7]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE8" name="[Measures].[Measure8]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE9" name="[Measures].[Measure9]">
-        </AggMeasure>
-        <AggMeasure column="MEASURE10" name="[Measures].[Measure10]">
-        </AggMeasure>
-        <AggLevel column="DEVICE_NAME" name="[Device].[Device Name]">
-        </AggLevel>
-        <AggLevel column="YEAR_ID" name="[Time].[Year]">
-        </AggLevel>
-        <AggLevel column="COUNTRY" name="[Location].[Country]">
-        </AggLevel>
-        <AggLevel column="STATE" name="[Location].[State]">
-        </AggLevel>
-        <AggLevel column="CATEGORY_NAME" name="[Protocol].[Category]">
-        </AggLevel>
-        <AggLevel column="PROTOCOL_NAME" name="[Protocol].[Protocol]">
-        </AggLevel>
-      </AggName>
-    </Table>
-    <Dimension type="StandardDimension" visible="true" foreignKey="DEVICE_KEY"
-               highCardinality="false" name="Device">
-      <Hierarchy name="Device" visible="true" hasAll="true" primaryKey="DEVICE_KEY">
-        <Table name="DEVICE_DIM" schema="VISHAL">
-        </Table>
-        <Level name="Device Name" visible="true" column="DEVICE_NAME" type="String"
-               uniqueMembers="false" levelCardinality="20" levelType="Regular"
-               hideMemberIf="Never">
-        </Level>
-      </Hierarchy>
-    </Dimension>
-    <Dimension type="TimeDimension" visible="true" foreignKey="TIME_KEY" highCardinality="false"
-               name="Time">
-      <Hierarchy name="Time" visible="true" hasAll="true" primaryKey="TIME_KEY">
-        <Table name="TIME_DIM" schema="VISHAL">
-        </Table>
-        <Level name="Year" visible="true" column="YEAR_ID" type="String"
-               uniqueMembers="false" levelType="TimeYears" levelCardinality="2"
-               hideMemberIf="Never">
-        </Level>
-        <Level name="Month" visible="true" column="MONTH_NAME" type="String"
-               uniqueMembers="false" levelType="TimeYears" levelCardinality="12"
-               hideMemberIf="Never">
-        </Level>
-        <Level name="Day" visible="true" column="DAY_ID" type="String" uniqueMembers="false"
-               levelType="TimeYears" levelCardinality="31" hideMemberIf="Never">
-        </Level>
-        <Level name="Hour" visible="true" column="HOUR_ID" type="String"
-               uniqueMembers="false" levelType="TimeYears" levelCardinality="24"
-               hideMemberIf="Never">
-        </Level>
-        <Level name="Minute" visible="true" column="MINUTE_ID" type="String"
-               uniqueMembers="false" levelType="TimeYears" levelCardinality="4"
-               hideMemberIf="Never">
-        </Level>
-      </Hierarchy>
-    </Dimension>
-
-    <Dimension type="StandardDimension" visible="true" foreignKey="LOCATION_KEY"
-               highCardinality="false" name="Location">
-      <Hierarchy name="Location" visible="true" hasAll="true" primaryKey="LOCATION_KEY">
-        <Table name="LOCATION_DIM" schema="VISHAL">
-        </Table>
-        <Level name="Country" visible="true" column="COUNTRY" type="String"
-               uniqueMembers="false" levelCardinality="5" levelType="Regular"
-               hideMemberIf="Never">
-        </Level>
-        <Level name="State" visible="true" column="STATE" type="String"
-               uniqueMembers="false" levelCardinality="10" levelType="Regular"
-               hideMemberIf="Never">
-        </Level>
-        <Level name="City" visible="true" column="CITY" type="String" uniqueMembers="false"
-               levelCardinality="20" levelType="Regular" hideMemberIf="Never">
-        </Level>
-      </Hierarchy>
-    </Dimension>
-    <Dimension type="StandardDimension" visible="true" foreignKey="PROTOCOL_KEY"
-               highCardinality="false" name="Protocol">
-      <Hierarchy name="Protocol" visible="true" hasAll="true" primaryKey="PROTOCOL_KEY">
-        <Table name="PROTOCOL_DIM" schema="VISHAL">
-        </Table>
-        <Level name="Category" visible="true" column="CATEGORY_NAME" uniqueMembers="false"
-               levelCardinality="5" levelType="Regular" hideMemberIf="Never">
-        </Level>
-        <Level name="Protocol" visible="true" column="PROTOCOL_NAME" uniqueMembers="false"
-               levelCardinality="20" levelType="Regular" hideMemberIf="Never">
-        </Level>
-      </Hierarchy>
-    </Dimension>
-    <Measure name="Measure1" column="MEASURE1" aggregator="count" visible="true">
-    </Measure>
-    <Measure name="Measure2" column="MEASURE2" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure3" column="MEASURE3" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure4" column="MEASURE4" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure5" column="MEASURE5" aggregator="count" visible="true">
-    </Measure>
-    <Measure name="Measure6" column="MEASURE6" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure7" column="MEASURE7" aggregator="count" visible="true">
-    </Measure>
-    <Measure name="Measure8" column="MEASURE8" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure9" column="MEASURE9" aggregator="sum" visible="true">
-    </Measure>
-    <Measure name="Measure10" column="MEASURE10" aggregator="distinct-count" visible="true">
-    </Measure>
-  </Cube>
-</Schema>


[3/4] incubator-carbondata git commit: clean issue in java/scala doc

Posted by ja...@apache.org.
clean issue in java/scala doc


Project: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/commit/086b06d1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/tree/086b06d1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/diff/086b06d1

Branch: refs/heads/master
Commit: 086b06d119d4fb855fa944ecf79f3f637855cb56
Parents: 1e5db53
Author: QiangCai <qi...@qq.com>
Authored: Fri Apr 7 21:53:00 2017 +0530
Committer: jackylk <ja...@huawei.com>
Committed: Sat Apr 8 00:56:08 2017 +0800

----------------------------------------------------------------------
 .../impl/ColumnGroupDimensionDataChunk.java     |   7 +-
 .../impl/VariableLengthDimensionDataChunk.java  |   7 +-
 .../chunk/reader/MeasureColumnChunkReader.java  |   8 +-
 ...mpressedDimensionChunkFileBasedReaderV3.java |   2 +-
 ...CompressedMeasureChunkFileBasedReaderV3.java |   8 +-
 .../chunk/store/DimensionDataChunkStore.java    |   4 +-
 .../SafeAbsractDimensionDataChunkStore.java     |   2 -
 .../SafeFixedLengthDimensionDataChunkStore.java |   4 +-
 ...nsafeFixedLengthDimensionDataChunkStore.java |   4 +-
 ...afeVariableLengthDimesionDataChunkStore.java |   2 +-
 .../TimeStampDirectDictionaryGenerator.java     |   2 +-
 .../core/scan/executor/util/QueryUtil.java      |   2 +-
 .../visitor/RangeDirectDictionaryVisitor.java   |   1 -
 .../core/scan/model/CarbonQueryPlan.java        |   3 -
 .../core/scan/processor/BlockletIterator.java   |   4 +-
 .../core/scan/scanner/impl/FilterScanner.java   |   9 +-
 .../core/util/CarbonMetadataUtil.java           |   9 +-
 .../apache/carbondata/core/util/CarbonUtil.java |   2 +-
 .../carbondata/core/util/DataTypeUtil.java      |   2 +-
 .../dictionary/ForwardDictionaryCacheTest.java  |   2 +-
 .../impl/ColumnGroupDimensionDataChunkTest.java |   2 +-
 .../impl/btree/BTreeBlockFinderTest.java        |   3 +-
 .../hadoop/util/CarbonInputSplitTaskInfo.java   |   2 +-
 .../spark/load/DeleteLoadFolders.java           |  12 +-
 .../carbondata/spark/splits/TableSplit.java     |   3 -
 .../carbondata/spark/util/LoadMetadataUtil.java |   6 +-
 .../processing/merger/CarbonDataMergerUtil.java |   2 +-
 .../processing/model/CarbonLoadModel.java       |   3 -
 .../newflow/sort/unsafe/sort/TimSort.java       |   2 +-
 .../store/colgroup/ColGroupDataHolder.java      |   5 +-
 .../processing/util/NonDictionaryUtil.java      |   3 -
 processing/src/test/resources/CSV.ktr           |   1 -
 .../src/test/resources/DATA_FACT_SMALL1.ktr     |   1 -
 .../src/test/resources/Vishal5SecondsTest1.xml  | Bin 12280 -> 0 bytes
 .../Vishal5SecondsTest1_en_Invalid.xml          | 150 -------------------
 35 files changed, 52 insertions(+), 227 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunk.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunk.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunk.java
index dc5f93f..8234f67 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunk.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunk.java
@@ -30,7 +30,8 @@ public class ColumnGroupDimensionDataChunk extends AbstractDimensionDataChunk {
    * Constructor for this class
    *
    * @param dataChunk       data chunk
-   * @param chunkAttributes chunk attributes
+   * @param columnValueSize chunk attributes
+   * @param numberOfRows
    */
   public ColumnGroupDimensionDataChunk(byte[] dataChunk, int columnValueSize, int numberOfRows) {
     this.dataChunkStore = DimensionChunkStoreFactory.INSTANCE
@@ -62,7 +63,8 @@ public class ColumnGroupDimensionDataChunk extends AbstractDimensionDataChunk {
    * @param rowId
    * @param columnIndex
    * @param row
-   * @param restructuringInfo @return
+   * @param info          KeyStructureInfo
+   * @return
    */
   @Override public int fillConvertedChunkData(int rowId, int columnIndex, int[] row,
       KeyStructureInfo info) {
@@ -79,7 +81,6 @@ public class ColumnGroupDimensionDataChunk extends AbstractDimensionDataChunk {
    * Below method will be used to get the masked key
    *
    * @param data   data
-   * @param offset offset of
    * @param info
    * @return
    */

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/VariableLengthDimensionDataChunk.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/VariableLengthDimensionDataChunk.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/VariableLengthDimensionDataChunk.java
index 92c1e2f..eac06f4 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/VariableLengthDimensionDataChunk.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/impl/VariableLengthDimensionDataChunk.java
@@ -32,9 +32,10 @@ public class VariableLengthDimensionDataChunk extends AbstractDimensionDataChunk
 
   /**
    * Constructor for this class
-   *
-   * @param dataChunkStore  data chunk
-   * @param chunkAttributes chunk attributes
+   * @param dataChunks
+   * @param invertedIndex
+   * @param invertedIndexReverse
+   * @param numberOfRows
    */
   public VariableLengthDimensionDataChunk(byte[] dataChunks, int[] invertedIndex,
       int[] invertedIndexReverse, int numberOfRows) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/MeasureColumnChunkReader.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/MeasureColumnChunkReader.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/MeasureColumnChunkReader.java
index ef7875b..39789b1 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/MeasureColumnChunkReader.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/MeasureColumnChunkReader.java
@@ -49,12 +49,8 @@ public interface MeasureColumnChunkReader {
 
   /**
    * Covert raw data to measure chunk
-   *
-   * @param fileReader
-   * @param blockIndex
-   * @param rawData
-   * @param offset
-   * @param length
+   * @param measureRawColumnChunk
+   * @param pageNumber
    * @return
    * @throws IOException
    */

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/dimension/v3/CompressedDimensionChunkFileBasedReaderV3.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/dimension/v3/CompressedDimensionChunkFileBasedReaderV3.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/dimension/v3/CompressedDimensionChunkFileBasedReaderV3.java
index 79b75e4..8bea132 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/dimension/v3/CompressedDimensionChunkFileBasedReaderV3.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/dimension/v3/CompressedDimensionChunkFileBasedReaderV3.java
@@ -197,7 +197,7 @@ public class CompressedDimensionChunkFileBasedReaderV3 extends AbstractChunkRead
    * Below method will be used to convert the compressed dimension chunk raw data to actual data
    *
    * @param dimensionRawColumnChunk dimension raw chunk
-   * @param page                    number
+   * @param pageNumber              number
    * @return DimensionColumnDataChunk
    */
   @Override public DimensionColumnDataChunk convertToDimensionChunk(

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/measure/v3/CompressedMeasureChunkFileBasedReaderV3.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/measure/v3/CompressedMeasureChunkFileBasedReaderV3.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/measure/v3/CompressedMeasureChunkFileBasedReaderV3.java
index 58b2937..570c0c8 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/measure/v3/CompressedMeasureChunkFileBasedReaderV3.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/reader/measure/v3/CompressedMeasureChunkFileBasedReaderV3.java
@@ -69,7 +69,7 @@ public class CompressedMeasureChunkFileBasedReaderV3 extends AbstractMeasureChun
    * 5. Create the raw chunk object and fill the details
    *
    * @param fileReader          reader for reading the column from carbon data file
-   * @param blockletColumnIndex blocklet index of the column in carbon data file
+   * @param blockIndex          blocklet index of the column in carbon data file
    * @return measure raw chunk
    */
   @Override public MeasureRawColumnChunk readRawMeasureChunk(FileHolder fileReader, int blockIndex)
@@ -136,9 +136,9 @@ public class CompressedMeasureChunkFileBasedReaderV3 extends AbstractMeasureChun
    *
    * @param fileReader
    *        reader which will be used to read the measure columns data from file
-   * @param startBlockletColumnIndex
+   * @param startColumnBlockletIndex
    *        blocklet index of the first measure column
-   * @param endBlockletColumnIndex
+   * @param endColumnBlockletIndex
    *        blocklet index of the last measure column
    * @return MeasureRawColumnChunk array
    */
@@ -201,7 +201,7 @@ public class CompressedMeasureChunkFileBasedReaderV3 extends AbstractMeasureChun
    * Below method will be used to convert the compressed measure chunk raw data to actual data
    *
    * @param measureRawColumnChunk measure raw chunk
-   * @param page                  number
+   * @param pageNumber            number
    * @return DimensionColumnDataChunk
    */
   @Override public MeasureColumnDataChunk convertToMeasureChunk(

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/DimensionDataChunkStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/DimensionDataChunkStore.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/DimensionDataChunkStore.java
index df29943..a3f7ac3 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/DimensionDataChunkStore.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/DimensionDataChunkStore.java
@@ -36,7 +36,7 @@ public interface DimensionDataChunkStore {
    * Below method will be used to get the row
    * based on row id passed
    *
-   * @param index
+   * @param rowId
    * @return row
    */
   byte[] getRow(int rowId);
@@ -45,7 +45,7 @@ public interface DimensionDataChunkStore {
    * Below method will be used to fill the row values to buffer array
    *
    * @param rowId  row id of the data to be filled
-   * @param data   buffer in which data will be filled
+   * @param buffer   buffer in which data will be filled
    * @param offset off the of the buffer
    */
   void fillRow(int rowId, byte[] buffer, int offset);

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeAbsractDimensionDataChunkStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeAbsractDimensionDataChunkStore.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeAbsractDimensionDataChunkStore.java
index 2f969b1..cb10d3e 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeAbsractDimensionDataChunkStore.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeAbsractDimensionDataChunkStore.java
@@ -47,9 +47,7 @@ public abstract class SafeAbsractDimensionDataChunkStore implements DimensionDat
   /**
    * Constructor
    *
-   * @param totalSize      total size of the data to be kept
    * @param isInvertedIdex is inverted index present
-   * @param numberOfRows   total number of rows
    */
   public SafeAbsractDimensionDataChunkStore(boolean isInvertedIdex) {
     this.isExplictSorted = isInvertedIdex;

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeFixedLengthDimensionDataChunkStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeFixedLengthDimensionDataChunkStore.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeFixedLengthDimensionDataChunkStore.java
index 23af707..8656878 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeFixedLengthDimensionDataChunkStore.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/safe/SafeFixedLengthDimensionDataChunkStore.java
@@ -57,7 +57,7 @@ public class SafeFixedLengthDimensionDataChunkStore extends SafeAbsractDimension
    * Below method will be used to get the surrogate key of the based on the row
    * id passed
    *
-   * @param rowId row id
+   * @param index row id
    * @return surrogate key
    */
   @Override public int getSurrogate(int index) {
@@ -74,7 +74,7 @@ public class SafeFixedLengthDimensionDataChunkStore extends SafeAbsractDimension
    * Below method will be used to fill the row values to buffer array
    *
    * @param rowId  row id of the data to be filled
-   * @param data   buffer in which data will be filled
+   * @param buffer   buffer in which data will be filled
    * @param offset off the of the buffer
    */
   @Override public void fillRow(int rowId, byte[] buffer, int offset) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeFixedLengthDimensionDataChunkStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeFixedLengthDimensionDataChunkStore.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeFixedLengthDimensionDataChunkStore.java
index e666282..4ff9c77 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeFixedLengthDimensionDataChunkStore.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeFixedLengthDimensionDataChunkStore.java
@@ -71,7 +71,7 @@ public class UnsafeFixedLengthDimensionDataChunkStore
    * Below method will be used to get the surrogate key of the based on the row
    * id passed
    *
-   * @param rowId row id
+   * @param index row id
    * @return surrogate key
    */
   @Override public int getSurrogate(int index) {
@@ -97,7 +97,7 @@ public class UnsafeFixedLengthDimensionDataChunkStore
    * Below method will be used to fill the row values to buffer array
    *
    * @param rowId  row id of the data to be filled
-   * @param data   buffer in which data will be filled
+   * @param buffer   buffer in which data will be filled
    * @param offset off the of the buffer
    */
   @Override public void fillRow(int rowId, byte[] buffer, int offset) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeVariableLengthDimesionDataChunkStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeVariableLengthDimesionDataChunkStore.java b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeVariableLengthDimesionDataChunkStore.java
index 10ac5cd..82ec205 100644
--- a/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeVariableLengthDimesionDataChunkStore.java
+++ b/core/src/main/java/org/apache/carbondata/core/datastore/chunk/store/impl/unsafe/UnsafeVariableLengthDimesionDataChunkStore.java
@@ -118,7 +118,7 @@ public class UnsafeVariableLengthDimesionDataChunkStore
   /**
    * Below method will be used to get the row based on row id passed
    *
-   * @param index
+   * @param rowId
    * @return row
    */
   @Override public byte[] getRow(int rowId) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/keygenerator/directdictionary/timestamp/TimeStampDirectDictionaryGenerator.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/keygenerator/directdictionary/timestamp/TimeStampDirectDictionaryGenerator.java b/core/src/main/java/org/apache/carbondata/core/keygenerator/directdictionary/timestamp/TimeStampDirectDictionaryGenerator.java
index a139f4c..7d3d6c8 100644
--- a/core/src/main/java/org/apache/carbondata/core/keygenerator/directdictionary/timestamp/TimeStampDirectDictionaryGenerator.java
+++ b/core/src/main/java/org/apache/carbondata/core/keygenerator/directdictionary/timestamp/TimeStampDirectDictionaryGenerator.java
@@ -62,7 +62,7 @@ public class TimeStampDirectDictionaryGenerator implements DirectDictionaryGener
   private static final LogService LOGGER =
       LogServiceFactory.getLogService(TimeStampDirectDictionaryGenerator.class.getName());
 
-  /**
+  /*
    * initialization block for granularityFactor and cutOffTimeStamp
    */
   static {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/scan/executor/util/QueryUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/scan/executor/util/QueryUtil.java b/core/src/main/java/org/apache/carbondata/core/scan/executor/util/QueryUtil.java
index be5e8a4..130b4fb 100644
--- a/core/src/main/java/org/apache/carbondata/core/scan/executor/util/QueryUtil.java
+++ b/core/src/main/java/org/apache/carbondata/core/scan/executor/util/QueryUtil.java
@@ -520,7 +520,7 @@ public class QueryUtil {
 
     List<QueryDimension> dimensions = new ArrayList<QueryDimension>(origdimensions.size());
     dimensions.addAll(origdimensions);
-    /**
+    /*
      * sort based on column group id
      */
     Collections.sort(dimensions, new Comparator<QueryDimension>() {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/scan/filter/resolver/resolverinfo/visitor/RangeDirectDictionaryVisitor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/scan/filter/resolver/resolverinfo/visitor/RangeDirectDictionaryVisitor.java b/core/src/main/java/org/apache/carbondata/core/scan/filter/resolver/resolverinfo/visitor/RangeDirectDictionaryVisitor.java
index 263fa9c..0fefaf0 100644
--- a/core/src/main/java/org/apache/carbondata/core/scan/filter/resolver/resolverinfo/visitor/RangeDirectDictionaryVisitor.java
+++ b/core/src/main/java/org/apache/carbondata/core/scan/filter/resolver/resolverinfo/visitor/RangeDirectDictionaryVisitor.java
@@ -41,7 +41,6 @@ public class RangeDirectDictionaryVisitor extends CustomTypeDictionaryVisitor
    * @param metadata
    * @throws FilterUnsupportedException,if exception occurs while evaluating
    * filter models.
-   * @throws IOException
    * @throws FilterUnsupportedException
    */
   public void populateFilterResolvedInfo(DimColumnResolvedFilterInfo visitableObj,

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/scan/model/CarbonQueryPlan.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/scan/model/CarbonQueryPlan.java b/core/src/main/java/org/apache/carbondata/core/scan/model/CarbonQueryPlan.java
index fd747e2..5a5b042 100644
--- a/core/src/main/java/org/apache/carbondata/core/scan/model/CarbonQueryPlan.java
+++ b/core/src/main/java/org/apache/carbondata/core/scan/model/CarbonQueryPlan.java
@@ -15,9 +15,6 @@
  * limitations under the License.
  */
 
-/**
- *
- */
 package org.apache.carbondata.core.scan.model;
 
 import java.io.Serializable;

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/scan/processor/BlockletIterator.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/scan/processor/BlockletIterator.java b/core/src/main/java/org/apache/carbondata/core/scan/processor/BlockletIterator.java
index 8e7d8c7..3ea4e1d 100644
--- a/core/src/main/java/org/apache/carbondata/core/scan/processor/BlockletIterator.java
+++ b/core/src/main/java/org/apache/carbondata/core/scan/processor/BlockletIterator.java
@@ -61,13 +61,13 @@ public class BlockletIterator extends CarbonIterator<DataRefNode> {
     return hasNext;
   }
 
-  @Override
+
   /**
    * To get the next block
    * @return next data block
    *
    */
-  public DataRefNode next() {
+  @Override public DataRefNode next() {
     // get the current blocks
     DataRefNode datablockTemp = datablock;
     // store the next data block

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/scan/scanner/impl/FilterScanner.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/scan/scanner/impl/FilterScanner.java b/core/src/main/java/org/apache/carbondata/core/scan/scanner/impl/FilterScanner.java
index 32b7bff..86a2e8b 100644
--- a/core/src/main/java/org/apache/carbondata/core/scan/scanner/impl/FilterScanner.java
+++ b/core/src/main/java/org/apache/carbondata/core/scan/scanner/impl/FilterScanner.java
@@ -216,7 +216,8 @@ public class FilterScanner extends AbstractBlockletScanner {
         dimensionRawColumnChunks[j] = projectionListDimensionChunk[j];
       }
     }
-    /**
+
+    /*
      * in case projection if the projected dimension are not loaded in the dimensionColumnDataChunk
      * then loading them
      */
@@ -247,9 +248,9 @@ public class FilterScanner extends AbstractBlockletScanner {
         measureRawColumnChunks[j] = projectionListMeasureChunk[j];
       }
     }
-    /**
-     * in case projection if the projected measure are not loaded in the measureColumnDataChunk
-     * then loading them
+    /*
+      in case projection if the projected measure are not loaded in the measureColumnDataChunk
+      then loading them
      */
     int[] projectionListMeasureIndexes = blockExecutionInfo.getProjectionListMeasureIndexes();
     int projectionListMeasureIndexesLength = projectionListMeasureIndexes.length;

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/util/CarbonMetadataUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/util/CarbonMetadataUtil.java b/core/src/main/java/org/apache/carbondata/core/util/CarbonMetadataUtil.java
index e60d675..23d8baa 100644
--- a/core/src/main/java/org/apache/carbondata/core/util/CarbonMetadataUtil.java
+++ b/core/src/main/java/org/apache/carbondata/core/util/CarbonMetadataUtil.java
@@ -119,8 +119,10 @@ public class CarbonMetadataUtil {
    * Below method prepares the file footer object for carbon data file version 3
    *
    * @param infoList
-   * @param numCols
+   * @param blockletIndexs
    * @param cardinalities
+   * @param numberOfColumns
+   * @param segmentProperties
    * @return FileFooter
    */
   public static FileFooter3 convertFileFooterVersion3(List<BlockletInfo3> infoList,
@@ -137,8 +139,9 @@ public class CarbonMetadataUtil {
    * Below method will be used to get the file footer object
    *
    * @param infoList         blocklet info
+   * @param blockletIndexs
    * @param cardinalities    cardinlaity of dimension columns
-   * @param columnSchemaList column schema list
+   * @param numberOfColumns
    * @return file footer
    */
   private static FileFooter3 getFileFooter3(List<BlockletInfo3> infoList,
@@ -721,7 +724,7 @@ public class CarbonMetadataUtil {
   /**
    * Below method will be used to get the data chunk object for all the columns
    *
-   * @param blockletInfoColumnar blocklet info
+   * @param nodeHolderList       blocklet info
    * @param columnSchenma        list of columns
    * @param segmentProperties    segment properties
    * @return list of data chunks

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java b/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
index a442087..e10bd02 100644
--- a/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
+++ b/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
@@ -819,7 +819,7 @@ public final class CarbonUtil {
     char[] type = new char[encodeMetaList.size()];
     byte[] dataTypeSelected = new byte[encodeMetaList.size()];
 
-    /**
+    /*
      * to fill the meta data required for value compression model
      */
     for (int i = 0; i < dataTypeSelected.length; i++) {  // always 1

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/main/java/org/apache/carbondata/core/util/DataTypeUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/carbondata/core/util/DataTypeUtil.java b/core/src/main/java/org/apache/carbondata/core/util/DataTypeUtil.java
index 76df425..d8e0c82 100644
--- a/core/src/main/java/org/apache/carbondata/core/util/DataTypeUtil.java
+++ b/core/src/main/java/org/apache/carbondata/core/util/DataTypeUtil.java
@@ -573,7 +573,7 @@ public final class DataTypeUtil {
    * Below method will be used to convert the data into byte[]
    *
    * @param data
-   * @param ColumnSchema
+   * @param columnSchema
    * @return actual data in byte[]
    */
   public static byte[] convertDataToBytesBasedOnDataType(String data, ColumnSchema columnSchema) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/test/java/org/apache/carbondata/core/cache/dictionary/ForwardDictionaryCacheTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/carbondata/core/cache/dictionary/ForwardDictionaryCacheTest.java b/core/src/test/java/org/apache/carbondata/core/cache/dictionary/ForwardDictionaryCacheTest.java
index 8ceaf1c..4efb093 100644
--- a/core/src/test/java/org/apache/carbondata/core/cache/dictionary/ForwardDictionaryCacheTest.java
+++ b/core/src/test/java/org/apache/carbondata/core/cache/dictionary/ForwardDictionaryCacheTest.java
@@ -204,7 +204,7 @@ public class ForwardDictionaryCacheTest extends AbstractDictionaryCacheTest {
    * it to a sort index file
    *
    * @param data
-   * @param columnIdentifier
+   * @param columnId
    * @throws IOException
    */
   private void writeSortIndexFile(List<String> data, String columnId) throws IOException {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/test/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunkTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunkTest.java b/core/src/test/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunkTest.java
index 5915655..5affed8 100644
--- a/core/src/test/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunkTest.java
+++ b/core/src/test/java/org/apache/carbondata/core/datastore/chunk/impl/ColumnGroupDimensionDataChunkTest.java
@@ -86,7 +86,7 @@ public class ColumnGroupDimensionDataChunkTest {
   /**
    * Below method will be used to get the key structure info for the query
    *
-   * @param queryModel   query model
+   * @param ordinals   query model
    * @param keyGenerator
    * @return key structure info
    */

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/core/src/test/java/org/apache/carbondata/core/datastore/impl/btree/BTreeBlockFinderTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/carbondata/core/datastore/impl/btree/BTreeBlockFinderTest.java b/core/src/test/java/org/apache/carbondata/core/datastore/impl/btree/BTreeBlockFinderTest.java
index a4adf92..54bbe06 100644
--- a/core/src/test/java/org/apache/carbondata/core/datastore/impl/btree/BTreeBlockFinderTest.java
+++ b/core/src/test/java/org/apache/carbondata/core/datastore/impl/btree/BTreeBlockFinderTest.java
@@ -146,13 +146,12 @@ public class BTreeBlockFinderTest extends TestCase {
     assertEquals(0, findLastBlock.nodeNumber());
   }
 
-  @Test
   /**
    * Below method will test when key which is not present and key which is
    * more than
    * last node key is passes for searching it should give first block
    */
-  public void testBtreeSearchIsWorkingAndGivingPorperBlockletWithDictionaryKey()
+  @Test public void testBtreeSearchIsWorkingAndGivingPorperBlockletWithDictionaryKey()
       throws KeyGenException {
     BtreeBuilder builder = new BlockBTreeBuilder();
     List<DataFileFooter> footerList = getFileFooterListWithOnlyDictionaryKey();

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/hadoop/src/main/java/org/apache/carbondata/hadoop/util/CarbonInputSplitTaskInfo.java
----------------------------------------------------------------------
diff --git a/hadoop/src/main/java/org/apache/carbondata/hadoop/util/CarbonInputSplitTaskInfo.java b/hadoop/src/main/java/org/apache/carbondata/hadoop/util/CarbonInputSplitTaskInfo.java
index 3a53765..8abc1f9 100644
--- a/hadoop/src/main/java/org/apache/carbondata/hadoop/util/CarbonInputSplitTaskInfo.java
+++ b/hadoop/src/main/java/org/apache/carbondata/hadoop/util/CarbonInputSplitTaskInfo.java
@@ -70,7 +70,7 @@ public class CarbonInputSplitTaskInfo implements Distributable {
   /**
    * Finding which node has the maximum number of blocks for it.
    *
-   * @param blockList
+   * @param splitList
    * @return
    */
   public static List<String> maxNoNodes(List<CarbonInputSplit> splitList) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/integration/spark-common/src/main/java/org/apache/carbondata/spark/load/DeleteLoadFolders.java
----------------------------------------------------------------------
diff --git a/integration/spark-common/src/main/java/org/apache/carbondata/spark/load/DeleteLoadFolders.java b/integration/spark-common/src/main/java/org/apache/carbondata/spark/load/DeleteLoadFolders.java
index 917de23..6266c82 100644
--- a/integration/spark-common/src/main/java/org/apache/carbondata/spark/load/DeleteLoadFolders.java
+++ b/integration/spark-common/src/main/java/org/apache/carbondata/spark/load/DeleteLoadFolders.java
@@ -15,15 +15,6 @@
  * limitations under the License.
  */
 
-/**
- * Project Name  : Carbon
- * Module Name   : CARBON spark interface
- * Created Date  : 22-Sep-2015
- * FileName   : DeleteLoadFolders.java
- * Description   : for physical deletion of load folders.
- * Class Version  : 1.0
- */
-
 package org.apache.carbondata.spark.load;
 
 import java.io.IOException;
@@ -54,7 +45,8 @@ public final class DeleteLoadFolders {
   /**
    * returns segment path
    *
-   * @param loadModel
+   * @param dbName
+   * @param tableName
    * @param storeLocation
    * @param partitionId
    * @param oneLoad

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/integration/spark-common/src/main/java/org/apache/carbondata/spark/splits/TableSplit.java
----------------------------------------------------------------------
diff --git a/integration/spark-common/src/main/java/org/apache/carbondata/spark/splits/TableSplit.java b/integration/spark-common/src/main/java/org/apache/carbondata/spark/splits/TableSplit.java
index 3062a69..733aae9 100644
--- a/integration/spark-common/src/main/java/org/apache/carbondata/spark/splits/TableSplit.java
+++ b/integration/spark-common/src/main/java/org/apache/carbondata/spark/splits/TableSplit.java
@@ -15,9 +15,6 @@
  * limitations under the License.
  */
 
-/**
- *
- */
 package org.apache.carbondata.spark.splits;
 
 import java.io.ByteArrayInputStream;

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/integration/spark-common/src/main/java/org/apache/carbondata/spark/util/LoadMetadataUtil.java
----------------------------------------------------------------------
diff --git a/integration/spark-common/src/main/java/org/apache/carbondata/spark/util/LoadMetadataUtil.java b/integration/spark-common/src/main/java/org/apache/carbondata/spark/util/LoadMetadataUtil.java
index 297bd7d..0eec314 100644
--- a/integration/spark-common/src/main/java/org/apache/carbondata/spark/util/LoadMetadataUtil.java
+++ b/integration/spark-common/src/main/java/org/apache/carbondata/spark/util/LoadMetadataUtil.java
@@ -15,9 +15,6 @@
  * limitations under the License.
  */
 
-/**
- * Utility for load data
- */
 package org.apache.carbondata.spark.util;
 
 import org.apache.carbondata.core.constants.CarbonCommonConstants;
@@ -26,6 +23,9 @@ import org.apache.carbondata.core.metadata.schema.table.CarbonTable;
 import org.apache.carbondata.core.statusmanager.LoadMetadataDetails;
 import org.apache.carbondata.core.statusmanager.SegmentStatusManager;
 
+/**
+ * Utility for load data
+ */
 public final class LoadMetadataUtil {
   private LoadMetadataUtil() {
 

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java
----------------------------------------------------------------------
diff --git a/processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java b/processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java
index ee667c2..2414993 100644
--- a/processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java
+++ b/processing/src/main/java/org/apache/carbondata/processing/merger/CarbonDataMergerUtil.java
@@ -893,8 +893,8 @@ public final class CarbonDataMergerUtil {
   /**
    * method to identify the segments qualified for merging in case of IUD Compaction.
    *
+   * @param segments
    * @param carbonLoadModel
-   * @param compactionType
    * @return
    */
   private static List<LoadMetadataDetails> identifySegmentsToBeMergedBasedOnIUD(

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/main/java/org/apache/carbondata/processing/model/CarbonLoadModel.java
----------------------------------------------------------------------
diff --git a/processing/src/main/java/org/apache/carbondata/processing/model/CarbonLoadModel.java b/processing/src/main/java/org/apache/carbondata/processing/model/CarbonLoadModel.java
index 5f8c141..525874f 100644
--- a/processing/src/main/java/org/apache/carbondata/processing/model/CarbonLoadModel.java
+++ b/processing/src/main/java/org/apache/carbondata/processing/model/CarbonLoadModel.java
@@ -15,9 +15,6 @@
  * limitations under the License.
  */
 
-/**
- *
- */
 package org.apache.carbondata.processing.model;
 
 import java.io.Serializable;

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/main/java/org/apache/carbondata/processing/newflow/sort/unsafe/sort/TimSort.java
----------------------------------------------------------------------
diff --git a/processing/src/main/java/org/apache/carbondata/processing/newflow/sort/unsafe/sort/TimSort.java b/processing/src/main/java/org/apache/carbondata/processing/newflow/sort/unsafe/sort/TimSort.java
index 6700327..683696e 100644
--- a/processing/src/main/java/org/apache/carbondata/processing/newflow/sort/unsafe/sort/TimSort.java
+++ b/processing/src/main/java/org/apache/carbondata/processing/newflow/sort/unsafe/sort/TimSort.java
@@ -113,7 +113,7 @@ public class TimSort<K, Buffer> {
       return;
     }
 
-    /**
+    /*
      * March over the array once, left to right, finding natural runs,
      * extending short natural runs to minRun elements, and merging runs
      * to maintain stack invariant.

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/main/java/org/apache/carbondata/processing/store/colgroup/ColGroupDataHolder.java
----------------------------------------------------------------------
diff --git a/processing/src/main/java/org/apache/carbondata/processing/store/colgroup/ColGroupDataHolder.java b/processing/src/main/java/org/apache/carbondata/processing/store/colgroup/ColGroupDataHolder.java
index 893a3ae..a2e22c2 100644
--- a/processing/src/main/java/org/apache/carbondata/processing/store/colgroup/ColGroupDataHolder.java
+++ b/processing/src/main/java/org/apache/carbondata/processing/store/colgroup/ColGroupDataHolder.java
@@ -40,10 +40,9 @@ public class ColGroupDataHolder implements DataHolder {
   private int keyBlockSize;
 
   /**
-   * @param colGrpModel
-   * @param columnarSplitter
-   * @param colGroupId
+   * @param keyBlockSize
    * @param noOfRecords
+   * @param colGrpMinMax
    */
   public ColGroupDataHolder(int keyBlockSize,
        int noOfRecords,ColGroupMinMax colGrpMinMax) {

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/main/java/org/apache/carbondata/processing/util/NonDictionaryUtil.java
----------------------------------------------------------------------
diff --git a/processing/src/main/java/org/apache/carbondata/processing/util/NonDictionaryUtil.java b/processing/src/main/java/org/apache/carbondata/processing/util/NonDictionaryUtil.java
index db3f9da..54b4951 100644
--- a/processing/src/main/java/org/apache/carbondata/processing/util/NonDictionaryUtil.java
+++ b/processing/src/main/java/org/apache/carbondata/processing/util/NonDictionaryUtil.java
@@ -15,9 +15,6 @@
  * limitations under the License.
  */
 
-/**
- *
- */
 package org.apache.carbondata.processing.util;
 
 import java.nio.ByteBuffer;



[2/4] incubator-carbondata git commit: clean issue in java/scala doc

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/086b06d1/processing/src/test/resources/CSV.ktr
----------------------------------------------------------------------
diff --git a/processing/src/test/resources/CSV.ktr b/processing/src/test/resources/CSV.ktr
deleted file mode 100644
index dd20cc3..0000000
--- a/processing/src/test/resources/CSV.ktr
+++ /dev/null
@@ -1 +0,0 @@
-6e3e8095ef11293bca8c287ca6ee5e0ca7b7d968cba787b42a519a5053bf2e1f6b60d8c9eb8d99d348800c633d156303d9d51d7651e391ca8fab29cd538d4394ce9ea491f50db686ba20b11374dc8763736da191ad0aa7d711d8ebcdb04296c290b9fc5dd86ecd9efbc8a6742d33a1f5734943183b79b6268e0c3b0672befd65ca43816a891a22e53dce91ac7a33207137374218a40bebcda6be2b2cac2e8a3fb67878965a7d5c19f8db8382080b0dfd9f993bb2da04da32dd0fd66557b3fcce01c3d545aa535f3b4bf271738971a516ef094594d35a3abb232f509f5538bec1b274807256266ec373788fa33a35ad568cb92cdc384cb1d1ae29f74096b15c8a0b4120ddd676d1206e9664dedee46a3ab9748b47970e4ca72265f00da397851807ba6dc275e939af1a8115b64100e7e5bff27914121971520bced1f2eb7c5af462d88af8de7ead569cf9520f687b28f2956b9d2cf48002798241c5dcfa14c8f43cc246c84b8039895875f1e16147f9ea750b4c21526951c70dfa7f8d83a50bdfb9185dfe7aebc15180a78034147524220a4441b8d671b29d75d65691a275a23ea371cb5258f555dee464e24eb5aabeeb5527204c0eee7468c9a02f0977e2cfca66872f79e9acb9138b462a6e69b512e79b302b1b756df87b23e3761b3853632e90ecfd9292a478adc9ac7e327e0190a887278
 a3a87bab2326b585a0a79f3212626571f49ab9c42ed47b2cde2c8780222796fc62a8cd7a18bafe5b6416c70e034daf1c9c984c9bdef080dd36ea4078286950d4ee3228e6ef139b6ad40b00e7f02165b4ef2869b56fe36131b1c791398d40d7a8f09d4a7236b322d346f7e56564a91c33821141d5c9cc373ad48685e88c1a3eb8a5c862b6c729d687d9a106ee7abe7db6fcad10bab7f2c07d33173944c0cf73f382c212d0b6e25562e24ff982371796fc62a8cd7a18bafe5b6416c70e034075924b7fd5d5b28a8b78736ae728ac3457a6962d73772b1c6430984645d91479d86b411f1d78affe8b7aa48c2cde0ec6f4020a08ff1706bb99dd92f5ffa9fdef789424754ee2af574ba03b36dbcace50951d2a1f45ee3dc3b7c8688a6c6811428f170dad241f4825d4cd30b56e5ac051a6e2733ec4905046a4a7983594675a4891d5c55bdf4c4ab50155c899d56579bacd59ce20e499fc266a4e6526a1797f1712ebe5edbd222b0c706205dd6d3319a7081c37ad2e929cbe240a62a8faaae7842eb5d44e11daeba2d0579400717ff0be7db6fcad10bab7f2c07d33173944c0cabbd5e80d9b108dc73852cb8a8b4567901cecd11052975d322180d183a6073ab26109332e378026402e4855c14b5a7be01cb4d239f38b0422ed4e3254a5387762e894976411b75b5a6dd45fa8c9f13d466b0530c08
 f26b8e90b880f1a39b7cd089afa53e0b8463523d08b4fa408d4117ebb3a18b0ba857c142dffbf37139ddad946bfc22c94411958e3e71b881efca31ef645064003f8dd510d069769ec6e7f29624610b153f9571d3728ebc1926e28bfd2d0fb9c09e1bb18dc2748a98764f4e6a84896b58cf1f2d99a9fba5227b7f610d35da47398a5c98070d93fb014237959b4ffcbb7ad125dffa26b206574bf4b0362d7bb92988ba0cb11dd3b31f94f7009535d73113172ecde1df065d55211c73f7e522b0008d557bea7474a38df5288f0ea6e67753882eaaa2335c20ef69af32712ebe5edbd222b0c706205dd6d3319aded4c93ca11cfc14a44ce94f845ccb35457a6962d73772b1c6430984645d91475dff6fec1ca88e410c0f89642bceb5c484f0a99bd1e329a8ee604f3f13d18e8bb84e187b6913173060259d7ebe8067a0e8b558feecb6c373e478365437ab8fb1a371cb5258f555dee464e24eb5aabeeb1e9c35620033d496f0fb86f8985238b1b9249c61f52f5951edd9c25168370eb2953c898bc9353bf279448dd40485bc6f22472757d567c0713abac9da073c6357bb3fc857c5a7fc76caaa290de3d57030f8c7501452ade0cfa81dbd9d01f92c7991c33821141d5c9cc373ad48685e88c147adb8e6d01e31efba1617f78d291055a371cb5258f555dee464e24eb5aabeeba05aa6d4701efc2
 2ddda2cd1b584977494e2b4669676a8cf08f462454723b2145ac75cf474b9baa51aaa7327f17fa3d3950d4ee3228e6ef139b6ad40b00e7f028c7786d239d22e46fafd31a7ad40457d443226781cb881b0983d40dcc4470c864aceaa532bea841fc1436a5dc5f7a2cdf593392d92863d32cbc4ed57a44590569535d73113172ecde1df065d55211c735f53ae3b1f2f2e59a9c0683a46a6c10dd867bbb46bd5a09fa4f4f9e49ec255f0f474fdd6f26bf256f4cca9ca0f1c18739c797a35d90f0f78a5eb168c91521cd70ce8cd649b8157c72348cf8a6dc7ab7e2cec771b705f5f2fbc74e4ea3b99792ccb40a80d16fd776f5ffa02afc51bc16ddd52137ced516f91bb7329a19b79049ea5593e9d30cd3c26c55a6068d8b6c24fa99c1abead06b20131d7266dcb80bc6df0dcb0bf553fd1db9a628a33ff90eaa5278dc020b60db1c9447f8dbddd7de1f5c443206c0b1dda67b45e34579eb2934b45e0d85b8e2e62398a7e9ab4b6230ab7060f390a4a86a567491fdd6705ee940f0ce8cd649b8157c72348cf8a6dc7ab7ea3f573f3bddfe427003a79df2026d4e3796fc62a8cd7a18bafe5b6416c70e034f5e63c668e57da6451ce028fed5c0b519624610b153f9571d3728ebc1926e28ba1b763bf0581dce4ad52a4b4d2ff3e51e08ced936704a13a946bb8b35f8bbee6b0865b05eec7fee1fbd7
 7a8a497ef266c166f28bacfe04f78e02d8e5a7b4689c66b0530c08f26b8e90b880f1a39b7cd03d40e926baa4b0644669f3416e2aaa8f0c6dc757075e5f3ac652bf50f6eaf075e90c313c05d4d8882be5b5d114503c0400d617d8187a2e99a5a01446c75742317a3a18eadb792d9e4c5506c87c6362e7770b19819342bcc4c8c0e723ce426144489ac0ca66784c0c864bb81850759858bda515eb4b43505e0921699346cce37e0ce8cd649b8157c72348cf8a6dc7ab7e9ec745f0b6d9f247211f0a87bd217a65796fc62a8cd7a18bafe5b6416c70e034423d79c8a3332402af077b6941494b1f950d4ee3228e6ef139b6ad40b00e7f02c6472d626cd49fbfe957fbaf4fdb50753b427bface7cd19ea1d12aa8d3a2942e91c33821141d5c9cc373ad48685e88c1ab52303b35a96169d29db8be130721ff00d617d8187a2e99a5a01446c7574231c585f36b108599f8747034689ec26568992fd8829eb815dc20d3dbbcf4d6beb784a3112f973914a5ce1bddb32db2dfcac0eefe27936d4cbe7fac1b882c3bb69100d617d8187a2e99a5a01446c7574231c585f36b108599f8747034689ec26568a2cde48bf663fec38fbfc37ac396d4f491c33821141d5c9cc373ad48685e88c13b060e8c20a7a669cc5176d7a2c0661291db70f4dc5880d40030032779d11bdeff8f606a1de5a8d1ed4b0508b
 e3017c7fd5be3bca67e59ef5c413270203c12e34718ebca13660e28b1450a3cad0f2d7cf3d5cf320ce12484bb3c15e9d58ea74a950d4ee3228e6ef139b6ad40b00e7f02ea727a159e7592e76a37ac2fd8962ff69c86e3e93ebb5c73d453b5f94033159806ba08d816a53b9e7c15b50850d8c0eba007a76af6864833d344a6e788fa02ec950d4ee3228e6ef139b6ad40b00e7f02ea727a159e7592e76a37ac2fd8962ff605e58c06bf3135f217cc628cf5dccccf4718ebca13660e28b1450a3cad0f2d7cfc6c0b55594fe0ecd7c4c1d565ced93f380751784d59f7a8ba51983753dca80d66b0530c08f26b8e90b880f1a39b7cd0030d6ebfe3d5680ea038549a9ecba80f66872f79e9acb9138b462a6e69b512e74d0005b5b1e7409bb179fce4aa0c451a950d4ee3228e6ef139b6ad40b00e7f02cb0464391ec471f09e34e6142e42c7a5fe282951a807cb941dba16f51f60e98936533aae80836786da9f1e75fcf07d2c763c5874e78f361ff613a825c3ff771b950d4ee3228e6ef139b6ad40b00e7f024ac421b0686c84cca3c0a5d34cd82890763c5874e78f361ff613a825c3ff771b66872f79e9acb9138b462a6e69b512e715a520b2573308a073cdd0ac3d8fc09ae1bad95d60cd7f6ef33353be95af348600d617d8187a2e99a5a01446c7574231932ab7fa477703816e444e1652f491
 5e33bab1dcfec3490f3fdac46a3a0b50370d02e43c9e2f33e7c43a9d274a85a79626dd3d37146b95987f65f4099867bf1dea536d8151aaa2af54a26be803084686acdf713d19634770e7a2242a372f25cc464530a2588340f5e33747b573756aad205cb7106b7e07b954ef9d1117c9d5ddc2b8780c841962d29b0d7f205dfa99875c7f34cb563eaf855257287ab00860509535d73113172ecde1df065d55211c73bda2c1086b74ced2b4451f76883578c0b9249c61f52f5951edd9c25168370eb2d12bee5581095c15647ce1d43fe12c81d581e640ede0d6b1ebfcbb400cdcbbbfa8a1509e0ff740b092fca3528a18a18c1248752cc33ea7bae7228ca7517002e83a60d6aab3dff03d55a074f2135d475911d89eda9e5e2dd7772a6f84f5f32b9b950d4ee3228e6ef139b6ad40b00e7f02376c67a19afdf40000322856387a4ce32da44133b0d9a98ad9173af32f218bdf946bfc22c94411958e3e71b881efca319553bc1db8665b0273e23f7b044bb192206e2bad6dcdc883c8a40e7aaec6c6ce87278a3a87bab2326b585a0a79f321264a82236e8bb816e6fe924a0250149d5d5abd0124f1c87dcf420b0ed90235aaac42617a69f40f4198af40db5889d934ab829f42db49566803d9ff9390568eb9ba1a6e2733ec4905046a4a7983594675a4f3a680b9989f6d59bce6ef68e745fc8980d
 ce98cc1f63526627282e1e9fc011466bdb3603545e4a1b16a73dd890c0ecfb3613c5767cb7e1c45e8fc3f821c9eef9535d73113172ecde1df065d55211c733ed2f7a53ce2230377a8c01229da9b7d8dfb50b2591cf65b6debcadd1eb7c505e8940a1dc8a87152740a2f2662588b6df20c08e90df30a59a81210d0e68596079193743435c134e5c680801034d84250bb3fc857c5a7fc76caaa290de3d570306d93787e3ef36903abbf36454108f364bd20d5c21a574ed47b82d9eed2d671c41b2f2bccf652daee93d76cb8b74c8deb1fed146616f445b2eda493a19773ab627dca599668108f2fa17e8fb4fdfb086d2ad4004c152fb595ea61c1d8097df0ec3a60d6aab3dff03d55a074f2135d4759b622fba1c8a397076e96e030c914bba0457a6962d73772b1c6430984645d91470f7f4b8c378af1937ddfbbc1790de3a40f32d143c79ff01cfe5d45e3479ecd740c6dc757075e5f3ac652bf50f6eaf075bc058110ee44d750f05baed642221fb24db934558a7dc4a5958d1bf6b15889bbbb3fc857c5a7fc76caaa290de3d570305848b1e0e5577269bbc1885f16ecae3366872f79e9acb9138b462a6e69b512e7a176b6d130d6e23d6ad87c55126a87063bc1cc9ed0ad253fb2f7c287693b68881a6e2733ec4905046a4a7983594675a4cee9f905aaabfb1dadfa2f33554fa1e782d35ba0
 69d43fc44b391c3c8118f61d4718ebca13660e28b1450a3cad0f2d7c4712c2facdc9694e67c0c8c2df26ebe390ecfd9292a478adc9ac7e327e0190a887278a3a87bab2326b585a0a79f32126a5306438103dc9eb2beae69e5522ea3357e65c987751e025274f7d3cc5afbbb01f647c6b6a733628dc5c3b140668af45650cd4bdd483ed16296ea87f448a9efea1bc3506cb5723b0074e0494128b6db45507f77f85434255a12142e9706fee3f6248b0b24b1004fdf5ec4ac4e6478ee3c2af3123c998e4a06d634325fc9542eb590e63e49192bc78cfd8b3381b55952191db70f4dc5880d40030032779d11bdeebee0d651d9a75a72439eaaf3fb9ce55ee9123eea047eb888dabe2a71b3d80e08595540256a4b5a0918ca6153870468bdadc24177ff4cecc991eb7db7b151a289535d73113172ecde1df065d55211c73fc4647dd673948f8f2e620ad02da2a96d3a69fa299c171bf7ec7947da1054f83f474fdd6f26bf256f4cca9ca0f1c1873c3c2bf636527002bf3b98eae58465b68a8a1509e0ff740b092fca3528a18a18cdb8412ff7d0bbf51c6a64e351eacb345e3f4a5e425598347cb60fdaaaf7f711351f618d1e7b8e34301a6b9c660cf2e3c91db70f4dc5880d40030032779d11bdec490d2c837222a5acdd1f653e2339622f690b5b68f2e40381556b6d4cfd242f2946bfc22c9441
 1958e3e71b881efca314d7380915e66b1e1128dc3f0e8c215eba371cb5258f555dee464e24eb5aabeebb9d12949cda4195fed2e5fbdc2d485e866872f79e9acb9138b462a6e69b512e7951adf3dbd1215576fee813eee1793c2c7c52a63f27d978711210eb23587b93166b0530c08f26b8e90b880f1a39b7cd056431ecf46da2dc713732867f3db9a5a4718ebca13660e28b1450a3cad0f2d7cf949a42b03eb147958b2527fcdd2ef7191db70f4dc5880d40030032779d11bdeff8f606a1de5a8d1ed4b0508be3017c78da711f255cafaa79bfdc620bea4cc0591c33821141d5c9cc373ad48685e88c1cde5a298582380aa92f8233f396a15db91db70f4dc5880d40030032779d11bdeff8f606a1de5a8d1ed4b0508be3017c7c92e653f4e30f0e71836270d84ca2aac4718ebca13660e28b1450a3cad0f2d7c777bf89218a7875e0a63c65d9849bd820cad333bf7aac2233b157af1d548fe8fbb3fc857c5a7fc76caaa290de3d57030562b4ba410c8195a3f05702f0d3cbb253a60d6aab3dff03d55a074f2135d475901cb4d239f38b0422ed4e3254a5387762e894976411b75b5a6dd45fa8c9f13d466b0530c08f26b8e90b880f1a39b7cd089afa53e0b8463523d08b4fa408d4117796fc62a8cd7a18bafe5b6416c70e034660d63f28f87999d404464f5d89e41de2e894976411b75b5a6
 dd45fa8c9f13d466b0530c08f26b8e90b880f1a39b7cd0e7d9ca804a9e096a1b43f66f091696593a60d6aab3dff03d55a074f2135d47596a35ab8265795170fa30703e8c3ea6e05cfbff2426b63b12556c73ee280ef9c50ce8cd649b8157c72348cf8a6dc7ab7ed52d07788a925966495bb8d40622b5a4f3aef4f6d603f659047d6472edd29fdfc4af3d829ea15b14b7ed10ea6605ed2b7e7c2b5bb6b3fb55194fc224d01cdf1366b0530c08f26b8e90b880f1a39b7cd0fdec4a309e756adea6433ba55e5d02da91c33821141d5c9cc373ad48685e88c1d2445695957ed552c62f9439e6470170d5d2bcd51435151b477f4efe352cad6699998b4a71d42eab5b79da85a304a47b86d1ecce7781093ac87c3bda8e9f2a8ab69cf3e84260f1c3b142bac385937ffa4e0fe04889c9636c9ce5071ce14617ea01011448ed55d369312eb22a2e46f9b7b06e7c9e1c74f8891974636dc646288773b5f0bef1b32d3fc38edf17a2b1c73df4dd797380b04391911279d7a6ca15e221476cd1d3b8ba09a9b3463cabc2a7c5f19dea72ce8c13b7bd38379b6759d865964ee6df502d2851b154d879d2f6dda20879b31429e3185d9b0989983999acc5ba8482685a77b8c580e0231e95851abbed1814cc1d4871dc932c2cf5ccdde01ee719fa44df4fa77e59a182db4b50bc58204541123dfa6848ccd322e
 0015bd46390cab59cea1a4cac2d4fa6feb967547e0cf92c4af7aab29add4e6dc3594fd342a5908105d108eb421e8891a158f4eb2117ecc9694fe1926a5f6fa04f9c2490f5067fbada39381aba90e7a12fd03feb9fbaa894ae79cdd548cdf2ac420d427f9864894814222adadad669de1757c5adc9194f4fff972c35574a816e8b989d76d9d2862208dd0dab5e3569b966ed7c053cf15b622aad0d0da35492375ca3d7d88a0072ea35221d4b7a8261a803fcb4639583c4f3d63d3fe596ce88d2eeb5ac8af77c43fd9234147dad2ecf8569cbf2d67901111aa800d4395a162cb41359efadf1bfb4d3aeec9aa6fbb48e1ff08fdd266985a1df1548dcb9ed93e4b682de6fd5a299a5a5bf01c729805b991890b258a4331465e11cda411e833ec50762e7dfe20be0b22bff1791e7b5287ab17eee6c249e09eab018779cf16cc0896f988e8b21afb31f83950f9936503eb3a94a87937a598230a1565aaefeebbbb99fbaeed360b82e541937ef07aa62b7ac46c8346a5fd74ef6d5c34c02e5d202f8fd06defbfaeb915574ce8d163720585629a4876486a643b9a7b4e4ac5f5d5d3b255f6f96f1e712fd0855b9e5e5d3e4cd955e5e6bd2fa356604bb96f8e91a99eb1385e92deaf4d27fdfdeab10bfe11e1f1ccf4d509ba12e4708c3b22a9aad34f7f56ad31b13f1ec638d099e7a3e059de741fb12f9
 3552b5d203603218e4f1b3d1f45606bc98cd4baac84c9d4e197327ce83f77bc3bc83e9b0b5b7dd94d0eefa8098a4550e5eada113df8c931566cd75acdd9700d654ffa3b3961480d340e3f01f3d13bdf6c6a42847d30d33ee781769d6a4afa1ebef7da4cc04752acc7d5d525f1d66b3b167c5739be8b142ac92baaf723b3d2e9581bcb7a525d8a358fa846f252721bbae161abd8f90f15b4d752961a5d0b8325c690e25bf4a4a6f72012075baaeee62f7e9a7d64bfce6bbcd79d87638cff24493491a0c7ad2c68e41d85cab5ec45b8e1257582855ca0fabc40d4237c92f6599b07c89366496677cafda58605f0f19cbc64ffc49254613782be15a4c01700bd56cfdf258d1fd566bb0e6a0fbd1ba36a22f6d88c82a20fa92405a9a1f737fba1fe951c75c841c93af22a026ebb35d7347d1c52083e7ec1cd3972f36236755680c0853a7c2e9129393b34d7914fced8bd781f8413de2a7e94b885489502869defdb57f6d468ac0d73753f2cc7da856b1ebe6fb330b364c172ea022ed5933523d2b1e3c7ad938b8673c261f2d35f7659c0f296e235381cf3d65fe934737d1c4742a60421fcc680dd6d3050e9db06839ee6782717177a3b5e4be28bf50f4cfc11151d2d356c70fc7eb8be69c98d0d0a61483317e3ced679dc77db4802f070654dd415d7667b06724566bdf3e8dc9c551d4918fea541
 6a1e9682218bbaad1e4459a6468d5726e8d4dfa2ecbbbd9cf27cb3fc0dae2137e12e4884e35e12249ed540caed9370f1bf6001184593607d54e7df06f95636968a0458971ef72ab6163286b8a85052dbd7a9e82480a7bc1c588bddcd196533c1315d3431d2ab73fb2398c56151448deb53632f7e5d93c21526197190e3c1cd4119cf7713506c0a5ee78e2044ae3279a8cf9a8273a9def48d4c8f344e572957b2fa8f7e78c536182027093617f09ad663cb1a9fcb0cd6d6c3ead2bdac5f36099da7a813d34d3a62cc8587fe454bb334e79a53730a8cd0b9ea15e334382ba36a3bdc5770fb56b9c5dfec8179aefcba37a4ee070580f693076f2b8ae9550b4c47acd9186799ead9145d6e5679ecb0c25807da60994248c645c65857c31c3f7f4a28dc20b034705076dfb076e869de95711cc8e125e815bebd9a2a54b5a92f646120a024aeb1f7610e4a0484eca639c28c9ce8361fc42fd9f0c22824ab94c059809008981e5a5b9fda9348995a88c6ad79a8ae58f43c0cb197356dd321097a30f5b5f2f6e51d8ec3f75cf563400769d4c58a8ebfcde7f11b66ad8c450e6e22a02f446e4d38a9b9830fca96f28b60ce4b904f34fc29a8b48cccb5fd680e2757621085a75189f7b37911def80103b356eb09d5d0b76733c1b67170c45c33369b1153ef37193f40cc086872c0fa536111d1a9fa4999e
 e52c79be490cbf25ff0ee888fe9624610b153f9571d3728ebc1926e28b74d31bc064e4aa9c170ef60fb2112873cb49eaeb0633b7b96402b826da5b4db4bd8a1df114a9d5438f75d4f499ac07d1f88ceac42902842f0e81389159af489e6e95b2ef9dc7430f751ba291bc6c0cf4aad838207ceb9bc4db32292a1463e44c1417beea1f7bcf6ec6caf32d2aa58a8b59b5b77db88dbcf4dd02b3dd6179fc1f6399047345a9143276ae6131d6c3e1d6e9824c54540c071a72e39e7392f83600df0b653f950d7f007a0c61eccae5f849a49934b3fd00235299d11caab3ea3791c07f050e044f34e77bb03819a94749319cef33ddf022c989c21fe54b6c731c44a1e9bc78a7636c2c9e5ba726ea2602651417beea1f7bcf6ec6caf32d2aa58a8b59b5b77db88dbcf4dd02b3dd6179fc1f0757d6589237d8d5886570f81b7c5f317bf1ba781f547f72014b3f47bb600e765088ded497ec4d6e1b8c5f484586332718cc580e4832f23abd0108bc0bd68a0d43dfaad00c4f24f074ee3741b30970f9f05fe7d9dabc1d38a895aaeffa09144a1417beea1f7bcf6ec6caf32d2aa58a8b59b5b77db88dbcf4dd02b3dd6179fc1f6399047345a9143276ae6131d6c3e1d6043f4376e8f418fc302da6ccd42db53e2b823e4696a776f9646552a4c0d8075462846e9c787c048c48b3affa26a1a853f25a27cee4e
 4afeafb32a7474684bdff11afe29bb2f32d583abc51ea99f7af6a56aa7a6ddbb3f663a6244f0041b3903ca5740e1c9b71b03f36da6d2c3243289e1571ba9857f83ef22bcc227656243785b0f175d8125b7ea43dc9b7ac2e3599f70584add3238bce8b78f17e1e6b1c213d2422d989239495560af10b3ec42f7074bab5bb5472cee8dff766d7ddd513e2a55a3d9fd6841ac01f95f99df28a334cf524b7c0549923008f49bd67b95f5da69bb1047813f412979a500b6492e9ba27f11571ba9857f83ef22bcc227656243785b0f175d8125b7ea43dc9b7ac2e3599f79a3a03c3a11a7f4ab8b802298b36f8df69a7c8b3424a08dc692db0c008419ef3a27927f5eefd8d8ae66b675a087e6f3e2f5fb9ba47c4d39e9a90560b38533a93e9c80e6abc47fb61c5790048931df08e492a92ba062f43adf32e5f60cee8bba3f570bc520b142d0f77d2035783519f10c05ed349abd3ebaf7e8e0079cff2b40effa451783b2c5f23ce14005c4a9acb39568ac696fe1d3b57acaa40ed532053257defb642d41c7414fe1fb6e596eb0b8986306316e2bee934af425d8a9f61a0021571ba9857f83ef22bcc227656243785b0f175d8125b7ea43dc9b7ac2e3599f785d07abf8aa989ed03993785cd5ebf7ece16f2b348927d062a02262d3fb597385bab30465ca217f54fabfc62fa8a6229d920681c961b6c8f
 35ea59c4d279b1b58f996a90d73a8c3632424f627e3841245554ebc9ca8ac14a4ed6e0de7718d332ce9c83969d4c11c00ac1cd895978f40b4a481b37d33f4604ce36510eefa0366d45fa20cda6b9a9e6fad1126cb498b6009b29b0dd4fea516c80ae03b4858fc1791115ba5ca5058db886b2782433012b76bbe0f3ecee70e74a13e18c213652e5203a3ea0cf1299607ed45910de89ff9b528ae4305a60adf558e6af5d7bd1c2e0b825133f43cfea03a2e8ce6446686717ceaf47ad5198b193b7f4311ea9548441d7c4cbad6a25bdebb9f319fd8f29bec1f2280b962976b1690513edd8024d0f8db95cadb2478f671c9a638b8abbe85ae63126169a1c0261a95868b310ddbf25e4b97bd135bb187549649445d4cc83e47333b190c4b4cb56eb54257316d8781e421ced738c25b6d49e4175a2277f499f724d4f0ffa023278fb4b24fa4403fe02191eac1d0388e9dbd4b2c5c1a806379b46652ac06c0d8c250947fe26f656d0efec038ad7bbec54e6b1368491c0fa9dfad0b2c1b3ebfce12f904f560daeb2d1cff234235cb50821275b309dd5bd4e61f64768e9508bc81a9a655318f8ab148cc1c791c33830d350b11a5431585aa519cc30169bc47e7631692c867313f24db5faacf80f6cd0049cb05defa9f7a6a418baa9815e15b2644e12d25684dddba73da33d072a114bf647e7607d196c3
 ef233598ffef260b9a3c2a95e6926a5ec736e27218359aeb7e5383b12fc2ff690fea7abd12ac09e8a4f16700a065f041c6ee958109333e13664e9d7de6b0f3f6b8894c76c0279acb11748468e97d60761940330bb7b7d72399c77ec1056631ac47ccd45dc81acdaa118cdc8e270a5f3d51871b9a0dfc44d2619eeeaf2e6be7cc5bc8f2b75026c4a310f80fb01ec65ee6c323ddb67397ab5fe70385f4cf541cc4476ec4b67af50779592072ea92058273e8807ca83afa64d21c5bbbed1d60869fb0495492356b69e07b85af1e79098e705ed18b345c10be87e0f1265298b57e304ad68bb1dab711f9f19867f44000e93237802650f7ac9a343ed5c771eee627f7cd63a508e32ab40fa3e42f9adf3961096402c6fb435f81a388373897b487e6adbfd06a5ed3df4d7a8528f8f76442b210b858eef2455570c156680c2c5af9b303e79b0062fa7d60407745698947201de24057f2a3c6ce530ecb55592c0d52437842d4cfbb9d8664e94be3d23af962b7db6aa2cdb8ae813fabe15e8d1aa898815e0a82f0d918c962010d76517480993684d692250b01521b5de10546d96d24784d9421538ed22c7be9cb7688d0b0af411ea92305a69f335cec726f3c031072bf2fae734e9fb53cf0d64e4f16ddfcf66683dcd79f3abc7b3e0f876f87988ad063a65f631a557dfe01bf968075b6018cf94aff84f
 b9ee3089b64f6422f0fb4e3308f4f2a8a938316df09d035724fcdaa059d09ecb35d266fe61869cd90acfcfda646279eda1fbf721a0d89a5a7e09c9ed7408f91bc812af8712c94f0465449514d118a5ff9d9dd622bd180e6639a78abe04a803826cf88bc44a1f15ecafbda53a7e576261f9b930322c5fb6cf439697d42204c2956db05053ef67c54068b9051ca4ed6a751133840040b7a6853e445478ef29e05129455b683fc271e503ae71c25e1c2d8e0f3cbbd7e88373a695154b84cfdc9ffdcd82fbccc2871d1e92ca9b7e021a734c183bab416c481d968609f3d01a6e43ed51bbcd512a654f7701f03841a831c71be4971fe511168deba7b54b58ba613e47db9343757ac68a936c8d65648517d1d4181b3997df732cabcd0d1643c018d1e0af1cc66d66e60bcfdde6876380f55160ec9a217bd42839d748f9c1bca8e0aafcf01f676a7e74d33a79ed4e06ed4b901c3a51d88712c94f0465449514d118a5ff9d9dd622bd180e6639a78abe04a803826cf88bc44a1f15ecafbda53a7e576261f9b930322c5fb6cf439697d42204c2956db05053ef67c54068b9051ca4ed6a751133840040b7a6853e445478ef29e05129455b683fc271e503ae71c25e1c2d8e0f3cbbd7e88373a695154b84cfdc9ffdcd82fbccc2871d1e92ca9b7e021a734c183bab416c481d968609f3d01a6e43ed51bbc
 d512a654f7701f03841a831c71be4971fe511168deba7b54b58ba613e47db9343757ac68a936c8d65648517d1d4181b3997df732cabcd0d1643c018d1e0af1cc66d66e60bcfdde6876380f55160ec9a217bd42839d748f9c1bca8e0aafcf01f67788ee5bf9a1a32eacf8053b8e3b43a69f4d7a8528f8f76442b210b858eef2455570c156680c2c5af9b303e79b0062fa7d60407745698947201de24057f2a3c6ce530ecb55592c0d52437842d4cfbb9d8664e94be3d23af962b7db6aa2cdb8ae813fabe15e8d1aa898815e0a82f0d918c962010d76517480993684d692250b01521b5de10546d96d24784d9421538ed22c7be9cb7688d0b0af411ea92305a69f335cec726f3c031072bf2fae734e9fb53cf0d64e4f16ddfcf66683dcd79f3abc7b3e0f876f87988ad063a65f631a557dfe01bf968075b6018cf94aff84fb9ee3089b64f6422f0fb4e3308f4f2a8a938316df09d035724fcdaa059d09ecb35d2660e3821dd68ee33852bdcb7c84bad361785f34e67e3df0942d037c3dd782a4289bec0aa5d607edd54265ce16faa504c5a0b2e3ce0860fb9d48ca895abb386db4f3c622e01760bc1917e2820cf3bbb26f1e0abf9b92c0e55836a598bfcf288766bf2f01d8a03cf97fc0094b007c71ae53b7d3d84670cf79d2b6cfc3cce1db58be9e2cd7b00a7ae169e3731c736704ff94db43e
 d52c832dd47d96ac5fbe5ab3e1eb6a1a3bf12481b0dcbe2908a1354d5c982cb6b5204f384bbb0772c66e937c77421254b1e8f4a0f8ef9ef9d8d60f91ddd1682ecc82f99787049d302669e6fe4e4795a1748ebf97d360ddb876c010e132ef566ab86098ff014d272d00b764e8dd9dc9a343ed5c771eee627f7cd63a508e32e356c5c47b05e05ec17f9deac7c84df8114fbf99f0b9b2e5bd789609705175886bf72462a742592d21f4644941f0d4f610f2f00a00c17cb1efba8c9b9f0dffe27c1e64281e1cfdc9f3c9760825c3391b619624f694622fa1f52652c07cfbf6fb57529604ddffe4389ca34119e26bc6ece40c2c011d45b46e6603e6034b695c0f9d65754f4a34a2e0172ffe675efb294e0fadd2e6299f545d2f2d402f222e2250e156b7a26b9a34fc6d71d21fffdf1608761cc8853ebec722f9ed4da721484ea0fca3d5d6b3a5bf4138b94bcdc37a781900d64b2fe489f2508242ee2917a21eeece8a23f8b8671a77c09dca0cdc33bb6c102ae61ed8e09c4f383dc162d8b1bbc314088a42b3bb9a3e8d5b0bc82efa6393d9b015f3423c70ecdc52c1858cdc4c650d93003345cc5b715c83372cd127fad1944f392e7a6b0c767e8cb5ce3522a145e4a2ea3590fdcd8e9263dcc2a609405825d21662348dbad8e47a78b8593b192480331531bd95caa7b3f7da8236a247c0bd156a0fc
 360305708d27b7abe4803bad42225ae00faa47869759ec4e0b43cd9f0a8b1ca9d8d131076e4ab20c82649e7719030d5a364d100286bb2e88d5007808c46b06973e4b48dc3e069111c4665093e6aa0a7cf19111acb2a8b936c451973e9b3d9800910e781ec2d7c5d46d6301dede82509ddbe97b16dc6a918b9057c2f31c0cd7bc54c44ca762ff659d122c8d77f616624fca6890bf9b4e1378b60f56d29e64e794354b24036a8bc586d1fb01c2e1d92fd8a7051762772dd47ffd5573a1bbd05e9d1ed79cf41737bbe7840695d14a99fd6c52538df9a90b75971dc0f7fe73c78c9934ac7431371e38eb6f3f6d10755cc86be62ce2b7fe4646da914e628a35e02a6d3d55d621c8c6136199768522de784b067cdc28d81ac79d067b41f943b0535aaa43e07198e4fc6063ca6530f0a02e1f6cda2d68870f956df2b2c13349034d3343a96986a87390be339e0c6dfa73a099f782273a9fd227cb8bdd557d3158cc6453c6d4af45f1118d60f20b30f75e0197b616b1a751f778e73b91d8d46182807d2cab7c7a23f753f4d92b28d6b98876cf9735ee85774240dec05a9b7c62a858383cb8ac645fd95dcacf32e0be2084e395d36d4dfae9111daa1e3c990826cc52f6c5dc6683ac114bd93e42c9f7a125a07674a34a4de2ed2b90a8f0ad4b49c821b437b7355556d4ad2a28df6730d256eb3f4d4940e
 02273f717f1da1d4d491e37052808f5283a500a3d9000096c02fc5ff30fa804bcfdd48b7179e4829b7674aa50611935f228bc9a6795bf355f82924fc1c4d6330eb48025d6e1755e66013439bfec60ae8b4359824b006e831136a92e4d26e31966cc59ad09a036421628092b1524dbc41e4bd7560f8b29ff499384b251651fcf736d3c77a8eb176cad7d2a4e2f5133a5d7efbc0b0f4355df0b33ddc288cb18b8b31e9f5085550fe2b807cbc3586e30ae19dbd138723171f165a97562f63a1d85a3882c29de7604a2be77af2fa96f0968597bfbf7ba39e9ee8e26656a07e1d4f76bf0c5ad2c2a7398ecd491a8a74c403b90cc33213cec3927fd82ebf88b5c61a5c9b3ecb7e0b1064f0534af8713fd49c6c4faabbf62380ebcd61d5b0521b63d4dd29af755d12fc1c52895b1a505fd2d7bec37154d00661cfdc233f686a4d7f046e15a0052e0689dfd9cf434861548f0d1badfe4c21139d3f4fcaae0378115940c7ed97ba226f4d188f9bd8111ace731f0baa28e586965176b27a76d4a862b8c3399d1890f4b451af50abd359b88c0d7c58fd6f39df2b534aba8ab68159eade76ef9a9dc53d0f6f270fbfae6c0e37e9e8c1bd123f37663271dbda431826a6566e3a5ea3ab992f2b054660de587e081038acfd4a004f9906d60d18ef2e8e34a8f90bc5b754f00e716e887ea048a9be8b33124941a
 fd6116e0b90e48712c94f0465449514d118a5ff9d9dd6d50cb4a51e5ca010793683a735015d8bc44a1f15ecafbda53a7e576261f9b930322c5fb6cf439697d42204c2956db05053ef67c54068b9051ca4ed6a751133840040b7a6853e445478ef29e05129455b683fc271e503ae71c25e1c2d8e0f3cbbd7e88373a695154b84cfdc9ffdcd82fbccc2871d1e92ca9b7e021a734c183bab416c481d968609f3d01a6e43ed51bbcd512a654f7701f03841a831c71be4971fe511168deba7b54b58ba613e47db9343757ac68a936c8d65648517d1d4181b3997df732cabcd0d1643c018d1e0af1cc66d66e60bcfdde6876380f55160ec9a217bd42839d748f9c1bca8e0aafcf01f6702c30b4e7a241b581627bd1b64a9a47ff4d7a8528f8f76442b210b858eef2455c929be316f40a2f5d8db5f09614d960dd60407745698947201de24057f2a3c6ce530ecb55592c0d52437842d4cfbb9d8664e94be3d23af962b7db6aa2cdb8ae813fabe15e8d1aa898815e0a82f0d918c962010d76517480993684d692250b01521b5de10546d96d24784d9421538ed22c7be9cb7688d0b0af411ea92305a69f335cec726f3c031072bf2fae734e9fb53cf0d64e4f16ddfcf66683dcd79f3abc7b3e0f876f87988ad063a65f631a557dfe01bf968075b6018cf94aff84fb9ee3089b64f6422f0fb4e3308f4f2
 a8a938316df09d035724fcdaa059d09ecb35d2660e3821dd68ee33852bdcb7c84bad361703f6339805e3a16ffb3add5e14eaa456bec0aa5d607edd54265ce16faa504c5a0b2e3ce0860fb9d48ca895abb386db4f3c622e01760bc1917e2820cf3bbb26f1e0abf9b92c0e55836a598bfcf288766bf2f01d8a03cf97fc0094b007c71ae53b7d3d84670cf79d2b6cfc3cce1db58be9e2cd7b00a7ae169e3731c736704ff94db43ed52c832dd47d96ac5fbe5ab3e1eb6a1a3bf12481b0dcbe2908a1354d5c982cb6b5204f384bbb0772c66e937c77421254b1e8f4a0f8ef9ef9d8d60f91ddd1682ecc82f99787049d302669e6fe4e4795a1748ebf97d360ddb876c010e132ef566ab86098ff014d272d00b764e8dd9dc9a343ed5c771eee627f7cd63a508e32e356c5c47b05e05ec17f9deac7c84df89fb512cafbf689d08092d54b121a30881a0143be1855df613026e7e28e173f2c1f7277616ccdc78e83d2a75c8223036e29c388d3f832b7e11d5e671df596bc470e6bafdf9d25b1983ff407c4b1a9ebc0d4b54fa394f0abb4532b2306dc05624083f8e4424431e9460e4ef21ca51cffc2a9ff5c4820eb5a91300d0f97beb8d11ab6ff75d05146f61ada4768b6b7810be97959f2f138dff839ffd98da76449faafe75872d754dadb24391c3f04c57a7bbfb96499346bcd7e92551eda7f0d3af
 75ed9b40dd1ef7c80e32ca067319c8cd87d8ac90ddbedcb3e8dfbfe18360be706436612c8dfffdf0c695d32853d8b2e3c1232e59ab84cef8ae1ce3fc674c163ec0130e901bb70cd5f91cf21cd7d541bf47deee0b3b01082f193d46d006dcbf27d344d78e58d25896b5ccef920f5dac87cbdee8a1b1dfbd00cc15633426c56398ea30b48754e4d31c1f8ebdcd2af1c3590290bd9bd5acfdffe872f0c77574912a0ac3cfca615b2a477d4f2b67d709d2542e5d791680b832ec508ea885c2ded4ad806fbbb022fb884f830ccb82a4f014f811ebc30fd62e76e645ffd780d6149ab33391317f51e3dcccb4e0e3d408d71e5a8046ef4a5b1a925428adefc46e9881632f6fa7f81759a7328034a9cc8f383ce977f99f1f6795920d1a8c2babc548368c69dfa75e5cc6f8b7722683f745bedc11190811cd2d01aeaf4212bf5638de149b3d77f4ffddba1a5dd1b9da82484708bf32405967a21f4a01d4607c438aec1ccca64554cc40123401989164c88ff2afd1c9c866cd577928ce2156c3ff3dc71cd099e268395cd99c234d07ba4956939fea617dcd843313f4cc3c5dbb0a7c352e08cc2acb1bebc8485e4fb77ba606ea809feaf4c58b4c3e88d25b66584ffd83dd1f76b7a887a35385f9244639edae4e0d7adeed81f4c908b0f611b90582c1a774e9c425f028344b768880dafd5a42449a3d69583
 45922758c6bfd91c6a4ccd6bbeaa3a522088902c3367f9384dcbf3ba6692f331f22dbffcd20cea7ebc8cbbf4462c1023fbfe418fc989500b4a406cac4ce7a66b30afab409e38ba2bb2bbd75e1b7524a88b973dce80cd0512ee325cbcfaf0f1796779c5d5cd31eb2b0b02a86aacff7a2df601c621612dc68d06fe692eb3947ff287bfca547c26f5c75a3f5a4eb7bc1bc93427dfd890a3e22e7fa564cb582990f54f375e786efca0dd208db4176a92b7f8ca8966fceaa0ce8b8566f79b61a1208f7e4c0b2dad75e9a5cad0c6a3e7603b2bafd968fd0e7572d4790bc65e95c0267d7a0922fbf8fb8fdb192ef8cc0f7cdee35e4011929a422f4522420b848ce2749662bd6525edd5befa123e7fbc613c196a19b9a63d1cbf0c2192172284c9515ae5123c0e738e5254a55bc11e5927cec2d4be3535d8c505971a39dbfbb60aa0c4b7c76bfbd1179ccc128ec5d84ee530cef8019a6171fe9d98d8e69892b557424c668c8bdfd43efbe56b2fac0fd247e7641a5b1a1a64b2e7ff92ff0bbb767a71d9f835a62c25d5b0cab16afb426a1fbede7a4d85f027988dacb416342fd72917b2386a0cf61b823968076ffa863645680a0e5ee51f7916c34bf7e094a79f103789fe9bccc832677e60652392235c1614fea859758168b51a7126b2e4c99233806eb1f88041b84032f9c6e1e2a31e91913e3c61541
 0e8251ed181ca6613251fb8551f7de9f211777379db54b3701ea247379c8a72af5cc74622e0a4695a12e463016cad85a52535600ff9b69593544b90a91042317d1693218a0e79f9bee3d272cce4a2ea3590fdcd8e9263dcc2a6094058ee0408c9ff8e194ec031c99931f4e8a47a4d85f027988dacb416342fd72917b24864d20162c7e82c331ab1d82c0c99aaa859758168b51a7126b2e4c99233806eb1f88041b84032f9c6e1e2a31e91913ef252eb16d4bf06986e72ff229320b05e1f7de9f211777379db54b3701ea24737ad89848a2faf9afb88aa8571ad553fac6cad85a52535600ff9b69593544b90a9b5386315c36ced5a47722c63cbb7221e6e2e50502be8febedd301896d09694be909bb31609ed05cada081f06bbe8bbb9102ae61ed8e09c4f383dc162d8b1bbc3c9a343ed5c771eee627f7cd63a508e32b0208a983fec87658e6323b99d50dceb46dba30abde99680daf1e9d3be7900a2a300295931a7dfd1387a252659a9caa1e2bbc0fc4db0e82a95caaaf1389859e628d43818ebb7b7c9eeab6635681db7d4f82f45e9ea4483c83adad940f177f5c243d32cc72835efb63d9f03c048fe892e647930d636e183c0fe2df4364e851d69292e3f42199c778766faf0cec4f072cb6c9a27473e010abe20071463bdd3aa70084e395d36d4dfae9111daa1e3c9908257baa91dc925
 881fc2478eb343faf7be7793ed5a8d580cd64e6660492f809a2a0243c74b3eec3424a4705f33beb3c62a99f6be7423670399ab21f1c02c48eddada4d6eecd915617edc0af7d58e75bc78a985fed7a8f31b3e36377d8f698951c35810bb7207acbc58f8dcc92e85ca822b814c85f81628932b65a6eedd887707612735450fece45af3984d2166c9d6d50becc1bd0b8a9b49f5fddbcfdba8ca8e834c54a4d9150709c604a4fa16e110667aaf52d067c59c9714b7d1f81ace817e86e3ef5ae695b015f9f8b95c75809dbcbd6e58bd142dc4d1459252871e5db2c1efa6b71404328a40c08bc9c82fe82909ba096e40b1a2dfd48c38e627a5fa68017bef491a2fbd85ebe7447f823295ef28875810bb7207acbc58f8dcc92e85ca822b814c85f81628932b65a6eedd887707612735450fece45af3984d2166c9d6d50becc1bd0b8a9b49f5fddbcfdba8ca8e834c54a4d9150709c604a4fa16e110667a52d1b20b6245a7d9f51d4316d5d08aafe3ef5ae695b015f9f8b95c75809dbcbd6e58bd142dc4d1459252871e5db2c1ef6d3868b60af642257ed267b11116ae59096e40b1a2dfd48c38e627a5fa68017ba347127b529e672819fd9894959eb36b6cc4802e8c587b148f6f22c7c18e2876f0d7287d3214be75a3d8913e64e8bc467f616624fca6890bf9b4e1378b60f56d14088a42b3bb9a3e8
 d5b0bc82efa63932fdcc9505640ea5207e8cf90a5fe7e3d52fa803d1255c1b8bb70330aa1f3fcad0b3a2088b67de0d482c95c98f62070fcfc3551c3e937dcd0b50d9f2eb09a4ba7cb86429015358c2133346b91bbde8fc5c209d22c1cb90f8f7a68ed0f7cb202aeaa0d4cf2971abf217d9a8855e41d95c86cc4802e8c587b148f6f22c7c18e2876f0d7287d3214be75a3d8913e64e8bc467f616624fca6890bf9b4e1378b60f56d14088a42b3bb9a3e8d5b0bc82efa63932fdcc9505640ea5207e8cf90a5fe7e3dbc055004bcda3cce12138849a582bf7e0b3a2088b67de0d482c95c98f62070fcfc3551c3e937dcd0b50d9f2eb09a4ba73a773301b6dd68101d65e6cd6cfc7fe168a913b47e8385d20c9978f4f6944b2fff07cebfe306f80899ca8db26e95a0c8bd0d67fdb78d180504c5a6132de216ef5a2101d94abf0de3b396e08456c757c336809e3f9bb1844aa1a2e609704f1e451a5b1a1a64b2e7ff92ff0bbb767a71d963de1cb26f16cfdc45a6ff3d06fc9b0553b1c369773ec8fb22d502150f1716b7980f580fb9974d5d888108c88f7e18fe2edad0c74a888baa70693465257c486e3440dd45f95d896ace34b166ccb70fb9359590baea42c4c8cb60b004bc572fea35822d66a9195d2cda38980af30991076a59fd637e386eae91adbeff3aa25e98566ab86098ff014d272d00
 b764e8dd9dc0e5bc4ebd836bdff265536f3983a01209307c9726e87841ae4b64dd781edf80483c75f1fec49f9078b6c06d6829fa06d18a7d1fa3d5832499f8a80ff67cdbd6ab8b317648821bea188e04f52bccd72a932b1667789d121d45a86ce830fc35dc096e40b1a2dfd48c38e627a5fa68017ba347127b529e672819fd9894959eb36b6cc4802e8c587b148f6f22c7c18e2876f0d7287d3214be75a3d8913e64e8bc467f616624fca6890bf9b4e1378b60f56d16963818e39d5c50644cb360ddaf5fcbf936e725849a3b12227b0d846a766bd86588c33a7c584602fc4b54d465098352bd927ef807748b3458d3fd637fc8b55feccb35aec01b1a72d966814bf469d085d80aa14d86afe733a043f53a493f763771608ed175bceb834de6bcd6ac859d043a4ff920c1f005671b81bc2fd593e3c77ae656fc38a5ea70894c03fb7a33706d2fa691e7097cc6e214ad1099e9678cdcbc30fd62e76e645ffd780d6149ab33391317f51e3dcccb4e0e3d408d71e5a8046ef4a5b1a925428adefc46e9881632f6fa7f81759a7328034a9cc8f383ce977f99f1f6795920d1a8c2babc548368c69d492a92ba062f43adf32e5f60cee8bba3bb9891674d00374600a6378c04e6c7ff3096b66a1bf1ae77b4aaaae500ca4f4d5231d89eab8fa243ad4dde06c45c7038cfaa5a2cdbd5c432694ab7b8ab4
 cc80972ae7cd9fac2fff9b164eaf1113cce861574802574b302135f1032d9559f87f1cd9a459c4450d5cb095d7a19a3c6d1ff268395cd99c234d07ba4956939fea617dcd843313f4cc3c5dbb0a7c352e08cc2acb1bebc8485e4fb77ba606ea809feaf4c58b4c3e88d25b66584ffd83dd1f76b7a887a35385f9244639edae4e0d7adeed81f4c908b0f611b90582c1a774e9c425f028344b768880dafd5a42449a3d6958345922758c6bfd91c6a4ccd6bbeaa3a522088902c3367f9384dcbf3ba6692f331f22dbffcd20cea7ebc8cbbf4462c1023fbfe418fc989500b4a406cac4ce7a6dcfb27b0b55681599eeaabfffaee911d67ea7a21d22001a3f47ec10176dbb419cd98e9ce20d0102de3ce317958d4ded111f7b5f32c5f224e4b476c4c083d0c96058caa22259200b6fe58b2eae3cae1f3c5457324ea149424687ab90c6dc3ef44cb39f4ec35b5d3799b22fb104658bcb2e19853f5266a3cc648bd03d973350d2280f83c126228de9c3d45a434da1929064a4715e85b32ec17b76626265d966358968f988be48a513ab565abf0cdbdc3b607cf98cf19909902d6da94107d0a39be2135b2edb21cacab78643f00f926f9457cc817341094d54c8f918bd8ae5968ae67733b05fe02aaf69ed60aeb519a335526a193cbd5be9807fee5484a456c4c871c4f7b8a883cc9a01613b6e71850030d
 24ef8771a4ae094ccf13b9922f66e5a76d7e81a1725a514a9e81c72b9c38bdca84af8e22ed481bcb08300b8f2ad9bef85e6039cdc4fd1fd592f22ebf8568d684da2beaeda95ffb1a2c950e093d569471eadd12809fbfeb12dbd5c4d4a747eaac92a379942bfdee0ad994a45201bf2168bc30fd62e76e645ffd780d6149ab33391317f51e3dcccb4e0e3d408d71e5a8046ef4a5b1a925428adefc46e9881632f6fa7f81759a7328034a9cc8f383ce977f99f1f6795920d1a8c2babc548368c69dc892414596123bba3becf7a1ef97f34b4ce5dab46907e3440f4cef18edb74c233a4096048b03ea28f011c3962e6b4ab3ef2d77f63c11da2b501b781f1ebbcf47e34b12152c4a9d8e79ac4fac2d9acb57c024f50f250385e2aace5bb24b4cf9e7a06fa2e18baeb3ffa1b0411d432a33d4c39ed590396b5bdf8ec6ebfd6ac5345f4581e533d77fd32e75ff6e167aa6da5e5fa0ffdd1e586450d05920dea7b9edba84e4804a182aff4a88d054cb973ba6793c0df091606d11d72b6840f21d6dcac8928ee3f04ae0016f05fe838f3c574bce3a835f25bb79e478f5edb681d410b5f599d580a90a8b7bd11fed3d77e65ce7a1ff584e0fd9a84b4a370e18444f204213eb09a3ca092287cbe013ec2dd284c0373bdcb6e046605ea37334b2ae8f85202f524e7df7d789756ba2bdd65b5aa0aabf9ae2d
 96cf482342d81b76d2597df5924046c9c19622646a63fc4f1e4e3a86e03ea1b919421230299f07cedb9bd3eda5b82aa76dd32931a8ed63b8f5937759d574a743c387be73f6ae7ff13ccfae3eda847d9681a016becef435e14be969a7d403e77a003761b91c3ad416ada41bb9e185c3c163453bc75a5f5cdb407366addd03ff2fc54da531701f17980fb1d78a3c4ff12dd7fa053279ffa057efa83e16cd163ac7519623f185f781aa778fd234ab6e0cfdf8222e70d837e54c70681efc703c89be8b02c846a74f5c05bacb6b46b29c0817661df86f7144802b495f77dbdb07b0378076a3a6724051c40d42235c680591737e8c910cff2445d78c9b4295e103c9ba94652ee58c9c624f447d0460a3c57b0a925586ab446333619519f61bb666d027ca6528ec5febc56a296f9cc4a9e3c9ba94652ee58c9c624f447d0460a3ca65e4ed2472c45b1149ecca6bb766e4921e3fd83ed671594555a6e42c5d176473c9ba94652ee58c9c624f447d0460a3cf254153c4428f7cded11cf295adda1054750e225fd594f102309568cae61db381801ffe338de1ea3a5981541543a2595ee6e3d72d8103aa5d20fa68453c461e9d436d2559b9e2a2442c2f9ad56a55ec80f7015e894da2c11d55919f9990260fb869f18f9ee875c111079e4c88ae86660cbd637b4d76b7874279d4d02897e60bd263db019b5
 4b9598f13a4a6b55e4f950db24d6b84f990c6b9d3f385626b9d8144c214630fa22bd014b2525fed2a6e1910b320b7a27fa7fd8bc5ebe8c51c7e76e70c2785cb379061a198359d0136609cd8339dabdc3caf8b84a24551ed1a36475ba8d8c14092b2ec95f441602c44a5a7da383071e191d3de0413f7833c182bb789a679eac6ff82358cc7bb0973b65276f27f2fa0255b024465cd2c42d7e86f6aabfda70c56a63fcf4c0bb9984120beb33cea9aff7ac578ae34a638ef00554f78666fd4dd5b3a476785d98e580e7e80f4211b57af3f3d4ad6b45217027a8508555e9824c54540c071a72e39e7392f83600572f37ef493c2fc5aebc30f5d170ba9fe286122d413df4a88311d532150d12dacc8ac6e96cc7ce12d2ecf31c148349839b1c2a3dcf2f9352d3b5d9cadd88a5946813398a2b042408b71bd4b5eeac63eaeb53bf814305ab06d90fbdb2609764fc629bb8455384fb5e6e83e64356297bc6d7ce2336abf459537655e9936905e93b7595848f7273cd2e9618c2c7df7c6d4ad5b4fd6d0a1950a130adcd27f440d82eb52acf0b0a2e4c4833ad5215e81263e8a8ba222ae9bb90a584d75a8f98cb5a3e2c6a1ebc458bfb0cd2bc103d01a9611bf15db4803d7190b6b4ae4dbbedd2f697f49e2c48cb5a860d36c019393a2e13d1ce25ae5a60516906b311170e9008334185830e010eb382a
 a1ce4f31a653c61ba8196e5b13caad27af836ff562313a42ac8e140cbc909e49a18a1a17c45714a36844a622a42ac36d116d92c8eff10dc64ca1cff0a9f769561de53eaf59410bee2e1d908eb0e99bec1c12ee89fd4c0ecf99c609bd55e5b98ff473d3d735bf3452ec7a9b581392ce232e202b257ad4a16ceed821222529e91ef9fae6c9c61c09d57823db02e6e767d5054c23df5866b33fb4784ed01508de33afaf96c9f4051ced4600ca4078b64ae9936cba84b1c1468c16260df486ec46af2eb705d43e37f93636300b5b6e34b45164266d47ef37a769e316b357463453067cbb8d17930948b4e2c55dbb99c15a6341f7bc16ad7f2be1a3dc60991082020ffd89892a7474748a6b7afe8018d84281c3890a14d4a918c6bbf5a1546513511a7215e397e65c9dce3ecc4055e39c2a12576df42e5035e1a11a8c643ae4afcaa9f8acec8bdddd2d9a6b7a55f58d10c1589e2b6ca1252a47c1f061c13778834ed4717dfe8a458f80c826b7e35fd2141cf79e841d55e38f823f3567465e6aa8d66fdc62b37c3e14ee25d36e9154f0dcaab4f5f3a9f1762acc9a99d08c5e8aca219cc3ed25a8774958768b2715d9fbe458a033267a391df6e0315438d87bf8150013cfa02a4686528c935b073cbc597c0cba4a8a9a252c453ef6e75c84db7c93d98cafed3d8bd0b922f574f161dd4bc1281fde101
 a7ff4c3d57ac5769cd1949a7ec3d26f140b1d983e55831fb8ae47b640e40ebf1b8e734697027c0817661df86f7144802b495f77dbdb06b1e7c5f57206fb85cc57a02c46a0e0b8557e13d8ab9c7c4396297cb711e7cc03358a87a297a665eaf6c8ac3cbd0221d3ae1770bbdab3b813529bfd342b794ca11b110d51f1b29a49deecbd63aa67aaa597d6d400639ed193f02fd54cb35d8f7c9b66eb45794c7babdefe0961449cfd4a7dbd3b3ffcb1a735eb4b6ba47dd4cae464033bdc45eb9c3e4dcc47e2685ae2d084b7e4f3dca7e41dd4a2463985d3e689b16a599a42e97ccd725ea34ec75370a42d62804bfc060bb08e9f48e4ad041843e7a989964e0d12546befbdc259ef9dd5f977cccf647ada384a4f4d52343cd309fe7722ec5b8347f5d385299823d77b882d708f4c195ae10ca5c4fb979831d3241188bd45bd8078113addf08ff79551f5e7114c09072f8efc6f1facf3569ad503201bce8aa508c11dd56846ac2890d7f461f89d9d0e17aef3ef4b39cebc9b48f121d6924b95c99e735f6754f755b4cd47849dc6b903c01143a226edd2c329cf27b4aadc17cb2b1123bd7a08488dd26a6bd4090c39fe33834fe4df55ad4c3d24ed08bb140c955d99614b8a607475b36ba1840ab6887ef58e0eaded1808032d665ae2b28bec0eaa184b66f7ab77ef257b364304398419aed2af83ff2c8e
 386a3ca8d80c530f42cd28ce48a1b26c9adf29ebbcca7fc83ce05106c3136fa1dfaf474521cd656e9e8e8f11d1a33ce361c201eb4569908b419444c12a64f279aa5d336f950ec2085ad064d93607015d112d061f23b7397e2f2403b02a683f5e137eec32fabe4cbdbc997cfaef44fde91de76d41f886b44429384a55045d16df020f43fa9950ccf089a8914e2489d79f388ba4e7f4855c2ac43c37f48c05ab9ab664ffeca595a043e0103ee0f505cc6b2709d4ad1c522fbd2b4f492864fdd37d77c16175891e33292d4f27e37d2412a03090a4a547d8bd418675aacb459dd90d4c7998e84324e1c94b5a2a421d0f789695d134c6e158733f0faa5133d1390f9137ec113aefe59f1999a422618c4cb74da135481c9b66eb45794c7babdefe0961449cfd41e7a1ce96298fcd0fe3210b2372bd536eac2f6a3b3a9d519e8f4166b799002ff4b868c2f3c78a70df330c9e9848365fe0c7ca4e7b98cc2bf66fb522216be29dff60f588f49d138ed4af5818dc3090482178add5b0c52743164ec5f2fa86a9ee23a337f953e720de48607b38fa30f3ff3523c6a90bde6638a500e01430009a85d5eef2cfc0a12c547c0f42310625b0ca3d91cbced1bd7df3e3f6532d092c5d0ac440e87b3767c08ab5cf4ae47590a09c8175c6bdea7ff9fd1d7337f5b21272c7fefa68cfc912f8ab98bf2b132f85a09
 ebc8aadb7d582cc37bd210b8814910344089734ce8d2bb02ba91c7768cd7fabaa1d860ec23798cb0f91b0d1d7c8253b5816a7ff3bbff95a343804d5abc22a0651ba700b1278ed9fdcb3c22d3ee6ccc41234dddeadfece3affff1ef4442d2b9b473c30a9854c0937fdf5ff0945d5b542a3d6d0c45dc3a43c24f9706ddde54cfe9e6b74467462b376893f050e931104fd7f33975b77472272e17f626af9a23ddf585b32e784395dbf2552f87e0da4a86324e714ed0a008d2061c92857d351b118b443fbb9c8b39ddf51659b35ea48ffe4570a8c643ae4afcaa9f8acec8bdddd2d9a65c61a82118bf9dba5bfbbfb49e03790d5c9032b15310e1772750e9dacb7bd982ce2a90d4add8759794cbf39777617d04641e2e3d82538fcd2fa4eae26961ef96a9b031976c707a50d7ffc3384df494e5190d58f2d1d20b4ad3f43a669c1534dcc6c28422f20cf68fef3bee5eb11f0aa90d1a49196d152e1f6137861ae6afcd8aa481f3d98940f2b3d2b3be1a1747f5db1e4e16082e46dde198e1381351ce76a834cbc969ace269c7f4f80b3e23a649f31e77c83cef5708bb39a1bbe534b0c2b463665aefc46ecaf5bc7b6af64b7a283f383203fd29f71fe07d5e4a7f2a137eee7168f2017d243e0cebed7f8d7ef080dcab3f1a10e7b3b607b63089705ff314f29b191e6917184fff5ddbd8e6209a567423b
 f3bcf6ad34aa6bad3d0d43b7d11b798dcb9883561c0ff2cc9b650004e844c85ae1714aa5c559891343ba246543c0db1c80934a501791d4bb22c792c8da34905bf2cd4cc2889c66d78774e374eb83940323bb666192b77883dbf9f29ef92c8b016c1986a8000b6c1b9ddbaff1b92f51a4b749e97b41b61f0f0c2668b52a511d1c522fbd2b4f492864fdd37d77c161749c40575ee6b9101cac70a082d30cefb3352a10737bf6e5c1416dd3b77ffeaa725f6ff2fed9ff9232f87c909fc24fc5359b21f1673ab0717e0ba6f1ee3695298a839b3137b78da9cab2b6543cb189ad38046718b4c38d8f8f0a487c5892d45a38de03a8d55433ef2ec45b44234e65e06d213ee2ecfba35437a6fd3c7380057d8c87809371ad8a1f261ee0bbec257f431691289bce4d101030db6f7b2b107835a016229e0bafc42bb92a2845db37b9c97d7062ff632fba1b2eca1ca66b00d136feff08a74a7b91417e572e24a46caf629102267fb9453bd1bfe37d552283f4c459b8a74d1bbc6b3cdd831595958775b4096b7e4a27df570d1a258ec57b4b86b65737733c0d343208d5b14dbcfe957829838053f0a38f88e437f106326fe884d8cf90e1dae9c4e0e5e8519da57d806d6c5808b2c42d004234ae79920238800dae84e924b76bf7b72c4f858609d0e2fb7dc9ea273c94cfe2cc292d20c9f3ae37f14f7e5ddaa
 17f8023ab2871f1468000cf677550e87a5a91796f1227629bdd1a38a5fd672912fbcd9e9e66d04044f7c7d4e0dbcaaed67bfb28ce925cb3fea64ac9d4136412da13ff93a87a6df59455be569e8ea3266c496bdcf20670df388e62484aac1112315f1ff4294145d526d3afd58501eb3453594b377debda7c85c7e62510ec7ec4bac28f42506120f02826bb0fc0cd9ccdff5c98fa190ec5bbc1a5921ad7a9151ff5e62707f6f42b8a8eee76647fbdaf85b8b6305dbc89992e59cd82933406c81183a3b1f9a05ee1106b729b18839d800fb78e3f19c9acb78d6c54088b02a0dcc0a6c016799d3167b5770ead83ca63947ac47367f6c857a98a82fe4eb243f3a43f34deb1729ff7c8a563713082ead3e005df4f415b51fca811a6083129120e0e6a32ad5c32b015b50fef96682e73a282273a83e103a50470b4cc90c976075a916c311b748c8cba76cc573517696aa0f4781c662c92b285f9c6de07446d20a629e40746f1b2b643e69245c235030cc02f69d9e6d9761a758ad79f69a43d8ca80c581cbc8eee5af8730208aca196a330d1abf17ffc60c5daef7e256e2fd5cc39a3fd2cf6c0a5b756f4e7b7c1e8c627e11f490dc366b8d2ccf69b6bba5f29f5fcb2c483a0e374e79eccb125a524cb7cd2c8b7b3beaff75ee2d5345266fab44e77190ca622d8cb29e75d6fecc5c87b90daadd06ebd6b
 53bc1f043eb8d00e6fe911ffa88b57486a06fc28b237b8f2ac183b29000ef9f96bf0af535e1725fbd8aa2e994591d69398ebf6bf69ba59120c89808af473cde34c596efe6526f15851aa531063982d4cb8edadaeec3a0f3ba82b6b6e5d67d4a23138e7ece3f17d3be055d85dc8e69a77e4f7c72d81fb39ddf7e29e7da300e97566e4f53795a464a549d50280bab06d109ab55099b42a1097712e531c2842eb4bca988a1f82bbf756ad6d41f59b9e825a04ee02e47d97eefb3327128a714793b4e151d389f253503b7cf007087f22cabd053ffba01c9bc1af21c88f559519d12a8170b1341eecfbcdf69795510a87742aeae70149d7113ef91250662ffe48c6cfb30f2be601e1e0e17abfece13681480b5cc1c7c77c2d576ab25105868ea003c89b52a1dee31ed78b59ef97b1e8ef3e42cf7666e334381210e46e198b0b3b90dfbb14bdb302888c1cdff768f66882b88ec89215bcf968d4a6b8b4a9b4a578176a93dc6293463f79710e7801a4caaf51ebeb6598d1e3081e08fcdf0bcf0eafe21ed6c0924e6f5806f48ad30e40cde5feaa92c311efc62a17bf39cde34636ea70f75e85faf35180c38eb637376433b1d14d41f99e83f737308620f39c53a3b9a5482131bbfb22e0f112d6609a0495b38f650e0c2f6deb959a0971859090010179077a3953de378c415102a0dd7166025fd6d7d27
 c9dd957405e20c67fa50953639efe8569d9278a37d8eb3403b983a3575d185d58f5c816f95f56af891b7728b321830880dc689966368e0b31e35a0cef082d926db8328fd926f36dc0332de2c27be2023d01ed77a67a36a18e551af6bea91dfd30a3531024628f22b80189c92289936b42f5f77d9e1f5c2249df3a36f61d467713f8967d40e062dc45b4e41d82e627cc6296ced5929e37ebb561c37ca94cd3b08e3e6889cccfe44ba4f6743ee343bfb9c7d75c7af720f46e94da9fab9844797b22c859dd536907f0d2e5168048c7048b48d854cc6858bf716cd0770ce5991aa4c7b8788fd97675a26e60e36dd68a26f83a111d07dc0d6958bf8318a76099abf9ace21ebc023e3c3d4862d1076a250fc1df3943a5f2774879f9eeb12a158f41596d91a5d85efc1b206994c3ff3b39ff7187c2792263da06caf2a4796eda7f6b4e8241372290514e05e970dd085e527f0fa80a9c85386dd521e4260c711f6ee4e498b6f2f785873d67e1050747b73ca52f488370e8ff97dc53903825a1d75ccfaa5cf708c9daf868454fb69a603bda917fdae85e1f6f0f464eb348e32eb87d9d0177125afbf7d2b9f9f82067b5f78edc13c32f3551b16f1ebe7a3ac4f8b81d186c391e95f26454b4a832d13c4cb07c1b4bd89144a42b7e6609347376cbf3faf50d1cfadeca047fed60a369c75f2fd65df2c94778
 bfe3420bc9aa0b9afd6575ff2fa76d974953dae355cd2139826f5cd93448a74db84c91527e87c8f240f880c95f08077ca3bc2ef58a2786ec3dfa49433547be17c8936b6d2c51599d17a696aaa6dfd85251014bd278cd2b8b78350da8477a57a4a32c537e4be5249055b391fe9bee2571dd308289ed58176d3c2617d8a78e97319212e2fe673d6a5b64f3f0e0ce4aea06584a649694d1dbe8bd7171728cfcbd671cfb7d958643b76b1b5bb1d4d6114e2b0bc83c797422d66bf466916a9e8f2187b76100c9dd133df1de5d262c352053b0c0afcb2a980696f603d6be3828942940cc512a07bf1dc4350665fceeab30bebc119e56c157ba8a198e7ce3d82fe37b3c911d74790061c13778834ed4717dfe8a458f80c82db511514a2ecc42006f361f4bcd1d02980d973ba722fdde3ee35c82caf0fb534d3403c5055134da8e053d8c11bd65271ee030b13088fbb28c3e78f81a50d8d3a217fa080fa6482cd8fedde3d75849db7c811ed1ca00596d60d7314ec73e66266c41a35ffd45256a36d3439685d48f8841743ef3083e4ca192d7a8015b07ff8fccbff80964953657c917acab83044b360263db019b54b9598f13a4a6b55e4f950db24d6b84f990c6b9d3f385626b9d8144c214630fa22bd014b2525fed2a6e1910b320b7a27fa7fd8bc5ebe8c51c7e76e70c2785cb379061a198359d01366
 09cd8339dabdc3caf8b84a24551ed1a36475ba8d8c14092b2ec95f441602c44a5a7ddf3bb1176ed088eb9d47648af708c91342f45f9cecdced03c93ae15a49622b68cd2746e3b997ea81056df20eec452afeb94853d7180398d031e0be111b1819cd0e1204650642191265b18b9ed4a71891834a2f37e8bbe75ec8c83d70981228227d9e46006a8d20fc60c34888710af131f16cebb6f2efe8ab7b31e29ccf9be7e9e46c09868222f7f4348df00dace152ff1be80b895d5832388c1e2302c210ef79a6c83be8bf9c4b920a89ba8f078839ea1eeee47f648a42b6bfd0ec22346a04c1042342d1cca33e32dde272e99b667f73f6832673724f34e746be45febcc0255c76dd21637f72a29f639c6b19cb98daa1112f50e75144573cb62aaf97d0a5d51c8cb510b5cc2aa03303664ea92106e5c80990a00be6e9a7ae1dfa748fcfa837f645fa20cda6b9a9e6fad1126cb498b6009b29b0dd4fea516c80ae03b4858fc1791115ba5ca5058db886b2782433012b76bbe0f3ecee70e74a13e18c213652e5203a3ea0cf1299607ed45910de89ff9b528ae4305a60adf558e6af5d7bd1c2e0b825133f43cfea03a2e8ce6446686717ceaf47ad5198b193b7f4311ea9548441d7c4cbad6a25bdebb9f319fd8f29bec1f2280b962976b1690513edd8024d0f8db95cadb2478f671c9a638b8abbe85ae6317
 9740614e5a509839175097fc5d903a55d6de5cac7ae8a91157d13e267bf16af4075e94bb9ca75cba05bf83e1e15fc474d61b3e7b132de18545f1d2631717b39c97454a766246a7556ae136671ef7bd9d9b015f3423c70ecdc52c1858cdc4c65edfda74efba7e6d17478c9a6b0036ab3ad44f19c261d1817ea9b2f2c1e08892b1a0143be1855df613026e7e28e173f2c1f7277616ccdc78e83d2a75c8223036ebb0947353172155de3f801cc5fb14bfd6a1a3bf12481b0dcbe2908a1354d5c98e3b01f87c358a9bcfc8cec23ff73a4c9b96499346bcd7e92551eda7f0d3af75e896618d55bf9222e7b9c7ba45e027c70197eb5086776543a05884fd93b01fcc21ad17cbe9d832d5364ee8d9b26f679fa72e31ae8f647e83533babf06c27ace65cda6438fdc8042b947ec977f3b71ce57e9a8a6131e87b3b5d71d628000d2151edc0b859eb73e8c5f3b3b67893b475f6cd74a7f2f60337a4fe08f1ddf63ffffed2cb24ad680f26a22e22248ac4b6def42f96b1cd8708df39942d18bce6628e96d6c163be1b3bc4236fd60a7633a45b868160ffb6c307ddea2388965f810077fa0a776515bd8d63c8ebaa6cc18956c557db03d054dbf756afa68810c004672dee5efe71ce236f2babddfabea4bf6778f6aef671c5863e8f6848a061e242c7df09c7305ffda35124b7a2a1d985ac0805f1f5b13ce
 d41225f8de58c90f74d1153a4c572f62681d7bd20cb6d1629d402fa2e9bec0aa5d607edd54265ce16faa504c5a0b2e3ce0860fb9d48ca895abb386db4f29606eabc69feb2e348da8ccee4c99356732e073aabe62974d07860a72c590b6cb7892057d1d93bc8988f850a0aca4c81254b1e8f4a0f8ef9ef9d8d60f91ddd15db9ebf84dc821f4714332f8c41fe1f7e0e925fc7e58ced6f5b16f4121013c791f15de0a2c4fd8b7d235982f3adf5497435077219eb2759bf81580d9acf898b48df62b12a7641bc4da19476c91fce5cc902669f2affae946af73f897d430ef28e8e262144fcabdc49f90d8c094e0dc67879ead53aa40741df25daacf707603bfc6eb4f426daf6723c814fc94f09bf4fef4dabd7e1f84044b82bd63c832be36f8c7d4d5de03d5eb874c2b62099997828fba08023d9f61bcedc3649783f1966db00e8ad1fecee93d431d0a1206a5f2fec573d08c67cca2669a7031a50cf00df2f4df1a6d535e6a66d21a5f2b7550c10f52f2cf4f0dac2d1c07ff58574296b7eaa9e356c5c47b05e05ec17f9deac7c84df872b28f77f1033b57aa49b44a60644d598f6e8b227bab698d6d209ede5f8dab6499d96dabcd5475bd74aa3d21719ec2ec8f627fcde23a23f1df2b6b85e74c0cd5ddff4f740c9c34cfc88d3accd9f6e349c7be9cb7688d0b0af411ea92305a69f33b031a85868
 dc24b0f45304fb26511f1b79c486bf93d68e909b4126a66bae425913ad53feae35a988c226fe3cd1d6c9561ae62ad25959cb1d8deb386442c26d6a2832885438c0d381d520983d65e2242fe7319a02431a9329b506cfeb007bca85287eea89495b5a33e89a9f83d09287d6570952e253e4e14aade8d23525ec321f59f8e8fb3ee5ceb879aa91e16f0b39969f1eee4a47d870a3fdc3f8d3809ab3effab1683c4a980b955dd2e5c8406c2ff9273349de888a8eba3c1a986960f665401a0f220620f7f4f89ef1195f486b123146cb8cb76abf15bf2f569ad7ed2a5eac9bf0bd699e29fa7d886a6c27b063e684bc986d9757a8144b1b22af057fa3d07a73fffc5ee99247183c06397a08705a0623a113472bcb4fe5b16a1b51444a0f53a73a47ca3a65610366d3aa844283afd8b0596531d1a5cee2eba1ab5c0e2b336b64193b32344a6bd6f186059fba42b6ef4d7a8528f8f76442b210b858eef2455c929be316f40a2f5d8db5f09614d960df60268e9b768e18819a470c50930826d26a67aafcde87fd0f3d55149c2754477d8a060327bfebce42da9eb8bfdfb1f23cf0d64e4f16ddfcf66683dcd79f3abc707bec5bcf2828ae17d4f1a7496a1453bee867d586d65af1e1333e4ebef35084883e3b3a71eb1665ca913f4167b96e118aee7a2d605226a73f7a5fffa6dc043d627a500b327aadaed
 f52a562b0d531b55d11a4fd3c9bd64c61595213f93ed8d6dcdea39a856c43e43b842bd41ea8cd9fd6db21c35a0086642e2bbf75566231f2f3b0535aaa43e07198e4fc6063ca6530f8041b2aa29d0f1a0ee4b8c5507c6a33b0e6bafdf9d25b1983ff407c4b1a9ebc069842e738eb0b523607a394c8c8ce1f592d16fe3602f3043b1c25ffe8db985cefdb99582bb3cbe309d85f46bb8e4b2c97cbc3586e30ae19dbd138723171f165a256233cb87550becb57dfcffa555a47f31368ee8d2260574760475552f3d3298043a72375f1ec9d38d7d88f57d059db4f13749b930a4984fd8635256614a72975cf269d99f14af0c804334625c69845679024a1f9e69b77ff5883c518727e0327cd560f27b812039925aefb50ad4ddf2492cb0f3a7c83313511f54456af734188b8eac0495cc0a9c4d5208ac54375735c42e3bc0a8ea96a87f15c7f07b2f92a87d68489fc1906ad1a1d752d6fe8c631f96077317111ba286e4e8ada999564d3f20c194dc77a5087f8d9a14b0b571f073ce4af58fb2e551565b02146dc7e840d1208562c8ff37ea60cb294c0aa02227c848aa6accb69df32aae3a684c19e77cd544a79d9f25e4171ced88d41e866d13043885f1d1729d5cf39c5c3b4914c60631786561d3915f1e4e44e29a3808f5ea769cd3f67200b48413fcd13aee3545d56ee0abf9b92c0e55836a598
 bfcf288766b4e6818b275703c839d898e47a33a1f7ac32fe6f821dac38f237b59cec131a3488399bd2d2106bb96605e361f304655045d8cc0d7ada8e210fe39b470007e9d52a5eb8b1248b351a87fdaa373e004e84a1726306745d46313e0597ba41ff0802c8eddeb37add1400bf59cfe4b2188110eb4f74f13313b4ea807c3a461e6cc18a112cdb6c23a4ea024bc847ef56af013c4d50cb4a51e5ca010793683a735015d8bae0378115940c7ed97ba226f4d188f9baadbfc2c0eb9f4047ae541f3594e170b11f42e80b7ca1e020adf9b1d28854238c52d2b6825876cba75fbd6f181ddccf25754c24ab4b72d67b6ebff80142d4bb31d581f2b11c15aa51ca91bfbb54b0caf2f3b98224968e0743bbff7b704a1c4cb779201d0760d078e3ae150aecd8aec8d1ad17cbe9d832d5364ee8d9b26f679fa4284b4ddce9af5243bfec6361c53c664670f21185f29f1c965728b89fb6d430674197f06da2c69a954f362b214aac11bd42225ae00faa47869759ec4e0b43cd9393eaa52d32fc9e6970e000d41edfac4de70e3869504d963f2fc4b08976f484306d6d2a6cc867bdbd4879e4b90cdbedf893524f86df835d4e6027d9bb1c11d145049defd2791c165710a09fa984456c7198aa2034cb9a08e1fe4812f3dfc86857fda955dc77f869042f887076c18635c07de0be9b69775bb91ee404ec8
 9c6f29af6b211e7df7768ce7475da43d1df8dde884263dd9920ae7fdd21bd329e663b93648efef5dfaec58bb9006840bca28c8d25b33a204efeca0a917335b3af5d7a0f4368b114f2ea9e829cde45a6af03b09eb04254aeaa724ef9801933e7bea830076d4a862b8c3399d1890f4b451af50ab46e5a6bc95c0e2e259225fc8980e017dae37719198475244c8271ed18d80f02c0d5b30b8e8ba664e6f6ede72d216eb018d08bab60f118b68a0bc4974acca999119f34042aceff897307e9b46410af09d1f15de0a2c4fd8b7d235982f3adf54973537f4b7e56c2d58b058f9a9489b5161a81c0548cd486a39e57dcdcfaa73aefb333e653d649dd1a3d34b25bedf8d401df54895e746bc12451cadc23c6f575a1a900316f0fd73952c34bf8ea50d3a0735e530ecb55592c0d52437842d4cfbb9d8fab3e43ad76bb6bdd9d9ace1bab472d514a4943d9cc000a84c15a1b4a2e972cca02e6bac3de13614a9bcbae5a996c055715fd855cf8b0662f30d5c623a452cf9affbc42b4779da621d0aa0010a572649406af77038967cfaee69c9c9324627ec7ed5af2485db6d63bbc0ac332f45a56524f0ee6729dc4ba24d10904b35e535c18319d93c12c96a725085ed0e42e563ef2ebf88b5c61a5c9b3ecb7e0b1064f05313439bfec60ae8b4359824b006e83113e629de339924fc5a74639cf17220792
 18865a4fd1ca202572c7b2216f5443b25b47b6894ed85eb078db60cde033f9d611461a0151a1e1357589c462c75b3422df18e3ae94cf88ed743e22f0eab1a4b25ad6075d1a96e395c2d03c5d2d33258ad2ba8a534109519255bb03d9f45f5b61a8c2eb526c5b0dc652169cdcdb62957a4b198f0ee2dc270d89cf7c15fe964ca1c0d99a3b0ab30141ccf649312a4c1f512434f51001daa9ac33d81695ef3dbf6fcc8a9ecac0bd5915b0925b5493dc58b3d758b5e65cb371554cc0a157588fe55ef55f0314a665df39742e4f752d67ccbe05c628340af7cb7366da3d84df0625a1343f0d76d75e7a039e460b8ec4f77cd234e79428407a5d36f3e705ad283e7706dd75dcbeb49900dff4e0a2e06fa0ef51ff8537d39b893fb1ebb56947c71c857112e222bc27bfefda889221f48354c28ae7cb8b44baf3b69bccc689b5ae66204f650b269ee0ad6a04810a3728034bbc5d56d97306d62a8dff3f0a9afacfb4438ccf23f07da98beeb0a1314db6f87ee3e68efa6994e79bf7a409cd4943163b7f586f894deef41b46cd1de856944525b1e998092b1524dbc41e4bd7560f8b29ff49959c92cc74457cdb99bdcef0f5b513407c1d08e51252b94ec4385974a9d7f5d84dc7376ccdd66e4162ac4e057cac672f1a57bdfee1a457da1f61855097b3898f44fb59aa6927def64a46851528991dc0d5aad
 9f8ebb56706a1a868f9a526678f3ebfb747d117ca3fc20cf94c84a817a7e6cee460f09aafa63b43e5ae8ecd0ea309661c7c9889535353937a8fb5697e0a3160ffb6c307ddea2388965f810077fa09c48807832c5b0cf985214f341a9166d322c5fb6cf439697d42204c2956db0506ec7c8cccb96665aea13f463929e1526c6669ac1cb89b68b25401518b2f393f7b4e6e3bc4191cb508d3adac1cfa820422cdb3e1d415f58b4b23fe18dba385adedde2cbfbd8313f0962554f6706beff51d0fb7cefb0d62f680d29b413d2d1edc589db82f1a466eea1b1d7e3c4ce77ce152c235c855bc5bbd009d5c944d569d0a808328123d965330bb5810aeee5c52d3d5e71b0b8e4ba8b74f18de1b90d025d447b06edcc908f85a64068db27bea12155f8201cfc046f3d029a6e6799e9fa0b55a73a099f782273a9fd227cb8bdd557d3c88763acaddf2620b0a4b873a1657312a768a7ee76e9137d2b2f92ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bd
 a2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d996b7c2cdab88ef24efcfc757d7f16f3abe7deecc1939eb61de39b5ce312138b2f5a43c76cc8082331f1232ee371640cd1e7a9fe3b19d5b38a2af1fe160724ab8d7e9bc3a3acf493ed6f1f567c4238806e8d6c3c94d0ff431e79f8080887c78fe997f098034af28f5ad2950337c8ed05f04921420e94d60848fdd7246d41ff79829e582ba8b7e4d2034b8f10e56153b3eb31ca3501a1872aa7ee0611b5e797b437cd2746e3b997ea81056df20eec452afeb94853d7180398d031e0be111b1819cd0e1204650642191265b18b9ed4a71891834a2f37e8bbe75ec8c83d70981228227d9e46006a8d20fc60c34888710af131f16cebb6f2efe8ab7b31e29ccf9be7e9e46c09868222f7f4348df00dace152ff1be80b895d5832388c1e2302c210ef7946aaa088d008dd22f3458f0a502589cc1eeee47f648a42b6bfd0ec22346a04c1042342d1cca33e32dde272e99b667f73f6832673724f34e746be45febcc0255c76dd21637f72a29f639c6b19cb98daa1112f50e75144573cb62aaf97d0a5d51c8cb510b5cc2aa03303664ea92106e5c80990a00be6e9a7
 ae1dfa748fcfa837f645fa20cda6b9a9e6fad1126cb498b6009b29b0dd4fea516c80ae03b4858fc1791115ba5ca5058db886b2782433012b76bbe0f3ecee70e74a13e18c213652e5203a3ea0cf1299607ed45910de89ff9b528ae4305a60adf558e6af5d7bd1c2e0b825133f43cfea03a2e8ce6446686717ceaf47ad5198b193b7f4311ea9548441d7c4cbad6a25bdebb9f319fd8f29bec1f2280b962976b1690513edd8024d0f8db95cadb2478f671c9a638b8abbe85ae63179740614e5a509839175097fc5d903a55d6de5cac7ae8a91157d13e267bf16af4075e94bb9ca75cba05bf83e1e15fc474d61b3e7b132de18545f1d2631717b39c97454a766246a7556ae136671ef7bd956b9d4266e0e96ef2529a2d567af6fa52c235c855bc5bbd009d5c944d569d0a808328123d965330bb5810aeee5c52d3d5e35c373fb37518dfb8d0568495263c1ae0378115940c7ed97ba226f4d188f9baadbfc2c0eb9f4047ae541f3594e170b11f42e80b7ca1e020adf9b1d28854238c52d2b6825876cba75fbd6f181ddccf25754c24ab4b72d67b6ebff80142d4bb31d581f2b11c15aa51ca91bfbb54b0caf2f3b98224968e0743bbff7b704a1c4cb779201d0760d078e3ae150aecd8aec8d1ad17cbe9d832d5364ee8d9b26f679fa4284b4ddce9af5243bfec6361c53c664670f21185f29f1c9657
 28b89fb6d430674197f06da2c69a954f362b214aac11bd42225ae00faa47869759ec4e0b43cd9393eaa52d32fc9e6970e000d41edfac4de70e3869504d963f2fc4b08976f484306d6d2a6cc867bdbd4879e4b90cdbedf893524f86df835d4e6027d9bb1c11d14404cb6d4610192344f13862960f327d6f2cf4f0dac2d1c07ff58574296b7eaa9e356c5c47b05e05ec17f9deac7c84df87909083c038ab69b956e8c6daef8c0fb8f6e8b227bab698d6d209ede5f8dab6499d96dabcd5475bd74aa3d21719ec2ec8f627fcde23a23f1df2b6b85e74c0cd5ddff4f740c9c34cfc88d3accd9f6e349c7be9cb7688d0b0af411ea92305a69f33b031a85868dc24b0f45304fb26511f1b79c486bf93d68e909b4126a66bae425913ad53feae35a988c226fe3cd1d6c9561ae62ad25959cb1d8deb386442c26d6a2832885438c0d381d520983d65e2242fe7319a02431a9329b506cfeb007bca85287eea89495b5a33e89a9f83d09287d6570952e253e4e14aade8d23525ec321f59f8e8fb3ee5ceb879aa91e16f0b39969f1eee4a47d870a3fdc3f8d3809ab3effab1683c4a980b955dd2e5c8406c2ff9273349de888a8eba3c1a986960f665401a0f220620f7f4f89ef1195f486b123146cb8cb76abf15bf2f569ad7ed2a5eac9bf0bd699e29fa7d886a6c27b063e684bc986d9757a8144b1b22af0
 57fa3d07a73fffc5ee99247183c06397a08705a0623a113472bcb4fe5b16a1b51444a0f53a73a47ca3a65610366d3aa844283afdd2fcbeb4d83f20ff10bbaacd8cfae899b64193b32344a6bd6f186059fba42b6ef4d7a8528f8f76442b210b858eef2455c929be316f40a2f5d8db5f09614d960df60268e9b768e18819a470c50930826d26a67aafcde87fd0f3d55149c2754477d8a060327bfebce42da9eb8bfdfb1f23cf0d64e4f16ddfcf66683dcd79f3abc707bec5bcf2828ae17d4f1a7496a1453bee867d586d65af1e1333e4ebef35084883e3b3a71eb1665ca913f4167b96e118aee7a2d605226a73f7a5fffa6dc043d627a500b327aadaedf52a562b0d531b55d11a4fd3c9bd64c61595213f93ed8d6dcdea39a856c43e43b842bd41ea8cd9fd6db21c35a0086642e2bbf75566231f2f3b0535aaa43e07198e4fc6063ca6530f8041b2aa29d0f1a0ee4b8c5507c6a33b0e6bafdf9d25b1983ff407c4b1a9ebc069842e738eb0b523607a394c8c8ce1f592d16fe3602f3043b1c25ffe8db985cefdb99582bb3cbe309d85f46bb8e4b2c97cbc3586e30ae19dbd138723171f165a256233cb87550becb57dfcffa555a47f31368ee8d2260574760475552f3d32980f11379d79c4163a5842487655eb0574f13749b930a4984fd8635256614a72975cf269d99f14af0c804334625c698
 45679024a1f9e69b77ff5883c518727e0327cd560f27b812039925aefb50ad4ddf2492cb0f3a7c83313511f54456af734188b8eac0495cc0a9c4d5208ac54375735c42e3bc0a8ea96a87f15c7f07b2f92a87d68489fc1906ad1a1d752d6fe8c631f96077317111ba286e4e8ada999564d3f20c194dc77a5087f8d9a14b0b571f073ce4af58fb2e551565b02146dc7e840d1208562c8ff37ea60cb294c0aa02227c848aa6accb69df32aae3a684c19e77cd544a79d9f25e4171ced88d41e866d13043885f1d1729d5cf39c5c3b4914c60631786561d3915f1e4e44e29a3808f5ea769cd3f67200b48413fcd13aee3545d56ee0abf9b92c0e55836a598bfcf288766b4e6818b275703c839d898e47a33a1f7ac32fe6f821dac38f237b59cec131a3488399bd2d2106bb96605e361f304655045d8cc0d7ada8e210fe39b470007e9d52a5eb8b1248b351a87fdaa373e004e84a1726306745d46313e0597ba41ff0802c32e61163b8791132773a512a89f7db26b4f74f13313b4ea807c3a461e6cc18a112cdb6c23a4ea024bc847ef56af013c4d50cb4a51e5ca010793683a735015d8bae0378115940c7ed97ba226f4d188f9baadbfc2c0eb9f4047ae541f3594e170b11f42e80b7ca1e020adf9b1d28854238c52d2b6825876cba75fbd6f181ddccf25754c24ab4b72d67b6ebff80142d4bb31d
 581f2b11c15aa51ca91bfbb54b0caf2f3b98224968e0743bbff7b704a1c4cb779201d0760d078e3ae150aecd8aec8d1ad17cbe9d832d5364ee8d9b26f679fa4284b4ddce9af5243bfec6361c53c664670f21185f29f1c965728b89fb6d430674197f06da2c69a954f362b214aac11bd42225ae00faa47869759ec4e0b43cd9393eaa52d32fc9e6970e000d41edfac4de70e3869504d963f2fc4b08976f484306d6d2a6cc867bdbd4879e4b90cdbedf893524f86df835d4e6027d9bb1c11d145049defd2791c165710a09fa984456c7198aa2034cb9a08e1fe4812f3dfc86857fda955dc77f869042f887076c18635c07de0be9b69775bb91ee404ec89c6f290bd42039acb0561a5e4b00afcd25745be884263dd9920ae7fdd21bd329e663b93648efef5dfaec58bb9006840bca28c8d25b33a204efeca0a917335b3af5d7a0f4368b114f2ea9e829cde45a6af03b09eb04254aeaa724ef9801933e7bea830076d4a862b8c3399d1890f4b451af50ab46e5a6bc95c0e2e259225fc8980e017dae37719198475244c8271ed18d80f02c0d5b30b8e8ba664e6f6ede72d216eb018d08bab60f118b68a0bc4974acca999119f34042aceff897307e9b46410af09d1f15de0a2c4fd8b7d235982f3adf54973537f4b7e56c2d58b058f9a9489b5161a81c0548cd486a39e57dcdcfaa73aefb333e653
 d649dd1a3d34b25bedf8d401df54895e746bc12451cadc23c6f575a1a900316f0fd73952c34bf8ea50d3a0735e530ecb55592c0d52437842d4cfbb9d8fab3e43ad76bb6bdd9d9ace1bab472d514a4943d9cc000a84c15a1b4a2e972cca02e6bac3de13614a9bcbae5a996c055715fd855cf8b0662f30d5c623a452cf9affbc42b4779da621d0aa0010a572649406af77038967cfaee69c9c9324627ec4a4751135ce0863e9b7cfa1c021bbcc424f0ee6729dc4ba24d10904b35e535c18319d93c12c96a725085ed0e42e563ef2ebf88b5c61a5c9b3ecb7e0b1064f05313439bfec60ae8b4359824b006e83113e629de339924fc5a74639cf1722079218865a4fd1ca202572c7b2216f5443b25b47b6894ed85eb078db60cde033f9d611461a0151a1e1357589c462c75b3422df18e3ae94cf88ed743e22f0eab1a4b25ad6075d1a96e395c2d03c5d2d33258ad2ba8a534109519255bb03d9f45f5b61a8c2eb526c5b0dc652169cdcdb62957a4b198f0ee2dc270d89cf7c15fe964ca1c0d99a3b0ab30141ccf649312a4c1f512434f51001daa9ac33d81695ef3dbf6fcc8a9ecac0bd5915b0925b5493dc58b3d758b5e65cb371554cc0a157588fe55ef55f0314a665df39742e4f752d67ccbe05c628340af7cb7366da3d84df0625a1343f0d76d75e7a039e460b8ec4f77cd234e79428407a5
 d36f3e705ad283e7706dd75dcbeb49900dff4e0a2e06fa0ef51ff8537d39b893fb1ebb56947c71c857112e222bc27bfefda889221f48354c28aea048a9be8b33124941afd6116e0b90e450b269ee0ad6a04810a3728034bbc5d56d97306d62a8dff3f0a9afacfb4438ccf23f07da98beeb0a1314db6f87ee3e68efa6994e79bf7a409cd4943163b7f586f894deef41b46cd1de856944525b1e998092b1524dbc41e4bd7560f8b29ff49959c92cc74457cdb99bdcef0f5b513407c1d08e51252b94ec4385974a9d7f5d84dc7376ccdd66e4162ac4e057cac672f1a57bdfee1a457da1f61855097b3898f44fb59aa6927def64a46851528991dc0d5aad9f8ebb56706a1a868f9a526678f3ebfb747d117ca3fc20cf94c84a817a7e6cee460f09aafa63b43e5ae8ecd0ea309661c7c9889535353937a8fb5697e0a3160ffb6c307ddea2388965f810077fa09c48807832c5b0cf985214f341a9166d322c5fb6cf439697d42204c2956db0506ec7c8cccb96665aea13f463929e1526c6669ac1cb89b68b25401518b2f393f7b4e6e3bc4191cb508d3adac1cfa820422cdb3e1d415f58b4b23fe18dba385adedde2cbfbd8313f0962554f6706beff51d0fb7cefb0d62f680d29b413d2d1edc5ea62456f216594282152f20ffbffbb591821ef1bae598194ca3b72a20e55daa846186bef924feecae
 f8652f5dbba09bb9c821b437b7355556d4ad2a28df6730d48d0af94311230f298c2965bcd7f06bab53075927b7091398c23fc3ba82d43e1db60ec4181581b903d237459dce308ac0b1471de94068402f8add25c0393f9af6d70d27adddff2e2292ab66359d9e260338f4622b9286357836ee7b79031b29077916e88c40a32856e045194ca65ba827f4c20c8e41a23d3d0ff9b435fb4ee45bbb56f06b436c26a57616f0fa9f71cfd388d059bbdcb28b95711c3cc426aab03e3fa6442f5b59ce80a11b53c11233fbe949ca14d28ae7f601037d929b1e95834ba08023d9f61bcedc3649783f1966db016fa6bdace2e9c76b419ab2da85f59b386da20b27ddd297bf841e7a47454fd30033a87b70d925cb25b5bfe78c01a43e8c1cbc563d741270a384c412c04655cfb0e58facd3fd9ba062b5e28f4b33d5647e81b81274726a71d63db10ab49d989c1205b8cac9e26ce037f110a396e5d1344b9a6ef4b9c4c345482a469b794f7d058aab8dc868e118d7b7a992e3d0994eca12c235c855bc5bbd009d5c944d569d0a808328123d965330bb5810aeee5c52d3d5e71b0b8e4ba8b74f18de1b90d025d447b06edcc908f85a64068db27bea12155f8201cfc046f3d029a6e6799e9fa0b55a73a099f782273a9fd227cb8bdd557d3c88763acaddf2620b0a4b873a1657312a768a7ee76e9137d2b2f92
 ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bda2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d99f66a35fdd1ea25ed95aa3d7eb81c7f2c00f771febbfa4f7e2b7ed65ac10e4d48125a07674a34a4de2ed2b90a8f0ad4b418da951bd8e73a3b5b916bbf0a9b59603016a01b12a0b0e9bcbaedf8bc6d847f274aa649bf207bdfa3dbe2ab912675f80080e271f332b4acbb3bd86bf03c3a3a8c46b06973e4b48dc3e069111c466509fa6e7b6681d7dc8a8250f70ee1243da119e322d23d72b49c5f0c0f309e72e7c3bf236aec2fba64c01e895cc5dcbfa568ffe793b21566314a2fe92d6738f8b97d74fb899f4f943f079ead4f7fcb5e45770a627c0306a70834041b4e772d72409676f7a25e6af0e8d3f7ff266d72d402c9cabf4b87e57137708c0628e2297
 61bf5bd156a0fc360305708d27b7abe4803ba78b73dd34358c4e25e2c97ce367f892339b9a2a8c574dd0748c2cedea6b55c47160ffb6c307ddea2388965f810077fa091a00bacb049382720bfb7aa60942eb401d30619f87ded3aef34b385ea9f1176fcaddac6af218350f8407544177de275078e9b93e7ae1f42cc731372773f69b41c35c8926afaccbc20703eb2a8ba1e18a2bd8870b25b672c5ca80431f0da4635866059dcd5bb63a7b6de22b065c752a2986a6dd159007f9ff494d533b634b114b81346615145b55e83cd3be8e3fc8d9f7abfc35e629d7222bb2e35892def33d3c94b0b21e11b5ecc33700b9c35ec6bf7136817d2d6c29aa1af27e29913c9353832414e4b49ff58b33af2d9b0d683aaa29868c798ef472ee29bb72a7133f6e944761cadf35a3f19e3bce58a7351c4e3afa71ceeaae550343e8cf04593add620ff9ca802ed138445ccb3468de5f9fef1deade1717bb256f4012f25b350a0c2f7d695c178a8fd361dcaad8db8be6fecdc2a79c708417ac6e48a6ba67b1d5b7932807044d887b66a2fd5ebc9beb5a5cf85216b8e99d07a15cf740391a9acb721d548a88ee055b26c84a05836181af9d7d2f97e10581405b04b78e9bb6188f4aaeeda2508f820e3c13b53bc35c930d656f13421d397301da81f1d02cdf1040ea88e4da57032ad1169dfdefc12b99392ca4f1d
 c7707a80c020879aeabca5d041a353eaa455d7c50be8d49a72f3ed7d0af3e4c049e196e58503fd09a2a4abafc7d5f4871dd2b99394160932b7b3ba196bdbf3daf787f764d8b1dadef5433e5cdc2bc797f06a1d483531c00e417dd13f635bf969c6f5862e21a8870cb0d87349af3d2b129e46b65d44c2726340b2c42edb0592f5016e2d0f7db67e5cdf86e026cdf5b66b5c98d64ad2dacfd4612d93d499d7b80cc6da06dbd76955a4d0701dac950e8f01999791becd0ffcbd660abc90346da998119dc331172bddf51b289088b30e6772bd2e42b1a9d2a95ee22f7b157648c064b20460bd6a15413e061145d9cec478b04c40b8858c0d0d9f9eaf40678618ad42473985c8a0a400e1018fe4a35ac95b27bdc3dc14e7556b3b6df1da523434478d1726306745d46313e0597ba41ff0802caacdc533b4f606cf34a0c1453ba616361821ef1bae598194ca3b72a20e55daa8a0b0eb5306e070f38c25ce88ef8b16cc6ae087e9d153b524ccfcaa8290c7261452f50d28d129a0807e8bef1b330285fae4a2ea3590fdcd8e9263dcc2a6094058e25234ea7fcc33d8558e3b65edf72981e156b7a26b9a34fc6d71d21fffdf1608d0e4880b0a6219fd1e6541b5453ba7a7fca3d5d6b3a5bf4138b94bcdc37a78193bbce54bb4b62cefd1a491a5d11a4d5aa8f0d714ab337742b6f6fc534c9c924d20856
 2c8ff37ea60cb294c0aa02227c8e2951a70cca9834bcdb9993f39c4f4d2b3ddbcd221900605199cdc831953cfc9d028134e2bd875805c70f14d0a6bc1a7d4b54fa394f0abb4532b2306dc0562400b5caf1859e5fb2e9d48cad757692a77b2bf5e00e534d25e606f88f81874521069842e738eb0b523607a394c8c8ce1f5517c18729ab39a3c8bd5aeedec75c847c8a9ecac0bd5915b0925b5493dc58b3d39b0b85bc0fdd14e31ccad8349ddaaac63f69c98e2c9f1ae770e6c56105385db5d3486b5daabd444b15a3acf79f0ca27731e6108d93a8d6c0f6c9e90caff8215ff363e835cdb5fb95e254bfe3ee22e33e3fb911ba86068a2bba8bfb654dd31a6976ac48701d97dc226e8f8548b1a95ef8f7f9f76294dc65b414e38a20e719f29dd432fa22e90d343132edff904f47530c8ac0cf52bd0834e6faffd6b62382c59efa6994e79bf7a409cd4943163b7f5869ca084e604be752d3297c769b3c36f5ddb60ec4181581b903d237459dce308ac379bb9b2bacd5d16a22939c2cd4ea36fa768a7ee76e9137d2b2f92ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686
 e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bda2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d99f66a35fdd1ea25ed95aa3d7eb81c7f2c4a3673eefd1c05960ca9f068f070b5cacf184e1ebd5de80154a0d2db27e8108147e5bb1d7508a1b84cd5f7762be5d1423350e97c5685af17ae9c37e33be11a567b88501e4f74bd19eba948628cb5866d76f847d09dc7718486c7e94f7a2b0d18a280b432fde0dbeb0216ad6371d331086a1a3bf12481b0dcbe2908a1354d5c98d72be9d2a186df16e019196b6caf1a411254b1e8f4a0f8ef9ef9d8d60f91ddd15db9ebf84dc821f4714332f8c41fe1f7e0e925fc7e58ced6f5b16f4121013c791f15de0a2c4fd8b7d235982f3adf5497435077219eb2759bf81580d9acf898b48df62b12a7641bc4da19476c91fce5cc902669f2affae946af73f897d430ef28e8e262144fcabdc49f90d8c094e0dc67879ead53aa40741df25daacf707603bfc6eb4f426daf6723c814fc94f09bf4fef4dabd7e1f84044b82bd63c832be36f8c7d4d5de03d5eb874c2b62099997828fba08023d9f61bce
 dc3649783f1966db00e8ad1fecee93d431d0a1206a5f2fec573d08c67cca2669a7031a50cf00df2f4df1a6d535e6a66d21a5f2b7550c10f52f2cf4f0dac2d1c07ff58574296b7eaa990763c2a69aad320c1871c72bb4d29e7adca219d091cdcba3ac5d5a2e55622f8b30a51d510556f1590dc440f0a1200997fa6acf97bc00be1a3019e9767b11392e04c11cb616f5f7bbbe22a3b9d2166d4594166ddf5f9c964e3689057b27dc3edcf4c62181524f9ce9dba60761c7d445126a67aafcde87fd0f3d55149c2754477e5b26c91cd82c13867c9755bc4f386e3c42e3bc0a8ea96a87f15c7f07b2f92a87d68489fc1906ad1a1d752d6fe8c631f96077317111ba286e4e8ada999564d3f20c194dc77a5087f8d9a14b0b571f073ce4af58fb2e551565b02146dc7e840d1208562c8ff37ea60cb294c0aa02227c848aa6accb69df32aae3a684c19e77cd544a79d9f25e4171ced88d41e866d13043885f1d1729d5cf39c5c3b4914c60631786561d3915f1e4e44e29a3808f5ea769cd3f67200b48413fcd13aee3545d56ee0abf9b92c0e55836a598bfcf288766b4e6818b275703c839d898e47a33a1f7ac32fe6f821dac38f237b59cec131a3488399bd2d2106bb96605e361f304655045d8cc0d7ada8e210fe39b470007e9d52a5eb8b1248b351a87fdaa373e004e84a1726306745d46313e059
 7ba41ff0802c683c37386c6d0513c74f016cac627aa0b4f74f13313b4ea807c3a461e6cc18a1eb00b4dc7e069a51f2b95f29a6123fb08712c94f0465449514d118a5ff9d9dd6d50cb4a51e5ca010793683a735015d8bae0378115940c7ed97ba226f4d188f9b83436f77b5e658da2e2488dcbda2ccd776d4a862b8c3399d1890f4b451af50aba2b482cffd3b0ada4125e1f36c09a4d11461a0151a1e1357589c462c75b3422df18e3ae94cf88ed743e22f0eab1a4b25ad6075d1a96e395c2d03c5d2d33258ad2ba8a534109519255bb03d9f45f5b61a8c2eb526c5b0dc652169cdcdb62957a4b198f0ee2dc270d89cf7c15fe964ca1c0d99a3b0ab30141ccf649312a4c1f512434f51001daa9ac33d81695ef3dbf6fcc8a9ecac0bd5915b0925b5493dc58b3d758b5e65cb371554cc0a157588fe55ef55f0314a665df39742e4f752d67ccbe05c628340af7cb7366da3d84df0625a1343f0d76d75e7a039e460b8ec4f77cd234e79428407a5d36f3e705ad283e7706dd75dcbeb49900dff4e0a2e06fa0ef51ff8537d39b893fb1ebb56947c71c857112e222bc27bfefda889221f48354c28aee013a3254a5ad16f465b425f3303d27c50b269ee0ad6a04810a3728034bbc5d5aa1a75bc2d6bc8b8aeb6151789238479dd432fa22e90d343132edff904f47530f23f07da98beeb0a1314db6f8
 7ee3e68efa6994e79bf7a409cd4943163b7f5869ca084e604be752d3297c769b3c36f5ddb60ec4181581b903d237459dce308ac379bb9b2bacd5d16a22939c2cd4ea36fa768a7ee76e9137d2b2f92ffa17c8a70b5931dc7d72efcdc75612961ecde7be6ee0f1c1b52eac305fa040fd7285ad7d96e99b67b7c0890ca944931b99725692651b24f303ad6541198c74d4eada14af24d4940b2b1982603e1727f7f85d43ca681418729093b8618c8f4ecb087c14157d655614686e0606c5ce31981831308bf146cb8cb76abf15bf2f569ad7ed2a5ea7db0433456cd04d0b5d99567fa8a976cfdc0d54bda2f5cc743a2f46bac8ebdd2921ddda36f557c40374a5bd2ca8453cae7059f7cf12f4d00645b871ac0c86093c7d112d3898f777ce05c15de6bab6f2570a50a1665c5683ed1a015bcf864dab5fe382bb722b96250b07779b213934d99f66a35fdd1ea25ed95aa3d7eb81c7f2c1a325a9a2f598bcd89104d0880e428f5dd432fa22e90d343132edff904f47530c3c2c4298e456f33737c57d4824b9d7e1a00d6109d354da2dbc82fba9103e28114a99fd6c52538df9a90b75971dc0f7fe73c78c9934ac7431371e38eb6f3f6d1b26df22f133e20338f565137327458998c46b06973e4b48dc3e069111c46650981e5608f1d561d2f0cf03f476ecc4b9ce9b3d9800910e781ec2d7c5d46d630
 1dbd375ddf2706a7b982268c9746f4ebe439cb8b408792d0f1fb3f20a560b721085287eea89495b5a33e89a9f83d09287de57e86e7fe2e24c5e14493db92e5ac8f2c8cb174643aa0e69d5eb55d559ebf32aaec2307906847830144112853a7d05ce77ca99d93def04c2e82a1b53d580d438b5434d9c3b10883bef6ab01b676e3a9f51c8a8633e0a7038abbfb2e999ba12bba08023d9f61bcedc3649783f1966db07fb8b2742ab24caa0fe0951c657e42757faf6c5309cab2639538ee4fe8ec16583e7efaf914e651d8956486d44498ec5cf3a4005b201106a3a9a9f40cf7a799a01b08bcbd7b315b5f37051b82a11488f48bc15659c71d298acaec67ed9cb5146e2e1d92fd8a7051762772dd47ffd5573a1bbd05e9d1ed79cf41737bbe7840695ddc32a9a42357a25aa00e3a0b6be5ad7b3e3d75c51a33fd42684fb871c2cadb96f41726ab7eb1453a1564d6f2bcb7e468ff70aa3d5e899dcd3c7904857263b0fe45100e1b913f84577606b18a063f655e7959f2f138dff839ffd98da76449faaf437c805a7870c6e6630156bd22fc7b71b96499346bcd7e92551eda7f0d3af75e896618d55bf9222e7b9c7ba45e027c70197eb5086776543a05884fd93b01fcc21ad17cbe9d832d5364ee8d9b26f679fa72e31ae8f647e83533babf06c27ace65cda6438fdc8042b947ec977f3b71ce57e9a
 8a6131e87b3b5d71d628000d2151edc0b859eb73e8c5f3b3b67893b475f6cd74a7f2f60337a4fe08f1ddf63ffffed2cb24ad680f26a22e22248ac4b6def42f96b1cd8708df39942d18bce6628e96d6c163be1b3bc4236fd60a7633a45b868160ffb6c307ddea2388965f810077fa0a776515bd8d63c8ebaa6cc18956c557db03d054dbf756afa68810c004672dee5efe71ce236f2babddfabea4bf6778f6aef671c5863e8f6848a061e242c7df09c7305ffda35124b7a2a1d985ac0805f1f4f7c7488abd5e842e6f537773f8db9c6b917837e58934bc4a1de8b81e8eef1bda4ffbb5f633b8c9e750aa3b1f772453fbec0aa5d607edd54265ce16faa504c5a0b2e3ce0860fb9d48ca895abb386db4f469c5c0a4e69ab87d9a84390b0069c4cc7be9cb7688d0b0af411ea92305a69f334ea57a9fdaa6c9c00a3bb047324fea0cf0d64e4f16ddfcf66683dcd79f3abc707bec5bcf2828ae17d4f1a7496a1453bee867d586d65af1e1333e4ebef35084883e3b3a71eb1665ca913f4167b96e118aee7a2d605226a73f7a5fffa6dc043d627a500b327aadaedf52a562b0d531b55d11a4fd3c9bd64c61595213f93ed8d6dcdea39a856c43e43b842bd41ea8cd9fd6db21c35a0086642e2bbf75566231f2f3b0535aaa43e07198e4fc6063ca6530f8041b2aa29d0f1a0ee4b8c5507c6a33b0e6bafdf
 9d25b1983ff407c4b1a9ebc069842e738eb0b523607a394c8c8ce1f592d16fe3602f3043b1c25ffe8db985cefdb99582bb3cbe309d85f46bb8e4b2c97cbc3586e30ae19dbd138723171f165a256233cb87550becb57dfcffa555a47f31368ee8d2260574760475552f3d3298a0add349b8fe5d1e35cb9ea95c05811d976ac48701d97dc226e8f8548b1a95efdbef43745ae184067e7d959d400ddebf5cf269d99f14af0c804334625c69845679024a1f9e69b77ff5883c518727e0327cd560f27b812039925aefb50ad4ddf27cca21d2f94645ebfb2ee6ee19e6377011f42e80b7ca1e020adf9b1d2885423850e57bc48ada37cafc09a8482f85b0dcae37719198475244c8271ed18d80f02c0d5b30b8e8ba664e6f6ede72d216eb018d08bab60f118b68a0bc4974acca999119f34042aceff897307e9b46410af09d1f15de0a2c4fd8b7d235982f3adf54973537f4b7e56c2d58b058f9a9489b5161a81c0548cd486a39e57dcdcfaa73aefb333e653d649dd1a3d34b25bedf8d401df54895e746bc12451cadc23c6f575a1a900316f0fd73952c34bf8ea50d3a0735e530ecb55592c0d52437842d4cfbb9d8fab3e43ad76bb6bdd9d9ace1bab472d514a4943d9cc000a84c15a1b4a2e972cca02e6bac3de13614a9bcbae5a996c055715fd855cf8b0662f30d5c623a452cf9affbc42b4779d
 a621d0aa0010a572649406af77038967cfaee69c9c9324627ec60cc4ea038cc0da6583aa7623bf4873524f0ee6729dc4ba24d10904b35e535c1146e972d11063a4341c8c207d1497f32491a8a74c403b90cc33213cec3927fd82ebf88b5c61a5c9b3ecb7e0b1064f05313439bfec60ae8b4359824b006e83113d1549ae27d2f19702349421bd8e31a058092b1524dbc41e4bd7560f8b29ff49934b4997cfee1bb42c0cd9501c5824a566d70d27adddff2e2292ab66359d9e260338f4622b9286357836ee7b79031b29077916e88c40a32856e045194ca65ba827f4c20c8e41a23d3d0ff9b435fb4ee45bbb56f06b436c26a57616f0fa9f71cfd388d059bbdcb28b95711c3cc426aab03e3fa6442f5b59ce80a11b53c11233fbe949ca14d28ae7f601037d929b1e95834ba08023d9f61bcedc3649783f1966db016fa6bdace2e9c76b419ab2da85f59b386da20b27ddd297bf841e7a47454fd30033a87b70d925cb25b5bfe78c01a43e8c1cbc563d741270a384c412c04655cfb0e58facd3fd9ba062b5e28f4b33d5647e81b81274726a71d63db10ab49d989c1205b8cac9e26ce037f110a396e5d1344b9a6ef4b9c4c345482a469b794f7d05858c3a3879791050f6daa6e1b5bdf7e632c235c855bc5bbd009d5c944d569d0a83099133b69af70aaa7b2360f462ed9d931f2d08380d9607d70
 d3e24bae59eee75e71b0b8e4ba8b74f18de1b90d025d447b06edcc908f85a64068db27bea121554662e3bded3e84ae2cfbb98701f0f69257b481054cc8add672e34d6f6d1f6b8c8e7dffdd11a0a6f518b5d1dcfdbdc7c819e322d23d72b49c5f0c0f309e72e7c3bf236aec2fba64c01e895cc5dcbfa568ffe793b21566314a2fe92d6738f8b97d74fb899f4f943f079ead4f7fcb5e45770a627c0306a70834041b4e772d72409676f7a25e6af0e8d3f7ff266d72d402c9cabf4b87e57137708c0628e229761bf5bd156a0fc360305708d27b7abe4803ba78b73dd34358c4e25e2c97ce367f892339b9a2a8c574dd0748c2cedea6b55c47160ffb6c307ddea2388965f810077fa091a00bacb049382720bfb7aa60942eb401d30619f87ded3aef34b385ea9f1176fcaddac6af218350f8407544177de275078e9b93e7ae1f42cc731372773f69b41c35c8926afaccbc20703eb2a8ba1e18118c17951700615f2e8121cdfa2acf95818fc5fd09b1f6d543b7c3011c06b4b7cf184e1ebd5de80154a0d2db27e81081a452ef7c7b9659e3478a55a5d3f1fa45378bea0aa557bb6fbb957a24f4a32636944f392e7a6b0c767e8cb5ce3522a145e4a2ea3590fdcd8e9263dcc2a6094058e25234ea7fcc33d8558e3b65edf72981e156b7a26b9a34fc6d71d21fffdf1608d0e4880b0a6219fd1e6541b
 5453ba7a7fca3d5d6b3a5bf4138b94bcdc37a78193bbce54bb4b62cefd1a491a5d11a4d5aa8f0d714ab337742b6f6fc534c9c924d208562c8ff37ea60cb294c0aa02227c8e2951a70cca9834bcdb9993f39c4f4d2b3ddbcd221900605199cdc831953cfc9d028134e2bd875805c70f14d0a6bc1a7d4b54fa394f0abb4532b2306dc0562400b5caf1859e5fb2e9d48cad757692a77b2bf5e00e534d25e606f88f81874521069842e738eb0b523607a394c8c8ce1f5517c18729ab39a3c8bd5aeedec75c847c8a9ecac0bd5915b0925b5493dc58b3d39b0b85bc0fdd14e31ccad8349ddaaac63f69c98e2c9f1ae770e6c56105385db5d3486b5daabd444b15a3acf79f0ca27731e6108d93a8d6c0f6c9e90caff8215d9b015f3423c70ecdc52c1858cdc4c65083112856eb34b85f54615fa38f39d91b917837e58934bc4a1de8b81e8eef1bd2bd9395887ee148db7540eabb05f934999d96dabcd5475bd74aa3d21719ec2ec8f627fcde23a23f1df2b6b85e74c0cd5cf4c62181524f9ce9dba60761c7d445126a67aafcde87fd0f3d55149c2754477e5b26c91cd82c13867c9755bc4f386e3c42e3bc0a8ea96a87f15c7f07b2f92a87d68489fc1906ad1a1d752d6fe8c631f96077317111ba286e4e8ada999564d3f20c194dc77a5087f8d9a14b0b571f073ce4af58fb2e551565b02146dc7e8
 40d1208562c8ff37ea60cb294c0aa02227c848aa6accb69df32aae3a684c19e77cd544a79d9f25e4171ced88d41e866d13043885f1d1729d5cf39c5c3b4914c60631786561d3915f1e4e44e29a3808f5ea769cd3f67200b48413fcd13aee3545d56ee0abf9b92c0e55836a598bfcf288766b4e6818b275703c839d898e47a33a1f7ac32fe6f821dac38f237b59cec131a3488399bd2d2106bb96605e361f304655045d8cc0d7ada8e210fe39b470007e9d521c168fdecf68f48bc794303d3e944c34e2674fbef70e2d1aba475497a14103559ffc848022447df397ddc6a07278ccdc344b8509d49fd173588d01a74bcec7511658072b599b24e724b93854356e5f2f6ea7546e3667dcfbe162c74fb02cb84ac23902edf1005c6bacde8efa82e7a262941acf55b356df8b5f90fe5445b069bac3c678cbec32e24c85f00412d577fbabcdd3211c1649c2332aea1704d5f453b55b7a3b24e1f29ab0537fdf3cc0efb4f098eba9b945587ced75482921e1b1cdfca564f3d5843164859abb8541e2e217744c80f3f3ad56b2eef637a467bca50441ecb99e17d42cb0da5910422c0d15f12debbd5cf0fddd46d01b8a53b5403c1c4c1f028d446ff60837ae47edb1cdb2d3e1544ae9dc765a06ce5fe86d4e5234b8ba2508f820e3c13b53bc35c930d656f1346908d3e00effabecbfd652af0bf9680e9
 fc79ac4c4d1d4b5175297ce6c3e79c445fa20cda6b9a9e6fad1126cb498b6009b29b0dd4fea516c80ae03b4858fc1791115ba5ca5058db886b2782433012b76bbe0f3ecee70e74a13e18c213652e5203a3ea0cf1299607ed45910de89ff9b528ae4305a60adf558e6af5d7bd1c2e0b825133f43cfea03a2e8ce6446686717ceaf47ad5198b193b7f4311ea9548441d7c4cbad6a25bdebb9f319fd8f29bec1f2280b962976b1690513edd8024d0f8db95cadb2478f671c9a638b8abbe85ae63171c417ca9cbc945e7c63df1cac23b6bcbcecb6abb7c8fb75ddebda10394f2d976e327e087962a2dc10fb336bf1b660c605f184554363c36b212b349956a89114bd25596c673bb899582e187fbaaa6dea7d7cc529f839bf18d0d808486fec801bfcb3f00ff1d419524de3726271cfdbef4ac188ce432efbafc62f78abddafee019c23012711ca5663f89d32f6659d9fb6062777f7958103059073885a8e30d49e53a7245b08100b8671ae9935faf0f460a970a3df5e5b07a1caf655ea73f6282c70e88fa9c3f53331caae39ad260fc4ea371d9547ff97e4b7db77850a0c7035aa75e51a943836a4359282b8b84a16cb2410715c81a76e306f050ec9e4066159cb4261a74e7312efa33bbc1481a3bab43dd5423f693e656a47185807045e3717f15e285bfac69278a13f1280dc9dd08f1a2b6614
 0101b6f4598d706be593c9a457b44952bf53f352f7c0c2a723bacb1159778b7106677b1112cce869fdb3f81e507d4bb18934f21d36098a467f19e34cd5cf184e1ebd5de80154a0d2db27e81081c22c354f6833f6e85367b8b67a0e4fbfd0c5f89623b784d9a6f9ffd43d5d5a07ac4a79e450c492ef5f78154cfdbc0a370818ab4177e5d2151f9e1c205a78b8d5cc6dba9443b8fce1a125c9ad54c7765b77661834cd9ac20435e0b6a02aedb92ca5e156901dbbe78c64f338ed57206738eda348a2a7e2fb4a9d6a541abdf423a16881825aa42299cae7e3ebc805cfbaff87f6d79fa9c9800414823493b465f6e1bfdd93991193408289db2da7579ba3c8f9f592016856980857f91e95231f5109bf0fb4406521e6006510beddbcbbb739cf5f4e2c0a51ea838fb5f97f56ad2f9400233a9d59511107abac5356507b7bbf410607a8c3a27561d11ba5916f4fc318fbcf8b2f212162b67929e0181c11775a27c52e890acf3e5f3e0ec8b0b693215b1d57b4c1dab4373021a40cd5527decf87cc92d4816a224ce94de7c86480ae4094024d9b07226b8cf94f76003de00b2e649ebdf76279fb4e96b9661beebc734d01ef455e5336b860ec4e0917fb36e769a16afc68e40036755908ec563989ea6c58ade01519555847277085d7782d8b1cdc63f44beac60b9ab1d77ab669e386a45939318f8617
 3f4adfe0b268d323ff7dad6a15429c49e29d11b481eb22a092d98f346fc68eb63955b294bda4c9f3e139c14260525d7f4ca0d66558542f146c209848f8d2c874a59e8cfe1726bb90a3ac53f8184a1887c9568641c9f22cf6d35aba5d9a3f56a9d875504053cb03a16dd5aa80078121754f3e5e31bf48abe9301fe
\ No newline at end of file


[4/4] incubator-carbondata git commit: clean java/scala doc issue This closes #762

Posted by ja...@apache.org.
clean java/scala doc issue This closes #762


Project: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/commit/75a1db4b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/tree/75a1db4b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/diff/75a1db4b

Branch: refs/heads/master
Commit: 75a1db4ba869829a483b1d0d714c97adf21a917e
Parents: 1e5db53 086b06d
Author: jackylk <ja...@huawei.com>
Authored: Sat Apr 8 00:56:42 2017 +0800
Committer: jackylk <ja...@huawei.com>
Committed: Sat Apr 8 00:56:42 2017 +0800

----------------------------------------------------------------------
 .../impl/ColumnGroupDimensionDataChunk.java     |   7 +-
 .../impl/VariableLengthDimensionDataChunk.java  |   7 +-
 .../chunk/reader/MeasureColumnChunkReader.java  |   8 +-
 ...mpressedDimensionChunkFileBasedReaderV3.java |   2 +-
 ...CompressedMeasureChunkFileBasedReaderV3.java |   8 +-
 .../chunk/store/DimensionDataChunkStore.java    |   4 +-
 .../SafeAbsractDimensionDataChunkStore.java     |   2 -
 .../SafeFixedLengthDimensionDataChunkStore.java |   4 +-
 ...nsafeFixedLengthDimensionDataChunkStore.java |   4 +-
 ...afeVariableLengthDimesionDataChunkStore.java |   2 +-
 .../TimeStampDirectDictionaryGenerator.java     |   2 +-
 .../core/scan/executor/util/QueryUtil.java      |   2 +-
 .../visitor/RangeDirectDictionaryVisitor.java   |   1 -
 .../core/scan/model/CarbonQueryPlan.java        |   3 -
 .../core/scan/processor/BlockletIterator.java   |   4 +-
 .../core/scan/scanner/impl/FilterScanner.java   |   9 +-
 .../core/util/CarbonMetadataUtil.java           |   9 +-
 .../apache/carbondata/core/util/CarbonUtil.java |   2 +-
 .../carbondata/core/util/DataTypeUtil.java      |   2 +-
 .../dictionary/ForwardDictionaryCacheTest.java  |   2 +-
 .../impl/ColumnGroupDimensionDataChunkTest.java |   2 +-
 .../impl/btree/BTreeBlockFinderTest.java        |   3 +-
 .../hadoop/util/CarbonInputSplitTaskInfo.java   |   2 +-
 .../spark/load/DeleteLoadFolders.java           |  12 +-
 .../carbondata/spark/splits/TableSplit.java     |   3 -
 .../carbondata/spark/util/LoadMetadataUtil.java |   6 +-
 .../processing/merger/CarbonDataMergerUtil.java |   2 +-
 .../processing/model/CarbonLoadModel.java       |   3 -
 .../newflow/sort/unsafe/sort/TimSort.java       |   2 +-
 .../store/colgroup/ColGroupDataHolder.java      |   5 +-
 .../processing/util/NonDictionaryUtil.java      |   3 -
 processing/src/test/resources/CSV.ktr           |   1 -
 .../src/test/resources/DATA_FACT_SMALL1.ktr     |   1 -
 .../src/test/resources/Vishal5SecondsTest1.xml  | Bin 12280 -> 0 bytes
 .../Vishal5SecondsTest1_en_Invalid.xml          | 150 -------------------
 35 files changed, 52 insertions(+), 227 deletions(-)
----------------------------------------------------------------------